diff options
author | Martin Liska <mliska@suse.cz> | 2021-04-22 09:11:08 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2021-04-22 09:11:08 +0200 |
commit | eec145f7e114010633174ffd19c4fc572e98042c (patch) | |
tree | 1b579797eaa183d69ebb0f2ed1093cf5bdb59801 | |
parent | ae420abed0fe342866cf2bdfaf0ec1134493b25e (diff) | |
parent | d42088e453042f4f8ba9190a7e29efd937ea2181 (diff) | |
download | gcc-eec145f7e114010633174ffd19c4fc572e98042c.zip gcc-eec145f7e114010633174ffd19c4fc572e98042c.tar.gz gcc-eec145f7e114010633174ffd19c4fc572e98042c.tar.bz2 |
Merge branch 'master' into devel/sphinx
144 files changed, 9104 insertions, 7422 deletions
diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 39f46c4..68ad244 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,8 @@ +2021-04-20 Jakub Jelinek <jakub@redhat.com> + + * gcc-changelog/git_update_version.py (active_refs): Add + releases/gcc-11. + 2021-04-12 Martin Liska <mliska@suse.cz> * gcc-changelog/git_commit.py: Do not allow space in long lines. diff --git a/contrib/gcc-changelog/git_update_version.py b/contrib/gcc-changelog/git_update_version.py index 1e2b22b..9bc41bb 100755 --- a/contrib/gcc-changelog/git_update_version.py +++ b/contrib/gcc-changelog/git_update_version.py @@ -57,7 +57,8 @@ def prepend_to_changelog_files(repo, folder, git_commit, add_to_git): repo.git.add(full_path) -active_refs = ['master', 'releases/gcc-8', 'releases/gcc-9', 'releases/gcc-10'] +active_refs = ['master', 'releases/gcc-8', 'releases/gcc-9', 'releases/gcc-10', + 'releases/gcc-11'] parser = argparse.ArgumentParser(description='Update DATESTAMP and generate ' 'ChangeLog entries') diff --git a/gcc/BASE-VER b/gcc/BASE-VER index 0719738..4044f90 100644 --- a/gcc/BASE-VER +++ b/gcc/BASE-VER @@ -1 +1 @@ -11.0.1 +12.0.0 diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 015f9a3..fb2cecb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,202 @@ +2021-04-21 Iain Sandoe <iain@sandoe.co.uk> + + * config/i386/darwin.h (TARGET_64BIT): Remove definition + based on TARGET_ISA_64BIT. + (TARGET_64BIT_P): Remove definition based on + TARGET_ISA_64BIT_P(). + +2021-04-21 Martin Liska <mliska@suse.cz> + + Revert: + 2021-04-21 Martin Liska <mliska@suse.cz> + + * lto-wrapper.c (cpuset_popcount): Remove. + (init_num_threads): Remove and use hardware_concurrency. + +2021-04-21 Martin Liska <mliska@suse.cz> + + PR jit/98615 + * main.c (main): Call toplev::finalize in CHECKING_P mode. + * ipa-modref.c (ipa_modref_c_finalize): summaries are NULL + when incremental LTO linking happens. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * lto-wrapper.c (run_gcc): When -flto=jobserver is used, but the + makeserver cannot be detected, then use -flto=N fallback. + +2021-04-21 Richard Sandiford <richard.sandiford@arm.com> + + * acinclude.m4 (gcc_AC_INITFINI_ARRAY): When cross-compiling, + default to yes for aarch64-linux-gnu. + * configure: Regenerate. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * lto-wrapper.c (cpuset_popcount): Remove. + (init_num_threads): Remove and use hardware_concurrency. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * config/i386/i386.c: Remove superfluous || TARGET_MACHO + which remains to be '(... || 0)' and clang complains about it. + * dwarf2out.c (AT_vms_delta): Declare conditionally. + (add_AT_vms_delta): Likewise. + * tree.c (fld_simplified_type): Use rather more common pattern + for disabling of something (#if 0). + (get_tree_code_name): Likewise. + (verify_type_variant): Likewise. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * config/i386/i386-expand.c (decide_alignment): Use newly named + macro TARGET_CPU_P. + * config/i386/i386.c (ix86_decompose_address): Likewise. + (ix86_address_cost): Likewise. + (ix86_lea_outperforms): Likewise. + (ix86_avoid_lea_for_addr): Likewise. + (ix86_add_stmt_cost): Likewise. + * config/i386/i386.h (TARGET_*): Remove. + (TARGET_CPU_P): New macro. + * config/i386/i386.md: Use newly named macro TARGET_CPU_P. + * config/i386/x86-tune-sched-atom.c (do_reorder_for_imul): Likewise. + (swap_top_of_ready_list): Likewise. + (ix86_atom_sched_reorder): Likewise. + * config/i386/x86-tune-sched-bd.c (ix86_bd_has_dispatch): Likewise. + * config/i386/x86-tune-sched.c (ix86_adjust_cost): Likewise. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * config/i386/i386-options.c (TARGET_EXPLICIT_NO_SAHF_P): + Define. + (SET_TARGET_NO_SAHF): Likewise. + (TARGET_EXPLICIT_PREFETCH_SSE_P): Likewise. + (SET_TARGET_PREFETCH_SSE): Likewise. + (TARGET_EXPLICIT_NO_TUNE_P): Likewise. + (SET_TARGET_NO_TUNE): Likewise. + (TARGET_EXPLICIT_NO_80387_P): Likewise. + (SET_TARGET_NO_80387): Likewise. + (DEF_PTA): New. + * config/i386/i386.h (TARGET_*): Remove. + * opth-gen.awk: Generate new used macros. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * config/i386/i386.h (PTA_*): Remove. + (enum pta_flag): New. + (DEF_PTA): Generate PTA_* values from i386-isa.def. + * config/i386/i386-isa.def: New file. + +2021-04-21 Alex Coplan <alex.coplan@arm.com> + + PR target/99988 + * config/aarch64/aarch64-bti-insert.c (aarch64_bti_j_insn_p): New. + (rest_of_insert_bti): Avoid inserting duplicate bti j insns for + jump table targets. + +2021-04-21 H.J. Lu <hjl.tools@gmail.com> + + * config.gcc: Install mwaitintrin.h for i[34567]86-*-* and + x86_64-*-* targets. + * common/config/i386/i386-common.c (OPTION_MASK_ISA2_MWAIT_SET): + New. + (OPTION_MASK_ISA2_MWAIT_UNSET): Likewise. + (ix86_handle_option): Handle -mmwait. + * config/i386/i386-builtins.c (ix86_init_mmx_sse_builtins): + Replace OPTION_MASK_ISA_SSE3 with OPTION_MASK_ISA2_MWAIT on + __builtin_ia32_monitor and __builtin_ia32_mwait. + * config/i386/i386-options.c (isa2_opts): Add -mmwait. + (ix86_valid_target_attribute_inner_p): Likewise. + (ix86_option_override_internal): Enable mwait/monitor + instructions for -msse3. + * config/i386/i386.h (TARGET_MWAIT): New. + (TARGET_MWAIT_P): Likewise. + * config/i386/i386.opt: Add -mmwait. + * config/i386/mwaitintrin.h: New file. + * config/i386/pmmintrin.h: Include <mwaitintrin.h>. + * config/i386/sse.md (sse3_mwait): Replace TARGET_SSE3 with + TARGET_MWAIT. + (@sse3_monitor_<mode>): Likewise. + * config/i386/x86gprintrin.h: Include <mwaitintrin.h>. + * doc/extend.texi: Document mwait target attribute. + * doc/invoke.texi: Document -mmwait. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * config/i386/i386-options.c (DEF_ENUM): Remove it. + * config/i386/i386-opts.h (DEF_ENUM): Likewise. + * config/i386/stringop.def (DEF_ENUM): Likewise. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * tree-cfg.c (gimple_verify_flow_info): Use qD instead + of print_generic_expr. + +2021-04-21 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/100148 + * cprop.c (constprop_register): Use next_nondebug_insn instead of + NEXT_INSN. + +2021-04-21 Martin Liska <mliska@suse.cz> + + PR ipa/98815 + * cgraphunit.c (cgraph_node::analyze): Remove duplicate + free_dominance_info calls. + +2021-04-21 Richard Biener <rguenther@suse.de> + + * gimple-fold.c (maybe_fold_reference): Remove is_lhs + parameter (and assume it to be false). + (fold_gimple_assign): Adjust, remove all callers of + maybe_fold_reference calling it with is_lhs true. + (gimple_fold_call): Likewise. + (fold_stmt_1): Likewise. + +2021-04-21 Richard Biener <rguenther@suse.de> + + * fold-const.c (pedantic_non_lvalue_loc): Remove. + (fold_binary_loc): Adjust. + (fold_ternary_loc): Likewise. + +2021-04-21 Richard Sandiford <richard.sandiford@arm.com> + + PR middle-end/100130 + * varasm.c (get_block_for_decl): Make sure that any use of the + retain attribute matches the section's retain flag. + (switch_to_section): Check for retain mismatches even when + changing sections, but do not warn if the given decl is the + section's named.decl. + (output_object_block): Pass the first decl in the block (if any) + to switch_to_section. + +2021-04-20 H.J. Lu <hjl.tools@gmail.com> + + * config/i386/i386-c.c (ix86_target_macros_internal): Define + __CRC32__ for -mcrc32. + * config/i386/i386-options.c (ix86_option_override_internal): + Enable crc32 instruction for -msse4.2. + * config/i386/i386.md (sse4_2_crc32<mode>): Remove TARGET_SSE4_2 + check. + (sse4_2_crc32di): Likewise. + * config/i386/ia32intrin.h: Use crc32 target option for CRC32 + intrinsics. + +2021-04-20 Segher Boessenkool <segher@kernel.crashing.org> + + PR target/100108 + * config/rs6000/rs6000.c (rs6000_machine_from_flags): Do not consider + OPTION_MASK_ISEL. + +2021-04-20 Martin Liska <mliska@suse.cz> + + * doc/invoke.texi: Fix typo. + * params.opt: Likewise. + +2021-04-20 Martin Liska <mliska@suse.cz> + + * doc/invoke.texi: Document new param. + 2021-04-19 Andrew MacLeod <amacleod@redhat.com> PR tree-optimization/100081 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index b392715..87bf2ff 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20210420 +20210422 diff --git a/gcc/acinclude.m4 b/gcc/acinclude.m4 index 74c1824..f9f6a07 100644 --- a/gcc/acinclude.m4 +++ b/gcc/acinclude.m4 @@ -422,8 +422,18 @@ changequote([,])dnl ])],, [gcc_cv_initfini_array=no]);; esac else - AC_MSG_CHECKING(cross compile... guessing) - gcc_cv_initfini_array=no + case "${target}" in + aarch64*-linux-gnu*) + # AArch64 postdates glibc support for .init_array/.fini_array, + # so we don't need the preprocessor test above. + gcc_cv_initfini_array=yes + ;; + + *) + AC_MSG_CHECKING(cross compile... guessing) + gcc_cv_initfini_array=no + ;; + esac fi]) enable_initfini_array=$gcc_cv_initfini_array ]) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index d64ae06..55ef853 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,7 @@ +2021-04-20 Martin Liska <mliska@suse.cz> + + * gnatvsn.ads: Bump Library_Version to 12. + 2021-04-13 Eric Botcazou <ebotcazou@adacore.com> * gcc-interface/misc.c (gnat_init): Set default range bits to 0. diff --git a/gcc/ada/gnatvsn.ads b/gcc/ada/gnatvsn.ads index bbfa9f5..c0a77bc 100644 --- a/gcc/ada/gnatvsn.ads +++ b/gcc/ada/gnatvsn.ads @@ -32,7 +32,7 @@ package Gnatvsn is -- Static string identifying this version, that can be used as an argument -- to e.g. pragma Ident. - Library_Version : constant String := "11"; + Library_Version : constant String := "12"; -- Library version. It needs to be updated whenever the major version -- number is changed. -- diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c index 0b70e4d..098eb99 100644 --- a/gcc/cgraphunit.c +++ b/gcc/cgraphunit.c @@ -678,8 +678,6 @@ cgraph_node::analyze (void) gimple_register_cfg_hooks (); bitmap_obstack_initialize (NULL); execute_pass_list (cfun, g->get_passes ()->all_lowering_passes); - free_dominance_info (CDI_POST_DOMINATORS); - free_dominance_info (CDI_DOMINATORS); compact_blocks (); bitmap_obstack_release (NULL); lowered = true; diff --git a/gcc/common/config/i386/i386-common.c b/gcc/common/config/i386/i386-common.c index 1e6c159..af3f387 100644 --- a/gcc/common/config/i386/i386-common.c +++ b/gcc/common/config/i386/i386-common.c @@ -150,6 +150,7 @@ along with GCC; see the file COPYING3. If not see #define OPTION_MASK_ISA_F16C_SET \ (OPTION_MASK_ISA_F16C | OPTION_MASK_ISA_AVX_SET) #define OPTION_MASK_ISA2_MWAITX_SET OPTION_MASK_ISA2_MWAITX +#define OPTION_MASK_ISA2_MWAIT_SET OPTION_MASK_ISA2_MWAIT #define OPTION_MASK_ISA2_CLZERO_SET OPTION_MASK_ISA2_CLZERO #define OPTION_MASK_ISA_PKU_SET OPTION_MASK_ISA_PKU #define OPTION_MASK_ISA2_RDPID_SET OPTION_MASK_ISA2_RDPID @@ -245,6 +246,7 @@ along with GCC; see the file COPYING3. If not see #define OPTION_MASK_ISA_XSAVES_UNSET OPTION_MASK_ISA_XSAVES #define OPTION_MASK_ISA_CLWB_UNSET OPTION_MASK_ISA_CLWB #define OPTION_MASK_ISA2_MWAITX_UNSET OPTION_MASK_ISA2_MWAITX +#define OPTION_MASK_ISA2_MWAIT_UNSET OPTION_MASK_ISA2_MWAIT #define OPTION_MASK_ISA2_CLZERO_UNSET OPTION_MASK_ISA2_CLZERO #define OPTION_MASK_ISA_PKU_UNSET OPTION_MASK_ISA_PKU #define OPTION_MASK_ISA2_RDPID_UNSET OPTION_MASK_ISA2_RDPID @@ -1546,6 +1548,19 @@ ix86_handle_option (struct gcc_options *opts, } return true; + case OPT_mmwait: + if (value) + { + opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_MWAIT_SET; + opts->x_ix86_isa_flags2_explicit |= OPTION_MASK_ISA2_MWAIT_SET; + } + else + { + opts->x_ix86_isa_flags2 &= ~OPTION_MASK_ISA2_MWAIT_UNSET; + opts->x_ix86_isa_flags2_explicit |= OPTION_MASK_ISA2_MWAIT_UNSET; + } + return true; + case OPT_mclzero: if (value) { diff --git a/gcc/config.gcc b/gcc/config.gcc index 357b0be..a020e08 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -414,7 +414,8 @@ i[34567]86-*-*) avx512vp2intersectintrin.h avx512vp2intersectvlintrin.h tsxldtrkintrin.h amxtileintrin.h amxint8intrin.h amxbf16intrin.h x86gprintrin.h uintrintrin.h - hresetintrin.h keylockerintrin.h avxvnniintrin.h" + hresetintrin.h keylockerintrin.h avxvnniintrin.h + mwaitintrin.h" ;; x86_64-*-*) cpu_type=i386 @@ -451,7 +452,8 @@ x86_64-*-*) avx512vp2intersectintrin.h avx512vp2intersectvlintrin.h tsxldtrkintrin.h amxtileintrin.h amxint8intrin.h amxbf16intrin.h x86gprintrin.h uintrintrin.h - hresetintrin.h keylockerintrin.h avxvnniintrin.h" + hresetintrin.h keylockerintrin.h avxvnniintrin.h + mwaitintrin.h" ;; ia64-*-*) extra_headers=ia64intrin.h diff --git a/gcc/config/aarch64/aarch64-bti-insert.c b/gcc/config/aarch64/aarch64-bti-insert.c index 9366497..5d6bc16 100644 --- a/gcc/config/aarch64/aarch64-bti-insert.c +++ b/gcc/config/aarch64/aarch64-bti-insert.c @@ -120,6 +120,17 @@ aarch64_pac_insn_p (rtx x) return false; } +/* Check if INSN is a BTI J insn. */ +static bool +aarch64_bti_j_insn_p (rtx_insn *insn) +{ + if (!insn || !INSN_P (insn)) + return false; + + rtx pat = PATTERN (insn); + return GET_CODE (pat) == UNSPEC_VOLATILE && XINT (pat, 1) == UNSPECV_BTI_J; +} + /* Insert the BTI instruction. */ /* This is implemented as a late RTL pass that runs before branch shortening and does the following. */ @@ -165,6 +176,10 @@ rest_of_insert_bti (void) for (j = GET_NUM_ELEM (vec) - 1; j >= 0; --j) { label = as_a <rtx_insn *> (XEXP (RTVEC_ELT (vec, j), 0)); + rtx_insn *next = next_nonnote_nondebug_insn (label); + if (aarch64_bti_j_insn_p (next)) + continue; + bti_insn = gen_bti_j (); emit_insn_after (bti_insn, label); } diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h index c81db9b..2657dfe 100644 --- a/gcc/config/i386/darwin.h +++ b/gcc/config/i386/darwin.h @@ -25,11 +25,6 @@ along with GCC; see the file COPYING3. If not see #undef DARWIN_X86 #define DARWIN_X86 1 -#undef TARGET_64BIT -#define TARGET_64BIT TARGET_ISA_64BIT -#undef TARGET_64BIT_P -#define TARGET_64BIT_P(x) TARGET_ISA_64BIT_P(x) - #ifdef IN_LIBGCC2 #undef TARGET_64BIT #ifdef __x86_64__ diff --git a/gcc/config/i386/i386-builtins.c b/gcc/config/i386/i386-builtins.c index 4fcdf4b..128bd39 100644 --- a/gcc/config/i386/i386-builtins.c +++ b/gcc/config/i386/i386-builtins.c @@ -628,9 +628,9 @@ ix86_init_mmx_sse_builtins (void) VOID_FTYPE_VOID, IX86_BUILTIN_MFENCE); /* SSE3. */ - def_builtin (OPTION_MASK_ISA_SSE3, 0, "__builtin_ia32_monitor", + def_builtin (0, OPTION_MASK_ISA2_MWAIT, "__builtin_ia32_monitor", VOID_FTYPE_PCVOID_UNSIGNED_UNSIGNED, IX86_BUILTIN_MONITOR); - def_builtin (OPTION_MASK_ISA_SSE3, 0, "__builtin_ia32_mwait", + def_builtin (0, OPTION_MASK_ISA2_MWAIT, "__builtin_ia32_mwait", VOID_FTYPE_UNSIGNED_UNSIGNED, IX86_BUILTIN_MWAIT); /* AES */ diff --git a/gcc/config/i386/i386-c.c b/gcc/config/i386/i386-c.c index be46d05..5ed0de0 100644 --- a/gcc/config/i386/i386-c.c +++ b/gcc/config/i386/i386-c.c @@ -532,6 +532,8 @@ ix86_target_macros_internal (HOST_WIDE_INT isa_flag, def_or_undef (parse_in, "__LZCNT__"); if (isa_flag & OPTION_MASK_ISA_TBM) def_or_undef (parse_in, "__TBM__"); + if (isa_flag & OPTION_MASK_ISA_CRC32) + def_or_undef (parse_in, "__CRC32__"); if (isa_flag & OPTION_MASK_ISA_POPCNT) def_or_undef (parse_in, "__POPCNT__"); if (isa_flag & OPTION_MASK_ISA_FSGSBASE) diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c index dda08ff..166c23d 100644 --- a/gcc/config/i386/i386-expand.c +++ b/gcc/config/i386/i386-expand.c @@ -7055,7 +7055,7 @@ decide_alignment (int align, desired_align = GET_MODE_SIZE (move_mode); /* PentiumPro has special logic triggering for 8 byte aligned blocks. copying whole cacheline at once. */ - if (TARGET_PENTIUMPRO + if (TARGET_CPU_P (PENTIUMPRO) && (alg == rep_prefix_4_byte || alg == rep_prefix_1_byte)) desired_align = 8; diff --git a/gcc/config/i386/i386-isa.def b/gcc/config/i386/i386-isa.def new file mode 100644 index 0000000..a0d46cb --- /dev/null +++ b/gcc/config/i386/i386-isa.def @@ -0,0 +1,110 @@ +/* Definition for processor table alias flags. + Copyright (C) 2001-2021 Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 3, or (at your option) any later +version. + +GCC is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING3. If not see +<http://www.gnu.org/licenses/>. */ + +DEF_PTA(3DNOW) +DEF_PTA(3DNOW_A) +DEF_PTA(64BIT) +DEF_PTA(ABM) +DEF_PTA(AES) +DEF_PTA(AVX) +DEF_PTA(BMI) +DEF_PTA(CX16) +DEF_PTA(F16C) +DEF_PTA(FMA) +DEF_PTA(FMA4) +DEF_PTA(FSGSBASE) +DEF_PTA(LWP) +DEF_PTA(LZCNT) +DEF_PTA(MMX) +DEF_PTA(MOVBE) +DEF_PTA(NO_SAHF) +DEF_PTA(PCLMUL) +DEF_PTA(POPCNT) +DEF_PTA(PREFETCH_SSE) +DEF_PTA(RDRND) +DEF_PTA(SSE) +DEF_PTA(SSE2) +DEF_PTA(SSE3) +DEF_PTA(SSE4_1) +DEF_PTA(SSE4_2) +DEF_PTA(SSE4A) +DEF_PTA(SSSE3) +DEF_PTA(TBM) +DEF_PTA(XOP) +DEF_PTA(AVX2) +DEF_PTA(BMI2) +DEF_PTA(RTM) +DEF_PTA(HLE) +DEF_PTA(PRFCHW) +DEF_PTA(RDSEED) +DEF_PTA(ADX) +DEF_PTA(FXSR) +DEF_PTA(XSAVE) +DEF_PTA(XSAVEOPT) +DEF_PTA(AVX512F) +DEF_PTA(AVX512ER) +DEF_PTA(AVX512PF) +DEF_PTA(AVX512CD) +DEF_PTA(NO_TUNE) +DEF_PTA(SHA) +DEF_PTA(PREFETCHWT1) +DEF_PTA(CLFLUSHOPT) +DEF_PTA(XSAVEC) +DEF_PTA(XSAVES) +DEF_PTA(AVX512DQ) +DEF_PTA(AVX512BW) +DEF_PTA(AVX512VL) +DEF_PTA(AVX512IFMA) +DEF_PTA(AVX512VBMI) +DEF_PTA(CLWB) +DEF_PTA(MWAITX) +DEF_PTA(CLZERO) +DEF_PTA(NO_80387) +DEF_PTA(PKU) +DEF_PTA(AVX5124VNNIW) +DEF_PTA(AVX5124FMAPS) +DEF_PTA(AVX512VPOPCNTDQ) +DEF_PTA(SGX) +DEF_PTA(AVX512VNNI) +DEF_PTA(GFNI) +DEF_PTA(VAES) +DEF_PTA(AVX512VBMI2) +DEF_PTA(VPCLMULQDQ) +DEF_PTA(AVX512BITALG) +DEF_PTA(RDPID) +DEF_PTA(PCONFIG) +DEF_PTA(WBNOINVD) +DEF_PTA(AVX512VP2INTERSECT) +DEF_PTA(PTWRITE) +DEF_PTA(AVX512BF16) +DEF_PTA(WAITPKG) +DEF_PTA(MOVDIRI) +DEF_PTA(MOVDIR64B) +DEF_PTA(ENQCMD) +DEF_PTA(CLDEMOTE) +DEF_PTA(SERIALIZE) +DEF_PTA(TSXLDTRK) +DEF_PTA(AMX_TILE) +DEF_PTA(AMX_INT8) +DEF_PTA(AMX_BF16) +DEF_PTA(UINTR) +DEF_PTA(HRESET) +DEF_PTA(KL) +DEF_PTA(WIDEKL) +DEF_PTA(AVXVNNI) diff --git a/gcc/config/i386/i386-options.c b/gcc/config/i386/i386-options.c index 91da284..2a12228 100644 --- a/gcc/config/i386/i386-options.c +++ b/gcc/config/i386/i386-options.c @@ -207,6 +207,7 @@ static struct ix86_target_opts isa2_opts[] = { "-mmovbe", OPTION_MASK_ISA2_MOVBE }, { "-mclzero", OPTION_MASK_ISA2_CLZERO }, { "-mmwaitx", OPTION_MASK_ISA2_MWAITX }, + { "-mmwait", OPTION_MASK_ISA2_MWAIT }, { "-mmovdir64b", OPTION_MASK_ISA2_MOVDIR64B }, { "-mwaitpkg", OPTION_MASK_ISA2_WAITPKG }, { "-mcldemote", OPTION_MASK_ISA2_CLDEMOTE }, @@ -1015,6 +1016,7 @@ ix86_valid_target_attribute_inner_p (tree fndecl, tree args, char *p_strings[], IX86_ATTR_ISA ("fsgsbase", OPT_mfsgsbase), IX86_ATTR_ISA ("rdrnd", OPT_mrdrnd), IX86_ATTR_ISA ("mwaitx", OPT_mmwaitx), + IX86_ATTR_ISA ("mwait", OPT_mmwait), IX86_ATTR_ISA ("clzero", OPT_mclzero), IX86_ATTR_ISA ("pku", OPT_mpku), IX86_ATTR_ISA ("lwp", OPT_mlwp), @@ -1455,10 +1457,8 @@ ix86_valid_target_attribute_p (tree fndecl, } const char *stringop_alg_names[] = { -#define DEF_ENUM #define DEF_ALG(alg, name) #name, #include "stringop.def" -#undef DEF_ENUM #undef DEF_ALG }; @@ -2096,285 +2096,40 @@ ix86_option_override_internal (bool main_args_p, else ix86_tune = PROCESSOR_GENERIC; - if (((processor_alias_table[i].flags & PTA_MMX) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_MMX)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_MMX; - if (((processor_alias_table[i].flags & PTA_3DNOW) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_3DNOW)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_3DNOW; - if (((processor_alias_table[i].flags & PTA_3DNOW_A) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_3DNOW_A)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_3DNOW_A; - if (((processor_alias_table[i].flags & PTA_SSE) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSE)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSE; - if (((processor_alias_table[i].flags & PTA_SSE2) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSE2)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSE2; - if (((processor_alias_table[i].flags & PTA_SSE3) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSE3)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSE3; - if (((processor_alias_table[i].flags & PTA_SSSE3) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSSE3)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSSE3; - if (((processor_alias_table[i].flags & PTA_SSE4_1) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSE4_1)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSE4_1; - if (((processor_alias_table[i].flags & PTA_SSE4_2) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSE4_2)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSE4_2; - if (((processor_alias_table[i].flags & PTA_AVX) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX; - if (((processor_alias_table[i].flags & PTA_AVX2) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX2)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX2; - if (((processor_alias_table[i].flags & PTA_FMA) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_FMA)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_FMA; - if (((processor_alias_table[i].flags & PTA_SSE4A) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SSE4A)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SSE4A; - if (((processor_alias_table[i].flags & PTA_FMA4) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_FMA4)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_FMA4; - if (((processor_alias_table[i].flags & PTA_XOP) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_XOP)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_XOP; - if (((processor_alias_table[i].flags & PTA_LWP) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_LWP)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_LWP; + /* Enable PTA flags that are enabled by default by a -march option. */ +#define TARGET_EXPLICIT_NO_SAHF_P(opts) (false) +#define SET_TARGET_NO_SAHF(opts) {} +#define TARGET_EXPLICIT_PREFETCH_SSE_P(opts) (false) +#define SET_TARGET_PREFETCH_SSE(opts) {} +#define TARGET_EXPLICIT_NO_TUNE_P(opts) (false) +#define SET_TARGET_NO_TUNE(opts) {} +#define TARGET_EXPLICIT_NO_80387_P(opts) (false) +#define SET_TARGET_NO_80387(opts) {} + +#define DEF_PTA(NAME) \ + if (((processor_alias_table[i].flags & PTA_ ## NAME) != 0) \ + && PTA_ ## NAME != PTA_64BIT \ + && !TARGET_EXPLICIT_ ## NAME ## _P (opts)) \ + SET_TARGET_ ## NAME (opts); +#include "i386-isa.def" +#undef DEF_PTA + + + if (!(TARGET_64BIT_P (opts->x_ix86_isa_flags) + && ((processor_alias_table[i].flags & PTA_NO_SAHF) != 0)) + && !TARGET_EXPLICIT_SAHF_P (opts)) + SET_TARGET_SAHF (opts); + if (((processor_alias_table[i].flags & PTA_ABM) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_ABM)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_ABM; - if (((processor_alias_table[i].flags & PTA_BMI) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_BMI)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_BMI; - if (((processor_alias_table[i].flags & (PTA_LZCNT | PTA_ABM)) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_LZCNT)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_LZCNT; - if (((processor_alias_table[i].flags & PTA_TBM) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_TBM)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_TBM; - if (((processor_alias_table[i].flags & PTA_BMI2) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_BMI2)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_BMI2; - if (((processor_alias_table[i].flags & PTA_CX16) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_CX16)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_CX16; - if (((processor_alias_table[i].flags & (PTA_POPCNT | PTA_ABM)) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_POPCNT)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_POPCNT; - if (!(TARGET_64BIT_P (opts->x_ix86_isa_flags) - && ((processor_alias_table[i].flags & PTA_NO_SAHF) != 0)) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SAHF)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SAHF; - if (((processor_alias_table[i].flags & PTA_MOVBE) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_MOVBE)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_MOVBE; - if (((processor_alias_table[i].flags & PTA_AES) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AES)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AES; - if (((processor_alias_table[i].flags & PTA_SHA) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_SHA)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_SHA; - if (((processor_alias_table[i].flags & PTA_PCLMUL) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_PCLMUL)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_PCLMUL; - if (((processor_alias_table[i].flags & PTA_FSGSBASE) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_FSGSBASE)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_FSGSBASE; - if (((processor_alias_table[i].flags & PTA_RDRND) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_RDRND)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_RDRND; - if (((processor_alias_table[i].flags & PTA_F16C) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_F16C)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_F16C; - if (((processor_alias_table[i].flags & PTA_RTM) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_RTM)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_RTM; - if (((processor_alias_table[i].flags & PTA_HLE) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_HLE)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_HLE; - if (((processor_alias_table[i].flags & PTA_PRFCHW) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_PRFCHW)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_PRFCHW; - if (((processor_alias_table[i].flags & PTA_RDSEED) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_RDSEED)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_RDSEED; - if (((processor_alias_table[i].flags & PTA_ADX) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_ADX)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_ADX; - if (((processor_alias_table[i].flags & PTA_FXSR) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_FXSR)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_FXSR; - if (((processor_alias_table[i].flags & PTA_XSAVE) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_XSAVE)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_XSAVE; - if (((processor_alias_table[i].flags & PTA_XSAVEOPT) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_XSAVEOPT)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_XSAVEOPT; - if (((processor_alias_table[i].flags & PTA_AVX512F) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512F)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512F; - if (((processor_alias_table[i].flags & PTA_AVX512ER) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512ER)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512ER; - if (((processor_alias_table[i].flags & PTA_AVX512PF) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512PF)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512PF; - if (((processor_alias_table[i].flags & PTA_AVX512CD) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512CD)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512CD; - if (((processor_alias_table[i].flags & PTA_PREFETCHWT1) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_PREFETCHWT1)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_PREFETCHWT1; - if (((processor_alias_table[i].flags & PTA_CLWB) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_CLWB)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_CLWB; - if (((processor_alias_table[i].flags & PTA_CLFLUSHOPT) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_CLFLUSHOPT)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_CLFLUSHOPT; - if (((processor_alias_table[i].flags & PTA_CLZERO) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_CLZERO)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_CLZERO; - if (((processor_alias_table[i].flags & PTA_XSAVEC) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_XSAVEC)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_XSAVEC; - if (((processor_alias_table[i].flags & PTA_XSAVES) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_XSAVES)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_XSAVES; - if (((processor_alias_table[i].flags & PTA_AVX512DQ) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512DQ)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512DQ; - if (((processor_alias_table[i].flags & PTA_AVX512BW) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512BW)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512BW; - if (((processor_alias_table[i].flags & PTA_AVX512VL) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512VL)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512VL; - if (((processor_alias_table[i].flags & PTA_AVX512VBMI) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512VBMI)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512VBMI; - if (((processor_alias_table[i].flags & PTA_AVX512IFMA) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512IFMA)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512IFMA; - if (((processor_alias_table[i].flags & PTA_AVX512VNNI) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_AVX512VNNI)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512VNNI; - if (((processor_alias_table[i].flags & PTA_GFNI) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_GFNI)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_GFNI; - if (((processor_alias_table[i].flags & PTA_AVX512VBMI2) != 0) - && !(opts->x_ix86_isa_flags_explicit - & OPTION_MASK_ISA_AVX512VBMI2)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512VBMI2; - if (((processor_alias_table[i].flags & PTA_VPCLMULQDQ) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_VPCLMULQDQ)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_VPCLMULQDQ; - if (((processor_alias_table[i].flags & PTA_AVX512BITALG) != 0) - && !(opts->x_ix86_isa_flags_explicit - & OPTION_MASK_ISA_AVX512BITALG)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512BITALG; - - if (((processor_alias_table[i].flags & PTA_AVX512VP2INTERSECT) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AVX512VP2INTERSECT)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AVX512VP2INTERSECT; - if (((processor_alias_table[i].flags & PTA_AVX5124VNNIW) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AVX5124VNNIW)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AVX5124VNNIW; - if (((processor_alias_table[i].flags & PTA_AVX5124FMAPS) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AVX5124FMAPS)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AVX5124FMAPS; - if (((processor_alias_table[i].flags & PTA_AVX512VPOPCNTDQ) != 0) - && !(opts->x_ix86_isa_flags_explicit - & OPTION_MASK_ISA_AVX512VPOPCNTDQ)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_AVX512VPOPCNTDQ; - if (((processor_alias_table[i].flags & PTA_AVX512BF16) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AVX512BF16)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AVX512BF16; - if (((processor_alias_table[i].flags & PTA_AMX_TILE) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AMX_TILE)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AMX_TILE; - if (((processor_alias_table[i].flags & PTA_AMX_INT8) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AMX_INT8)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AMX_INT8; - if (((processor_alias_table[i].flags & PTA_AMX_BF16) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AMX_BF16)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AMX_BF16; - if (((processor_alias_table[i].flags & PTA_AVXVNNI) != 0) - && !(opts->x_ix86_isa_flags2_explicit - & OPTION_MASK_ISA2_AVXVNNI)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_AVXVNNI; - if (((processor_alias_table[i].flags & PTA_MOVDIRI) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_MOVDIRI)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_MOVDIRI; - if (((processor_alias_table[i].flags & PTA_MOVDIR64B) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_MOVDIR64B)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_MOVDIR64B; - if (((processor_alias_table[i].flags & PTA_SGX) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_SGX)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_SGX; - if (((processor_alias_table[i].flags & PTA_VAES) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_VAES)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_VAES; - if (((processor_alias_table[i].flags & PTA_RDPID) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_RDPID)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_RDPID; - if (((processor_alias_table[i].flags & PTA_PCONFIG) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_PCONFIG)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_PCONFIG; - if (((processor_alias_table[i].flags & PTA_WBNOINVD) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_WBNOINVD)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_WBNOINVD; - if (((processor_alias_table[i].flags & PTA_PTWRITE) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_PTWRITE)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_PTWRITE; - if (((processor_alias_table[i].flags & PTA_WAITPKG) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_WAITPKG)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_WAITPKG; - if (((processor_alias_table[i].flags & PTA_ENQCMD) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_ENQCMD)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_ENQCMD; - if (((processor_alias_table[i].flags & PTA_CLDEMOTE) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_CLDEMOTE)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_CLDEMOTE; - if (((processor_alias_table[i].flags & PTA_SERIALIZE) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_SERIALIZE)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_SERIALIZE; - if (((processor_alias_table[i].flags & PTA_TSXLDTRK) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_TSXLDTRK)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_TSXLDTRK; - if (((processor_alias_table[i].flags & PTA_KL) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_KL)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_KL; - if (((processor_alias_table[i].flags & PTA_WIDEKL) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_WIDEKL)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_WIDEKL; + && !TARGET_EXPLICIT_ABM_P (opts)) + { + SET_TARGET_LZCNT (opts); + SET_TARGET_POPCNT (opts); + } if ((processor_alias_table[i].flags & (PTA_PREFETCH_SSE | PTA_SSE)) != 0) ix86_prefetch_sse = true; - if (((processor_alias_table[i].flags & PTA_MWAITX) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_MWAITX)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_MWAITX; - if (((processor_alias_table[i].flags & PTA_PKU) != 0) - && !(opts->x_ix86_isa_flags_explicit & OPTION_MASK_ISA_PKU)) - opts->x_ix86_isa_flags |= OPTION_MASK_ISA_PKU; - if (((processor_alias_table[i].flags & PTA_UINTR) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_UINTR)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_UINTR; - if (((processor_alias_table[i].flags & PTA_HRESET) != 0) - && !(opts->x_ix86_isa_flags2_explicit & OPTION_MASK_ISA2_HRESET)) - opts->x_ix86_isa_flags2 |= OPTION_MASK_ISA2_HRESET; - /* Don't enable x87 instructions if only general registers are allowed by target("general-regs-only") function attribute or @@ -2611,12 +2366,22 @@ ix86_option_override_internal (bool main_args_p, || TARGET_PREFETCHWT1_P (opts->x_ix86_isa_flags)) ix86_prefetch_sse = true; + /* Enable mwait/monitor instructions for -msse3. */ + if (TARGET_SSE3_P (opts->x_ix86_isa_flags)) + opts->x_ix86_isa_flags2 + |= OPTION_MASK_ISA2_MWAIT & ~opts->x_ix86_isa_flags2_explicit; + /* Enable popcnt instruction for -msse4.2 or -mabm. */ if (TARGET_SSE4_2_P (opts->x_ix86_isa_flags) || TARGET_ABM_P (opts->x_ix86_isa_flags)) opts->x_ix86_isa_flags |= OPTION_MASK_ISA_POPCNT & ~opts->x_ix86_isa_flags_explicit; + /* Enable crc32 instruction for -msse4.2. */ + if (TARGET_SSE4_2_P (opts->x_ix86_isa_flags)) + opts->x_ix86_isa_flags + |= OPTION_MASK_ISA_CRC32 & ~opts->x_ix86_isa_flags_explicit; + /* Enable lzcnt instruction for -mabm. */ if (TARGET_ABM_P(opts->x_ix86_isa_flags)) opts->x_ix86_isa_flags diff --git a/gcc/config/i386/i386-opts.h b/gcc/config/i386/i386-opts.h index de6e7e0..04e4ad6 100644 --- a/gcc/config/i386/i386-opts.h +++ b/gcc/config/i386/i386-opts.h @@ -28,16 +28,12 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see /* Algorithm to expand string function with. */ enum stringop_alg { -#undef DEF_ENUM -#define DEF_ENUM - #undef DEF_ALG #define DEF_ALG(alg, name) alg, #include "stringop.def" last_alg -#undef DEF_ENUM #undef DEF_ALG }; diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 7c41302..d3c09bf 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -10179,7 +10179,7 @@ ix86_decompose_address (rtx addr, struct ix86_address *out) Avoid this by transforming to [%esi+0]. Reload calls address legitimization without cfun defined, so we need to test cfun for being non-NULL. */ - if (TARGET_K6 && cfun && optimize_function_for_speed_p (cfun) + if (TARGET_CPU_P (K6) && cfun && optimize_function_for_speed_p (cfun) && base_reg && !index_reg && !disp && REGNO (base_reg) == SI_REG) disp = const0_rtx; @@ -10257,7 +10257,7 @@ ix86_address_cost (rtx x, machine_mode, addr_space_t, bool) memory address, but I don't have AMD-K6 machine handy to check this theory. */ - if (TARGET_K6 + if (TARGET_CPU_P (K6) && ((!parts.disp && parts.base && parts.index && parts.scale != 1) || (parts.disp && !parts.base && parts.index && parts.scale != 1) || (!parts.disp && parts.base && parts.index && parts.scale == 1))) @@ -10817,12 +10817,11 @@ ix86_legitimate_address_p (machine_mode, rtx addr, bool strict) else if (SYMBOLIC_CONST (disp) && (flag_pic - || (TARGET_MACHO #if TARGET_MACHO - && MACHOPIC_INDIRECT - && !machopic_operand_p (disp) + || (MACHOPIC_INDIRECT + && !machopic_operand_p (disp)) #endif - ))) + )) { is_legitimate_pic: @@ -14940,7 +14939,7 @@ ix86_lea_outperforms (rtx_insn *insn, unsigned int regno0, unsigned int regno1, /* For Atom processors newer than Bonnell, if using a 2-source or 3-source LEA for non-destructive destination purposes, or due to wanting ability to use SCALE, the use of LEA is justified. */ - if (!TARGET_BONNELL) + if (!TARGET_CPU_P (BONNELL)) { if (has_scale) return true; @@ -15082,7 +15081,7 @@ ix86_avoid_lea_for_addr (rtx_insn *insn, rtx operands[]) than lea for most processors. For the processors like BONNELL, if the destination register of LEA holds an actual address which will be used soon, LEA is better and otherwise ADD is better. */ - if (!TARGET_BONNELL + if (!TARGET_CPU_P (BONNELL) && parts.scale == 1 && (!parts.disp || parts.disp == const0_rtx) && (regno0 == regno1 || regno0 == regno2)) @@ -22387,7 +22386,7 @@ ix86_add_stmt_cost (class vec_info *vinfo, void *data, int count, stmt_cost = ix86_builtin_vectorization_cost (kind, vectype, misalign); /* Penalize DFmode vector operations for Bonnell. */ - if (TARGET_BONNELL && kind == vector_stmt + if (TARGET_CPU_P (BONNELL) && kind == vector_stmt && vectype && GET_MODE_INNER (TYPE_MODE (vectype)) == DFmode) stmt_cost *= 5; /* FIXME: The value here is arbitrary. */ @@ -22403,8 +22402,10 @@ ix86_add_stmt_cost (class vec_info *vinfo, void *data, int count, /* We need to multiply all vector stmt cost by 1.7 (estimated cost) for Silvermont as it has out of order integer pipeline and can execute 2 scalar instruction per tick, but has in order SIMD pipeline. */ - if ((TARGET_SILVERMONT || TARGET_GOLDMONT || TARGET_GOLDMONT_PLUS - || TARGET_TREMONT || TARGET_INTEL) && stmt_info && stmt_info->stmt) + if ((TARGET_CPU_P (SILVERMONT) || TARGET_CPU_P (GOLDMONT) + || TARGET_CPU_P (GOLDMONT_PLUS) || TARGET_CPU_P (TREMONT) + || TARGET_CPU_P (INTEL)) + && stmt_info && stmt_info->stmt) { tree lhs_op = gimple_get_lhs (stmt_info->stmt); if (lhs_op && TREE_CODE (TREE_TYPE (lhs_op)) == INTEGER_TYPE) diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 97700d7..96b46ba 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -39,192 +39,14 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see /* Redefines for option macros. */ -#define TARGET_64BIT TARGET_ISA_64BIT -#define TARGET_64BIT_P(x) TARGET_ISA_64BIT_P(x) -#define TARGET_MMX TARGET_ISA_MMX -#define TARGET_MMX_P(x) TARGET_ISA_MMX_P(x) -#define TARGET_3DNOW TARGET_ISA_3DNOW -#define TARGET_3DNOW_P(x) TARGET_ISA_3DNOW_P(x) -#define TARGET_3DNOW_A TARGET_ISA_3DNOW_A -#define TARGET_3DNOW_A_P(x) TARGET_ISA_3DNOW_A_P(x) -#define TARGET_SSE TARGET_ISA_SSE -#define TARGET_SSE_P(x) TARGET_ISA_SSE_P(x) -#define TARGET_SSE2 TARGET_ISA_SSE2 -#define TARGET_SSE2_P(x) TARGET_ISA_SSE2_P(x) -#define TARGET_SSE3 TARGET_ISA_SSE3 -#define TARGET_SSE3_P(x) TARGET_ISA_SSE3_P(x) -#define TARGET_SSSE3 TARGET_ISA_SSSE3 -#define TARGET_SSSE3_P(x) TARGET_ISA_SSSE3_P(x) -#define TARGET_SSE4_1 TARGET_ISA_SSE4_1 -#define TARGET_SSE4_1_P(x) TARGET_ISA_SSE4_1_P(x) -#define TARGET_SSE4_2 TARGET_ISA_SSE4_2 -#define TARGET_SSE4_2_P(x) TARGET_ISA_SSE4_2_P(x) -#define TARGET_AVX TARGET_ISA_AVX -#define TARGET_AVX_P(x) TARGET_ISA_AVX_P(x) -#define TARGET_AVX2 TARGET_ISA_AVX2 -#define TARGET_AVX2_P(x) TARGET_ISA_AVX2_P(x) -#define TARGET_AVX512F TARGET_ISA_AVX512F -#define TARGET_AVX512F_P(x) TARGET_ISA_AVX512F_P(x) -#define TARGET_AVX512PF TARGET_ISA_AVX512PF -#define TARGET_AVX512PF_P(x) TARGET_ISA_AVX512PF_P(x) -#define TARGET_AVX512ER TARGET_ISA_AVX512ER -#define TARGET_AVX512ER_P(x) TARGET_ISA_AVX512ER_P(x) -#define TARGET_AVX512CD TARGET_ISA_AVX512CD -#define TARGET_AVX512CD_P(x) TARGET_ISA_AVX512CD_P(x) -#define TARGET_AVX512DQ TARGET_ISA_AVX512DQ -#define TARGET_AVX512DQ_P(x) TARGET_ISA_AVX512DQ_P(x) -#define TARGET_AVX512BW TARGET_ISA_AVX512BW -#define TARGET_AVX512BW_P(x) TARGET_ISA_AVX512BW_P(x) -#define TARGET_AVX512VL TARGET_ISA_AVX512VL -#define TARGET_AVX512VL_P(x) TARGET_ISA_AVX512VL_P(x) -#define TARGET_AVX512VBMI TARGET_ISA_AVX512VBMI -#define TARGET_AVX512VBMI_P(x) TARGET_ISA_AVX512VBMI_P(x) -#define TARGET_AVX512IFMA TARGET_ISA_AVX512IFMA -#define TARGET_AVX512IFMA_P(x) TARGET_ISA_AVX512IFMA_P(x) -#define TARGET_AVX5124FMAPS TARGET_ISA2_AVX5124FMAPS -#define TARGET_AVX5124FMAPS_P(x) TARGET_ISA2_AVX5124FMAPS_P(x) -#define TARGET_AVX5124VNNIW TARGET_ISA2_AVX5124VNNIW -#define TARGET_AVX5124VNNIW_P(x) TARGET_ISA2_AVX5124VNNIW_P(x) -#define TARGET_AVX512VBMI2 TARGET_ISA_AVX512VBMI2 -#define TARGET_AVX512VBMI2_P(x) TARGET_ISA_AVX512VBMI2_P(x) -#define TARGET_AVX512VPOPCNTDQ TARGET_ISA_AVX512VPOPCNTDQ -#define TARGET_AVX512VPOPCNTDQ_P(x) TARGET_ISA_AVX512VPOPCNTDQ_P(x) -#define TARGET_AVX512VNNI TARGET_ISA_AVX512VNNI -#define TARGET_AVX512VNNI_P(x) TARGET_ISA_AVX512VNNI_P(x) -#define TARGET_AVX512BITALG TARGET_ISA_AVX512BITALG -#define TARGET_AVX512BITALG_P(x) TARGET_ISA_AVX512BITALG_P(x) -#define TARGET_AVX512VP2INTERSECT TARGET_ISA2_AVX512VP2INTERSECT -#define TARGET_AVX512VP2INTERSECT_P(x) TARGET_ISA2_AVX512VP2INTERSECT_P(x) -#define TARGET_FMA TARGET_ISA_FMA -#define TARGET_FMA_P(x) TARGET_ISA_FMA_P(x) -#define TARGET_SSE4A TARGET_ISA_SSE4A -#define TARGET_SSE4A_P(x) TARGET_ISA_SSE4A_P(x) -#define TARGET_FMA4 TARGET_ISA_FMA4 -#define TARGET_FMA4_P(x) TARGET_ISA_FMA4_P(x) -#define TARGET_XOP TARGET_ISA_XOP -#define TARGET_XOP_P(x) TARGET_ISA_XOP_P(x) -#define TARGET_LWP TARGET_ISA_LWP -#define TARGET_LWP_P(x) TARGET_ISA_LWP_P(x) -#define TARGET_ABM TARGET_ISA_ABM -#define TARGET_ABM_P(x) TARGET_ISA_ABM_P(x) -#define TARGET_PCONFIG TARGET_ISA2_PCONFIG -#define TARGET_PCONFIG_P(x) TARGET_ISA2_PCONFIG_P(x) -#define TARGET_WBNOINVD TARGET_ISA2_WBNOINVD -#define TARGET_WBNOINVD_P(x) TARGET_ISA2_WBNOINVD_P(x) -#define TARGET_SGX TARGET_ISA2_SGX -#define TARGET_SGX_P(x) TARGET_ISA2_SGX_P(x) -#define TARGET_RDPID TARGET_ISA2_RDPID -#define TARGET_RDPID_P(x) TARGET_ISA2_RDPID_P(x) -#define TARGET_GFNI TARGET_ISA_GFNI -#define TARGET_GFNI_P(x) TARGET_ISA_GFNI_P(x) -#define TARGET_VAES TARGET_ISA2_VAES -#define TARGET_VAES_P(x) TARGET_ISA2_VAES_P(x) -#define TARGET_VPCLMULQDQ TARGET_ISA_VPCLMULQDQ -#define TARGET_VPCLMULQDQ_P(x) TARGET_ISA_VPCLMULQDQ_P(x) -#define TARGET_BMI TARGET_ISA_BMI -#define TARGET_BMI_P(x) TARGET_ISA_BMI_P(x) -#define TARGET_BMI2 TARGET_ISA_BMI2 -#define TARGET_BMI2_P(x) TARGET_ISA_BMI2_P(x) -#define TARGET_LZCNT TARGET_ISA_LZCNT -#define TARGET_LZCNT_P(x) TARGET_ISA_LZCNT_P(x) -#define TARGET_TBM TARGET_ISA_TBM -#define TARGET_TBM_P(x) TARGET_ISA_TBM_P(x) -#define TARGET_POPCNT TARGET_ISA_POPCNT -#define TARGET_POPCNT_P(x) TARGET_ISA_POPCNT_P(x) -#define TARGET_SAHF TARGET_ISA_SAHF -#define TARGET_SAHF_P(x) TARGET_ISA_SAHF_P(x) -#define TARGET_MOVBE TARGET_ISA2_MOVBE -#define TARGET_MOVBE_P(x) TARGET_ISA2_MOVBE_P(x) -#define TARGET_CRC32 TARGET_ISA_CRC32 -#define TARGET_CRC32_P(x) TARGET_ISA_CRC32_P(x) -#define TARGET_AES TARGET_ISA_AES -#define TARGET_AES_P(x) TARGET_ISA_AES_P(x) -#define TARGET_SHA TARGET_ISA_SHA -#define TARGET_SHA_P(x) TARGET_ISA_SHA_P(x) -#define TARGET_CLFLUSHOPT TARGET_ISA_CLFLUSHOPT -#define TARGET_CLFLUSHOPT_P(x) TARGET_ISA_CLFLUSHOPT_P(x) -#define TARGET_CLZERO TARGET_ISA2_CLZERO -#define TARGET_CLZERO_P(x) TARGET_ISA2_CLZERO_P(x) -#define TARGET_XSAVEC TARGET_ISA_XSAVEC -#define TARGET_XSAVEC_P(x) TARGET_ISA_XSAVEC_P(x) -#define TARGET_XSAVES TARGET_ISA_XSAVES -#define TARGET_XSAVES_P(x) TARGET_ISA_XSAVES_P(x) -#define TARGET_PCLMUL TARGET_ISA_PCLMUL -#define TARGET_PCLMUL_P(x) TARGET_ISA_PCLMUL_P(x) -#define TARGET_CMPXCHG16B TARGET_ISA2_CX16 -#define TARGET_CMPXCHG16B_P(x) TARGET_ISA2_CX16_P(x) -#define TARGET_FSGSBASE TARGET_ISA_FSGSBASE -#define TARGET_FSGSBASE_P(x) TARGET_ISA_FSGSBASE_P(x) -#define TARGET_RDRND TARGET_ISA_RDRND -#define TARGET_RDRND_P(x) TARGET_ISA_RDRND_P(x) -#define TARGET_F16C TARGET_ISA_F16C -#define TARGET_F16C_P(x) TARGET_ISA_F16C_P(x) -#define TARGET_RTM TARGET_ISA_RTM -#define TARGET_RTM_P(x) TARGET_ISA_RTM_P(x) -#define TARGET_HLE TARGET_ISA2_HLE -#define TARGET_HLE_P(x) TARGET_ISA2_HLE_P(x) -#define TARGET_RDSEED TARGET_ISA_RDSEED -#define TARGET_RDSEED_P(x) TARGET_ISA_RDSEED_P(x) -#define TARGET_PRFCHW TARGET_ISA_PRFCHW -#define TARGET_PRFCHW_P(x) TARGET_ISA_PRFCHW_P(x) -#define TARGET_ADX TARGET_ISA_ADX -#define TARGET_ADX_P(x) TARGET_ISA_ADX_P(x) -#define TARGET_FXSR TARGET_ISA_FXSR -#define TARGET_FXSR_P(x) TARGET_ISA_FXSR_P(x) -#define TARGET_XSAVE TARGET_ISA_XSAVE -#define TARGET_XSAVE_P(x) TARGET_ISA_XSAVE_P(x) -#define TARGET_XSAVEOPT TARGET_ISA_XSAVEOPT -#define TARGET_XSAVEOPT_P(x) TARGET_ISA_XSAVEOPT_P(x) -#define TARGET_PREFETCHWT1 TARGET_ISA_PREFETCHWT1 -#define TARGET_PREFETCHWT1_P(x) TARGET_ISA_PREFETCHWT1_P(x) -#define TARGET_CLWB TARGET_ISA_CLWB -#define TARGET_CLWB_P(x) TARGET_ISA_CLWB_P(x) -#define TARGET_MWAITX TARGET_ISA2_MWAITX -#define TARGET_MWAITX_P(x) TARGET_ISA2_MWAITX_P(x) -#define TARGET_PKU TARGET_ISA_PKU -#define TARGET_PKU_P(x) TARGET_ISA_PKU_P(x) -#define TARGET_SHSTK TARGET_ISA_SHSTK -#define TARGET_SHSTK_P(x) TARGET_ISA_SHSTK_P(x) -#define TARGET_MOVDIRI TARGET_ISA_MOVDIRI -#define TARGET_MOVDIRI_P(x) TARGET_ISA_MOVDIRI_P(x) -#define TARGET_MOVDIR64B TARGET_ISA2_MOVDIR64B -#define TARGET_MOVDIR64B_P(x) TARGET_ISA2_MOVDIR64B_P(x) -#define TARGET_WAITPKG TARGET_ISA2_WAITPKG -#define TARGET_WAITPKG_P(x) TARGET_ISA2_WAITPKG_P(x) -#define TARGET_CLDEMOTE TARGET_ISA2_CLDEMOTE -#define TARGET_CLDEMOTE_P(x) TARGET_ISA2_CLDEMOTE_P(x) -#define TARGET_PTWRITE TARGET_ISA2_PTWRITE -#define TARGET_PTWRITE_P(x) TARGET_ISA2_PTWRITE_P(x) -#define TARGET_AVX512BF16 TARGET_ISA2_AVX512BF16 -#define TARGET_AVX512BF16_P(x) TARGET_ISA2_AVX512BF16_P(x) -#define TARGET_ENQCMD TARGET_ISA2_ENQCMD -#define TARGET_ENQCMD_P(x) TARGET_ISA2_ENQCMD_P(x) -#define TARGET_SERIALIZE TARGET_ISA2_SERIALIZE -#define TARGET_SERIALIZE_P(x) TARGET_ISA2_SERIALIZE_P(x) -#define TARGET_TSXLDTRK TARGET_ISA2_TSXLDTRK -#define TARGET_TSXLDTRK_P(x) TARGET_ISA2_TSXLDTRK_P(x) -#define TARGET_AMX_TILE TARGET_ISA2_AMX_TILE -#define TARGET_AMX_TILE_P(x) TARGET_ISA2_AMX_TILE(x) -#define TARGET_AMX_INT8 TARGET_ISA2_AMX_INT8 -#define TARGET_AMX_INT8_P(x) TARGET_ISA2_AMX_INT8(x) -#define TARGET_AMX_BF16 TARGET_ISA2_AMX_BF16 -#define TARGET_AMX_BF16_P(x) TARGET_ISA2_AMX_BF16(x) -#define TARGET_UINTR TARGET_ISA2_UINTR -#define TARGET_UINTR_P(x) TARGET_ISA2_UINTR_P(x) -#define TARGET_HRESET TARGET_ISA2_HRESET -#define TARGET_HRESET_P(x) TARGET_ISA2_HRESET_P(x) -#define TARGET_KL TARGET_ISA2_KL -#define TARGET_KL_P(x) TARGET_ISA2_KL_P(x) -#define TARGET_WIDEKL TARGET_ISA2_WIDEKL -#define TARGET_WIDEKL_P(x) TARGET_ISA2_WIDEKL_P(x) -#define TARGET_AVXVNNI TARGET_ISA2_AVXVNNI -#define TARGET_AVXVNNI_P(x) TARGET_ISA2_AVXVNNI_P(x) - -#define TARGET_LP64 TARGET_ABI_64 +#define TARGET_CMPXCHG16B TARGET_CX16 +#define TARGET_CMPXCHG16B_P(x) TARGET_CX16_P(x) + +#define TARGET_LP64 TARGET_ABI_64 #define TARGET_LP64_P(x) TARGET_ABI_64_P(x) -#define TARGET_X32 TARGET_ABI_X32 -#define TARGET_X32_P(x) TARGET_ABI_X32_P(x) -#define TARGET_16BIT TARGET_CODE16 +#define TARGET_X32 TARGET_ABI_X32 +#define TARGET_X32_P(x) TARGET_ABI_X32_P(x) +#define TARGET_16BIT TARGET_CODE16 #define TARGET_16BIT_P(x) TARGET_CODE16_P(x) #define TARGET_MMX_WITH_SSE (TARGET_64BIT && TARGET_SSE2) @@ -441,51 +263,7 @@ extern const struct processor_costs ix86_size_cost; #define HAS_LONG_COND_BRANCH 1 #define HAS_LONG_UNCOND_BRANCH 1 -#define TARGET_386 (ix86_tune == PROCESSOR_I386) -#define TARGET_486 (ix86_tune == PROCESSOR_I486) -#define TARGET_PENTIUM (ix86_tune == PROCESSOR_PENTIUM) -#define TARGET_PENTIUMPRO (ix86_tune == PROCESSOR_PENTIUMPRO) -#define TARGET_GEODE (ix86_tune == PROCESSOR_GEODE) -#define TARGET_K6 (ix86_tune == PROCESSOR_K6) -#define TARGET_ATHLON (ix86_tune == PROCESSOR_ATHLON) -#define TARGET_PENTIUM4 (ix86_tune == PROCESSOR_PENTIUM4) -#define TARGET_K8 (ix86_tune == PROCESSOR_K8) -#define TARGET_ATHLON_K8 (TARGET_K8 || TARGET_ATHLON) -#define TARGET_NOCONA (ix86_tune == PROCESSOR_NOCONA) -#define TARGET_CORE2 (ix86_tune == PROCESSOR_CORE2) -#define TARGET_NEHALEM (ix86_tune == PROCESSOR_NEHALEM) -#define TARGET_SANDYBRIDGE (ix86_tune == PROCESSOR_SANDYBRIDGE) -#define TARGET_HASWELL (ix86_tune == PROCESSOR_HASWELL) -#define TARGET_BONNELL (ix86_tune == PROCESSOR_BONNELL) -#define TARGET_SILVERMONT (ix86_tune == PROCESSOR_SILVERMONT) -#define TARGET_GOLDMONT (ix86_tune == PROCESSOR_GOLDMONT) -#define TARGET_GOLDMONT_PLUS (ix86_tune == PROCESSOR_GOLDMONT_PLUS) -#define TARGET_TREMONT (ix86_tune == PROCESSOR_TREMONT) -#define TARGET_KNL (ix86_tune == PROCESSOR_KNL) -#define TARGET_KNM (ix86_tune == PROCESSOR_KNM) -#define TARGET_SKYLAKE (ix86_tune == PROCESSOR_SKYLAKE) -#define TARGET_SKYLAKE_AVX512 (ix86_tune == PROCESSOR_SKYLAKE_AVX512) -#define TARGET_CANNONLAKE (ix86_tune == PROCESSOR_CANNONLAKE) -#define TARGET_ICELAKE_CLIENT (ix86_tune == PROCESSOR_ICELAKE_CLIENT) -#define TARGET_ICELAKE_SERVER (ix86_tune == PROCESSOR_ICELAKE_SERVER) -#define TARGET_CASCADELAKE (ix86_tune == PROCESSOR_CASCADELAKE) -#define TARGET_TIGERLAKE (ix86_tune == PROCESSOR_TIGERLAKE) -#define TARGET_COOPERLAKE (ix86_tune == PROCESSOR_COOPERLAKE) -#define TARGET_SAPPHIRERAPIDS (ix86_tune == PROCESSOR_SAPPHIRERAPIDS) -#define TARGET_ALDERLAKE (ix86_tune == PROCESSOR_ALDERLAKE) -#define TARGET_ROCKETLAKE (ix86_tune == PROCESSOR_ROCKETLAKE) -#define TARGET_INTEL (ix86_tune == PROCESSOR_INTEL) -#define TARGET_GENERIC (ix86_tune == PROCESSOR_GENERIC) -#define TARGET_AMDFAM10 (ix86_tune == PROCESSOR_AMDFAM10) -#define TARGET_BDVER1 (ix86_tune == PROCESSOR_BDVER1) -#define TARGET_BDVER2 (ix86_tune == PROCESSOR_BDVER2) -#define TARGET_BDVER3 (ix86_tune == PROCESSOR_BDVER3) -#define TARGET_BDVER4 (ix86_tune == PROCESSOR_BDVER4) -#define TARGET_BTVER1 (ix86_tune == PROCESSOR_BTVER1) -#define TARGET_BTVER2 (ix86_tune == PROCESSOR_BTVER2) -#define TARGET_ZNVER1 (ix86_tune == PROCESSOR_ZNVER1) -#define TARGET_ZNVER2 (ix86_tune == PROCESSOR_ZNVER2) -#define TARGET_ZNVER3 (ix86_tune == PROCESSOR_ZNVER3) +#define TARGET_CPU_P(CPU) (ix86_tune == PROCESSOR_ ## CPU) /* Feature tests against the various tunings. */ enum ix86_tune_indices { @@ -2413,97 +2191,24 @@ extern const char *const processor_names[]; #include "wide-int-bitmask.h" -constexpr wide_int_bitmask PTA_3DNOW (HOST_WIDE_INT_1U << 0); -constexpr wide_int_bitmask PTA_3DNOW_A (HOST_WIDE_INT_1U << 1); -constexpr wide_int_bitmask PTA_64BIT (HOST_WIDE_INT_1U << 2); -constexpr wide_int_bitmask PTA_ABM (HOST_WIDE_INT_1U << 3); -constexpr wide_int_bitmask PTA_AES (HOST_WIDE_INT_1U << 4); -constexpr wide_int_bitmask PTA_AVX (HOST_WIDE_INT_1U << 5); -constexpr wide_int_bitmask PTA_BMI (HOST_WIDE_INT_1U << 6); -constexpr wide_int_bitmask PTA_CX16 (HOST_WIDE_INT_1U << 7); -constexpr wide_int_bitmask PTA_F16C (HOST_WIDE_INT_1U << 8); -constexpr wide_int_bitmask PTA_FMA (HOST_WIDE_INT_1U << 9); -constexpr wide_int_bitmask PTA_FMA4 (HOST_WIDE_INT_1U << 10); -constexpr wide_int_bitmask PTA_FSGSBASE (HOST_WIDE_INT_1U << 11); -constexpr wide_int_bitmask PTA_LWP (HOST_WIDE_INT_1U << 12); -constexpr wide_int_bitmask PTA_LZCNT (HOST_WIDE_INT_1U << 13); -constexpr wide_int_bitmask PTA_MMX (HOST_WIDE_INT_1U << 14); -constexpr wide_int_bitmask PTA_MOVBE (HOST_WIDE_INT_1U << 15); -constexpr wide_int_bitmask PTA_NO_SAHF (HOST_WIDE_INT_1U << 16); -constexpr wide_int_bitmask PTA_PCLMUL (HOST_WIDE_INT_1U << 17); -constexpr wide_int_bitmask PTA_POPCNT (HOST_WIDE_INT_1U << 18); -constexpr wide_int_bitmask PTA_PREFETCH_SSE (HOST_WIDE_INT_1U << 19); -constexpr wide_int_bitmask PTA_RDRND (HOST_WIDE_INT_1U << 20); -constexpr wide_int_bitmask PTA_SSE (HOST_WIDE_INT_1U << 21); -constexpr wide_int_bitmask PTA_SSE2 (HOST_WIDE_INT_1U << 22); -constexpr wide_int_bitmask PTA_SSE3 (HOST_WIDE_INT_1U << 23); -constexpr wide_int_bitmask PTA_SSE4_1 (HOST_WIDE_INT_1U << 24); -constexpr wide_int_bitmask PTA_SSE4_2 (HOST_WIDE_INT_1U << 25); -constexpr wide_int_bitmask PTA_SSE4A (HOST_WIDE_INT_1U << 26); -constexpr wide_int_bitmask PTA_SSSE3 (HOST_WIDE_INT_1U << 27); -constexpr wide_int_bitmask PTA_TBM (HOST_WIDE_INT_1U << 28); -constexpr wide_int_bitmask PTA_XOP (HOST_WIDE_INT_1U << 29); -constexpr wide_int_bitmask PTA_AVX2 (HOST_WIDE_INT_1U << 30); -constexpr wide_int_bitmask PTA_BMI2 (HOST_WIDE_INT_1U << 31); -constexpr wide_int_bitmask PTA_RTM (HOST_WIDE_INT_1U << 32); -constexpr wide_int_bitmask PTA_HLE (HOST_WIDE_INT_1U << 33); -constexpr wide_int_bitmask PTA_PRFCHW (HOST_WIDE_INT_1U << 34); -constexpr wide_int_bitmask PTA_RDSEED (HOST_WIDE_INT_1U << 35); -constexpr wide_int_bitmask PTA_ADX (HOST_WIDE_INT_1U << 36); -constexpr wide_int_bitmask PTA_FXSR (HOST_WIDE_INT_1U << 37); -constexpr wide_int_bitmask PTA_XSAVE (HOST_WIDE_INT_1U << 38); -constexpr wide_int_bitmask PTA_XSAVEOPT (HOST_WIDE_INT_1U << 39); -constexpr wide_int_bitmask PTA_AVX512F (HOST_WIDE_INT_1U << 40); -constexpr wide_int_bitmask PTA_AVX512ER (HOST_WIDE_INT_1U << 41); -constexpr wide_int_bitmask PTA_AVX512PF (HOST_WIDE_INT_1U << 42); -constexpr wide_int_bitmask PTA_AVX512CD (HOST_WIDE_INT_1U << 43); -constexpr wide_int_bitmask PTA_NO_TUNE (HOST_WIDE_INT_1U << 44); -constexpr wide_int_bitmask PTA_SHA (HOST_WIDE_INT_1U << 45); -constexpr wide_int_bitmask PTA_PREFETCHWT1 (HOST_WIDE_INT_1U << 46); -constexpr wide_int_bitmask PTA_CLFLUSHOPT (HOST_WIDE_INT_1U << 47); -constexpr wide_int_bitmask PTA_XSAVEC (HOST_WIDE_INT_1U << 48); -constexpr wide_int_bitmask PTA_XSAVES (HOST_WIDE_INT_1U << 49); -constexpr wide_int_bitmask PTA_AVX512DQ (HOST_WIDE_INT_1U << 50); -constexpr wide_int_bitmask PTA_AVX512BW (HOST_WIDE_INT_1U << 51); -constexpr wide_int_bitmask PTA_AVX512VL (HOST_WIDE_INT_1U << 52); -constexpr wide_int_bitmask PTA_AVX512IFMA (HOST_WIDE_INT_1U << 53); -constexpr wide_int_bitmask PTA_AVX512VBMI (HOST_WIDE_INT_1U << 54); -constexpr wide_int_bitmask PTA_CLWB (HOST_WIDE_INT_1U << 55); -constexpr wide_int_bitmask PTA_MWAITX (HOST_WIDE_INT_1U << 56); -constexpr wide_int_bitmask PTA_CLZERO (HOST_WIDE_INT_1U << 57); -constexpr wide_int_bitmask PTA_NO_80387 (HOST_WIDE_INT_1U << 58); -constexpr wide_int_bitmask PTA_PKU (HOST_WIDE_INT_1U << 59); -constexpr wide_int_bitmask PTA_AVX5124VNNIW (HOST_WIDE_INT_1U << 60); -constexpr wide_int_bitmask PTA_AVX5124FMAPS (HOST_WIDE_INT_1U << 61); -constexpr wide_int_bitmask PTA_AVX512VPOPCNTDQ (HOST_WIDE_INT_1U << 62); -constexpr wide_int_bitmask PTA_SGX (HOST_WIDE_INT_1U << 63); -constexpr wide_int_bitmask PTA_AVX512VNNI (0, HOST_WIDE_INT_1U); -constexpr wide_int_bitmask PTA_GFNI (0, HOST_WIDE_INT_1U << 1); -constexpr wide_int_bitmask PTA_VAES (0, HOST_WIDE_INT_1U << 2); -constexpr wide_int_bitmask PTA_AVX512VBMI2 (0, HOST_WIDE_INT_1U << 3); -constexpr wide_int_bitmask PTA_VPCLMULQDQ (0, HOST_WIDE_INT_1U << 4); -constexpr wide_int_bitmask PTA_AVX512BITALG (0, HOST_WIDE_INT_1U << 5); -constexpr wide_int_bitmask PTA_RDPID (0, HOST_WIDE_INT_1U << 6); -constexpr wide_int_bitmask PTA_PCONFIG (0, HOST_WIDE_INT_1U << 7); -constexpr wide_int_bitmask PTA_WBNOINVD (0, HOST_WIDE_INT_1U << 8); -constexpr wide_int_bitmask PTA_AVX512VP2INTERSECT (0, HOST_WIDE_INT_1U << 9); -constexpr wide_int_bitmask PTA_PTWRITE (0, HOST_WIDE_INT_1U << 10); -constexpr wide_int_bitmask PTA_AVX512BF16 (0, HOST_WIDE_INT_1U << 11); -constexpr wide_int_bitmask PTA_WAITPKG (0, HOST_WIDE_INT_1U << 12); -constexpr wide_int_bitmask PTA_MOVDIRI (0, HOST_WIDE_INT_1U << 13); -constexpr wide_int_bitmask PTA_MOVDIR64B (0, HOST_WIDE_INT_1U << 14); -constexpr wide_int_bitmask PTA_ENQCMD (0, HOST_WIDE_INT_1U << 15); -constexpr wide_int_bitmask PTA_CLDEMOTE (0, HOST_WIDE_INT_1U << 16); -constexpr wide_int_bitmask PTA_SERIALIZE (0, HOST_WIDE_INT_1U << 17); -constexpr wide_int_bitmask PTA_TSXLDTRK (0, HOST_WIDE_INT_1U << 18); -constexpr wide_int_bitmask PTA_AMX_TILE (0, HOST_WIDE_INT_1U << 19); -constexpr wide_int_bitmask PTA_AMX_INT8 (0, HOST_WIDE_INT_1U << 20); -constexpr wide_int_bitmask PTA_AMX_BF16 (0, HOST_WIDE_INT_1U << 21); -constexpr wide_int_bitmask PTA_UINTR (0, HOST_WIDE_INT_1U << 22); -constexpr wide_int_bitmask PTA_HRESET (0, HOST_WIDE_INT_1U << 23); -constexpr wide_int_bitmask PTA_KL (0, HOST_WIDE_INT_1U << 24); -constexpr wide_int_bitmask PTA_WIDEKL (0, HOST_WIDE_INT_1U << 25); -constexpr wide_int_bitmask PTA_AVXVNNI (0, HOST_WIDE_INT_1U << 26); +enum pta_flag +{ +#define DEF_PTA(NAME) _ ## NAME, +#include "i386-isa.def" +#undef DEF_PTA + END_PTA +}; + +/* wide_int_bitmask can handle only 128 flags. */ +STATIC_ASSERT (END_PTA <= 128); + +#define WIDE_INT_BITMASK_FROM_NTH(N) (N < 64 ? wide_int_bitmask (0, 1ULL << N) \ + : wide_int_bitmask (1ULL << (N - 64), 0)) + +#define DEF_PTA(NAME) constexpr wide_int_bitmask PTA_ ## NAME \ + = WIDE_INT_BITMASK_FROM_NTH ((pta_flag) _ ## NAME); +#include "i386-isa.def" +#undef DEF_PTA constexpr wide_int_bitmask PTA_X86_64_BASELINE = PTA_64BIT | PTA_MMX | PTA_SSE | PTA_SSE2 | PTA_NO_SAHF | PTA_FXSR; diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 9ff35d9..7eb7176 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -14302,13 +14302,13 @@ return "tzcnt{<imodesuffix>}\t{%1, %0|%0, %1}"; else if (optimize_function_for_size_p (cfun)) ; - else if (TARGET_GENERIC) + else if (TARGET_CPU_P (GENERIC)) /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ return "rep%; bsf{<imodesuffix>}\t{%1, %0|%0, %1}"; return "bsf{<imodesuffix>}\t{%1, %0|%0, %1}"; } - "(TARGET_BMI || TARGET_GENERIC) + "(TARGET_BMI || TARGET_CPU_P (GENERIC)) && TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed && optimize_function_for_speed_p (cfun) && !reg_mentioned_p (operands[0], operands[1])" @@ -14324,7 +14324,7 @@ (if_then_else (ior (match_test "TARGET_BMI") (and (not (match_test "optimize_function_for_size_p (cfun)")) - (match_test "TARGET_GENERIC"))) + (match_test "TARGET_CPU_P (GENERIC)"))) (const_string "1") (const_string "0"))) (set_attr "mode" "<MODE>")]) @@ -14343,7 +14343,7 @@ { if (TARGET_BMI) return "tzcnt{<imodesuffix>}\t{%1, %0|%0, %1}"; - else if (TARGET_GENERIC) + else if (TARGET_CPU_P (GENERIC)) /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ return "rep%; bsf{<imodesuffix>}\t{%1, %0|%0, %1}"; else @@ -20998,7 +20998,7 @@ [(match_operand:SI 1 "register_operand" "0") (match_operand:SWI124 2 "nonimmediate_operand" "<r>m")] UNSPEC_CRC32))] - "TARGET_SSE4_2 || TARGET_CRC32" + "TARGET_CRC32" "crc32{<imodesuffix>}\t{%2, %0|%0, %2}" [(set_attr "type" "sselog1") (set_attr "prefix_rep" "1") @@ -21019,7 +21019,7 @@ [(match_operand:DI 1 "register_operand" "0") (match_operand:DI 2 "nonimmediate_operand" "rm")] UNSPEC_CRC32))] - "TARGET_64BIT && (TARGET_SSE4_2 || TARGET_CRC32)" + "TARGET_64BIT && TARGET_CRC32" "crc32{q}\t{%2, %0|%0, %2}" [(set_attr "type" "sselog1") (set_attr "prefix_rep" "1") diff --git a/gcc/config/i386/i386.opt b/gcc/config/i386/i386.opt index c781fdc..7b8547b 100644 --- a/gcc/config/i386/i386.opt +++ b/gcc/config/i386/i386.opt @@ -1162,3 +1162,7 @@ AVXVNNI built-in functions and code generation. mneeded Target Var(ix86_needed) Save Emit GNU_PROPERTY_X86_ISA_1_NEEDED GNU property. + +mmwait +Target Mask(ISA2_MWAIT) Var(ix86_isa_flags2) Save +Support MWAIT and MONITOR built-in functions and code generation. diff --git a/gcc/config/i386/ia32intrin.h b/gcc/config/i386/ia32intrin.h index 5913940..5422b0f 100644 --- a/gcc/config/i386/ia32intrin.h +++ b/gcc/config/i386/ia32intrin.h @@ -51,11 +51,11 @@ __bswapd (int __X) #ifndef __iamcu__ -#ifndef __SSE4_2__ +#ifndef __CRC32__ #pragma GCC push_options -#pragma GCC target("sse4.2") -#define __DISABLE_SSE4_2__ -#endif /* __SSE4_2__ */ +#pragma GCC target("crc32") +#define __DISABLE_CRC32__ +#endif /* __CRC32__ */ /* 32bit accumulate CRC32 (polynomial 0x11EDC6F41) value. */ extern __inline unsigned int @@ -79,10 +79,10 @@ __crc32d (unsigned int __C, unsigned int __V) return __builtin_ia32_crc32si (__C, __V); } -#ifdef __DISABLE_SSE4_2__ -#undef __DISABLE_SSE4_2__ +#ifdef __DISABLE_CRC32__ +#undef __DISABLE_CRC32__ #pragma GCC pop_options -#endif /* __DISABLE_SSE4_2__ */ +#endif /* __DISABLE_CRC32__ */ #endif /* __iamcu__ */ @@ -199,11 +199,11 @@ __bswapq (long long __X) return __builtin_bswap64 (__X); } -#ifndef __SSE4_2__ +#ifndef __CRC32__ #pragma GCC push_options -#pragma GCC target("sse4.2") -#define __DISABLE_SSE4_2__ -#endif /* __SSE4_2__ */ +#pragma GCC target("crc32") +#define __DISABLE_CRC32__ +#endif /* __CRC32__ */ /* 64bit accumulate CRC32 (polynomial 0x11EDC6F41) value. */ extern __inline unsigned long long @@ -213,10 +213,10 @@ __crc32q (unsigned long long __C, unsigned long long __V) return __builtin_ia32_crc32di (__C, __V); } -#ifdef __DISABLE_SSE4_2__ -#undef __DISABLE_SSE4_2__ +#ifdef __DISABLE_CRC32__ +#undef __DISABLE_CRC32__ #pragma GCC pop_options -#endif /* __DISABLE_SSE4_2__ */ +#endif /* __DISABLE_CRC32__ */ /* 64bit popcnt */ extern __inline long long diff --git a/gcc/config/i386/mwaitintrin.h b/gcc/config/i386/mwaitintrin.h new file mode 100644 index 0000000..1ecbc4a --- /dev/null +++ b/gcc/config/i386/mwaitintrin.h @@ -0,0 +1,52 @@ +/* Copyright (C) 2021 Free Software Foundation, Inc. + + This file is part of GCC. + + GCC is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + GCC is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + Under Section 7 of GPL version 3, you are granted additional + permissions described in the GCC Runtime Library Exception, version + 3.1, as published by the Free Software Foundation. + + You should have received a copy of the GNU General Public License and + a copy of the GCC Runtime Library Exception along with this program; + see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + <http://www.gnu.org/licenses/>. */ + +#ifndef _MWAITINTRIN_H_INCLUDED +#define _MWAITINTRIN_H_INCLUDED + +#ifndef __MWAIT__ +#pragma GCC push_options +#pragma GCC target("mwait") +#define __DISABLE_MWAIT__ +#endif /* __MWAIT__ */ + +extern __inline void +__attribute__((__gnu_inline__, __always_inline__, __artificial__)) +_mm_monitor (void const * __P, unsigned int __E, unsigned int __H) +{ + __builtin_ia32_monitor (__P, __E, __H); +} + +extern __inline void +__attribute__((__gnu_inline__, __always_inline__, __artificial__)) +_mm_mwait (unsigned int __E, unsigned int __H) +{ + __builtin_ia32_mwait (__E, __H); +} + +#ifdef __DISABLE_MWAIT__ +#undef __DISABLE_MWAIT__ +#pragma GCC pop_options +#endif /* __DISABLE_MWAIT__ */ + +#endif /* _MWAITINTRIN_H_INCLUDED */ diff --git a/gcc/config/i386/pmmintrin.h b/gcc/config/i386/pmmintrin.h index fa9c5bb..f8102d2 100644 --- a/gcc/config/i386/pmmintrin.h +++ b/gcc/config/i386/pmmintrin.h @@ -29,6 +29,7 @@ /* We need definitions from the SSE2 and SSE header files*/ #include <emmintrin.h> +#include <mwaitintrin.h> #ifndef __SSE3__ #pragma GCC push_options @@ -112,18 +113,6 @@ _mm_lddqu_si128 (__m128i const *__P) return (__m128i) __builtin_ia32_lddqu ((char const *)__P); } -extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_monitor (void const * __P, unsigned int __E, unsigned int __H) -{ - __builtin_ia32_monitor (__P, __E, __H); -} - -extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_mwait (unsigned int __E, unsigned int __H) -{ - __builtin_ia32_mwait (__E, __H); -} - #ifdef __DISABLE_SSE3__ #undef __DISABLE_SSE3__ #pragma GCC pop_options diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 9d3728d..319099d 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -16593,7 +16593,7 @@ [(unspec_volatile [(match_operand:SI 0 "register_operand" "c") (match_operand:SI 1 "register_operand" "a")] UNSPECV_MWAIT)] - "TARGET_SSE3" + "TARGET_MWAIT" ;; 64bit version is "mwait %rax,%rcx". But only lower 32bits are used. ;; Since 32bit register operands are implicitly zero extended to 64bit, ;; we only need to set up 32bit registers. @@ -16605,7 +16605,7 @@ (match_operand:SI 1 "register_operand" "c") (match_operand:SI 2 "register_operand" "d")] UNSPECV_MONITOR)] - "TARGET_SSE3" + "TARGET_MWAIT" ;; 64bit version is "monitor %rax,%rcx,%rdx". But only lower 32bits in ;; RCX and RDX are used. Since 32bit register operands are implicitly ;; zero extended to 64bit, we only need to set up 32bit registers. diff --git a/gcc/config/i386/stringop.def b/gcc/config/i386/stringop.def index 76898d2..cd34b7e 100644 --- a/gcc/config/i386/stringop.def +++ b/gcc/config/i386/stringop.def @@ -17,21 +17,12 @@ You should have received a copy of the GNU General Public License along with GCC; see the files COPYING3. If not, see <http://www.gnu.org/licenses/>. */ -DEF_ENUM DEF_ALG (no_stringop, no_stringop) -DEF_ENUM DEF_ALG (libcall, libcall) -DEF_ENUM DEF_ALG (rep_prefix_1_byte, rep_byte) -DEF_ENUM DEF_ALG (rep_prefix_4_byte, rep_4byte) -DEF_ENUM DEF_ALG (rep_prefix_8_byte, rep_8byte) -DEF_ENUM DEF_ALG (loop_1_byte, byte_loop) -DEF_ENUM DEF_ALG (loop, loop) -DEF_ENUM DEF_ALG (unrolled_loop, unrolled_loop) -DEF_ENUM DEF_ALG (vector_loop, vector_loop) diff --git a/gcc/config/i386/x86-tune-sched-atom.c b/gcc/config/i386/x86-tune-sched-atom.c index cfb0c65..1611436 100644 --- a/gcc/config/i386/x86-tune-sched-atom.c +++ b/gcc/config/i386/x86-tune-sched-atom.c @@ -51,7 +51,7 @@ do_reorder_for_imul (rtx_insn **ready, int n_ready) int index = -1; int i; - if (!TARGET_BONNELL) + if (!TARGET_CPU_P (BONNELL)) return index; /* Check that IMUL instruction is on the top of ready list. */ @@ -131,7 +131,7 @@ swap_top_of_ready_list (rtx_insn **ready, int n_ready) int clock2 = -1; #define INSN_TICK(INSN) (HID (INSN)->tick) - if (!TARGET_SILVERMONT && !TARGET_INTEL) + if (!TARGET_CPU_P (SILVERMONT) && !TARGET_CPU_P (INTEL)) return false; if (!NONDEBUG_INSN_P (top)) @@ -204,7 +204,8 @@ ix86_atom_sched_reorder (FILE *dump, int sched_verbose, rtx_insn **ready, issue_rate = ix86_issue_rate (); /* Do reodering for BONNELL/SILVERMONT only. */ - if (!TARGET_BONNELL && !TARGET_SILVERMONT && !TARGET_INTEL) + if (!TARGET_CPU_P (BONNELL) && !TARGET_CPU_P (SILVERMONT) + && !TARGET_CPU_P (INTEL)) return issue_rate; /* Nothing to do if ready list contains only 1 instruction. */ diff --git a/gcc/config/i386/x86-tune-sched-bd.c b/gcc/config/i386/x86-tune-sched-bd.c index d696643..ad0edf7 100644 --- a/gcc/config/i386/x86-tune-sched-bd.c +++ b/gcc/config/i386/x86-tune-sched-bd.c @@ -800,8 +800,9 @@ bool ix86_bd_has_dispatch (rtx_insn *insn, int action) { /* Current implementation of dispatch scheduler models buldozer only. */ - if ((TARGET_BDVER1 || TARGET_BDVER2 || TARGET_BDVER3 - || TARGET_BDVER4) && flag_dispatch_scheduler) + if ((TARGET_CPU_P (BDVER1) || TARGET_CPU_P (BDVER2) + || TARGET_CPU_P (BDVER3) || TARGET_CPU_P (BDVER4)) + && flag_dispatch_scheduler) switch (action) { default: diff --git a/gcc/config/i386/x86-tune-sched.c b/gcc/config/i386/x86-tune-sched.c index 2bcc64b..6d8bca9 100644 --- a/gcc/config/i386/x86-tune-sched.c +++ b/gcc/config/i386/x86-tune-sched.c @@ -386,7 +386,7 @@ ix86_adjust_cost (rtx_insn *insn, int dep_type, rtx_insn *dep_insn, int cost, if (unit == UNIT_INTEGER || unit == UNIT_UNKNOWN) loadcost = 3; else - loadcost = TARGET_ATHLON ? 2 : 0; + loadcost = TARGET_CPU_P (ATHLON) ? 2 : 0; if (cost >= loadcost) cost -= loadcost; diff --git a/gcc/config/i386/x86gprintrin.h b/gcc/config/i386/x86gprintrin.h index ceda501..7793032 100644 --- a/gcc/config/i386/x86gprintrin.h +++ b/gcc/config/i386/x86gprintrin.h @@ -56,6 +56,8 @@ #include <movdirintrin.h> +#include <mwaitintrin.h> + #include <mwaitxintrin.h> #include <pconfigintrin.h> diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 48b8efd..844fee8 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -5765,7 +5765,7 @@ rs6000_machine_from_flags (void) HOST_WIDE_INT flags = rs6000_isa_flags; /* Disable the flags that should never influence the .machine selection. */ - flags &= ~(OPTION_MASK_PPC_GFXOPT | OPTION_MASK_PPC_GPOPT); + flags &= ~(OPTION_MASK_PPC_GFXOPT | OPTION_MASK_PPC_GPOPT | OPTION_MASK_ISEL); if ((flags & (ISA_3_1_MASKS_SERVER & ~ISA_3_0_MASKS_SERVER)) != 0) return "power10"; diff --git a/gcc/configure b/gcc/configure index e8ecb3b..33eae54 100755 --- a/gcc/configure +++ b/gcc/configure @@ -24132,9 +24132,19 @@ fi rm -f conftest.err conftest.i conftest.$ac_ext;; esac else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking cross compile... guessing" >&5 + case "${target}" in + aarch64*-linux-gnu*) + # AArch64 postdates glibc support for .init_array/.fini_array, + # so we don't need the preprocessor test above. + gcc_cv_initfini_array=yes + ;; + + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking cross compile... guessing" >&5 $as_echo_n "checking cross compile... guessing... " >&6; } - gcc_cv_initfini_array=no + gcc_cv_initfini_array=no + ;; + esac fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_initfini_array" >&5 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 335018c..89cb361 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,29 @@ +2021-04-21 Marek Polacek <polacek@redhat.com> + + PR c++/96380 + * parser.c (cp_parser_enum_specifier): Don't allow defining + types in enum-base. + +2021-04-21 Martin Liska <mliska@suse.cz> + + Revert: + 2021-04-21 Martin Liska <mliska@suse.cz> + + * error.c (dump_decl): Use flags in dump_generic_node call. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * error.c (dump_decl): Use flags in dump_generic_node call. + +2021-04-21 Martin Liska <mliska@suse.cz> + + * error.c (dump_decl): Support anonymous labels. + +2021-04-20 Jason Merrill <jason@redhat.com> + + PR c++/100109 + * pt.c (find_parameter_packs_r): Look into enum initializers. + 2021-04-19 Marek Polacek <polacek@redhat.com> PR c++/97536 diff --git a/gcc/cp/error.c b/gcc/cp/error.c index ff4ae6f..c88d174 100644 --- a/gcc/cp/error.c +++ b/gcc/cp/error.c @@ -1362,7 +1362,10 @@ dump_decl (cxx_pretty_printer *pp, tree t, int flags) break; case LABEL_DECL: - pp_cxx_tree_identifier (pp, DECL_NAME (t)); + if (DECL_NAME (t)) + pp_cxx_tree_identifier (pp, DECL_NAME (t)); + else + dump_generic_node (pp, t, 0, TDF_SLIM, false); break; case CONST_DECL: diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index 99eccf0..fba516e 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -19942,6 +19942,10 @@ cp_parser_enum_specifier (cp_parser* parser) /* Consume the `:'. */ cp_lexer_consume_token (parser->lexer); + auto tdf + = make_temp_override (parser->type_definition_forbidden_message, + G_("types may not be defined in enum-base")); + /* Parse the type-specifier-seq. */ cp_parser_type_specifier_seq (parser, CP_PARSER_FLAGS_NONE, /*is_declaration=*/false, diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 19fdafa..7bcbe6d 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -4066,12 +4066,18 @@ find_parameter_packs_r (tree *tp, int *walk_subtrees, void* data) return NULL_TREE; case TAG_DEFN: - /* Local class, need to look through the whole definition. */ t = TREE_TYPE (t); if (CLASS_TYPE_P (t)) + /* Local class, need to look through the whole definition. */ for (tree bb : BINFO_BASE_BINFOS (TYPE_BINFO (t))) cp_walk_tree (&BINFO_TYPE (bb), &find_parameter_packs_r, ppd, ppd->visited); + else + /* Enum, look at the values. */ + for (tree l = TYPE_VALUES (t); l; l = TREE_CHAIN (l)) + cp_walk_tree (&DECL_INITIAL (TREE_VALUE (l)), + &find_parameter_packs_r, + ppd, ppd->visited); return NULL_TREE; case FUNCTION_TYPE: diff --git a/gcc/cprop.c b/gcc/cprop.c index 73034ce..6f34f6b 100644 --- a/gcc/cprop.c +++ b/gcc/cprop.c @@ -1007,16 +1007,18 @@ static int constprop_register (rtx from, rtx src, rtx_insn *insn) { rtx sset; + rtx_insn *next_insn; /* Check for reg or cc0 setting instructions followed by conditional branch instructions first. */ if ((sset = single_set (insn)) != NULL - && NEXT_INSN (insn) - && any_condjump_p (NEXT_INSN (insn)) && onlyjump_p (NEXT_INSN (insn))) + && (next_insn = next_nondebug_insn (insn)) != NULL + && any_condjump_p (next_insn) + && onlyjump_p (next_insn)) { rtx dest = SET_DEST (sset); if ((REG_P (dest) || CC0_P (dest)) - && cprop_jump (BLOCK_FOR_INSN (insn), insn, NEXT_INSN (insn), + && cprop_jump (BLOCK_FOR_INSN (insn), insn, next_insn, from, src)) return 1; } diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 3260f06..c8caf36 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -6665,6 +6665,11 @@ Enable/disable the generation of the MOVDIR64B instructions. @cindex @code{target("movdiri")} function attribute, x86 Enable/disable the generation of the MOVDIRI instructions. +@item mwait +@itemx no-mwait +@cindex @code{target("mwait")} function attribute, x86 +Enable/disable the generation of the MWAIT and MONITOR instructions. + @item mwaitx @itemx no-mwaitx @cindex @code{target("mwaitx")} function attribute, x86 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 810cb86..71faa9b 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -1370,7 +1370,7 @@ See RS/6000 and PowerPC Options. -mno-wide-multiply -mrtd -malign-double @gol -mpreferred-stack-boundary=@var{num} @gol -mincoming-stack-boundary=@var{num} @gol --mcld -mcx16 -msahf -mmovbe -mcrc32 @gol +-mcld -mcx16 -msahf -mmovbe -mcrc32 -mmwait @gol -mrecip -mrecip=@var{opt} @gol -mvzeroupper -mprefer-avx128 -mprefer-vector-width=@var{opt} @gol -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -msse4 -mavx @gol @@ -14364,6 +14364,10 @@ The parameter is used only in GIMPLE FE. The maximum number of 'after supernode' exploded nodes within the analyzer per supernode, before terminating analysis. +@item ranger-logical-depth +Maximum depth of logical expression evaluation ranger will look through +when evaluating outgoing edge ranges. + @item openacc-kernels Specify mode of OpenACC `kernels' constructs handling. With @option{--param=openacc-kernels=decompose}, OpenACC `kernels' @@ -31139,6 +31143,12 @@ This option enables built-in functions @code{__builtin_ia32_crc32qi}, @code{__builtin_ia32_crc32hi}, @code{__builtin_ia32_crc32si} and @code{__builtin_ia32_crc32di} to generate the @code{crc32} machine instruction. +@item -mmwait +@opindex mmwait +This option enables built-in functions @code{__builtin_ia32_monitor}, +and @code{__builtin_ia32_mwait} to generate the @code{monitor} and +@code{mwait} machine instructions. + @item -mrecip @opindex mrecip This option enables use of @code{RCPSS} and @code{RSQRTSS} instructions diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 7a15deb..aba1684 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -3929,8 +3929,10 @@ static void prune_unused_types (void); static int maybe_emit_file (struct dwarf_file_data *fd); static inline const char *AT_vms_delta1 (dw_attr_node *); static inline const char *AT_vms_delta2 (dw_attr_node *); +#if VMS_DEBUGGING_INFO static inline void add_AT_vms_delta (dw_die_ref, enum dwarf_attribute, const char *, const char *); +#endif static void append_entry_to_tmpl_value_parm_die_table (dw_die_ref, tree); static void gen_remaining_tmpl_value_param_die_attribute (void); static bool generic_type_p (tree); @@ -5200,6 +5202,7 @@ AT_file (dw_attr_node *a) return a->dw_attr_val.v.val_file; } +#if VMS_DEBUGGING_INFO /* Add a vms delta attribute value to a DIE. */ static inline void @@ -5215,6 +5218,7 @@ add_AT_vms_delta (dw_die_ref die, enum dwarf_attribute attr_kind, attr.dw_attr_val.v.val_vms_delta.lbl2 = xstrdup (lbl2); add_dwarf_attr (die, &attr); } +#endif /* Add a symbolic view identifier attribute value to a DIE. */ diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 2834278..5a41524 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -2619,15 +2619,6 @@ non_lvalue_loc (location_t loc, tree x) return x; return build1_loc (loc, NON_LVALUE_EXPR, TREE_TYPE (x), x); } - -/* When pedantic, return an expr equal to X but certainly not valid as a - pedantic lvalue. Otherwise, return X. */ - -static tree -pedantic_non_lvalue_loc (location_t loc, tree x) -{ - return protected_set_expr_location_unshare (x, loc); -} /* Given a tree comparison code, return the code that is the logical inverse. It is generally not safe to do this for floating-point comparisons, except @@ -12532,9 +12523,9 @@ fold_binary_loc (location_t loc, enum tree_code code, tree type, if (TREE_SIDE_EFFECTS (arg0) || TREE_CONSTANT (arg1)) return NULL_TREE; /* Don't let (0, 0) be null pointer constant. */ - tem = integer_zerop (arg1) ? build1 (NOP_EXPR, type, arg1) + tem = integer_zerop (arg1) ? build1_loc (loc, NOP_EXPR, type, arg1) : fold_convert_loc (loc, type, arg1); - return pedantic_non_lvalue_loc (loc, tem); + return tem; case ASSERT_EXPR: /* An ASSERT_EXPR should never be passed to fold_binary. */ @@ -12781,7 +12772,7 @@ fold_ternary_loc (location_t loc, enum tree_code code, tree type, || !contains_label_p (unused_op)) && (! VOID_TYPE_P (TREE_TYPE (tem)) || VOID_TYPE_P (type))) - return pedantic_non_lvalue_loc (loc, tem); + return protected_set_expr_location_unshare (tem, loc); return NULL_TREE; } else if (TREE_CODE (arg0) == VECTOR_CST) @@ -12864,7 +12855,7 @@ fold_ternary_loc (location_t loc, enum tree_code code, tree type, a COND, which will recurse. In that case, the COND_EXPR is probably the best choice, so leave it alone. */ && type == TREE_TYPE (arg0)) - return pedantic_non_lvalue_loc (loc, arg0); + return protected_set_expr_location_unshare (arg0, loc); /* Convert A ? 0 : 1 to !A. This prefers the use of NOT_EXPR over COND_EXPR in cases such as floating point comparisons. */ @@ -12873,10 +12864,8 @@ fold_ternary_loc (location_t loc, enum tree_code code, tree type, && integer_onep (op2) && !VECTOR_TYPE_P (type) && truth_value_p (TREE_CODE (arg0))) - return pedantic_non_lvalue_loc (loc, - fold_convert_loc (loc, type, - invert_truthvalue_loc (loc, - arg0))); + return fold_convert_loc (loc, type, + invert_truthvalue_loc (loc, arg0)); /* A < 0 ? <sign bit of A> : 0 is simply (A & <sign bit of A>). */ if (TREE_CODE (arg0) == LT_EXPR @@ -12982,10 +12971,7 @@ fold_ternary_loc (location_t loc, enum tree_code code, tree type, second operand 32-bit -128, which is not a power of two (or vice versa. */ && integer_pow2p (TREE_OPERAND (TREE_OPERAND (arg0, 0), 1))) - return pedantic_non_lvalue_loc (loc, - fold_convert_loc (loc, type, - TREE_OPERAND (arg0, - 0))); + return fold_convert_loc (loc, type, TREE_OPERAND (arg0, 0)); /* Disable the transformations below for vectors, since fold_binary_op_with_conditional_arg may undo them immediately, diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 2e61504..de0de2e 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,34 @@ +2021-04-21 Tobias Burnus <tobias@codesourcery.com> + + * dump-parse-tree.c (show_omp_namelist): Handle depobj + mutexinoutset + in the depend clause. + (show_omp_clauses, show_omp_node, show_code_node): Handle depobj. + * gfortran.h (enum gfc_statement): Add ST_OMP_DEPOBJ. + (enum gfc_omp_depend_op): Add OMP_DEPEND_UNSET, + OMP_DEPEND_MUTEXINOUTSET and OMP_DEPEND_DEPOBJ. + (gfc_omp_clauses): Add destroy, depobj_update and depobj. + (enum gfc_exec_op): Add EXEC_OMP_DEPOBJ + * match.h (gfc_match_omp_depobj): Match 'omp depobj'. + * openmp.c (gfc_match_omp_clauses): Add depobj + mutexinoutset + to depend clause. + (gfc_match_omp_depobj, resolve_omp_clauses, gfc_resolve_omp_directive): + Handle 'omp depobj'. + * parse.c (decode_omp_directive, next_statement, gfc_ascii_statement): + Likewise. + * resolve.c (gfc_resolve_code): Likewise. + * st.c (gfc_free_statement): Likewise. + * trans-openmp.c (gfc_trans_omp_clauses): Handle depobj + mutexinoutset + in the depend clause. + (gfc_trans_omp_depobj, gfc_trans_omp_directive): Handle EXEC_OMP_DEPOBJ. + * trans.c (trans_code): Likewise. + +2021-04-20 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/100110 + * trans-decl.c (gfc_get_symbol_decl): Replace test for host + association with a check that the current and symbol namespaces + are the same. + 2021-04-19 Thomas Schwinge <thomas@codesourcery.com> * lang.opt (fopenacc-kernels=): Remove. diff --git a/gcc/fortran/dump-parse-tree.c b/gcc/fortran/dump-parse-tree.c index 059d842..b50265a 100644 --- a/gcc/fortran/dump-parse-tree.c +++ b/gcc/fortran/dump-parse-tree.c @@ -1332,6 +1332,10 @@ show_omp_namelist (int list_type, gfc_omp_namelist *n) case OMP_DEPEND_IN: fputs ("in:", dumpfile); break; case OMP_DEPEND_OUT: fputs ("out:", dumpfile); break; case OMP_DEPEND_INOUT: fputs ("inout:", dumpfile); break; + case OMP_DEPEND_DEPOBJ: fputs ("depobj:", dumpfile); break; + case OMP_DEPEND_MUTEXINOUTSET: + fputs ("mutexinoutset:", dumpfile); + break; case OMP_DEPEND_SINK_FIRST: fputs ("sink:", dumpfile); while (1) @@ -1754,10 +1758,27 @@ show_omp_clauses (gfc_omp_clauses *omp_clauses) show_expr (omp_clauses->if_exprs[i]); fputc (')', dumpfile); } + if (omp_clauses->destroy) + fputs (" DESTROY", dumpfile); if (omp_clauses->depend_source) fputs (" DEPEND(source)", dumpfile); if (omp_clauses->capture) fputs (" CAPTURE", dumpfile); + if (omp_clauses->depobj_update != OMP_DEPEND_UNSET) + { + const char *deptype; + fputs (" UPDATE(", dumpfile); + switch (omp_clauses->depobj_update) + { + case OMP_DEPEND_IN: deptype = "IN"; break; + case OMP_DEPEND_OUT: deptype = "OUT"; break; + case OMP_DEPEND_INOUT: deptype = "INOUT"; break; + case OMP_DEPEND_MUTEXINOUTSET: deptype = "MUTEXINOUTSET"; break; + default: gcc_unreachable (); + } + fputs (deptype, dumpfile); + fputc (')', dumpfile); + } if (omp_clauses->atomic_op != GFC_OMP_ATOMIC_UNSET) { const char *atomic_op; @@ -1831,6 +1852,7 @@ show_omp_node (int level, gfc_code *c) case EXEC_OMP_FLUSH: name = "FLUSH"; break; case EXEC_OMP_MASTER: name = "MASTER"; break; case EXEC_OMP_ORDERED: name = "ORDERED"; break; + case EXEC_OMP_DEPOBJ: name = "DEPOBJ"; break; case EXEC_OMP_PARALLEL: name = "PARALLEL"; break; case EXEC_OMP_PARALLEL_DO: name = "PARALLEL DO"; break; case EXEC_OMP_PARALLEL_DO_SIMD: name = "PARALLEL DO SIMD"; break; @@ -1941,6 +1963,15 @@ show_omp_node (int level, gfc_code *c) if (omp_clauses) fprintf (dumpfile, " (%s)", c->ext.omp_clauses->critical_name); break; + case EXEC_OMP_DEPOBJ: + omp_clauses = c->ext.omp_clauses; + if (omp_clauses) + { + fputc ('(', dumpfile); + show_expr (c->ext.omp_clauses->depobj); + fputc (')', dumpfile); + } + break; case EXEC_OMP_FLUSH: if (c->ext.omp_namelist) { @@ -1969,6 +2000,7 @@ show_omp_node (int level, gfc_code *c) || c->op == EXEC_OACC_ENTER_DATA || c->op == EXEC_OACC_EXIT_DATA || c->op == EXEC_OMP_TARGET_UPDATE || c->op == EXEC_OMP_TARGET_ENTER_DATA || c->op == EXEC_OMP_TARGET_EXIT_DATA || c->op == EXEC_OMP_SCAN + || c->op == EXEC_OMP_DEPOBJ || (c->op == EXEC_OMP_ORDERED && c->block == NULL)) return; if (c->op == EXEC_OMP_SECTIONS || c->op == EXEC_OMP_PARALLEL_SECTIONS) @@ -3094,6 +3126,7 @@ show_code_node (int level, gfc_code *c) case EXEC_OMP_CANCELLATION_POINT: case EXEC_OMP_BARRIER: case EXEC_OMP_CRITICAL: + case EXEC_OMP_DEPOBJ: case EXEC_OMP_DISTRIBUTE: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO_SIMD: diff --git a/gcc/fortran/gfortran.h b/gcc/fortran/gfortran.h index 7935aca..d12be0c 100644 --- a/gcc/fortran/gfortran.h +++ b/gcc/fortran/gfortran.h @@ -261,7 +261,7 @@ enum gfc_statement ST_OMP_TARGET_PARALLEL_DO_SIMD, ST_OMP_END_TARGET_PARALLEL_DO_SIMD, ST_OMP_TARGET_ENTER_DATA, ST_OMP_TARGET_EXIT_DATA, ST_OMP_TARGET_SIMD, ST_OMP_END_TARGET_SIMD, - ST_OMP_TASKLOOP, ST_OMP_END_TASKLOOP, ST_OMP_SCAN, + ST_OMP_TASKLOOP, ST_OMP_END_TASKLOOP, ST_OMP_SCAN, ST_OMP_DEPOBJ, ST_OMP_TASKLOOP_SIMD, ST_OMP_END_TASKLOOP_SIMD, ST_OMP_ORDERED_DEPEND, ST_OMP_REQUIRES, ST_PROCEDURE, ST_GENERIC, ST_CRITICAL, ST_END_CRITICAL, ST_GET_FCN_CHARACTERISTICS, ST_LOCK, ST_UNLOCK, ST_EVENT_POST, @@ -1198,9 +1198,12 @@ enum gfc_omp_reduction_op enum gfc_omp_depend_op { + OMP_DEPEND_UNSET, OMP_DEPEND_IN, OMP_DEPEND_OUT, OMP_DEPEND_INOUT, + OMP_DEPEND_MUTEXINOUTSET, + OMP_DEPEND_DEPOBJ, OMP_DEPEND_SINK_FIRST, OMP_DEPEND_SINK }; @@ -1402,11 +1405,12 @@ typedef struct gfc_omp_clauses bool nowait, ordered, untied, mergeable; bool inbranch, notinbranch, defaultmap, nogroup; bool sched_simd, sched_monotonic, sched_nonmonotonic; - bool simd, threads, depend_source, order_concurrent, capture; + bool simd, threads, depend_source, destroy, order_concurrent, capture; enum gfc_omp_atomic_op atomic_op; enum gfc_omp_memorder memorder; enum gfc_omp_cancel_kind cancel; enum gfc_omp_proc_bind_kind proc_bind; + enum gfc_omp_depend_op depobj_update; struct gfc_expr *safelen_expr; struct gfc_expr *simdlen_expr; struct gfc_expr *num_teams; @@ -1417,6 +1421,7 @@ typedef struct gfc_omp_clauses struct gfc_expr *num_tasks; struct gfc_expr *priority; struct gfc_expr *detach; + struct gfc_expr *depobj; struct gfc_expr *if_exprs[OMP_IF_LAST]; enum gfc_omp_sched_kind dist_sched_kind; struct gfc_expr *dist_chunk_size; @@ -1437,7 +1442,6 @@ typedef struct gfc_omp_clauses unsigned par_auto:1, gang_static:1; unsigned if_present:1, finalize:1; locus loc; - } gfc_omp_clauses; @@ -2700,7 +2704,7 @@ enum gfc_exec_op EXEC_OMP_TARGET_ENTER_DATA, EXEC_OMP_TARGET_EXIT_DATA, EXEC_OMP_TARGET_PARALLEL, EXEC_OMP_TARGET_PARALLEL_DO, EXEC_OMP_TARGET_PARALLEL_DO_SIMD, EXEC_OMP_TARGET_SIMD, - EXEC_OMP_TASKLOOP, EXEC_OMP_TASKLOOP_SIMD, EXEC_OMP_SCAN + EXEC_OMP_TASKLOOP, EXEC_OMP_TASKLOOP_SIMD, EXEC_OMP_SCAN, EXEC_OMP_DEPOBJ }; typedef struct gfc_code diff --git a/gcc/fortran/match.h b/gcc/fortran/match.h index 20a530f..b72ec67 100644 --- a/gcc/fortran/match.h +++ b/gcc/fortran/match.h @@ -160,6 +160,7 @@ match gfc_match_omp_critical (void); match gfc_match_omp_declare_reduction (void); match gfc_match_omp_declare_simd (void); match gfc_match_omp_declare_target (void); +match gfc_match_omp_depobj (void); match gfc_match_omp_distribute (void); match gfc_match_omp_distribute_parallel_do (void); match gfc_match_omp_distribute_parallel_do_simd (void); diff --git a/gcc/fortran/openmp.c b/gcc/fortran/openmp.c index 1f1920c..a1b0572 100644 --- a/gcc/fortran/openmp.c +++ b/gcc/fortran/openmp.c @@ -1381,6 +1381,10 @@ gfc_match_omp_clauses (gfc_omp_clauses **cp, const omp_mask mask, depend_op = OMP_DEPEND_IN; else if (gfc_match ("out") == MATCH_YES) depend_op = OMP_DEPEND_OUT; + else if (gfc_match ("mutexinoutset") == MATCH_YES) + depend_op = OMP_DEPEND_MUTEXINOUTSET; + else if (gfc_match ("depobj") == MATCH_YES) + depend_op = OMP_DEPEND_DEPOBJ; else if (!c->depend_source && gfc_match ("source )") == MATCH_YES) { @@ -2898,6 +2902,86 @@ gfc_match_omp_end_critical (void) return MATCH_YES; } +/* depobj(depobj) depend(dep-type:loc)|destroy|update(dep-type) + dep-type = in/out/inout/mutexinoutset/depobj/source/sink + depend: !source, !sink + update: !source, !sink, !depobj + locator = exactly one list item .*/ +match +gfc_match_omp_depobj (void) +{ + gfc_omp_clauses *c = NULL; + gfc_expr *depobj; + + if (gfc_match (" ( %v ) ", &depobj) != MATCH_YES) + { + gfc_error ("Expected %<( depobj )%> at %C"); + return MATCH_ERROR; + } + if (gfc_match ("update ( ") == MATCH_YES) + { + c = gfc_get_omp_clauses (); + if (gfc_match ("inout )") == MATCH_YES) + c->depobj_update = OMP_DEPEND_INOUT; + else if (gfc_match ("in )") == MATCH_YES) + c->depobj_update = OMP_DEPEND_IN; + else if (gfc_match ("out )") == MATCH_YES) + c->depobj_update = OMP_DEPEND_OUT; + else if (gfc_match ("mutexinoutset )") == MATCH_YES) + c->depobj_update = OMP_DEPEND_MUTEXINOUTSET; + else + { + gfc_error ("Expected IN, OUT, INOUT, MUTEXINOUTSET followed by " + "%<)%> at %C"); + goto error; + } + } + else if (gfc_match ("destroy") == MATCH_YES) + { + c = gfc_get_omp_clauses (); + c->destroy = true; + } + else if (gfc_match_omp_clauses (&c, omp_mask (OMP_CLAUSE_DEPEND), true, false) + != MATCH_YES) + goto error; + + if (c->depobj_update == OMP_DEPEND_UNSET && !c->destroy) + { + if (!c->depend_source && !c->lists[OMP_LIST_DEPEND]) + { + gfc_error ("Expected DEPEND, UPDATE, or DESTROY clause at %C"); + goto error; + } + if (c->depend_source + || c->lists[OMP_LIST_DEPEND]->u.depend_op == OMP_DEPEND_SINK_FIRST + || c->lists[OMP_LIST_DEPEND]->u.depend_op == OMP_DEPEND_SINK + || c->lists[OMP_LIST_DEPEND]->u.depend_op == OMP_DEPEND_DEPOBJ) + { + gfc_error ("DEPEND clause at %L of OMP DEPOBJ construct shall not " + "have dependence-type SOURCE, SINK or DEPOBJ", + c->lists[OMP_LIST_DEPEND] + ? &c->lists[OMP_LIST_DEPEND]->where : &gfc_current_locus); + goto error; + } + if (c->lists[OMP_LIST_DEPEND]->next) + { + gfc_error ("DEPEND clause at %L of OMP DEPOBJ construct shall have " + "only a single locator", + &c->lists[OMP_LIST_DEPEND]->next->where); + goto error; + } + } + + c->depobj = depobj; + new_st.op = EXEC_OMP_DEPOBJ; + new_st.ext.omp_clauses = c; + return MATCH_YES; + +error: + gfc_free_expr (depobj); + gfc_free_omp_clauses (c); + return MATCH_ERROR; +} match gfc_match_omp_distribute (void) @@ -4877,6 +4961,14 @@ resolve_omp_clauses (gfc_code *code, gfc_omp_clauses *omp_clauses, "clause at %L", &code->loc); } + if (omp_clauses->depobj + && (!gfc_resolve_expr (omp_clauses->depobj) + || omp_clauses->depobj->ts.type != BT_INTEGER + || omp_clauses->depobj->ts.kind != 2 * gfc_index_integer_kind + || omp_clauses->depobj->rank != 0)) + gfc_error ("DEPOBJ in DEPOBJ construct at %L shall be a scalar integer " + "of OMP_DEPEND_KIND kind", &omp_clauses->depobj->where); + /* Check that no symbol appears on multiple clauses, except that a symbol can appear on both firstprivate and lastprivate. */ for (list = 0; list < OMP_LIST_NUM; list++) @@ -5173,6 +5265,26 @@ resolve_omp_clauses (gfc_code *code, gfc_omp_clauses *omp_clauses, gfc_error ("Only SOURCE or SINK dependence types " "are allowed on ORDERED directive at %L", &n->where); + else if (n->u.depend_op == OMP_DEPEND_DEPOBJ + && !n->expr + && (n->sym->ts.type != BT_INTEGER + || n->sym->ts.kind + != 2 * gfc_index_integer_kind + || n->sym->attr.dimension)) + gfc_error ("Locator %qs at %L in DEPEND clause of depobj " + "type shall be a scalar integer of " + "OMP_DEPEND_KIND kind", n->sym->name, + &n->where); + else if (n->u.depend_op == OMP_DEPEND_DEPOBJ + && n->expr + && (!gfc_resolve_expr (n->expr) + || n->expr->ts.type != BT_INTEGER + || n->expr->ts.kind + != 2 * gfc_index_integer_kind + || n->expr->rank != 0)) + gfc_error ("Locator at %L in DEPEND clause of depobj " + "type shall be a scalar integer of " + "OMP_DEPEND_KIND kind", &n->expr->where); } gfc_ref *lastref = NULL, *lastslice = NULL; bool resolved = false; @@ -7211,6 +7323,7 @@ gfc_resolve_omp_directive (gfc_code *code, gfc_namespace *ns) case EXEC_OMP_TASK: case EXEC_OMP_TEAMS: case EXEC_OMP_WORKSHARE: + case EXEC_OMP_DEPOBJ: if (code->ext.omp_clauses) resolve_omp_clauses (code, code->ext.omp_clauses, NULL); break; diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index 1549f8e..9bbe9e8 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -895,6 +895,7 @@ decode_omp_directive (void) case 'd': matchds ("declare reduction", gfc_match_omp_declare_reduction, ST_OMP_DECLARE_REDUCTION); + matcho ("depobj", gfc_match_omp_depobj, ST_OMP_DEPOBJ); matchs ("distribute parallel do simd", gfc_match_omp_distribute_parallel_do_simd, ST_OMP_DISTRIBUTE_PARALLEL_DO_SIMD); @@ -1588,7 +1589,7 @@ next_statement (void) case ST_ASSIGNMENT: case ST_ARITHMETIC_IF: case ST_WHERE: case ST_FORALL: \ case ST_LABEL_ASSIGNMENT: case ST_FLUSH: case ST_OMP_FLUSH: \ case ST_OMP_BARRIER: case ST_OMP_TASKWAIT: case ST_OMP_TASKYIELD: \ - case ST_OMP_CANCEL: case ST_OMP_CANCELLATION_POINT: \ + case ST_OMP_CANCEL: case ST_OMP_CANCELLATION_POINT: case ST_OMP_DEPOBJ: \ case ST_OMP_TARGET_UPDATE: case ST_OMP_TARGET_ENTER_DATA: \ case ST_OMP_TARGET_EXIT_DATA: case ST_OMP_ORDERED_DEPEND: \ case ST_ERROR_STOP: case ST_OMP_SCAN: case ST_SYNC_ALL: \ @@ -2285,6 +2286,9 @@ gfc_ascii_statement (gfc_statement st) case ST_OMP_DECLARE_TARGET: p = "!$OMP DECLARE TARGET"; break; + case ST_OMP_DEPOBJ: + p = "!$OMP DEPOBJ"; + break; case ST_OMP_DISTRIBUTE: p = "!$OMP DISTRIBUTE"; break; diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index dd4b266..5a81387 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -12198,6 +12198,7 @@ start: case EXEC_OMP_CANCELLATION_POINT: case EXEC_OMP_CRITICAL: case EXEC_OMP_FLUSH: + case EXEC_OMP_DEPOBJ: case EXEC_OMP_DISTRIBUTE: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO_SIMD: diff --git a/gcc/fortran/st.c b/gcc/fortran/st.c index 13b3880..9e76199 100644 --- a/gcc/fortran/st.c +++ b/gcc/fortran/st.c @@ -218,6 +218,7 @@ gfc_free_statement (gfc_code *p) case EXEC_OMP_CANCEL: case EXEC_OMP_CANCELLATION_POINT: case EXEC_OMP_CRITICAL: + case EXEC_OMP_DEPOBJ: case EXEC_OMP_DISTRIBUTE: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO_SIMD: diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c index 5e53d11..cceef8f 100644 --- a/gcc/fortran/trans-intrinsic.c +++ b/gcc/fortran/trans-intrinsic.c @@ -386,30 +386,20 @@ build_round_expr (tree arg, tree restype) argprec = TYPE_PRECISION (argtype); resprec = TYPE_PRECISION (restype); - /* Depending on the type of the result, choose the int intrinsic - (iround, available only as a builtin, therefore cannot use it for - __float128), long int intrinsic (lround family) or long long - intrinsic (llround). We might also need to convert the result - afterwards. */ + /* Depending on the type of the result, choose the int intrinsic (iround, + available only as a builtin, therefore cannot use it for __float128), long + int intrinsic (lround family) or long long intrinsic (llround). If we + don't have an appropriate function that converts directly to the integer + type (such as kind == 16), just use ROUND, and then convert the result to + an integer. We might also need to convert the result afterwards. */ if (resprec <= INT_TYPE_SIZE && argprec <= LONG_DOUBLE_TYPE_SIZE) fn = builtin_decl_for_precision (BUILT_IN_IROUND, argprec); else if (resprec <= LONG_TYPE_SIZE) fn = builtin_decl_for_precision (BUILT_IN_LROUND, argprec); else if (resprec <= LONG_LONG_TYPE_SIZE) fn = builtin_decl_for_precision (BUILT_IN_LLROUND, argprec); - else if (resprec >= argprec && resprec == 128) - { - /* Search for a real kind suitable as temporary for conversion. */ - int kind = -1; - for (int i = 0; kind < 0 && gfc_real_kinds[i].kind != 0; i++) - if (gfc_real_kinds[i].mode_precision >= resprec) - kind = gfc_real_kinds[i].kind; - if (kind < 0) - gfc_internal_error ("Could not find real kind with at least %d bits", - resprec); - arg = fold_convert (gfc_get_real_type (kind), arg); - fn = gfc_builtin_decl_for_float_kind (BUILT_IN_ROUND, kind); - } + else if (resprec >= argprec) + fn = builtin_decl_for_precision (BUILT_IN_ROUND, argprec); else gcc_unreachable (); diff --git a/gcc/fortran/trans-openmp.c b/gcc/fortran/trans-openmp.c index 349df1c..bf3f261 100644 --- a/gcc/fortran/trans-openmp.c +++ b/gcc/fortran/trans-openmp.c @@ -2545,6 +2545,9 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, tree decl = gfc_trans_omp_variable (n->sym, false); if (gfc_omp_privatize_by_reference (decl)) decl = build_fold_indirect_ref (decl); + if (n->u.depend_op == OMP_DEPEND_DEPOBJ + && POINTER_TYPE_P (TREE_TYPE (decl))) + decl = build_fold_indirect_ref (decl); if (GFC_DESCRIPTOR_TYPE_P (TREE_TYPE (decl))) { decl = gfc_conv_descriptor_data_get (decl); @@ -2587,6 +2590,13 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, case OMP_DEPEND_INOUT: OMP_CLAUSE_DEPEND_KIND (node) = OMP_CLAUSE_DEPEND_INOUT; break; + case OMP_DEPEND_MUTEXINOUTSET: + OMP_CLAUSE_DEPEND_KIND (node) + = OMP_CLAUSE_DEPEND_MUTEXINOUTSET; + break; + case OMP_DEPEND_DEPOBJ: + OMP_CLAUSE_DEPEND_KIND (node) = OMP_CLAUSE_DEPEND_DEPOBJ; + break; default: gcc_unreachable (); } @@ -4913,6 +4923,62 @@ gfc_trans_oacc_combined_directive (gfc_code *code) } static tree +gfc_trans_omp_depobj (gfc_code *code) +{ + stmtblock_t block; + gfc_se se; + gfc_init_se (&se, NULL); + gfc_init_block (&block); + gfc_conv_expr (&se, code->ext.omp_clauses->depobj); + gcc_assert (se.pre.head == NULL && se.post.head == NULL); + tree depobj = se.expr; + location_t loc = EXPR_LOCATION (depobj); + if (!POINTER_TYPE_P (TREE_TYPE (depobj))) + depobj = gfc_build_addr_expr (NULL, depobj); + depobj = fold_convert (build_pointer_type_for_mode (ptr_type_node, + TYPE_MODE (ptr_type_node), + true), depobj); + gfc_omp_namelist *n = code->ext.omp_clauses->lists[OMP_LIST_DEPEND]; + if (n) + { + tree var; + if (n->expr) + var = gfc_convert_expr_to_tree (&block, n->expr); + else + var = gfc_get_symbol_decl (n->sym); + if (!POINTER_TYPE_P (TREE_TYPE (var))) + var = gfc_build_addr_expr (NULL, var); + depobj = save_expr (depobj); + tree r = build_fold_indirect_ref_loc (loc, depobj); + gfc_add_expr_to_block (&block, + build2 (MODIFY_EXPR, void_type_node, r, var)); + } + + /* Only one may be set. */ + gcc_assert (((int)(n != NULL) + (int)(code->ext.omp_clauses->destroy) + + (int)(code->ext.omp_clauses->depobj_update != OMP_DEPEND_UNSET)) + == 1); + int k = -1; /* omp_clauses->destroy */ + if (!code->ext.omp_clauses->destroy) + switch (code->ext.omp_clauses->depobj_update != OMP_DEPEND_UNSET + ? code->ext.omp_clauses->depobj_update : n->u.depend_op) + { + case OMP_DEPEND_IN: k = GOMP_DEPEND_IN; break; + case OMP_DEPEND_OUT: k = GOMP_DEPEND_IN; break; + case OMP_DEPEND_INOUT: k = GOMP_DEPEND_IN; break; + case OMP_DEPEND_MUTEXINOUTSET: k = GOMP_DEPEND_MUTEXINOUTSET; break; + default: gcc_unreachable (); + } + tree t = build_int_cst (ptr_type_node, k); + depobj = build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (depobj), depobj, + TYPE_SIZE_UNIT (ptr_type_node)); + depobj = build_fold_indirect_ref_loc (loc, depobj); + gfc_add_expr_to_block (&block, build2 (MODIFY_EXPR, void_type_node, depobj, t)); + + return gfc_finish_block (&block); +} + +static tree gfc_trans_omp_flush (gfc_code *code) { tree call; @@ -6181,6 +6247,8 @@ gfc_trans_omp_directive (gfc_code *code) return gfc_trans_omp_cancellation_point (code); case EXEC_OMP_CRITICAL: return gfc_trans_omp_critical (code); + case EXEC_OMP_DEPOBJ: + return gfc_trans_omp_depobj (code); case EXEC_OMP_DISTRIBUTE: case EXEC_OMP_DO: case EXEC_OMP_SIMD: diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c index 9e8e861..624c713 100644 --- a/gcc/fortran/trans.c +++ b/gcc/fortran/trans.c @@ -2161,6 +2161,7 @@ trans_code (gfc_code * code, tree cond) case EXEC_OMP_CANCEL: case EXEC_OMP_CANCELLATION_POINT: case EXEC_OMP_CRITICAL: + case EXEC_OMP_DEPOBJ: case EXEC_OMP_DISTRIBUTE: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO: case EXEC_OMP_DISTRIBUTE_PARALLEL_DO_SIMD: diff --git a/gcc/gimple-fold.c b/gcc/gimple-fold.c index 9e6683d..7602018 100644 --- a/gcc/gimple-fold.c +++ b/gcc/gimple-fold.c @@ -303,13 +303,11 @@ get_symbol_constant_value (tree sym) -/* Subroutine of fold_stmt. We perform several simplifications of the - memory reference tree EXPR and make sure to re-gimplify them properly - after propagation of constant addresses. IS_LHS is true if the - reference is supposed to be an lvalue. */ +/* Subroutine of fold_stmt. We perform constant folding of the + memory reference tree EXPR. */ static tree -maybe_fold_reference (tree expr, bool is_lhs) +maybe_fold_reference (tree expr) { tree result; @@ -330,8 +328,7 @@ maybe_fold_reference (tree expr, bool is_lhs) TREE_OPERAND (expr, 1), TREE_OPERAND (expr, 2)); - if (!is_lhs - && (result = fold_const_aggregate_ref (expr)) + if ((result = fold_const_aggregate_ref (expr)) && is_gimple_min_invariant (result)) return result; @@ -363,7 +360,7 @@ fold_gimple_assign (gimple_stmt_iterator *si) return NULL_TREE; if (REFERENCE_CLASS_P (rhs)) - return maybe_fold_reference (rhs, false); + return maybe_fold_reference (rhs); else if (TREE_CODE (rhs) == OBJ_TYPE_REF) { @@ -405,28 +402,14 @@ fold_gimple_assign (gimple_stmt_iterator *si) else if (TREE_CODE (rhs) == ADDR_EXPR) { tree ref = TREE_OPERAND (rhs, 0); - tree tem = maybe_fold_reference (ref, true); - if (tem - && TREE_CODE (tem) == MEM_REF - && integer_zerop (TREE_OPERAND (tem, 1))) - result = fold_convert (TREE_TYPE (rhs), TREE_OPERAND (tem, 0)); - else if (tem) - result = fold_convert (TREE_TYPE (rhs), - build_fold_addr_expr_loc (loc, tem)); - else if (TREE_CODE (ref) == MEM_REF - && integer_zerop (TREE_OPERAND (ref, 1))) - result = fold_convert (TREE_TYPE (rhs), TREE_OPERAND (ref, 0)); - - if (result) + if (TREE_CODE (ref) == MEM_REF + && integer_zerop (TREE_OPERAND (ref, 1))) { - /* Strip away useless type conversions. Both the - NON_LVALUE_EXPR that may have been added by fold, and - "useless" type conversions that might now be apparent - due to propagation. */ - STRIP_USELESS_TYPE_CONVERSION (result); - - if (result != rhs && valid_gimple_rhs_p (result)) - return result; + result = TREE_OPERAND (ref, 0); + if (!useless_type_conversion_p (TREE_TYPE (rhs), + TREE_TYPE (result))) + result = build1 (NOP_EXPR, TREE_TYPE (rhs), result); + return result; } } @@ -5262,7 +5245,7 @@ gimple_fold_call (gimple_stmt_iterator *gsi, bool inplace) for (i = 0; i < gimple_call_num_args (stmt); ++i) if (REFERENCE_CLASS_P (gimple_call_arg (stmt, i))) { - tree tmp = maybe_fold_reference (gimple_call_arg (stmt, i), false); + tree tmp = maybe_fold_reference (gimple_call_arg (stmt, i)); if (tmp) { gimple_call_set_arg (stmt, i, tmp); @@ -5373,7 +5356,7 @@ gimple_fold_call (gimple_stmt_iterator *gsi, bool inplace) } else { - tree tmp = maybe_fold_reference (gimple_call_chain (stmt), false); + tree tmp = maybe_fold_reference (gimple_call_chain (stmt)); if (tmp) { gimple_call_set_chain (stmt, tmp); @@ -6107,18 +6090,11 @@ fold_stmt_1 (gimple_stmt_iterator *gsi, bool inplace, tree (*valueize) (tree)) noutputs = gimple_asm_noutputs (asm_stmt); oconstraints = XALLOCAVEC (const char *, noutputs); - for (i = 0; i < gimple_asm_noutputs (asm_stmt); ++i) + for (i = 0; i < noutputs; ++i) { tree link = gimple_asm_output_op (asm_stmt, i); - tree op = TREE_VALUE (link); oconstraints[i] = TREE_STRING_POINTER (TREE_VALUE (TREE_PURPOSE (link))); - if (REFERENCE_CLASS_P (op) - && (op = maybe_fold_reference (op, true)) != NULL_TREE) - { - TREE_VALUE (link) = op; - changed = true; - } } for (i = 0; i < gimple_asm_ninputs (asm_stmt); ++i) { @@ -6129,8 +6105,8 @@ fold_stmt_1 (gimple_stmt_iterator *gsi, bool inplace, tree (*valueize) (tree)) parse_input_constraint (&constraint, 0, 0, noutputs, 0, oconstraints, &allows_mem, &allows_reg); if (REFERENCE_CLASS_P (op) - && (op = maybe_fold_reference (op, !allows_reg && allows_mem)) - != NULL_TREE) + && (allows_reg || !allows_mem) + && (op = maybe_fold_reference (op)) != NULL_TREE) { TREE_VALUE (link) = op; changed = true; @@ -6146,7 +6122,7 @@ fold_stmt_1 (gimple_stmt_iterator *gsi, bool inplace, tree (*valueize) (tree)) if (val && REFERENCE_CLASS_P (val)) { - tree tem = maybe_fold_reference (val, false); + tree tem = maybe_fold_reference (val); if (tem) { gimple_debug_bind_set_value (stmt, tem); @@ -6157,7 +6133,7 @@ fold_stmt_1 (gimple_stmt_iterator *gsi, bool inplace, tree (*valueize) (tree)) && TREE_CODE (val) == ADDR_EXPR) { tree ref = TREE_OPERAND (val, 0); - tree tem = maybe_fold_reference (ref, false); + tree tem = maybe_fold_reference (ref); if (tem) { tem = build_fold_addr_expr_with_type (tem, TREE_TYPE (val)); @@ -6191,21 +6167,6 @@ fold_stmt_1 (gimple_stmt_iterator *gsi, bool inplace, tree (*valueize) (tree)) stmt = gsi_stmt (*gsi); - /* Fold *& on the lhs. */ - if (gimple_has_lhs (stmt)) - { - tree lhs = gimple_get_lhs (stmt); - if (lhs && REFERENCE_CLASS_P (lhs)) - { - tree new_lhs = maybe_fold_reference (lhs, true); - if (new_lhs) - { - gimple_set_lhs (stmt, new_lhs); - changed = true; - } - } - } - fold_undefer_overflow_warnings (changed && !nowarning, stmt, 0); return changed; } diff --git a/gcc/ipa-modref.c b/gcc/ipa-modref.c index ef5e62b..e7f79ca 100644 --- a/gcc/ipa-modref.c +++ b/gcc/ipa-modref.c @@ -3867,7 +3867,8 @@ ipa_modref_c_finalize () if (optimization_summaries) ggc_delete (optimization_summaries); optimization_summaries = NULL; - gcc_checking_assert (!summaries); + gcc_checking_assert (!summaries + || flag_incremental_link == INCREMENTAL_LINK_LTO); if (summaries_lto) ggc_delete (summaries_lto); summaries_lto = NULL; diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c index 03a5922..0b626d7c 100644 --- a/gcc/lto-wrapper.c +++ b/gcc/lto-wrapper.c @@ -1585,8 +1585,9 @@ run_gcc (unsigned argc, char *argv[]) if (jobserver && jobserver_error != NULL) { warning (0, jobserver_error); - parallel = 0; + /* Fall back to auto parallelism. */ jobserver = 0; + auto_parallel = 1; } else if (!jobserver && jobserver_error == NULL) { @@ -36,5 +36,10 @@ main (int argc, char **argv) toplev toplev (NULL, /* external_timer */ true /* init_signals */); - return toplev.main (argc, argv); + int r = toplev.main (argc, argv); +#if CHECKING_P + toplev.finalize (); +#endif + + return r; } diff --git a/gcc/opth-gen.awk b/gcc/opth-gen.awk index 0491525..32475fd 100644 --- a/gcc/opth-gen.awk +++ b/gcc/opth-gen.awk @@ -439,10 +439,17 @@ for (i = 0; i < n_opts; i++) { mask = "MASK_" extra_mask_macros[name] = 1 } + original_name = name + gsub("ISA_", "", name) + gsub("ISA2_", "", name) + print "/* " original_name " mask */" print "#define TARGET_" name \ - " ((" vname " & " mask name ") != 0)" + " ((" vname " & " mask original_name ") != 0)" print "#define TARGET_" name "_P(" vname ")" \ - " (((" vname ") & " mask name ") != 0)" + " (((" vname ") & " mask original_name ") != 0)" + print "#define TARGET_EXPLICIT_" name "_P(opts)" \ + " ((opts->x_" vname "_explicit & " mask original_name ") != 0)" + print "#define SET_TARGET_" name "(opts) opts->x_" vname " |= " mask original_name } } for (i = 0; i < n_extra_masks; i++) { diff --git a/gcc/params.opt b/gcc/params.opt index 7c7aa78..2e4cbdd 100644 --- a/gcc/params.opt +++ b/gcc/params.opt @@ -160,7 +160,7 @@ Enum(evrp_mode) String(debug) Value(EVRP_MODE_DEBUG) -param=ranger-logical-depth= Common Joined UInteger Var(param_ranger_logical_depth) Init(6) IntegerRange(1, 999) Param Optimization Maximum depth of logical expression evaluation ranger will look through when -evaluting outgoing edge ranges. +evaluating outgoing edge ranges. -param=fsm-maximum-phi-arguments= Common Joined UInteger Var(param_fsm_maximum_phi_arguments) Init(100) IntegerRange(1, 999999) Param Optimization diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 848d446..d3638ed 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2021-04-20 Joseph Myers <joseph@codesourcery.com> + + * gcc.pot: Regenerate. + 2021-04-12 Joseph Myers <joseph@codesourcery.com> * sv.po: Update. diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot index 95f3bcf..394fc1b 100644 --- a/gcc/po/gcc.pot +++ b/gcc/po/gcc.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n" -"POT-Creation-Date: 2021-03-19 21:31+0000\n" +"POT-Creation-Date: 2021-04-20 18:17+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -1247,11 +1247,11 @@ msgstr "" msgid "this is the insn:" msgstr "" -#: lra-constraints.c:3103 +#: lra-constraints.c:3108 msgid "unable to generate reloads for impossible constraints:" msgstr "" -#: lra-constraints.c:4133 reload.c:3862 +#: lra-constraints.c:4138 reload.c:3868 msgid "unable to generate reloads for:" msgstr "" @@ -1425,16 +1425,16 @@ msgstr "" msgid "insn does not satisfy its constraints:" msgstr "" -#: targhooks.c:2075 +#: targhooks.c:2089 #, c-format msgid "created and used with differing settings of '%s'" msgstr "" -#: targhooks.c:2090 +#: targhooks.c:2104 msgid "created and used with different settings of %<-fpic%>" msgstr "" -#: targhooks.c:2092 +#: targhooks.c:2106 msgid "created and used with different settings of %<-fpie%>" msgstr "" @@ -1471,7 +1471,7 @@ msgid "" "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n" msgstr "" -#: tree-diagnostic.c:299 c/c-decl.c:6041 c/c-typeck.c:7780 cp/error.c:1111 +#: tree-diagnostic.c:299 c/c-decl.c:6040 c/c-typeck.c:7840 cp/error.c:1111 #: tree-diagnostic-path.cc:257 c-family/c-pretty-print.c:424 #, gcc-internal-format msgid "<anonymous>" @@ -1917,83 +1917,83 @@ msgstr "" msgid "<command-line>" msgstr "" -#: config/aarch64/aarch64.c:10259 +#: config/aarch64/aarch64.c:10663 #, c-format msgid "unsupported operand for code '%c'" msgstr "" -#: config/aarch64/aarch64.c:10268 config/aarch64/aarch64.c:10281 -#: config/aarch64/aarch64.c:10293 config/aarch64/aarch64.c:10304 -#: config/aarch64/aarch64.c:10320 config/aarch64/aarch64.c:10334 -#: config/aarch64/aarch64.c:10354 config/aarch64/aarch64.c:10428 -#: config/aarch64/aarch64.c:10439 config/aarch64/aarch64.c:10453 -#: config/aarch64/aarch64.c:10675 config/aarch64/aarch64.c:10693 +#: config/aarch64/aarch64.c:10672 config/aarch64/aarch64.c:10685 +#: config/aarch64/aarch64.c:10697 config/aarch64/aarch64.c:10708 +#: config/aarch64/aarch64.c:10724 config/aarch64/aarch64.c:10738 +#: config/aarch64/aarch64.c:10758 config/aarch64/aarch64.c:10832 +#: config/aarch64/aarch64.c:10843 config/aarch64/aarch64.c:10857 +#: config/aarch64/aarch64.c:11079 config/aarch64/aarch64.c:11097 #: config/pru/pru.c:1669 config/pru/pru.c:1679 config/pru/pru.c:1710 #: config/pru/pru.c:1721 config/pru/pru.c:1793 #, c-format msgid "invalid operand for '%%%c'" msgstr "" -#: config/aarch64/aarch64.c:10372 config/aarch64/aarch64.c:10383 -#: config/aarch64/aarch64.c:10535 config/aarch64/aarch64.c:10546 +#: config/aarch64/aarch64.c:10776 config/aarch64/aarch64.c:10787 +#: config/aarch64/aarch64.c:10939 config/aarch64/aarch64.c:10950 #, c-format msgid "invalid vector constant" msgstr "" -#: config/aarch64/aarch64.c:10395 config/aarch64/aarch64.c:10407 +#: config/aarch64/aarch64.c:10799 config/aarch64/aarch64.c:10811 #, c-format msgid "incompatible floating point / vector register operand for '%%%c'" msgstr "" -#: config/aarch64/aarch64.c:10421 +#: config/aarch64/aarch64.c:10825 #, c-format msgid "incompatible register operand for '%%%c'" msgstr "" -#: config/aarch64/aarch64.c:10487 config/arm/arm.c:24289 +#: config/aarch64/aarch64.c:10891 config/arm/arm.c:24308 #, c-format msgid "missing operand" msgstr "" -#: config/aarch64/aarch64.c:10572 +#: config/aarch64/aarch64.c:10976 #, c-format msgid "invalid constant" msgstr "" -#: config/aarch64/aarch64.c:10575 +#: config/aarch64/aarch64.c:10979 #, c-format msgid "invalid operand" msgstr "" -#: config/aarch64/aarch64.c:10701 config/aarch64/aarch64.c:10706 +#: config/aarch64/aarch64.c:11105 config/aarch64/aarch64.c:11110 #, c-format msgid "invalid operand prefix '%%%c'" msgstr "" -#: config/aarch64/aarch64.c:10726 +#: config/aarch64/aarch64.c:11130 #, c-format msgid "invalid address mode" msgstr "" -#: config/aarch64/aarch64.c:23568 config/arm/arm.c:33644 +#: config/aarch64/aarch64.c:25211 config/arm/arm.c:33660 msgid "invalid conversion from type %<bfloat16_t%>" msgstr "" -#: config/aarch64/aarch64.c:23570 config/arm/arm.c:33646 +#: config/aarch64/aarch64.c:25213 config/arm/arm.c:33662 msgid "invalid conversion to type %<bfloat16_t%>" msgstr "" -#: config/aarch64/aarch64.c:23585 config/aarch64/aarch64.c:23601 -#: config/arm/arm.c:33661 config/arm/arm.c:33677 +#: config/aarch64/aarch64.c:25228 config/aarch64/aarch64.c:25244 +#: config/arm/arm.c:33677 config/arm/arm.c:33693 msgid "operation not permitted on type %<bfloat16_t%>" msgstr "" -#: config/aarch64/aarch64.c:23609 +#: config/aarch64/aarch64.c:25252 msgid "cannot combine GNU and SVE vectors in a binary operation" msgstr "" #: config/alpha/alpha.c:5076 config/i386/i386.c:13227 -#: config/rs6000/rs6000.c:14054 config/sparc/sparc.c:9323 +#: config/rs6000/rs6000.c:14147 config/sparc/sparc.c:9323 #, c-format msgid "'%%&' used without any local dynamic TLS references" msgstr "" @@ -2009,18 +2009,18 @@ msgid "invalid %%r value" msgstr "" #: config/alpha/alpha.c:5174 config/ia64/ia64.c:5531 -#: config/rs6000/rs6000.c:13748 config/xtensa/xtensa.c:2459 +#: config/rs6000/rs6000.c:13841 config/xtensa/xtensa.c:2459 #, c-format msgid "invalid %%R value" msgstr "" -#: config/alpha/alpha.c:5180 config/rs6000/rs6000.c:13668 +#: config/alpha/alpha.c:5180 config/rs6000/rs6000.c:13761 #: config/xtensa/xtensa.c:2426 #, c-format msgid "invalid %%N value" msgstr "" -#: config/alpha/alpha.c:5188 config/rs6000/rs6000.c:13696 +#: config/alpha/alpha.c:5188 config/rs6000/rs6000.c:13789 #, c-format msgid "invalid %%P value" msgstr "" @@ -2050,7 +2050,7 @@ msgstr "" msgid "invalid %%U value" msgstr "" -#: config/alpha/alpha.c:5274 config/rs6000/rs6000.c:13756 +#: config/alpha/alpha.c:5274 config/rs6000/rs6000.c:13849 #, c-format msgid "invalid %%s value" msgstr "" @@ -2060,7 +2060,7 @@ msgstr "" msgid "invalid %%C value" msgstr "" -#: config/alpha/alpha.c:5322 config/rs6000/rs6000.c:13532 +#: config/alpha/alpha.c:5322 config/rs6000/rs6000.c:13625 #, c-format msgid "invalid %%E value" msgstr "" @@ -2073,7 +2073,7 @@ msgstr "" #: config/alpha/alpha.c:5356 config/cr16/cr16.c:1570 config/gcn/gcn.c:5799 #: config/gcn/gcn.c:5808 config/gcn/gcn.c:5868 config/gcn/gcn.c:5876 #: config/gcn/gcn.c:5892 config/gcn/gcn.c:5910 config/gcn/gcn.c:5961 -#: config/gcn/gcn.c:6080 config/gcn/gcn.c:6191 config/rs6000/rs6000.c:14059 +#: config/gcn/gcn.c:6080 config/gcn/gcn.c:6191 config/rs6000/rs6000.c:14152 #, c-format msgid "invalid %%xn code" msgstr "" @@ -2155,35 +2155,35 @@ msgstr "" msgid "unrecognized supposed constant" msgstr "" -#: config/arm/arm.c:20653 config/arm/arm.c:20678 config/arm/arm.c:20688 -#: config/arm/arm.c:20697 config/arm/arm.c:20706 +#: config/arm/arm.c:20672 config/arm/arm.c:20697 config/arm/arm.c:20707 +#: config/arm/arm.c:20716 config/arm/arm.c:20725 #, c-format msgid "invalid shift operand" msgstr "" -#: config/arm/arm.c:23562 config/arm/arm.c:23580 +#: config/arm/arm.c:23581 config/arm/arm.c:23599 #, c-format msgid "predicated Thumb instruction" msgstr "" -#: config/arm/arm.c:23568 +#: config/arm/arm.c:23587 #, c-format msgid "predicated instruction in conditional sequence" msgstr "" -#: config/arm/arm.c:23686 config/arm/arm.c:23699 config/arm/arm.c:23724 +#: config/arm/arm.c:23705 config/arm/arm.c:23718 config/arm/arm.c:23743 #: config/nios2/nios2.c:3080 #, c-format msgid "Unsupported operand for code '%c'" msgstr "" -#: config/arm/arm.c:23801 config/arm/arm.c:23823 config/arm/arm.c:23833 -#: config/arm/arm.c:23843 config/arm/arm.c:23853 config/arm/arm.c:23892 -#: config/arm/arm.c:23910 config/arm/arm.c:23935 config/arm/arm.c:23950 -#: config/arm/arm.c:23977 config/arm/arm.c:23984 config/arm/arm.c:24002 -#: config/arm/arm.c:24009 config/arm/arm.c:24017 config/arm/arm.c:24038 -#: config/arm/arm.c:24045 config/arm/arm.c:24236 config/arm/arm.c:24243 -#: config/arm/arm.c:24270 config/arm/arm.c:24277 config/bfin/bfin.c:1440 +#: config/arm/arm.c:23820 config/arm/arm.c:23842 config/arm/arm.c:23852 +#: config/arm/arm.c:23862 config/arm/arm.c:23872 config/arm/arm.c:23911 +#: config/arm/arm.c:23929 config/arm/arm.c:23954 config/arm/arm.c:23969 +#: config/arm/arm.c:23996 config/arm/arm.c:24003 config/arm/arm.c:24021 +#: config/arm/arm.c:24028 config/arm/arm.c:24036 config/arm/arm.c:24057 +#: config/arm/arm.c:24064 config/arm/arm.c:24255 config/arm/arm.c:24262 +#: config/arm/arm.c:24289 config/arm/arm.c:24296 config/bfin/bfin.c:1440 #: config/bfin/bfin.c:1447 config/bfin/bfin.c:1454 config/bfin/bfin.c:1461 #: config/bfin/bfin.c:1470 config/bfin/bfin.c:1477 config/bfin/bfin.c:1484 #: config/bfin/bfin.c:1491 config/nds32/nds32.c:3543 @@ -2191,13 +2191,13 @@ msgstr "" msgid "invalid operand for code '%c'" msgstr "" -#: config/arm/arm.c:23905 +#: config/arm/arm.c:23924 #, c-format msgid "instruction never executed" msgstr "" #. Former Maverick support, removed after GCC-4.7. -#: config/arm/arm.c:23926 +#: config/arm/arm.c:23945 #, c-format msgid "obsolete Maverick format code '%c'" msgstr "" @@ -2317,8 +2317,8 @@ msgstr "" #: config/cris/cris.c:775 config/ft32/ft32.c:110 config/moxie/moxie.c:108 #: final.c:3625 final.c:3627 fold-const.c:267 gcc.c:6030 gcc.c:6044 -#: rtl-error.c:101 toplev.c:327 vr-values.c:2370 cp/typeck.c:6928 -#: d/dmd/dsymbolsem.c:1450 d/dmd/semantic2.c:75 lto/lto-object.c:184 +#: rtl-error.c:101 toplev.c:327 vr-values.c:2370 cp/typeck.c:6939 +#: d/dmd/dsymbolsem.c:1451 d/dmd/semantic2.c:75 lto/lto-object.c:184 #: lto/lto-object.c:281 lto/lto-object.c:338 lto/lto-object.c:362 #, gcc-internal-format, gfc-internal-format msgid "%s" @@ -2682,7 +2682,7 @@ msgstr "" msgid "invalid %%P operand" msgstr "" -#: config/iq2000/iq2000.c:3134 config/rs6000/rs6000.c:13686 +#: config/iq2000/iq2000.c:3134 config/rs6000/rs6000.c:13779 #, c-format msgid "invalid %%p value" msgstr "" @@ -2735,7 +2735,7 @@ msgstr "" msgid "post-increment address is not a register" msgstr "" -#: config/m32r/m32r.c:2335 config/m32r/m32r.c:2350 config/rs6000/rs6000.c:20528 +#: config/m32r/m32r.c:2335 config/m32r/m32r.c:2350 config/rs6000/rs6000.c:20645 msgid "bad address" msgstr "" @@ -2787,8 +2787,8 @@ msgstr "" #: config/mips/mips.c:9084 config/mips/mips.c:9087 config/mips/mips.c:9099 #: config/mips/mips.c:9102 config/mips/mips.c:9162 config/mips/mips.c:9169 #: config/mips/mips.c:9190 config/mips/mips.c:9205 config/mips/mips.c:9224 -#: config/mips/mips.c:9233 config/riscv/riscv.c:3326 config/riscv/riscv.c:3441 -#: config/riscv/riscv.c:3447 config/riscv/riscv.c:3456 +#: config/mips/mips.c:9233 config/riscv/riscv.c:3335 config/riscv/riscv.c:3450 +#: config/riscv/riscv.c:3456 config/riscv/riscv.c:3465 #, c-format msgid "invalid use of '%%%c'" msgstr "" @@ -2926,286 +2926,286 @@ msgstr "" msgid "Try running '%s' in the shell to raise its limit.\n" msgstr "" -#: config/rs6000/rs6000.c:3851 +#: config/rs6000/rs6000.c:3855 msgid "%<-mvsx%> requires hardware floating point" msgstr "" -#: config/rs6000/rs6000.c:3859 +#: config/rs6000/rs6000.c:3863 msgid "%<-mvsx%> needs indexed addressing" msgstr "" -#: config/rs6000/rs6000.c:3864 +#: config/rs6000/rs6000.c:3868 msgid "%<-mvsx%> and %<-mno-altivec%> are incompatible" msgstr "" -#: config/rs6000/rs6000.c:3866 +#: config/rs6000/rs6000.c:3870 msgid "%<-mno-altivec%> disables vsx" msgstr "" -#: config/rs6000/rs6000.c:4006 +#: config/rs6000/rs6000.c:4010 msgid "%<-mquad-memory%> requires 64-bit mode" msgstr "" -#: config/rs6000/rs6000.c:4009 +#: config/rs6000/rs6000.c:4013 msgid "%<-mquad-memory-atomic%> requires 64-bit mode" msgstr "" -#: config/rs6000/rs6000.c:4021 +#: config/rs6000/rs6000.c:4025 msgid "%<-mquad-memory%> is not available in little endian mode" msgstr "" -#: config/rs6000/rs6000.c:10752 +#: config/rs6000/rs6000.c:10845 msgid "bad move" msgstr "" -#: config/rs6000/rs6000.c:13316 +#: config/rs6000/rs6000.c:13409 msgid "Bad 128-bit move" msgstr "" -#: config/rs6000/rs6000.c:13496 +#: config/rs6000/rs6000.c:13589 #, c-format msgid "invalid %%A value" msgstr "" -#: config/rs6000/rs6000.c:13505 config/xtensa/xtensa.c:2402 +#: config/rs6000/rs6000.c:13598 config/xtensa/xtensa.c:2402 #, c-format msgid "invalid %%D value" msgstr "" -#: config/rs6000/rs6000.c:13520 +#: config/rs6000/rs6000.c:13613 #, c-format msgid "invalid %%e value" msgstr "" -#: config/rs6000/rs6000.c:13541 +#: config/rs6000/rs6000.c:13634 #, c-format msgid "invalid %%f value" msgstr "" -#: config/rs6000/rs6000.c:13550 +#: config/rs6000/rs6000.c:13643 #, c-format msgid "invalid %%F value" msgstr "" -#: config/rs6000/rs6000.c:13559 +#: config/rs6000/rs6000.c:13652 #, c-format msgid "invalid %%G value" msgstr "" -#: config/rs6000/rs6000.c:13594 +#: config/rs6000/rs6000.c:13687 #, c-format msgid "invalid %%j code" msgstr "" -#: config/rs6000/rs6000.c:13604 +#: config/rs6000/rs6000.c:13697 #, c-format msgid "invalid %%J code" msgstr "" -#: config/rs6000/rs6000.c:13614 +#: config/rs6000/rs6000.c:13707 #, c-format msgid "invalid %%k value" msgstr "" -#: config/rs6000/rs6000.c:13629 config/xtensa/xtensa.c:2445 +#: config/rs6000/rs6000.c:13722 config/xtensa/xtensa.c:2445 #, c-format msgid "invalid %%K value" msgstr "" -#: config/rs6000/rs6000.c:13676 +#: config/rs6000/rs6000.c:13769 #, c-format msgid "invalid %%O value" msgstr "" -#: config/rs6000/rs6000.c:13723 +#: config/rs6000/rs6000.c:13816 #, c-format msgid "invalid %%q value" msgstr "" -#: config/rs6000/rs6000.c:13765 +#: config/rs6000/rs6000.c:13858 #, c-format msgid "invalid %%t value" msgstr "" -#: config/rs6000/rs6000.c:13782 +#: config/rs6000/rs6000.c:13875 #, c-format msgid "invalid %%T value" msgstr "" -#: config/rs6000/rs6000.c:13794 +#: config/rs6000/rs6000.c:13887 #, c-format msgid "invalid %%u value" msgstr "" -#: config/rs6000/rs6000.c:13808 config/xtensa/xtensa.c:2414 +#: config/rs6000/rs6000.c:13901 config/xtensa/xtensa.c:2414 #, c-format msgid "invalid %%v value" msgstr "" -#: config/rs6000/rs6000.c:13858 +#: config/rs6000/rs6000.c:13951 #, c-format msgid "invalid %%V value" msgstr "" -#: config/rs6000/rs6000.c:13875 config/xtensa/xtensa.c:2466 +#: config/rs6000/rs6000.c:13968 config/xtensa/xtensa.c:2466 #, c-format msgid "invalid %%x value" msgstr "" -#: config/rs6000/rs6000.c:13932 +#: config/rs6000/rs6000.c:14025 #, c-format msgid "invalid %%z value" msgstr "" -#: config/rs6000/rs6000.c:14001 +#: config/rs6000/rs6000.c:14094 #, c-format msgid "invalid %%y value, try using the 'Z' constraint" msgstr "" -#: config/rs6000/rs6000.c:14845 +#: config/rs6000/rs6000.c:14962 msgid "Invalid mixing of IEEE 128-bit and IBM 128-bit floating point types" msgstr "" -#: config/rs6000/rs6000.c:23803 +#: config/rs6000/rs6000.c:23920 msgid "AltiVec argument passed to unprototyped function" msgstr "" -#: config/rs6000/rs6000.c:26952 +#: config/rs6000/rs6000.c:27071 msgid "Could not generate addis value for fusion" msgstr "" -#: config/rs6000/rs6000.c:27021 +#: config/rs6000/rs6000.c:27140 msgid "Unable to generate load/store offset for fusion" msgstr "" -#: config/rs6000/rs6000.c:27097 +#: config/rs6000/rs6000.c:27216 msgid "Bad GPR fusion" msgstr "" -#: config/rs6000/rs6000.c:27657 +#: config/rs6000/rs6000.c:27776 msgid "invalid conversion from type %<__vector_quad%>" msgstr "" -#: config/rs6000/rs6000.c:27659 +#: config/rs6000/rs6000.c:27778 msgid "invalid conversion to type %<__vector_quad%>" msgstr "" -#: config/rs6000/rs6000.c:27661 +#: config/rs6000/rs6000.c:27780 msgid "invalid conversion from type %<__vector_pair%>" msgstr "" -#: config/rs6000/rs6000.c:27663 +#: config/rs6000/rs6000.c:27782 msgid "invalid conversion to type %<__vector_pair%>" msgstr "" -#: config/rs6000/rs6000.c:27678 +#: config/rs6000/rs6000.c:27797 msgid "invalid conversion from type %<* __vector_quad%>" msgstr "" -#: config/rs6000/rs6000.c:27680 +#: config/rs6000/rs6000.c:27799 msgid "invalid conversion to type %<* __vector_quad%>" msgstr "" -#: config/rs6000/rs6000.c:27682 +#: config/rs6000/rs6000.c:27801 msgid "invalid conversion from type %<* __vector_pair%>" msgstr "" -#: config/rs6000/rs6000.c:27684 +#: config/rs6000/rs6000.c:27803 msgid "invalid conversion to type %<* __vector_pair%>" msgstr "" -#: config/s390/s390.c:7884 +#: config/s390/s390.c:7907 #, c-format msgid "symbolic memory references are only supported on z10 or later" msgstr "" -#: config/s390/s390.c:7895 +#: config/s390/s390.c:7918 #, c-format msgid "cannot decompose address" msgstr "" -#: config/s390/s390.c:7976 +#: config/s390/s390.c:7999 #, c-format msgid "invalid comparison operator for 'E' output modifier" msgstr "" -#: config/s390/s390.c:7999 +#: config/s390/s390.c:8022 #, c-format msgid "invalid reference for 'J' output modifier" msgstr "" -#: config/s390/s390.c:8017 +#: config/s390/s390.c:8040 #, c-format msgid "invalid address for 'O' output modifier" msgstr "" -#: config/s390/s390.c:8039 +#: config/s390/s390.c:8062 #, c-format msgid "invalid address for 'R' output modifier" msgstr "" -#: config/s390/s390.c:8057 +#: config/s390/s390.c:8080 #, c-format msgid "memory reference expected for 'S' output modifier" msgstr "" -#: config/s390/s390.c:8067 +#: config/s390/s390.c:8090 #, c-format msgid "invalid address for 'S' output modifier" msgstr "" -#: config/s390/s390.c:8088 +#: config/s390/s390.c:8111 #, c-format msgid "register or memory expression expected for 'N' output modifier" msgstr "" -#: config/s390/s390.c:8099 +#: config/s390/s390.c:8122 #, c-format msgid "register or memory expression expected for 'M' output modifier" msgstr "" -#: config/s390/s390.c:8185 config/s390/s390.c:8206 +#: config/s390/s390.c:8208 config/s390/s390.c:8229 #, c-format msgid "invalid constant for output modifier '%c'" msgstr "" -#: config/s390/s390.c:8203 +#: config/s390/s390.c:8226 #, c-format msgid "invalid constant - try using an output modifier" msgstr "" -#: config/s390/s390.c:8240 +#: config/s390/s390.c:8263 #, c-format msgid "invalid constant vector for output modifier '%c'" msgstr "" -#: config/s390/s390.c:8247 +#: config/s390/s390.c:8270 #, c-format msgid "invalid expression - try using an output modifier" msgstr "" -#: config/s390/s390.c:8250 +#: config/s390/s390.c:8273 #, c-format msgid "invalid expression for output modifier '%c'" msgstr "" -#: config/s390/s390.c:12029 +#: config/s390/s390.c:12052 msgid "vector argument passed to unprototyped function" msgstr "" -#: config/s390/s390.c:16403 +#: config/s390/s390.c:16426 msgid "types differ in signedness" msgstr "" -#: config/s390/s390.c:16413 +#: config/s390/s390.c:16436 msgid "binary operator does not support two vector bool operands" msgstr "" -#: config/s390/s390.c:16416 +#: config/s390/s390.c:16439 msgid "binary operator does not support vector bool operand" msgstr "" -#: config/s390/s390.c:16424 +#: config/s390/s390.c:16447 msgid "" "binary operator does not support mixing vector bool with floating point " "vector operands" @@ -3470,7 +3470,7 @@ msgstr "" #: c/gimple-parser.c:2193 c/gimple-parser.c:2230 c/gimple-parser.c:2309 #: c/gimple-parser.c:2336 c/c-parser.c:3274 c/c-parser.c:3461 c/c-parser.c:3494 #: c/c-parser.c:11268 c/gimple-parser.c:2027 c/gimple-parser.c:2066 -#: cp/parser.c:14380 cp/parser.c:31016 cp/parser.c:31626 +#: cp/parser.c:14404 cp/parser.c:31070 cp/parser.c:31680 #, gcc-internal-format msgid "expected %<;%>" msgstr "" @@ -3490,7 +3490,7 @@ msgstr "" #: c/gimple-parser.c:1470 c/gimple-parser.c:1492 c/gimple-parser.c:1522 #: c/gimple-parser.c:1548 c/gimple-parser.c:1756 c/gimple-parser.c:1949 #: c/gimple-parser.c:1969 c/gimple-parser.c:2103 c/gimple-parser.c:2266 -#: c/c-parser.c:7110 cp/parser.c:31674 +#: c/c-parser.c:7110 cp/parser.c:31728 #, gcc-internal-format msgid "expected %<)%>" msgstr "" @@ -3498,7 +3498,7 @@ msgstr "" #: c/c-parser.c:4103 c/c-parser.c:4835 c/c-parser.c:4976 c/c-parser.c:5002 #: c/c-parser.c:5003 c/c-parser.c:5417 c/c-parser.c:5453 c/c-parser.c:7209 #: c/c-parser.c:9233 c/c-parser.c:10123 c/c-parser.c:10412 c/c-parser.c:13085 -#: c/gimple-parser.c:1733 cp/parser.c:31638 +#: c/gimple-parser.c:1733 cp/parser.c:31692 #, gcc-internal-format msgid "expected %<]%>" msgstr "" @@ -3516,21 +3516,21 @@ msgstr "" #: c/gimple-parser.c:1428 c/gimple-parser.c:1488 c/gimple-parser.c:1506 #: c/gimple-parser.c:1541 c/gimple-parser.c:1918 c/gimple-parser.c:1929 #: c/gimple-parser.c:1935 c/gimple-parser.c:2100 c/gimple-parser.c:2263 -#: c/c-parser.c:13443 cp/parser.c:31629 +#: c/c-parser.c:13443 cp/parser.c:31683 #, gcc-internal-format msgid "expected %<(%>" msgstr "" -#: c/c-parser.c:4972 c/c-parser.c:4974 c/c-parser.c:13013 cp/parser.c:31641 -#: cp/parser.c:35326 +#: c/c-parser.c:4972 c/c-parser.c:4974 c/c-parser.c:13013 cp/parser.c:31695 +#: cp/parser.c:35379 #, gcc-internal-format msgid "expected %<[%>" msgstr "" #: c/c-parser.c:5588 c/c-parser.c:11611 c/c-parser.c:18127 c/c-parser.c:18941 #: c/c-parser.c:22005 c/gimple-parser.c:385 c/gimple-parser.c:2269 -#: c/c-parser.c:3262 c/c-parser.c:3484 c/c-parser.c:11163 cp/parser.c:19941 -#: cp/parser.c:31635 +#: c/c-parser.c:3262 c/c-parser.c:3484 c/c-parser.c:11163 cp/parser.c:19978 +#: cp/parser.c:31689 #, gcc-internal-format msgid "expected %<{%>" msgstr "" @@ -3541,13 +3541,13 @@ msgstr "" #: c/c-parser.c:15155 c/c-parser.c:15468 c/c-parser.c:15595 c/c-parser.c:20368 #: c/c-parser.c:21010 c/c-parser.c:21069 c/gimple-parser.c:568 #: c/gimple-parser.c:872 c/gimple-parser.c:2317 c/gimple-parser.c:2344 -#: c/c-parser.c:7117 c/c-parser.c:13546 c/c-parser.c:14793 cp/parser.c:31668 -#: cp/parser.c:33316 cp/parser.c:36125 cp/parser.c:36909 +#: c/c-parser.c:7117 c/c-parser.c:13546 c/c-parser.c:14793 cp/parser.c:31722 +#: cp/parser.c:33370 cp/parser.c:36178 cp/parser.c:36962 #, gcc-internal-format msgid "expected %<:%>" msgstr "" -#: c/c-parser.c:6667 cp/parser.c:31555 +#: c/c-parser.c:6667 cp/parser.c:31609 #, gcc-internal-format msgid "expected %<while%>" msgstr "" @@ -3556,7 +3556,7 @@ msgstr "" #: c/c-parser.c:9304 c/c-parser.c:10015 c/c-parser.c:14374 c/c-parser.c:15551 #: c/gimple-parser.c:1022 c/gimple-parser.c:1048 c/gimple-parser.c:1176 #: c/gimple-parser.c:1179 c/gimple-parser.c:1510 c/gimple-parser.c:1516 -#: cp/parser.c:31014 cp/parser.c:31644 +#: cp/parser.c:31068 cp/parser.c:31698 #, gcc-internal-format msgid "expected %<,%>" msgstr "" @@ -3565,18 +3565,18 @@ msgstr "" msgid "expected %<.%>" msgstr "" -#: c/c-parser.c:10834 c/c-parser.c:10866 c/c-parser.c:11106 cp/parser.c:33890 -#: cp/parser.c:33911 +#: c/c-parser.c:10834 c/c-parser.c:10866 c/c-parser.c:11106 cp/parser.c:33944 +#: cp/parser.c:33965 #, gcc-internal-format msgid "expected %<@end%>" msgstr "" -#: c/c-parser.c:11524 c/gimple-parser.c:1346 cp/parser.c:31653 +#: c/c-parser.c:11524 c/gimple-parser.c:1346 cp/parser.c:31707 #, gcc-internal-format msgid "expected %<>%>" msgstr "" -#: c/c-parser.c:14882 c/c-parser.c:15832 cp/parser.c:31677 +#: c/c-parser.c:14882 c/c-parser.c:15832 cp/parser.c:31731 #, gcc-internal-format msgid "expected %<,%> or %<)%>" msgstr "" @@ -3584,28 +3584,28 @@ msgstr "" #. All following cases are statements with LHS. #: c/c-parser.c:15460 c/c-parser.c:17592 c/c-parser.c:17636 c/c-parser.c:17868 #: c/c-parser.c:18311 c/c-parser.c:20575 c/c-parser.c:21207 -#: c/gimple-parser.c:726 c/c-parser.c:5476 cp/parser.c:31656 +#: c/gimple-parser.c:726 c/c-parser.c:5476 cp/parser.c:31710 #, gcc-internal-format msgid "expected %<=%>" msgstr "" #: c/c-parser.c:17884 c/c-parser.c:18175 c/gimple-parser.c:1564 #: c/gimple-parser.c:1596 c/gimple-parser.c:1606 c/gimple-parser.c:2354 -#: cp/parser.c:31632 cp/parser.c:34100 +#: cp/parser.c:31686 cp/parser.c:34154 #, gcc-internal-format msgid "expected %<}%>" msgstr "" -#: c/c-parser.c:18984 c/c-parser.c:18974 cp/parser.c:40913 +#: c/c-parser.c:18984 c/c-parser.c:18974 cp/parser.c:40966 #, gcc-internal-format msgid "expected %<#pragma omp section%> or %<}%>" msgstr "" -#: c/c-typeck.c:8370 +#: c/c-typeck.c:8430 msgid "(anonymous)" msgstr "" -#: c/gimple-parser.c:1335 cp/parser.c:17360 cp/parser.c:31650 +#: c/gimple-parser.c:1335 cp/parser.c:17388 cp/parser.c:31704 #, gcc-internal-format msgid "expected %<<%>" msgstr "" @@ -3620,29 +3620,29 @@ msgstr "" msgid "candidate:" msgstr "" -#: cp/call.c:7407 +#: cp/call.c:7411 msgid " after user-defined conversion:" msgstr "" -#: cp/call.c:7545 cp/pt.c:2044 cp/pt.c:25058 +#: cp/call.c:7549 cp/pt.c:2046 cp/pt.c:25151 msgid "candidate is:" msgid_plural "candidates are:" msgstr[0] "" msgstr[1] "" -#: cp/call.c:12092 +#: cp/call.c:12113 msgid "candidate 1:" msgstr "" -#: cp/call.c:12093 +#: cp/call.c:12114 msgid "candidate 2:" msgstr "" -#: cp/decl.c:3392 +#: cp/decl.c:3374 msgid "jump to label %qD" msgstr "" -#: cp/decl.c:3393 +#: cp/decl.c:3375 msgid "jump to case label" msgstr "" @@ -3865,27 +3865,27 @@ msgstr "" msgid "local variable %qD may not appear in this context" msgstr "" -#: cp/parser.c:20737 +#: cp/parser.c:20774 msgid "%<using enum%> only available with %<-std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:20740 +#: cp/parser.c:20777 msgid "%<using enum%> of dependent type %qT" msgstr "" -#: cp/parser.c:20742 +#: cp/parser.c:20779 msgid "%<using enum%> of non-enumeration type %q#T" msgstr "" -#: cp/parser.c:20744 +#: cp/parser.c:20781 msgid "%<using enum%> of incomplete type %qT" msgstr "" -#: cp/parser.c:20746 +#: cp/parser.c:20783 msgid "%<using enum%> of %qT before its enum-specifier" msgstr "" -#: cp/pt.c:2042 cp/semantics.c:5713 +#: cp/pt.c:2044 cp/semantics.c:5741 msgid "candidates are:" msgstr "" @@ -3929,48 +3929,48 @@ msgstr "" msgid "source type is not polymorphic" msgstr "" -#: cp/typeck.c:6633 c/c-typeck.c:4406 +#: cp/typeck.c:6644 c/c-typeck.c:4466 #, gcc-internal-format msgid "wrong type argument to unary minus" msgstr "" -#: cp/typeck.c:6634 c/c-typeck.c:4393 +#: cp/typeck.c:6645 c/c-typeck.c:4453 #, gcc-internal-format msgid "wrong type argument to unary plus" msgstr "" -#: cp/typeck.c:6661 c/c-typeck.c:4450 +#: cp/typeck.c:6672 c/c-typeck.c:4510 #, gcc-internal-format msgid "wrong type argument to bit-complement" msgstr "" -#: cp/typeck.c:6678 c/c-typeck.c:4458 +#: cp/typeck.c:6689 c/c-typeck.c:4518 #, gcc-internal-format msgid "wrong type argument to abs" msgstr "" -#: cp/typeck.c:6690 c/c-typeck.c:4480 +#: cp/typeck.c:6701 c/c-typeck.c:4540 #, gcc-internal-format msgid "wrong type argument to conjugation" msgstr "" -#: cp/typeck.c:6708 +#: cp/typeck.c:6719 msgid "in argument to unary !" msgstr "" -#: cp/typeck.c:6754 +#: cp/typeck.c:6765 msgid "no pre-increment operator for type" msgstr "" -#: cp/typeck.c:6756 +#: cp/typeck.c:6767 msgid "no post-increment operator for type" msgstr "" -#: cp/typeck.c:6758 +#: cp/typeck.c:6769 msgid "no pre-decrement operator for type" msgstr "" -#: cp/typeck.c:6760 +#: cp/typeck.c:6771 msgid "no post-decrement operator for type" msgstr "" @@ -4073,7 +4073,7 @@ msgstr "" msgid "Driving:" msgstr "" -#: fortran/interface.c:3421 fortran/intrinsic.c:4498 +#: fortran/interface.c:3427 fortran/intrinsic.c:4498 msgid "actual argument to INTENT = OUT/INOUT" msgstr "" @@ -4203,7 +4203,7 @@ msgstr "" msgid "Bad type in constant expression" msgstr "" -#: fortran/module.c:7303 +#: fortran/module.c:7314 msgid "Unexpected end of module" msgstr "" @@ -4231,11 +4231,11 @@ msgstr "" msgid "implied END DO" msgstr "" -#: fortran/parse.c:2139 fortran/resolve.c:11928 +#: fortran/parse.c:2139 fortran/resolve.c:11936 msgid "assignment" msgstr "" -#: fortran/parse.c:2142 fortran/resolve.c:11980 fortran/resolve.c:11983 +#: fortran/parse.c:2142 fortran/resolve.c:11988 fortran/resolve.c:11991 msgid "pointer assignment" msgstr "" @@ -4321,162 +4321,162 @@ msgstr "" msgid "bind(c) procedure" msgstr "" -#: fortran/resolve.c:4050 +#: fortran/resolve.c:4052 #, c-format msgid "Invalid context for NULL() pointer at %%L" msgstr "" -#: fortran/resolve.c:4066 +#: fortran/resolve.c:4069 #, c-format msgid "Operand of unary numeric operator %%<%s%%> at %%L is %s" msgstr "" -#: fortran/resolve.c:4083 +#: fortran/resolve.c:4086 #, c-format msgid "" "Unexpected derived-type entities in binary intrinsic numeric operator %%<%s" "%%> at %%L" msgstr "" -#: fortran/resolve.c:4088 +#: fortran/resolve.c:4091 #, c-format msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:4103 +#: fortran/resolve.c:4106 #, c-format msgid "Operands of string concatenation operator at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:4145 +#: fortran/resolve.c:4149 #, c-format msgid "Operands of logical operator %%<%s%%> at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:4168 +#: fortran/resolve.c:4172 #, c-format msgid "Operand of .not. operator at %%L is %s" msgstr "" -#: fortran/resolve.c:4182 +#: fortran/resolve.c:4186 msgid "COMPLEX quantities cannot be compared at %L" msgstr "" -#: fortran/resolve.c:4280 +#: fortran/resolve.c:4284 #, c-format msgid "Logicals at %%L must be compared with %s instead of %s" msgstr "" -#: fortran/resolve.c:4286 +#: fortran/resolve.c:4290 #, c-format msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:4299 +#: fortran/resolve.c:4304 #, c-format msgid "Unknown operator %%<%s%%> at %%L; did you mean '%s'?" msgstr "" -#: fortran/resolve.c:4302 +#: fortran/resolve.c:4307 #, c-format msgid "Unknown operator %%<%s%%> at %%L" msgstr "" -#: fortran/resolve.c:4305 +#: fortran/resolve.c:4312 #, c-format msgid "Operand of user operator %%<%s%%> at %%L is %s" msgstr "" -#: fortran/resolve.c:4309 +#: fortran/resolve.c:4317 #, c-format msgid "Operands of user operator %%<%s%%> at %%L are %s/%s" msgstr "" -#: fortran/resolve.c:4395 +#: fortran/resolve.c:4403 #, c-format msgid "Inconsistent ranks for operator at %%L and %%L" msgstr "" -#: fortran/resolve.c:7234 +#: fortran/resolve.c:7242 msgid "Loop variable" msgstr "" -#: fortran/resolve.c:7238 +#: fortran/resolve.c:7246 msgid "iterator variable" msgstr "" -#: fortran/resolve.c:7242 +#: fortran/resolve.c:7250 msgid "Start expression in DO loop" msgstr "" -#: fortran/resolve.c:7246 +#: fortran/resolve.c:7254 msgid "End expression in DO loop" msgstr "" -#: fortran/resolve.c:7250 +#: fortran/resolve.c:7258 msgid "Step expression in DO loop" msgstr "" -#: fortran/resolve.c:7536 fortran/resolve.c:7539 +#: fortran/resolve.c:7544 fortran/resolve.c:7547 msgid "DEALLOCATE object" msgstr "" -#: fortran/resolve.c:7916 fortran/resolve.c:7919 +#: fortran/resolve.c:7924 fortran/resolve.c:7927 msgid "ALLOCATE object" msgstr "" -#: fortran/resolve.c:8152 fortran/resolve.c:10105 +#: fortran/resolve.c:8160 fortran/resolve.c:10113 msgid "STAT variable" msgstr "" -#: fortran/resolve.c:8196 fortran/resolve.c:10117 +#: fortran/resolve.c:8204 fortran/resolve.c:10125 msgid "ERRMSG variable" msgstr "" -#: fortran/resolve.c:9911 +#: fortran/resolve.c:9919 msgid "item in READ" msgstr "" -#: fortran/resolve.c:10129 +#: fortran/resolve.c:10137 msgid "ACQUIRED_LOCK variable" msgstr "" -#: fortran/trans-array.c:1750 +#: fortran/trans-array.c:1778 #, c-format msgid "Different CHARACTER lengths (%ld/%ld) in array constructor" msgstr "" -#: fortran/trans-array.c:6023 +#: fortran/trans-array.c:5990 msgid "Integer overflow when calculating the amount of memory to allocate" msgstr "" -#: fortran/trans-array.c:9788 +#: fortran/trans-array.c:9755 #, c-format msgid "" "The value of the PDT LEN parameter '%s' does not agree with that in the " "dummy declaration" msgstr "" -#: fortran/trans-decl.c:6235 +#: fortran/trans-decl.c:6240 #, c-format msgid "" "Actual string length does not match the declared one for dummy argument " "'%s' (%ld/%ld)" msgstr "" -#: fortran/trans-decl.c:6243 +#: fortran/trans-decl.c:6248 #, c-format msgid "" "Actual string length is shorter than the declared one for dummy argument " "'%s' (%ld/%ld)" msgstr "" -#: fortran/trans-expr.c:9796 +#: fortran/trans-expr.c:9845 #, c-format msgid "Target of rank remapping is too small (%ld < %ld)" msgstr "" -#: fortran/trans-expr.c:11270 +#: fortran/trans-expr.c:11322 msgid "Assignment of scalar to unallocated array" msgstr "" @@ -4601,26 +4601,26 @@ msgstr "" msgid "Incorrect function return value" msgstr "" -#: fortran/trans.c:714 fortran/trans.c:789 +#: fortran/trans.c:724 fortran/trans.c:799 #, c-format msgid "Error allocating %lu bytes" msgstr "" -#: fortran/trans.c:998 +#: fortran/trans.c:1008 #, c-format msgid "Attempting to allocate already allocated variable '%s'" msgstr "" -#: fortran/trans.c:1004 +#: fortran/trans.c:1014 msgid "Attempting to allocate already allocated variable" msgstr "" -#: fortran/trans.c:1454 fortran/trans.c:1613 +#: fortran/trans.c:1464 fortran/trans.c:1623 #, c-format msgid "Attempt to DEALLOCATE unallocated '%s'" msgstr "" -#: fortran/trans.c:1771 +#: fortran/trans.c:1781 #, c-format msgid "Error reallocating to %lu bytes" msgstr "" @@ -4814,15 +4814,15 @@ msgstr "" msgid "consider using `-pg' instead of `-p' with gprof (1)" msgstr "" -#: config/arc/arc.h:68 config/mips/mips.h:1452 +#: config/arc/arc.h:68 config/mips/mips.h:1453 msgid "may not use both -EB and -EL" msgstr "" -#: config/arm/arm.h:93 +#: config/arm/arm.h:94 msgid "-mfloat-abi=soft and -mfloat-abi=hard may not be used together" msgstr "" -#: config/arm/arm.h:95 config/tilegx/tilegx.h:520 config/tilegx/tilegx.h:525 +#: config/arm/arm.h:96 config/tilegx/tilegx.h:520 config/tilegx/tilegx.h:525 msgid "-mbig-endian and -mlittle-endian may not be used together" msgstr "" @@ -4838,8 +4838,8 @@ msgstr "" msgid "do not specify both -march=... and -mcpu=..." msgstr "" -#: config/i386/cygwin-w64.h:64 config/i386/cygwin.h:129 -#: config/i386/mingw-w64.h:95 config/i386/mingw32.h:141 +#: config/i386/cygwin-w64.h:64 config/i386/cygwin.h:138 +#: config/i386/mingw-w64.h:95 config/i386/mingw32.h:153 msgid "shared and mdll are not compatible" msgstr "" @@ -4999,10 +4999,10 @@ msgid "Warn about creation of array temporaries." msgstr "" #: fortran/lang.opt:214 fortran/lang.opt:522 config/alpha/alpha.opt:31 -#: common.opt:653 common.opt:791 common.opt:1017 common.opt:1021 -#: common.opt:1025 common.opt:1029 common.opt:1679 common.opt:1735 -#: common.opt:1874 common.opt:1878 common.opt:2116 common.opt:2330 -#: common.opt:3046 +#: common.opt:653 common.opt:791 common.opt:1021 common.opt:1025 +#: common.opt:1029 common.opt:1033 common.opt:1683 common.opt:1739 +#: common.opt:1878 common.opt:1882 common.opt:2120 common.opt:2334 +#: common.opt:3050 #, no-c-format msgid "Does nothing. Preserved for backward compatibility." msgstr "" @@ -5503,165 +5503,165 @@ msgstr "" msgid "Set default accessibility of module entities to PRIVATE." msgstr "" -#: fortran/lang.opt:708 +#: fortran/lang.opt:704 #, no-c-format msgid "Try to lay out derived types as compactly as possible." msgstr "" -#: fortran/lang.opt:716 +#: fortran/lang.opt:712 #, no-c-format msgid "Protect parentheses in expressions." msgstr "" -#: fortran/lang.opt:720 +#: fortran/lang.opt:716 #, no-c-format msgid "" "Path to header file that should be pre-included before each compilation unit." msgstr "" -#: fortran/lang.opt:724 +#: fortran/lang.opt:720 #, no-c-format msgid "Enable range checking during compilation." msgstr "" -#: fortran/lang.opt:728 +#: fortran/lang.opt:724 #, no-c-format msgid "Interpret any REAL(4) as a REAL(8)." msgstr "" -#: fortran/lang.opt:732 +#: fortran/lang.opt:728 #, no-c-format msgid "Interpret any REAL(4) as a REAL(10)." msgstr "" -#: fortran/lang.opt:736 +#: fortran/lang.opt:732 #, no-c-format msgid "Interpret any REAL(4) as a REAL(16)." msgstr "" -#: fortran/lang.opt:740 +#: fortran/lang.opt:736 #, no-c-format msgid "Interpret any REAL(8) as a REAL(4)." msgstr "" -#: fortran/lang.opt:744 +#: fortran/lang.opt:740 #, no-c-format msgid "Interpret any REAL(8) as a REAL(10)." msgstr "" -#: fortran/lang.opt:748 +#: fortran/lang.opt:744 #, no-c-format msgid "Interpret any REAL(8) as a REAL(16)." msgstr "" -#: fortran/lang.opt:752 +#: fortran/lang.opt:748 #, no-c-format msgid "Reallocate the LHS in assignments." msgstr "" -#: fortran/lang.opt:756 +#: fortran/lang.opt:752 #, no-c-format msgid "Use a 4-byte record marker for unformatted files." msgstr "" -#: fortran/lang.opt:760 +#: fortran/lang.opt:756 #, no-c-format msgid "Use an 8-byte record marker for unformatted files." msgstr "" -#: fortran/lang.opt:764 +#: fortran/lang.opt:760 #, no-c-format msgid "Allocate local variables on the stack to allow indirect recursion." msgstr "" -#: fortran/lang.opt:768 +#: fortran/lang.opt:764 #, no-c-format msgid "Copy array sections into a contiguous block on procedure entry." msgstr "" -#: fortran/lang.opt:772 +#: fortran/lang.opt:768 #, no-c-format msgid "" "-fcoarray=<none|single|lib>\tSpecify which coarray parallelization should be " "used." msgstr "" -#: fortran/lang.opt:788 +#: fortran/lang.opt:784 #, no-c-format msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed." msgstr "" -#: fortran/lang.opt:792 +#: fortran/lang.opt:788 #, no-c-format msgid "Append a second underscore if the name already contains an underscore." msgstr "" -#: fortran/lang.opt:800 +#: fortran/lang.opt:796 #, no-c-format msgid "Apply negative sign to zero values." msgstr "" -#: fortran/lang.opt:807 +#: fortran/lang.opt:803 #, no-c-format msgid "" "Disallow tail call optimization when a calling routine may have omitted " "character lengths." msgstr "" -#: fortran/lang.opt:811 +#: fortran/lang.opt:807 #, no-c-format msgid "Append underscores to externally visible names." msgstr "" -#: fortran/lang.opt:815 c-family/c.opt:1539 c-family/c.opt:1571 -#: c-family/c.opt:1579 c-family/c.opt:1903 config/pa/pa.opt:42 -#: config/pa/pa.opt:74 common.opt:615 common.opt:1099 common.opt:1103 -#: common.opt:1107 common.opt:1194 common.opt:1471 common.opt:1550 -#: common.opt:1826 common.opt:1965 common.opt:2008 common.opt:2405 -#: common.opt:2441 common.opt:2534 common.opt:2538 common.opt:2647 -#: common.opt:2738 common.opt:2746 common.opt:2754 common.opt:2762 -#: common.opt:2863 common.opt:2919 common.opt:3007 common.opt:3151 -#: common.opt:3155 common.opt:3159 common.opt:3163 +#: fortran/lang.opt:811 c-family/c.opt:1539 c-family/c.opt:1571 +#: c-family/c.opt:1579 c-family/c.opt:1890 config/pa/pa.opt:42 +#: config/pa/pa.opt:74 common.opt:615 common.opt:1103 common.opt:1107 +#: common.opt:1111 common.opt:1198 common.opt:1475 common.opt:1554 +#: common.opt:1830 common.opt:1969 common.opt:2012 common.opt:2409 +#: common.opt:2445 common.opt:2538 common.opt:2542 common.opt:2651 +#: common.opt:2742 common.opt:2750 common.opt:2758 common.opt:2766 +#: common.opt:2867 common.opt:2923 common.opt:3011 common.opt:3155 +#: common.opt:3159 common.opt:3163 common.opt:3167 #, no-c-format msgid "Does nothing. Preserved for backward compatibility." msgstr "" -#: fortran/lang.opt:855 +#: fortran/lang.opt:851 #, no-c-format msgid "Statically link the GNU Fortran helper library (libgfortran)." msgstr "" -#: fortran/lang.opt:859 +#: fortran/lang.opt:855 #, no-c-format msgid "Conform to the ISO Fortran 2003 standard." msgstr "" -#: fortran/lang.opt:863 +#: fortran/lang.opt:859 #, no-c-format msgid "Conform to the ISO Fortran 2008 standard." msgstr "" -#: fortran/lang.opt:867 +#: fortran/lang.opt:863 #, no-c-format msgid "Conform to the ISO Fortran 2008 standard including TS 29113." msgstr "" -#: fortran/lang.opt:871 +#: fortran/lang.opt:867 #, no-c-format msgid "Conform to the ISO Fortran 2018 standard." msgstr "" -#: fortran/lang.opt:875 +#: fortran/lang.opt:871 #, no-c-format msgid "Conform to the ISO Fortran 95 standard." msgstr "" -#: fortran/lang.opt:879 +#: fortran/lang.opt:875 #, no-c-format msgid "Conform to nothing in particular." msgstr "" -#: fortran/lang.opt:883 +#: fortran/lang.opt:879 #, no-c-format msgid "Accept extensions to support legacy code." msgstr "" @@ -6424,7 +6424,7 @@ msgstr "" #, no-c-format msgid "" "Warn for mismatches between calls to operator new or delete and the " -"corrsponding call to the allocation or deallocation function." +"corresponding call to the allocation or deallocation function." msgstr "" #: c-family/c.opt:808 @@ -7127,8 +7127,8 @@ msgstr "" msgid "Allow variadic functions without named parameter." msgstr "" -#: c-family/c.opt:1408 c-family/c.opt:1672 c-family/c.opt:2068 -#: c-family/c.opt:2072 c-family/c.opt:2088 +#: c-family/c.opt:1408 c-family/c.opt:1672 c-family/c.opt:2055 +#: c-family/c.opt:2059 c-family/c.opt:2075 #, no-c-format msgid "No longer supported." msgstr "" @@ -7521,516 +7521,509 @@ msgstr "" #: c-family/c.opt:1878 #, no-c-format -msgid "" -"-fopenacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC 'kernels' " -"constructs handling." -msgstr "" - -#: c-family/c.opt:1891 -#, no-c-format msgid "Enable OpenMP (implies -frecursive in Fortran)." msgstr "" -#: c-family/c.opt:1895 +#: c-family/c.opt:1882 #, no-c-format msgid "Enable OpenMP's SIMD directives." msgstr "" -#: c-family/c.opt:1899 +#: c-family/c.opt:1886 #, no-c-format msgid "Recognize C++ keywords like \"compl\" and \"xor\"." msgstr "" -#: c-family/c.opt:1910 +#: c-family/c.opt:1897 #, no-c-format msgid "Look for and use PCH files even when preprocessing." msgstr "" -#: c-family/c.opt:1914 +#: c-family/c.opt:1901 #, no-c-format msgid "Downgrade conformance errors to warnings." msgstr "" -#: c-family/c.opt:1918 +#: c-family/c.opt:1905 #, no-c-format msgid "Enable Plan 9 language extensions." msgstr "" -#: c-family/c.opt:1922 +#: c-family/c.opt:1909 #, no-c-format msgid "Treat the input file as already preprocessed." msgstr "" -#: c-family/c.opt:1930 +#: c-family/c.opt:1917 #, no-c-format msgid "" "-ftrack-macro-expansion=<0|1|2>\tTrack locations of tokens coming from macro " "expansion and display them in error messages." msgstr "" -#: c-family/c.opt:1934 +#: c-family/c.opt:1921 #, no-c-format msgid "" "Do not pretty-print template specializations as the template signature " "followed by the arguments." msgstr "" -#: c-family/c.opt:1938 +#: c-family/c.opt:1925 #, no-c-format msgid "Treat known sprintf return values as constants." msgstr "" -#: c-family/c.opt:1942 +#: c-family/c.opt:1929 #, no-c-format msgid "" "Used in Fix-and-Continue mode to indicate that object files may be swapped " "in at runtime." msgstr "" -#: c-family/c.opt:1946 +#: c-family/c.opt:1933 #, no-c-format msgid "Removed in GCC 10. This switch has no effect." msgstr "" -#: c-family/c.opt:1950 +#: c-family/c.opt:1937 #, no-c-format msgid "Generate run time type descriptor information." msgstr "" -#: c-family/c.opt:1954 ada/gcc-interface/lang.opt:81 +#: c-family/c.opt:1941 ada/gcc-interface/lang.opt:81 #, no-c-format msgid "Use the narrowest integer type possible for enumeration types." msgstr "" -#: c-family/c.opt:1958 +#: c-family/c.opt:1945 #, no-c-format msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"." msgstr "" -#: c-family/c.opt:1962 +#: c-family/c.opt:1949 #, no-c-format msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed." msgstr "" -#: c-family/c.opt:1966 ada/gcc-interface/lang.opt:85 +#: c-family/c.opt:1953 ada/gcc-interface/lang.opt:85 #, no-c-format msgid "Make \"char\" signed by default." msgstr "" -#: c-family/c.opt:1970 +#: c-family/c.opt:1957 #, no-c-format msgid "Enable C++14 sized deallocation support." msgstr "" -#: c-family/c.opt:1977 +#: c-family/c.opt:1964 #, no-c-format msgid "" "-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar " "storage order." msgstr "" -#: c-family/c.opt:1993 +#: c-family/c.opt:1980 #, no-c-format msgid "Display statistics accumulated during compilation." msgstr "" -#: c-family/c.opt:1997 +#: c-family/c.opt:1984 #, no-c-format msgid "" "Assume that values of enumeration type are always within the minimum range " "of that type." msgstr "" -#: c-family/c.opt:2004 c-family/c.opt:2009 +#: c-family/c.opt:1991 c-family/c.opt:1996 #, no-c-format msgid "" "Follow the C++17 evaluation order requirements for assignment expressions, " "shift, member function calls, etc." msgstr "" -#: c-family/c.opt:2026 +#: c-family/c.opt:2013 #, no-c-format msgid "" "Set the maximum number of template instantiation notes for a single warning " "or error." msgstr "" -#: c-family/c.opt:2033 +#: c-family/c.opt:2020 #, no-c-format msgid "" "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth." msgstr "" -#: c-family/c.opt:2040 +#: c-family/c.opt:2027 #, no-c-format msgid "" "-fno-threadsafe-statics\tDo not generate thread-safe code for initializing " "local statics." msgstr "" -#: c-family/c.opt:2044 +#: c-family/c.opt:2031 #, no-c-format msgid "" "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned." msgstr "" -#: c-family/c.opt:2048 ada/gcc-interface/lang.opt:89 +#: c-family/c.opt:2035 ada/gcc-interface/lang.opt:89 #, no-c-format msgid "Make \"char\" unsigned by default." msgstr "" -#: c-family/c.opt:2052 +#: c-family/c.opt:2039 #, no-c-format msgid "Use __cxa_atexit to register destructors." msgstr "" -#: c-family/c.opt:2056 +#: c-family/c.opt:2043 #, no-c-format msgid "Use __cxa_get_exception_ptr in exception handling." msgstr "" -#: c-family/c.opt:2060 +#: c-family/c.opt:2047 #, no-c-format msgid "Marks all inlined functions and methods as having hidden visibility." msgstr "" -#: c-family/c.opt:2064 +#: c-family/c.opt:2051 #, no-c-format msgid "Changes visibility to match Microsoft Visual Studio by default." msgstr "" -#: c-family/c.opt:2076 d/lang.opt:326 +#: c-family/c.opt:2063 #, no-c-format msgid "Emit common-like symbols as weak symbols." msgstr "" -#: c-family/c.opt:2080 +#: c-family/c.opt:2067 #, no-c-format msgid "" "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants " "to character set <cset>." msgstr "" -#: c-family/c.opt:2084 +#: c-family/c.opt:2071 #, no-c-format msgid "Generate a #line directive pointing at the current working directory." msgstr "" -#: c-family/c.opt:2092 +#: c-family/c.opt:2079 #, no-c-format msgid "" "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode." msgstr "" -#: c-family/c.opt:2096 +#: c-family/c.opt:2083 #, no-c-format msgid "Dump declarations to a .decl file." msgstr "" -#: c-family/c.opt:2100 +#: c-family/c.opt:2087 #, no-c-format msgid "" "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs." msgstr "" -#: c-family/c.opt:2104 +#: c-family/c.opt:2091 #, no-c-format msgid "" "-femit-struct-debug-reduced\tConservative reduced debug info for structs." msgstr "" -#: c-family/c.opt:2108 +#: c-family/c.opt:2095 #, no-c-format msgid "" "-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for " "structs." msgstr "" -#: c-family/c.opt:2112 +#: c-family/c.opt:2099 #, 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:2117 +#: c-family/c.opt:2104 #, no-c-format msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path." msgstr "" -#: c-family/c.opt:2121 +#: c-family/c.opt:2108 #, no-c-format msgid "-imacros <file>\tAccept definition of macros in <file>." msgstr "" -#: c-family/c.opt:2125 +#: c-family/c.opt:2112 #, no-c-format msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory." msgstr "" -#: c-family/c.opt:2129 +#: c-family/c.opt:2116 #, no-c-format msgid "-include <file>\tInclude the contents of <file> before other files." msgstr "" -#: c-family/c.opt:2133 +#: c-family/c.opt:2120 #, no-c-format msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options." msgstr "" -#: c-family/c.opt:2137 +#: c-family/c.opt:2124 #, no-c-format msgid "-isysroot <dir>\tSet <dir> to be the system root directory." msgstr "" -#: c-family/c.opt:2141 +#: c-family/c.opt:2128 #, no-c-format msgid "-isystem <dir>\tAdd <dir> to the start of the system include path." msgstr "" -#: c-family/c.opt:2145 +#: c-family/c.opt:2132 #, no-c-format msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path." msgstr "" -#: c-family/c.opt:2149 +#: c-family/c.opt:2136 #, no-c-format msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path." msgstr "" -#: c-family/c.opt:2153 +#: c-family/c.opt:2140 #, no-c-format msgid "" "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path." msgstr "" -#: c-family/c.opt:2163 +#: c-family/c.opt:2150 #, no-c-format msgid "" "Do not search standard system include directories (those specified with -" "isystem will still be used)." msgstr "" -#: c-family/c.opt:2167 +#: c-family/c.opt:2154 #, no-c-format msgid "Do not search standard system include directories for C++." msgstr "" -#: c-family/c.opt:2179 +#: c-family/c.opt:2166 #, no-c-format msgid "Generate C header of platform-specific features." msgstr "" -#: c-family/c.opt:2183 +#: c-family/c.opt:2170 #, no-c-format msgid "Remap file names when including files." msgstr "" -#: c-family/c.opt:2187 c-family/c.opt:2191 +#: c-family/c.opt:2174 c-family/c.opt:2178 #, no-c-format msgid "" "Conform to the ISO 1998 C++ standard revised by the 2003 technical " "corrigendum." msgstr "" -#: c-family/c.opt:2195 +#: c-family/c.opt:2182 #, no-c-format msgid "Conform to the ISO 2011 C++ standard." msgstr "" -#: c-family/c.opt:2199 +#: c-family/c.opt:2186 #, no-c-format msgid "Deprecated in favor of -std=c++11." msgstr "" -#: c-family/c.opt:2203 +#: c-family/c.opt:2190 #, no-c-format msgid "Deprecated in favor of -std=c++14." msgstr "" -#: c-family/c.opt:2207 +#: c-family/c.opt:2194 #, no-c-format msgid "Conform to the ISO 2014 C++ standard." msgstr "" -#: c-family/c.opt:2211 +#: c-family/c.opt:2198 #, no-c-format msgid "Deprecated in favor of -std=c++17." msgstr "" -#: c-family/c.opt:2215 +#: c-family/c.opt:2202 #, no-c-format msgid "Conform to the ISO 2017 C++ standard." msgstr "" -#: c-family/c.opt:2219 c-family/c.opt:2223 +#: c-family/c.opt:2206 c-family/c.opt:2210 #, no-c-format msgid "" "Conform to the ISO 2020 C++ standard (experimental and incomplete support)." msgstr "" -#: c-family/c.opt:2227 c-family/c.opt:2231 +#: c-family/c.opt:2214 c-family/c.opt:2218 #, no-c-format msgid "" "Conform to the ISO 2023 C++ draft standard (experimental and incomplete " "support)." msgstr "" -#: c-family/c.opt:2235 c-family/c.opt:2373 +#: c-family/c.opt:2222 c-family/c.opt:2360 #, no-c-format msgid "Conform to the ISO 2011 C standard." msgstr "" -#: c-family/c.opt:2239 +#: c-family/c.opt:2226 #, no-c-format msgid "Deprecated in favor of -std=c11." msgstr "" -#: c-family/c.opt:2243 c-family/c.opt:2247 c-family/c.opt:2377 -#: c-family/c.opt:2381 +#: c-family/c.opt:2230 c-family/c.opt:2234 c-family/c.opt:2364 +#: c-family/c.opt:2368 #, no-c-format msgid "Conform to the ISO 2017 C standard (published in 2018)." msgstr "" -#: c-family/c.opt:2251 +#: c-family/c.opt:2238 #, no-c-format msgid "" "Conform to the ISO 202X C standard draft (experimental and incomplete " "support)." msgstr "" -#: c-family/c.opt:2255 c-family/c.opt:2259 c-family/c.opt:2357 +#: c-family/c.opt:2242 c-family/c.opt:2246 c-family/c.opt:2344 #, no-c-format msgid "Conform to the ISO 1990 C standard." msgstr "" -#: c-family/c.opt:2263 c-family/c.opt:2365 +#: c-family/c.opt:2250 c-family/c.opt:2352 #, no-c-format msgid "Conform to the ISO 1999 C standard." msgstr "" -#: c-family/c.opt:2267 +#: c-family/c.opt:2254 #, no-c-format msgid "Deprecated in favor of -std=c99." msgstr "" -#: c-family/c.opt:2271 c-family/c.opt:2276 +#: c-family/c.opt:2258 c-family/c.opt:2263 #, no-c-format msgid "" "Conform to the ISO 1998 C++ standard revised by the 2003 technical " "corrigendum with GNU extensions." msgstr "" -#: c-family/c.opt:2281 +#: c-family/c.opt:2268 #, no-c-format msgid "Conform to the ISO 2011 C++ standard with GNU extensions." msgstr "" -#: c-family/c.opt:2285 +#: c-family/c.opt:2272 #, no-c-format msgid "Deprecated in favor of -std=gnu++11." msgstr "" -#: c-family/c.opt:2289 +#: c-family/c.opt:2276 #, no-c-format msgid "Deprecated in favor of -std=gnu++14." msgstr "" -#: c-family/c.opt:2293 +#: c-family/c.opt:2280 #, no-c-format msgid "Conform to the ISO 2014 C++ standard with GNU extensions." msgstr "" -#: c-family/c.opt:2297 +#: c-family/c.opt:2284 #, no-c-format msgid "Deprecated in favor of -std=gnu++17." msgstr "" -#: c-family/c.opt:2301 +#: c-family/c.opt:2288 #, no-c-format msgid "Conform to the ISO 2017 C++ standard with GNU extensions." msgstr "" -#: c-family/c.opt:2305 c-family/c.opt:2309 +#: c-family/c.opt:2292 c-family/c.opt:2296 #, no-c-format msgid "" "Conform to the ISO 2020 C++ standard with GNU extensions (experimental and " "incomplete support)." msgstr "" -#: c-family/c.opt:2313 c-family/c.opt:2317 +#: c-family/c.opt:2300 c-family/c.opt:2304 #, no-c-format msgid "" "Conform to the ISO 2023 C++ draft standard with GNU extensions (experimental " "and incomplete support)." msgstr "" -#: c-family/c.opt:2321 +#: c-family/c.opt:2308 #, no-c-format msgid "Conform to the ISO 2011 C standard with GNU extensions." msgstr "" -#: c-family/c.opt:2325 +#: c-family/c.opt:2312 #, no-c-format msgid "Deprecated in favor of -std=gnu11." msgstr "" -#: c-family/c.opt:2329 c-family/c.opt:2333 +#: c-family/c.opt:2316 c-family/c.opt:2320 #, no-c-format msgid "" "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions." msgstr "" -#: c-family/c.opt:2337 +#: c-family/c.opt:2324 #, no-c-format msgid "" "Conform to the ISO 202X C standard draft with GNU extensions (experimental " "and incomplete support)." msgstr "" -#: c-family/c.opt:2341 c-family/c.opt:2345 +#: c-family/c.opt:2328 c-family/c.opt:2332 #, no-c-format msgid "Conform to the ISO 1990 C standard with GNU extensions." msgstr "" -#: c-family/c.opt:2349 +#: c-family/c.opt:2336 #, no-c-format msgid "Conform to the ISO 1999 C standard with GNU extensions." msgstr "" -#: c-family/c.opt:2353 +#: c-family/c.opt:2340 #, no-c-format msgid "Deprecated in favor of -std=gnu99." msgstr "" -#: c-family/c.opt:2361 +#: c-family/c.opt:2348 #, no-c-format msgid "Conform to the ISO 1990 C standard as amended in 1994." msgstr "" -#: c-family/c.opt:2369 +#: c-family/c.opt:2356 #, no-c-format msgid "Deprecated in favor of -std=iso9899:1999." msgstr "" -#: c-family/c.opt:2385 +#: c-family/c.opt:2372 #, no-c-format msgid "" "-stdlib=[libstdc++|libc++]\tThe standard library to be used for C++ headers " "and runtime." msgstr "" -#: c-family/c.opt:2402 +#: c-family/c.opt:2389 #, no-c-format msgid "Enable traditional preprocessing." msgstr "" -#: c-family/c.opt:2406 +#: c-family/c.opt:2393 #, no-c-format msgid "-trigraphs\tSupport ISO C trigraphs." msgstr "" -#: c-family/c.opt:2410 +#: c-family/c.opt:2397 #, no-c-format msgid "Do not predefine system-specific and GCC-specific macros." msgstr "" @@ -8287,6 +8280,11 @@ msgid "" "<ident>." msgstr "" +#: d/lang.opt:326 +#, no-c-format +msgid "Emit template instantiations as weak symbols." +msgstr "" + #: d/lang.opt:346 #, no-c-format msgid "Do not link the standard D library in the compilation." @@ -9672,72 +9670,84 @@ msgstr "" msgid "Support TLS segment larger than 64K." msgstr "" -#: config/riscv/riscv.opt:26 +#: config/riscv/riscv.opt:26 config/aarch64/aarch64.opt:68 +#: config/arm/arm.opt:90 config/microblaze/microblaze.opt:60 +#, no-c-format +msgid "Assume target CPU is configured as big endian." +msgstr "" + +#: config/riscv/riscv.opt:30 config/aarch64/aarch64.opt:88 +#: config/arm/arm.opt:155 config/microblaze/microblaze.opt:64 +#, no-c-format +msgid "Assume target CPU is configured as little endian." +msgstr "" + +#: config/riscv/riscv.opt:34 #, no-c-format msgid "-mbranch-cost=N\tSet the cost of branches to roughly N instructions." msgstr "" -#: config/riscv/riscv.opt:30 +#: config/riscv/riscv.opt:38 #, no-c-format msgid "When generating -fpic code, allow the use of PLTs. Ignored for fno-pic." msgstr "" -#: config/riscv/riscv.opt:34 +#: config/riscv/riscv.opt:42 #, no-c-format msgid "Specify integer and floating-point calling convention." msgstr "" -#: config/riscv/riscv.opt:38 config/i386/i386.opt:421 +#: config/riscv/riscv.opt:46 config/i386/i386.opt:421 #, no-c-format msgid "Attempt to keep stack aligned to this power of 2." msgstr "" -#: config/riscv/riscv.opt:42 +#: config/riscv/riscv.opt:50 #, no-c-format msgid "Supported ABIs (for use with the -mabi= option):" msgstr "" -#: config/riscv/riscv.opt:67 +#: config/riscv/riscv.opt:75 #, no-c-format msgid "Use hardware floating-point divide and square root instructions." msgstr "" -#: config/riscv/riscv.opt:71 +#: config/riscv/riscv.opt:79 #, no-c-format msgid "Use hardware instructions for integer division." msgstr "" -#: config/riscv/riscv.opt:75 +#: config/riscv/riscv.opt:83 #, no-c-format msgid "" "-march=\tGenerate code for given RISC-V ISA (e.g. RV64IM). ISA strings must " "be lower-case." msgstr "" -#: config/riscv/riscv.opt:80 config/mips/mips.opt:405 +#: config/riscv/riscv.opt:88 config/mips/mips.opt:405 #, no-c-format msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR." msgstr "" -#: config/riscv/riscv.opt:84 +#: config/riscv/riscv.opt:92 #, no-c-format msgid "" "-mcpu=PROCESSOR\tUse architecture of and optimize the output for PROCESSOR." msgstr "" -#: config/riscv/riscv.opt:88 +#: config/riscv/riscv.opt:96 #, no-c-format msgid "" "-msmall-data-limit=N\tPut global and static data smaller than <number> bytes " "into a special section (on some targets)." msgstr "" -#: config/riscv/riscv.opt:92 +#: config/riscv/riscv.opt:100 #, no-c-format msgid "Use smaller but slower prologue and epilogue code." msgstr "" -#: config/riscv/riscv.opt:96 +#: config/riscv/riscv.opt:104 #, no-c-format msgid "" "Convert BASE + LARGE_OFFSET addresses to NEW_BASE + SMALL_OFFSET to allow " @@ -9745,80 +9755,80 @@ msgid "" "targets 32-bit integer load/stores." msgstr "" -#: config/riscv/riscv.opt:102 config/aarch64/aarch64.opt:92 +#: config/riscv/riscv.opt:110 config/aarch64/aarch64.opt:92 #, no-c-format msgid "Specify the code model." msgstr "" -#: config/riscv/riscv.opt:106 +#: config/riscv/riscv.opt:114 #, no-c-format msgid "Do not generate unaligned memory accesses." msgstr "" -#: config/riscv/riscv.opt:110 config/i386/i386.opt:293 +#: config/riscv/riscv.opt:118 config/i386/i386.opt:293 #: config/rs6000/aix64.opt:36 config/rs6000/linux64.opt:32 #: config/tilegx/tilegx.opt:57 #, no-c-format msgid "Known code models (for use with the -mcmodel= option):" msgstr "" -#: config/riscv/riscv.opt:120 +#: config/riscv/riscv.opt:128 #, no-c-format msgid "Use %reloc() operators, rather than assembly macros, to load addresses." msgstr "" -#: config/riscv/riscv.opt:124 +#: config/riscv/riscv.opt:132 #, no-c-format msgid "" "Take advantage of linker relaxations to reduce the number of instructions " "required to materialize symbol addresses." msgstr "" -#: config/riscv/riscv.opt:143 +#: config/riscv/riscv.opt:151 #, no-c-format msgid "Emit RISC-V ELF attribute." msgstr "" -#: config/riscv/riscv.opt:147 config/i386/i386.opt:246 +#: config/riscv/riscv.opt:155 config/i386/i386.opt:246 #, no-c-format msgid "Use the given data alignment." msgstr "" -#: config/riscv/riscv.opt:151 config/i386/i386.opt:250 +#: config/riscv/riscv.opt:159 config/i386/i386.opt:250 #, no-c-format msgid "Known data alignment choices (for use with the -malign-data= option):" msgstr "" -#: config/riscv/riscv.opt:161 config/aarch64/aarch64.opt:235 +#: config/riscv/riscv.opt:169 config/aarch64/aarch64.opt:235 #: config/i386/i386.opt:995 config/rs6000/rs6000.opt:570 #, no-c-format msgid "Use given stack-protector guard." msgstr "" -#: config/riscv/riscv.opt:165 config/aarch64/aarch64.opt:239 +#: config/riscv/riscv.opt:173 config/aarch64/aarch64.opt:239 #: config/rs6000/rs6000.opt:574 #, no-c-format msgid "Valid arguments to -mstack-protector-guard=:" msgstr "" -#: config/riscv/riscv.opt:175 config/i386/i386.opt:1009 +#: config/riscv/riscv.opt:183 config/i386/i386.opt:1009 #: config/rs6000/rs6000.opt:584 #, no-c-format msgid "Use the given base register for addressing the stack-protector guard." msgstr "" -#: config/riscv/riscv.opt:182 config/i386/i386.opt:1016 +#: config/riscv/riscv.opt:190 config/i386/i386.opt:1016 #: config/rs6000/rs6000.opt:591 #, no-c-format msgid "Use the given offset for addressing the stack-protector guard." msgstr "" -#: config/riscv/riscv.opt:192 +#: config/riscv/riscv.opt:200 #, no-c-format msgid "Supported ISA specs (for use with the -misa-spec= option):" msgstr "" -#: config/riscv/riscv.opt:205 +#: config/riscv/riscv.opt:213 #, no-c-format msgid "Set the version of RISC-V ISA spec." msgstr "" @@ -9980,12 +9990,6 @@ msgstr "" msgid "The code model option names for -mcmodel:" msgstr "" -#: config/aarch64/aarch64.opt:68 config/arm/arm.opt:90 -#: config/microblaze/microblaze.opt:60 -#, no-c-format -msgid "Assume target CPU is configured as big endian." -msgstr "" - #: config/aarch64/aarch64.opt:72 config/i386/i386.opt:1030 #, no-c-format msgid "Generate code which uses only the general registers." @@ -10006,12 +10010,6 @@ msgstr "" msgid "Workaround for ARM Cortex-A53 Erratum number 843419." msgstr "" -#: config/aarch64/aarch64.opt:88 config/arm/arm.opt:155 -#: config/microblaze/microblaze.opt:64 -#, no-c-format -msgid "Assume target CPU is configured as little endian." -msgstr "" - #: config/aarch64/aarch64.opt:96 #, no-c-format msgid "Don't assume that unaligned accesses are handled by the system." @@ -17654,341 +17652,341 @@ msgstr "" msgid "-dumpdir <dir>\tSet the directory name to be used for dumps." msgstr "" -#: common.opt:970 +#: common.opt:974 #, no-c-format msgid "The version of the C++ ABI in use." msgstr "" -#: common.opt:974 +#: common.opt:978 #, no-c-format msgid "Aggressively optimize loops using language constraints." msgstr "" -#: common.opt:978 +#: common.opt:982 #, no-c-format msgid "Align the start of functions." msgstr "" -#: common.opt:988 +#: common.opt:992 #, no-c-format msgid "Align labels which are only reached by jumping." msgstr "" -#: common.opt:995 +#: common.opt:999 #, no-c-format msgid "Align all labels." msgstr "" -#: common.opt:1002 +#: common.opt:1006 #, no-c-format msgid "Align the start of loops." msgstr "" -#: common.opt:1009 +#: common.opt:1013 #, no-c-format msgid "Allow the compiler to introduce new data races on stores." msgstr "" -#: common.opt:1013 +#: common.opt:1017 #, no-c-format msgid "Enable static analysis pass." msgstr "" -#: common.opt:1033 +#: common.opt:1037 #, no-c-format msgid "Select what to sanitize." msgstr "" -#: common.opt:1037 +#: common.opt:1041 #, no-c-format msgid "Select type of coverage sanitization." msgstr "" -#: common.opt:1041 +#: common.opt:1045 #, no-c-format msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset." msgstr "" -#: common.opt:1045 +#: common.opt:1049 #, no-c-format msgid "" "-fsanitize-sections=<sec1,sec2,...>\tSanitize global variables in user-" "defined sections." msgstr "" -#: common.opt:1050 +#: common.opt:1054 #, no-c-format msgid "After diagnosing undefined behavior attempt to continue execution." msgstr "" -#: common.opt:1054 +#: common.opt:1058 #, no-c-format msgid "This switch is deprecated; use -fsanitize-recover= instead." msgstr "" -#: common.opt:1061 +#: common.opt:1065 #, no-c-format msgid "" "Use trap instead of a library function for undefined behavior sanitization." msgstr "" -#: common.opt:1065 +#: common.opt:1069 #, no-c-format msgid "Generate unwind tables that are exact at each instruction boundary." msgstr "" -#: common.opt:1069 +#: common.opt:1073 #, no-c-format msgid "Generate auto-inc/dec instructions." msgstr "" -#: common.opt:1073 +#: common.opt:1077 #, no-c-format msgid "" "Use sample profile information for call graph node weights. The default " "profile file is fbdata.afdo in 'pwd'." msgstr "" -#: common.opt:1078 +#: common.opt:1082 #, no-c-format msgid "" "Use sample profile information for call graph node weights. The profile file " "is specified in the argument." msgstr "" -#: common.opt:1087 +#: common.opt:1091 #, no-c-format msgid "Generate code to check bounds before indexing arrays." msgstr "" -#: common.opt:1091 +#: common.opt:1095 #, no-c-format msgid "Replace add, compare, branch with branch on count register." msgstr "" -#: common.opt:1095 +#: common.opt:1099 #, no-c-format msgid "Use profiling information for branch probabilities." msgstr "" -#: common.opt:1111 +#: common.opt:1115 #, no-c-format msgid "Output callgraph information on a per-file basis." msgstr "" -#: common.opt:1115 +#: common.opt:1119 #, no-c-format msgid "Output callgraph information on a per-file basis with decorations." msgstr "" -#: common.opt:1119 +#: common.opt:1123 #, no-c-format msgid "" "-fcall-saved-<register>\tMark <register> as being preserved across functions." msgstr "" -#: common.opt:1123 +#: common.opt:1127 #, no-c-format msgid "" "-fcall-used-<register>\tMark <register> as being corrupted by function calls." msgstr "" -#: common.opt:1130 +#: common.opt:1134 #, no-c-format msgid "Save registers around function calls." msgstr "" -#: common.opt:1134 +#: common.opt:1138 #, no-c-format msgid "This switch is deprecated; do not use." msgstr "" -#: common.opt:1138 +#: common.opt:1142 #, no-c-format msgid "Check the return value of new in C++." msgstr "" -#: common.opt:1142 common.opt:1146 +#: common.opt:1146 common.opt:1150 #, no-c-format msgid "Perform internal consistency checkings." msgstr "" -#: common.opt:1150 +#: common.opt:1154 #, no-c-format msgid "Enable code hoisting." msgstr "" -#: common.opt:1154 +#: common.opt:1158 #, no-c-format msgid "" "Looks for opportunities to reduce stack adjustments and stack references." msgstr "" -#: common.opt:1158 +#: common.opt:1162 #, no-c-format msgid "Put uninitialized globals in the common section." msgstr "" -#: common.opt:1166 +#: common.opt:1170 #, no-c-format msgid "" "-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and " "compare the final-insns dump." msgstr "" -#: common.opt:1170 +#: common.opt:1174 #, no-c-format msgid "Run only the second compilation of -fcompare-debug." msgstr "" -#: common.opt:1174 +#: common.opt:1178 #, no-c-format msgid "Perform comparison elimination after register allocation has finished." msgstr "" -#: common.opt:1178 +#: common.opt:1182 #, no-c-format msgid "Do not perform optimizations increasing noticeably stack usage." msgstr "" -#: common.opt:1182 +#: common.opt:1186 #, no-c-format msgid "Perform a register copy-propagation optimization pass." msgstr "" -#: common.opt:1186 +#: common.opt:1190 #, no-c-format msgid "Perform cross-jumping optimization." msgstr "" -#: common.opt:1190 +#: common.opt:1194 #, no-c-format msgid "When running CSE, follow jumps to their targets." msgstr "" -#: common.opt:1198 +#: common.opt:1202 #, no-c-format msgid "Omit range reduction step when performing complex division." msgstr "" -#: common.opt:1202 +#: common.opt:1206 #, no-c-format msgid "Complex multiplication and division follow Fortran rules." msgstr "" -#: common.opt:1206 +#: common.opt:1210 #, no-c-format msgid "Place data items into their own section." msgstr "" -#: common.opt:1210 +#: common.opt:1214 #, no-c-format msgid "List all available debugging counters with their limits and counts." msgstr "" -#: common.opt:1214 +#: common.opt:1218 #, no-c-format msgid "" "-fdbg-cnt=<counter>[:<lower_limit1>-]<upper_limit1>[:<lower_limit2>-" "<upper_limit2>:...][,<counter>:...]\tSet the debug counter limit." msgstr "" -#: common.opt:1218 +#: common.opt:1222 #, no-c-format msgid "" "-fdebug-prefix-map=<old>=<new>\tMap one directory name to another in debug " "information." msgstr "" -#: common.opt:1222 +#: common.opt:1226 #, no-c-format msgid "" "-ffile-prefix-map=<old>=<new>\tMap one directory name to another in " "compilation result." msgstr "" -#: common.opt:1226 +#: common.opt:1230 #, no-c-format msgid "Output .debug_types section when using DWARF v4 debuginfo." msgstr "" -#: common.opt:1232 +#: common.opt:1236 #, no-c-format msgid "Defer popping functions args from stack until later." msgstr "" -#: common.opt:1236 +#: common.opt:1240 #, no-c-format msgid "Attempt to fill delay slots of branch instructions." msgstr "" -#: common.opt:1240 +#: common.opt:1244 #, no-c-format msgid "Delete dead instructions that may throw exceptions." msgstr "" -#: common.opt:1244 +#: common.opt:1248 #, no-c-format msgid "Delete useless null pointer checks." msgstr "" -#: common.opt:1248 +#: common.opt:1252 #, no-c-format msgid "" "Stream extra data to support more aggressive devirtualization in LTO local " "transformation mode." msgstr "" -#: common.opt:1252 +#: common.opt:1256 #, no-c-format msgid "Perform speculative devirtualization." msgstr "" -#: common.opt:1256 +#: common.opt:1260 #, no-c-format msgid "Try to convert virtual calls to direct ones." msgstr "" -#: common.opt:1260 +#: common.opt:1264 #, no-c-format msgid "" "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source " "location at the beginning of line-wrapped diagnostics." msgstr "" -#: common.opt:1277 +#: common.opt:1281 #, no-c-format msgid "Show the source line with a caret indicating the column." msgstr "" -#: common.opt:1281 +#: common.opt:1285 #, no-c-format msgid "Show labels annotating ranges of source code when showing source." msgstr "" -#: common.opt:1285 +#: common.opt:1289 #, no-c-format msgid "Show line numbers in the left margin when showing source." msgstr "" -#: common.opt:1293 +#: common.opt:1297 #, no-c-format msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics." msgstr "" -#: common.opt:1313 +#: common.opt:1317 #, no-c-format msgid "-fdiagnostics-urls=[never|always|auto]\tEmbed URLs in diagnostics." msgstr "" -#: common.opt:1333 +#: common.opt:1337 #, no-c-format msgid "" "-fdiagnostics-column-unit=[display|byte]\tSelect whether column numbers are " "output as display columns (default) or raw bytes." msgstr "" -#: common.opt:1337 +#: common.opt:1341 #, no-c-format msgid "" "-fdiagnostics-column-origin=<number>\tSet the number of the first column. " @@ -17996,425 +17994,425 @@ msgid "" "based, for example." msgstr "" -#: common.opt:1341 +#: common.opt:1345 #, no-c-format msgid "-fdiagnostics-format=[text|json]\tSelect output format." msgstr "" -#: common.opt:1367 +#: common.opt:1371 #, no-c-format msgid "Print fix-it hints in machine-readable form." msgstr "" -#: common.opt:1371 +#: common.opt:1375 #, no-c-format msgid "Print fix-it hints to stderr in unified diff format." msgstr "" -#: common.opt:1375 +#: common.opt:1379 #, no-c-format msgid "" "Amend appropriate diagnostic messages with the command line option that " "controls them." msgstr "" -#: common.opt:1379 +#: common.opt:1383 #, no-c-format msgid "Print CWE identifiers for diagnostic messages, where available." msgstr "" -#: common.opt:1383 +#: common.opt:1387 #, no-c-format msgid "" "Specify how to print any control-flow path associated with a diagnostic." msgstr "" -#: common.opt:1387 +#: common.opt:1391 #, no-c-format msgid "" "Turn off any diagnostics features that complicate the output, such as line " "numbers, color, and warning URLs." msgstr "" -#: common.opt:1391 +#: common.opt:1395 #, no-c-format msgid "" "-ftabstop=<number> Distance between tab stops for column reporting." msgstr "" -#: common.opt:1407 +#: common.opt:1411 #, no-c-format msgid "Show stack depths of events in paths." msgstr "" -#: common.opt:1411 +#: common.opt:1415 #, no-c-format msgid "Set minimum width of left margin of source code when showing source." msgstr "" -#: common.opt:1415 +#: common.opt:1419 #, no-c-format msgid "" "-fdisable-[tree|rtl|ipa]-<pass>=range1+range2\tDisable an optimization pass." msgstr "" -#: common.opt:1419 +#: common.opt:1423 #, no-c-format msgid "" "-fenable-[tree|rtl|ipa]-<pass>=range1+range2\tEnable an optimization pass." msgstr "" -#: common.opt:1423 +#: common.opt:1427 #, no-c-format msgid "-fdump-<type>\tDump various compiler internals to a file." msgstr "" -#: common.opt:1430 +#: common.opt:1434 #, no-c-format msgid "" "-fdump-final-insns=filename\tDump to filename the insns at the end of " "translation." msgstr "" -#: common.opt:1434 +#: common.opt:1438 #, no-c-format msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code." msgstr "" -#: common.opt:1438 +#: common.opt:1442 #, no-c-format msgid "Suppress output of addresses in debugging dumps." msgstr "" -#: common.opt:1442 +#: common.opt:1446 #, no-c-format msgid "" "Collect and dump debug information into temporary file if ICE in C/C++ " "compiler occurred." msgstr "" -#: common.opt:1447 +#: common.opt:1451 #, no-c-format msgid "" "Dump detailed information on GCC's internal representation of source code " "locations." msgstr "" -#: common.opt:1451 +#: common.opt:1455 #, no-c-format msgid "Dump optimization passes." msgstr "" -#: common.opt:1455 +#: common.opt:1459 #, no-c-format msgid "" "Suppress output of instruction numbers, line number notes and addresses in " "debugging dumps." msgstr "" -#: common.opt:1459 +#: common.opt:1463 #, no-c-format msgid "Suppress output of previous and next insn numbers in debugging dumps." msgstr "" -#: common.opt:1463 +#: common.opt:1467 #, no-c-format msgid "Enable CFI tables via GAS assembler directives." msgstr "" -#: common.opt:1467 +#: common.opt:1471 #, no-c-format msgid "Perform early inlining." msgstr "" -#: common.opt:1475 +#: common.opt:1479 #, no-c-format msgid "Perform interprocedural reduction of aggregates." msgstr "" -#: common.opt:1479 +#: common.opt:1483 #, no-c-format msgid "Perform unused symbol elimination in debug info." msgstr "" -#: common.opt:1483 +#: common.opt:1487 #, no-c-format msgid "Perform unused type elimination in debug info." msgstr "" -#: common.opt:1487 +#: common.opt:1491 #, no-c-format msgid "Do not suppress C++ class debug information." msgstr "" -#: common.opt:1491 +#: common.opt:1495 #, no-c-format msgid "Enable exception handling." msgstr "" -#: common.opt:1495 +#: common.opt:1499 #, no-c-format msgid "Perform a number of minor, expensive optimizations." msgstr "" -#: common.opt:1499 +#: common.opt:1503 #, no-c-format msgid "" "-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-" "point precision." msgstr "" -#: common.opt:1514 +#: common.opt:1518 #, no-c-format msgid "" "-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of " "FLT_EVAL_METHOD are permitted." msgstr "" -#: common.opt:1530 +#: common.opt:1534 #, no-c-format msgid "" "Output lto objects containing both the intermediate language and binary " "output." msgstr "" -#: common.opt:1534 +#: common.opt:1538 #, no-c-format msgid "Assume no NaNs or infinities are generated." msgstr "" -#: common.opt:1538 +#: common.opt:1542 #, no-c-format msgid "" "Assume that loops with an exit will terminate and not loop indefinitely." msgstr "" -#: common.opt:1542 +#: common.opt:1546 #, no-c-format msgid "" "-ffixed-<register>\tMark <register> as being unavailable to the compiler." msgstr "" -#: common.opt:1546 +#: common.opt:1550 #, no-c-format msgid "Don't allocate floats and doubles in extended-precision registers." msgstr "" -#: common.opt:1554 +#: common.opt:1558 #, no-c-format msgid "Perform a forward propagation pass on RTL." msgstr "" -#: common.opt:1558 +#: common.opt:1562 #, no-c-format msgid "" "-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction." msgstr "" -#: common.opt:1575 +#: common.opt:1579 #, no-c-format msgid "" "Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" " "exceptions." msgstr "" -#: common.opt:1582 +#: common.opt:1586 #, no-c-format msgid "Allow function addresses to be held in registers." msgstr "" -#: common.opt:1586 +#: common.opt:1590 #, no-c-format msgid "Place each function into its own section." msgstr "" -#: common.opt:1590 +#: common.opt:1594 #, no-c-format msgid "Perform global common subexpression elimination." msgstr "" -#: common.opt:1594 +#: common.opt:1598 #, no-c-format msgid "" "Perform enhanced load motion during global common subexpression elimination." msgstr "" -#: common.opt:1598 +#: common.opt:1602 #, no-c-format msgid "Perform store motion after global common subexpression elimination." msgstr "" -#: common.opt:1602 +#: common.opt:1606 #, no-c-format msgid "" "Perform redundant load after store elimination in global common " "subexpression elimination." msgstr "" -#: common.opt:1607 +#: common.opt:1611 #, no-c-format msgid "" "Perform global common subexpression elimination after register allocation " "has finished." msgstr "" -#: common.opt:1624 +#: common.opt:1628 #, 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:1629 +#: common.opt:1633 #, no-c-format msgid "Enable in and out of Graphite representation." msgstr "" -#: common.opt:1633 +#: common.opt:1637 #, no-c-format msgid "Enable Graphite Identity transformation." msgstr "" -#: common.opt:1637 +#: common.opt:1641 #, no-c-format msgid "" "Enable hoisting adjacent loads to encourage generating conditional move " "instructions." msgstr "" -#: common.opt:1646 +#: common.opt:1650 #, 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:1651 +#: common.opt:1655 #, no-c-format msgid "Mark all loops as parallel." msgstr "" -#: common.opt:1655 common.opt:1663 common.opt:2827 +#: common.opt:1659 common.opt:1667 common.opt:2831 #, no-c-format msgid "Enable loop nest transforms. Same as -floop-nest-optimize." msgstr "" -#: common.opt:1659 +#: common.opt:1663 #, no-c-format msgid "Enable loop interchange on trees." msgstr "" -#: common.opt:1667 +#: common.opt:1671 #, no-c-format msgid "Perform unroll-and-jam on loops." msgstr "" -#: common.opt:1671 +#: common.opt:1675 #, no-c-format msgid "Enable support for GNU transactional memory." msgstr "" -#: common.opt:1675 +#: common.opt:1679 #, no-c-format msgid "Use STB_GNU_UNIQUE if supported by the assembler." msgstr "" -#: common.opt:1683 +#: common.opt:1687 #, no-c-format msgid "Enable the loop nest optimizer." msgstr "" -#: common.opt:1687 +#: common.opt:1691 #, no-c-format msgid "Force bitfield accesses to match their type width." msgstr "" -#: common.opt:1691 +#: common.opt:1695 #, no-c-format msgid "Merge adjacent stores." msgstr "" -#: common.opt:1695 +#: common.opt:1699 #, no-c-format msgid "Enable guessing of branch probabilities." msgstr "" -#: common.opt:1703 +#: common.opt:1707 #, no-c-format msgid "Process #ident directives." msgstr "" -#: common.opt:1707 +#: common.opt:1711 #, no-c-format msgid "Perform conversion of conditional jumps to branchless equivalents." msgstr "" -#: common.opt:1711 +#: common.opt:1715 #, no-c-format msgid "Perform conversion of conditional jumps to conditional execution." msgstr "" -#: common.opt:1715 +#: common.opt:1719 #, no-c-format msgid "" "-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local " "variables." msgstr "" -#: common.opt:1731 +#: common.opt:1735 #, no-c-format msgid "Convert conditional jumps in innermost loops to branchless equivalents." msgstr "" -#: common.opt:1743 +#: common.opt:1747 #, no-c-format msgid "Do not generate .size directives." msgstr "" -#: common.opt:1747 +#: common.opt:1751 #, no-c-format msgid "Perform indirect inlining." msgstr "" -#: common.opt:1753 +#: common.opt:1757 #, no-c-format msgid "" "Enable inlining of function declared \"inline\", disabling disables all " "inlining." msgstr "" -#: common.opt:1757 +#: common.opt:1761 #, no-c-format msgid "" "Integrate functions into their callers when code size is known not to grow." msgstr "" -#: common.opt:1761 +#: common.opt:1765 #, no-c-format msgid "" "Integrate functions not declared \"inline\" into their callers when " "profitable." msgstr "" -#: common.opt:1765 +#: common.opt:1769 #, no-c-format msgid "Integrate functions only required by their single caller." msgstr "" -#: common.opt:1772 +#: common.opt:1776 #, no-c-format msgid "" "-finline-limit=<number>\tLimit the size of inlined functions to <number>." msgstr "" -#: common.opt:1776 +#: common.opt:1780 #, no-c-format msgid "" "Inline __atomic operations when a lock free instruction sequence is " "available." msgstr "" -#: common.opt:1783 +#: common.opt:1787 #, no-c-format msgid "" "-fcf-protection=[full|branch|return|none|check]\tInstrument functions with " @@ -18422,567 +18420,567 @@ msgid "" "valid targets." msgstr "" -#: common.opt:1806 +#: common.opt:1810 #, no-c-format msgid "Instrument function entry and exit with profiling calls." msgstr "" -#: common.opt:1810 +#: common.opt:1814 #, no-c-format msgid "" "-finstrument-functions-exclude-function-list=name,...\tDo not instrument " "listed functions." msgstr "" -#: common.opt:1814 +#: common.opt:1818 #, no-c-format msgid "" "-finstrument-functions-exclude-file-list=filename,...\tDo not instrument " "functions listed in files." msgstr "" -#: common.opt:1818 +#: common.opt:1822 #, no-c-format msgid "Perform interprocedural constant propagation." msgstr "" -#: common.opt:1822 +#: common.opt:1826 #, no-c-format msgid "Perform cloning to make Interprocedural constant propagation stronger." msgstr "" -#: common.opt:1830 +#: common.opt:1834 #, no-c-format msgid "Perform interprocedural bitwise constant propagation." msgstr "" -#: common.opt:1834 +#: common.opt:1838 #, no-c-format msgid "Perform interprocedural modref analysis." msgstr "" -#: common.opt:1838 +#: common.opt:1842 #, no-c-format msgid "Perform interprocedural profile propagation." msgstr "" -#: common.opt:1842 +#: common.opt:1846 #, no-c-format msgid "Perform interprocedural points-to analysis." msgstr "" -#: common.opt:1846 +#: common.opt:1850 #, no-c-format msgid "Discover pure and const functions." msgstr "" -#: common.opt:1850 +#: common.opt:1854 #, no-c-format msgid "Perform Identical Code Folding for functions and read-only variables." msgstr "" -#: common.opt:1854 +#: common.opt:1858 #, no-c-format msgid "Perform Identical Code Folding for functions." msgstr "" -#: common.opt:1858 +#: common.opt:1862 #, no-c-format msgid "Perform Identical Code Folding for variables." msgstr "" -#: common.opt:1862 +#: common.opt:1866 #, no-c-format msgid "Discover read-only and non addressable static variables." msgstr "" -#: common.opt:1866 +#: common.opt:1870 #, no-c-format msgid "Discover read-only, write-only and non-addressable static variables." msgstr "" -#: common.opt:1870 +#: common.opt:1874 #, no-c-format msgid "Reduce stack alignment on call sites if possible." msgstr "" -#: common.opt:1882 +#: common.opt:1886 #, no-c-format msgid "Perform IPA Value Range Propagation." msgstr "" -#: common.opt:1886 +#: common.opt:1890 #, no-c-format msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm." msgstr "" -#: common.opt:1899 +#: common.opt:1903 #, no-c-format msgid "-fira-region=[one|all|mixed]\tSet regions for IRA." msgstr "" -#: common.opt:1915 +#: common.opt:1919 #, no-c-format msgid "Use IRA based register pressure calculation in RTL hoist optimizations." msgstr "" -#: common.opt:1920 +#: common.opt:1924 #, no-c-format msgid "Use IRA based register pressure calculation in RTL loop optimizations." msgstr "" -#: common.opt:1925 +#: common.opt:1929 #, no-c-format msgid "Share slots for saving different hard registers." msgstr "" -#: common.opt:1929 +#: common.opt:1933 #, no-c-format msgid "Share stack slots for spilled pseudo-registers." msgstr "" -#: common.opt:1933 +#: common.opt:1937 #, no-c-format msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages." msgstr "" -#: common.opt:1937 +#: common.opt:1941 #, no-c-format msgid "Optimize induction variables on trees." msgstr "" -#: common.opt:1941 +#: common.opt:1945 #, no-c-format msgid "Use jump tables for sufficiently large switch statements." msgstr "" -#: common.opt:1945 +#: common.opt:1949 #, no-c-format msgid "Use bit tests for sufficiently large switch statements." msgstr "" -#: common.opt:1949 +#: common.opt:1953 #, no-c-format msgid "Generate code for functions even if they are fully inlined." msgstr "" -#: common.opt:1953 +#: common.opt:1957 #, no-c-format msgid "Generate code for static functions even if they are never called." msgstr "" -#: common.opt:1957 +#: common.opt:1961 #, no-c-format msgid "Emit static const variables even if they are not used." msgstr "" -#: common.opt:1961 +#: common.opt:1965 #, no-c-format msgid "Give external symbols a leading underscore." msgstr "" -#: common.opt:1969 +#: common.opt:1973 #, no-c-format msgid "Do CFG-sensitive rematerialization in LRA." msgstr "" -#: common.opt:1973 +#: common.opt:1977 #, no-c-format msgid "Enable link-time optimization." msgstr "" -#: common.opt:1977 +#: common.opt:1981 #, no-c-format msgid "Link-time optimization with number of parallel jobs or jobserver." msgstr "" -#: common.opt:1999 +#: common.opt:2003 #, no-c-format msgid "Specify the algorithm to partition symbols and vars at linktime." msgstr "" -#: common.opt:2004 +#: common.opt:2008 #, no-c-format msgid "" "-flto-compression-level=<number>\tUse zlib/zstd compression level <number> " "for IL." msgstr "" -#: common.opt:2012 +#: common.opt:2016 #, no-c-format msgid "Report various link-time optimization statistics." msgstr "" -#: common.opt:2016 +#: common.opt:2020 #, no-c-format msgid "Report various link-time optimization statistics for WPA only." msgstr "" -#: common.opt:2020 +#: common.opt:2024 #, no-c-format msgid "Set errno after built-in math functions." msgstr "" -#: common.opt:2024 +#: common.opt:2028 #, no-c-format msgid "-fmax-errors=<number>\tMaximum number of errors to report." msgstr "" -#: common.opt:2028 +#: common.opt:2032 #, no-c-format msgid "Report on permanent memory allocation." msgstr "" -#: common.opt:2032 +#: common.opt:2036 #, no-c-format msgid "Report on permanent memory allocation in WPA only." msgstr "" -#: common.opt:2039 +#: common.opt:2043 #, no-c-format msgid "Attempt to merge identical constants and constant variables." msgstr "" -#: common.opt:2043 +#: common.opt:2047 #, no-c-format msgid "Attempt to merge identical constants across compilation units." msgstr "" -#: common.opt:2047 +#: common.opt:2051 #, no-c-format msgid "Attempt to merge identical debug strings across compilation units." msgstr "" -#: common.opt:2051 +#: common.opt:2055 #, no-c-format msgid "" "-fmessage-length=<number>\tLimit diagnostics to <number> characters per " "line. 0 suppresses line-wrapping." msgstr "" -#: common.opt:2055 +#: common.opt:2059 #, no-c-format msgid "Perform SMS based modulo scheduling before the first scheduling pass." msgstr "" -#: common.opt:2059 +#: common.opt:2063 #, no-c-format msgid "Perform SMS based modulo scheduling with register moves allowed." msgstr "" -#: common.opt:2063 +#: common.opt:2067 #, no-c-format msgid "Move loop invariant computations out of loops." msgstr "" -#: common.opt:2067 +#: common.opt:2071 #, no-c-format msgid "Use the RTL dead code elimination pass." msgstr "" -#: common.opt:2071 +#: common.opt:2075 #, no-c-format msgid "Use the RTL dead store elimination pass." msgstr "" -#: common.opt:2075 +#: common.opt:2079 #, no-c-format msgid "" "Enable/Disable the traditional scheduling in loops that already passed " "modulo scheduling." msgstr "" -#: common.opt:2079 +#: common.opt:2083 #, no-c-format msgid "Support synchronous non-call exceptions." msgstr "" -#: common.opt:2083 +#: common.opt:2087 #, no-c-format msgid "" "-foffload=<targets>=<options>\tSpecify offloading targets and options for " "them." msgstr "" -#: common.opt:2087 +#: common.opt:2091 #, no-c-format msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler." msgstr "" -#: common.opt:2100 +#: common.opt:2104 #, no-c-format msgid "When possible do not generate stack frames." msgstr "" -#: common.opt:2104 +#: common.opt:2108 #, no-c-format msgid "Enable all optimization info dumps on stderr." msgstr "" -#: common.opt:2108 +#: common.opt:2112 #, no-c-format msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details." msgstr "" -#: common.opt:2112 +#: common.opt:2116 #, no-c-format msgid "" "Write a SRCFILE.opt-record.json file detailing what optimizations were " "performed." msgstr "" -#: common.opt:2120 +#: common.opt:2124 #, no-c-format msgid "Optimize sibling and tail recursive calls." msgstr "" -#: common.opt:2124 +#: common.opt:2128 #, no-c-format msgid "Perform partial inlining." msgstr "" -#: common.opt:2128 common.opt:2132 +#: common.opt:2132 common.opt:2136 #, no-c-format msgid "Report on memory allocation before interprocedural optimization." msgstr "" -#: common.opt:2136 +#: common.opt:2140 #, no-c-format msgid "Pack structure members together without holes." msgstr "" -#: common.opt:2140 +#: common.opt:2144 #, no-c-format msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment." msgstr "" -#: common.opt:2144 +#: common.opt:2148 #, no-c-format msgid "Return small aggregates in memory, not registers." msgstr "" -#: common.opt:2148 +#: common.opt:2152 #, no-c-format msgid "Perform loop peeling." msgstr "" -#: common.opt:2152 +#: common.opt:2156 #, no-c-format msgid "Enable machine specific peephole optimizations." msgstr "" -#: common.opt:2156 +#: common.opt:2160 #, no-c-format msgid "Enable an RTL peephole pass before sched2." msgstr "" -#: common.opt:2160 +#: common.opt:2164 #, no-c-format msgid "Generate position-independent code if possible (large mode)." msgstr "" -#: common.opt:2164 +#: common.opt:2168 #, no-c-format msgid "" "Generate position-independent code for executables if possible (large mode)." msgstr "" -#: common.opt:2168 +#: common.opt:2172 #, no-c-format msgid "Generate position-independent code if possible (small mode)." msgstr "" -#: common.opt:2172 +#: common.opt:2176 #, no-c-format msgid "" "Generate position-independent code for executables if possible (small mode)." msgstr "" -#: common.opt:2176 +#: common.opt:2180 #, no-c-format msgid "" "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)." msgstr "" -#: common.opt:2180 +#: common.opt:2184 #, no-c-format msgid "Specify a plugin to load." msgstr "" -#: common.opt:2184 +#: common.opt:2188 #, no-c-format msgid "" "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for " "plugin <name>." msgstr "" -#: common.opt:2188 +#: common.opt:2192 #, no-c-format msgid "Run predictive commoning optimization." msgstr "" -#: common.opt:2192 +#: common.opt:2196 #, no-c-format msgid "Generate prefetch instructions, if available, for arrays in loops." msgstr "" -#: common.opt:2196 +#: common.opt:2200 #, no-c-format msgid "Enable basic program profiling code." msgstr "" -#: common.opt:2200 +#: common.opt:2204 #, no-c-format msgid "Generate absolute source path names for gcov." msgstr "" -#: common.opt:2204 +#: common.opt:2208 #, no-c-format msgid "Insert arc-based program profiling code." msgstr "" -#: common.opt:2208 +#: common.opt:2212 #, no-c-format msgid "" "Set the top-level directory for storing the profile data. The default is " "'pwd'." msgstr "" -#: common.opt:2213 +#: common.opt:2217 #, no-c-format msgid "Select the name for storing the profile note file." msgstr "" -#: common.opt:2217 +#: common.opt:2221 #, no-c-format msgid "Enable correction of flow inconsistent profile data input." msgstr "" -#: common.opt:2221 +#: common.opt:2225 #, no-c-format msgid "" "-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update " "method." msgstr "" -#: common.opt:2225 +#: common.opt:2229 #, no-c-format msgid "" "Instrument only functions from files whose name matches any of the regular " "expressions (separated by semi-colons)." msgstr "" -#: common.opt:2229 +#: common.opt:2233 #, 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:2245 +#: common.opt:2249 #, no-c-format msgid "" "-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level " "of reproducibility of profile gathered by -fprofile-generate." msgstr "" -#: common.opt:2261 +#: common.opt:2265 #, no-c-format msgid "" "Remove prefix from absolute path before mangling name for -fprofile-" "generate= and -fprofile-use=." msgstr "" -#: common.opt:2265 +#: common.opt:2269 #, no-c-format msgid "" "Enable common options for generating profile info for profile feedback " "directed optimizations." msgstr "" -#: common.opt:2269 +#: common.opt:2273 #, no-c-format msgid "" "Enable common options for generating profile info for profile feedback " "directed optimizations, and set -fprofile-dir=." msgstr "" -#: common.opt:2273 +#: common.opt:2277 #, no-c-format msgid "" "Register the profile information in the .gcov_info section instead of using " "a constructor/destructor." msgstr "" -#: common.opt:2277 +#: common.opt:2281 #, no-c-format msgid "" "Register the profile information in the specified section instead of using a " "constructor/destructor." msgstr "" -#: common.opt:2281 +#: common.opt:2285 #, no-c-format msgid "" "Do not assume that functions never executed during the train run are cold." msgstr "" -#: common.opt:2285 +#: common.opt:2289 #, no-c-format msgid "" "Enable common options for performing profile feedback directed optimizations." msgstr "" -#: common.opt:2289 +#: common.opt:2293 #, no-c-format msgid "" "Enable common options for performing profile feedback directed " "optimizations, and set -fprofile-dir=." msgstr "" -#: common.opt:2293 +#: common.opt:2297 #, no-c-format msgid "Insert code to profile values of expressions." msgstr "" -#: common.opt:2297 +#: common.opt:2301 #, no-c-format msgid "Report on consistency of profile." msgstr "" -#: common.opt:2301 +#: common.opt:2305 #, no-c-format msgid "Enable function reordering that improves code placement." msgstr "" -#: common.opt:2305 +#: common.opt:2309 #, no-c-format msgid "Insert NOP instructions at each function entry." msgstr "" -#: common.opt:2312 +#: common.opt:2316 #, no-c-format msgid "-frandom-seed=<string>\tMake compile reproducible using <string>." msgstr "" -#: common.opt:2322 +#: common.opt:2326 #, no-c-format msgid "Record gcc command line switches in the object file." msgstr "" -#: common.opt:2326 +#: common.opt:2330 #, no-c-format msgid "Return small aggregates in registers." msgstr "" -#: common.opt:2334 +#: common.opt:2338 #, 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:2345 +#: common.opt:2349 #, no-c-format msgid "" "-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations " @@ -18990,483 +18988,483 @@ msgid "" "multiple-level control on the enabled IPA optimizations." msgstr "" -#: common.opt:2360 +#: common.opt:2364 #, no-c-format msgid "Tell DCE to remove unused C++ allocations." msgstr "" -#: common.opt:2364 +#: common.opt:2368 #, no-c-format msgid "Relief of register pressure through live range shrinkage." msgstr "" -#: common.opt:2368 +#: common.opt:2372 #, no-c-format msgid "Perform a register renaming optimization pass." msgstr "" -#: common.opt:2372 +#: common.opt:2376 #, no-c-format msgid "Perform a target dependent instruction fusion optimization pass." msgstr "" -#: common.opt:2376 +#: common.opt:2380 #, no-c-format msgid "Reorder basic blocks to improve code placement." msgstr "" -#: common.opt:2380 +#: common.opt:2384 #, no-c-format msgid "" "-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering " "algorithm." msgstr "" -#: common.opt:2393 +#: common.opt:2397 #, no-c-format msgid "Reorder basic blocks and partition into hot and cold sections." msgstr "" -#: common.opt:2397 +#: common.opt:2401 #, no-c-format msgid "Reorder functions to improve code placement." msgstr "" -#: common.opt:2401 +#: common.opt:2405 #, no-c-format msgid "Add a common subexpression elimination pass after loop optimizations." msgstr "" -#: common.opt:2409 +#: common.opt:2413 #, no-c-format msgid "Disable optimizations that assume default FP rounding behavior." msgstr "" -#: common.opt:2413 +#: common.opt:2417 #, no-c-format msgid "Enable scheduling across basic blocks." msgstr "" -#: common.opt:2417 +#: common.opt:2421 #, no-c-format msgid "Enable register pressure sensitive insn scheduling." msgstr "" -#: common.opt:2421 +#: common.opt:2425 #, no-c-format msgid "Allow speculative motion of non-loads." msgstr "" -#: common.opt:2425 +#: common.opt:2429 #, no-c-format msgid "Allow speculative motion of some loads." msgstr "" -#: common.opt:2429 +#: common.opt:2433 #, no-c-format msgid "Allow speculative motion of more loads." msgstr "" -#: common.opt:2433 +#: common.opt:2437 #, no-c-format msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler." msgstr "" -#: common.opt:2437 +#: common.opt:2441 #, no-c-format msgid "If scheduling post reload, do superblock scheduling." msgstr "" -#: common.opt:2445 +#: common.opt:2449 #, no-c-format msgid "Reschedule instructions before register allocation." msgstr "" -#: common.opt:2449 +#: common.opt:2453 #, no-c-format msgid "Reschedule instructions after register allocation." msgstr "" -#: common.opt:2456 +#: common.opt:2460 #, no-c-format msgid "Schedule instructions using selective scheduling algorithm." msgstr "" -#: common.opt:2460 +#: common.opt:2464 #, no-c-format msgid "Run selective scheduling after reload." msgstr "" -#: common.opt:2464 +#: common.opt:2468 #, no-c-format msgid "Run self-tests, using the given path to locate test files." msgstr "" -#: common.opt:2468 +#: common.opt:2472 #, no-c-format msgid "Perform software pipelining of inner loops during selective scheduling." msgstr "" -#: common.opt:2472 +#: common.opt:2476 #, no-c-format msgid "Perform software pipelining of outer loops during selective scheduling." msgstr "" -#: common.opt:2476 +#: common.opt:2480 #, no-c-format msgid "Reschedule pipelined regions without pipelining." msgstr "" -#: common.opt:2480 +#: common.opt:2484 #, no-c-format msgid "" "Allow interposing function (or variables) by ones with different semantics " "(or initializer) respectively by dynamic linker." msgstr "" -#: common.opt:2486 +#: common.opt:2490 #, no-c-format msgid "Allow premature scheduling of queued insns." msgstr "" -#: common.opt:2490 +#: common.opt:2494 #, no-c-format msgid "" "-fsched-stalled-insns=<number>\tSet number of queued insns that can be " "prematurely scheduled." msgstr "" -#: common.opt:2498 +#: common.opt:2502 #, no-c-format msgid "" "Set dependence distance checking in premature scheduling of queued insns." msgstr "" -#: common.opt:2502 +#: common.opt:2506 #, no-c-format msgid "" "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in " "premature scheduling of queued insns." msgstr "" -#: common.opt:2506 +#: common.opt:2510 #, no-c-format msgid "Enable the group heuristic in the scheduler." msgstr "" -#: common.opt:2510 +#: common.opt:2514 #, no-c-format msgid "Enable the critical path heuristic in the scheduler." msgstr "" -#: common.opt:2514 +#: common.opt:2518 #, no-c-format msgid "Enable the speculative instruction heuristic in the scheduler." msgstr "" -#: common.opt:2518 +#: common.opt:2522 #, no-c-format msgid "Enable the rank heuristic in the scheduler." msgstr "" -#: common.opt:2522 +#: common.opt:2526 #, no-c-format msgid "Enable the last instruction heuristic in the scheduler." msgstr "" -#: common.opt:2526 +#: common.opt:2530 #, no-c-format msgid "Enable the dependent count heuristic in the scheduler." msgstr "" -#: common.opt:2530 +#: common.opt:2534 #, no-c-format msgid "Access data in the same section from shared anchor points." msgstr "" -#: common.opt:2542 +#: common.opt:2546 #, no-c-format msgid "Turn on Redundant Extensions Elimination pass." msgstr "" -#: common.opt:2546 +#: common.opt:2550 #, no-c-format msgid "Show column numbers in diagnostics, when available. Default on." msgstr "" -#: common.opt:2550 +#: common.opt:2554 #, no-c-format msgid "" "Emit function prologues only before parts of the function that need it, " "rather than at the top of the function." msgstr "" -#: common.opt:2555 +#: common.opt:2559 #, no-c-format msgid "Shrink-wrap parts of the prologue and epilogue separately." msgstr "" -#: common.opt:2559 +#: common.opt:2563 #, no-c-format msgid "Disable optimizations observable by IEEE signaling NaNs." msgstr "" -#: common.opt:2563 +#: common.opt:2567 #, no-c-format msgid "" "Disable floating point optimizations that ignore the IEEE signedness of zero." msgstr "" -#: common.opt:2567 +#: common.opt:2571 #, no-c-format msgid "Convert floating point constants to single precision constants." msgstr "" -#: common.opt:2571 +#: common.opt:2575 #, no-c-format msgid "Split lifetimes of induction variables when loops are unrolled." msgstr "" -#: common.opt:2575 +#: common.opt:2579 #, no-c-format msgid "Generate discontiguous stack frames." msgstr "" -#: common.opt:2579 +#: common.opt:2583 #, no-c-format msgid "Split wide types into independent registers." msgstr "" -#: common.opt:2583 +#: common.opt:2587 #, no-c-format msgid "Split wide types into independent registers earlier." msgstr "" -#: common.opt:2587 +#: common.opt:2591 #, no-c-format msgid "Enable backward propagation of use properties at the SSA level." msgstr "" -#: common.opt:2591 +#: common.opt:2595 #, no-c-format msgid "Optimize conditional patterns using SSA PHI nodes." msgstr "" -#: common.opt:2595 +#: common.opt:2599 #, no-c-format msgid "" "Optimize amount of stdarg registers saved to stack at start of function." msgstr "" -#: common.opt:2599 +#: common.opt:2603 #, no-c-format msgid "Apply variable expansion when loops are unrolled." msgstr "" -#: common.opt:2603 +#: common.opt:2607 #, no-c-format msgid "" "-fstack-check=[no|generic|specific]\tInsert stack checking code into the " "program." msgstr "" -#: common.opt:2607 +#: common.opt:2611 #, no-c-format msgid "" "Insert stack checking code into the program. Same as -fstack-check=specific." msgstr "" -#: common.opt:2611 +#: common.opt:2615 #, 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:2619 +#: common.opt:2623 #, no-c-format msgid "" "-fstack-limit-register=<register>\tTrap if the stack goes past <register>." msgstr "" -#: common.opt:2623 +#: common.opt:2627 #, no-c-format msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>." msgstr "" -#: common.opt:2627 +#: common.opt:2631 #, no-c-format msgid "Use propolice as a stack protection method." msgstr "" -#: common.opt:2631 +#: common.opt:2635 #, no-c-format msgid "Use a stack protection method for every function." msgstr "" -#: common.opt:2635 +#: common.opt:2639 #, no-c-format msgid "Use a smart stack protection method for certain functions." msgstr "" -#: common.opt:2639 +#: common.opt:2643 #, no-c-format msgid "" "Use stack protection method only for functions with the stack_protect " "attribute." msgstr "" -#: common.opt:2643 +#: common.opt:2647 #, no-c-format msgid "Output stack usage information on a per-function basis." msgstr "" -#: common.opt:2655 +#: common.opt:2659 #, no-c-format msgid "Assume strict aliasing rules apply." msgstr "" -#: common.opt:2659 +#: common.opt:2663 #, no-c-format msgid "" "Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer." msgstr "" -#: common.opt:2663 +#: common.opt:2667 #, no-c-format msgid "Implement __atomic operations via libcalls to legacy __sync functions." msgstr "" -#: common.opt:2667 +#: common.opt:2671 #, no-c-format msgid "Check for syntax errors, then stop." msgstr "" -#: common.opt:2671 +#: common.opt:2675 #, no-c-format msgid "Create data files needed by \"gcov\"." msgstr "" -#: common.opt:2675 +#: common.opt:2679 #, no-c-format msgid "Perform jump threading optimizations." msgstr "" -#: common.opt:2679 +#: common.opt:2683 #, no-c-format msgid "Report the time taken by each compiler pass." msgstr "" -#: common.opt:2683 +#: common.opt:2687 #, no-c-format msgid "Record times taken by sub-phases separately." msgstr "" -#: common.opt:2687 +#: common.opt:2691 #, no-c-format msgid "" "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the " "default thread-local storage code generation model." msgstr "" -#: common.opt:2706 +#: common.opt:2710 #, no-c-format msgid "Reorder top level functions, variables, and asms." msgstr "" -#: common.opt:2710 +#: common.opt:2714 #, no-c-format msgid "Perform superblock formation via tail duplication." msgstr "" -#: common.opt:2714 +#: common.opt:2718 #, no-c-format msgid "" "For targets that normally need trampolines for nested functions, always " "generate them instead of using descriptors." msgstr "" -#: common.opt:2722 +#: common.opt:2726 #, no-c-format msgid "Assume floating-point operations can trap." msgstr "" -#: common.opt:2726 +#: common.opt:2730 #, no-c-format msgid "Trap for signed overflow in addition, subtraction and multiplication." msgstr "" -#: common.opt:2730 +#: common.opt:2734 #, no-c-format msgid "Enable SSA-CCP optimization on trees." msgstr "" -#: common.opt:2734 +#: common.opt:2738 #, no-c-format msgid "Enable SSA-BIT-CCP optimization on trees." msgstr "" -#: common.opt:2742 +#: common.opt:2746 #, no-c-format msgid "Enable loop header copying on trees." msgstr "" -#: common.opt:2750 +#: common.opt:2754 #, no-c-format msgid "Enable SSA coalescing of user variables." msgstr "" -#: common.opt:2758 +#: common.opt:2762 #, no-c-format msgid "Enable copy propagation on trees." msgstr "" -#: common.opt:2766 +#: common.opt:2770 #, no-c-format msgid "Transform condition stores into unconditional ones." msgstr "" -#: common.opt:2770 +#: common.opt:2774 #, no-c-format msgid "Perform conversions of switch initializations." msgstr "" -#: common.opt:2774 +#: common.opt:2778 #, no-c-format msgid "Enable SSA dead code elimination optimization on trees." msgstr "" -#: common.opt:2778 +#: common.opt:2782 #, no-c-format msgid "Enable dominator optimizations." msgstr "" -#: common.opt:2782 +#: common.opt:2786 #, no-c-format msgid "Enable tail merging on trees." msgstr "" -#: common.opt:2786 +#: common.opt:2790 #, no-c-format msgid "Enable dead store elimination." msgstr "" -#: common.opt:2790 +#: common.opt:2794 #, no-c-format msgid "Enable forward propagation on trees." msgstr "" -#: common.opt:2794 +#: common.opt:2798 #, no-c-format msgid "Enable Full Redundancy Elimination (FRE) on trees." msgstr "" -#: common.opt:2798 +#: common.opt:2802 #, no-c-format msgid "Enable string length optimizations on trees." msgstr "" -#: common.opt:2802 +#: common.opt:2806 #, no-c-format msgid "" "Detect paths that trigger erroneous or undefined behavior due to " @@ -19474,7 +19472,7 @@ msgid "" "flow and turn the statement with erroneous or undefined behavior into a trap." msgstr "" -#: common.opt:2808 +#: common.opt:2812 #, no-c-format msgid "" "Detect paths that trigger erroneous or undefined behavior due to a null " @@ -19483,509 +19481,509 @@ msgid "" "statement with erroneous or undefined behavior into a trap." msgstr "" -#: common.opt:2815 +#: common.opt:2819 #, no-c-format msgid "Enable loop distribution on trees." msgstr "" -#: common.opt:2819 +#: common.opt:2823 #, no-c-format msgid "Enable loop distribution for patterns transformed into a library call." msgstr "" -#: common.opt:2823 +#: common.opt:2827 #, no-c-format msgid "Enable loop invariant motion on trees." msgstr "" -#: common.opt:2831 +#: common.opt:2835 #, no-c-format msgid "Create canonical induction variables in loops." msgstr "" -#: common.opt:2835 +#: common.opt:2839 #, no-c-format msgid "Enable loop optimizations on tree level." msgstr "" -#: common.opt:2839 +#: common.opt:2843 #, no-c-format msgid "" "-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops." msgstr "" -#: common.opt:2843 +#: common.opt:2847 #, no-c-format msgid "Enable hoisting loads from conditional pointers." msgstr "" -#: common.opt:2847 +#: common.opt:2851 #, no-c-format msgid "Enable SSA-PRE optimization on trees." msgstr "" -#: common.opt:2851 +#: common.opt:2855 #, no-c-format msgid "" "In SSA-PRE optimization on trees, enable partial-partial redundancy " "elimination." msgstr "" -#: common.opt:2855 +#: common.opt:2859 #, no-c-format msgid "Perform function-local points-to analysis on trees." msgstr "" -#: common.opt:2859 +#: common.opt:2863 #, no-c-format msgid "Enable reassociation on tree level." msgstr "" -#: common.opt:2867 +#: common.opt:2871 #, no-c-format msgid "Enable SSA code sinking on trees." msgstr "" -#: common.opt:2871 +#: common.opt:2875 #, no-c-format msgid "Perform straight-line strength reduction." msgstr "" -#: common.opt:2875 +#: common.opt:2879 #, no-c-format msgid "Perform scalar replacement of aggregates." msgstr "" -#: common.opt:2879 +#: common.opt:2883 #, no-c-format msgid "Replace temporary expressions in the SSA->normal pass." msgstr "" -#: common.opt:2883 +#: common.opt:2887 #, no-c-format msgid "Perform live range splitting during the SSA->normal pass." msgstr "" -#: common.opt:2887 +#: common.opt:2891 #, no-c-format msgid "Perform Value Range Propagation on trees." msgstr "" -#: common.opt:2891 +#: common.opt:2895 #, no-c-format msgid "Split paths leading to loop backedges." msgstr "" -#: common.opt:2895 +#: common.opt:2899 #, no-c-format msgid "" "Assume common declarations may be overridden with ones with a larger " "trailing array." msgstr "" -#: common.opt:2900 +#: common.opt:2904 #, no-c-format msgid "Compile whole compilation unit at a time." msgstr "" -#: common.opt:2904 +#: common.opt:2908 #, no-c-format msgid "Perform loop unrolling when iteration count is known." msgstr "" -#: common.opt:2908 +#: common.opt:2912 #, no-c-format msgid "Perform loop unrolling for all loops." msgstr "" -#: common.opt:2923 +#: common.opt:2927 #, no-c-format msgid "" "Allow optimization for floating-point arithmetic which may change the result " "of the operation due to rounding." msgstr "" -#: common.opt:2928 +#: common.opt:2932 #, no-c-format msgid "Same as -fassociative-math for expressions which include division." msgstr "" -#: common.opt:2936 +#: common.opt:2940 #, no-c-format msgid "Allow math optimizations that may violate IEEE or ISO standards." msgstr "" -#: common.opt:2940 +#: common.opt:2944 #, no-c-format msgid "Perform loop unswitching." msgstr "" -#: common.opt:2944 +#: common.opt:2948 #, no-c-format msgid "Perform loop splitting." msgstr "" -#: common.opt:2948 +#: common.opt:2952 #, no-c-format msgid "Version loops based on whether indices have a stride of one." msgstr "" -#: common.opt:2952 +#: common.opt:2956 #, no-c-format msgid "Just generate unwind tables for exception handling." msgstr "" -#: common.opt:2956 +#: common.opt:2960 #, no-c-format msgid "Use the bfd linker instead of the default linker." msgstr "" -#: common.opt:2960 +#: common.opt:2964 #, no-c-format msgid "Use the gold linker instead of the default linker." msgstr "" -#: common.opt:2964 +#: common.opt:2968 #, no-c-format msgid "Use the lld LLVM linker instead of the default linker." msgstr "" -#: common.opt:2976 +#: common.opt:2980 #, no-c-format msgid "Perform variable tracking." msgstr "" -#: common.opt:2984 +#: common.opt:2988 #, no-c-format msgid "Perform variable tracking by annotating assignments." msgstr "" -#: common.opt:2990 +#: common.opt:2994 #, no-c-format msgid "Toggle -fvar-tracking-assignments." msgstr "" -#: common.opt:2998 +#: common.opt:3002 #, no-c-format msgid "" "Perform variable tracking and also tag variables that are uninitialized." msgstr "" -#: common.opt:3003 +#: common.opt:3007 #, no-c-format msgid "Enable vectorization on trees." msgstr "" -#: common.opt:3011 +#: common.opt:3015 #, no-c-format msgid "Enable loop vectorization on trees." msgstr "" -#: common.opt:3015 +#: common.opt:3019 #, no-c-format msgid "Enable basic block vectorization (SLP) on trees." msgstr "" -#: common.opt:3019 +#: common.opt:3023 #, no-c-format msgid "" "-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost " "model for vectorization." msgstr "" -#: common.opt:3023 +#: common.opt:3027 #, 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:3042 +#: common.opt:3046 #, no-c-format msgid "" "Enables the dynamic vectorizer cost model. Preserved for backward " "compatibility." msgstr "" -#: common.opt:3050 +#: common.opt:3054 #, no-c-format msgid "Enable copy propagation of scalar-evolution information." msgstr "" -#: common.opt:3060 +#: common.opt:3064 #, no-c-format msgid "Add extra commentary to assembler output." msgstr "" -#: common.opt:3064 +#: common.opt:3068 #, no-c-format msgid "" "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol " "visibility." msgstr "" -#: common.opt:3083 +#: common.opt:3087 #, no-c-format msgid "Validate vtable pointers before using them." msgstr "" -#: common.opt:3099 +#: common.opt:3103 #, no-c-format msgid "Output vtable verification counters." msgstr "" -#: common.opt:3103 +#: common.opt:3107 #, no-c-format msgid "Output vtable verification pointer sets information." msgstr "" -#: common.opt:3107 +#: common.opt:3111 #, no-c-format msgid "Use expression value profiles in optimizations." msgstr "" -#: common.opt:3111 +#: common.opt:3115 #, no-c-format msgid "Construct webs and split unrelated uses of single variable." msgstr "" -#: common.opt:3115 +#: common.opt:3119 #, no-c-format msgid "Enable conditional dead code elimination for builtin calls." msgstr "" -#: common.opt:3119 +#: common.opt:3123 #, no-c-format msgid "Perform whole program optimizations." msgstr "" -#: common.opt:3123 +#: common.opt:3127 #, no-c-format msgid "Assume pointer overflow wraps around." msgstr "" -#: common.opt:3127 +#: common.opt:3131 #, no-c-format msgid "Assume signed arithmetic overflow wraps around." msgstr "" -#: common.opt:3131 +#: common.opt:3135 #, no-c-format msgid "Put zero initialized data in the bss section." msgstr "" -#: common.opt:3135 +#: common.opt:3139 #, no-c-format msgid "Clear call-used registers upon function return." msgstr "" -#: common.opt:3139 +#: common.opt:3143 #, no-c-format msgid "Generate debug information in default format." msgstr "" -#: common.opt:3143 +#: common.opt:3147 #, no-c-format msgid "Assume assembler support for (DWARF2+) .loc directives." msgstr "" -#: common.opt:3147 +#: common.opt:3151 #, no-c-format msgid "Assume assembler support for view in (DWARF2+) .loc directives." msgstr "" -#: common.opt:3167 +#: common.opt:3171 #, no-c-format msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF." msgstr "" -#: common.opt:3171 +#: common.opt:3175 #, no-c-format msgid "Generate debug information in default version of DWARF format." msgstr "" -#: common.opt:3175 +#: common.opt:3179 #, no-c-format msgid "Generate debug information in DWARF v2 (or later) format." msgstr "" -#: common.opt:3179 +#: common.opt:3183 #, no-c-format msgid "Use 32-bit DWARF format when emitting DWARF debug information." msgstr "" -#: common.opt:3183 +#: common.opt:3187 #, no-c-format msgid "Use 64-bit DWARF format when emitting DWARF debug information." msgstr "" -#: common.opt:3187 +#: common.opt:3191 #, no-c-format msgid "Generate debug information in default extended format." msgstr "" -#: common.opt:3191 +#: common.opt:3195 #, no-c-format msgid "Generate extended entry point information for inlined functions." msgstr "" -#: common.opt:3195 +#: common.opt:3199 #, no-c-format msgid "Compute locview reset points based on insn length estimates." msgstr "" -#: common.opt:3203 +#: common.opt:3207 #, no-c-format msgid "Don't generate DWARF pubnames and pubtypes sections." msgstr "" -#: common.opt:3207 +#: common.opt:3211 #, no-c-format msgid "Generate DWARF pubnames and pubtypes sections." msgstr "" -#: common.opt:3211 +#: common.opt:3215 #, no-c-format msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions." msgstr "" -#: common.opt:3215 +#: common.opt:3219 #, no-c-format msgid "Record gcc command line switches in DWARF DW_AT_producer." msgstr "" -#: common.opt:3219 +#: common.opt:3223 #, no-c-format msgid "Generate debug information in separate .dwo files." msgstr "" -#: common.opt:3223 +#: common.opt:3227 #, no-c-format msgid "Generate debug information in STABS format." msgstr "" -#: common.opt:3227 +#: common.opt:3231 #, no-c-format msgid "Generate debug information in extended STABS format." msgstr "" -#: common.opt:3231 +#: common.opt:3235 #, no-c-format msgid "Emit progressive recommended breakpoint locations." msgstr "" -#: common.opt:3235 +#: common.opt:3239 #, no-c-format msgid "Don't emit DWARF additions beyond selected version." msgstr "" -#: common.opt:3239 +#: common.opt:3243 #, no-c-format msgid "" "Add description attributes to some DWARF DIEs that have no name attribute." msgstr "" -#: common.opt:3243 +#: common.opt:3247 #, no-c-format msgid "Toggle debug information generation." msgstr "" -#: common.opt:3247 +#: common.opt:3251 #, no-c-format msgid "Augment variable location lists with progressive views." msgstr "" -#: common.opt:3254 +#: common.opt:3258 #, no-c-format msgid "Generate debug information in VMS format." msgstr "" -#: common.opt:3258 +#: common.opt:3262 #, no-c-format msgid "Generate debug information in XCOFF format." msgstr "" -#: common.opt:3262 +#: common.opt:3266 #, no-c-format msgid "Generate debug information in extended XCOFF format." msgstr "" -#: common.opt:3280 +#: common.opt:3284 #, no-c-format msgid "Generate compressed debug sections." msgstr "" -#: common.opt:3284 +#: common.opt:3288 #, no-c-format msgid "-gz=<format>\tGenerate compressed debug sections in format <format>." msgstr "" -#: common.opt:3291 +#: common.opt:3295 #, no-c-format msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory." msgstr "" -#: common.opt:3295 +#: common.opt:3299 #, no-c-format msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory." msgstr "" -#: common.opt:3320 +#: common.opt:3324 #, no-c-format msgid "-o <file>\tPlace output into <file>." msgstr "" -#: common.opt:3324 +#: common.opt:3328 #, no-c-format msgid "Enable function profiling." msgstr "" -#: common.opt:3334 +#: common.opt:3338 #, no-c-format msgid "Like -pedantic but issue them as errors." msgstr "" -#: common.opt:3374 +#: common.opt:3378 #, no-c-format msgid "Do not display functions compiled or elapsed time." msgstr "" -#: common.opt:3406 +#: common.opt:3410 #, no-c-format msgid "Enable verbose output." msgstr "" -#: common.opt:3410 +#: common.opt:3414 #, no-c-format msgid "Display the compiler's version." msgstr "" -#: common.opt:3414 +#: common.opt:3418 #, no-c-format msgid "Suppress warnings." msgstr "" -#: common.opt:3424 +#: common.opt:3428 #, no-c-format msgid "Create a shared library." msgstr "" -#: common.opt:3472 +#: common.opt:3476 #, no-c-format msgid "Don't create a dynamically linked position independent executable." msgstr "" -#: common.opt:3476 +#: common.opt:3480 #, no-c-format msgid "Create a dynamically linked position independent executable." msgstr "" -#: common.opt:3480 +#: common.opt:3484 #, no-c-format msgid "Create a static position independent executable." msgstr "" -#: common.opt:3487 +#: common.opt:3491 #, no-c-format msgid "Use caller save register across calls if possible." msgstr "" @@ -20152,94 +20150,101 @@ msgstr "" #: params.opt:162 #, no-c-format msgid "" +"Maximum depth of logical expression evaluation ranger will look through when " +"evaluating outgoing edge ranges." +msgstr "" + +#: params.opt:167 +#, no-c-format +msgid "" "Maximum number of arguments a PHI may have before the FSM threader will not " "try to thread through its block." msgstr "" -#: params.opt:166 +#: params.opt:171 #, no-c-format msgid "" "Scale factor to apply to the number of blocks in a threading path when " "comparing to the number of (scaled) statements." msgstr "" -#: params.opt:170 +#: params.opt:175 #, no-c-format msgid "" "Scale factor to apply to the number of statements in a threading path when " "comparing to the number of (scaled) blocks." msgstr "" -#: params.opt:174 +#: params.opt:179 #, no-c-format msgid "" "The threshold ratio of critical edges execution count that permit performing " "redundancy elimination after reload." msgstr "" -#: params.opt:178 +#: params.opt:183 #, no-c-format msgid "" "The threshold ratio for performing partial redundancy elimination after " "reload." msgstr "" -#: params.opt:182 +#: params.opt:187 #, no-c-format msgid "" "Scaling factor in calculation of maximum distance an expression can be moved " "by GCSE optimizations." msgstr "" -#: params.opt:186 +#: params.opt:191 #, no-c-format msgid "" "Cost at which GCSE optimizations will not constraint the distance an " "expression can travel." msgstr "" -#: params.opt:190 +#: params.opt:195 #, no-c-format msgid "" "Minimum heap expansion to trigger garbage collection, as a percentage of the " "total size of the heap." msgstr "" -#: params.opt:194 +#: params.opt:199 #, no-c-format msgid "Minimum heap size before we start collecting garbage, in kilobytes." msgstr "" -#: params.opt:198 +#: params.opt:203 #, no-c-format msgid "" "The number of executions of a basic block which is considered hot. The " "parameter is used only in GIMPLE FE." msgstr "" -#: params.opt:202 +#: params.opt:207 #, no-c-format msgid "Whether codegen errors should be ICEs when -fchecking." msgstr "" -#: params.opt:206 +#: params.opt:211 #, no-c-format msgid "Maximum number of arrays per SCoP." msgstr "" -#: params.opt:210 +#: params.opt:215 #, no-c-format msgid "Maximum number of parameters in a SCoP." msgstr "" -#: params.opt:214 +#: params.opt:219 #, no-c-format msgid "" "The number of elements for which hash table verification is done for each " "searched element." msgstr "" -#: params.opt:218 +#: params.opt:223 #, no-c-format msgid "" "The denominator n of fraction 1/n of the maximal execution count of a basic " @@ -20247,7 +20252,7 @@ msgid "" "order to be considered hot (used in non-LTO mode)." msgstr "" -#: params.opt:222 +#: params.opt:227 #, no-c-format msgid "" "The number of most executed permilles of the profiled execution of the " @@ -20255,7 +20260,7 @@ msgid "" "in order to be considered hot (used in LTO mode)." msgstr "" -#: params.opt:226 +#: params.opt:231 #, no-c-format msgid "" "The denominator n of fraction 1/n of the execution frequency of the entry " @@ -20263,887 +20268,894 @@ msgid "" "have in order to be considered hot." msgstr "" -#: params.opt:230 +#: params.opt:235 #, no-c-format msgid "" "The scale (in percents) applied to inline-insns-single and auto limits when " "heuristics hints that inlining is very profitable." msgstr "" -#: params.opt:234 +#: params.opt:239 #, no-c-format msgid "" "The minimal estimated speedup allowing inliner to ignore inline-insns-single " "and inline-insns-auto." msgstr "" -#: params.opt:238 +#: params.opt:243 #, no-c-format msgid "" "How much can given compilation unit grow because of the inlining (in " "percent)." msgstr "" -#: params.opt:242 +#: params.opt:247 #, no-c-format msgid "The upper bound for sharing integer constants." msgstr "" -#: params.opt:246 +#: params.opt:251 #, no-c-format msgid "" "Threshold ipa-cp opportunity evaluation that is still considered beneficial " "to clone." msgstr "" -#: params.opt:250 +#: params.opt:255 #, no-c-format msgid "" "Compile-time bonus IPA-CP assigns to candidates which make loop bounds or " "strides known." msgstr "" -#: params.opt:254 +#: params.opt:259 #, no-c-format msgid "Maximum depth of recursive cloning for self-recursive function." msgstr "" -#: params.opt:258 +#: params.opt:263 #, no-c-format msgid "" "Recursive cloning only when the probability of call being executed exceeds " "the parameter." msgstr "" -#: params.opt:262 +#: params.opt:267 #, no-c-format msgid "" "Percentage penalty the recursive functions will receive when they are " "evaluated for cloning." msgstr "" -#: params.opt:266 +#: params.opt:271 #, no-c-format msgid "" "Percentage penalty functions containing a single call to another function " "will receive when they are evaluated for cloning." msgstr "" -#: params.opt:270 +#: params.opt:275 #, no-c-format msgid "" "How much can given compilation unit grow because of the interprocedural " "constant propagation (in percent)." msgstr "" -#: params.opt:274 +#: params.opt:279 #, no-c-format msgid "The size of translation unit that IPA-CP pass considers large." msgstr "" -#: params.opt:278 +#: params.opt:283 #, no-c-format msgid "" "Maximum size of a list of values associated with each parameter for " "interprocedural constant propagation." msgstr "" -#: params.opt:282 +#: params.opt:287 #, no-c-format msgid "" "Maximum number of statements visited during jump function offset discovery." msgstr "" -#: params.opt:286 +#: params.opt:291 #, no-c-format msgid "" "Maximum number of statements that will be visited by IPA formal parameter " "analysis based on alias analysis in any given function." msgstr "" -#: params.opt:290 +#: params.opt:295 #, no-c-format msgid "" "Maximum number of aggregate content items for a parameter in jump functions " "and lattices." msgstr "" -#: params.opt:294 +#: params.opt:299 #, no-c-format msgid "" "Maximum number of operations in a parameter expression that can be handled " "by IPA analysis." msgstr "" -#: params.opt:298 +#: params.opt:303 #, no-c-format msgid "" "Maximum number of different predicates used to track properties of loops in " "IPA analysis." msgstr "" -#: params.opt:302 +#: params.opt:307 #, no-c-format msgid "" "Maximal number of boundary endpoints of case ranges of switch statement used " "during IPA function summary generation." msgstr "" -#: params.opt:306 +#: params.opt:311 #, no-c-format msgid "" "Maximum pieces that IPA-SRA tracks per formal parameter, as a consequence, " "also the maximum number of replacements of a formal parameter." msgstr "" -#: params.opt:310 +#: params.opt:315 #, no-c-format msgid "" "Maximum allowed growth of number and total size of new parameters that ipa-" "sra replaces a pointer to an aggregate with." msgstr "" -#: params.opt:314 +#: params.opt:319 #, no-c-format msgid "" "The number of registers in each class kept unused by loop invariant motion." msgstr "" -#: params.opt:318 +#: params.opt:323 #, no-c-format msgid "Max size of conflict table in MB." msgstr "" -#: params.opt:322 +#: params.opt:327 #, no-c-format msgid "Max loops number for regional RA." msgstr "" -#: params.opt:326 +#: params.opt:331 #, no-c-format msgid "" "If number of candidates in the set is smaller, we always try to remove " "unused ivs during its optimization." msgstr "" -#: params.opt:330 +#: params.opt:335 #, no-c-format msgid "" "Bound on number of candidates below that all candidates are considered in iv " "optimizations." msgstr "" -#: params.opt:334 +#: params.opt:339 #, no-c-format msgid "Bound on number of iv uses in loop optimized in iv optimizations." msgstr "" -#: params.opt:338 +#: params.opt:343 #, no-c-format msgid "" "The maximum code size growth ratio when expanding into a jump table (in " "percent). The parameter is used when optimizing for size." msgstr "" -#: params.opt:342 +#: params.opt:347 #, no-c-format msgid "" "The maximum code size growth ratio when expanding into a jump table (in " "percent). The parameter is used when optimizing for speed." msgstr "" -#: params.opt:346 +#: params.opt:351 #, no-c-format msgid "The size of L1 cache line." msgstr "" -#: params.opt:350 +#: params.opt:355 #, no-c-format msgid "The size of L1 cache." msgstr "" -#: params.opt:354 +#: params.opt:359 #, no-c-format msgid "The size of L2 cache." msgstr "" -#: params.opt:358 +#: params.opt:363 #, no-c-format msgid "Maximal growth due to inlining of large function (in percent)." msgstr "" -#: params.opt:362 +#: params.opt:367 #, no-c-format msgid "The size of function body to be considered large." msgstr "" -#: params.opt:366 +#: params.opt:371 #, no-c-format msgid "The size of stack frame to be considered large." msgstr "" -#: params.opt:370 +#: params.opt:375 #, no-c-format msgid "Maximal stack frame growth due to inlining (in percent)." msgstr "" -#: params.opt:374 +#: params.opt:379 #, no-c-format msgid "The size of translation unit to be considered large." msgstr "" -#: params.opt:378 +#: params.opt:383 #, no-c-format msgid "Maximum number of concurrently open C++ module files when lazy loading." msgstr "" -#: params.opt:382 +#: params.opt:387 #, no-c-format msgid "" "The minimum cost of an expensive expression in the loop invariant motion." msgstr "" -#: params.opt:386 +#: params.opt:391 #, no-c-format msgid "True if a non-short-circuit operation is optimal." msgstr "" -#: params.opt:390 +#: params.opt:395 #, no-c-format msgid "Size of tiles for loop blocking." msgstr "" -#: params.opt:394 +#: params.opt:399 #, no-c-format msgid "The maximum number of stmts in loop nest for loop interchange." msgstr "" -#: params.opt:398 +#: params.opt:403 #, no-c-format msgid "The minimum stride ratio for loop interchange to be profitable." msgstr "" -#: params.opt:402 +#: params.opt:407 #, no-c-format msgid "Max basic blocks number in loop for loop invariant motion." msgstr "" -#: params.opt:406 +#: params.opt:411 #, no-c-format msgid "Maximum number of datarefs in loop for building loop data dependencies." msgstr "" -#: params.opt:410 +#: params.opt:415 #, no-c-format msgid "" "The maximum number of instructions in an inner loop that is being considered " "for versioning." msgstr "" -#: params.opt:414 +#: params.opt:419 #, no-c-format msgid "" "The maximum number of instructions in an outer loop that is being considered " "for versioning, on top of the instructions in inner loops." msgstr "" -#: params.opt:418 +#: params.opt:423 #, no-c-format msgid "" "Minimal fall-through edge probability in percentage used to add BB to " "inheritance EBB in LRA." msgstr "" -#: params.opt:422 +#: params.opt:427 #, no-c-format msgid "" "The max number of reload pseudos which are considered during spilling a non-" "reload pseudo." msgstr "" -#: params.opt:426 +#: params.opt:431 #, no-c-format msgid "Maximal size of a partition for LTO (in estimated instructions)." msgstr "" -#: params.opt:430 +#: params.opt:435 #, no-c-format msgid "maximal number of LTO partitions streamed in parallel." msgstr "" -#: params.opt:434 +#: params.opt:439 #, no-c-format msgid "Minimal size of a partition for LTO (in estimated instructions)." msgstr "" -#: params.opt:438 +#: params.opt:443 #, no-c-format msgid "Number of partitions the program should be split to." msgstr "" -#: params.opt:442 +#: params.opt:447 #, no-c-format msgid "" "The maximum number of instructions to consider to unroll in a loop on " "average." msgstr "" -#: params.opt:446 +#: params.opt:451 #, no-c-format msgid "The maximum number of insns combine tries to combine." msgstr "" -#: params.opt:450 +#: params.opt:455 #, no-c-format msgid "The maximum depth of a loop nest we completely peel." msgstr "" -#: params.opt:454 +#: params.opt:459 #, no-c-format msgid "" "The maximum number of peelings of a single loop that is peeled completely." msgstr "" -#: params.opt:458 +#: params.opt:463 #, no-c-format msgid "The maximum number of insns of a completely peeled loop." msgstr "" -#: params.opt:462 +#: params.opt:467 #, no-c-format msgid "The maximum number of incoming edges to consider for crossjumping." msgstr "" -#: params.opt:466 +#: params.opt:471 #, no-c-format msgid "The maximum instructions CSE process before flushing." msgstr "" -#: params.opt:470 +#: params.opt:475 #, no-c-format msgid "The maximum length of path considered in cse." msgstr "" -#: params.opt:474 +#: params.opt:479 #, no-c-format msgid "The maximum memory locations recorded by cselib." msgstr "" -#: params.opt:478 +#: params.opt:483 #, no-c-format msgid "Max. count of debug markers to expand or inline." msgstr "" -#: params.opt:482 +#: params.opt:487 #, no-c-format msgid "The maximum number of instructions to consider to fill a delay slot." msgstr "" -#: params.opt:486 +#: params.opt:491 #, no-c-format msgid "" "The maximum number of instructions to consider to find accurate live " "register information." msgstr "" -#: params.opt:490 +#: params.opt:495 #, no-c-format msgid "Maximum number of active local stores in RTL dead store elimination." msgstr "" -#: params.opt:494 +#: params.opt:499 #, no-c-format msgid "" "The maximum number of nested indirect inlining performed by early inliner." msgstr "" -#: params.opt:498 +#: params.opt:503 #, no-c-format msgid "" "Maximum number of fields in a structure before pointer analysis treats the " "structure as a single variable." msgstr "" -#: params.opt:502 +#: params.opt:507 #, no-c-format msgid "" "Maximum number of basic blocks on a finite state automaton jump thread path." msgstr "" -#: params.opt:506 +#: params.opt:511 #, no-c-format msgid "" "Maximum number of instructions to copy when duplicating blocks on a finite " "state automaton jump thread path." msgstr "" -#: params.opt:510 +#: params.opt:515 #, no-c-format msgid "" "Maximum number of new jump thread paths to create for a finite state " "automaton." msgstr "" -#: params.opt:514 +#: params.opt:519 #, no-c-format msgid "The maximum ratio of insertions to deletions of expressions in GCSE." msgstr "" -#: params.opt:518 +#: params.opt:523 #, no-c-format msgid "The maximum amount of memory to be allocated by GCSE, in kilobytes." msgstr "" -#: params.opt:522 +#: params.opt:527 #, no-c-format msgid "" "The maximum number of insns to duplicate when unfactoring computed gotos." msgstr "" -#: params.opt:526 +#: params.opt:531 #, no-c-format msgid "The maximum expansion factor when copying basic blocks." msgstr "" -#: params.opt:530 +#: params.opt:535 #, no-c-format msgid "Maximum depth of search in the dominator tree for expressions to hoist." msgstr "" -#: params.opt:534 +#: params.opt:539 #, no-c-format msgid "The maximum number of instructions when automatically inlining." msgstr "" -#: params.opt:538 +#: params.opt:543 #, no-c-format msgid "" "The maximum number of instructions inline function can grow to via recursive " "inlining." msgstr "" -#: params.opt:542 +#: params.opt:547 #, no-c-format msgid "" "The maximum number of instructions non-inline function can grow to via " "recursive inlining." msgstr "" -#: params.opt:546 +#: params.opt:551 #, no-c-format msgid "" "The maximum number of instructions in a single function eligible for " "inlining." msgstr "" -#: params.opt:550 +#: params.opt:555 #, no-c-format msgid "The maximum number of instructions when inlining for size." msgstr "" -#: params.opt:554 +#: params.opt:559 #, no-c-format msgid "" "The maximum number of instructions when automatically inlining small " "functions." msgstr "" -#: params.opt:558 +#: params.opt:563 #, no-c-format msgid "The maximum depth of recursive inlining for inline functions." msgstr "" -#: params.opt:562 +#: params.opt:567 #, no-c-format msgid "The maximum depth of recursive inlining for non-inline functions." msgstr "" -#: params.opt:566 +#: params.opt:571 #, no-c-format msgid "Maximum number of isl operations, 0 means unlimited." msgstr "" -#: params.opt:570 +#: params.opt:575 #, no-c-format msgid "Bound on the cost of an expression to compute the number of iterations." msgstr "" -#: params.opt:574 +#: params.opt:579 #, no-c-format msgid "" "Bound on the number of iterations the brute force # of iterations analysis " "algorithm evaluates." msgstr "" -#: params.opt:578 +#: params.opt:583 #, no-c-format msgid "" "Maximum number of statements allowed in a block that needs to be duplicated " "when threading jumps." msgstr "" -#: params.opt:582 +#: params.opt:587 #, no-c-format msgid "" "The maximum number of RTL nodes that can be recorded as combiner's last " "value." msgstr "" -#: params.opt:586 +#: params.opt:591 #, no-c-format msgid "" "The maximum number of insns in loop header duplicated by the copy loop " "headers pass." msgstr "" -#: params.opt:590 +#: params.opt:595 #, no-c-format msgid "" "The maximum number of backtrack attempts the scheduler should make when " "modulo scheduling a loop." msgstr "" -#: params.opt:594 +#: params.opt:599 #, no-c-format msgid "" "Maximum length of partial antic set when performing tree pre optimization." msgstr "" -#: params.opt:598 +#: params.opt:603 #, no-c-format msgid "The maximum number of branches on the path through the peeled sequence." msgstr "" -#: params.opt:602 +#: params.opt:607 #, no-c-format msgid "The maximum number of peelings of a single loop." msgstr "" -#: params.opt:606 +#: params.opt:611 #, no-c-format msgid "The maximum number of insns of a peeled loop." msgstr "" -#: params.opt:610 +#: params.opt:615 #, no-c-format msgid "The maximum length of scheduling's pending operations list." msgstr "" -#: params.opt:614 params.opt:658 +#: params.opt:619 params.opt:663 #, no-c-format msgid "" "The maximum number of blocks in a region to be considered for interblock " "scheduling." msgstr "" -#: params.opt:618 params.opt:662 +#: params.opt:623 params.opt:667 #, no-c-format msgid "" "The maximum number of insns in a region to be considered for interblock " "scheduling." msgstr "" -#: params.opt:622 +#: params.opt:627 #, no-c-format msgid "" "Maximum depth of sqrt chains to use when synthesizing exponentiation by a " "real constant." msgstr "" -#: params.opt:626 +#: params.opt:631 #, no-c-format msgid "The maximum number of loop iterations we predict statically." msgstr "" -#: params.opt:630 +#: params.opt:635 #, no-c-format msgid "" "The maximum number of instructions to search backward when looking for " "equivalent reload." msgstr "" -#: params.opt:634 +#: params.opt:639 #, no-c-format msgid "" "Maximum number of insns in a basic block to consider for RTL if-conversion." msgstr "" -#: params.opt:638 +#: params.opt:643 #, 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:642 +#: params.opt:647 #, 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:646 +#: params.opt:651 #, no-c-format msgid "The maximum number of iterations through CFG to extend regions." msgstr "" -#: params.opt:650 +#: params.opt:655 #, no-c-format msgid "" "The maximum conflict delay for an insn to be considered for speculative " "motion." msgstr "" -#: params.opt:654 +#: params.opt:659 #, no-c-format msgid "" "The maximum number of instructions ready to be issued to be considered by " "the scheduler during the first scheduling pass." msgstr "" -#: params.opt:666 +#: params.opt:671 #, no-c-format msgid "Maximum length of candidate scans for straight-line strength reduction." msgstr "" -#: params.opt:670 +#: params.opt:675 #, no-c-format msgid "Maximum number of may-defs visited when devirtualizing speculatively." msgstr "" -#: params.opt:674 +#: params.opt:679 #, no-c-format msgid "" "Maximum recursion depth allowed when querying a property of an SSA name." msgstr "" -#: params.opt:678 +#: params.opt:683 #, no-c-format msgid "Maximum number of constant stores to merge in the store merging pass." msgstr "" -#: params.opt:682 +#: params.opt:687 #, no-c-format msgid "Maximum number of conditional store pairs that can be sunk." msgstr "" -#: params.opt:686 params.opt:690 +#: params.opt:691 params.opt:695 #, no-c-format msgid "" "Maximum number of store chains to track at the same time in the store " "merging pass." msgstr "" -#: params.opt:694 +#: params.opt:699 #, no-c-format msgid "Maximum amount of similar bbs to compare a bb with." msgstr "" -#: params.opt:698 +#: params.opt:703 #, no-c-format msgid "Maximum amount of iterations of the pass over a function." msgstr "" -#: params.opt:702 +#: params.opt:707 #, no-c-format msgid "" "Maximum number of strings for which strlen optimization pass will track " "string lengths." msgstr "" -#: params.opt:706 +#: params.opt:711 #, 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:710 +#: params.opt:715 #, no-c-format msgid "The maximum number of unrollings of a single loop." msgstr "" -#: params.opt:714 +#: params.opt:719 #, no-c-format msgid "The maximum number of instructions to consider to unroll in a loop." msgstr "" -#: params.opt:718 +#: params.opt:723 #, no-c-format msgid "The maximum number of insns of an unswitched loop." msgstr "" -#: params.opt:722 +#: params.opt:727 #, no-c-format msgid "The maximum number of unswitchings in a single loop." msgstr "" -#: params.opt:726 +#: params.opt:731 #, no-c-format msgid "" "If -fvariable-expansion-in-unroller is used, the maximum number of times " "that an individual variable will be expanded during loop unrolling." msgstr "" -#: params.opt:730 +#: params.opt:735 #, no-c-format msgid "Max. recursion depth for expanding var tracking expressions." msgstr "" -#: params.opt:734 +#: params.opt:739 #, no-c-format msgid "Max. size of loc list for which reverse ops should be added." msgstr "" -#: params.opt:738 +#: params.opt:743 #, no-c-format msgid "Max. size of var tracking hash tables." msgstr "" -#: params.opt:742 +#: params.opt:747 #, no-c-format msgid "Maximum number of VALUEs handled during a single find_base_term call." msgstr "" -#: params.opt:746 +#: params.opt:751 #, no-c-format msgid "" "Maximum number of assertions to add along the default edge of a switch " "statement during VRP." msgstr "" -#: params.opt:750 +#: params.opt:755 #, no-c-format msgid "" "The minimum number of matching instructions to consider for crossjumping." msgstr "" -#: params.opt:754 +#: params.opt:759 #, no-c-format msgid "" "Inline recursively only when the probability of call being executed exceeds " "the parameter." msgstr "" -#: params.opt:758 +#: params.opt:763 #, no-c-format msgid "" "Min. ratio of insns to prefetches to enable prefetching for a loop with an " "unknown trip count." msgstr "" -#: params.opt:762 +#: params.opt:767 #, no-c-format msgid "" "The minimum threshold for probability of semi-invariant condition statement " "to trigger loop split." msgstr "" -#: params.opt:766 +#: params.opt:771 #, no-c-format msgid "The minimum UID to be used for a nondebug insn." msgstr "" -#: params.opt:770 +#: params.opt:775 #, no-c-format msgid "" "The minimum size of variables taking part in stack slot sharing when not " "optimizing." msgstr "" -#: params.opt:774 +#: params.opt:779 #, no-c-format msgid "" "The minimum probability of reaching a source block for interblock " "speculative scheduling." msgstr "" -#: params.opt:778 +#: params.opt:783 #, no-c-format msgid "" "If -ftree-vectorize is used, the minimal loop bound of a loop to be " "considered for vectorization." msgstr "" -#: params.opt:782 +#: params.opt:787 +#, no-c-format +msgid "" +"--param=openacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC " +"'kernels' constructs handling." +msgstr "" + +#: params.opt:800 #, no-c-format msgid "Chunk size of omp schedule for loops parallelized by parloops." msgstr "" -#: params.opt:786 +#: params.opt:804 #, no-c-format msgid "" "Minimum number of iterations per thread of an innermost parallelized loop." msgstr "" -#: params.opt:790 +#: params.opt:808 #, 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:812 +#: params.opt:830 #, no-c-format msgid "" "Maximum probability of the entry BB of split region (in percent relative to " "entry BB of the function) to make partial inlining happen." msgstr "" -#: params.opt:816 +#: params.opt:834 #, no-c-format msgid "Maximal estimated outcome of branch considered predictable." msgstr "" -#: params.opt:820 +#: params.opt:838 #, no-c-format msgid "" "Whether software prefetch hints should be issued for non-constant strides." msgstr "" -#: params.opt:824 +#: params.opt:842 #, no-c-format msgid "The number of insns executed before prefetch is completed." msgstr "" -#: params.opt:828 +#: params.opt:846 #, no-c-format msgid "Min. ratio of insns to mem ops to enable prefetching in a loop." msgstr "" -#: params.opt:832 +#: params.opt:850 #, no-c-format msgid "" "The minimum constant stride beyond which we should use prefetch hints for." msgstr "" -#: params.opt:836 +#: params.opt:854 #, no-c-format msgid "Use internal function id in profile lookup." msgstr "" -#: params.opt:840 +#: params.opt:858 #, no-c-format msgid "Maximum depth of a loop nest to fully value-number optimistically." msgstr "" -#: params.opt:844 +#: params.opt:862 #, no-c-format msgid "Maximum number of disambiguations to perform per memory access." msgstr "" -#: params.opt:848 +#: params.opt:866 #, no-c-format msgid "" "Bound on the complexity of the expressions in the scalar evolutions analyzer." msgstr "" -#: params.opt:852 +#: params.opt:870 #, no-c-format msgid "Bound on size of expressions used in the scalar evolutions analyzer." msgstr "" -#: params.opt:856 +#: params.opt:874 #, no-c-format msgid "" "Hardware autoprefetcher scheduler model control flag. Number of lookahead " @@ -21151,273 +21163,273 @@ msgid "" "heuristic. Disabled by default." msgstr "" -#: params.opt:860 +#: params.opt:878 #, no-c-format msgid "Minimal distance between possibly conflicting store and load." msgstr "" -#: params.opt:864 +#: params.opt:882 #, no-c-format msgid "Which -fsched-pressure algorithm to apply." msgstr "" -#: params.opt:868 +#: params.opt:886 #, no-c-format msgid "" "The minimal probability of speculation success (in percents), so that " "speculative insn will be scheduled." msgstr "" -#: params.opt:872 +#: params.opt:890 #, no-c-format msgid "" "The minimum probability an edge must have for the scheduler to save its " "state across it." msgstr "" -#: params.opt:876 +#: params.opt:894 #, no-c-format msgid "" "Maximum number of instructions in the ready list that are considered " "eligible for renaming." msgstr "" -#: params.opt:880 +#: params.opt:898 #, no-c-format msgid "The maximum size of the lookahead window of selective scheduling." msgstr "" -#: params.opt:884 +#: params.opt:902 #, no-c-format msgid "Maximum number of times that an insn could be scheduled." msgstr "" -#: params.opt:888 +#: params.opt:906 #, no-c-format msgid "The number of prefetches that can run at the same time." msgstr "" -#: params.opt:892 +#: params.opt:910 #, no-c-format msgid "" "Target block's relative execution frequency (as a percentage) required to " "sink a statement." msgstr "" -#: params.opt:896 +#: params.opt:914 #, no-c-format msgid "" "The number of cycles the swing modulo scheduler considers when checking " "conflicts using DFA." msgstr "" -#: params.opt:900 +#: params.opt:918 #, no-c-format msgid "" "A threshold on the average loop count considered by the swing modulo " "scheduler." msgstr "" -#: params.opt:904 +#: params.opt:922 #, no-c-format msgid "" "A factor for tuning the upper bound that swing modulo scheduler uses for " "scheduling a loop." msgstr "" -#: params.opt:908 +#: params.opt:926 #, no-c-format msgid "" "The minimum value of stage count that swing modulo scheduler will generate." msgstr "" -#: params.opt:912 +#: params.opt:930 #, 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:916 +#: params.opt:934 #, 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:920 +#: params.opt:938 #, 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:924 +#: params.opt:942 #, no-c-format msgid "" "The maximum number of SSA_NAME assignments to follow in determining a value." msgstr "" -#: params.opt:928 +#: params.opt:946 #, no-c-format msgid "" "The lower bound for a buffer to be considered for stack smashing protection." msgstr "" -#: params.opt:932 +#: params.opt:950 #, no-c-format msgid "Size of the stack guard expressed as a power of two in bytes." msgstr "" -#: params.opt:936 +#: params.opt:954 #, no-c-format msgid "" "Interval in which to probe the stack expressed as a power of two in bytes." msgstr "" -#: params.opt:940 +#: params.opt:958 #, no-c-format msgid "" "Allow the store merging pass to introduce unaligned stores if it is legal to " "do so." msgstr "" -#: params.opt:944 +#: params.opt:962 #, no-c-format msgid "Maximum size of a single store merging region in bytes." msgstr "" -#: params.opt:948 +#: params.opt:966 #, no-c-format msgid "" "The maximum ratio between array size and switch branches for a switch " "conversion to take place." msgstr "" -#: params.opt:952 +#: params.opt:970 #, no-c-format msgid "Maximum number of bases stored in each modref tree." msgstr "" -#: params.opt:956 +#: params.opt:974 #, no-c-format msgid "Maximum number of references stored in each modref base." msgstr "" -#: params.opt:960 +#: params.opt:978 #, no-c-format msgid "Maximum number of accesses stored in each modref reference." msgstr "" -#: params.opt:964 +#: params.opt:982 #, no-c-format msgid "Maximum number of tests performed by modref query." msgstr "" -#: params.opt:968 +#: params.opt:986 #, no-c-format msgid "Maximum depth of DFS walk used by modref escape analysis." msgstr "" -#: params.opt:972 +#: params.opt:990 #, no-c-format msgid "Maximum number of escape points tracked by modref per SSA-name." msgstr "" -#: params.opt:976 +#: params.opt:994 #, no-c-format msgid "" "Size in bytes after which thread-local aggregates should be instrumented " "with the logging functions instead of save/restore pairs." msgstr "" -#: params.opt:980 +#: params.opt:998 #, no-c-format msgid "" "The percentage of function, weighted by execution frequency, that must be " "covered by trace formation. Used when profile feedback is not available." msgstr "" -#: params.opt:984 +#: params.opt:1002 #, no-c-format msgid "" "The percentage of function, weighted by execution frequency, that must be " "covered by trace formation. Used when profile feedback is available." msgstr "" -#: params.opt:988 +#: params.opt:1006 #, no-c-format msgid "Maximal code growth caused by tail duplication (in percent)." msgstr "" -#: params.opt:992 +#: params.opt:1010 #, no-c-format msgid "" "Stop forward growth if the probability of best edge is less than this " "threshold (in percent). Used when profile feedback is not available." msgstr "" -#: params.opt:996 +#: params.opt:1014 #, no-c-format msgid "" "Stop forward growth if the probability of best edge is less than this " "threshold (in percent). Used when profile feedback is available." msgstr "" -#: params.opt:1000 +#: params.opt:1018 #, no-c-format msgid "" "Stop reverse growth if the reverse probability of best edge is less than " "this threshold (in percent)." msgstr "" -#: params.opt:1004 +#: params.opt:1022 #, no-c-format msgid "" "Set the maximum number of instructions executed in parallel in reassociated " "tree. If 0, use the target dependent heuristic." msgstr "" -#: params.opt:1008 +#: params.opt:1026 #, no-c-format msgid "Emit special instrumentation for accesses to volatiles." msgstr "" -#: params.opt:1012 +#: params.opt:1030 #, no-c-format msgid "" "Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()." msgstr "" -#: params.opt:1016 +#: params.opt:1034 #, no-c-format msgid "" "Maximum number of nested calls to search for control dependencies during " "uninitialized variable analysis." msgstr "" -#: params.opt:1020 +#: params.opt:1038 #, no-c-format msgid "" "Instruction accounted for function prologue, epilogue and other overhead." msgstr "" -#: params.opt:1024 +#: params.opt:1042 #, no-c-format msgid "Time accounted for function prologue, epilogue and other overhead." msgstr "" -#: params.opt:1028 +#: params.opt:1046 #, no-c-format msgid "Instruction accounted for function thunk overhead." msgstr "" -#: params.opt:1032 +#: params.opt:1050 #, no-c-format msgid "Time accounted for function thunk overhead." msgstr "" -#: params.opt:1036 +#: params.opt:1054 #, no-c-format msgid "" "The denominator n of fraction 1/n of the number of profiled runs of the " @@ -21425,57 +21437,57 @@ msgid "" "order for the basic block to be considered unlikely." msgstr "" -#: params.opt:1040 +#: params.opt:1058 #, no-c-format msgid "Maximum unroll factor for the unroll-and-jam transformation." msgstr "" -#: params.opt:1044 +#: params.opt:1062 #, no-c-format msgid "" "Minimum percentage of memrefs that must go away for unroll-and-jam to be " "considered profitable." msgstr "" -#: params.opt:1048 +#: params.opt:1066 #, no-c-format msgid "" "Use direct poisoning/unpoisoning instructions for variables smaller or equal " "to this number." msgstr "" -#: params.opt:1052 +#: params.opt:1070 #, no-c-format msgid "Whether to use canonical types." msgstr "" -#: params.opt:1056 +#: params.opt:1074 #, no-c-format msgid "Enable loop epilogue vectorization using smaller vector size." msgstr "" -#: params.opt:1060 +#: params.opt:1078 #, no-c-format msgid "" "Maximum number of loop peels to enhance alignment of data references in a " "loop." msgstr "" -#: params.opt:1064 +#: params.opt:1082 #, no-c-format msgid "" "Bound on number of runtime checks inserted by the vectorizer's loop " "versioning for alias check." msgstr "" -#: params.opt:1068 +#: params.opt:1086 #, no-c-format msgid "" "Bound on number of runtime checks inserted by the vectorizer's loop " "versioning for alignment check." msgstr "" -#: params.opt:1072 +#: params.opt:1090 #, no-c-format msgid "" "Controls how loop vectorizer uses partial vectors. 0 means never, 1 means " @@ -21509,7 +21521,7 @@ msgid "expected boolean type" msgstr "" #: go/gofrontend/expressions.cc:5155 c/c-parser.c:15375 c/c-parser.c:15382 -#: cp/parser.c:37455 cp/parser.c:37462 +#: cp/parser.c:37508 cp/parser.c:37515 #, gcc-internal-format msgid "expected integer" msgstr "" @@ -21573,7 +21585,7 @@ msgstr "" #: go/gofrontend/expressions.cc:10181 go/gofrontend/expressions.cc:10262 #: go/gofrontend/expressions.cc:10335 go/gofrontend/expressions.cc:11146 #: go/gofrontend/expressions.cc:12226 go/gofrontend/expressions.cc:12240 -#: go/gofrontend/expressions.cc:12261 cp/pt.c:9041 +#: go/gofrontend/expressions.cc:12261 cp/pt.c:9071 #, gcc-internal-format msgid "too many arguments" msgstr "" @@ -21930,7 +21942,7 @@ msgstr "" #: attribs.c:455 c-family/c-attribs.c:886 c-family/c-attribs.c:2340 #: c-family/c-attribs.c:2805 c-family/c-attribs.c:4513 -#: c-family/c-attribs.c:4606 cp/decl.c:15180 cp/friend.c:303 cp/tree.c:4932 +#: c-family/c-attribs.c:4606 cp/decl.c:15198 cp/friend.c:303 cp/tree.c:4993 #, gcc-internal-format msgid "previous declaration here" msgstr "" @@ -21985,7 +21997,7 @@ msgstr "" #. is a constraint violation if it is not one of the known #. standard attributes. Diagnose it here with a pedwarn and #. then discard it to prevent a duplicate warning later. -#: attribs.c:729 attribs.c:1637 attribs.c:1647 attribs.c:1657 +#: attribs.c:729 attribs.c:1714 attribs.c:1724 attribs.c:1734 #: c-family/c-attribs.c:914 c-family/c-attribs.c:976 c-family/c-attribs.c:995 #: c-family/c-attribs.c:1013 c-family/c-attribs.c:1043 #: c-family/c-attribs.c:1064 c-family/c-attribs.c:1085 @@ -22014,20 +22026,20 @@ msgstr "" #: c-family/c-attribs.c:5171 c-family/c-attribs.c:5253 #: c-family/c-attribs.c:5309 c-family/c-attribs.c:5325 #: c-family/c-attribs.c:5479 c-family/c-common.c:5809 c-family/c-common.c:5812 -#: config/darwin.c:2131 config/arm/arm.c:7253 config/arm/arm.c:7281 -#: config/arm/arm.c:7298 config/avr/avr.c:9675 config/csky/csky.c:6108 +#: config/darwin.c:2126 config/arm/arm.c:7262 config/arm/arm.c:7290 +#: config/arm/arm.c:7307 config/avr/avr.c:9675 config/csky/csky.c:6108 #: config/csky/csky.c:6130 config/h8300/h8300.c:4918 config/h8300/h8300.c:4942 -#: config/i386/i386-options.c:3474 config/i386/i386-options.c:3632 -#: config/i386/i386-options.c:3864 config/ia64/ia64.c:785 -#: config/rs6000/rs6000.c:20292 ada/gcc-interface/utils.c:6576 +#: config/i386/i386-options.c:3492 config/i386/i386-options.c:3650 +#: config/i386/i386-options.c:3882 config/ia64/ia64.c:785 +#: config/rs6000/rs6000.c:20409 ada/gcc-interface/utils.c:6576 #: ada/gcc-interface/utils.c:6592 ada/gcc-interface/utils.c:6621 #: ada/gcc-interface/utils.c:6638 ada/gcc-interface/utils.c:6655 #: ada/gcc-interface/utils.c:6670 ada/gcc-interface/utils.c:6686 #: ada/gcc-interface/utils.c:6712 ada/gcc-interface/utils.c:6781 #: ada/gcc-interface/utils.c:6808 ada/gcc-interface/utils.c:6829 #: ada/gcc-interface/utils.c:6850 ada/gcc-interface/utils.c:6866 -#: ada/gcc-interface/utils.c:6921 brig/brig-lang.c:484 c/c-decl.c:4624 -#: c/c-decl.c:4627 c/c-decl.c:4642 c/c-parser.c:4961 jit/dummy-frontend.c:185 +#: ada/gcc-interface/utils.c:6921 brig/brig-lang.c:484 c/c-decl.c:4623 +#: c/c-decl.c:4626 c/c-decl.c:4641 c/c-parser.c:4961 jit/dummy-frontend.c:185 #: lto/lto-lang.c:288 #, gcc-internal-format msgid "%qE attribute ignored" @@ -22038,8 +22050,8 @@ msgstr "" msgid "missing %<target%> attribute for multi-versioned %qD" msgstr "" -#: attribs.c:1007 cp/decl.c:1200 cp/decl.c:2106 cp/decl.c:2152 cp/decl.c:2169 -#: cp/decl.c:2782 cp/decl.c:3237 +#: attribs.c:1007 cp/decl.c:1200 cp/decl.c:2104 cp/decl.c:2150 cp/decl.c:2167 +#: cp/decl.c:2777 cp/decl.c:3219 #, gcc-internal-format msgid "previous declaration of %qD" msgstr "" @@ -22049,51 +22061,51 @@ msgstr "" msgid "ignoring attributes applied to %qT after definition" msgstr "" -#: attribs.c:1568 +#: attribs.c:1645 #, gcc-internal-format msgid "%q+D already declared with dllexport attribute: dllimport ignored" msgstr "" -#: attribs.c:1580 +#: attribs.c:1657 #, gcc-internal-format msgid "" "%q+D redeclared without dllimport attribute after being referenced with dll " "linkage" msgstr "" -#: attribs.c:1594 +#: attribs.c:1671 #, gcc-internal-format msgid "%q+D redeclared without dllimport attribute: previous dllimport ignored" msgstr "" -#: attribs.c:1675 +#: attribs.c:1752 #, gcc-internal-format msgid "inline function %q+D declared as dllimport: attribute ignored" msgstr "" -#: attribs.c:1683 +#: attribs.c:1760 #, gcc-internal-format msgid "function %q+D definition is marked dllimport" msgstr "" -#: attribs.c:1691 +#: attribs.c:1768 #, gcc-internal-format msgid "variable %q+D definition is marked dllimport" msgstr "" -#: attribs.c:1722 +#: attribs.c:1799 #, gcc-internal-format msgid "external linkage required for symbol %q+D because of %qE attribute" msgstr "" -#: attribs.c:1736 +#: attribs.c:1813 #, gcc-internal-format msgid "" "%qE implies default visibility, but %qD has already been declared with a " "different visibility" msgstr "" -#: attribs.c:1999 +#: attribs.c:2076 #, gcc-internal-format msgid "%qD specifies more restrictive attribute than its target %qD: %s" msgid_plural "" @@ -22101,12 +22113,12 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: attribs.c:2005 attribs.c:2025 +#: attribs.c:2082 attribs.c:2102 #, gcc-internal-format msgid "%qD target declared here" msgstr "" -#: attribs.c:2019 +#: attribs.c:2096 #, gcc-internal-format msgid "%qD specifies less restrictive attribute than its target %qD: %s" msgid_plural "" @@ -22215,7 +22227,7 @@ msgstr "" msgid "offset %qwi outside bounds of constant string" msgstr "" -#: builtins.c:1454 cp/name-lookup.c:6424 +#: builtins.c:1454 cp/name-lookup.c:6441 #, gcc-internal-format msgid "%qE declared here" msgstr "" @@ -22240,734 +22252,734 @@ msgstr "" msgid "invalid third argument to %<__builtin_prefetch%>; using zero" msgstr "" -#: builtins.c:3954 +#: builtins.c:3958 #, gcc-internal-format msgid "%K%qD specified bound %E may exceed maximum object size %E" msgstr "" -#: builtins.c:3956 calls.c:1730 +#: builtins.c:3960 calls.c:1730 #, gcc-internal-format msgid "%K%qD specified bound %E exceeds maximum object size %E" msgstr "" -#: builtins.c:3961 +#: builtins.c:3965 #, gcc-internal-format msgid "%Kspecified bound %E may exceed maximum object size %E" msgstr "" -#: builtins.c:3963 +#: builtins.c:3967 #, gcc-internal-format msgid "%Kspecified bound %E exceeds maximum object size %E" msgstr "" -#: builtins.c:3970 +#: builtins.c:3974 #, gcc-internal-format msgid "%K%qD specified bound [%E, %E] may exceed maximum object size %E" msgstr "" -#: builtins.c:3972 calls.c:1735 +#: builtins.c:3976 calls.c:1735 #, gcc-internal-format msgid "%K%qD specified bound [%E, %E] exceeds maximum object size %E" msgstr "" -#: builtins.c:3978 +#: builtins.c:3982 #, gcc-internal-format msgid "%Kspecified bound [%E, %E] may exceed maximum object size %E" msgstr "" -#: builtins.c:3980 +#: builtins.c:3984 #, gcc-internal-format msgid "%Kspecified bound [%E, %E] exceeds maximum object size %E" msgstr "" -#: builtins.c:3990 +#: builtins.c:3994 #, gcc-internal-format msgid "%K%qD specified bound %E may exceed source size %E" msgstr "" -#: builtins.c:3992 +#: builtins.c:3996 #, gcc-internal-format msgid "%K%qD specified bound %E exceeds source size %E" msgstr "" -#: builtins.c:3997 +#: builtins.c:4001 #, gcc-internal-format msgid "%Kspecified bound %E may exceed source size %E" msgstr "" -#: builtins.c:3999 +#: builtins.c:4003 #, gcc-internal-format msgid "%Kspecified bound %E exceeds source size %E" msgstr "" -#: builtins.c:4006 +#: builtins.c:4010 #, gcc-internal-format msgid "%K%qD specified bound [%E, %E] may exceed source size %E" msgstr "" -#: builtins.c:4008 +#: builtins.c:4012 #, gcc-internal-format msgid "%K%qD specified bound [%E, %E] exceeds source size %E" msgstr "" -#: builtins.c:4013 +#: builtins.c:4017 #, gcc-internal-format msgid "%Kspecified bound [%E, %E] may exceed source size %E" msgstr "" -#: builtins.c:4015 +#: builtins.c:4019 #, gcc-internal-format msgid "%Kspecified bound [%E, %E] exceeds source size %E" msgstr "" -#: builtins.c:4024 +#: builtins.c:4028 #, gcc-internal-format msgid "source object declared here" msgstr "" -#: builtins.c:4027 +#: builtins.c:4031 #, gcc-internal-format msgid "source object allocated here" msgstr "" -#: builtins.c:4042 +#: builtins.c:4046 #, gcc-internal-format msgid "%K%qD specified size %E may exceed maximum object size %E" msgstr "" -#: builtins.c:4044 +#: builtins.c:4048 #, gcc-internal-format msgid "%K%qD specified size %E exceeds maximum object size %E" msgstr "" -#: builtins.c:4049 +#: builtins.c:4053 #, gcc-internal-format msgid "%Kspecified size %E may exceed maximum object size %E" msgstr "" -#: builtins.c:4051 +#: builtins.c:4055 #, gcc-internal-format msgid "%Kspecified size %E exceeds maximum object size %E" msgstr "" -#: builtins.c:4058 +#: builtins.c:4062 #, gcc-internal-format msgid "" "%K%qD specified size between %E and %E may exceed maximum object size %E" msgstr "" -#: builtins.c:4060 +#: builtins.c:4064 #, gcc-internal-format msgid "%K%qD specified size between %E and %E exceeds maximum object size %E" msgstr "" -#: builtins.c:4066 +#: builtins.c:4070 #, gcc-internal-format msgid "%Kspecified size between %E and %E may exceed maximum object size %E" msgstr "" -#: builtins.c:4068 +#: builtins.c:4072 #, gcc-internal-format msgid "%Kspecified size between %E and %E exceeds maximum object size %E" msgstr "" -#: builtins.c:4078 +#: builtins.c:4082 #, gcc-internal-format msgid "%K%qD specified bound %E may exceed destination size %E" msgstr "" -#: builtins.c:4080 +#: builtins.c:4084 #, gcc-internal-format msgid "%K%qD specified bound %E exceeds destination size %E" msgstr "" -#: builtins.c:4085 +#: builtins.c:4089 #, gcc-internal-format msgid "%Kspecified bound %E may exceed destination size %E" msgstr "" -#: builtins.c:4087 +#: builtins.c:4091 #, gcc-internal-format msgid "%Kspecified bound %E exceeds destination size %E" msgstr "" -#: builtins.c:4094 +#: builtins.c:4098 #, gcc-internal-format msgid "%K%qD specified bound [%E, %E] may exceed destination size %E" msgstr "" -#: builtins.c:4096 +#: builtins.c:4100 #, gcc-internal-format msgid "%K%qD specified bound [%E, %E] exceeds destination size %E" msgstr "" -#: builtins.c:4101 builtins.c:4103 +#: builtins.c:4105 builtins.c:4107 #, gcc-internal-format msgid "%Kspecified bound [%E, %E] exceeds destination size %E" msgstr "" -#: builtins.c:4113 +#: builtins.c:4117 #, gcc-internal-format msgid "destination object declared here" msgstr "" -#: builtins.c:4116 +#: builtins.c:4120 #, gcc-internal-format msgid "destination object allocated here" msgstr "" -#: builtins.c:4143 +#: builtins.c:4147 #, gcc-internal-format msgid "%K%qD may access %E byte in a region of size %E" msgstr "" -#: builtins.c:4145 +#: builtins.c:4149 #, gcc-internal-format msgid "%K%qD accessing %E byte in a region of size %E" msgstr "" -#: builtins.c:4148 +#: builtins.c:4152 #, gcc-internal-format msgid "%K%qD may access %E bytes in a region of size %E" msgstr "" -#: builtins.c:4150 +#: builtins.c:4154 #, gcc-internal-format msgid "%K%qD accessing %E bytes in a region of size %E" msgstr "" -#: builtins.c:4155 +#: builtins.c:4159 #, gcc-internal-format msgid "%Kmay access %E byte in a region of size %E" msgstr "" -#: builtins.c:4157 +#: builtins.c:4161 #, gcc-internal-format msgid "%Kaccessing %E byte in a region of size %E" msgstr "" -#: builtins.c:4160 +#: builtins.c:4164 #, gcc-internal-format msgid "%Kmay access %E bytes in a region of size %E" msgstr "" -#: builtins.c:4162 +#: builtins.c:4166 #, gcc-internal-format msgid "%Kaccessing %E bytes in a region of size %E" msgstr "" -#: builtins.c:4171 +#: builtins.c:4175 #, gcc-internal-format msgid "%K%qD may access %E or more bytes in a region of size %E" msgstr "" -#: builtins.c:4173 +#: builtins.c:4177 #, gcc-internal-format msgid "%K%qD accessing %E or more bytes in a region of size %E" msgstr "" -#: builtins.c:4178 +#: builtins.c:4182 #, gcc-internal-format msgid "%Kmay access %E or more bytes in a region of size %E" msgstr "" -#: builtins.c:4180 +#: builtins.c:4184 #, gcc-internal-format msgid "%Kaccessing %E or more bytes in a region of size %E" msgstr "" -#: builtins.c:4188 +#: builtins.c:4192 #, gcc-internal-format msgid "%K%qD may access between %E and %E bytes in a region of size %E" msgstr "" -#: builtins.c:4190 +#: builtins.c:4194 #, gcc-internal-format msgid "%K%qD accessing between %E and %E bytes in a region of size %E" msgstr "" -#: builtins.c:4196 +#: builtins.c:4200 #, gcc-internal-format msgid "%Kmay access between %E and %E bytes in a region of size %E" msgstr "" -#: builtins.c:4198 +#: builtins.c:4202 #, gcc-internal-format msgid "%Kaccessing between %E and %E bytes in a region of size %E" msgstr "" -#: builtins.c:4211 +#: builtins.c:4215 #, gcc-internal-format msgid "%K%qD may write %E byte into a region of size %E" msgstr "" -#: builtins.c:4213 +#: builtins.c:4217 #, gcc-internal-format msgid "" "%K%qD writing %E byte into a region of size %E overflows the destination" msgstr "" -#: builtins.c:4216 +#: builtins.c:4220 #, gcc-internal-format msgid "%K%qD may write %E bytes into a region of size %E" msgstr "" -#: builtins.c:4218 +#: builtins.c:4222 #, gcc-internal-format msgid "" "%K%qD writing %E bytes into a region of size %E overflows the destination" msgstr "" -#: builtins.c:4223 +#: builtins.c:4227 #, gcc-internal-format msgid "%Kmay write %E byte into a region of size %E" msgstr "" -#: builtins.c:4225 +#: builtins.c:4229 #, gcc-internal-format msgid "%Kwriting %E byte into a region of size %E overflows the destination" msgstr "" -#: builtins.c:4228 +#: builtins.c:4232 #, gcc-internal-format msgid "%Kmay write %E bytes into a region of size %E" msgstr "" -#: builtins.c:4230 +#: builtins.c:4234 #, gcc-internal-format msgid "%Kwriting %E bytes into a region of size %E overflows the destination" msgstr "" -#: builtins.c:4239 +#: builtins.c:4243 #, gcc-internal-format msgid "%K%qD may write %E or more bytes into a region of size %E" msgstr "" -#: builtins.c:4241 builtins.c:4779 +#: builtins.c:4245 builtins.c:4783 #, gcc-internal-format msgid "" "%K%qD writing %E or more bytes into a region of size %E overflows the " "destination" msgstr "" -#: builtins.c:4247 +#: builtins.c:4251 #, gcc-internal-format msgid "%Kmay write %E or more bytes into a region of size %E" msgstr "" -#: builtins.c:4249 builtins.c:4784 +#: builtins.c:4253 builtins.c:4788 #, gcc-internal-format msgid "" "%Kwriting %E or more bytes into a region of size %E overflows the destination" msgstr "" -#: builtins.c:4258 +#: builtins.c:4262 #, gcc-internal-format msgid "%K%qD may write between %E and %E bytes into a region of size %E" msgstr "" -#: builtins.c:4260 +#: builtins.c:4264 #, gcc-internal-format msgid "" "%K%qD writing between %E and %E bytes into a region of size %E overflows the " "destination" msgstr "" -#: builtins.c:4267 +#: builtins.c:4271 #, gcc-internal-format msgid "%Kmay write between %E and %E bytes into a region of size %E" msgstr "" -#: builtins.c:4269 +#: builtins.c:4273 #, gcc-internal-format msgid "" "%Kwriting between %E and %E bytes into a region of size %E overflows the " "destination" msgstr "" -#: builtins.c:4284 +#: builtins.c:4288 #, gcc-internal-format msgid "%K%qD may read %E byte from a region of size %E" msgstr "" -#: builtins.c:4286 +#: builtins.c:4290 #, gcc-internal-format msgid "%K%qD reading %E byte from a region of size %E" msgstr "" -#: builtins.c:4289 +#: builtins.c:4293 #, gcc-internal-format msgid "%K%qD may read %E bytes from a region of size %E" msgstr "" -#: builtins.c:4291 +#: builtins.c:4295 #, gcc-internal-format msgid "%K%qD reading %E bytes from a region of size %E" msgstr "" -#: builtins.c:4297 +#: builtins.c:4301 #, gcc-internal-format msgid "%Kmay read %E byte from a region of size %E" msgstr "" -#: builtins.c:4299 +#: builtins.c:4303 #, gcc-internal-format msgid "%Kreading %E byte from a region of size %E" msgstr "" -#: builtins.c:4302 +#: builtins.c:4306 #, gcc-internal-format msgid "%Kmay read %E bytes from a region of size %E" msgstr "" -#: builtins.c:4304 +#: builtins.c:4308 #, gcc-internal-format msgid "%Kreading %E bytes from a region of size %E" msgstr "" -#: builtins.c:4313 +#: builtins.c:4317 #, gcc-internal-format msgid "%K%qD may read %E or more bytes from a region of size %E" msgstr "" -#: builtins.c:4315 +#: builtins.c:4319 #, gcc-internal-format msgid "%K%qD reading %E or more bytes from a region of size %E" msgstr "" -#: builtins.c:4320 +#: builtins.c:4324 #, gcc-internal-format msgid "%Kmay read %E or more bytes from a region of size %E" msgstr "" -#: builtins.c:4322 +#: builtins.c:4326 #, gcc-internal-format msgid "%Kreading %E or more bytes from a region of size %E" msgstr "" -#: builtins.c:4330 +#: builtins.c:4334 #, gcc-internal-format msgid "%K%qD may read between %E and %E bytes from a region of size %E" msgstr "" -#: builtins.c:4332 +#: builtins.c:4336 #, gcc-internal-format msgid "%K%qD reading between %E and %E bytes from a region of size %E" msgstr "" -#: builtins.c:4337 +#: builtins.c:4341 #, gcc-internal-format msgid "%Kmay read between %E and %E bytes from a region of size %E" msgstr "" -#: builtins.c:4339 +#: builtins.c:4343 #, gcc-internal-format msgid "%Kreading between %E and %E bytes from a region of size %E" msgstr "" -#: builtins.c:4354 +#: builtins.c:4358 #, gcc-internal-format msgid "%K%qD expecting %E byte in a region of size %E" msgid_plural "%K%qD expecting %E bytes in a region of size %E" msgstr[0] "" msgstr[1] "" -#: builtins.c:4359 +#: builtins.c:4363 #, gcc-internal-format msgid "%Kexpecting %E byte in a region of size %E" msgid_plural "%Kexpecting %E bytes in a region of size %E" msgstr[0] "" msgstr[1] "" -#: builtins.c:4367 +#: builtins.c:4371 #, gcc-internal-format msgid "%K%qD expecting %E or more bytes in a region of size %E" msgstr "" -#: builtins.c:4371 +#: builtins.c:4375 #, gcc-internal-format msgid "%Kexpecting %E or more bytes in a region of size %E" msgstr "" -#: builtins.c:4378 +#: builtins.c:4382 #, gcc-internal-format msgid "%K%qD expecting between %E and %E bytes in a region of size %E" msgstr "" -#: builtins.c:4382 +#: builtins.c:4386 #, gcc-internal-format msgid "%Kexpecting between %E and %E bytes in a region of size %E" msgstr "" -#: builtins.c:4545 +#: builtins.c:4549 #, gcc-internal-format msgid "at offset %s into destination object %qE of size %s" msgstr "" -#: builtins.c:4548 +#: builtins.c:4552 #, gcc-internal-format msgid "destination object %qE of size %s" msgstr "" -#: builtins.c:4554 +#: builtins.c:4558 #, gcc-internal-format msgid "at offset %s into destination object of size %s allocated by %qE" msgstr "" -#: builtins.c:4557 +#: builtins.c:4561 #, gcc-internal-format msgid "destination object of size %s allocated by %qE" msgstr "" -#: builtins.c:4565 +#: builtins.c:4569 #, gcc-internal-format msgid "at offset %s into source object %qE of size %s" msgstr "" -#: builtins.c:4568 +#: builtins.c:4572 #, gcc-internal-format msgid "source object %qE of size %s" msgstr "" -#: builtins.c:4575 +#: builtins.c:4579 #, gcc-internal-format msgid "at offset %s into source object of size %s allocated by %qE" msgstr "" -#: builtins.c:4578 +#: builtins.c:4582 #, gcc-internal-format msgid "source object of size %s allocated by %qE" msgstr "" -#: builtins.c:6425 builtins.c:6498 +#: builtins.c:6429 builtins.c:6502 #, gcc-internal-format msgid "%K%qD specified bound %E equals destination size" msgstr "" -#: builtins.c:7390 gimplify.c:3383 +#: builtins.c:7394 gimplify.c:3383 #, gcc-internal-format msgid "too few arguments to function %<va_start%>" msgstr "" -#: builtins.c:7490 +#: builtins.c:7494 #, gcc-internal-format msgid "invalid argument to %qD" msgstr "" -#: builtins.c:7503 +#: builtins.c:7507 #, gcc-internal-format msgid "unsupported argument to %qD" msgstr "" #. Warn since no effort is made to ensure that any frame #. beyond the current one exists or can be safely reached. -#: builtins.c:7511 +#: builtins.c:7515 #, gcc-internal-format msgid "calling %qD with a nonzero argument is unsafe" msgstr "" -#: builtins.c:7841 builtins.c:7881 +#: builtins.c:7845 builtins.c:7885 #, gcc-internal-format msgid "both arguments to %<__builtin___clear_cache%> must be pointers" msgstr "" -#: builtins.c:7971 +#: builtins.c:7975 #, gcc-internal-format msgid "trampoline generated for nested function %qD" msgstr "" -#: builtins.c:8366 builtins.c:8379 +#: builtins.c:8370 builtins.c:8383 #, gcc-internal-format msgid "%qD changed semantics in GCC 4.4" msgstr "" -#: builtins.c:8485 +#: builtins.c:8489 #, gcc-internal-format msgid "unknown architecture specifier in memory model to builtin" msgstr "" -#: builtins.c:8493 +#: builtins.c:8497 #, gcc-internal-format msgid "invalid memory model argument to builtin" msgstr "" -#: builtins.c:8554 builtins.c:8681 +#: builtins.c:8558 builtins.c:8685 #, gcc-internal-format msgid "" "failure memory model cannot be stronger than success memory model for " "%<__atomic_compare_exchange%>" msgstr "" -#: builtins.c:8562 builtins.c:8689 +#: builtins.c:8566 builtins.c:8693 #, gcc-internal-format msgid "invalid failure memory model for %<__atomic_compare_exchange%>" msgstr "" -#: builtins.c:8747 +#: builtins.c:8751 #, gcc-internal-format msgid "invalid memory model for %<__atomic_load%>" msgstr "" -#: builtins.c:8779 builtins.c:8972 +#: builtins.c:8783 builtins.c:8976 #, gcc-internal-format msgid "invalid memory model for %<__atomic_store%>" msgstr "" -#: builtins.c:9093 +#: builtins.c:9097 #, gcc-internal-format msgid "non-constant argument 1 to %qs" msgstr "" -#: builtins.c:9135 +#: builtins.c:9139 #, gcc-internal-format msgid "non-integer argument 1 to %qs" msgstr "" -#: builtins.c:9199 +#: builtins.c:9203 #, gcc-internal-format msgid "%<__builtin_thread_pointer%> is not supported on this target" msgstr "" -#: builtins.c:9219 +#: builtins.c:9223 #, gcc-internal-format msgid "%<__builtin_set_thread_pointer%> is not supported on this target" msgstr "" -#: builtins.c:9278 +#: builtins.c:9282 #, gcc-internal-format msgid "%qs only supported in OpenACC code" msgstr "" -#: builtins.c:9285 +#: builtins.c:9289 #, gcc-internal-format msgid "non-constant argument 0 to %qs" msgstr "" -#: builtins.c:9297 +#: builtins.c:9301 #, gcc-internal-format msgid "illegal argument 0 to %qs" msgstr "" #. All valid uses of __builtin_va_arg_pack () are removed during #. inlining. -#: builtins.c:9755 expr.c:11247 +#: builtins.c:9759 expr.c:11247 #, gcc-internal-format msgid "%Kinvalid use of %<__builtin_va_arg_pack ()%>" msgstr "" #. All valid uses of __builtin_va_arg_pack_len () are removed during #. inlining. -#: builtins.c:9761 +#: builtins.c:9765 #, gcc-internal-format msgid "%Kinvalid use of %<__builtin_va_arg_pack_len ()%>" msgstr "" -#: builtins.c:10093 +#: builtins.c:10097 #, gcc-internal-format msgid "%<__builtin_longjmp%> second argument must be 1" msgstr "" -#: builtins.c:10986 +#: builtins.c:10990 #, gcc-internal-format msgid "target format does not support infinity" msgstr "" -#: builtins.c:12607 +#: builtins.c:12611 #, gcc-internal-format msgid "%<va_start%> used in function with fixed arguments" msgstr "" -#: builtins.c:12615 +#: builtins.c:12619 #, gcc-internal-format msgid "wrong number of arguments to function %<va_start%>" msgstr "" -#: builtins.c:12630 +#: builtins.c:12634 #, gcc-internal-format msgid "%<__builtin_next_arg%> called without an argument" msgstr "" -#: builtins.c:12635 +#: builtins.c:12639 #, gcc-internal-format msgid "wrong number of arguments to function %<__builtin_next_arg%>" msgstr "" -#: builtins.c:12668 +#: builtins.c:12672 #, gcc-internal-format msgid "second parameter of %<va_start%> not last named argument" msgstr "" -#: builtins.c:12681 +#: builtins.c:12685 #, gcc-internal-format msgid "" "undefined behavior when second parameter of %<va_start%> is declared with " "%<register%> storage" msgstr "" -#: builtins.c:12710 +#: builtins.c:12714 #, gcc-internal-format msgid "%Kfirst argument of %qD must be a pointer, second integer constant" msgstr "" -#: builtins.c:12723 +#: builtins.c:12727 #, gcc-internal-format msgid "%Klast argument of %qD is not integer constant between 0 and 3" msgstr "" -#: builtins.c:13526 +#: builtins.c:13530 #, gcc-internal-format msgid "%K%qD called on pointer %qE with nonzero offset%s" msgstr "" -#: builtins.c:13531 builtins.c:13595 gimple-ssa-isolate-paths.c:412 -#: tree.c:13239 tree.c:13276 c/c-typeck.c:2939 c/c-typeck.c:3026 -#: c/c-typeck.c:5541 c/c-typeck.c:10767 c/c-typeck.c:10784 -#: c/gimple-parser.c:2416 c/gimple-parser.c:2424 cp/call.c:7278 cp/call.c:9295 -#: cp/constexpr.c:843 cp/constexpr.c:3583 cp/cvt.c:1077 cp/cvt.c:1115 -#: cp/decl.c:8251 cp/decl.c:15330 cp/decl.c:15709 cp/decl2.c:5623 -#: cp/decl2.c:5674 cp/parser.c:20758 cp/pt.c:8849 cp/semantics.c:2093 -#: cp/semantics.c:3337 cp/semantics.c:4424 cp/typeck.c:1803 cp/typeck.c:2020 -#: cp/typeck.c:4091 cp/typeck.c:9787 +#: builtins.c:13535 builtins.c:13599 gimple-ssa-isolate-paths.c:412 +#: tree.c:13239 tree.c:13276 c/c-typeck.c:2989 c/c-typeck.c:3076 +#: c/c-typeck.c:5601 c/c-typeck.c:10827 c/c-typeck.c:10844 +#: c/gimple-parser.c:2416 c/gimple-parser.c:2424 cp/call.c:7282 cp/call.c:9315 +#: cp/constexpr.c:844 cp/constexpr.c:3638 cp/cvt.c:1077 cp/cvt.c:1115 +#: cp/decl.c:8257 cp/decl.c:15348 cp/decl.c:15727 cp/decl2.c:5624 +#: cp/decl2.c:5675 cp/parser.c:20795 cp/pt.c:8879 cp/semantics.c:2112 +#: cp/semantics.c:3355 cp/semantics.c:4452 cp/typeck.c:1814 cp/typeck.c:2031 +#: cp/typeck.c:4102 cp/typeck.c:9794 #, gcc-internal-format msgid "declared here" msgstr "" -#: builtins.c:13541 builtins.c:13666 +#: builtins.c:13545 builtins.c:13670 #, gcc-internal-format msgid "returned from %qD" msgstr "" -#: builtins.c:13544 +#: builtins.c:13548 #, gcc-internal-format msgid "returned from %qT" msgstr "" -#: builtins.c:13546 +#: builtins.c:13550 #, gcc-internal-format msgid "obtained here" msgstr "" -#: builtins.c:13589 +#: builtins.c:13593 #, gcc-internal-format msgid "%K%qD called on unallocated object %qD" msgstr "" -#: builtins.c:13609 +#: builtins.c:13613 #, gcc-internal-format msgid "%K%qD called on a pointer to an unallocated object %qE" msgstr "" -#: builtins.c:13618 +#: builtins.c:13622 #, gcc-internal-format msgid "assigned here" msgstr "" -#: builtins.c:13647 +#: builtins.c:13651 #, gcc-internal-format msgid "%K%qD called on pointer returned from a mismatched allocation function" msgstr "" -#: builtins.c:13656 +#: builtins.c:13660 #, gcc-internal-format msgid "%K%qD called on pointer to an unallocated object" msgstr "" @@ -23750,315 +23762,315 @@ msgstr "" msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)" msgstr "" -#: cgraph.c:3139 +#: cgraph.c:3150 #, gcc-internal-format msgid "caller edge count invalid" msgstr "" -#: cgraph.c:3235 +#: cgraph.c:3246 #, gcc-internal-format msgid "missing indirect call in speculative call sequence" msgstr "" -#: cgraph.c:3240 +#: cgraph.c:3251 #, gcc-internal-format msgid "indirect call in speculative call sequence has no speculative flag" msgstr "" -#: cgraph.c:3270 +#: cgraph.c:3281 #, gcc-internal-format msgid "speculative edges are not adjacent" msgstr "" -#: cgraph.c:3276 +#: cgraph.c:3287 #, gcc-internal-format, gfc-internal-format msgid "direct call to %s in speculative call sequence has no speculative flag" msgstr "" -#: cgraph.c:3282 cgraph.c:3312 +#: cgraph.c:3293 cgraph.c:3323 #, gcc-internal-format, gfc-internal-format msgid "" "direct call to %s in speculative call sequence has speculative_id %i out of " "range" msgstr "" -#: cgraph.c:3289 +#: cgraph.c:3300 #, gcc-internal-format, gfc-internal-format msgid "" "duplicate direct call to %s in speculative call sequence with speculative_id " "%i" msgstr "" -#: cgraph.c:3300 +#: cgraph.c:3311 #, gcc-internal-format msgid "" "call stmt hash does not point to first direct edge of speculative call " "sequence" msgstr "" -#: cgraph.c:3319 +#: cgraph.c:3330 #, gcc-internal-format, gfc-internal-format msgid "" "duplicate reference %s in speculative call sequence with speculative_id %i" msgstr "" -#: cgraph.c:3332 +#: cgraph.c:3343 #, gcc-internal-format, gfc-internal-format msgid "missing direct call for speculation %i" msgstr "" -#: cgraph.c:3337 +#: cgraph.c:3348 #, gcc-internal-format, gfc-internal-format msgid "missing ref for speculation %i" msgstr "" -#: cgraph.c:3346 +#: cgraph.c:3357 #, gcc-internal-format, gfc-internal-format msgid "" "number of speculative targets %i mismatched with " "num_speculative_call_targets %i" msgstr "" -#: cgraph.c:3375 +#: cgraph.c:3386 #, gcc-internal-format, gfc-internal-format msgid "aux field set for edge %s->%s" msgstr "" -#: cgraph.c:3382 +#: cgraph.c:3393 #, gcc-internal-format msgid "cgraph count invalid" msgstr "" -#: cgraph.c:3387 +#: cgraph.c:3398 #, gcc-internal-format msgid "inline clone in same comdat group list" msgstr "" -#: cgraph.c:3392 +#: cgraph.c:3403 #, gcc-internal-format msgid "inline clone count is not compatible" msgstr "" -#: cgraph.c:3399 +#: cgraph.c:3410 #, gcc-internal-format msgid "tp_first_run must be non-negative" msgstr "" -#: cgraph.c:3404 +#: cgraph.c:3415 #, gcc-internal-format msgid "local symbols must be defined" msgstr "" -#: cgraph.c:3409 +#: cgraph.c:3420 #, gcc-internal-format msgid "externally visible inline clone" msgstr "" -#: cgraph.c:3414 +#: cgraph.c:3425 #, gcc-internal-format msgid "inline clone with address taken" msgstr "" -#: cgraph.c:3419 +#: cgraph.c:3430 #, gcc-internal-format msgid "inline clone is forced to output" msgstr "" -#: cgraph.c:3426 +#: cgraph.c:3437 #, gcc-internal-format msgid "calls_comdat_local is set outside of a comdat group" msgstr "" -#: cgraph.c:3431 +#: cgraph.c:3442 #, gcc-internal-format msgid "invalid calls_comdat_local flag" msgstr "" -#: cgraph.c:3438 +#: cgraph.c:3449 #, gcc-internal-format msgid "malloc attribute should be used for a function that returns a pointer" msgstr "" -#: cgraph.c:3446 +#: cgraph.c:3457 #, gcc-internal-format, gfc-internal-format msgid "aux field set for indirect edge from %s" msgstr "" -#: cgraph.c:3452 cgraph.c:3512 +#: cgraph.c:3463 cgraph.c:3523 #, gcc-internal-format msgid "edge count is not compatible with function count" msgstr "" -#: cgraph.c:3460 +#: cgraph.c:3471 #, gcc-internal-format, gfc-internal-format msgid "" "An indirect edge from %s is not marked as indirect or has associated " "indirect_info, the corresponding statement is: " msgstr "" -#: cgraph.c:3468 cgraph.c:3539 +#: cgraph.c:3479 cgraph.c:3550 #, gcc-internal-format msgid "edge has both call_stmt and lto_stmt_uid set" msgstr "" -#: cgraph.c:3480 +#: cgraph.c:3491 #, gcc-internal-format, gfc-internal-format msgid "comdat-local function called by %s outside its comdat" msgstr "" -#: cgraph.c:3490 +#: cgraph.c:3501 #, gcc-internal-format msgid "inlined_to pointer is wrong" msgstr "" -#: cgraph.c:3495 +#: cgraph.c:3506 #, gcc-internal-format msgid "multiple inline callers" msgstr "" -#: cgraph.c:3502 +#: cgraph.c:3513 #, gcc-internal-format msgid "inlined_to pointer set for noninline callers" msgstr "" -#: cgraph.c:3529 +#: cgraph.c:3540 #, gcc-internal-format msgid "caller edge count does not match BB count" msgstr "" -#: cgraph.c:3560 +#: cgraph.c:3571 #, gcc-internal-format msgid "indirect call count does not match BB count" msgstr "" -#: cgraph.c:3577 +#: cgraph.c:3588 #, gcc-internal-format msgid "reference has both stmt and lto_stmt_uid set" msgstr "" -#: cgraph.c:3588 +#: cgraph.c:3599 #, gcc-internal-format msgid "inlined_to pointer is set but no predecessors found" msgstr "" -#: cgraph.c:3593 +#: cgraph.c:3604 #, gcc-internal-format msgid "inlined_to pointer refers to itself" msgstr "" -#: cgraph.c:3604 +#: cgraph.c:3615 #, gcc-internal-format msgid "cgraph_node has wrong clone_of" msgstr "" -#: cgraph.c:3617 +#: cgraph.c:3628 #, gcc-internal-format msgid "cgraph_node has wrong clone list" msgstr "" -#: cgraph.c:3623 +#: cgraph.c:3634 #, gcc-internal-format msgid "cgraph_node is in clone list but it is not clone" msgstr "" -#: cgraph.c:3628 +#: cgraph.c:3639 #, gcc-internal-format msgid "cgraph_node has wrong prev_clone pointer" msgstr "" -#: cgraph.c:3633 +#: cgraph.c:3644 #, gcc-internal-format msgid "double linked list of clones corrupted" msgstr "" -#: cgraph.c:3645 +#: cgraph.c:3656 #, gcc-internal-format msgid "Alias has call edges" msgstr "" -#: cgraph.c:3651 +#: cgraph.c:3662 #, gcc-internal-format msgid "Alias has non-alias reference" msgstr "" -#: cgraph.c:3656 +#: cgraph.c:3667 #, gcc-internal-format msgid "Alias has more than one alias reference" msgstr "" -#: cgraph.c:3663 +#: cgraph.c:3674 #, gcc-internal-format msgid "Analyzed alias has no reference" msgstr "" -#: cgraph.c:3672 +#: cgraph.c:3683 #, gcc-internal-format msgid "No edge out of thunk node" msgstr "" -#: cgraph.c:3677 +#: cgraph.c:3688 #, gcc-internal-format msgid "More than one edge out of thunk node" msgstr "" -#: cgraph.c:3682 +#: cgraph.c:3693 #, gcc-internal-format msgid "Thunk is not supposed to have body" msgstr "" -#: cgraph.c:3716 +#: cgraph.c:3727 #, gcc-internal-format msgid "shared call_stmt:" msgstr "" -#: cgraph.c:3724 +#: cgraph.c:3735 #, gcc-internal-format msgid "edge points to wrong declaration:" msgstr "" -#: cgraph.c:3733 +#: cgraph.c:3744 #, gcc-internal-format msgid "" "an indirect edge with unknown callee corresponding to a call_stmt with a " "known declaration:" msgstr "" -#: cgraph.c:3743 +#: cgraph.c:3754 #, gcc-internal-format msgid "missing callgraph edge for call stmt:" msgstr "" -#: cgraph.c:3753 +#: cgraph.c:3764 #, gcc-internal-format msgid "reference to dead statement" msgstr "" -#: cgraph.c:3766 +#: cgraph.c:3777 #, gcc-internal-format, gfc-internal-format msgid "edge %s->%s has no corresponding call_stmt" msgstr "" -#: cgraph.c:3778 +#: cgraph.c:3789 #, gcc-internal-format, gfc-internal-format msgid "an indirect edge from %s has no corresponding call_stmt" msgstr "" -#: cgraph.c:3797 cgraph.c:3810 +#: cgraph.c:3808 cgraph.c:3821 #, gcc-internal-format msgid "missing origin for a node in a nested list" msgstr "" -#: cgraph.c:3802 +#: cgraph.c:3813 #, gcc-internal-format msgid "origin points to a different parent" msgstr "" -#: cgraph.c:3818 +#: cgraph.c:3829 #, gcc-internal-format msgid "verify_cgraph_node failed" msgstr "" -#: cgraph.c:3940 varpool.c:304 +#: cgraph.c:3951 varpool.c:304 #, gcc-internal-format, gfc-internal-format msgid "%s: section %s.%d is missing" msgstr "" @@ -24139,12 +24151,12 @@ msgid "%<weakref%> attribute ignored because variable is initialized" msgstr "" #. include_self= -#: cgraphunit.c:1082 c/c-decl.c:12107 +#: cgraphunit.c:1082 c/c-decl.c:12106 #, gcc-internal-format msgid "%q+F used but never defined" msgstr "" -#: cgraphunit.c:1084 c/c-decl.c:12117 +#: cgraphunit.c:1084 c/c-decl.c:12116 #, gcc-internal-format msgid "%q+F declared %<static%> but never defined" msgstr "" @@ -24214,7 +24226,7 @@ msgstr "" msgid "size of return value of %q+D is larger than %wu bytes" msgstr "" -#: cgraphunit.c:2394 +#: cgraphunit.c:2390 #, gcc-internal-format msgid "nodes with unreleased memory found" msgstr "" @@ -24630,12 +24642,12 @@ msgid "" "cfi_personality%> directive" msgstr "" -#: dwarf2out.c:11050 +#: dwarf2out.c:11059 #, gcc-internal-format msgid "%<-gdwarf-6%> is output as version 5 with incompatibilities" msgstr "" -#: dwarf2out.c:14644 +#: dwarf2out.c:14793 #, gcc-internal-format, gfc-internal-format msgid "non-delegitimized UNSPEC %s (%d) found in variable location" msgstr "" @@ -24655,7 +24667,7 @@ msgstr "" msgid "internal consistency failure" msgstr "" -#: emit-rtl.c:4038 +#: emit-rtl.c:4039 #, gcc-internal-format msgid "ICE: emit_insn used where emit_jump_insn needed:\n" msgstr "" @@ -24789,45 +24801,45 @@ msgstr "" msgid "large fixed-point constant implicitly truncated to fixed-point type" msgstr "" -#: fold-const.c:4617 fold-const.c:4627 +#: fold-const.c:4618 fold-const.c:4628 #, gcc-internal-format, gfc-internal-format msgid "comparison is always %d due to width of bit-field" msgstr "" -#: fold-const.c:5981 tree-ssa-reassoc.c:2736 tree-ssa-reassoc.c:3752 +#: fold-const.c:5982 tree-ssa-reassoc.c:2736 tree-ssa-reassoc.c:3752 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying range test" msgstr "" -#: fold-const.c:6441 fold-const.c:6455 +#: fold-const.c:6442 fold-const.c:6456 #, gcc-internal-format, gfc-internal-format msgid "comparison is always %d" msgstr "" -#: fold-const.c:6599 +#: fold-const.c:6600 #, gcc-internal-format msgid "%<or%> of unmatched not-equal tests is always 1" msgstr "" -#: fold-const.c:6604 +#: fold-const.c:6605 #, gcc-internal-format msgid "%<and%> of mutually exclusive equal-tests is always 0" msgstr "" -#: fold-const.c:9811 +#: fold-const.c:9812 #, gcc-internal-format msgid "" "assuming signed overflow does not occur when reducing constant in comparison" msgstr "" -#: fold-const.c:10211 +#: fold-const.c:10212 #, gcc-internal-format msgid "" "assuming signed overflow does not occur when combining constants around a " "comparison" msgstr "" -#: fold-const.c:13468 +#: fold-const.c:13469 #, gcc-internal-format msgid "fold check: original tree changed by fold" msgstr "" @@ -24842,7 +24854,7 @@ msgstr "" msgid "total size of local objects exceeds maximum %wu" msgstr "" -#: function.c:1786 gimplify.c:6328 gimplify.c:6488 +#: function.c:1786 gimplify.c:6329 gimplify.c:6489 #, gcc-internal-format msgid "impossible constraint in %<asm%>" msgstr "" @@ -25462,7 +25474,7 @@ msgstr "" msgid "function may return address of local variable" msgstr "" -#: gimple-ssa-isolate-paths.c:409 c/c-typeck.c:10861 +#: gimple-ssa-isolate-paths.c:409 c/c-typeck.c:10921 #, gcc-internal-format msgid "function returns address of local variable" msgstr "" @@ -25903,53 +25915,53 @@ msgstr "" msgid "%Gnull format string" msgstr "" -#: gimple-ssa-warn-alloca.c:288 +#: gimple-ssa-warn-alloca.c:287 msgid "%Guse of %<alloca%>" msgstr "" -#: gimple-ssa-warn-alloca.c:324 +#: gimple-ssa-warn-alloca.c:323 msgid "%Gargument to variable-length array may be too large" msgstr "" -#: gimple-ssa-warn-alloca.c:326 +#: gimple-ssa-warn-alloca.c:325 msgid "%Gargument to %<alloca%> may be too large" msgstr "" -#: gimple-ssa-warn-alloca.c:332 +#: gimple-ssa-warn-alloca.c:331 #, gcc-internal-format msgid "limit is %wu bytes, but argument may be as large as %s" msgstr "" -#: gimple-ssa-warn-alloca.c:344 +#: gimple-ssa-warn-alloca.c:343 msgid "%Gargument to variable-length array is too large" msgstr "" -#: gimple-ssa-warn-alloca.c:346 +#: gimple-ssa-warn-alloca.c:345 msgid "%Gargument to %<alloca%> is too large" msgstr "" -#: gimple-ssa-warn-alloca.c:351 +#: gimple-ssa-warn-alloca.c:350 #, gcc-internal-format msgid "limit is %wu bytes, but argument is %s" msgstr "" -#: gimple-ssa-warn-alloca.c:360 +#: gimple-ssa-warn-alloca.c:359 msgid "%Gunbounded use of variable-length array" msgstr "" -#: gimple-ssa-warn-alloca.c:361 +#: gimple-ssa-warn-alloca.c:360 msgid "%Gunbounded use of %<alloca%>" msgstr "" -#: gimple-ssa-warn-alloca.c:367 +#: gimple-ssa-warn-alloca.c:366 msgid "%Guse of %<alloca%> within a loop" msgstr "" -#: gimple-ssa-warn-alloca.c:372 +#: gimple-ssa-warn-alloca.c:371 msgid "%Gargument to variable-length array is zero" msgstr "" -#: gimple-ssa-warn-alloca.c:374 +#: gimple-ssa-warn-alloca.c:373 msgid "%Gargument to %<alloca%> is zero" msgstr "" @@ -26112,7 +26124,7 @@ msgid "" "with type %qT" msgstr "" -#: gimple-ssa-warn-restrict.c:1773 c-family/c-warn.c:3734 +#: gimple-ssa-warn-restrict.c:1773 c-family/c-warn.c:3735 #, gcc-internal-format msgid "array %qD declared here" msgstr "" @@ -26142,11 +26154,11 @@ msgid "%G%qD offset %s is out of the bounds of object %qD with type %qT" msgstr "" #: gimple-ssa-warn-restrict.c:1818 tree-ssa-uninit.c:586 tree-ssa-uninit.c:664 -#: c/c-decl.c:3873 c/c-decl.c:4146 c/c-typeck.c:8868 cp/class.c:1437 -#: cp/class.c:3253 cp/constexpr.c:956 cp/decl.c:4209 cp/decl.c:11926 -#: cp/decl.c:12405 cp/decl.c:12414 cp/friend.c:386 cp/friend.c:396 -#: cp/init.c:2665 cp/parser.c:3434 cp/parser.c:3580 cp/parser.c:3631 -#: cp/parser.c:6768 cp/parser.c:23234 +#: c/c-decl.c:3872 c/c-decl.c:4145 c/c-typeck.c:8928 cp/class.c:1444 +#: cp/class.c:3260 cp/constexpr.c:957 cp/decl.c:4197 cp/decl.c:11944 +#: cp/decl.c:12423 cp/decl.c:12432 cp/friend.c:386 cp/friend.c:396 +#: cp/init.c:2672 cp/parser.c:3434 cp/parser.c:3580 cp/parser.c:3631 +#: cp/parser.c:6768 cp/parser.c:23271 #, gcc-internal-format msgid "%qD declared here" msgstr "" @@ -26223,340 +26235,340 @@ msgstr "" msgid "using result of function returning %<void%>" msgstr "" -#: gimplify.c:6329 +#: gimplify.c:6330 #, gcc-internal-format, gfc-internal-format msgid "non-memory output %d must stay in memory" msgstr "" -#: gimplify.c:6342 +#: gimplify.c:6343 #, gcc-internal-format msgid "invalid lvalue in %<asm%> output %d" msgstr "" -#: gimplify.c:6489 +#: gimplify.c:6490 #, gcc-internal-format, gfc-internal-format msgid "non-memory input %d must stay in memory" msgstr "" -#: gimplify.c:6529 gimplify.c:6538 +#: gimplify.c:6530 gimplify.c:6539 #, gcc-internal-format, gfc-internal-format msgid "memory input %d is not directly addressable" msgstr "" -#: gimplify.c:7152 +#: gimplify.c:7153 #, gcc-internal-format msgid "" "threadprivate variable %qE used in a region with %<order(concurrent)%> clause" msgstr "" -#: gimplify.c:7154 +#: gimplify.c:7155 #, gcc-internal-format msgid "enclosing region" msgstr "" -#: gimplify.c:7158 +#: gimplify.c:7159 #, gcc-internal-format msgid "threadprivate variable %qE used in target region" msgstr "" -#: gimplify.c:7160 +#: gimplify.c:7161 #, gcc-internal-format msgid "enclosing target region" msgstr "" -#: gimplify.c:7173 +#: gimplify.c:7174 #, gcc-internal-format msgid "threadprivate variable %qE used in untied task" msgstr "" -#: gimplify.c:7175 +#: gimplify.c:7176 #, gcc-internal-format msgid "enclosing task" msgstr "" -#: gimplify.c:7260 +#: gimplify.c:7261 #, gcc-internal-format msgid "%qE not specified in enclosing %qs" msgstr "" -#: gimplify.c:7262 +#: gimplify.c:7263 #, gcc-internal-format msgid "enclosing %qs" msgstr "" -#: gimplify.c:7405 +#: gimplify.c:7406 #, gcc-internal-format msgid "%qE not specified in enclosing OpenACC %qs construct" msgstr "" -#: gimplify.c:7407 +#: gimplify.c:7408 #, gcc-internal-format msgid "enclosing OpenACC %qs construct" msgstr "" -#: gimplify.c:7468 +#: gimplify.c:7469 #, gcc-internal-format msgid "%qE with %<link%> clause used in %<routine%> function" msgstr "" -#: gimplify.c:7476 +#: gimplify.c:7477 #, gcc-internal-format msgid "%qE requires a %<declare%> directive for use in a %<routine%> function" msgstr "" -#: gimplify.c:7541 +#: gimplify.c:7542 #, gcc-internal-format msgid "%qE not specified in enclosing %<target%>" msgstr "" -#: gimplify.c:7543 +#: gimplify.c:7544 #, gcc-internal-format msgid "enclosing %<target%>" msgstr "" -#: gimplify.c:7573 gimplify.c:9014 +#: gimplify.c:7574 gimplify.c:9015 #, gcc-internal-format msgid "variable %qE declared in enclosing %<host_data%> region" msgstr "" -#: gimplify.c:7594 +#: gimplify.c:7595 #, gcc-internal-format msgid "%qD referenced in target region does not have a mappable type" msgstr "" -#: gimplify.c:7725 +#: gimplify.c:7726 #, gcc-internal-format msgid "iteration variable %qE is predetermined linear" msgstr "" -#: gimplify.c:7728 +#: gimplify.c:7729 #, gcc-internal-format msgid "iteration variable %qE should be private" msgstr "" -#: gimplify.c:7742 +#: gimplify.c:7743 #, gcc-internal-format msgid "iteration variable %qE should not be firstprivate" msgstr "" -#: gimplify.c:7745 +#: gimplify.c:7746 #, gcc-internal-format msgid "iteration variable %qE should not be reduction" msgstr "" -#: gimplify.c:7748 +#: gimplify.c:7749 #, gcc-internal-format msgid "iteration variable %qE should not be linear" msgstr "" -#: gimplify.c:8615 gimplify.c:8621 +#: gimplify.c:8616 gimplify.c:8622 #, gcc-internal-format msgid "conditional %<lastprivate%> clause on %qs construct" msgstr "" -#: gimplify.c:8638 +#: gimplify.c:8639 #, gcc-internal-format msgid "non-scalar variable %qD in conditional %<lastprivate%> clause" msgstr "" -#: gimplify.c:8727 +#: gimplify.c:8728 #, gcc-internal-format msgid "%<task%> reduction modifier on a construct with a %<nowait%> clause" msgstr "" -#: gimplify.c:8735 gimplify.c:12857 +#: gimplify.c:8736 gimplify.c:12858 #, gcc-internal-format msgid "" "invalid %<task%> reduction modifier on construct other than %<parallel%>, " "%qs or %<sections%>" msgstr "" -#: gimplify.c:8746 gimplify.c:8752 gimplify.c:8758 gimplify.c:8764 -#: gimplify.c:12850 +#: gimplify.c:8747 gimplify.c:8753 gimplify.c:8759 gimplify.c:8765 +#: gimplify.c:12851 #, gcc-internal-format msgid "%<inscan%> %<reduction%> clause on %qs construct" msgstr "" -#: gimplify.c:8858 +#: gimplify.c:8859 #, gcc-internal-format msgid "" "%<linear%> clause for variable other than loop iterator specified on " "construct combined with %<distribute%>" msgstr "" -#: gimplify.c:9184 +#: gimplify.c:9185 #, gcc-internal-format msgid "mapping field %qE of variable length structure" msgstr "" -#: gimplify.c:9366 +#: gimplify.c:9367 #, gcc-internal-format msgid "%qE appears more than once in map clauses" msgstr "" -#: gimplify.c:9728 +#: gimplify.c:9729 #, gcc-internal-format msgid "" "copyprivate variable %qE is not threadprivate or private in outer context" msgstr "" -#: gimplify.c:9785 +#: gimplify.c:9786 #, gcc-internal-format msgid "%s variable %qE is private in outer context" msgstr "" -#: gimplify.c:9817 +#: gimplify.c:9818 #, gcc-internal-format msgid "expected %qs %<if%> clause modifier rather than %qs" msgstr "" -#: gimplify.c:10017 +#: gimplify.c:10018 #, gcc-internal-format msgid "" "%qD specified in %qs clause but not in %<inscan%> %<reduction%> clause on " "the containing construct" msgstr "" -#: gimplify.c:10227 +#: gimplify.c:10228 #, gcc-internal-format msgid "%<_Atomic%> %qD in implicit %<map%> clause" msgstr "" -#: gimplify.c:10281 +#: gimplify.c:10282 #, gcc-internal-format msgid "" "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct" msgstr "" -#: gimplify.c:10530 +#: gimplify.c:10531 #, gcc-internal-format msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct" msgstr "" -#: gimplify.c:10591 +#: gimplify.c:10592 #, gcc-internal-format msgid "" "same variable used in %<firstprivate%> and %<lastprivate%> clauses on " "%<distribute%> construct" msgstr "" -#: gimplify.c:10682 +#: gimplify.c:10683 #, gcc-internal-format msgid "" "incompatible data clause with reduction on %qE; promoting to " "%<present_or_copy%>" msgstr "" -#: gimplify.c:10829 +#: gimplify.c:10830 #, gcc-internal-format msgid "" "%qD specified in %<inscan%> %<reduction%> clause but not in %<scan%> " "directive clause" msgstr "" -#: gimplify.c:10848 +#: gimplify.c:10849 #, gcc-internal-format msgid "invalid private reduction on %qE" msgstr "" -#: gimplify.c:10985 +#: gimplify.c:10986 #, gcc-internal-format msgid "" "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a " "variable other than loop iterator" msgstr "" -#: gimplify.c:11319 +#: gimplify.c:11320 #, gcc-internal-format msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct" msgstr "" -#: gimplify.c:11578 gimplify.c:11582 gimplify.c:11591 +#: gimplify.c:11579 gimplify.c:11583 gimplify.c:11592 #, gcc-internal-format msgid "%qs clause may not appear on non-rectangular %qs" msgstr "" -#: gimplify.c:11823 gimplify.c:12082 +#: gimplify.c:11824 gimplify.c:12083 #, gcc-internal-format msgid "conditional %<lastprivate%> on loop iterator %qD ignored" msgstr "" -#: gimplify.c:12788 +#: gimplify.c:12789 #, gcc-internal-format msgid "" "%<bind%> clause not specified on a %<loop%> construct not nested inside " "another OpenMP construct" msgstr "" -#: gimplify.c:12812 +#: gimplify.c:12813 #, gcc-internal-format msgid "" "%<bind(parallel)%> on a %<loop%> construct nested inside %<simd%> construct" msgstr "" -#: gimplify.c:12832 +#: gimplify.c:12833 #, gcc-internal-format msgid "" "%<bind(teams)%> on a %<loop%> region not strictly nested inside of a %<teams" "%> region" msgstr "" -#: gimplify.c:12885 +#: gimplify.c:12886 #, gcc-internal-format msgid "" "%<lastprivate%> clause on a %<loop%> construct refers to a variable %qD " "which is not the loop iterator" msgstr "" -#: gimplify.c:13748 omp-low.c:3472 +#: gimplify.c:13749 omp-low.c:3472 #, gcc-internal-format msgid "" "%<ordered%> construct with %<depend%> clause must be closely nested inside a " "loop with %<ordered%> clause with a parameter" msgstr "" -#: gimplify.c:13766 +#: gimplify.c:13767 #, gcc-internal-format msgid "variable %qE is not an iteration of outermost loop %d, expected %qE" msgstr "" -#: gimplify.c:13779 +#: gimplify.c:13780 #, gcc-internal-format msgid "" "number of variables in %<depend%> clause with %<sink%> modifier does not " "match number of iteration variables" msgstr "" -#: gimplify.c:13792 +#: gimplify.c:13793 #, gcc-internal-format msgid "" "more than one %<depend%> clause with %<source%> modifier on an %<ordered%> " "construct" msgstr "" -#: gimplify.c:13803 +#: gimplify.c:13804 #, gcc-internal-format msgid "" "%<depend%> clause with %<source%> modifier specified together with %<depend" "%> clauses with %<sink%> modifier on the same construct" msgstr "" -#: gimplify.c:15080 +#: gimplify.c:15082 #, gcc-internal-format msgid "gimplification failed" msgstr "" -#: gimplify.c:15613 +#: gimplify.c:15615 #, gcc-internal-format msgid "%qT is promoted to %qT when passed through %<...%>" msgstr "" -#: gimplify.c:15618 +#: gimplify.c:15620 #, gcc-internal-format msgid "(so you should pass %qT not %qT to %<va_arg%>)" msgstr "" -#: gimplify.c:15625 +#: gimplify.c:15627 #, gcc-internal-format msgid "if this code is reached, the program will abort" msgstr "" @@ -27053,22 +27065,22 @@ msgid "" "access" msgstr "" -#: ira.c:2317 ira.c:2339 +#: ira.c:2318 ira.c:2340 #, gcc-internal-format msgid "%s cannot be used in %<asm%> here" msgstr "" -#: ira.c:5920 +#: ira.c:5921 #, gcc-internal-format msgid "frame pointer required, but reserved" msgstr "" -#: ira.c:5921 +#: ira.c:5922 #, gcc-internal-format msgid "for %qD" msgstr "" -#: ira.c:5937 +#: ira.c:5938 #, gcc-internal-format msgid "frame size too large for reliable stack checking" msgstr "" @@ -27088,12 +27100,12 @@ msgstr "" msgid "unable to find a register to spill" msgstr "" -#: lra-constraints.c:4135 reload.c:3863 reload.c:4118 +#: lra-constraints.c:4140 reload.c:3869 reload.c:4124 #, gcc-internal-format msgid "inconsistent operand constraints in an %<asm%>" msgstr "" -#: lra-constraints.c:5091 +#: lra-constraints.c:5097 #, gcc-internal-format, gfc-internal-format msgid "maximum number of generated reload insns per insn achieved (%d)" msgstr "" @@ -27872,12 +27884,12 @@ msgstr "" msgid "unrecognized argument in option %qs" msgstr "" -#: opts-common.c:1366 config/i386/i386-options.c:1551 +#: opts-common.c:1366 config/i386/i386-options.c:1554 #, gcc-internal-format msgid "valid arguments to %qs are: %s; did you mean %qs?" msgstr "" -#: opts-common.c:1369 config/i386/i386-options.c:1554 +#: opts-common.c:1369 config/i386/i386-options.c:1557 #, gcc-internal-format msgid "valid arguments to %qs are: %s" msgstr "" @@ -28011,7 +28023,7 @@ msgstr "" msgid "section anchors must be disabled when toplevel reorder is disabled" msgstr "" -#: opts.c:1002 config/darwin.c:3317 +#: opts.c:1002 config/darwin.c:3312 #, gcc-internal-format msgid "" "%<-freorder-blocks-and-partition%> does not work with exceptions on this " @@ -28527,22 +28539,22 @@ msgstr "" msgid "output operand %d must use %<&%> constraint" msgstr "" -#: regcprop.c:1229 +#: regcprop.c:1230 #, gcc-internal-format msgid "%qs: [%u] bad %<next_regno%> for empty chain (%u)" msgstr "" -#: regcprop.c:1241 +#: regcprop.c:1242 #, gcc-internal-format msgid "%qs: loop in %<next_regno%> chain (%u)" msgstr "" -#: regcprop.c:1244 +#: regcprop.c:1245 #, gcc-internal-format msgid "%qs: [%u] bad %<oldest_regno%> (%u)" msgstr "" -#: regcprop.c:1256 +#: regcprop.c:1257 #, gcc-internal-format msgid "%qs: [%u] non-empty register in chain (%s %u %i)" msgstr "" @@ -28604,12 +28616,12 @@ msgstr "" msgid "impossible register constraint in %<asm%>" msgstr "" -#: reload.c:2687 +#: reload.c:2692 #, gcc-internal-format msgid "the target does not support %<asm goto%> with outputs in %<asm%>" msgstr "" -#: reload.c:3720 +#: reload.c:3726 #, gcc-internal-format msgid "%<&%> constraint used with no register class" msgstr "" @@ -28639,58 +28651,58 @@ msgstr "" msgid "output operand is constant in %<asm%>" msgstr "" -#: rtl.c:850 +#: rtl.c:860 #, gcc-internal-format, gfc-internal-format msgid "RTL check: access of elt %d of '%s' with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:860 +#: rtl.c:870 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d" msgstr "" -#: rtl.c:870 +#: rtl.c:880 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at " "%s:%d" msgstr "" -#: rtl.c:879 +#: rtl.c:889 #, gcc-internal-format, gfc-internal-format msgid "RTL check: expected code '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:889 +#: rtl.c:899 #, gcc-internal-format, gfc-internal-format msgid "RTL check: expected code '%s' or '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:900 +#: rtl.c:910 #, gcc-internal-format, gfc-internal-format msgid "RTL check: expected code '%s', '%s' or '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:927 +#: rtl.c:937 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: attempt to treat non-block symbol as a block symbol in %s, at %s:" "%d" msgstr "" -#: rtl.c:937 +#: rtl.c:947 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: access of hwi elt %d of vector with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:947 +#: rtl.c:957 #, gcc-internal-format, gfc-internal-format msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:958 +#: rtl.c:968 #, gcc-internal-format, gfc-internal-format msgid "RTL flag check: %s used with unexpected rtx code '%s' in %s, at %s:%d" msgstr "" @@ -28735,22 +28747,22 @@ msgstr "" msgid "invalid punctuation %qc in constraint" msgstr "" -#: stmt.c:430 +#: stmt.c:431 #, gcc-internal-format msgid "matching constraint does not allow a register" msgstr "" -#: stmt.c:524 +#: stmt.c:525 #, gcc-internal-format msgid "duplicate %<asm%> operand name %qs" msgstr "" -#: stmt.c:621 +#: stmt.c:622 #, gcc-internal-format msgid "missing close brace for named operand" msgstr "" -#: stmt.c:650 +#: stmt.c:651 #, gcc-internal-format msgid "undefined named operand %qs" msgstr "" @@ -29450,9 +29462,9 @@ msgstr "" #: tree-cfg.c:3186 tree-cfg.c:3195 tree-cfg.c:3212 tree-cfg.c:3849 #: tree-cfg.c:3878 tree-cfg.c:3895 tree-cfg.c:3916 tree-cfg.c:3964 #: tree-cfg.c:3985 tree-cfg.c:4039 tree-cfg.c:4063 tree-cfg.c:4099 -#: tree-cfg.c:4120 tree-cfg.c:4152 tree-cfg.c:4228 tree-cfg.c:4260 -#: tree-cfg.c:4272 tree-cfg.c:4331 tree-cfg.c:4356 tree-cfg.c:4429 -#: tree-cfg.c:4507 +#: tree-cfg.c:4120 tree-cfg.c:4152 tree-cfg.c:4228 tree-cfg.c:4262 +#: tree-cfg.c:4274 tree-cfg.c:4333 tree-cfg.c:4358 tree-cfg.c:4431 +#: tree-cfg.c:4509 #, gcc-internal-format msgid "type mismatch in %qs" msgstr "" @@ -29487,7 +29499,7 @@ msgstr "" msgid "invalid clique in %qs" msgstr "" -#: tree-cfg.c:3305 tree-cfg.c:4519 +#: tree-cfg.c:3305 tree-cfg.c:4521 #, gcc-internal-format msgid "%qs in gimple IL" msgstr "" @@ -29695,363 +29707,363 @@ msgid "" "number of elements as the result" msgstr "" -#: tree-cfg.c:4284 tree-cfg.c:4343 +#: tree-cfg.c:4286 tree-cfg.c:4345 #, gcc-internal-format msgid "vector types expected in %qs" msgstr "" -#: tree-cfg.c:4299 +#: tree-cfg.c:4301 #, gcc-internal-format msgid "vectors with different element number found in %qs" msgstr "" -#: tree-cfg.c:4315 +#: tree-cfg.c:4317 #, gcc-internal-format msgid "invalid mask type in %qs" msgstr "" -#: tree-cfg.c:4375 +#: tree-cfg.c:4377 #, gcc-internal-format msgid "not allowed type combination in %qs" msgstr "" -#: tree-cfg.c:4384 +#: tree-cfg.c:4386 #, gcc-internal-format msgid "invalid position or size in %qs" msgstr "" -#: tree-cfg.c:4390 +#: tree-cfg.c:4392 #, gcc-internal-format msgid "%qs into non-mode-precision operand" msgstr "" -#: tree-cfg.c:4400 +#: tree-cfg.c:4402 #, gcc-internal-format msgid "insertion out of range in %qs" msgstr "" -#: tree-cfg.c:4410 +#: tree-cfg.c:4412 #, gcc-internal-format msgid "%qs not at element boundary" msgstr "" -#: tree-cfg.c:4465 +#: tree-cfg.c:4467 #, gcc-internal-format msgid "non-trivial conversion in %qs" msgstr "" -#: tree-cfg.c:4474 +#: tree-cfg.c:4476 #, gcc-internal-format msgid "%qs LHS in clobber statement" msgstr "" -#: tree-cfg.c:4493 +#: tree-cfg.c:4495 #, gcc-internal-format msgid "invalid operand in %qs" msgstr "" -#: tree-cfg.c:4534 tree-cfg.c:4560 +#: tree-cfg.c:4536 tree-cfg.c:4562 #, gcc-internal-format msgid "invalid RHS for gimple memory store: %qs" msgstr "" -#: tree-cfg.c:4594 tree-cfg.c:4612 +#: tree-cfg.c:4596 tree-cfg.c:4614 #, gcc-internal-format msgid "incorrect type of vector %qs elements" msgstr "" -#: tree-cfg.c:4603 tree-cfg.c:4620 +#: tree-cfg.c:4605 tree-cfg.c:4622 #, gcc-internal-format msgid "incorrect number of vector %qs elements" msgstr "" -#: tree-cfg.c:4628 +#: tree-cfg.c:4630 #, gcc-internal-format msgid "incorrect type of vector CONSTRUCTOR elements" msgstr "" -#: tree-cfg.c:4637 +#: tree-cfg.c:4639 #, gcc-internal-format msgid "vector %qs with non-NULL element index" msgstr "" -#: tree-cfg.c:4644 +#: tree-cfg.c:4646 #, gcc-internal-format msgid "vector %qs element is not a GIMPLE value" msgstr "" -#: tree-cfg.c:4653 +#: tree-cfg.c:4655 #, gcc-internal-format msgid "non-vector %qs with elements" msgstr "" -#: tree-cfg.c:4664 +#: tree-cfg.c:4666 #, gcc-internal-format msgid "%qs with an always-false condition" msgstr "" -#: tree-cfg.c:4723 +#: tree-cfg.c:4725 #, gcc-internal-format msgid "invalid operand in return statement" msgstr "" -#: tree-cfg.c:4738 c/gimple-parser.c:2422 +#: tree-cfg.c:4740 c/gimple-parser.c:2422 #, gcc-internal-format msgid "invalid conversion in return statement" msgstr "" -#: tree-cfg.c:4762 +#: tree-cfg.c:4764 #, gcc-internal-format msgid "goto destination is neither a label nor a pointer" msgstr "" -#: tree-cfg.c:4781 +#: tree-cfg.c:4783 #, gcc-internal-format msgid "invalid operand to switch statement" msgstr "" -#: tree-cfg.c:4789 +#: tree-cfg.c:4791 #, gcc-internal-format msgid "non-integral type switch statement" msgstr "" -#: tree-cfg.c:4799 +#: tree-cfg.c:4801 #, gcc-internal-format msgid "invalid default case label in switch statement" msgstr "" -#: tree-cfg.c:4811 +#: tree-cfg.c:4813 #, gcc-internal-format msgid "invalid %<CASE_CHAIN%>" msgstr "" -#: tree-cfg.c:4817 +#: tree-cfg.c:4819 #, gcc-internal-format msgid "invalid case label in switch statement" msgstr "" -#: tree-cfg.c:4824 +#: tree-cfg.c:4826 #, gcc-internal-format msgid "invalid case range in switch statement" msgstr "" -#: tree-cfg.c:4834 +#: tree-cfg.c:4836 #, gcc-internal-format msgid "type precision mismatch in switch statement" msgstr "" -#: tree-cfg.c:4841 +#: tree-cfg.c:4843 #, gcc-internal-format msgid "type mismatch for case label in switch statement" msgstr "" -#: tree-cfg.c:4850 +#: tree-cfg.c:4852 #, gcc-internal-format msgid "case labels not sorted in switch statement" msgstr "" -#: tree-cfg.c:4893 +#: tree-cfg.c:4895 #, gcc-internal-format msgid "label context is not the current function declaration" msgstr "" -#: tree-cfg.c:4902 +#: tree-cfg.c:4904 #, gcc-internal-format msgid "incorrect entry in %<label_to_block_map%>" msgstr "" -#: tree-cfg.c:4912 +#: tree-cfg.c:4914 #, gcc-internal-format msgid "incorrect setting of landing pad number" msgstr "" -#: tree-cfg.c:4928 +#: tree-cfg.c:4930 #, gcc-internal-format msgid "invalid comparison code in gimple cond" msgstr "" -#: tree-cfg.c:4936 +#: tree-cfg.c:4938 #, gcc-internal-format msgid "invalid labels in gimple cond" msgstr "" -#: tree-cfg.c:5019 tree-cfg.c:5028 +#: tree-cfg.c:5021 tree-cfg.c:5030 #, gcc-internal-format msgid "invalid %<PHI%> result" msgstr "" -#: tree-cfg.c:5038 +#: tree-cfg.c:5040 #, gcc-internal-format msgid "missing %<PHI%> def" msgstr "" -#: tree-cfg.c:5052 +#: tree-cfg.c:5054 #, gcc-internal-format msgid "invalid %<PHI%> argument" msgstr "" -#: tree-cfg.c:5059 +#: tree-cfg.c:5061 #, gcc-internal-format msgid "incompatible types in %<PHI%> argument %u" msgstr "" -#: tree-cfg.c:5157 +#: tree-cfg.c:5159 #, gcc-internal-format msgid "%<verify_gimple%> failed" msgstr "" -#: tree-cfg.c:5214 +#: tree-cfg.c:5216 #, gcc-internal-format msgid "dead statement in EH table" msgstr "" -#: tree-cfg.c:5230 +#: tree-cfg.c:5232 #, gcc-internal-format msgid "location references block not in block tree" msgstr "" -#: tree-cfg.c:5279 +#: tree-cfg.c:5281 #, gcc-internal-format msgid "local declaration from a different function" msgstr "" -#: tree-cfg.c:5382 +#: tree-cfg.c:5384 #, gcc-internal-format msgid "gimple_bb (phi) is set to a wrong basic block" msgstr "" -#: tree-cfg.c:5391 +#: tree-cfg.c:5393 #, gcc-internal-format msgid "PHI node with location" msgstr "" -#: tree-cfg.c:5402 tree-cfg.c:5449 +#: tree-cfg.c:5404 tree-cfg.c:5451 #, gcc-internal-format msgid "incorrect sharing of tree nodes" msgstr "" -#: tree-cfg.c:5410 +#: tree-cfg.c:5412 #, gcc-internal-format msgid "virtual PHI with argument locations" msgstr "" -#: tree-cfg.c:5437 +#: tree-cfg.c:5439 #, gcc-internal-format msgid "gimple_bb (stmt) is set to a wrong basic block" msgstr "" -#: tree-cfg.c:5477 +#: tree-cfg.c:5479 #, gcc-internal-format msgid "statement marked for throw, but doesn%'t" msgstr "" -#: tree-cfg.c:5483 +#: tree-cfg.c:5485 #, gcc-internal-format msgid "statement marked for throw in middle of block" msgstr "" -#: tree-cfg.c:5505 +#: tree-cfg.c:5507 #, gcc-internal-format msgid "verify_gimple failed" msgstr "" -#: tree-cfg.c:5527 +#: tree-cfg.c:5529 #, gcc-internal-format msgid "ENTRY_BLOCK has IL associated with it" msgstr "" -#: tree-cfg.c:5534 +#: tree-cfg.c:5536 #, gcc-internal-format msgid "EXIT_BLOCK has IL associated with it" msgstr "" -#: tree-cfg.c:5541 +#: tree-cfg.c:5543 #, gcc-internal-format, gfc-internal-format msgid "fallthru to exit from bb %d" msgstr "" -#: tree-cfg.c:5565 +#: tree-cfg.c:5567 #, gcc-internal-format msgid "nonlocal label " msgstr "" -#: tree-cfg.c:5574 +#: tree-cfg.c:5576 #, gcc-internal-format msgid "EH landing pad label " msgstr "" -#: tree-cfg.c:5583 tree-cfg.c:5592 tree-cfg.c:5617 +#: tree-cfg.c:5585 tree-cfg.c:5594 tree-cfg.c:5619 #, gcc-internal-format msgid "label " msgstr "" -#: tree-cfg.c:5607 +#: tree-cfg.c:5609 #, gcc-internal-format, gfc-internal-format msgid "control flow in the middle of basic block %d" msgstr "" -#: tree-cfg.c:5640 +#: tree-cfg.c:5642 #, gcc-internal-format, gfc-internal-format msgid "fallthru edge after a control statement in bb %d" msgstr "" -#: tree-cfg.c:5653 +#: tree-cfg.c:5655 #, gcc-internal-format, gfc-internal-format msgid "true/false edge after a non-GIMPLE_COND in bb %d" msgstr "" -#: tree-cfg.c:5676 tree-cfg.c:5698 tree-cfg.c:5715 tree-cfg.c:5784 +#: tree-cfg.c:5678 tree-cfg.c:5700 tree-cfg.c:5717 tree-cfg.c:5786 #, gcc-internal-format, gfc-internal-format msgid "wrong outgoing edge flags at end of bb %d" msgstr "" -#: tree-cfg.c:5686 +#: tree-cfg.c:5688 #, gcc-internal-format, gfc-internal-format msgid "explicit goto at end of bb %d" msgstr "" -#: tree-cfg.c:5720 +#: tree-cfg.c:5722 #, gcc-internal-format, gfc-internal-format msgid "return edge does not point to exit in bb %d" msgstr "" -#: tree-cfg.c:5750 +#: tree-cfg.c:5752 #, gcc-internal-format msgid "found default case not at the start of case vector" msgstr "" -#: tree-cfg.c:5758 +#: tree-cfg.c:5760 #, gcc-internal-format msgid "case labels not sorted: " msgstr "" -#: tree-cfg.c:5775 +#: tree-cfg.c:5777 #, gcc-internal-format, gfc-internal-format msgid "extra outgoing edge %d->%d" msgstr "" -#: tree-cfg.c:5798 +#: tree-cfg.c:5800 #, gcc-internal-format, gfc-internal-format msgid "missing edge %i->%i" msgstr "" -#: tree-cfg.c:9473 +#: tree-cfg.c:9475 #, gcc-internal-format msgid "%<noreturn%> function does return" msgstr "" -#: tree-cfg.c:9494 tree-cfg.c:9526 +#: tree-cfg.c:9496 tree-cfg.c:9528 #, gcc-internal-format msgid "control reaches end of non-void function" msgstr "" -#: tree-cfg.c:9592 +#: tree-cfg.c:9594 #, gcc-internal-format msgid "" "ignoring return value of %qD declared with attribute %<warn_unused_result%>" msgstr "" -#: tree-cfg.c:9597 cp/cvt.c:1119 +#: tree-cfg.c:9599 cp/cvt.c:1119 #, gcc-internal-format msgid "" "ignoring return value of function declared with attribute " @@ -31193,7 +31205,7 @@ msgid "" "requested alignment for %q+D is greater than implemented alignment of %wu" msgstr "" -#: varasm.c:2284 c/c-decl.c:5451 c/c-parser.c:1660 +#: varasm.c:2284 c/c-decl.c:5450 c/c-parser.c:1660 #, gcc-internal-format msgid "storage size of %q+D isn%'t known" msgstr "" @@ -31366,7 +31378,7 @@ msgstr "" msgid "bytecode stream: tag %s is not in the expected range [%s, %s]" msgstr "" -#: c-family/c-ada-spec.c:2840 +#: c-family/c-ada-spec.c:2843 #, gcc-internal-format msgid "unsupported record layout" msgstr "" @@ -31991,7 +32003,7 @@ msgstr "" msgid "type was previously declared %qE" msgstr "" -#: c-family/c-attribs.c:3948 cp/class.c:4749 +#: c-family/c-attribs.c:3948 cp/class.c:4756 #, gcc-internal-format msgid "" "%<transaction_safe_dynamic%> may only be specified for a virtual function" @@ -32012,7 +32024,7 @@ msgstr "" msgid "%qE argument is not a function" msgstr "" -#: c-family/c-attribs.c:4068 cp/name-lookup.c:6060 +#: c-family/c-attribs.c:4068 cp/name-lookup.c:6077 #, gcc-internal-format msgid "deprecated message is not a string" msgstr "" @@ -32473,12 +32485,12 @@ msgid "" "%<true%>" msgstr "" -#: c-family/c-common.c:3500 cp/semantics.c:823 cp/typeck.c:9569 +#: c-family/c-common.c:3500 cp/semantics.c:842 cp/typeck.c:9576 #, gcc-internal-format msgid "suggest parentheses around assignment used as truth value" msgstr "" -#: c-family/c-common.c:3587 c/c-decl.c:4688 c/c-decl.c:7081 c/c-typeck.c:15429 +#: c-family/c-common.c:3587 c/c-decl.c:4687 c/c-decl.c:7080 c/c-typeck.c:15489 #, gcc-internal-format msgid "invalid use of %<restrict%>" msgstr "" @@ -32639,13 +32651,13 @@ msgid "%<fallthrough%> attribute specified with a parameter" msgstr "" #: c-family/c-common.c:5974 c-family/c-common.c:6804 c-family/c-common.c:6851 -#: c-family/c-common.c:6926 c-family/c-common.c:6999 c/c-typeck.c:3671 +#: c-family/c-common.c:6926 c-family/c-common.c:6999 c/c-typeck.c:3721 #, gcc-internal-format msgid "too few arguments to function %qE" msgstr "" #: c-family/c-common.c:5979 c-family/c-common.c:6857 c-family/c-common.c:7025 -#: c/c-typeck.c:3535 +#: c/c-typeck.c:3585 #, gcc-internal-format msgid "too many arguments to function %qE" msgstr "" @@ -33599,7 +33611,7 @@ msgstr "" msgid "traditional C rejects string constant concatenation" msgstr "" -#: c-family/c-omp.c:116 cp/pt.c:18845 +#: c-family/c-omp.c:116 cp/pt.c:18934 #, gcc-internal-format msgid "" "%<#pragma omp critical%> with %<hint%> clause requires a name, except when " @@ -33653,7 +33665,7 @@ msgstr "" msgid "%<iterator%> modifier may not be specified on %<depobj%> construct" msgstr "" -#: c-family/c-omp.c:736 cp/semantics.c:9430 +#: c-family/c-omp.c:736 cp/semantics.c:9458 #, gcc-internal-format msgid "invalid type for iteration variable %qE" msgstr "" @@ -33668,17 +33680,17 @@ msgstr "" msgid "%qE is not initialized" msgstr "" -#: c-family/c-omp.c:778 cp/semantics.c:9319 +#: c-family/c-omp.c:778 cp/semantics.c:9347 #, gcc-internal-format msgid "missing controlling predicate" msgstr "" -#: c-family/c-omp.c:884 cp/semantics.c:8938 +#: c-family/c-omp.c:884 cp/semantics.c:8966 #, gcc-internal-format msgid "invalid controlling predicate" msgstr "" -#: c-family/c-omp.c:891 cp/semantics.c:9325 +#: c-family/c-omp.c:891 cp/semantics.c:9353 #, gcc-internal-format msgid "missing increment expression" msgstr "" @@ -33688,7 +33700,7 @@ msgstr "" msgid "increment is not constant 1 or -1 for %<!=%> condition" msgstr "" -#: c-family/c-omp.c:1022 cp/semantics.c:9053 +#: c-family/c-omp.c:1022 cp/semantics.c:9081 #, gcc-internal-format msgid "invalid increment expression" msgstr "" @@ -33764,7 +33776,7 @@ msgid "" "%<for simd%>, %<parallel for%>, %<parallel for simd%>" msgstr "" -#: c-family/c-omp.c:2382 c/c-typeck.c:15242 cp/semantics.c:8581 +#: c-family/c-omp.c:2382 c/c-typeck.c:15302 cp/semantics.c:8609 #, gcc-internal-format msgid "" "%qD specified in %<allocate%> clause but not in an explicit privatization " @@ -34354,8 +34366,8 @@ msgstr "" msgid "wrong type argument to %s" msgstr "" -#: c-family/c-warn.c:58 c-family/c-warn.c:71 cp/constexpr.c:2949 -#: cp/constexpr.c:6003 +#: c-family/c-warn.c:58 c-family/c-warn.c:71 cp/constexpr.c:3004 +#: cp/constexpr.c:6066 #, gcc-internal-format msgid "overflow in constant expression" msgstr "" @@ -34879,17 +34891,17 @@ msgstr "" msgid "function %qD used as %<asm%> output" msgstr "" -#: c-family/c-warn.c:1858 c/c-typeck.c:4924 +#: c-family/c-warn.c:1858 c/c-typeck.c:4984 #, gcc-internal-format msgid "assignment of read-only location %qE" msgstr "" -#: c-family/c-warn.c:1859 c/c-typeck.c:4927 +#: c-family/c-warn.c:1859 c/c-typeck.c:4987 #, gcc-internal-format msgid "increment of read-only location %qE" msgstr "" -#: c-family/c-warn.c:1860 c/c-typeck.c:4930 +#: c-family/c-warn.c:1860 c/c-typeck.c:4990 #, gcc-internal-format msgid "decrement of read-only location %qE" msgstr "" @@ -35077,8 +35089,8 @@ msgid "" "multiplication by element size" msgstr "" -#: c-family/c-warn.c:2251 c/c-typeck.c:12061 c/c-typeck.c:12229 -#: cp/typeck.c:5433 +#: c-family/c-warn.c:2251 c/c-typeck.c:12121 c/c-typeck.c:12289 +#: cp/typeck.c:5444 #, gcc-internal-format msgid "comparison between types %qT and %qT" msgstr "" @@ -35161,101 +35173,101 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:2790 c/c-typeck.c:5495 cp/call.c:5803 +#: c-family/c-warn.c:2791 c/c-typeck.c:5555 cp/call.c:5807 #, gcc-internal-format msgid "this condition has identical branches" msgstr "" -#: c-family/c-warn.c:2897 +#: c-family/c-warn.c:2898 #, gcc-internal-format msgid "macro expands to multiple statements" msgstr "" -#: c-family/c-warn.c:2898 +#: c-family/c-warn.c:2899 #, gcc-internal-format msgid "some parts of macro expansion are not guarded by this %qs clause" msgstr "" -#: c-family/c-warn.c:2991 +#: c-family/c-warn.c:2992 #, gcc-internal-format msgid "" "converting a packed %qT pointer (alignment %d) to a %qT pointer (alignment " "%d) may result in an unaligned pointer value" msgstr "" -#: c-family/c-warn.c:2998 c-family/c-warn.c:3001 cp/init.c:635 +#: c-family/c-warn.c:2999 c-family/c-warn.c:3002 cp/init.c:642 #, gcc-internal-format msgid "defined here" msgstr "" -#: c-family/c-warn.c:3088 +#: c-family/c-warn.c:3089 #, gcc-internal-format msgid "" "taking address of packed member of %qT may result in an unaligned pointer " "value" msgstr "" -#: c-family/c-warn.c:3315 +#: c-family/c-warn.c:3316 msgid "mismatch in bound %Z of argument %u declared as %s" msgid_plural "mismatch in bounds %Z of argument %u declared as %s" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:3318 c-family/c-warn.c:3688 +#: c-family/c-warn.c:3319 c-family/c-warn.c:3689 #, gcc-internal-format, gfc-internal-format msgid "previously declared as %s" msgstr "" -#: c-family/c-warn.c:3452 +#: c-family/c-warn.c:3453 #, gcc-internal-format, gfc-internal-format msgid "argument %u of type %s declared as a variable length array" msgstr "" -#: c-family/c-warn.c:3457 +#: c-family/c-warn.c:3458 #, gcc-internal-format, gfc-internal-format msgid "previously declared as a pointer %s" msgstr "" -#: c-family/c-warn.c:3458 +#: c-family/c-warn.c:3459 #, gcc-internal-format, gfc-internal-format msgid "previously declared as an ordinary array %s" msgstr "" -#: c-family/c-warn.c:3471 c-family/c-warn.c:3485 +#: c-family/c-warn.c:3472 c-family/c-warn.c:3486 #, gcc-internal-format, gfc-internal-format msgid "argument %u of type %s declared as a pointer" msgstr "" -#: c-family/c-warn.c:3475 c-family/c-warn.c:3501 +#: c-family/c-warn.c:3476 c-family/c-warn.c:3502 #, gcc-internal-format, gfc-internal-format msgid "previously declared as a variable length array %s" msgstr "" -#: c-family/c-warn.c:3488 +#: c-family/c-warn.c:3489 #, gcc-internal-format, gfc-internal-format msgid "previously declared as an array %s" msgstr "" -#: c-family/c-warn.c:3497 +#: c-family/c-warn.c:3498 #, gcc-internal-format, gfc-internal-format msgid "argument %u of type %s declared as an ordinary array" msgstr "" -#: c-family/c-warn.c:3525 +#: c-family/c-warn.c:3526 #, gcc-internal-format, gfc-internal-format msgid "argument %u of type %s declared with %u variable bound" msgid_plural "argument %u of type %s declared with %u variable bounds" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:3532 +#: c-family/c-warn.c:3533 #, gcc-internal-format, gfc-internal-format msgid "previously declared as %s with %u variable bound" msgid_plural "previously declared as %s with %u variable bounds" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:3556 +#: c-family/c-warn.c:3557 #, gcc-internal-format, gfc-internal-format msgid "argument %u of type %s declared with %u unspecified variable bound" msgid_plural "" @@ -35263,63 +35275,63 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:3564 +#: c-family/c-warn.c:3565 #, gcc-internal-format, gfc-internal-format msgid "previously declared as %s with %u unspecified variable bound" msgid_plural "previously declared as %s with %u unspecified variable bounds" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:3571 +#: c-family/c-warn.c:3572 #, gcc-internal-format, gfc-internal-format msgid "subsequently declared as %s with %u unspecified variable bound" msgid_plural "subsequently declared as %s with %u unspecified variable bounds" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:3624 +#: c-family/c-warn.c:3625 #, gcc-internal-format msgid "argument %u of type %s declared with mismatched bound argument %E" msgstr "" -#: c-family/c-warn.c:3631 c-family/c-warn.c:3664 +#: c-family/c-warn.c:3632 c-family/c-warn.c:3665 #, gcc-internal-format msgid "argument %u of type %s declared with mismatched bound %<%s%>" msgstr "" -#: c-family/c-warn.c:3643 +#: c-family/c-warn.c:3644 #, gcc-internal-format msgid "previously declared as %s with bound argument %E" msgstr "" -#: c-family/c-warn.c:3648 +#: c-family/c-warn.c:3649 #, gcc-internal-format msgid "previously declared as %s with bound %<%s%>" msgstr "" -#: c-family/c-warn.c:3667 +#: c-family/c-warn.c:3668 #, gcc-internal-format msgid "previously declared as %s with bound %qs" msgstr "" -#: c-family/c-warn.c:3686 +#: c-family/c-warn.c:3687 #, gcc-internal-format, gfc-internal-format msgid "argument %u of type %s with mismatched bound" msgstr "" -#: c-family/c-warn.c:3717 +#: c-family/c-warn.c:3718 #, gcc-internal-format msgid "" "expression does not compute the number of elements in this array; element " "type is %qT, not %qT" msgstr "" -#: c-family/c-warn.c:3727 +#: c-family/c-warn.c:3728 #, gcc-internal-format msgid "add parentheses around %qE to silence this warning" msgstr "" -#: c-family/c-warn.c:3731 +#: c-family/c-warn.c:3732 #, gcc-internal-format msgid "add parentheses around the second %<sizeof%> to silence this warning" msgstr "" @@ -35334,7 +35346,7 @@ msgstr "" msgid "too many input files" msgstr "" -#: common/config/aarch64/aarch64-common.c:519 config/aarch64/aarch64.c:14814 +#: common/config/aarch64/aarch64-common.c:519 config/aarch64/aarch64.c:16448 #, gcc-internal-format msgid "unknown value %qs for %<-mcpu%>" msgstr "" @@ -35365,14 +35377,14 @@ msgid "unrecognized option passed to %%:target_mode_check" msgstr "" #: common/config/arm/arm-common.c:368 common/config/arm/arm-common.c:432 -#: common/config/arm/arm-common.c:479 config/aarch64/aarch64.c:14746 -#: config/aarch64/aarch64.c:14784 +#: common/config/arm/arm-common.c:479 config/aarch64/aarch64.c:16380 +#: config/aarch64/aarch64.c:16418 #, gcc-internal-format msgid "valid arguments are: %s; did you mean %qs?" msgstr "" #: common/config/arm/arm-common.c:371 common/config/arm/arm-common.c:435 -#: common/config/arm/arm-common.c:482 config/aarch64/aarch64.c:14749 +#: common/config/arm/arm-common.c:482 config/aarch64/aarch64.c:16383 #, gcc-internal-format, gfc-internal-format msgid "valid arguments are: %s" msgstr "" @@ -35534,64 +35546,64 @@ msgid "" "64, 128, 256, or 512" msgstr "" -#: common/config/riscv/riscv-common.c:290 +#: common/config/riscv/riscv-common.c:295 #, gcc-internal-format msgid "%<-march=%s%>: Extension `%s' appear more than one time." msgstr "" -#: common/config/riscv/riscv-common.c:535 +#: common/config/riscv/riscv-common.c:540 #, gcc-internal-format msgid "%<-march=%s%>: Expect number after %<%dp%>." msgstr "" -#: common/config/riscv/riscv-common.c:605 +#: common/config/riscv/riscv-common.c:610 #, gcc-internal-format msgid "%<-march=%s%>: rv%de is not a valid base ISA" msgstr "" -#: common/config/riscv/riscv-common.c:617 +#: common/config/riscv/riscv-common.c:622 #, gcc-internal-format msgid "" "version of `g` will be omitted, please specify version for individual " "extension." msgstr "" -#: common/config/riscv/riscv-common.c:636 +#: common/config/riscv/riscv-common.c:641 #, gcc-internal-format msgid "%<-march=%s%>: first ISA subset must be %<e%>, %<i%> or %<g%>" msgstr "" -#: common/config/riscv/riscv-common.c:663 +#: common/config/riscv/riscv-common.c:668 #, gcc-internal-format msgid "%<-march=%s%>: unsupported ISA subset %<%c%>" msgstr "" -#: common/config/riscv/riscv-common.c:667 +#: common/config/riscv/riscv-common.c:672 #, gcc-internal-format msgid "%<-march=%s%>: ISA string is not in canonical order. %<%c%>" msgstr "" -#: common/config/riscv/riscv-common.c:773 +#: common/config/riscv/riscv-common.c:778 #, gcc-internal-format msgid "%<-march=%s%>: name of %s must be more than 1 letter" msgstr "" -#: common/config/riscv/riscv-common.c:785 +#: common/config/riscv/riscv-common.c:790 #, gcc-internal-format msgid "%<-march=%s%>: %s must separate with _" msgstr "" -#: common/config/riscv/riscv-common.c:814 +#: common/config/riscv/riscv-common.c:819 #, gcc-internal-format msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64" msgstr "" -#: common/config/riscv/riscv-common.c:851 +#: common/config/riscv/riscv-common.c:856 #, gcc-internal-format msgid "%<-march=%s%>: unexpected ISA string at end: %qs" msgstr "" -#: common/config/riscv/riscv-common.c:979 +#: common/config/riscv/riscv-common.c:984 #, gcc-internal-format msgid "%<-mcpu=%s%>: unknown CPU" msgstr "" @@ -35754,96 +35766,96 @@ msgstr "" msgid "%s conflicts with ppc64 (arch flags ignored)" msgstr "" -#: config/darwin.c:2011 +#: config/darwin.c:2006 #, gcc-internal-format, gfc-internal-format msgid "failed to open temporary file %s for LTO output" msgstr "" -#: config/darwin.c:2104 +#: config/darwin.c:2099 #, gcc-internal-format msgid "" "%qE 2.95 vtable-compatibility attribute applies only when compiling a kext" msgstr "" -#: config/darwin.c:2111 +#: config/darwin.c:2106 #, gcc-internal-format msgid "%qE 2.95 vtable-compatibility attribute applies only to C++ classes" msgstr "" -#: config/darwin.c:2848 +#: config/darwin.c:2843 #, gcc-internal-format msgid "" "protected visibility attribute not supported in this configuration; ignored" msgstr "" -#: config/darwin.c:3063 +#: config/darwin.c:3058 #, gcc-internal-format, gfc-internal-format msgid "failed to open temporary file %s with LTO output" msgstr "" -#: config/darwin.c:3267 +#: config/darwin.c:3262 #, gcc-internal-format msgid "" "%<-fobjc-abi-version%> 2 must be used for 64 bit targets with %<-fnext-" "runtime%>" msgstr "" -#: config/darwin.c:3272 +#: config/darwin.c:3267 #, gcc-internal-format msgid "" "%<-fobjc-abi-version%> %d is not supported for 32 bit targets with %<-fnext-" "runtime%>" msgstr "" -#: config/darwin.c:3287 +#: config/darwin.c:3282 #, gcc-internal-format msgid "%<-gsplit-dwarf%> is not supported on this platform, ignored" msgstr "" -#: config/darwin.c:3365 +#: config/darwin.c:3360 #, gcc-internal-format msgid "" "%<-mdynamic-no-pic%> overrides %<-fpic%>, %<-fPIC%>, %<-fpie%> or %<-fPIE%>" msgstr "" -#: config/darwin.c:3408 +#: config/darwin.c:3403 #, gcc-internal-format msgid "%<-mpic-symbol-stubs%> is not required for 64-bit code (ignored)" msgstr "" -#: config/darwin.c:3588 +#: config/darwin.c:3583 #, gcc-internal-format msgid "built-in function %qD requires the %<-mconstant-cfstrings%> flag" msgstr "" -#: config/darwin.c:3595 +#: config/darwin.c:3590 #, gcc-internal-format msgid "built-in function %qD takes one argument only" msgstr "" -#: config/darwin.c:3683 +#: config/darwin.c:3678 #, gcc-internal-format msgid "CFString literal is missing" msgstr "" -#: config/darwin.c:3694 +#: config/darwin.c:3689 #, gcc-internal-format msgid "CFString literal expression is not a string constant" msgstr "" -#: config/darwin.c:3718 +#: config/darwin.c:3713 #, gcc-internal-format msgid "non-ASCII character in CFString literal" msgstr "" -#: config/darwin.c:3719 +#: config/darwin.c:3714 #, gcc-internal-format msgid "embedded NUL in CFString literal" msgstr "" #: config/host-darwin.c:65 #, gcc-internal-format -msgid "could not unmap %<pch_address_space%> %m" +msgid "could not unmap %<pch_address_space%>: %m" msgstr "" #: config/sol2-c.c:91 config/sol2-c.c:107 @@ -35979,43 +35991,43 @@ msgstr "" msgid "unknown %<#pragma GCC aarch64%> option %qs" msgstr "" -#: config/aarch64/aarch64.c:1636 +#: config/aarch64/aarch64.c:1973 #, gcc-internal-format msgid "the %qE attribute cannot be applied to an SVE function type" msgstr "" -#: config/aarch64/aarch64.c:1711 config/aarch64/aarch64.c:1725 +#: config/aarch64/aarch64.c:2048 config/aarch64/aarch64.c:2062 #, gcc-internal-format msgid "unexpected %<%s%> after %<%s%>" msgstr "" -#: config/aarch64/aarch64.c:2178 +#: config/aarch64/aarch64.c:2515 #, gcc-internal-format msgid "%qs is incompatible with the use of floating-point types" msgstr "" -#: config/aarch64/aarch64.c:2181 +#: config/aarch64/aarch64.c:2518 #, gcc-internal-format msgid "%qs is incompatible with the use of vector types" msgstr "" -#: config/aarch64/aarch64.c:2185 +#: config/aarch64/aarch64.c:2522 #, gcc-internal-format msgid "" "%qs feature modifier is incompatible with the use of floating-point types" msgstr "" -#: config/aarch64/aarch64.c:2188 +#: config/aarch64/aarch64.c:2525 #, gcc-internal-format msgid "%qs feature modifier is incompatible with the use of vector types" msgstr "" -#: config/aarch64/aarch64.c:2204 +#: config/aarch64/aarch64.c:2541 #, gcc-internal-format msgid "this operation requires the SVE ISA extension" msgstr "" -#: config/aarch64/aarch64.c:2205 +#: config/aarch64/aarch64.c:2542 #, gcc-internal-format msgid "" "you can enable SVE using the command-line option %<-march%>, or by using the " @@ -36024,335 +36036,335 @@ msgstr "" #. We can't gracefully recover at this point, so make this a #. fatal error. -#: config/aarch64/aarch64.c:5704 +#: config/aarch64/aarch64.c:6103 #, gcc-internal-format msgid "arguments of type %qT require the SVE ISA extension" msgstr "" -#: config/aarch64/aarch64.c:6025 +#: config/aarch64/aarch64.c:6424 #, gcc-internal-format msgid "SVE type %qT cannot be passed to an unprototyped function" msgstr "" -#: config/aarch64/aarch64.c:6147 config/aarch64/aarch64.c:6210 -#: config/aarch64/aarch64.c:6329 config/aarch64/aarch64.c:16667 -#: config/arm/arm.c:7075 config/arm/arm.c:7105 config/arm/arm.c:28839 +#: config/aarch64/aarch64.c:6546 config/aarch64/aarch64.c:6609 +#: config/aarch64/aarch64.c:6732 config/aarch64/aarch64.c:18309 +#: config/arm/arm.c:7084 config/arm/arm.c:7114 config/arm/arm.c:28855 #, gcc-internal-format msgid "parameter passing for argument of type %qT changed in GCC 9.1" msgstr "" -#: config/aarch64/aarch64.c:6278 +#: config/aarch64/aarch64.c:6677 #, gcc-internal-format msgid "%qE requires the SVE ISA extension" msgstr "" -#: config/aarch64/aarch64.c:6281 +#: config/aarch64/aarch64.c:6680 #, gcc-internal-format msgid "calls to functions of type %qT require the SVE ISA extension" msgstr "" -#: config/aarch64/aarch64.c:6453 +#: config/aarch64/aarch64.c:6857 #, gcc-internal-format msgid "stack probes for SVE frames" msgstr "" -#: config/aarch64/aarch64.c:14270 +#: config/aarch64/aarch64.c:15904 #, gcc-internal-format msgid "unknown flag passed in %<-moverride=%s%> (%s)" msgstr "" -#: config/aarch64/aarch64.c:14314 +#: config/aarch64/aarch64.c:15948 #, gcc-internal-format, gfc-internal-format msgid "%s string ill-formed\n" msgstr "" -#: config/aarch64/aarch64.c:14370 +#: config/aarch64/aarch64.c:16004 #, gcc-internal-format msgid "invalid format for sve_width" msgstr "" -#: config/aarch64/aarch64.c:14382 +#: config/aarch64/aarch64.c:16016 #, gcc-internal-format, gfc-internal-format msgid "invalid sve_width value: %d" msgstr "" -#: config/aarch64/aarch64.c:14402 +#: config/aarch64/aarch64.c:16036 #, gcc-internal-format, gfc-internal-format msgid "tuning string missing in option (%s)" msgstr "" -#: config/aarch64/aarch64.c:14420 +#: config/aarch64/aarch64.c:16054 #, gcc-internal-format, gfc-internal-format msgid "unknown tuning option (%s)" msgstr "" -#: config/aarch64/aarch64.c:14588 config/riscv/riscv.c:4816 +#: config/aarch64/aarch64.c:16222 config/riscv/riscv.c:4825 #, gcc-internal-format msgid "" "incompatible options %<-mstack-protector-guard=global%> and %<-mstack-" "protector-guard-offset=%s%>" msgstr "" -#: config/aarch64/aarch64.c:14597 config/riscv/riscv.c:4825 +#: config/aarch64/aarch64.c:16231 config/riscv/riscv.c:4834 #, gcc-internal-format msgid "" "both %<-mstack-protector-guard-offset%> and %<-mstack-protector-guard-reg%> " "must be used with %<-mstack-protector-guard=sysreg%>" msgstr "" -#: config/aarch64/aarch64.c:14605 +#: config/aarch64/aarch64.c:16239 #, gcc-internal-format msgid "specify a system register with a small string length." msgstr "" -#: config/aarch64/aarch64.c:14615 config/riscv/riscv.c:4854 -#: config/rs6000/rs6000.c:4583 +#: config/aarch64/aarch64.c:16249 config/riscv/riscv.c:4863 +#: config/rs6000/rs6000.c:4587 #, gcc-internal-format msgid "%qs is not a valid offset in %qs" msgstr "" -#: config/aarch64/aarch64.c:14686 +#: config/aarch64/aarch64.c:16320 #, gcc-internal-format msgid "" "only values 12 (4 KB) and 16 (64 KB) are supported for guard size. Given " "value %d (%llu KB) is out of range" msgstr "" -#: config/aarch64/aarch64.c:14702 +#: config/aarch64/aarch64.c:16336 #, gcc-internal-format msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>" msgstr "" -#: config/aarch64/aarch64.c:14787 +#: config/aarch64/aarch64.c:16421 #, gcc-internal-format, gfc-internal-format msgid "valid arguments are: %s;" msgstr "" -#: config/aarch64/aarch64.c:14811 +#: config/aarch64/aarch64.c:16445 #, gcc-internal-format msgid "missing cpu name in %<-mcpu=%s%>" msgstr "" -#: config/aarch64/aarch64.c:14818 +#: config/aarch64/aarch64.c:16452 #, gcc-internal-format msgid "invalid feature modifier %qs in %<-mcpu=%s%>" msgstr "" -#: config/aarch64/aarch64.c:14877 +#: config/aarch64/aarch64.c:16511 #, gcc-internal-format msgid "invalid argument given to %<-mharden-sls=%>" msgstr "" -#: config/aarch64/aarch64.c:14888 +#: config/aarch64/aarch64.c:16522 #, gcc-internal-format msgid "%<%s%> must be by itself for %<-mharden-sls=%>" msgstr "" -#: config/aarch64/aarch64.c:14893 +#: config/aarch64/aarch64.c:16527 #, gcc-internal-format msgid "invalid argument %<%s%> for %<-mharden-sls=%>" msgstr "" -#: config/aarch64/aarch64.c:14999 +#: config/aarch64/aarch64.c:16633 #, gcc-internal-format msgid "invalid argument %<%s%> for %<-mbranch-protection=%>" msgstr "" -#: config/aarch64/aarch64.c:15001 +#: config/aarch64/aarch64.c:16635 #, gcc-internal-format msgid "missing argument for %<-mbranch-protection=%>" msgstr "" -#: config/aarch64/aarch64.c:15025 +#: config/aarch64/aarch64.c:16659 #, gcc-internal-format msgid "missing arch name in %<-march=%s%>" msgstr "" -#: config/aarch64/aarch64.c:15028 +#: config/aarch64/aarch64.c:16662 #, gcc-internal-format msgid "unknown value %qs for %<-march%>" msgstr "" -#: config/aarch64/aarch64.c:15032 +#: config/aarch64/aarch64.c:16666 #, gcc-internal-format msgid "invalid feature modifier %qs in %<-march=%s%>" msgstr "" -#: config/aarch64/aarch64.c:15060 +#: config/aarch64/aarch64.c:16694 #, gcc-internal-format msgid "missing cpu name in %<-mtune=%s%>" msgstr "" -#: config/aarch64/aarch64.c:15063 +#: config/aarch64/aarch64.c:16697 #, gcc-internal-format msgid "unknown value %qs for %<-mtune%>" msgstr "" -#: config/aarch64/aarch64.c:15197 config/arm/arm.c:3244 +#: config/aarch64/aarch64.c:16831 #, gcc-internal-format msgid "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch" msgstr "" -#: config/aarch64/aarch64.c:15253 +#: config/aarch64/aarch64.c:16887 #, gcc-internal-format msgid "assembler does not support %<-mabi=ilp32%>" msgstr "" -#: config/aarch64/aarch64.c:15260 +#: config/aarch64/aarch64.c:16894 #, gcc-internal-format msgid "return address signing is only supported for %<-mabi=lp64%>" msgstr "" -#: config/aarch64/aarch64.c:15342 +#: config/aarch64/aarch64.c:16976 #, gcc-internal-format msgid "code model %qs with %<-f%s%>" msgstr "" -#: config/aarch64/aarch64.c:15345 +#: config/aarch64/aarch64.c:16979 #, gcc-internal-format msgid "code model %qs not supported in ilp32 mode" msgstr "" -#: config/aarch64/aarch64.c:15520 +#: config/aarch64/aarch64.c:17158 #, gcc-internal-format msgid "missing name in %<target(\"arch=\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15523 +#: config/aarch64/aarch64.c:17161 #, gcc-internal-format msgid "invalid name (\"%s\") in %<target(\"arch=\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15527 config/aarch64/aarch64.c:15569 -#: config/aarch64/aarch64.c:15676 +#: config/aarch64/aarch64.c:17165 config/aarch64/aarch64.c:17207 +#: config/aarch64/aarch64.c:17314 #, gcc-internal-format msgid "" "invalid feature modifier %s of value (\"%s\") in %<target()%> pragma or " "attribute" msgstr "" -#: config/aarch64/aarch64.c:15562 +#: config/aarch64/aarch64.c:17200 #, gcc-internal-format msgid "missing name in %<target(\"cpu=\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15565 +#: config/aarch64/aarch64.c:17203 #, gcc-internal-format msgid "invalid name (\"%s\") in %<target(\"cpu=\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15592 +#: config/aarch64/aarch64.c:17230 #, gcc-internal-format msgid "" "missing argument to %<target(\"branch-protection=\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15596 +#: config/aarch64/aarch64.c:17234 #, gcc-internal-format msgid "" "invalid protection type (\"%s\") in %<target(\"branch-protection=\")%> " "pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15631 +#: config/aarch64/aarch64.c:17269 #, gcc-internal-format msgid "invalid name (\"%s\") in %<target(\"tune=\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15672 +#: config/aarch64/aarch64.c:17310 #, gcc-internal-format msgid "missing value in %<target()%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15730 config/aarch64/aarch64.c:15903 +#: config/aarch64/aarch64.c:17368 config/aarch64/aarch64.c:17541 #, gcc-internal-format msgid "malformed %<target()%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:15774 +#: config/aarch64/aarch64.c:17412 #, gcc-internal-format msgid "pragma or attribute %<target(\"%s\")%> does not accept an argument" msgstr "" -#: config/aarch64/aarch64.c:15782 config/i386/i386-options.c:1201 +#: config/aarch64/aarch64.c:17420 config/i386/i386-options.c:1204 #, gcc-internal-format msgid "pragma or attribute %<target(\"%s\")%> does not allow a negated form" msgstr "" -#: config/aarch64/aarch64.c:15836 +#: config/aarch64/aarch64.c:17474 #, gcc-internal-format msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid" msgstr "" -#: config/aarch64/aarch64.c:15893 config/arm/arm.c:32851 -#: config/rs6000/rs6000.c:24138 config/s390/s390.c:15744 +#: config/aarch64/aarch64.c:17531 config/arm/arm.c:32867 +#: config/rs6000/rs6000.c:24255 config/s390/s390.c:15767 #, gcc-internal-format msgid "attribute %<target%> argument not a string" msgstr "" -#: config/aarch64/aarch64.c:15920 +#: config/aarch64/aarch64.c:17558 #, gcc-internal-format msgid "pragma or attribute %<target(\"%s\")%> is not valid" msgstr "" -#: config/aarch64/aarch64.c:15929 +#: config/aarch64/aarch64.c:17567 #, gcc-internal-format msgid "malformed %<target(\"%s\")%> pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:17355 config/arm/arm.c:6427 -#: config/rs6000/rs6000-call.c:6329 config/s390/s390.c:12128 -#: config/s390/s390.c:12205 +#: config/aarch64/aarch64.c:18997 config/arm/arm.c:6436 +#: config/rs6000/rs6000-call.c:6329 config/s390/s390.c:12151 +#: config/s390/s390.c:12228 msgid "" "parameter passing for argument of type %qT with %<[[no_unique_address]]%> " "members changed %{in GCC 10.1%}" msgstr "" -#: config/aarch64/aarch64.c:17360 config/arm/arm.c:6432 -#: config/rs6000/rs6000-call.c:6324 config/s390/s390.c:12123 -#: config/s390/s390.c:12200 +#: config/aarch64/aarch64.c:19002 config/arm/arm.c:6441 +#: config/rs6000/rs6000-call.c:6324 config/s390/s390.c:12146 +#: config/s390/s390.c:12223 msgid "" "parameter passing for argument of type %qT when C++17 is enabled changed to " "match C++14 %{in GCC 10.1%}" msgstr "" -#: config/aarch64/aarch64.c:18493 +#: config/aarch64/aarch64.c:20135 #, gcc-internal-format msgid "%Klane %wd out of range %wd - %wd" msgstr "" -#: config/aarch64/aarch64.c:18495 +#: config/aarch64/aarch64.c:20137 #, gcc-internal-format msgid "lane %wd out of range %wd - %wd" msgstr "" -#: config/aarch64/aarch64.c:23410 config/i386/i386.c:22491 +#: config/aarch64/aarch64.c:25053 config/i386/i386.c:22491 #: config/i386/i386.c:22619 #, gcc-internal-format msgid "unsupported simdlen %wd" msgstr "" -#: config/aarch64/aarch64.c:23420 config/aarch64/aarch64.c:23447 +#: config/aarch64/aarch64.c:25063 config/aarch64/aarch64.c:25090 #, gcc-internal-format msgid "GCC does not currently support mixed size types for %<simd%> functions" msgstr "" -#: config/aarch64/aarch64.c:23424 +#: config/aarch64/aarch64.c:25067 #, gcc-internal-format msgid "GCC does not currently support return type %qT for %<simd%> functions" msgstr "" -#: config/aarch64/aarch64.c:23428 +#: config/aarch64/aarch64.c:25071 #, gcc-internal-format msgid "unsupported return type %qT for %<simd%> functions" msgstr "" -#: config/aarch64/aarch64.c:23451 +#: config/aarch64/aarch64.c:25094 #, gcc-internal-format msgid "GCC does not currently support argument type %qT for %<simd%> functions" msgstr "" -#: config/aarch64/aarch64.c:23476 +#: config/aarch64/aarch64.c:25119 #, gcc-internal-format msgid "GCC does not currently support simdlen %wd for type %qT" msgstr "" @@ -36413,7 +36425,7 @@ msgid "bad value %qs for %<-mmemory-latency%>" msgstr "" #: config/alpha/alpha.c:6651 config/alpha/alpha.c:6654 config/arc/arc.c:7073 -#: config/arc/arc.c:7347 config/s390/s390.c:856 config/tilegx/tilegx.c:3536 +#: config/arc/arc.c:7347 config/s390/s390.c:879 config/tilegx/tilegx.c:3536 #: config/tilepro/tilepro.c:3100 #, gcc-internal-format msgid "bad builtin fcode" @@ -36535,18 +36547,18 @@ msgstr "" msgid "argument of %qE attribute is not \"ilink\" or \"firq\"" msgstr "" -#: config/arc/arc.c:2130 config/arm/arm.c:7216 config/arm/arm.c:7234 -#: config/arm/arm.c:7415 config/avr/avr.c:9695 config/avr/avr.c:9711 +#: config/arc/arc.c:2130 config/arm/arm.c:7225 config/arm/arm.c:7243 +#: config/arm/arm.c:7424 config/avr/avr.c:9695 config/avr/avr.c:9711 #: config/bfin/bfin.c:4693 config/bfin/bfin.c:4754 config/bfin/bfin.c:4783 #: config/bpf/bpf.c:80 config/csky/csky.c:6068 config/csky/csky.c:6096 #: config/epiphany/epiphany.c:491 config/gcn/gcn.c:318 -#: config/h8300/h8300.c:4894 config/i386/i386-options.c:3429 -#: config/i386/i386-options.c:3606 config/i386/i386-options.c:3662 -#: config/i386/i386-options.c:3713 config/i386/i386-options.c:3750 +#: config/h8300/h8300.c:4894 config/i386/i386-options.c:3447 +#: config/i386/i386-options.c:3624 config/i386/i386-options.c:3680 +#: config/i386/i386-options.c:3731 config/i386/i386-options.c:3768 #: config/m68k/m68k.c:792 config/mcore/mcore.c:3066 config/nvptx/nvptx.c:5164 -#: config/riscv/riscv.c:3039 config/rl78/rl78.c:820 config/rl78/rl78.c:889 -#: config/rs6000/rs6000.c:20188 config/rx/rx.c:2727 config/rx/rx.c:2753 -#: config/s390/s390.c:1071 config/s390/s390.c:1158 config/sh/sh.c:8428 +#: config/riscv/riscv.c:3048 config/rl78/rl78.c:820 config/rl78/rl78.c:889 +#: config/rs6000/rs6000.c:20305 config/rx/rx.c:2727 config/rx/rx.c:2753 +#: config/s390/s390.c:1094 config/s390/s390.c:1181 config/sh/sh.c:8428 #: config/sh/sh.c:8446 config/sh/sh.c:8470 config/sh/sh.c:8541 #: config/sh/sh.c:8564 config/stormy16/stormy16.c:2229 config/v850/v850.c:2010 #: config/visium/visium.c:724 @@ -37037,229 +37049,234 @@ msgstr "" msgid "target CPU does not support unaligned accesses" msgstr "" -#: config/arm/arm.c:3489 +#: config/arm/arm.c:3244 +#, gcc-internal-format +msgid "switch %<-mcpu=%s%> conflicts with switch %<-march=%s%>" +msgstr "" + +#: config/arm/arm.c:3494 #, gcc-internal-format msgid "%<-mapcs-stack-check%> incompatible with %<-mno-apcs-frame%>" msgstr "" -#: config/arm/arm.c:3498 +#: config/arm/arm.c:3503 #, gcc-internal-format msgid "%<-fpic%> and %<-mapcs-reent%> are incompatible" msgstr "" -#: config/arm/arm.c:3501 +#: config/arm/arm.c:3506 #, gcc-internal-format msgid "APCS reentrant code not supported. Ignored" msgstr "" -#: config/arm/arm.c:3524 +#: config/arm/arm.c:3529 #, gcc-internal-format msgid "option %<-mstructure-size-boundary%> is deprecated" msgstr "" -#: config/arm/arm.c:3532 +#: config/arm/arm.c:3537 #, gcc-internal-format msgid "structure size boundary can only be set to 8, 32 or 64" msgstr "" -#: config/arm/arm.c:3534 +#: config/arm/arm.c:3539 #, gcc-internal-format msgid "structure size boundary can only be set to 8 or 32" msgstr "" -#: config/arm/arm.c:3559 +#: config/arm/arm.c:3564 #, gcc-internal-format msgid "RTP PIC is incompatible with %<-msingle-pic-base%>" msgstr "" -#: config/arm/arm.c:3571 config/arm/arm.c:32865 +#: config/arm/arm.c:3576 config/arm/arm.c:32881 #, gcc-internal-format msgid "FDPIC mode is not supported in Thumb-1 mode" msgstr "" -#: config/arm/arm.c:3579 +#: config/arm/arm.c:3584 #, gcc-internal-format msgid "%<-mpic-register=%> is useless without %<-fpic%>" msgstr "" -#: config/arm/arm.c:3588 +#: config/arm/arm.c:3593 #, gcc-internal-format msgid "unable to use %qs for PIC register" msgstr "" -#: config/arm/arm.c:3610 config/pru/pru.c:612 +#: config/arm/arm.c:3615 config/pru/pru.c:612 #, gcc-internal-format msgid "%<-freorder-blocks-and-partition%> not supported on this architecture" msgstr "" -#: config/arm/arm.c:3755 +#: config/arm/arm.c:3760 #, gcc-internal-format msgid "selected fp16 options are incompatible" msgstr "" -#: config/arm/arm.c:3807 +#: config/arm/arm.c:3812 #, gcc-internal-format msgid "iwmmxt requires an AAPCS compatible ABI for proper operation" msgstr "" -#: config/arm/arm.c:3810 +#: config/arm/arm.c:3815 #, gcc-internal-format msgid "iwmmxt abi requires an iwmmxt capable cpu" msgstr "" -#: config/arm/arm.c:3818 +#: config/arm/arm.c:3823 #, gcc-internal-format msgid "target CPU does not support interworking" msgstr "" -#: config/arm/arm.c:3831 +#: config/arm/arm.c:3836 #, gcc-internal-format msgid "AAPCS does not support %<-mcaller-super-interworking%>" msgstr "" -#: config/arm/arm.c:3834 +#: config/arm/arm.c:3839 #, gcc-internal-format msgid "AAPCS does not support %<-mcallee-super-interworking%>" msgstr "" -#: config/arm/arm.c:3839 +#: config/arm/arm.c:3844 #, gcc-internal-format msgid "__fp16 and no ldrh" msgstr "" -#: config/arm/arm.c:3842 +#: config/arm/arm.c:3847 #, gcc-internal-format msgid "target CPU does not support ARMv8-M Security Extensions" msgstr "" -#: config/arm/arm.c:3847 +#: config/arm/arm.c:3852 #, gcc-internal-format msgid "ARMv8-M Security Extensions incompatible with selected FPU" msgstr "" -#: config/arm/arm.c:3859 +#: config/arm/arm.c:3864 #, gcc-internal-format -msgid "%<-mfloat-abi=hard%>: selected processor lacks an FPU" +msgid "%<-mfloat-abi=hard%>: selected architecture lacks an FPU" msgstr "" -#: config/arm/arm.c:3867 +#: config/arm/arm.c:3872 #, gcc-internal-format msgid "%<-mfloat-abi=hard%> and VFP" msgstr "" -#: config/arm/arm.c:6101 +#: config/arm/arm.c:6110 #, gcc-internal-format msgid "non-AAPCS derived PCS variant" msgstr "" -#: config/arm/arm.c:6103 +#: config/arm/arm.c:6112 #, gcc-internal-format msgid "variadic functions must use the base AAPCS variant" msgstr "" -#: config/arm/arm.c:6123 +#: config/arm/arm.c:6132 #, gcc-internal-format msgid "PCS variant" msgstr "" -#: config/arm/arm.c:6375 +#: config/arm/arm.c:6384 #, gcc-internal-format msgid "Thumb-1 hard-float VFP ABI" msgstr "" -#: config/arm/arm.c:6464 +#: config/arm/arm.c:6473 #, gcc-internal-format msgid "argument of type %qT not permitted with -mgeneral-regs-only" msgstr "" -#: config/arm/arm.c:6848 config/arm/arm.c:7069 config/arm/arm.c:7102 -#: config/arm/arm.c:28832 +#: config/arm/arm.c:6857 config/arm/arm.c:7078 config/arm/arm.c:7111 +#: config/arm/arm.c:28848 #, gcc-internal-format msgid "parameter passing for argument of type %qT changed in GCC 7.1" msgstr "" -#: config/arm/arm.c:7240 +#: config/arm/arm.c:7249 #, gcc-internal-format msgid "" "FP registers might be clobbered despite %qE attribute: compile with %<-" "mgeneral-regs-only%>" msgstr "" -#: config/arm/arm.c:7364 +#: config/arm/arm.c:7373 #, gcc-internal-format msgid "" "%qE attribute not available to functions with arguments passed on the stack" msgstr "" -#: config/arm/arm.c:7376 +#: config/arm/arm.c:7385 #, gcc-internal-format msgid "" "%qE attribute not available to functions with variable number of arguments" msgstr "" -#: config/arm/arm.c:7385 +#: config/arm/arm.c:7394 #, gcc-internal-format msgid "%qE attribute not available to functions that return value on the stack" msgstr "" -#: config/arm/arm.c:7407 config/arm/arm.c:7459 +#: config/arm/arm.c:7416 config/arm/arm.c:7468 #, gcc-internal-format msgid "%qE attribute ignored without %<-mcmse%> option." msgstr "" -#: config/arm/arm.c:7426 +#: config/arm/arm.c:7435 #, gcc-internal-format msgid "%qE attribute has no effect on functions with static linkage" msgstr "" -#: config/arm/arm.c:7475 +#: config/arm/arm.c:7484 #, gcc-internal-format msgid "%qE attribute only applies to base type of a function pointer" msgstr "" -#: config/arm/arm.c:9439 +#: config/arm/arm.c:9448 #, gcc-internal-format msgid "" "accessing thread-local storage is not currently supported with %<-mpure-code" "%> or %<-mslow-flash-data%>" msgstr "" -#: config/arm/arm.c:13198 +#: config/arm/arm.c:13217 #, gcc-internal-format msgid "%K%s %wd out of range %wd - %wd" msgstr "" -#: config/arm/arm.c:13201 +#: config/arm/arm.c:13220 #, gcc-internal-format msgid "%s %wd out of range %wd - %wd" msgstr "" -#: config/arm/arm.c:25478 +#: config/arm/arm.c:25497 #, gcc-internal-format msgid "unable to compute real location of stacked parameter" msgstr "" -#: config/arm/arm.c:26140 +#: config/arm/arm.c:26159 #, gcc-internal-format msgid "Unexpected thumb1 far jump" msgstr "" -#: config/arm/arm.c:26399 +#: config/arm/arm.c:26418 #, gcc-internal-format msgid "no low registers available for popping high registers" msgstr "" -#: config/arm/arm.c:26651 +#: config/arm/arm.c:26670 #, gcc-internal-format msgid "Interrupt Service Routines cannot be coded in Thumb-1 mode" msgstr "" -#: config/arm/arm.c:26897 +#: config/arm/arm.c:26916 #, gcc-internal-format msgid "%<-fstack-check=specific%> for Thumb-1" msgstr "" -#: config/arm/arm.c:32880 +#: config/arm/arm.c:32896 #, gcc-internal-format msgid "invalid fpu for target attribute or pragma %qs" msgstr "" @@ -37267,22 +37284,22 @@ msgstr "" #. This doesn't really make sense until we support #. general dynamic selection of the architecture and all #. sub-features. -#: config/arm/arm.c:32888 +#: config/arm/arm.c:32904 #, gcc-internal-format msgid "auto fpu selection not currently permitted here" msgstr "" -#: config/arm/arm.c:32901 +#: config/arm/arm.c:32917 #, gcc-internal-format msgid "invalid architecture for target attribute or pragma %qs" msgstr "" -#: config/arm/arm.c:32915 +#: config/arm/arm.c:32931 #, gcc-internal-format msgid "unknown target attribute or pragma %qs" msgstr "" -#: config/arm/arm.c:33927 +#: config/arm/arm.c:33943 #, gcc-internal-format msgid "asm flags not supported in thumb1 mode" msgstr "" @@ -37361,17 +37378,17 @@ msgstr "" msgid "%<-fPIE%> is not supported" msgstr "" -#: config/avr/avr.c:1040 config/avr/avr.c:1045 config/riscv/riscv.c:5111 +#: config/avr/avr.c:1040 config/avr/avr.c:1045 config/riscv/riscv.c:5122 #, gcc-internal-format msgid "function attributes %qs and %qs are mutually exclusive" msgstr "" -#: config/avr/avr.c:1066 config/riscv/riscv.c:5123 +#: config/avr/avr.c:1066 config/riscv/riscv.c:5134 #, gcc-internal-format msgid "%qs function cannot have arguments" msgstr "" -#: config/avr/avr.c:1069 config/riscv/riscv.c:5120 +#: config/avr/avr.c:1069 config/riscv/riscv.c:5131 #, gcc-internal-format msgid "%qs function cannot return a value" msgstr "" @@ -38128,132 +38145,132 @@ msgstr "" msgid "parameter to builtin not valid: %s" msgstr "" -#: config/i386/i386-expand.c:8043 +#: config/i386/i386-expand.c:8049 #, gcc-internal-format msgid "interrupt service routine cannot be called directly" msgstr "" -#: config/i386/i386-expand.c:8453 config/i386/i386-expand.c:9905 +#: config/i386/i386-expand.c:8459 config/i386/i386-expand.c:9911 #, gcc-internal-format msgid "the last argument must be a 2-bit immediate" msgstr "" -#: config/i386/i386-expand.c:8841 +#: config/i386/i386-expand.c:8847 #, gcc-internal-format msgid "the fifth argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.c:8936 +#: config/i386/i386-expand.c:8942 #, gcc-internal-format msgid "the third argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9836 +#: config/i386/i386-expand.c:9842 #, gcc-internal-format msgid "the last argument must be an 1-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9851 +#: config/i386/i386-expand.c:9857 #, gcc-internal-format msgid "the last argument must be a 3-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9884 +#: config/i386/i386-expand.c:9890 #, gcc-internal-format msgid "the last argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9924 +#: config/i386/i386-expand.c:9930 #, gcc-internal-format msgid "the last argument must be a 1-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9937 +#: config/i386/i386-expand.c:9943 #, gcc-internal-format msgid "the last argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9947 +#: config/i386/i386-expand.c:9953 #, gcc-internal-format msgid "the next to last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.c:9952 +#: config/i386/i386-expand.c:9958 #, gcc-internal-format msgid "the last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.c:10089 +#: config/i386/i386-expand.c:10095 #, gcc-internal-format msgid "the third argument must be comparison constant" msgstr "" -#: config/i386/i386-expand.c:10094 +#: config/i386/i386-expand.c:10100 #, gcc-internal-format msgid "incorrect comparison mode" msgstr "" -#: config/i386/i386-expand.c:10100 config/i386/i386-expand.c:10420 +#: config/i386/i386-expand.c:10106 config/i386/i386-expand.c:10426 #, gcc-internal-format msgid "incorrect rounding operand" msgstr "" -#: config/i386/i386-expand.c:10402 +#: config/i386/i386-expand.c:10408 #, gcc-internal-format msgid "the immediate argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386-expand.c:10408 +#: config/i386/i386-expand.c:10414 #, gcc-internal-format msgid "the immediate argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386-expand.c:10411 +#: config/i386/i386-expand.c:10417 #, gcc-internal-format msgid "the immediate argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.c:10906 config/rs6000/rs6000-call.c:10919 +#: config/i386/i386-expand.c:10912 config/rs6000/rs6000-call.c:10919 #, gcc-internal-format msgid "selector must be an integer constant in the range [0, %wi]" msgstr "" -#: config/i386/i386-expand.c:11119 +#: config/i386/i386-expand.c:11125 #, gcc-internal-format msgid "%qE needs unknown isa option" msgstr "" -#: config/i386/i386-expand.c:11123 +#: config/i386/i386-expand.c:11129 #, gcc-internal-format msgid "%qE needs isa option %s" msgstr "" -#: config/i386/i386-expand.c:12044 +#: config/i386/i386-expand.c:12050 #, gcc-internal-format msgid "the last argument must be a 32-bit immediate" msgstr "" -#: config/i386/i386-expand.c:12077 +#: config/i386/i386-expand.c:12083 #, gcc-internal-format msgid "last argument must be an immediate" msgstr "" -#: config/i386/i386-expand.c:12838 config/i386/i386-expand.c:13050 +#: config/i386/i386-expand.c:12844 config/i386/i386-expand.c:13056 #, gcc-internal-format msgid "the last argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386-expand.c:13103 +#: config/i386/i386-expand.c:13109 #, gcc-internal-format msgid "the forth argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386-expand.c:13109 +#: config/i386/i386-expand.c:13115 #, gcc-internal-format msgid "incorrect hint operand" msgstr "" -#: config/i386/i386-expand.c:13128 +#: config/i386/i386-expand.c:13134 #, gcc-internal-format msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate" msgstr "" @@ -38275,87 +38292,87 @@ msgstr "" msgid "multiversioning needs %<ifunc%> which is not supported on this target" msgstr "" -#: config/i386/i386-options.c:849 config/i386/i386-options.c:2000 -#: config/i386/i386-options.c:2009 +#: config/i386/i386-options.c:852 config/i386/i386-options.c:2010 +#: config/i386/i386-options.c:2019 #, gcc-internal-format, gfc-internal-format msgid "code model %s does not support PIC mode" msgstr "" -#: config/i386/i386-options.c:1106 +#: config/i386/i386-options.c:1109 #, gcc-internal-format msgid "attribute %qs argument is not a string" msgstr "" -#: config/i386/i386-options.c:1170 +#: config/i386/i386-options.c:1173 #, gcc-internal-format msgid "attribute %qs argument %qs is unknown" msgstr "" -#: config/i386/i386-options.c:1233 +#: config/i386/i386-options.c:1236 #, gcc-internal-format msgid "attribute value %qs was already specified in %qs attribute" msgstr "" -#: config/i386/i386-options.c:1271 +#: config/i386/i386-options.c:1274 #, gcc-internal-format msgid "attribute value %qs is unknown in %qs attribute" msgstr "" -#: config/i386/i386-options.c:1522 +#: config/i386/i386-options.c:1525 #, gcc-internal-format msgid "wrong argument %qs to option %qs" msgstr "" -#: config/i386/i386-options.c:1528 +#: config/i386/i386-options.c:1531 #, gcc-internal-format msgid "size ranges of option %qs should be increasing" msgstr "" -#: config/i386/i386-options.c:1538 +#: config/i386/i386-options.c:1541 #, gcc-internal-format msgid "wrong strategy name %qs specified for option %qs" msgstr "" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386-options.c:1564 +#: config/i386/i386-options.c:1567 #, gcc-internal-format msgid "" "strategy name %qs specified for option %qs not supported for 32-bit code" msgstr "" -#: config/i386/i386-options.c:1577 +#: config/i386/i386-options.c:1580 #, gcc-internal-format msgid "unknown alignment %qs specified for option %qs" msgstr "" -#: config/i386/i386-options.c:1587 +#: config/i386/i386-options.c:1590 #, gcc-internal-format msgid "the max value for the last size range should be -1 for option %qs" msgstr "" -#: config/i386/i386-options.c:1594 +#: config/i386/i386-options.c:1597 #, gcc-internal-format msgid "too many size ranges specified in option %qs" msgstr "" -#: config/i386/i386-options.c:1647 +#: config/i386/i386-options.c:1650 #, gcc-internal-format msgid "unknown parameter to option %<-mtune-ctrl%>: %s" msgstr "" -#: config/i386/i386-options.c:1832 +#: config/i386/i386-options.c:1835 #, gcc-internal-format msgid "Intel MCU psABI isn%'t supported in %s mode" msgstr "" -#: config/i386/i386-options.c:1879 +#: config/i386/i386-options.c:1889 #, gcc-internal-format msgid "" "%<-mtune=x86-64%> is deprecated; use %<-mtune=k8%> or %<-mtune=generic%> " "instead as appropriate" msgstr "" -#: config/i386/i386-options.c:1881 +#: config/i386/i386-options.c:1891 #, gcc-internal-format msgid "" "%<target(\"tune=x86-64\")%> is deprecated; use %<target(\"tune=k8\")%> or " @@ -38363,439 +38380,439 @@ msgid "" msgstr "" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386-options.c:1909 +#: config/i386/i386-options.c:1919 #, gcc-internal-format msgid "%<-mstringop-strategy=rep_8byte%> not supported for 32-bit code" msgstr "" -#: config/i386/i386-options.c:1914 +#: config/i386/i386-options.c:1924 #, gcc-internal-format msgid "%<-muintr%> not supported for 32-bit code" msgstr "" -#: config/i386/i386-options.c:1929 +#: config/i386/i386-options.c:1939 #, gcc-internal-format msgid "address mode %qs not supported in the %s bit mode" msgstr "" -#: config/i386/i386-options.c:1940 +#: config/i386/i386-options.c:1950 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with X32 ABI" msgstr "" -#: config/i386/i386-options.c:1946 +#: config/i386/i386-options.c:1956 #, gcc-internal-format msgid "%<-mabi=%s%> not supported with %<-fsanitize=address%>" msgstr "" -#: config/i386/i386-options.c:1949 +#: config/i386/i386-options.c:1959 #, gcc-internal-format msgid "%<-mabi=%s%> not supported with %<-fsanitize=kernel-address%>" msgstr "" -#: config/i386/i386-options.c:1953 +#: config/i386/i386-options.c:1963 #, gcc-internal-format msgid "%<-mabi=%s%> not supported with %<-fsanitize=thread%>" msgstr "" -#: config/i386/i386-options.c:1970 config/i386/i386-options.c:1979 -#: config/i386/i386-options.c:1991 config/i386/i386-options.c:2002 -#: config/i386/i386-options.c:2013 +#: config/i386/i386-options.c:1980 config/i386/i386-options.c:1989 +#: config/i386/i386-options.c:2001 config/i386/i386-options.c:2012 +#: config/i386/i386-options.c:2023 #, gcc-internal-format msgid "code model %qs not supported in the %s bit mode" msgstr "" -#: config/i386/i386-options.c:1982 config/i386/i386-options.c:1994 +#: config/i386/i386-options.c:1992 config/i386/i386-options.c:2004 #, gcc-internal-format msgid "code model %qs not supported in x32 mode" msgstr "" -#: config/i386/i386-options.c:2037 +#: config/i386/i386-options.c:2047 #, gcc-internal-format msgid "%<-masm=intel%> not supported in this configuration" msgstr "" -#: config/i386/i386-options.c:2042 +#: config/i386/i386-options.c:2052 #, gcc-internal-format, gfc-internal-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386-options.c:2051 +#: config/i386/i386-options.c:2064 #, gcc-internal-format msgid "%<generic%> CPU can be used only for %<-mtune=%> switch" msgstr "" -#: config/i386/i386-options.c:2053 +#: config/i386/i386-options.c:2066 #, gcc-internal-format msgid "%<generic%> CPU can be used only for %<target(\"tune=\")%> attribute" msgstr "" -#: config/i386/i386-options.c:2060 +#: config/i386/i386-options.c:2073 #, gcc-internal-format msgid "%<intel%> CPU can be used only for %<-mtune=%> switch" msgstr "" -#: config/i386/i386-options.c:2062 +#: config/i386/i386-options.c:2075 #, gcc-internal-format msgid "%<intel%> CPU can be used only for %<target(\"tune=\")%> attribute" msgstr "" -#: config/i386/i386-options.c:2070 config/i386/i386-options.c:2444 +#: config/i386/i386-options.c:2083 config/i386/i386-options.c:2457 #, gcc-internal-format msgid "CPU you selected does not support x86-64 instruction set" msgstr "" -#: config/i386/i386-options.c:2383 +#: config/i386/i386-options.c:2396 #, gcc-internal-format msgid "bad value (%qs) for %<-march=%> switch" msgstr "" -#: config/i386/i386-options.c:2384 +#: config/i386/i386-options.c:2397 #, gcc-internal-format msgid "bad value (%qs) for %<target(\"arch=\")%> attribute" msgstr "" -#: config/i386/i386-options.c:2406 +#: config/i386/i386-options.c:2419 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386-options.c:2408 +#: config/i386/i386-options.c:2421 #, gcc-internal-format msgid "" "valid arguments to %<target(\"arch=\")%> attribute are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386-options.c:2413 +#: config/i386/i386-options.c:2426 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s" msgstr "" -#: config/i386/i386-options.c:2414 +#: config/i386/i386-options.c:2427 #, gcc-internal-format msgid "valid arguments to %<target(\"arch=\")%> attribute are: %s" msgstr "" -#: config/i386/i386-options.c:2463 +#: config/i386/i386-options.c:2476 #, gcc-internal-format msgid "bad value (%qs) for %<-mtune=%> switch" msgstr "" -#: config/i386/i386-options.c:2464 +#: config/i386/i386-options.c:2477 #, gcc-internal-format msgid "bad value (%qs) for %<target(\"tune=\")%> attribute" msgstr "" -#: config/i386/i386-options.c:2485 +#: config/i386/i386-options.c:2498 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386-options.c:2487 +#: config/i386/i386-options.c:2500 #, gcc-internal-format msgid "" "valid arguments to %<target(\"tune=\")%> attribute are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386-options.c:2492 +#: config/i386/i386-options.c:2505 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s" msgstr "" -#: config/i386/i386-options.c:2493 +#: config/i386/i386-options.c:2506 #, gcc-internal-format msgid "valid arguments to %<target(\"tune=\")%> attribute are: %s" msgstr "" -#: config/i386/i386-options.c:2517 +#: config/i386/i386-options.c:2530 #, gcc-internal-format msgid "%<-mregparm%> is ignored in 64-bit mode" msgstr "" -#: config/i386/i386-options.c:2519 +#: config/i386/i386-options.c:2532 #, gcc-internal-format msgid "%<-mregparm%> is ignored for Intel MCU psABI" msgstr "" -#: config/i386/i386-options.c:2522 +#: config/i386/i386-options.c:2535 #, gcc-internal-format msgid "%<-mregparm=%d%> is not between 0 and %d" msgstr "" -#: config/i386/i386-options.c:2550 +#: config/i386/i386-options.c:2563 #, gcc-internal-format msgid "%<-mrtd%> is ignored in 64bit mode" msgstr "" -#: config/i386/i386-options.c:2551 +#: config/i386/i386-options.c:2564 #, gcc-internal-format msgid "%<target(\"rtd\")%> is ignored in 64bit mode" msgstr "" -#: config/i386/i386-options.c:2630 +#: config/i386/i386-options.c:2648 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary%> is not supported for this target" msgstr "" -#: config/i386/i386-options.c:2633 +#: config/i386/i386-options.c:2651 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary=%d%> is not between %d and %d" msgstr "" -#: config/i386/i386-options.c:2656 +#: config/i386/i386-options.c:2674 #, gcc-internal-format msgid "%<-mincoming-stack-boundary=%d%> is not between %d and 12" msgstr "" -#: config/i386/i386-options.c:2669 +#: config/i386/i386-options.c:2687 #, gcc-internal-format msgid "%<-mnop-mcount%> is not compatible with this target" msgstr "" -#: config/i386/i386-options.c:2672 +#: config/i386/i386-options.c:2690 #, gcc-internal-format msgid "%<-mnop-mcount%> is not implemented for %<-fPIC%>" msgstr "" -#: config/i386/i386-options.c:2678 +#: config/i386/i386-options.c:2696 #, gcc-internal-format msgid "%<-msseregparm%> used without SSE enabled" msgstr "" -#: config/i386/i386-options.c:2679 +#: config/i386/i386-options.c:2697 #, gcc-internal-format msgid "%<target(\"sseregparm\")%> used without SSE enabled" msgstr "" -#: config/i386/i386-options.c:2689 +#: config/i386/i386-options.c:2707 #, gcc-internal-format msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386-options.c:2696 +#: config/i386/i386-options.c:2714 #, gcc-internal-format msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386-options.c:2746 +#: config/i386/i386-options.c:2764 #, gcc-internal-format msgid "stack probing requires %<-maccumulate-outgoing-args%> for correctness" msgstr "" -#: config/i386/i386-options.c:2748 +#: config/i386/i386-options.c:2766 #, gcc-internal-format msgid "" "stack probing requires %<target(\"accumulate-outgoing-args\")%> for " "correctness" msgstr "" -#: config/i386/i386-options.c:2762 +#: config/i386/i386-options.c:2780 #, gcc-internal-format msgid "fixed ebp register requires %<-maccumulate-outgoing-args%>" msgstr "" -#: config/i386/i386-options.c:2764 +#: config/i386/i386-options.c:2782 #, gcc-internal-format msgid "fixed ebp register requires %<target(\"accumulate-outgoing-args\")%>" msgstr "" -#: config/i386/i386-options.c:2818 +#: config/i386/i386-options.c:2836 #, gcc-internal-format msgid "%<-mfentry%> isn%'t supported for 32-bit in combination with %<-fpic%>" msgstr "" -#: config/i386/i386-options.c:2821 +#: config/i386/i386-options.c:2839 #, gcc-internal-format msgid "%<-mno-fentry%> isn%'t compatible with SEH" msgstr "" -#: config/i386/i386-options.c:2825 +#: config/i386/i386-options.c:2843 #, gcc-internal-format msgid "%<-mcall-ms2sysv-xlogues%> isn%'t currently supported with SEH" msgstr "" -#: config/i386/i386-options.c:2890 +#: config/i386/i386-options.c:2908 #, gcc-internal-format msgid "unknown option for %<-mrecip=%s%>" msgstr "" -#: config/i386/i386-options.c:2949 +#: config/i386/i386-options.c:2967 #, gcc-internal-format msgid "%qs is not a valid number in %<-mstack-protector-guard-offset=%>" msgstr "" -#: config/i386/i386-options.c:2954 +#: config/i386/i386-options.c:2972 #, gcc-internal-format msgid "%qs is not a valid offset in %<-mstack-protector-guard-offset=%>" msgstr "" -#: config/i386/i386-options.c:2982 +#: config/i386/i386-options.c:3000 #, gcc-internal-format msgid "%qs is not a valid base register in %<-mstack-protector-guard-reg=%>" msgstr "" -#: config/i386/i386-options.c:3030 +#: config/i386/i386-options.c:3048 #, gcc-internal-format msgid "%<-fcf-protection%> is not compatible with this target" msgstr "" -#: config/i386/i386-options.c:3157 +#: config/i386/i386-options.c:3175 #, gcc-internal-format msgid "interrupt and naked attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3172 +#: config/i386/i386-options.c:3190 #, gcc-internal-format msgid "only DWARF debug format is supported for interrupt service routine" msgstr "" -#: config/i386/i386-options.c:3221 +#: config/i386/i386-options.c:3239 #, gcc-internal-format msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible" msgstr "" -#: config/i386/i386-options.c:3231 +#: config/i386/i386-options.c:3249 #, gcc-internal-format msgid "%<-mindirect-branch%> and %<-fcf-protection%> are not compatible" msgstr "" -#: config/i386/i386-options.c:3266 +#: config/i386/i386-options.c:3284 #, gcc-internal-format msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible" msgstr "" -#: config/i386/i386-options.c:3276 +#: config/i386/i386-options.c:3294 #, gcc-internal-format msgid "%<-mfunction-return%> and %<-fcf-protection%> are not compatible" msgstr "" -#: config/i386/i386-options.c:3389 +#: config/i386/i386-options.c:3407 #, gcc-internal-format msgid "%s instructions aren%'t allowed in an exception service routine" msgstr "" -#: config/i386/i386-options.c:3391 +#: config/i386/i386-options.c:3409 #, gcc-internal-format msgid "%s instructions aren%'t allowed in an interrupt service routine" msgstr "" -#: config/i386/i386-options.c:3395 +#: config/i386/i386-options.c:3413 #, gcc-internal-format msgid "" "%s instructions aren%'t allowed in a function with the " "%<no_caller_saved_registers%> attribute" msgstr "" -#: config/i386/i386-options.c:3442 config/i386/i386-options.c:3493 +#: config/i386/i386-options.c:3460 config/i386/i386-options.c:3511 #, gcc-internal-format msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3447 +#: config/i386/i386-options.c:3465 #, gcc-internal-format msgid "regparam and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3454 config/i386/i386-options.c:3682 +#: config/i386/i386-options.c:3472 config/i386/i386-options.c:3700 #, gcc-internal-format msgid "%qE attribute requires an integer constant argument" msgstr "" -#: config/i386/i386-options.c:3460 +#: config/i386/i386-options.c:3478 #, gcc-internal-format msgid "argument to %qE attribute larger than %d" msgstr "" -#: config/i386/i386-options.c:3485 config/i386/i386-options.c:3528 +#: config/i386/i386-options.c:3503 config/i386/i386-options.c:3546 #, gcc-internal-format msgid "fastcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3489 +#: config/i386/i386-options.c:3507 #, gcc-internal-format msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3497 config/i386/i386-options.c:3546 +#: config/i386/i386-options.c:3515 config/i386/i386-options.c:3564 #, gcc-internal-format msgid "fastcall and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3507 config/i386/i386-options.c:3524 +#: config/i386/i386-options.c:3525 config/i386/i386-options.c:3542 #, gcc-internal-format msgid "stdcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3511 +#: config/i386/i386-options.c:3529 #, gcc-internal-format msgid "stdcall and fastcall attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3515 config/i386/i386-options.c:3542 +#: config/i386/i386-options.c:3533 config/i386/i386-options.c:3560 #, gcc-internal-format msgid "stdcall and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3532 config/i386/i386-options.c:3550 +#: config/i386/i386-options.c:3550 config/i386/i386-options.c:3568 #, gcc-internal-format msgid "cdecl and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3538 +#: config/i386/i386-options.c:3556 #, gcc-internal-format msgid "%qE attribute is used for non-class method" msgstr "" -#: config/i386/i386-options.c:3642 config/rs6000/rs6000.c:20301 +#: config/i386/i386-options.c:3660 config/rs6000/rs6000.c:20418 #, gcc-internal-format msgid "%qE incompatible attribute ignored" msgstr "" -#: config/i386/i386-options.c:3669 +#: config/i386/i386-options.c:3687 #, gcc-internal-format msgid "%qE attribute only available for 32-bit" msgstr "" -#: config/i386/i386-options.c:3690 +#: config/i386/i386-options.c:3708 #, gcc-internal-format msgid "argument to %qE attribute is neither zero, nor one" msgstr "" -#: config/i386/i386-options.c:3724 config/i386/i386-options.c:3734 +#: config/i386/i386-options.c:3742 config/i386/i386-options.c:3752 #, gcc-internal-format msgid "%qs and %qs attributes are not compatible" msgstr "" -#: config/i386/i386-options.c:3761 config/i386/i386-options.c:3783 -#: config/ia64/ia64.c:812 config/s390/s390.c:1168 +#: config/i386/i386-options.c:3779 config/i386/i386-options.c:3801 +#: config/ia64/ia64.c:812 config/s390/s390.c:1191 #, gcc-internal-format msgid "%qE attribute requires a string constant argument" msgstr "" -#: config/i386/i386-options.c:3771 config/i386/i386-options.c:3793 -#: config/s390/s390.c:1197 +#: config/i386/i386-options.c:3789 config/i386/i386-options.c:3811 +#: config/s390/s390.c:1220 #, gcc-internal-format msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)" msgstr "" -#: config/i386/i386-options.c:3825 +#: config/i386/i386-options.c:3843 #, gcc-internal-format msgid "interrupt service routine should have a pointer as the first argument" msgstr "" -#: config/i386/i386-options.c:3832 +#: config/i386/i386-options.c:3850 #, gcc-internal-format msgid "interrupt service routine should have %qs as the second argument" msgstr "" -#: config/i386/i386-options.c:3843 +#: config/i386/i386-options.c:3861 #, gcc-internal-format msgid "" "interrupt service routine can only have a pointer argument and an optional " "integer argument" msgstr "" -#: config/i386/i386-options.c:3846 +#: config/i386/i386-options.c:3864 #, gcc-internal-format msgid "interrupt service routine must return %<void%>" msgstr "" @@ -39265,7 +39282,7 @@ msgstr "" msgid "%qE redeclared with conflicting %qs attributes" msgstr "" -#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:3067 +#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:3076 #, gcc-internal-format msgid "%qE attribute requires a string argument" msgstr "" @@ -40348,60 +40365,60 @@ msgstr "" msgid "unknown cpu %qs for %<-mtune%>" msgstr "" -#: config/riscv/riscv.c:2687 config/riscv/riscv.c:2729 +#: config/riscv/riscv.c:2696 config/riscv/riscv.c:2738 #, gcc-internal-format msgid "ABI for flattened struct with zero-length bit-fields changed in GCC 10" msgstr "" -#: config/riscv/riscv.c:3078 +#: config/riscv/riscv.c:3087 #, gcc-internal-format msgid "" "argument to %qE attribute is not \"user\", \"supervisor\", or \"machine\"" msgstr "" -#: config/riscv/riscv.c:4735 +#: config/riscv/riscv.c:4744 #, gcc-internal-format msgid "%<-mdiv%> requires %<-march%> to subsume the %<M%> extension" msgstr "" -#: config/riscv/riscv.c:4778 +#: config/riscv/riscv.c:4787 #, gcc-internal-format msgid "requested ABI requires %<-march%> to subsume the %qc extension" msgstr "" -#: config/riscv/riscv.c:4782 +#: config/riscv/riscv.c:4791 #, gcc-internal-format msgid "rv32e requires ilp32e ABI" msgstr "" -#: config/riscv/riscv.c:4786 +#: config/riscv/riscv.c:4795 #, gcc-internal-format msgid "ABI requires %<-march=rv%d%>" msgstr "" -#: config/riscv/riscv.c:4796 +#: config/riscv/riscv.c:4805 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary=%d%> must be between %d and %d" msgstr "" -#: config/riscv/riscv.c:4809 +#: config/riscv/riscv.c:4818 #, gcc-internal-format msgid "" "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-" "attribute%>]" msgstr "" -#: config/riscv/riscv.c:4836 config/rs6000/rs6000.c:4595 +#: config/riscv/riscv.c:4845 config/rs6000/rs6000.c:4599 #, gcc-internal-format msgid "%qs is not a valid base register in %qs" msgstr "" -#: config/riscv/riscv.c:4850 config/rs6000/rs6000.c:4578 +#: config/riscv/riscv.c:4859 config/rs6000/rs6000.c:4582 #, gcc-internal-format msgid "%qs is not a valid number in %qs" msgstr "" -#: config/riscv/riscv.c:5149 +#: config/riscv/riscv.c:5160 #, gcc-internal-format msgid "%qs function cannot have different interrupt type" msgstr "" @@ -40924,55 +40941,55 @@ msgstr "" msgid "Stack frame larger than 2G is not supported for %<-fsplit-stack%>" msgstr "" -#: config/rs6000/rs6000.c:3238 config/rs6000/rs6000.c:3241 -#: config/rs6000/rs6000.c:3244 +#: config/rs6000/rs6000.c:3242 config/rs6000/rs6000.c:3245 +#: config/rs6000/rs6000.c:3248 #, gcc-internal-format msgid "%qs requires %qs or %qs" msgstr "" -#: config/rs6000/rs6000.c:3345 +#: config/rs6000/rs6000.c:3349 #, gcc-internal-format msgid "%qs requires PowerPC64 architecture, enabling" msgstr "" -#: config/rs6000/rs6000.c:3491 +#: config/rs6000/rs6000.c:3495 #, gcc-internal-format msgid "%<-mcall-aixdesc%> incompatible with %<-mabi=elfv2%>" msgstr "" -#: config/rs6000/rs6000.c:3511 config/rs6000/rtems.h:114 +#: config/rs6000/rs6000.c:3515 config/rs6000/rtems.h:114 #, gcc-internal-format msgid "%<-m64%> requires a PowerPC64 cpu" msgstr "" -#: config/rs6000/rs6000.c:3519 +#: config/rs6000/rs6000.c:3523 #, gcc-internal-format msgid "%<-mcmodel incompatible with other toc options%>" msgstr "" -#: config/rs6000/rs6000.c:3540 +#: config/rs6000/rs6000.c:3544 #, gcc-internal-format msgid "%qs unsupported for this ABI" msgstr "" -#: config/rs6000/rs6000.c:3673 +#: config/rs6000/rs6000.c:3677 #, gcc-internal-format msgid "" "%qs is not supported for 64-bit Darwin; it is incompatible with the " "installed C and C++ libraries" msgstr "" -#: config/rs6000/rs6000.c:3812 +#: config/rs6000/rs6000.c:3816 #, gcc-internal-format msgid "AltiVec not supported in this target" msgstr "" -#: config/rs6000/rs6000.c:3829 +#: config/rs6000/rs6000.c:3833 #, gcc-internal-format msgid "%qs is not supported on little endian systems" msgstr "" -#: config/rs6000/rs6000.c:3915 +#: config/rs6000/rs6000.c:3919 #, gcc-internal-format msgid "" "power9 target option is incompatible with %<%s=<xxx>%> for <xxx> less than " @@ -40981,191 +40998,191 @@ msgstr "" #. Enforce that none of the ISA_3_0_MASKS_SERVER flags #. were explicitly cleared. -#: config/rs6000/rs6000.c:3923 +#: config/rs6000/rs6000.c:3927 #, gcc-internal-format msgid "%qs incompatible with explicitly disabled options" msgstr "" #. TARGET_VSX = 1 implies Power 7 and newer -#: config/rs6000/rs6000.c:3948 config/rs6000/rs6000.c:3956 -#: config/rs6000/rs6000.c:3963 config/rs6000/rs6000.c:3970 -#: config/rs6000/rs6000.c:3978 config/rs6000/rs6000.c:3997 -#: config/rs6000/rs6000.c:4059 config/rs6000/rs6000.c:4086 -#: config/rs6000/rs6000.c:4113 config/rs6000/rs6000.c:4128 -#: config/rs6000/rs6000.c:4136 config/rs6000/rs6000.c:4181 -#: config/rs6000/rs6000.c:4183 config/rs6000/rs6000.c:4275 -#: config/rs6000/rs6000.c:4288 config/rs6000/rs6000.c:4297 -#: config/rs6000/rs6000.c:4447 config/rs6000/rs6000.c:4470 +#: config/rs6000/rs6000.c:3952 config/rs6000/rs6000.c:3960 +#: config/rs6000/rs6000.c:3967 config/rs6000/rs6000.c:3974 +#: config/rs6000/rs6000.c:3982 config/rs6000/rs6000.c:4001 +#: config/rs6000/rs6000.c:4063 config/rs6000/rs6000.c:4090 +#: config/rs6000/rs6000.c:4117 config/rs6000/rs6000.c:4132 +#: config/rs6000/rs6000.c:4140 config/rs6000/rs6000.c:4185 +#: config/rs6000/rs6000.c:4187 config/rs6000/rs6000.c:4279 +#: config/rs6000/rs6000.c:4292 config/rs6000/rs6000.c:4301 +#: config/rs6000/rs6000.c:4451 config/rs6000/rs6000.c:4474 #, gcc-internal-format msgid "%qs requires %qs" msgstr "" -#: config/rs6000/rs6000.c:4172 +#: config/rs6000/rs6000.c:4176 #, gcc-internal-format msgid "target attribute or pragma changes %<long double%> size" msgstr "" -#: config/rs6000/rs6000.c:4198 +#: config/rs6000/rs6000.c:4202 #, gcc-internal-format msgid "%qs requires full ISA 2.06 support" msgstr "" -#: config/rs6000/rs6000.c:4213 +#: config/rs6000/rs6000.c:4217 #, gcc-internal-format msgid "Using IEEE extended precision %<long double%>" msgstr "" -#: config/rs6000/rs6000.c:4216 +#: config/rs6000/rs6000.c:4220 #, gcc-internal-format msgid "Using IBM extended precision %<long double%>" msgstr "" -#: config/rs6000/rs6000.c:4235 +#: config/rs6000/rs6000.c:4239 #, gcc-internal-format msgid "%qs requires VSX support" msgstr "" -#: config/rs6000/rs6000.c:4244 +#: config/rs6000/rs6000.c:4248 #, gcc-internal-format msgid "The %<-mfloat128%> option may not be fully supported" msgstr "" -#: config/rs6000/rs6000.c:4267 +#: config/rs6000/rs6000.c:4271 #, gcc-internal-format msgid "%qs requires full ISA 3.0 support" msgstr "" -#: config/rs6000/rs6000.c:4354 +#: config/rs6000/rs6000.c:4358 #, gcc-internal-format msgid "unknown vectorization library ABI type (%qs) for %qs switch" msgstr "" -#: config/rs6000/rs6000.c:4379 config/rs6000/rs6000.c:4394 +#: config/rs6000/rs6000.c:4383 config/rs6000/rs6000.c:4398 #, gcc-internal-format msgid "target attribute or pragma changes AltiVec ABI" msgstr "" -#: config/rs6000/rs6000.c:4407 +#: config/rs6000/rs6000.c:4411 #, gcc-internal-format msgid "target attribute or pragma changes darwin64 ABI" msgstr "" -#: config/rs6000/rs6000.c:4603 +#: config/rs6000/rs6000.c:4607 #, gcc-internal-format msgid "%qs needs a valid base register" msgstr "" -#: config/rs6000/rs6000.c:4900 +#: config/rs6000/rs6000.c:4904 #, gcc-internal-format msgid "unknown option for %<%s=%s%>" msgstr "" -#: config/rs6000/rs6000.c:4937 +#: config/rs6000/rs6000.c:4941 #, gcc-internal-format msgid "%qs is deprecated and not recommended in any circumstances" msgstr "" -#: config/rs6000/rs6000.c:7847 +#: config/rs6000/rs6000.c:7901 #, gcc-internal-format, gfc-internal-format msgid "" "the layout of aggregates containing vectors with %d-byte alignment has " "changed in GCC 5" msgstr "" -#: config/rs6000/rs6000.c:10582 +#: config/rs6000/rs6000.c:10675 #, gcc-internal-format -msgid "%qs is an opaque type, and you can't set it to other values." +msgid "%qs is an opaque type, and you cannot set it to other values" msgstr "" -#: config/rs6000/rs6000.c:17677 +#: config/rs6000/rs6000.c:17794 #, gcc-internal-format msgid "no profiling of 64-bit code for this ABI" msgstr "" -#: config/rs6000/rs6000.c:19967 +#: config/rs6000/rs6000.c:20084 #, gcc-internal-format msgid "" "you cannot take the address of a nested function if you use the %qs option" msgstr "" -#: config/rs6000/rs6000.c:20049 +#: config/rs6000/rs6000.c:20166 #, gcc-internal-format msgid "use of %<long double%> in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:20051 +#: config/rs6000/rs6000.c:20168 #, gcc-internal-format msgid "use of boolean types in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:20053 +#: config/rs6000/rs6000.c:20170 #, gcc-internal-format msgid "use of %<complex%> in AltiVec types is invalid" msgstr "" -#: config/rs6000/rs6000.c:20055 +#: config/rs6000/rs6000.c:20172 #, 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 "" -#: config/rs6000/rs6000.c:20061 +#: config/rs6000/rs6000.c:20178 #, gcc-internal-format msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs" msgstr "" -#: config/rs6000/rs6000.c:20064 +#: config/rs6000/rs6000.c:20181 #, gcc-internal-format msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>" msgstr "" -#: config/rs6000/rs6000.c:20069 +#: config/rs6000/rs6000.c:20186 #, gcc-internal-format msgid "use of %<long long%> in AltiVec types is invalid without %qs" msgstr "" -#: config/rs6000/rs6000.c:20072 +#: config/rs6000/rs6000.c:20189 #, gcc-internal-format msgid "use of %<double%> in AltiVec types is invalid without %qs" msgstr "" -#: config/rs6000/rs6000.c:24110 +#: config/rs6000/rs6000.c:24227 #, gcc-internal-format msgid "invalid cpu %qs for %s%qs%s" msgstr "" -#: config/rs6000/rs6000.c:24113 +#: config/rs6000/rs6000.c:24230 #, gcc-internal-format msgid "%s%qs%s is not allowed" msgstr "" -#: config/rs6000/rs6000.c:24115 +#: config/rs6000/rs6000.c:24232 #, gcc-internal-format msgid "%s%qs%s is invalid" msgstr "" -#: config/rs6000/rs6000.c:24660 +#: config/rs6000/rs6000.c:24777 #, gcc-internal-format msgid "%<-mno-%s%> turns off %<-m%s%>" msgstr "" -#: config/rs6000/rs6000.c:24819 +#: config/rs6000/rs6000.c:24936 #, gcc-internal-format msgid "" "%<target_clones%> attribute needs GLIBC (2.23 and newer) that exports " "hardware capability bits" msgstr "" -#: config/rs6000/rs6000.c:24851 +#: config/rs6000/rs6000.c:24968 #, gcc-internal-format msgid "multiversioning needs ifunc which is not supported on this target" msgstr "" -#: config/rs6000/rs6000.c:25107 +#: config/rs6000/rs6000.c:25224 #, gcc-internal-format msgid "Virtual function multiversioning not supported" msgstr "" -#: config/rs6000/rs6000.c:27708 +#: config/rs6000/rs6000.c:27827 #, gcc-internal-format msgid "" "the result for the xxspltidp instruction is undefined for subnormal input " @@ -41349,7 +41366,7 @@ msgstr "" msgid "builtin vec_step can only be used on vector types." msgstr "" -#: config/s390/s390-c.c:712 config/s390/s390.c:896 +#: config/s390/s390-c.c:712 config/s390/s390.c:919 #, gcc-internal-format msgid "constant value required for builtin %qF argument %d" msgstr "" @@ -41421,84 +41438,89 @@ msgstr "" msgid "constant argument %d for builtin %qF is out of range for target type" msgstr "" -#: config/s390/s390.c:743 +#: config/s390/s390.c:762 +#, gcc-internal-format +msgid "constant argument %d for builtin %qF is invalid (%s)" +msgstr "" + +#: config/s390/s390.c:766 #, gcc-internal-format msgid "constant argument %d for builtin %qF is out of range (0..%wu)" msgstr "" -#: config/s390/s390.c:759 +#: config/s390/s390.c:782 #, gcc-internal-format msgid "constant argument %d for builtin %qF is out of range (%wd..%wd)" msgstr "" -#: config/s390/s390.c:808 +#: config/s390/s390.c:831 #, gcc-internal-format msgid "" "builtin %qF is not supported without %<-mhtm%> (default with %<-" "march=zEC12%> and higher)." msgstr "" -#: config/s390/s390.c:814 +#: config/s390/s390.c:837 #, gcc-internal-format msgid "builtin %qF requires %<-mvx%> (default with %<-march=z13%> and higher)." msgstr "" -#: config/s390/s390.c:821 +#: config/s390/s390.c:844 #, gcc-internal-format msgid "Builtin %qF requires z14 or higher." msgstr "" -#: config/s390/s390.c:827 +#: config/s390/s390.c:850 #, gcc-internal-format msgid "Builtin %qF requires z15 or higher." msgstr "" -#: config/s390/s390.c:833 +#: config/s390/s390.c:856 #, gcc-internal-format msgid "Builtin %qF requires arch14 or higher." msgstr "" -#: config/s390/s390.c:852 +#: config/s390/s390.c:875 #, gcc-internal-format msgid "unresolved overloaded builtin" msgstr "" -#: config/s390/s390.c:859 config/tilegx/tilegx.c:3539 +#: config/s390/s390.c:882 config/tilegx/tilegx.c:3539 #: config/tilepro/tilepro.c:3103 #, gcc-internal-format msgid "bad builtin icode" msgstr "" -#: config/s390/s390.c:993 +#: config/s390/s390.c:1016 #, gcc-internal-format msgid "invalid argument %d for builtin %qF" msgstr "" -#: config/s390/s390.c:1094 +#: config/s390/s390.c:1117 #, gcc-internal-format msgid "" "requested %qE attribute is not a comma separated pair of non-negative " "integer constants or too large (max. %d)" msgstr "" -#: config/s390/s390.c:1184 +#: config/s390/s390.c:1207 #, gcc-internal-format msgid "argument to %qE attribute is not (keep|thunk|thunk-extern)" msgstr "" -#: config/s390/s390.c:10001 +#: config/s390/s390.c:10024 #, gcc-internal-format msgid "total size of local variables exceeds architecture limit" msgstr "" -#: config/s390/s390.c:11366 +#: config/s390/s390.c:11389 #, gcc-internal-format msgid "" "frame size of function %qs is %wd bytes exceeding user provided stack limit " "of %d bytes. An unconditional trap is added." msgstr "" -#: config/s390/s390.c:11382 +#: config/s390/s390.c:11405 #, gcc-internal-format msgid "" "frame size of function %qs is %wd bytes which is more than half the stack " @@ -41506,128 +41528,128 @@ msgid "" "function." msgstr "" -#: config/s390/s390.c:11410 +#: config/s390/s390.c:11433 #, gcc-internal-format msgid "frame size of %qs is %wd bytes" msgstr "" -#: config/s390/s390.c:11414 +#: config/s390/s390.c:11437 #, gcc-internal-format msgid "%qs uses dynamic stack allocation" msgstr "" -#: config/s390/s390.c:13124 +#: config/s390/s390.c:13147 #, gcc-internal-format msgid "nested functions cannot be profiled with %<-mfentry%> on s390" msgstr "" -#: config/s390/s390.c:15390 +#: config/s390/s390.c:15413 #, gcc-internal-format msgid "64-bit ABI not supported in ESA/390 mode" msgstr "" -#: config/s390/s390.c:15397 +#: config/s390/s390.c:15420 #, gcc-internal-format msgid "thunk-inline is only supported with %<-mindirect-branch-jump%>" msgstr "" -#: config/s390/s390.c:15432 +#: config/s390/s390.c:15455 #, gcc-internal-format, gfc-internal-format msgid "hardware vector support not available on %s" msgstr "" -#: config/s390/s390.c:15435 +#: config/s390/s390.c:15458 #, gcc-internal-format msgid "hardware vector support not available with %<-msoft-float%>" msgstr "" -#: config/s390/s390.c:15464 +#: config/s390/s390.c:15487 #, gcc-internal-format, gfc-internal-format msgid "hardware decimal floating point instructions not available on %s" msgstr "" -#: config/s390/s390.c:15468 +#: config/s390/s390.c:15491 #, gcc-internal-format msgid "" "hardware decimal floating point instructions not available in ESA/390 mode" msgstr "" -#: config/s390/s390.c:15480 +#: config/s390/s390.c:15503 #, gcc-internal-format msgid "%<-mhard-dfp%> can%'t be used in conjunction with %<-msoft-float%>" msgstr "" -#: config/s390/s390.c:15489 +#: config/s390/s390.c:15512 #, gcc-internal-format msgid "" "%<-mbackchain%> %<-mpacked-stack%> %<-mhard-float%> are not supported in " "combination" msgstr "" -#: config/s390/s390.c:15495 +#: config/s390/s390.c:15518 #, gcc-internal-format msgid "stack size must be greater than the stack guard value" msgstr "" -#: config/s390/s390.c:15497 +#: config/s390/s390.c:15520 #, gcc-internal-format msgid "stack size must not be greater than 64k" msgstr "" -#: config/s390/s390.c:15500 +#: config/s390/s390.c:15523 #, gcc-internal-format msgid "%<-mstack-guard%> implies use of %<-mstack-size%>" msgstr "" -#: config/s390/s390.c:15513 +#: config/s390/s390.c:15536 #, gcc-internal-format msgid "-mtpf-trace-hook-prologue-check requires integer in range 0..4095" msgstr "" -#: config/s390/s390.c:15516 +#: config/s390/s390.c:15539 #, gcc-internal-format msgid "-mtpf-trace-hook-prologue-target requires integer in range 0..4095" msgstr "" -#: config/s390/s390.c:15519 +#: config/s390/s390.c:15542 #, gcc-internal-format msgid "-mtpf-trace-hook-epilogue-check requires integer in range 0..4095" msgstr "" -#: config/s390/s390.c:15522 +#: config/s390/s390.c:15545 #, gcc-internal-format msgid "-mtpf-trace-hook-epilogue-target requires integer in range 0..4095" msgstr "" -#: config/s390/s390.c:15575 +#: config/s390/s390.c:15598 #, gcc-internal-format msgid "%<-mfentry%> is supported only for 64-bit CPUs" msgstr "" #. argument is not a plain number -#: config/s390/s390.c:15611 +#: config/s390/s390.c:15634 #, gcc-internal-format msgid "arguments to %qs should be non-negative integers" msgstr "" -#: config/s390/s390.c:15618 +#: config/s390/s390.c:15641 #, gcc-internal-format msgid "argument to %qs is too large (max. %d)" msgstr "" -#: config/s390/s390.c:15649 +#: config/s390/s390.c:15672 #, gcc-internal-format msgid "" "%<-mno-pic-data-is-text-relative%> cannot be used without %<-fpic%>/%<-fPIC%>" msgstr "" -#: config/s390/s390.c:15810 config/s390/s390.c:15860 config/s390/s390.c:15877 +#: config/s390/s390.c:15833 config/s390/s390.c:15883 config/s390/s390.c:15900 #, gcc-internal-format, gfc-internal-format msgid "attribute(target(\"%s\")) is unknown" msgstr "" #. Value is not allowed for the target attribute. -#: config/s390/s390.c:15816 +#: config/s390/s390.c:15839 #, gcc-internal-format msgid "value %qs is not supported by attribute %<target%>" msgstr "" @@ -41972,17 +41994,22 @@ msgid "" "STABS debugging information for Ada is obsolete and not supported anymore" msgstr "" -#: ada/gcc-interface/trans.c:1637 +#: ada/gcc-interface/trans.c:332 +#, gcc-internal-format, gfc-internal-format +msgid "%s contains too many lines" +msgstr "" + +#: ada/gcc-interface/trans.c:1642 #, gcc-internal-format msgid "subprogram %q+F not marked %<Inline_Always%>" msgstr "" -#: ada/gcc-interface/trans.c:1639 ada/gcc-interface/trans.c:1645 +#: ada/gcc-interface/trans.c:1644 ada/gcc-interface/trans.c:1650 #, gcc-internal-format msgid "parent subprogram cannot be inlined" msgstr "" -#: ada/gcc-interface/trans.c:1643 +#: ada/gcc-interface/trans.c:1648 #, gcc-internal-format msgid "subprogram %q+F not marked %<Inline%>" msgstr "" @@ -42049,8 +42076,8 @@ msgstr "" msgid "could not read the BRIG file" msgstr "" -#: c/c-convert.c:101 c/c-typeck.c:2210 c/c-typeck.c:12707 cp/typeck.c:2146 -#: cp/typeck.c:8603 cp/typeck.c:9394 +#: c/c-convert.c:101 c/c-typeck.c:2260 c/c-typeck.c:12767 cp/typeck.c:2157 +#: cp/typeck.c:8610 cp/typeck.c:9401 #, gcc-internal-format msgid "void value not ignored as it ought to be" msgstr "" @@ -42110,7 +42137,7 @@ msgstr "" msgid "type of array %q+D completed incompatibly with implicit initialization" msgstr "" -#: c/c-decl.c:1596 c/c-decl.c:7353 c/c-decl.c:8261 c/c-decl.c:9068 +#: c/c-decl.c:1596 c/c-decl.c:7352 c/c-decl.c:8260 c/c-decl.c:9067 #, gcc-internal-format msgid "originally defined here" msgstr "" @@ -42340,7 +42367,7 @@ msgstr "" msgid "declaration of %qD shadows a parameter" msgstr "" -#: c/c-decl.c:3041 cp/name-lookup.c:3339 +#: c/c-decl.c:3041 cp/name-lookup.c:3340 #, gcc-internal-format msgid "declaration of %qD shadows a global declaration" msgstr "" @@ -42350,7 +42377,7 @@ msgstr "" msgid "declaration of %qD shadows a previous local" msgstr "" -#: c/c-decl.c:3073 cp/name-lookup.c:3112 +#: c/c-decl.c:3073 cp/name-lookup.c:3113 #, gcc-internal-format msgid "shadowed declaration is here" msgstr "" @@ -42360,219 +42387,219 @@ msgstr "" msgid "nested extern declaration of %qD" msgstr "" -#: c/c-decl.c:3367 c/c-decl.c:3381 +#: c/c-decl.c:3366 c/c-decl.c:3380 #, gcc-internal-format msgid "implicit declaration of function %qE; did you mean %qs?" msgstr "" -#: c/c-decl.c:3373 c/c-decl.c:3386 +#: c/c-decl.c:3372 c/c-decl.c:3385 #, gcc-internal-format msgid "implicit declaration of function %qE" msgstr "" -#: c/c-decl.c:3405 +#: c/c-decl.c:3404 #, gcc-internal-format msgid "include %qs or provide a declaration of %qE" msgstr "" -#: c/c-decl.c:3675 +#: c/c-decl.c:3674 #, gcc-internal-format msgid "incompatible implicit declaration of built-in function %qD" msgstr "" -#: c/c-decl.c:3685 +#: c/c-decl.c:3684 #, gcc-internal-format msgid "include %qs or provide a declaration of %qD" msgstr "" -#: c/c-decl.c:3696 +#: c/c-decl.c:3695 #, gcc-internal-format msgid "incompatible implicit declaration of function %qD" msgstr "" -#: c/c-decl.c:3757 +#: c/c-decl.c:3756 #, gcc-internal-format msgid "%qE undeclared here (not in a function); did you mean %qs?" msgstr "" -#: c/c-decl.c:3762 +#: c/c-decl.c:3761 #, gcc-internal-format msgid "%qE undeclared here (not in a function)" msgstr "" -#: c/c-decl.c:3775 +#: c/c-decl.c:3774 #, gcc-internal-format msgid "%qE undeclared (first use in this function); did you mean %qs?" msgstr "" -#: c/c-decl.c:3780 +#: c/c-decl.c:3779 #, gcc-internal-format msgid "%qE undeclared (first use in this function)" msgstr "" -#: c/c-decl.c:3784 +#: c/c-decl.c:3783 #, gcc-internal-format msgid "" "each undeclared identifier is reported only once for each function it " "appears in" msgstr "" -#: c/c-decl.c:3832 cp/decl.c:3281 +#: c/c-decl.c:3831 cp/decl.c:3263 #, gcc-internal-format msgid "label %qE referenced outside of any function" msgstr "" -#: c/c-decl.c:3868 +#: c/c-decl.c:3867 #, gcc-internal-format msgid "jump into scope of identifier with variably modified type" msgstr "" -#: c/c-decl.c:3871 +#: c/c-decl.c:3870 #, gcc-internal-format msgid "jump skips variable initialization" msgstr "" -#: c/c-decl.c:3872 c/c-decl.c:3927 c/c-decl.c:4017 +#: c/c-decl.c:3871 c/c-decl.c:3926 c/c-decl.c:4016 #, gcc-internal-format msgid "label %qD defined here" msgstr "" -#: c/c-decl.c:3926 c/c-decl.c:4016 +#: c/c-decl.c:3925 c/c-decl.c:4015 #, gcc-internal-format msgid "jump into statement expression" msgstr "" -#: c/c-decl.c:3949 +#: c/c-decl.c:3948 #, gcc-internal-format msgid "duplicate label declaration %qE" msgstr "" -#: c/c-decl.c:4048 cp/decl.c:3687 +#: c/c-decl.c:4047 cp/decl.c:3669 #, gcc-internal-format msgid "duplicate label %qD" msgstr "" -#: c/c-decl.c:4079 +#: c/c-decl.c:4078 #, gcc-internal-format msgid "" "traditional C lacks a separate namespace for labels, identifier %qE conflicts" msgstr "" -#: c/c-decl.c:4144 +#: c/c-decl.c:4143 #, gcc-internal-format msgid "switch jumps over variable initialization" msgstr "" -#: c/c-decl.c:4145 c/c-decl.c:4156 +#: c/c-decl.c:4144 c/c-decl.c:4155 #, gcc-internal-format msgid "switch starts here" msgstr "" -#: c/c-decl.c:4155 +#: c/c-decl.c:4154 #, gcc-internal-format msgid "switch jumps into statement expression" msgstr "" -#: c/c-decl.c:4238 +#: c/c-decl.c:4237 #, gcc-internal-format msgid "%qE defined as wrong kind of tag" msgstr "" -#: c/c-decl.c:4424 cp/tree.c:4728 +#: c/c-decl.c:4423 cp/tree.c:4789 #, gcc-internal-format msgid "%qE attribute applied to %qD with void return type" msgstr "" -#: c/c-decl.c:4433 +#: c/c-decl.c:4432 #, gcc-internal-format msgid "" "%qE attribute can only be applied to functions or to structure, union or " "enumeration types" msgstr "" -#: c/c-decl.c:4698 +#: c/c-decl.c:4697 #, gcc-internal-format msgid "unnamed struct/union that defines no instances" msgstr "" -#: c/c-decl.c:4709 +#: c/c-decl.c:4708 #, gcc-internal-format msgid "empty declaration with storage class specifier does not redeclare tag" msgstr "" -#: c/c-decl.c:4725 +#: c/c-decl.c:4724 #, gcc-internal-format msgid "empty declaration with type qualifier does not redeclare tag" msgstr "" -#: c/c-decl.c:4737 +#: c/c-decl.c:4736 #, gcc-internal-format msgid "empty declaration with %<_Alignas%> does not redeclare tag" msgstr "" -#: c/c-decl.c:4759 c/c-decl.c:4767 +#: c/c-decl.c:4758 c/c-decl.c:4766 #, gcc-internal-format msgid "useless type name in empty declaration" msgstr "" -#: c/c-decl.c:4775 +#: c/c-decl.c:4774 #, gcc-internal-format msgid "%<inline%> in empty declaration" msgstr "" -#: c/c-decl.c:4781 +#: c/c-decl.c:4780 #, gcc-internal-format msgid "%<_Noreturn%> in empty declaration" msgstr "" -#: c/c-decl.c:4787 +#: c/c-decl.c:4786 #, gcc-internal-format msgid "%<auto%> in file-scope empty declaration" msgstr "" -#: c/c-decl.c:4793 +#: c/c-decl.c:4792 #, gcc-internal-format msgid "%<register%> in file-scope empty declaration" msgstr "" -#: c/c-decl.c:4800 +#: c/c-decl.c:4799 #, gcc-internal-format msgid "useless storage class specifier in empty declaration" msgstr "" -#: c/c-decl.c:4806 +#: c/c-decl.c:4805 #, gcc-internal-format msgid "useless %qs in empty declaration" msgstr "" -#: c/c-decl.c:4819 +#: c/c-decl.c:4818 #, gcc-internal-format msgid "useless type qualifier in empty declaration" msgstr "" -#: c/c-decl.c:4826 +#: c/c-decl.c:4825 #, gcc-internal-format msgid "useless %<_Alignas%> in empty declaration" msgstr "" -#: c/c-decl.c:4844 +#: c/c-decl.c:4843 #, gcc-internal-format msgid "invalid use of attributes in empty declaration" msgstr "" -#: c/c-decl.c:4858 c/c-parser.c:2033 +#: c/c-decl.c:4857 c/c-parser.c:2033 #, gcc-internal-format msgid "empty declaration" msgstr "" -#: c/c-decl.c:4929 +#: c/c-decl.c:4928 #, gcc-internal-format msgid "" "ISO C90 does not support %<static%> or type qualifiers in parameter array " "declarators" msgstr "" -#: c/c-decl.c:4933 +#: c/c-decl.c:4932 #, gcc-internal-format msgid "ISO C90 does not support %<[*]%> array declarators" msgstr "" @@ -42580,28 +42607,28 @@ msgstr "" #. C99 6.7.5.2p4 #. A function definition isn't function prototype scope C99 6.2.1p4. #. C99 6.7.5.2p4 -#: c/c-decl.c:4939 c/c-decl.c:7820 c/c-decl.c:9738 +#: c/c-decl.c:4938 c/c-decl.c:7819 c/c-decl.c:9737 #, gcc-internal-format msgid "%<[*]%> not allowed in other than function prototype scope" msgstr "" -#: c/c-decl.c:5104 +#: c/c-decl.c:5103 #, gcc-internal-format msgid "%q+D is usually a function" msgstr "" -#: c/c-decl.c:5113 +#: c/c-decl.c:5112 #, gcc-internal-format msgid "typedef %qD is initialized (use %<__typeof__%> instead)" msgstr "" -#: c/c-decl.c:5118 +#: c/c-decl.c:5117 #, gcc-internal-format msgid "function %qD is initialized like a variable" msgstr "" #. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. -#: c/c-decl.c:5124 +#: c/c-decl.c:5123 #, gcc-internal-format msgid "parameter %qD is initialized" msgstr "" @@ -42610,267 +42637,267 @@ msgstr "" #. of VLAs themselves count as VLAs, it does not make #. sense to permit them to be initialized given that #. ordinary VLAs may not be initialized. -#: c/c-decl.c:5143 c/c-decl.c:5158 c/c-typeck.c:8153 +#: c/c-decl.c:5142 c/c-decl.c:5157 c/c-typeck.c:8213 #, gcc-internal-format msgid "variable-sized object may not be initialized" msgstr "" -#: c/c-decl.c:5149 +#: c/c-decl.c:5148 #, gcc-internal-format msgid "variable %qD has initializer but incomplete type" msgstr "" -#: c/c-decl.c:5238 +#: c/c-decl.c:5237 #, gcc-internal-format msgid "inline function %q+D given attribute %qs" msgstr "" -#: c/c-decl.c:5288 +#: c/c-decl.c:5287 #, gcc-internal-format msgid "uninitialized const member in %qT is invalid in C++" msgstr "" -#: c/c-decl.c:5290 +#: c/c-decl.c:5289 #, gcc-internal-format msgid "%qD should be initialized" msgstr "" -#: c/c-decl.c:5371 +#: c/c-decl.c:5370 #, gcc-internal-format msgid "initializer fails to determine size of %q+D" msgstr "" -#: c/c-decl.c:5376 +#: c/c-decl.c:5375 #, gcc-internal-format msgid "array size missing in %q+D" msgstr "" -#: c/c-decl.c:5380 +#: c/c-decl.c:5379 #, gcc-internal-format msgid "zero or negative size array %q+D" msgstr "" -#: c/c-decl.c:5469 +#: c/c-decl.c:5468 #, gcc-internal-format msgid "storage size of %q+D isn%'t constant" msgstr "" -#: c/c-decl.c:5519 +#: c/c-decl.c:5518 #, gcc-internal-format msgid "ignoring %<asm%> specifier for non-static local variable %q+D" msgstr "" -#: c/c-decl.c:5557 +#: c/c-decl.c:5556 #, gcc-internal-format msgid "cannot put object with volatile field into register" msgstr "" -#: c/c-decl.c:5643 +#: c/c-decl.c:5642 #, gcc-internal-format msgid "uninitialized %<const %D%> is invalid in C++" msgstr "" -#: c/c-decl.c:5658 cp/decl.c:8192 +#: c/c-decl.c:5657 cp/decl.c:8198 #, gcc-internal-format msgid "%q+D in declare target directive does not have mappable type" msgstr "" -#: c/c-decl.c:5915 +#: c/c-decl.c:5914 #, gcc-internal-format msgid "ISO C forbids forward parameter declarations" msgstr "" -#: c/c-decl.c:6026 +#: c/c-decl.c:6025 #, gcc-internal-format msgid "defining a type in a compound literal is invalid in C++" msgstr "" -#: c/c-decl.c:6047 c/c-decl.c:6062 +#: c/c-decl.c:6046 c/c-decl.c:6061 #, gcc-internal-format msgid "bit-field %qs width not an integer constant" msgstr "" -#: c/c-decl.c:6057 +#: c/c-decl.c:6056 #, gcc-internal-format msgid "bit-field %qs width not an integer constant expression" msgstr "" -#: c/c-decl.c:6068 +#: c/c-decl.c:6067 #, gcc-internal-format msgid "negative width in bit-field %qs" msgstr "" -#: c/c-decl.c:6073 +#: c/c-decl.c:6072 #, gcc-internal-format msgid "zero width for bit-field %qs" msgstr "" -#: c/c-decl.c:6083 +#: c/c-decl.c:6082 #, gcc-internal-format msgid "bit-field %qs has invalid type" msgstr "" -#: c/c-decl.c:6089 +#: c/c-decl.c:6088 #, gcc-internal-format msgid "cannot declare bit-field %qs with %<warn_if_not_aligned%> type" msgstr "" -#: c/c-decl.c:6100 +#: c/c-decl.c:6099 #, gcc-internal-format msgid "type of bit-field %qs is a GCC extension" msgstr "" -#: c/c-decl.c:6106 +#: c/c-decl.c:6105 #, gcc-internal-format msgid "width of %qs exceeds its type" msgstr "" -#: c/c-decl.c:6119 +#: c/c-decl.c:6118 #, gcc-internal-format msgid "%qs is narrower than values of its type" msgstr "" -#: c/c-decl.c:6134 +#: c/c-decl.c:6133 #, gcc-internal-format msgid "ISO C90 forbids array %qE whose size cannot be evaluated" msgstr "" -#: c/c-decl.c:6137 +#: c/c-decl.c:6136 #, gcc-internal-format msgid "ISO C90 forbids array whose size cannot be evaluated" msgstr "" -#: c/c-decl.c:6144 +#: c/c-decl.c:6143 #, gcc-internal-format msgid "ISO C90 forbids variable length array %qE" msgstr "" -#: c/c-decl.c:6146 +#: c/c-decl.c:6145 #, gcc-internal-format msgid "ISO C90 forbids variable length array" msgstr "" -#: c/c-decl.c:6357 c/c-decl.c:6753 c/c-decl.c:6763 +#: c/c-decl.c:6356 c/c-decl.c:6752 c/c-decl.c:6762 #, gcc-internal-format msgid "variably modified %qE at file scope" msgstr "" -#: c/c-decl.c:6359 +#: c/c-decl.c:6358 #, gcc-internal-format msgid "variably modified field at file scope" msgstr "" -#: c/c-decl.c:6379 +#: c/c-decl.c:6378 #, gcc-internal-format msgid "type defaults to %<int%> in declaration of %qE" msgstr "" -#: c/c-decl.c:6383 +#: c/c-decl.c:6382 #, gcc-internal-format msgid "type defaults to %<int%> in type name" msgstr "" -#: c/c-decl.c:6415 +#: c/c-decl.c:6414 #, gcc-internal-format msgid "duplicate %<const%>" msgstr "" -#: c/c-decl.c:6417 +#: c/c-decl.c:6416 #, gcc-internal-format msgid "duplicate %<restrict%>" msgstr "" -#: c/c-decl.c:6419 +#: c/c-decl.c:6418 #, gcc-internal-format msgid "duplicate %<volatile%>" msgstr "" -#: c/c-decl.c:6421 +#: c/c-decl.c:6420 #, gcc-internal-format msgid "duplicate %<_Atomic%>" msgstr "" -#: c/c-decl.c:6424 +#: c/c-decl.c:6423 #, gcc-internal-format, gfc-internal-format msgid "conflicting named address spaces (%s vs %s)" msgstr "" -#: c/c-decl.c:6447 c/c-parser.c:3048 +#: c/c-decl.c:6446 c/c-parser.c:3048 #, gcc-internal-format msgid "%<_Atomic%>-qualified array type" msgstr "" -#: c/c-decl.c:6461 +#: c/c-decl.c:6460 #, gcc-internal-format msgid "function definition declared %<auto%>" msgstr "" -#: c/c-decl.c:6463 +#: c/c-decl.c:6462 #, gcc-internal-format msgid "function definition declared %<register%>" msgstr "" -#: c/c-decl.c:6465 +#: c/c-decl.c:6464 #, gcc-internal-format msgid "function definition declared %<typedef%>" msgstr "" -#: c/c-decl.c:6467 +#: c/c-decl.c:6466 #, gcc-internal-format msgid "function definition declared %qs" msgstr "" -#: c/c-decl.c:6485 +#: c/c-decl.c:6484 #, gcc-internal-format msgid "storage class specified for structure field %qE" msgstr "" -#: c/c-decl.c:6488 +#: c/c-decl.c:6487 #, gcc-internal-format msgid "storage class specified for structure field" msgstr "" -#: c/c-decl.c:6492 +#: c/c-decl.c:6491 #, gcc-internal-format msgid "storage class specified for parameter %qE" msgstr "" -#: c/c-decl.c:6495 +#: c/c-decl.c:6494 #, gcc-internal-format msgid "storage class specified for unnamed parameter" msgstr "" -#: c/c-decl.c:6498 cp/decl.c:12158 +#: c/c-decl.c:6497 cp/decl.c:12176 #, gcc-internal-format msgid "storage class specified for typename" msgstr "" -#: c/c-decl.c:6515 +#: c/c-decl.c:6514 #, gcc-internal-format msgid "%qE initialized and declared %<extern%>" msgstr "" -#: c/c-decl.c:6519 +#: c/c-decl.c:6518 #, gcc-internal-format msgid "%qE has both %<extern%> and initializer" msgstr "" -#: c/c-decl.c:6524 +#: c/c-decl.c:6523 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %<auto%>" msgstr "" -#: c/c-decl.c:6528 +#: c/c-decl.c:6527 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %<register%>" msgstr "" -#: c/c-decl.c:6533 +#: c/c-decl.c:6532 #, gcc-internal-format msgid "nested function %qE declared %<extern%>" msgstr "" -#: c/c-decl.c:6536 +#: c/c-decl.c:6535 #, gcc-internal-format msgid "function-scope %qE implicitly auto and declared %qs" msgstr "" @@ -42878,721 +42905,721 @@ msgstr "" #. Only the innermost declarator (making a parameter be of #. array type which is converted to pointer type) #. may have static or type qualifiers. -#: c/c-decl.c:6583 c/c-decl.c:6977 +#: c/c-decl.c:6582 c/c-decl.c:6976 #, gcc-internal-format msgid "static or type qualifiers in non-parameter array declarator" msgstr "" -#: c/c-decl.c:6644 +#: c/c-decl.c:6643 #, gcc-internal-format msgid "declaration of %qE as array of voids" msgstr "" -#: c/c-decl.c:6646 +#: c/c-decl.c:6645 #, gcc-internal-format msgid "declaration of type name as array of voids" msgstr "" -#: c/c-decl.c:6653 +#: c/c-decl.c:6652 #, gcc-internal-format msgid "declaration of %qE as array of functions" msgstr "" -#: c/c-decl.c:6656 +#: c/c-decl.c:6655 #, gcc-internal-format msgid "declaration of type name as array of functions" msgstr "" -#: c/c-decl.c:6664 c/c-decl.c:8792 +#: c/c-decl.c:6663 c/c-decl.c:8791 #, gcc-internal-format msgid "invalid use of structure with flexible array member" msgstr "" -#: c/c-decl.c:6696 +#: c/c-decl.c:6695 #, gcc-internal-format msgid "size of array %qE has non-integer type" msgstr "" -#: c/c-decl.c:6700 +#: c/c-decl.c:6699 #, gcc-internal-format msgid "size of unnamed array has non-integer type" msgstr "" -#: c/c-decl.c:6708 +#: c/c-decl.c:6707 #, gcc-internal-format msgid "size of array %qE has incomplete type" msgstr "" -#: c/c-decl.c:6711 +#: c/c-decl.c:6710 #, gcc-internal-format msgid "size of unnamed array has incomplete type" msgstr "" -#: c/c-decl.c:6723 +#: c/c-decl.c:6722 #, gcc-internal-format msgid "ISO C forbids zero-size array %qE" msgstr "" -#: c/c-decl.c:6726 +#: c/c-decl.c:6725 #, gcc-internal-format msgid "ISO C forbids zero-size array" msgstr "" -#: c/c-decl.c:6735 +#: c/c-decl.c:6734 #, gcc-internal-format msgid "size of array %qE is negative" msgstr "" -#: c/c-decl.c:6737 +#: c/c-decl.c:6736 #, gcc-internal-format msgid "size of unnamed array is negative" msgstr "" -#: c/c-decl.c:6823 +#: c/c-decl.c:6822 #, gcc-internal-format msgid "size of array %qE is too large" msgstr "" -#: c/c-decl.c:6826 +#: c/c-decl.c:6825 #, gcc-internal-format msgid "size of unnamed array is too large" msgstr "" -#: c/c-decl.c:6865 c/c-decl.c:7523 +#: c/c-decl.c:6864 c/c-decl.c:7522 #, gcc-internal-format msgid "ISO C90 does not support flexible array members" msgstr "" #. C99 6.7.5.2p4 -#: c/c-decl.c:6887 +#: c/c-decl.c:6886 #, gcc-internal-format msgid "%<[*]%> not in a declaration" msgstr "" -#: c/c-decl.c:6900 +#: c/c-decl.c:6899 #, gcc-internal-format msgid "array type has incomplete element type %qT" msgstr "" -#: c/c-decl.c:6906 +#: c/c-decl.c:6905 #, gcc-internal-format msgid "" "declaration of %qE as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: c/c-decl.c:6910 +#: c/c-decl.c:6909 #, gcc-internal-format msgid "" "declaration of multidimensional array must have bounds for all dimensions " "except the first" msgstr "" -#: c/c-decl.c:7013 +#: c/c-decl.c:7012 #, gcc-internal-format msgid "%qE declared as function returning a function" msgstr "" -#: c/c-decl.c:7016 +#: c/c-decl.c:7015 #, gcc-internal-format msgid "type name declared as function returning a function" msgstr "" -#: c/c-decl.c:7023 +#: c/c-decl.c:7022 #, gcc-internal-format msgid "%qE declared as function returning an array" msgstr "" -#: c/c-decl.c:7026 +#: c/c-decl.c:7025 #, gcc-internal-format msgid "type name declared as function returning an array" msgstr "" -#: c/c-decl.c:7067 +#: c/c-decl.c:7066 #, gcc-internal-format msgid "function definition has qualified void return type" msgstr "" -#: c/c-decl.c:7071 cp/decl.c:12458 +#: c/c-decl.c:7070 cp/decl.c:12476 #, gcc-internal-format msgid "type qualifiers ignored on function return type" msgstr "" -#: c/c-decl.c:7109 c/c-decl.c:7319 c/c-decl.c:7373 c/c-decl.c:7457 -#: c/c-decl.c:7582 c/c-parser.c:3050 +#: c/c-decl.c:7108 c/c-decl.c:7318 c/c-decl.c:7372 c/c-decl.c:7456 +#: c/c-decl.c:7581 c/c-parser.c:3050 #, gcc-internal-format msgid "%<_Atomic%>-qualified function type" msgstr "" -#: c/c-decl.c:7115 c/c-decl.c:7325 c/c-decl.c:7462 c/c-decl.c:7587 +#: c/c-decl.c:7114 c/c-decl.c:7324 c/c-decl.c:7461 c/c-decl.c:7586 #, gcc-internal-format msgid "ISO C forbids qualified function types" msgstr "" -#: c/c-decl.c:7210 +#: c/c-decl.c:7209 #, gcc-internal-format msgid "%qs combined with %<auto%> qualifier for %qE" msgstr "" -#: c/c-decl.c:7214 +#: c/c-decl.c:7213 #, gcc-internal-format msgid "%qs combined with %<register%> qualifier for %qE" msgstr "" -#: c/c-decl.c:7220 +#: c/c-decl.c:7219 #, gcc-internal-format msgid "%qs specified for auto variable %qE" msgstr "" -#: c/c-decl.c:7236 +#: c/c-decl.c:7235 #, gcc-internal-format msgid "%qs specified for parameter %qE" msgstr "" -#: c/c-decl.c:7239 +#: c/c-decl.c:7238 #, gcc-internal-format msgid "%qs specified for unnamed parameter" msgstr "" -#: c/c-decl.c:7245 +#: c/c-decl.c:7244 #, gcc-internal-format msgid "%qs specified for structure field %qE" msgstr "" -#: c/c-decl.c:7248 +#: c/c-decl.c:7247 #, gcc-internal-format msgid "%qs specified for structure field" msgstr "" -#: c/c-decl.c:7263 +#: c/c-decl.c:7262 #, gcc-internal-format msgid "bit-field %qE has atomic type" msgstr "" -#: c/c-decl.c:7265 +#: c/c-decl.c:7264 #, gcc-internal-format msgid "bit-field has atomic type" msgstr "" -#: c/c-decl.c:7274 +#: c/c-decl.c:7273 #, gcc-internal-format msgid "alignment specified for typedef %qE" msgstr "" -#: c/c-decl.c:7276 +#: c/c-decl.c:7275 #, gcc-internal-format msgid "alignment specified for %<register%> object %qE" msgstr "" -#: c/c-decl.c:7281 +#: c/c-decl.c:7280 #, gcc-internal-format msgid "alignment specified for parameter %qE" msgstr "" -#: c/c-decl.c:7283 +#: c/c-decl.c:7282 #, gcc-internal-format msgid "alignment specified for unnamed parameter" msgstr "" -#: c/c-decl.c:7288 +#: c/c-decl.c:7287 #, gcc-internal-format msgid "alignment specified for bit-field %qE" msgstr "" -#: c/c-decl.c:7290 +#: c/c-decl.c:7289 #, gcc-internal-format msgid "alignment specified for unnamed bit-field" msgstr "" -#: c/c-decl.c:7293 +#: c/c-decl.c:7292 #, gcc-internal-format msgid "alignment specified for function %qE" msgstr "" -#: c/c-decl.c:7300 +#: c/c-decl.c:7299 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE" msgstr "" -#: c/c-decl.c:7303 +#: c/c-decl.c:7302 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field" msgstr "" -#: c/c-decl.c:7334 +#: c/c-decl.c:7333 #, gcc-internal-format msgid "typedef %q+D declared %<inline%>" msgstr "" -#: c/c-decl.c:7336 +#: c/c-decl.c:7335 #, gcc-internal-format msgid "typedef %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7379 +#: c/c-decl.c:7378 #, gcc-internal-format msgid "ISO C forbids const or volatile function types" msgstr "" #. C99 6.7.2.1p8 -#: c/c-decl.c:7390 +#: c/c-decl.c:7389 #, gcc-internal-format msgid "a member of a structure or union cannot have a variably modified type" msgstr "" -#: c/c-decl.c:7407 cp/decl.c:11090 +#: c/c-decl.c:7406 cp/decl.c:11108 #, gcc-internal-format msgid "variable or field %qE declared void" msgstr "" -#: c/c-decl.c:7447 +#: c/c-decl.c:7446 #, gcc-internal-format msgid "attributes in parameter array declarator ignored" msgstr "" -#: c/c-decl.c:7489 +#: c/c-decl.c:7488 #, gcc-internal-format msgid "parameter %q+D declared %<inline%>" msgstr "" -#: c/c-decl.c:7491 +#: c/c-decl.c:7490 #, gcc-internal-format msgid "parameter %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7504 +#: c/c-decl.c:7503 #, gcc-internal-format msgid "field %qE declared as a function" msgstr "" -#: c/c-decl.c:7511 +#: c/c-decl.c:7510 #, gcc-internal-format msgid "field %qE has incomplete type" msgstr "" -#: c/c-decl.c:7513 +#: c/c-decl.c:7512 #, gcc-internal-format msgid "unnamed field has incomplete type" msgstr "" -#: c/c-decl.c:7553 c/c-decl.c:7564 c/c-decl.c:7567 +#: c/c-decl.c:7552 c/c-decl.c:7563 c/c-decl.c:7566 #, gcc-internal-format msgid "invalid storage class for function %qE" msgstr "" -#: c/c-decl.c:7624 +#: c/c-decl.c:7623 #, gcc-internal-format msgid "cannot inline function %<main%>" msgstr "" -#: c/c-decl.c:7626 +#: c/c-decl.c:7625 #, gcc-internal-format msgid "%<main%> declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7637 +#: c/c-decl.c:7636 #, gcc-internal-format msgid "ISO C99 does not support %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7640 +#: c/c-decl.c:7639 #, gcc-internal-format msgid "ISO C90 does not support %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7669 +#: c/c-decl.c:7668 #, gcc-internal-format msgid "variable previously declared %<static%> redeclared %<extern%>" msgstr "" -#: c/c-decl.c:7679 +#: c/c-decl.c:7678 #, gcc-internal-format msgid "variable %q+D declared %<inline%>" msgstr "" -#: c/c-decl.c:7681 +#: c/c-decl.c:7680 #, gcc-internal-format msgid "variable %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7716 +#: c/c-decl.c:7715 #, gcc-internal-format msgid "non-nested function with variably modified type" msgstr "" -#: c/c-decl.c:7718 +#: c/c-decl.c:7717 #, gcc-internal-format msgid "object with variably modified type must have no linkage" msgstr "" -#: c/c-decl.c:7826 c/c-decl.c:9546 +#: c/c-decl.c:7825 c/c-decl.c:9545 #, gcc-internal-format msgid "function declaration isn%'t a prototype" msgstr "" -#: c/c-decl.c:7836 +#: c/c-decl.c:7835 #, gcc-internal-format msgid "parameter names (without types) in function declaration" msgstr "" -#: c/c-decl.c:7881 +#: c/c-decl.c:7880 #, gcc-internal-format msgid "parameter %u (%q+D) has incomplete type" msgstr "" -#: c/c-decl.c:7885 +#: c/c-decl.c:7884 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has incomplete type" msgstr "" -#: c/c-decl.c:7896 +#: c/c-decl.c:7895 #, gcc-internal-format msgid "parameter %u (%q+D) has void type" msgstr "" -#: c/c-decl.c:7900 +#: c/c-decl.c:7899 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has void type" msgstr "" -#: c/c-decl.c:7974 +#: c/c-decl.c:7973 #, gcc-internal-format msgid "%<void%> as only parameter may not be qualified" msgstr "" -#: c/c-decl.c:7978 c/c-decl.c:8014 +#: c/c-decl.c:7977 c/c-decl.c:8013 #, gcc-internal-format msgid "%<void%> must be the only parameter" msgstr "" -#: c/c-decl.c:8008 +#: c/c-decl.c:8007 #, gcc-internal-format msgid "parameter %q+D has just a forward declaration" msgstr "" -#: c/c-decl.c:8054 +#: c/c-decl.c:8053 #, gcc-internal-format msgid "" "%<%s %E%> declared inside parameter list will not be visible outside of this " "definition or declaration" msgstr "" -#: c/c-decl.c:8060 +#: c/c-decl.c:8059 #, gcc-internal-format, gfc-internal-format msgid "" "anonymous %s declared inside parameter list will not be visible outside of " "this definition or declaration" msgstr "" -#: c/c-decl.c:8168 +#: c/c-decl.c:8167 #, gcc-internal-format msgid "enum type defined here" msgstr "" -#: c/c-decl.c:8174 +#: c/c-decl.c:8173 #, gcc-internal-format msgid "struct defined here" msgstr "" -#: c/c-decl.c:8180 +#: c/c-decl.c:8179 #, gcc-internal-format msgid "union defined here" msgstr "" -#: c/c-decl.c:8257 +#: c/c-decl.c:8256 #, gcc-internal-format msgid "redefinition of %<union %E%>" msgstr "" -#: c/c-decl.c:8259 +#: c/c-decl.c:8258 #, gcc-internal-format msgid "redefinition of %<struct %E%>" msgstr "" -#: c/c-decl.c:8268 +#: c/c-decl.c:8267 #, gcc-internal-format msgid "nested redefinition of %<union %E%>" msgstr "" -#: c/c-decl.c:8270 +#: c/c-decl.c:8269 #, gcc-internal-format msgid "nested redefinition of %<struct %E%>" msgstr "" -#: c/c-decl.c:8300 c/c-decl.c:9087 +#: c/c-decl.c:8299 c/c-decl.c:9086 #, gcc-internal-format msgid "defining type in %qs expression is invalid in C++" msgstr "" -#: c/c-decl.c:8367 cp/decl.c:5143 +#: c/c-decl.c:8366 cp/decl.c:5139 #, gcc-internal-format msgid "declaration does not declare anything" msgstr "" -#: c/c-decl.c:8372 +#: c/c-decl.c:8371 #, gcc-internal-format msgid "ISO C99 doesn%'t support unnamed structs/unions" msgstr "" -#: c/c-decl.c:8375 +#: c/c-decl.c:8374 #, gcc-internal-format msgid "ISO C90 doesn%'t support unnamed structs/unions" msgstr "" -#: c/c-decl.c:8468 c/c-decl.c:8486 c/c-decl.c:8547 +#: c/c-decl.c:8467 c/c-decl.c:8485 c/c-decl.c:8546 #, gcc-internal-format msgid "duplicate member %q+D" msgstr "" -#: c/c-decl.c:8573 +#: c/c-decl.c:8572 #, gcc-internal-format msgid "empty struct has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.c:8576 +#: c/c-decl.c:8575 #, gcc-internal-format msgid "empty union has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.c:8701 +#: c/c-decl.c:8700 #, gcc-internal-format msgid "union has no named members" msgstr "" -#: c/c-decl.c:8703 +#: c/c-decl.c:8702 #, gcc-internal-format msgid "union has no members" msgstr "" -#: c/c-decl.c:8708 +#: c/c-decl.c:8707 #, gcc-internal-format msgid "struct has no named members" msgstr "" -#: c/c-decl.c:8710 +#: c/c-decl.c:8709 #, gcc-internal-format msgid "struct has no members" msgstr "" -#: c/c-decl.c:8771 cp/decl.c:13430 +#: c/c-decl.c:8770 cp/decl.c:13448 #, gcc-internal-format msgid "flexible array member in union" msgstr "" -#: c/c-decl.c:8777 +#: c/c-decl.c:8776 #, gcc-internal-format msgid "flexible array member not at end of struct" msgstr "" -#: c/c-decl.c:8783 +#: c/c-decl.c:8782 #, gcc-internal-format msgid "flexible array member in a struct with no named members" msgstr "" -#: c/c-decl.c:8814 +#: c/c-decl.c:8813 #, gcc-internal-format msgid "type %qT is too large" msgstr "" -#: c/c-decl.c:8919 +#: c/c-decl.c:8918 #, gcc-internal-format msgid "union cannot be made transparent" msgstr "" -#: c/c-decl.c:9059 +#: c/c-decl.c:9058 #, gcc-internal-format msgid "nested redefinition of %<enum %E%>" msgstr "" #. This enum is a named one that has been declared already. -#: c/c-decl.c:9066 +#: c/c-decl.c:9065 #, gcc-internal-format msgid "redeclaration of %<enum %E%>" msgstr "" -#: c/c-decl.c:9145 cp/decl.c:15903 +#: c/c-decl.c:9144 cp/decl.c:15921 #, gcc-internal-format msgid "specified mode too small for enumerated values" msgstr "" -#: c/c-decl.c:9160 +#: c/c-decl.c:9159 #, gcc-internal-format msgid "enumeration values exceed range of largest integer" msgstr "" -#: c/c-decl.c:9280 c/c-decl.c:9296 +#: c/c-decl.c:9279 c/c-decl.c:9295 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant" msgstr "" -#: c/c-decl.c:9291 +#: c/c-decl.c:9290 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant expression" msgstr "" -#: c/c-decl.c:9315 +#: c/c-decl.c:9314 #, gcc-internal-format msgid "overflow in enumeration values" msgstr "" -#: c/c-decl.c:9323 +#: c/c-decl.c:9322 #, gcc-internal-format msgid "ISO C restricts enumerator values to range of %<int%>" msgstr "" -#: c/c-decl.c:9440 cp/decl.c:5454 cp/decl.c:16454 +#: c/c-decl.c:9439 cp/decl.c:5450 cp/decl.c:16472 #, gcc-internal-format msgid "inline function %qD given attribute %qs" msgstr "" -#: c/c-decl.c:9458 +#: c/c-decl.c:9457 #, gcc-internal-format msgid "return type is an incomplete type" msgstr "" -#: c/c-decl.c:9469 +#: c/c-decl.c:9468 #, gcc-internal-format msgid "return type defaults to %<int%>" msgstr "" -#: c/c-decl.c:9497 +#: c/c-decl.c:9496 #, gcc-internal-format msgid "%q+D defined as variadic function without prototype" msgstr "" -#: c/c-decl.c:9555 +#: c/c-decl.c:9554 #, gcc-internal-format msgid "no previous prototype for %qD" msgstr "" -#: c/c-decl.c:9564 +#: c/c-decl.c:9563 #, gcc-internal-format msgid "%qD was used with no prototype before its definition" msgstr "" -#: c/c-decl.c:9572 cp/decl.c:16589 +#: c/c-decl.c:9571 cp/decl.c:16607 #, gcc-internal-format msgid "no previous declaration for %qD" msgstr "" -#: c/c-decl.c:9582 +#: c/c-decl.c:9581 #, gcc-internal-format msgid "%qD was used with no declaration before its definition" msgstr "" -#: c/c-decl.c:9601 +#: c/c-decl.c:9600 #, gcc-internal-format msgid "return type of %qD is not %<int%>" msgstr "" -#: c/c-decl.c:9603 +#: c/c-decl.c:9602 #, gcc-internal-format msgid "%<_Atomic%>-qualified return type of %qD" msgstr "" -#: c/c-decl.c:9610 +#: c/c-decl.c:9609 #, gcc-internal-format msgid "%qD is normally a non-static function" msgstr "" -#: c/c-decl.c:9658 +#: c/c-decl.c:9657 #, gcc-internal-format msgid "old-style parameter declarations in prototyped function definition" msgstr "" -#: c/c-decl.c:9673 +#: c/c-decl.c:9672 #, gcc-internal-format msgid "traditional C rejects ISO C style function definitions" msgstr "" -#: c/c-decl.c:9690 +#: c/c-decl.c:9689 #, gcc-internal-format msgid "" "ISO C does not support omitting parameter names in function definitions " "before C2X" msgstr "" -#: c/c-decl.c:9730 c/c-decl.c:9734 +#: c/c-decl.c:9729 c/c-decl.c:9733 #, gcc-internal-format msgid "old-style function definition" msgstr "" -#: c/c-decl.c:9747 +#: c/c-decl.c:9746 #, gcc-internal-format msgid "parameter name missing from parameter list" msgstr "" -#: c/c-decl.c:9763 +#: c/c-decl.c:9762 #, gcc-internal-format msgid "%qD declared as a non-parameter" msgstr "" -#: c/c-decl.c:9771 +#: c/c-decl.c:9770 #, gcc-internal-format msgid "multiple parameters named %qD" msgstr "" -#: c/c-decl.c:9780 +#: c/c-decl.c:9779 #, gcc-internal-format msgid "parameter %qD declared with void type" msgstr "" -#: c/c-decl.c:9809 c/c-decl.c:9814 +#: c/c-decl.c:9808 c/c-decl.c:9813 #, gcc-internal-format msgid "type of %qD defaults to %<int%>" msgstr "" -#: c/c-decl.c:9834 +#: c/c-decl.c:9833 #, gcc-internal-format msgid "parameter %qD has incomplete type" msgstr "" -#: c/c-decl.c:9841 +#: c/c-decl.c:9840 #, gcc-internal-format msgid "declaration for parameter %qD but no such parameter" msgstr "" -#: c/c-decl.c:9894 +#: c/c-decl.c:9893 #, gcc-internal-format msgid "number of arguments doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.c:9905 +#: c/c-decl.c:9904 #, gcc-internal-format msgid "number of arguments doesn%'t match prototype" msgstr "" -#: c/c-decl.c:9908 c/c-decl.c:9955 c/c-decl.c:9969 +#: c/c-decl.c:9907 c/c-decl.c:9954 c/c-decl.c:9968 #, gcc-internal-format msgid "prototype declaration" msgstr "" -#: c/c-decl.c:9947 +#: c/c-decl.c:9946 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.c:9952 +#: c/c-decl.c:9951 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match prototype" msgstr "" -#: c/c-decl.c:9962 +#: c/c-decl.c:9961 #, gcc-internal-format msgid "argument %qD doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.c:9967 +#: c/c-decl.c:9966 #, gcc-internal-format msgid "argument %qD doesn%'t match prototype" msgstr "" -#: c/c-decl.c:10225 cp/decl.c:17414 +#: c/c-decl.c:10224 cp/decl.c:17432 #, gcc-internal-format msgid "no return statement in function returning non-void" msgstr "" -#: c/c-decl.c:10244 cp/decl.c:17498 +#: c/c-decl.c:10243 cp/decl.c:17516 #, gcc-internal-format msgid "parameter %qD set but not used" msgstr "" @@ -43600,264 +43627,264 @@ msgstr "" #. If we get here, declarations have been used in a for loop without #. the C99 for loop scope. This doesn't make much sense, so don't #. allow it. -#: c/c-decl.c:10340 +#: c/c-decl.c:10339 #, gcc-internal-format msgid "%<for%> loop initial declarations are only allowed in C99 or C11 mode" msgstr "" -#: c/c-decl.c:10345 +#: c/c-decl.c:10344 #, gcc-internal-format msgid "" "use option %<-std=c99%>, %<-std=gnu99%>, %<-std=c11%> or %<-std=gnu11%> to " "compile your code" msgstr "" -#: c/c-decl.c:10352 +#: c/c-decl.c:10351 #, gcc-internal-format msgid "ISO C90 does not support %<for%> loop initial declarations" msgstr "" -#: c/c-decl.c:10384 +#: c/c-decl.c:10383 #, gcc-internal-format msgid "declaration of static variable %qD in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.c:10388 +#: c/c-decl.c:10387 #, gcc-internal-format msgid "" "declaration of %<extern%> variable %qD in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.c:10395 +#: c/c-decl.c:10394 #, gcc-internal-format msgid "%<struct %E%> declared in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.c:10400 +#: c/c-decl.c:10399 #, gcc-internal-format msgid "%<union %E%> declared in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.c:10404 +#: c/c-decl.c:10403 #, gcc-internal-format msgid "%<enum %E%> declared in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.c:10408 +#: c/c-decl.c:10407 #, gcc-internal-format msgid "declaration of non-variable %qD in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.c:10700 +#: c/c-decl.c:10699 #, gcc-internal-format msgid "incompatible address space qualifiers %qs and %qs" msgstr "" -#: c/c-decl.c:10759 c/c-decl.c:10766 +#: c/c-decl.c:10758 c/c-decl.c:10765 #, gcc-internal-format msgid "duplicate %qE declaration specifier" msgstr "" -#: c/c-decl.c:10794 c/c-decl.c:11178 c/c-decl.c:11573 +#: c/c-decl.c:10793 c/c-decl.c:11177 c/c-decl.c:11572 #, gcc-internal-format msgid "two or more data types in declaration specifiers" msgstr "" -#: c/c-decl.c:10806 cp/parser.c:31446 +#: c/c-decl.c:10805 cp/parser.c:31500 #, gcc-internal-format msgid "%<long long long%> is too long for GCC" msgstr "" -#: c/c-decl.c:10819 +#: c/c-decl.c:10818 #, gcc-internal-format msgid "ISO C90 does not support %<long long%>" msgstr "" -#: c/c-decl.c:11048 c/c-parser.c:9956 +#: c/c-decl.c:11047 c/c-parser.c:9956 #, gcc-internal-format msgid "ISO C90 does not support complex types" msgstr "" -#: c/c-decl.c:11094 +#: c/c-decl.c:11093 #, gcc-internal-format msgid "ISO C does not support saturating types" msgstr "" -#: c/c-decl.c:11165 c/c-decl.c:11731 +#: c/c-decl.c:11164 c/c-decl.c:11730 #, gcc-internal-format msgid "duplicate %qE" msgstr "" -#: c/c-decl.c:11225 +#: c/c-decl.c:11224 #, gcc-internal-format msgid "ISO C does not support %<__int%d%> types" msgstr "" -#: c/c-decl.c:11247 +#: c/c-decl.c:11246 #, gcc-internal-format msgid "%<__int%d%> is not supported on this target" msgstr "" -#: c/c-decl.c:11290 +#: c/c-decl.c:11289 #, gcc-internal-format msgid "ISO C90 does not support boolean types" msgstr "" -#: c/c-decl.c:11409 +#: c/c-decl.c:11408 #, gcc-internal-format msgid "ISO C does not support the %<_Float%d%s%> type" msgstr "" -#: c/c-decl.c:11459 +#: c/c-decl.c:11458 #, gcc-internal-format msgid "%<_Float%d%s%> is not supported on this target" msgstr "" -#: c/c-decl.c:11530 +#: c/c-decl.c:11529 #, gcc-internal-format msgid "ISO C does not support decimal floating-point before C2X" msgstr "" -#: c/c-decl.c:11554 c/c-decl.c:11827 c/c-parser.c:8967 +#: c/c-decl.c:11553 c/c-decl.c:11826 c/c-parser.c:8967 #, gcc-internal-format msgid "fixed-point types not supported for this target" msgstr "" -#: c/c-decl.c:11556 +#: c/c-decl.c:11555 #, gcc-internal-format msgid "ISO C does not support fixed-point types" msgstr "" -#: c/c-decl.c:11591 +#: c/c-decl.c:11590 #, gcc-internal-format msgid "C++ lookup of %qD would return a field, not a type" msgstr "" -#: c/c-decl.c:11604 +#: c/c-decl.c:11603 #, gcc-internal-format msgid "%qE fails to be a typedef or built in type" msgstr "" -#: c/c-decl.c:11653 +#: c/c-decl.c:11652 #, gcc-internal-format msgid "%qE is not at beginning of declaration" msgstr "" -#: c/c-decl.c:11674 +#: c/c-decl.c:11673 #, gcc-internal-format msgid "%qE used with %<auto%>" msgstr "" -#: c/c-decl.c:11676 +#: c/c-decl.c:11675 #, gcc-internal-format msgid "%qE used with %<register%>" msgstr "" -#: c/c-decl.c:11678 +#: c/c-decl.c:11677 #, gcc-internal-format msgid "%qE used with %<typedef%>" msgstr "" -#: c/c-decl.c:11692 c/c-parser.c:8325 +#: c/c-decl.c:11691 c/c-parser.c:8325 #, gcc-internal-format msgid "ISO C99 does not support %qE" msgstr "" -#: c/c-decl.c:11695 c/c-parser.c:8328 +#: c/c-decl.c:11694 c/c-parser.c:8328 #, gcc-internal-format msgid "ISO C90 does not support %qE" msgstr "" -#: c/c-decl.c:11707 +#: c/c-decl.c:11706 #, gcc-internal-format msgid "%<__thread%> before %<extern%>" msgstr "" -#: c/c-decl.c:11716 +#: c/c-decl.c:11715 #, gcc-internal-format msgid "%<__thread%> before %<static%>" msgstr "" -#: c/c-decl.c:11729 +#: c/c-decl.c:11728 #, gcc-internal-format msgid "duplicate %<_Thread_local%> or %<__thread%>" msgstr "" -#: c/c-decl.c:11737 +#: c/c-decl.c:11736 #, gcc-internal-format msgid "multiple storage classes in declaration specifiers" msgstr "" -#: c/c-decl.c:11745 +#: c/c-decl.c:11744 #, gcc-internal-format msgid "%qs used with %qE" msgstr "" -#: c/c-decl.c:11824 +#: c/c-decl.c:11823 #, gcc-internal-format msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>" msgstr "" -#: c/c-decl.c:11839 +#: c/c-decl.c:11838 #, gcc-internal-format msgid "ISO C does not support plain %<complex%> meaning %<double complex%>" msgstr "" -#: c/c-decl.c:11866 +#: c/c-decl.c:11865 #, gcc-internal-format msgid "%<__auto_type%> followed by %<[[]]%> attributes" msgstr "" -#: c/c-decl.c:11892 c/c-decl.c:11908 c/c-decl.c:11934 +#: c/c-decl.c:11891 c/c-decl.c:11907 c/c-decl.c:11933 #, gcc-internal-format msgid "ISO C does not support complex integer types" msgstr "" -#: c/c-decl.c:12361 cp/semantics.c:5793 +#: c/c-decl.c:12360 cp/semantics.c:5821 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> combiner refers to variable %qD which is " "not %<omp_out%> nor %<omp_in%>" msgstr "" -#: c/c-decl.c:12365 cp/semantics.c:5797 +#: c/c-decl.c:12364 cp/semantics.c:5825 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> initializer refers to variable %qD which " "is not %<omp_priv%> nor %<omp_orig%>" msgstr "" -#: c/c-fold.c:387 c/c-typeck.c:11988 cp/typeck.c:5073 +#: c/c-fold.c:387 c/c-typeck.c:12048 cp/typeck.c:5084 #, gcc-internal-format msgid "left shift of negative value" msgstr "" -#: c/c-fold.c:397 c/c-typeck.c:11997 cp/typeck.c:5081 +#: c/c-fold.c:397 c/c-typeck.c:12057 cp/typeck.c:5092 #, gcc-internal-format msgid "left shift count is negative" msgstr "" -#: c/c-fold.c:398 c/c-typeck.c:11926 cp/typeck.c:5021 +#: c/c-fold.c:398 c/c-typeck.c:11986 cp/typeck.c:5032 #, gcc-internal-format msgid "right shift count is negative" msgstr "" -#: c/c-fold.c:406 c/c-typeck.c:12016 cp/typeck.c:5089 +#: c/c-fold.c:406 c/c-typeck.c:12076 cp/typeck.c:5100 #, gcc-internal-format msgid "left shift count >= width of type" msgstr "" -#: c/c-fold.c:407 c/c-typeck.c:11950 cp/typeck.c:5032 +#: c/c-fold.c:407 c/c-typeck.c:12010 cp/typeck.c:5043 #, gcc-internal-format msgid "right shift count >= width of type" msgstr "" -#: c/c-fold.c:414 c/c-typeck.c:12008 +#: c/c-fold.c:414 c/c-typeck.c:12068 #, gcc-internal-format msgid "left shift count >= width of vector element" msgstr "" -#: c/c-fold.c:415 c/c-typeck.c:11937 +#: c/c-fold.c:415 c/c-typeck.c:11997 #, gcc-internal-format msgid "right shift count >= width of vector element" msgstr "" @@ -43877,7 +43904,7 @@ msgstr "" msgid "to match this %qs" msgstr "" -#: c/c-parser.c:1325 cp/parser.c:31680 +#: c/c-parser.c:1325 cp/parser.c:31734 #, gcc-internal-format msgid "expected end of line" msgstr "" @@ -43887,7 +43914,7 @@ msgstr "" msgid "ISO C forbids an empty translation unit" msgstr "" -#: c/c-parser.c:1665 cp/semantics.c:3201 +#: c/c-parser.c:1665 cp/semantics.c:3219 #, gcc-internal-format msgid "" "%<#pragma omp declare target%> without corresponding %<#pragma omp end " @@ -43925,7 +43952,7 @@ msgid "unknown type name %qE" msgstr "" #: c/c-parser.c:2001 c/c-parser.c:12508 c/c-parser.c:18876 c/c-parser.c:19393 -#: c/c-parser.c:19910 cp/parser.c:41330 cp/parser.c:45195 +#: c/c-parser.c:19910 cp/parser.c:41383 cp/parser.c:45248 #, gcc-internal-format msgid "expected declaration specifiers" msgstr "" @@ -43945,7 +43972,7 @@ msgstr "" msgid "expected %<;%>, identifier or %<(%>" msgstr "" -#: c/c-parser.c:2066 cp/parser.c:33879 cp/parser.c:33951 +#: c/c-parser.c:2066 cp/parser.c:33933 cp/parser.c:34005 #, gcc-internal-format msgid "prefix attributes are ignored for methods" msgstr "" @@ -43960,7 +43987,7 @@ msgstr "" msgid "unexpected attribute" msgstr "" -#: c/c-parser.c:2132 c/c-parser.c:6220 cp/parser.c:11832 cp/parser.c:12039 +#: c/c-parser.c:2132 c/c-parser.c:6220 cp/parser.c:11853 cp/parser.c:12060 #, gcc-internal-format msgid "%<fallthrough%> attribute not followed by %<;%>" msgstr "" @@ -43999,7 +44026,7 @@ msgstr "" msgid "%<__auto_type%> may only be used with a single declarator" msgstr "" -#: c/c-parser.c:2415 cp/parser.c:14539 +#: c/c-parser.c:2415 cp/parser.c:14563 #, gcc-internal-format msgid "expected %<,%> or %<;%>" msgstr "" @@ -44057,7 +44084,7 @@ msgstr "" msgid "static assertion failed: %E" msgstr "" -#: c/c-parser.c:2683 cp/semantics.c:10131 +#: c/c-parser.c:2683 cp/semantics.c:10159 #, gcc-internal-format msgid "static assertion failed" msgstr "" @@ -44102,14 +44129,14 @@ msgstr "" #: c/c-parser.c:12166 c/c-parser.c:12212 c/c-parser.c:12998 c/c-parser.c:13031 #: c/c-parser.c:15343 c/c-parser.c:15453 c/c-parser.c:15726 c/c-parser.c:15989 #: c/c-parser.c:17946 c/c-parser.c:20428 c/c-parser.c:20619 -#: c/gimple-parser.c:1776 c/gimple-parser.c:1814 cp/parser.c:8961 -#: cp/parser.c:31683 cp/parser.c:34856 cp/parser.c:37421 cp/parser.c:37589 -#: cp/parser.c:42903 cp/parser.c:44510 +#: c/gimple-parser.c:1776 c/gimple-parser.c:1814 cp/parser.c:8968 +#: cp/parser.c:31737 cp/parser.c:34910 cp/parser.c:37474 cp/parser.c:37642 +#: cp/parser.c:42956 cp/parser.c:44563 #, gcc-internal-format msgid "expected identifier" msgstr "" -#: c/c-parser.c:3238 cp/parser.c:20165 +#: c/c-parser.c:3238 cp/parser.c:20202 #, gcc-internal-format msgid "comma at end of enumerator list" msgstr "" @@ -44194,7 +44221,7 @@ msgstr "" msgid "parentheses must be omitted if attribute argument list is empty" msgstr "" -#: c/c-parser.c:4932 cp/parser.c:27867 +#: c/c-parser.c:4932 cp/parser.c:27902 #, gcc-internal-format msgid "%qE attribute does not take any arguments" msgstr "" @@ -44255,7 +44282,7 @@ msgstr "" msgid "expected %<}%> before %<else%>" msgstr "" -#: c/c-parser.c:5776 cp/parser.c:12162 +#: c/c-parser.c:5776 cp/parser.c:12184 #, gcc-internal-format msgid "%<else%> without a previous %<if%>" msgstr "" @@ -44270,7 +44297,7 @@ msgstr "" #. delimiter without consuming it, but here we need to consume #. it to proceed further. #: c/c-parser.c:5815 c/c-parser.c:5828 c/c-parser.c:6241 c/gimple-parser.c:2276 -#: cp/parser.c:11782 +#: cp/parser.c:11803 #, gcc-internal-format msgid "expected statement" msgstr "" @@ -44296,17 +44323,17 @@ msgstr "" msgid "only attribute %<fallthrough%> can be applied to a null statement" msgstr "" -#: c/c-parser.c:6348 cp/parser.c:13616 +#: c/c-parser.c:6348 cp/parser.c:13640 #, gcc-internal-format msgid "suggest braces around empty body in an %<if%> statement" msgstr "" -#: c/c-parser.c:6390 cp/parser.c:13619 +#: c/c-parser.c:6390 cp/parser.c:13643 #, gcc-internal-format msgid "suggest braces around empty body in an %<else%> statement" msgstr "" -#: c/c-parser.c:6521 cp/parser.c:12433 +#: c/c-parser.c:6521 cp/parser.c:12455 #, gcc-internal-format msgid "suggest explicit braces to avoid ambiguous %<else%>" msgstr "" @@ -44326,12 +44353,12 @@ msgstr "" msgid "invalid iterating variable in fast enumeration" msgstr "" -#: c/c-parser.c:6872 cp/parser.c:12702 +#: c/c-parser.c:6872 cp/parser.c:12724 #, gcc-internal-format msgid "missing loop condition in loop with %<GCC ivdep%> pragma" msgstr "" -#: c/c-parser.c:6878 cp/parser.c:12708 +#: c/c-parser.c:6878 cp/parser.c:12730 #, gcc-internal-format msgid "missing loop condition in loop with %<GCC unroll%> pragma" msgstr "" @@ -44346,8 +44373,8 @@ msgstr "" msgid "duplicate %<asm%> qualifier %qE" msgstr "" -#: c/c-parser.c:7037 c/c-parser.c:7048 c/c-parser.c:7059 cp/parser.c:21018 -#: cp/parser.c:21035 cp/parser.c:21049 +#: c/c-parser.c:7037 c/c-parser.c:7048 c/c-parser.c:7059 cp/parser.c:21055 +#: cp/parser.c:21072 cp/parser.c:21086 #, gcc-internal-format msgid "first seen here" msgstr "" @@ -44374,14 +44401,14 @@ msgstr "" #. Location of the binary operator. #. Quiet warning. -#: c/c-parser.c:7819 cp/typeck.c:4849 +#: c/c-parser.c:7819 cp/typeck.c:4860 #, gcc-internal-format msgid "" "division %<sizeof (%T) / sizeof (%T)%> does not compute the number of array " "elements" msgstr "" -#: c/c-parser.c:7825 cp/typeck.c:4854 +#: c/c-parser.c:7825 cp/typeck.c:4865 #, gcc-internal-format msgid "first %<sizeof%> operand was declared here" msgstr "" @@ -44808,12 +44835,12 @@ msgstr "" msgid "no type or storage class may be specified here," msgstr "" -#: c/c-parser.c:11951 cp/parser.c:34713 +#: c/c-parser.c:11951 cp/parser.c:34767 #, gcc-internal-format msgid "empty property attribute list" msgstr "" -#: c/c-parser.c:11965 cp/parser.c:34726 +#: c/c-parser.c:11965 cp/parser.c:34780 #, gcc-internal-format msgid "missing property attribute" msgstr "" @@ -44823,27 +44850,27 @@ msgstr "" msgid "unknown property attribute %<%s%s%>" msgstr "" -#: c/c-parser.c:12007 cp/parser.c:34763 +#: c/c-parser.c:12007 cp/parser.c:34817 #, gcc-internal-format msgid "unknown property attribute" msgstr "" -#: c/c-parser.c:12016 cp/parser.c:34772 +#: c/c-parser.c:12016 cp/parser.c:34826 #, gcc-internal-format msgid "expected %<=%> after Objective-C %qE" msgstr "" -#: c/c-parser.c:12027 cp/parser.c:34786 +#: c/c-parser.c:12027 cp/parser.c:34840 #, gcc-internal-format msgid "expected %qE selector name" msgstr "" -#: c/c-parser.c:12043 cp/parser.c:34805 +#: c/c-parser.c:12043 cp/parser.c:34859 #, gcc-internal-format msgid "setter method names must terminate with %<:%>" msgstr "" -#: c/c-parser.c:12257 cp/parser.c:44841 +#: c/c-parser.c:12257 cp/parser.c:44894 #, gcc-internal-format msgid "" "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a " @@ -44851,27 +44878,27 @@ msgid "" msgstr "" #: c/c-parser.c:12301 c/c-parser.c:19390 c/c-parser.c:19685 c/c-parser.c:19744 -#: c/c-parser.c:19830 cp/parser.c:41327 cp/parser.c:41661 cp/parser.c:41751 -#: cp/parser.c:41824 cp/parser.c:44888 cp/parser.c:44903 cp/parser.c:44918 -#: cp/parser.c:44934 cp/parser.c:44950 cp/parser.c:44966 cp/parser.c:44993 -#: cp/parser.c:45006 cp/parser.c:45029 cp/parser.c:45042 +#: c/c-parser.c:19830 cp/parser.c:41380 cp/parser.c:41714 cp/parser.c:41804 +#: cp/parser.c:41877 cp/parser.c:44941 cp/parser.c:44956 cp/parser.c:44971 +#: cp/parser.c:44987 cp/parser.c:45003 cp/parser.c:45019 cp/parser.c:45046 +#: cp/parser.c:45059 cp/parser.c:45082 cp/parser.c:45095 #, gcc-internal-format msgid "%<#pragma %s%> may only be used in compound statements" msgstr "" -#: c/c-parser.c:12324 cp/parser.c:45019 +#: c/c-parser.c:12324 cp/parser.c:45072 #, gcc-internal-format msgid "%<#pragma acc routine%> must be at file scope" msgstr "" -#: c/c-parser.c:12411 cp/parser.c:45114 +#: c/c-parser.c:12411 cp/parser.c:45167 #, gcc-internal-format msgid "" "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> " "%<reduction%> clause" msgstr "" -#: c/c-parser.c:12418 cp/parser.c:45120 +#: c/c-parser.c:12418 cp/parser.c:45173 #, gcc-internal-format msgid "" "%<#pragma omp section%> may only be used in %<#pragma omp sections%> " @@ -44883,18 +44910,18 @@ msgstr "" msgid "%<#pragma omp requires%> may only be used at file scope" msgstr "" -#: c/c-parser.c:12453 c/c-parser.c:12477 cp/parser.c:45149 cp/parser.c:45182 +#: c/c-parser.c:12453 c/c-parser.c:12477 cp/parser.c:45202 cp/parser.c:45235 #, gcc-internal-format msgid "for, while or do statement expected" msgstr "" -#: c/c-parser.c:12490 cp/parser.c:44878 +#: c/c-parser.c:12490 cp/parser.c:44931 #, gcc-internal-format msgid "%<#pragma GCC pch_preprocess%> must be first" msgstr "" #: c/c-parser.c:12829 c/c-parser.c:15837 c/c-parser.c:21433 c/c-parser.c:21441 -#: cp/parser.c:35224 cp/parser.c:37940 cp/parser.c:43961 cp/parser.c:43969 +#: cp/parser.c:35278 cp/parser.c:37993 cp/parser.c:44014 cp/parser.c:44022 #, gcc-internal-format msgid "too many %qs clauses" msgstr "" @@ -44914,53 +44941,53 @@ msgstr "" msgid "%qD is not a variable" msgstr "" -#: c/c-parser.c:13267 cp/semantics.c:7767 +#: c/c-parser.c:13267 cp/semantics.c:7795 #, gcc-internal-format msgid "%qD is not a pointer variable" msgstr "" -#: c/c-parser.c:13309 cp/parser.c:35911 +#: c/c-parser.c:13309 cp/parser.c:35964 #, gcc-internal-format msgid "collapse argument needs positive constant integer expression" msgstr "" -#: c/c-parser.c:13386 cp/parser.c:35975 +#: c/c-parser.c:13386 cp/parser.c:36028 #, gcc-internal-format msgid "expected %<none%> or %<present%>" msgstr "" -#: c/c-parser.c:13388 cp/parser.c:35977 +#: c/c-parser.c:13388 cp/parser.c:36030 #, gcc-internal-format msgid "expected %<none%> or %<shared%>" msgstr "" -#: c/c-parser.c:13508 cp/parser.c:36088 +#: c/c-parser.c:13508 cp/parser.c:36141 #, gcc-internal-format msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>" msgstr "" -#: c/c-parser.c:13528 c/c-parser.c:19737 c/c-parser.c:19823 cp/parser.c:36106 -#: cp/parser.c:41653 cp/parser.c:41743 +#: c/c-parser.c:13528 c/c-parser.c:19737 c/c-parser.c:19823 cp/parser.c:36159 +#: cp/parser.c:41706 cp/parser.c:41796 #, gcc-internal-format msgid "expected %<data%>" msgstr "" -#: c/c-parser.c:13581 cp/parser.c:36161 +#: c/c-parser.c:13581 cp/parser.c:36214 #, gcc-internal-format msgid "too many %<if%> clauses with %qs modifier" msgstr "" -#: c/c-parser.c:13588 cp/parser.c:36168 +#: c/c-parser.c:13588 cp/parser.c:36221 #, gcc-internal-format msgid "too many %<if%> clauses" msgstr "" -#: c/c-parser.c:13590 cp/parser.c:36170 +#: c/c-parser.c:13590 cp/parser.c:36223 #, gcc-internal-format msgid "too many %<if%> clauses without modifier" msgstr "" -#: c/c-parser.c:13596 cp/parser.c:36176 +#: c/c-parser.c:13596 cp/parser.c:36229 #, gcc-internal-format msgid "" "if any %<if%> clause has modifier, then all %<if%> clauses have to use " @@ -44984,111 +45011,111 @@ msgstr "" msgid "%<num_tasks%> value must be positive" msgstr "" -#: c/c-parser.c:13804 cp/semantics.c:7972 +#: c/c-parser.c:13804 cp/semantics.c:8000 #, gcc-internal-format msgid "%<grainsize%> value must be positive" msgstr "" -#: c/c-parser.c:13851 cp/semantics.c:8002 +#: c/c-parser.c:13851 cp/semantics.c:8030 #, gcc-internal-format msgid "%<priority%> value must be non-negative" msgstr "" -#: c/c-parser.c:13885 cp/parser.c:36368 +#: c/c-parser.c:13885 cp/parser.c:36421 #, gcc-internal-format msgid "expected constant integer expression with valid sync-hint value" msgstr "" -#: c/c-parser.c:13925 cp/parser.c:36410 +#: c/c-parser.c:13925 cp/parser.c:36463 #, gcc-internal-format msgid "" "expected %<alloc%>, %<to%>, %<from%>, %<tofrom%>, %<firstprivate%>, %<none%> " "or %<default%>" msgstr "" -#: c/c-parser.c:13986 cp/parser.c:36475 +#: c/c-parser.c:13986 cp/parser.c:36528 #, gcc-internal-format msgid "expected %<scalar%>, %<aggregate%> or %<pointer%>" msgstr "" -#: c/c-parser.c:14052 cp/parser.c:36544 +#: c/c-parser.c:14052 cp/parser.c:36597 #, gcc-internal-format msgid "too many %<defaultmap%> clauses with %qs category" msgstr "" -#: c/c-parser.c:14055 cp/parser.c:36547 +#: c/c-parser.c:14055 cp/parser.c:36600 #, gcc-internal-format msgid "too many %<defaultmap%> clauses with unspecified category" msgstr "" -#: c/c-parser.c:14129 cp/semantics.c:7009 +#: c/c-parser.c:14129 cp/semantics.c:7037 #, gcc-internal-format msgid "%qs expression must be integral" msgstr "" -#: c/c-parser.c:14141 c/c-parser.c:14264 cp/semantics.c:7041 +#: c/c-parser.c:14141 c/c-parser.c:14264 cp/semantics.c:7069 #, gcc-internal-format msgid "%qs value must be positive" msgstr "" -#: c/c-parser.c:14203 cp/parser.c:35683 +#: c/c-parser.c:14203 cp/parser.c:35736 #, gcc-internal-format msgid "too many %<static%> arguments" msgstr "" -#: c/c-parser.c:14237 cp/parser.c:35716 +#: c/c-parser.c:14237 cp/parser.c:35769 #, gcc-internal-format msgid "unexpected argument" msgstr "" -#: c/c-parser.c:14404 cp/semantics.c:8137 +#: c/c-parser.c:14404 cp/semantics.c:8165 #, gcc-internal-format msgid "%<tile%> argument needs positive integral constant" msgstr "" -#: c/c-parser.c:14462 c/c-parser.c:14468 cp/parser.c:36579 cp/parser.c:36589 +#: c/c-parser.c:14462 c/c-parser.c:14468 cp/parser.c:36632 cp/parser.c:36642 #, gcc-internal-format msgid "expected %<concurrent%>" msgstr "" -#: c/c-parser.c:14502 cp/parser.c:36627 +#: c/c-parser.c:14502 cp/parser.c:36680 #, gcc-internal-format msgid "expected %<teams%>, %<parallel%> or %<thread%>" msgstr "" -#: c/c-parser.c:14555 cp/parser.c:36695 +#: c/c-parser.c:14555 cp/parser.c:36748 #, gcc-internal-format msgid "ordered argument needs positive constant integer expression" msgstr "" -#: c/c-parser.c:14680 c/c-parser.c:20999 cp/parser.c:43612 +#: c/c-parser.c:14680 c/c-parser.c:20999 cp/parser.c:43665 #, gcc-internal-format msgid "" "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or " "identifier" msgstr "" -#: c/c-parser.c:14800 cp/parser.c:36953 +#: c/c-parser.c:14800 cp/parser.c:37006 #, gcc-internal-format msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified" msgstr "" -#: c/c-parser.c:14854 cp/parser.c:36969 +#: c/c-parser.c:14854 cp/parser.c:37022 #, gcc-internal-format msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter" msgstr "" -#: c/c-parser.c:14858 cp/parser.c:36972 +#: c/c-parser.c:14858 cp/parser.c:37025 #, gcc-internal-format msgid "schedule %<auto%> does not take a %<chunk_size%> parameter" msgstr "" -#: c/c-parser.c:14870 cp/semantics.c:7076 +#: c/c-parser.c:14870 cp/semantics.c:7104 #, gcc-internal-format msgid "chunk size value must be positive" msgstr "" -#: c/c-parser.c:14893 cp/parser.c:36992 +#: c/c-parser.c:14893 cp/parser.c:37045 #, gcc-internal-format msgid "invalid schedule kind" msgstr "" @@ -45098,19 +45125,19 @@ msgstr "" msgid "%<num_teams%> value must be positive" msgstr "" -#: c/c-parser.c:15059 cp/semantics.c:7172 +#: c/c-parser.c:15059 cp/semantics.c:7200 #, gcc-internal-format msgid "%<thread_limit%> value must be positive" msgstr "" -#: c/c-parser.c:15104 cp/semantics.c:7291 +#: c/c-parser.c:15104 cp/semantics.c:7319 #, gcc-internal-format msgid "" "%<aligned%> clause alignment expression must be positive constant integer " "expression" msgstr "" -#: c/c-parser.c:15149 cp/semantics.c:7389 +#: c/c-parser.c:15149 cp/semantics.c:7417 #, gcc-internal-format msgid "" "%<allocate%> clause allocator expression has type %qT rather than " @@ -45134,22 +45161,22 @@ msgid "" "%<simdlen%> clause expression must be positive constant integer expression" msgstr "" -#: c/c-parser.c:15580 cp/parser.c:37721 +#: c/c-parser.c:15580 cp/parser.c:37774 #, gcc-internal-format msgid "%<iterator%> modifier incompatible with %qs" msgstr "" -#: c/c-parser.c:15627 cp/parser.c:37769 cp/parser.c:37998 cp/parser.c:38048 +#: c/c-parser.c:15627 cp/parser.c:37822 cp/parser.c:38051 cp/parser.c:38101 #, gcc-internal-format msgid "invalid depend kind" msgstr "" -#: c/c-parser.c:15714 cp/parser.c:37844 +#: c/c-parser.c:15714 cp/parser.c:37897 #, gcc-internal-format msgid "invalid map kind" msgstr "" -#: c/c-parser.c:15812 cp/parser.c:37945 +#: c/c-parser.c:15812 cp/parser.c:37998 #, gcc-internal-format msgid "invalid dist_schedule kind" msgstr "" @@ -45164,85 +45191,85 @@ msgstr "" msgid "expected %<host%>, %<nohost%> or %<any%>" msgstr "" -#: c/c-parser.c:16009 cp/semantics.c:7547 +#: c/c-parser.c:16009 cp/semantics.c:7575 #, gcc-internal-format msgid "" "%<detach%> clause event handle has type %qT rather than %<omp_event_handle_t" "%>" msgstr "" -#: c/c-parser.c:16206 cp/parser.c:38282 +#: c/c-parser.c:16206 cp/parser.c:38335 #, gcc-internal-format msgid "expected %<#pragma acc%> clause" msgstr "" -#: c/c-parser.c:16217 c/c-parser.c:16549 cp/parser.c:38293 cp/parser.c:38664 +#: c/c-parser.c:16217 c/c-parser.c:16549 cp/parser.c:38346 cp/parser.c:38717 #, gcc-internal-format msgid "%qs is not valid for %qs" msgstr "" -#: c/c-parser.c:16261 cp/parser.c:38340 +#: c/c-parser.c:16261 cp/parser.c:38393 #, gcc-internal-format msgid "clauses in %<simd%> trait should be separated by %<,%>" msgstr "" -#: c/c-parser.c:16406 cp/parser.c:38518 +#: c/c-parser.c:16406 cp/parser.c:38571 #, gcc-internal-format msgid "%qs must be the first clause of %qs" msgstr "" -#: c/c-parser.c:16538 cp/parser.c:38653 +#: c/c-parser.c:16538 cp/parser.c:38706 #, gcc-internal-format msgid "expected %<#pragma omp%> clause" msgstr "" -#: c/c-parser.c:16671 cp/parser.c:42180 +#: c/c-parser.c:16671 cp/parser.c:42233 #, gcc-internal-format msgid "no valid clauses specified in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:16681 cp/parser.c:42190 +#: c/c-parser.c:16681 cp/parser.c:42243 #, gcc-internal-format msgid "array section in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:16701 cp/parser.c:42210 +#: c/c-parser.c:16701 cp/parser.c:42263 #, gcc-internal-format msgid "%qD must be a global variable in %<#pragma acc declare link%>" msgstr "" -#: c/c-parser.c:16712 cp/parser.c:42221 +#: c/c-parser.c:16712 cp/parser.c:42274 #, gcc-internal-format msgid "invalid OpenACC clause at file scope" msgstr "" -#: c/c-parser.c:16719 cp/parser.c:42228 +#: c/c-parser.c:16719 cp/parser.c:42281 #, gcc-internal-format msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:16727 cp/parser.c:42236 +#: c/c-parser.c:16727 cp/parser.c:42289 #, gcc-internal-format msgid "invalid use of %<global%> variable %qD in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:16738 cp/parser.c:42258 +#: c/c-parser.c:16738 cp/parser.c:42311 #, gcc-internal-format msgid "" "%qD must be a variable declared in the same scope as %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:16748 cp/parser.c:42268 +#: c/c-parser.c:16748 cp/parser.c:42321 #, gcc-internal-format msgid "variable %qD used more than once with %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:16841 cp/parser.c:42365 +#: c/c-parser.c:16841 cp/parser.c:42418 #, gcc-internal-format msgid "expected %<data%> after %<#pragma acc %s%>" msgstr "" -#: c/c-parser.c:16857 cp/parser.c:42382 +#: c/c-parser.c:16857 cp/parser.c:42435 #, gcc-internal-format msgid "%<#pragma acc %s data%> has no data movement clause" msgstr "" @@ -45257,7 +45284,7 @@ msgstr "" msgid "expected function name" msgstr "" -#: c/c-parser.c:17128 cp/parser.c:44205 +#: c/c-parser.c:17128 cp/parser.c:44258 #, gcc-internal-format msgid "%qD does not refer to a function" msgstr "" @@ -45269,31 +45296,31 @@ msgid "" "definition" msgstr "" -#: c/c-parser.c:17191 cp/parser.c:44256 cp/parser.c:44301 +#: c/c-parser.c:17191 cp/parser.c:44309 cp/parser.c:44354 #, gcc-internal-format msgid "" "%<#pragma acc routine%> not immediately followed by a single function " "declaration or definition" msgstr "" -#: c/c-parser.c:17222 cp/parser.c:44330 +#: c/c-parser.c:17222 cp/parser.c:44383 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before use" msgstr "" -#: c/c-parser.c:17223 cp/parser.c:44332 +#: c/c-parser.c:17223 cp/parser.c:44385 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before definition" msgstr "" -#: c/c-parser.c:17267 cp/parser.c:42583 +#: c/c-parser.c:17267 cp/parser.c:42636 #, gcc-internal-format msgid "" "%<#pragma acc update%> must contain at least one %<device%> or %<host%> or " "%<self%> clause" msgstr "" -#: c/c-parser.c:17322 cp/parser.c:38743 +#: c/c-parser.c:17322 cp/parser.c:38796 #, gcc-internal-format msgid "expected %<allocator%>" msgstr "" @@ -45305,91 +45332,91 @@ msgid "" "%<omp_allocator_handle_t%>" msgstr "" -#: c/c-parser.c:17353 cp/parser.c:38758 +#: c/c-parser.c:17353 cp/parser.c:38811 #, gcc-internal-format msgid "%<#pragma omp allocate%> not yet supported" msgstr "" -#: c/c-parser.c:17452 cp/parser.c:38851 +#: c/c-parser.c:17452 cp/parser.c:38904 #, gcc-internal-format msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause" msgstr "" -#: c/c-parser.c:17474 cp/parser.c:38873 +#: c/c-parser.c:17474 cp/parser.c:38926 #, gcc-internal-format msgid "" "expected %<read%>, %<write%>, %<update%>, %<capture%>, %<seq_cst%>, %<acq_rel" "%>, %<release%>, %<relaxed%> or %<hint%> clause" msgstr "" -#: c/c-parser.c:17488 cp/parser.c:38887 +#: c/c-parser.c:17488 cp/parser.c:38940 #, gcc-internal-format msgid "too many atomic clauses" msgstr "" -#: c/c-parser.c:17495 cp/parser.c:38894 +#: c/c-parser.c:17495 cp/parser.c:38947 #, gcc-internal-format msgid "too many memory order clauses" msgstr "" -#: c/c-parser.c:17552 cp/parser.c:38951 +#: c/c-parser.c:17552 cp/parser.c:39004 #, gcc-internal-format msgid "" "%<#pragma omp atomic read%> incompatible with %<acq_rel%> or %<release%> " "clauses" msgstr "" -#: c/c-parser.c:17561 cp/parser.c:38960 +#: c/c-parser.c:17561 cp/parser.c:39013 #, gcc-internal-format msgid "" "%<#pragma omp atomic write%> incompatible with %<acq_rel%> or %<acquire%> " "clauses" msgstr "" -#: c/c-parser.c:17571 cp/parser.c:38969 +#: c/c-parser.c:17571 cp/parser.c:39022 #, gcc-internal-format msgid "" "%<#pragma omp atomic update%> incompatible with %<acq_rel%> or %<acquire%> " "clauses" msgstr "" -#: c/c-parser.c:17837 cp/parser.c:39174 cp/parser.c:39200 +#: c/c-parser.c:17837 cp/parser.c:39227 cp/parser.c:39253 #, gcc-internal-format msgid "invalid form of %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.c:17841 cp/parser.c:39231 cp/parser.c:39247 +#: c/c-parser.c:17841 cp/parser.c:39284 cp/parser.c:39300 #, gcc-internal-format msgid "invalid operator for %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.c:17890 cp/semantics.c:9721 cp/semantics.c:9731 +#: c/c-parser.c:17890 cp/semantics.c:9749 cp/semantics.c:9759 #, gcc-internal-format msgid "" "%<#pragma omp atomic capture%> uses two different expressions for memory" msgstr "" -#: c/c-parser.c:17990 cp/semantics.c:9796 +#: c/c-parser.c:17990 cp/semantics.c:9824 #, gcc-internal-format msgid "%<depobj%> expression is not lvalue expression" msgstr "" -#: c/c-parser.c:18047 cp/parser.c:39431 +#: c/c-parser.c:18047 cp/parser.c:39484 #, gcc-internal-format msgid "expected %<in%>, %<out%>, %<inout%> or %<mutexinoutset%>" msgstr "" -#: c/c-parser.c:18059 cp/parser.c:39447 +#: c/c-parser.c:18059 cp/parser.c:39500 #, gcc-internal-format msgid "expected %<depend%>, %<destroy%> or %<update%> clause" msgstr "" -#: c/c-parser.c:18095 cp/parser.c:39480 +#: c/c-parser.c:18095 cp/parser.c:39533 #, gcc-internal-format msgid "expected %<acq_rel%>, %<release%> or %<acquire%>" msgstr "" -#: c/c-parser.c:18102 cp/parser.c:39487 +#: c/c-parser.c:18102 cp/parser.c:39540 #, gcc-internal-format msgid "%<flush%> list specified together with memory order clause" msgstr "" @@ -45399,34 +45426,34 @@ msgstr "" msgid "expected %<(%> or end of line" msgstr "" -#: c/c-parser.c:18161 cp/parser.c:40092 +#: c/c-parser.c:18161 cp/parser.c:40145 #, gcc-internal-format msgid "expected %<inclusive%> or %<exclusive%> clause" msgstr "" -#: c/c-parser.c:18166 cp/parser.c:40098 +#: c/c-parser.c:18166 cp/parser.c:40151 #, gcc-internal-format msgid "expected %<#pragma omp scan%>" msgstr "" -#: c/c-parser.c:18222 cp/parser.c:40149 +#: c/c-parser.c:18222 cp/parser.c:40202 #, gcc-internal-format msgid "%<ordered%> clause parameter is less than %<collapse%>" msgstr "" -#: c/c-parser.c:18233 cp/parser.c:40160 +#: c/c-parser.c:18233 cp/parser.c:40213 #, gcc-internal-format msgid "" "%<linear%> clause may not be specified together with %<ordered%> clause with " "a parameter" msgstr "" -#: c/c-parser.c:18251 cp/parser.c:40188 +#: c/c-parser.c:18251 cp/parser.c:40241 #, gcc-internal-format msgid "for statement expected" msgstr "" -#: c/c-parser.c:18330 cp/semantics.c:9306 cp/semantics.c:9397 +#: c/c-parser.c:18330 cp/semantics.c:9334 cp/semantics.c:9425 #, gcc-internal-format msgid "expected iteration declaration or initialization" msgstr "" @@ -45436,86 +45463,86 @@ msgstr "" msgid "not enough perfectly nested loops" msgstr "" -#: c/c-parser.c:18464 cp/parser.c:40502 +#: c/c-parser.c:18464 cp/parser.c:40555 #, gcc-internal-format msgid "collapsed loops not perfectly nested" msgstr "" -#: c/c-parser.c:18547 cp/parser.c:40298 cp/parser.c:40340 cp/pt.c:17886 +#: c/c-parser.c:18547 cp/parser.c:40351 cp/parser.c:40393 cp/pt.c:17975 #, gcc-internal-format msgid "iteration variable %qD should not be firstprivate" msgstr "" -#: c/c-parser.c:18681 cp/parser.c:40621 +#: c/c-parser.c:18681 cp/parser.c:40674 #, gcc-internal-format msgid "%<ordered%> clause with parameter may not be specified on %qs construct" msgstr "" -#: c/c-parser.c:18895 cp/parser.c:40839 +#: c/c-parser.c:18895 cp/parser.c:40892 #, gcc-internal-format msgid "" "%<#pragma omp ordered%> with %<depend%> clause may only be used in compound " "statements" msgstr "" -#: c/c-parser.c:19105 cp/parser.c:41040 +#: c/c-parser.c:19105 cp/parser.c:41093 #, gcc-internal-format msgid "expected %<for%> after %qs" msgstr "" -#: c/c-parser.c:19381 cp/parser.c:41318 +#: c/c-parser.c:19381 cp/parser.c:41371 #, gcc-internal-format msgid "expected %<point%>" msgstr "" -#: c/c-parser.c:19634 cp/parser.c:41591 +#: c/c-parser.c:19634 cp/parser.c:41644 #, gcc-internal-format msgid "" "%<#pragma omp target data%> with map-type other than %<to%>, %<from%>, " "%<tofrom%> or %<alloc%> on %<map%> clause" msgstr "" -#: c/c-parser.c:19650 cp/parser.c:41607 +#: c/c-parser.c:19650 cp/parser.c:41660 #, gcc-internal-format msgid "" "%<#pragma omp target data%> must contain at least one %<map%>, " "%<use_device_ptr%> or %<use_device_addr%> clause" msgstr "" -#: c/c-parser.c:19698 cp/parser.c:41837 +#: c/c-parser.c:19698 cp/parser.c:41890 #, gcc-internal-format msgid "" "%<#pragma omp target update%> must contain at least one %<from%> or %<to%> " "clauses" msgstr "" -#: c/c-parser.c:19772 cp/parser.c:41690 +#: c/c-parser.c:19772 cp/parser.c:41743 #, gcc-internal-format msgid "" "%<#pragma omp target enter data%> with map-type other than %<to%> or %<alloc" "%> on %<map%> clause" msgstr "" -#: c/c-parser.c:19784 cp/parser.c:41702 +#: c/c-parser.c:19784 cp/parser.c:41755 #, gcc-internal-format msgid "" "%<#pragma omp target enter data%> must contain at least one %<map%> clause" msgstr "" -#: c/c-parser.c:19859 cp/parser.c:41781 +#: c/c-parser.c:19859 cp/parser.c:41834 #, gcc-internal-format msgid "" "%<#pragma omp target exit data%> with map-type other than %<from%>, %<release" "%> or %<delete%> on %<map%> clause" msgstr "" -#: c/c-parser.c:19872 cp/parser.c:41794 +#: c/c-parser.c:19872 cp/parser.c:41847 #, gcc-internal-format msgid "" "%<#pragma omp target exit data%> must contain at least one %<map%> clause" msgstr "" -#: c/c-parser.c:20095 cp/parser.c:42055 +#: c/c-parser.c:20095 cp/parser.c:42108 #, gcc-internal-format msgid "" "%<#pragma omp target%> with map-type other than %<to%>, %<from%>, %<tofrom%> " @@ -45536,58 +45563,58 @@ msgid "" "definition" msgstr "" -#: c/c-parser.c:20270 cp/parser.c:42731 +#: c/c-parser.c:20270 cp/parser.c:42784 #, gcc-internal-format msgid "expected trait selector name" msgstr "" -#: c/c-parser.c:20323 cp/parser.c:42783 +#: c/c-parser.c:20323 cp/parser.c:42836 #, gcc-internal-format msgid "selector %qs not allowed for context selector set %qs" msgstr "" -#: c/c-parser.c:20348 cp/parser.c:42807 +#: c/c-parser.c:20348 cp/parser.c:42860 #, gcc-internal-format msgid "selector %qs does not accept any properties" msgstr "" -#: c/c-parser.c:20375 cp/parser.c:42846 cp/pt.c:11516 +#: c/c-parser.c:20375 cp/parser.c:42899 cp/pt.c:11545 #, gcc-internal-format msgid "score argument must be constant integer expression" msgstr "" -#: c/c-parser.c:20378 cp/parser.c:42849 cp/pt.c:11533 +#: c/c-parser.c:20378 cp/parser.c:42902 cp/pt.c:11562 #, gcc-internal-format msgid "score argument must be non-negative" msgstr "" -#: c/c-parser.c:20402 cp/parser.c:42877 cp/pt.c:11519 +#: c/c-parser.c:20402 cp/parser.c:42930 cp/pt.c:11548 #, gcc-internal-format msgid "property must be constant integer expression or string literal" msgstr "" -#: c/c-parser.c:20447 cp/parser.c:42921 +#: c/c-parser.c:20447 cp/parser.c:42974 #, gcc-internal-format msgid "expected identifier or string literal" msgstr "" -#: c/c-parser.c:20469 cp/parser.c:42943 cp/pt.c:11523 +#: c/c-parser.c:20469 cp/parser.c:42996 cp/pt.c:11552 #, gcc-internal-format msgid "property must be constant integer expression" msgstr "" -#: c/c-parser.c:20480 cp/parser.c:42954 +#: c/c-parser.c:20480 cp/parser.c:43007 #, gcc-internal-format msgid "" "properties for %<simd%> selector may not be specified in %<metadirective%>" msgstr "" -#: c/c-parser.c:20567 cp/parser.c:43040 +#: c/c-parser.c:20567 cp/parser.c:43093 #, gcc-internal-format msgid "expected %<construct%>, %<device%>, %<implementation%> or %<user%>" msgstr "" -#: c/c-parser.c:20642 cp/parser.c:43148 +#: c/c-parser.c:20642 cp/parser.c:43201 #, gcc-internal-format msgid "expected %<match%>" msgstr "" @@ -45597,12 +45624,12 @@ msgstr "" msgid "variant %qD is not a function" msgstr "" -#: c/c-parser.c:20668 cp/decl.c:7567 +#: c/c-parser.c:20668 cp/decl.c:7563 #, gcc-internal-format msgid "variant %qD and base %qD have incompatible types" msgstr "" -#: c/c-parser.c:20680 cp/decl.c:7576 +#: c/c-parser.c:20680 cp/decl.c:7572 #, gcc-internal-format msgid "variant %qD is a built-in" msgstr "" @@ -45614,34 +45641,34 @@ msgid "" "declaration or definition" msgstr "" -#: c/c-parser.c:20731 cp/parser.c:43193 +#: c/c-parser.c:20731 cp/parser.c:43246 #, gcc-internal-format msgid "" "%<#pragma omp declare %s%> not immediately followed by a single function " "declaration or definition" msgstr "" -#: c/c-parser.c:20840 cp/parser.c:43298 +#: c/c-parser.c:20840 cp/parser.c:43351 #, gcc-internal-format msgid "%qD specified both in declare target %<link%> and %<to%> clauses" msgstr "" -#: c/c-parser.c:20889 cp/parser.c:43347 +#: c/c-parser.c:20889 cp/parser.c:43400 #, gcc-internal-format msgid "directive with only %<device_type%> clauses ignored" msgstr "" -#: c/c-parser.c:20908 cp/parser.c:43372 +#: c/c-parser.c:20908 cp/parser.c:43425 #, gcc-internal-format msgid "expected %<target%>" msgstr "" -#: c/c-parser.c:20915 cp/parser.c:43379 +#: c/c-parser.c:20915 cp/parser.c:43432 #, gcc-internal-format msgid "expected %<declare%>" msgstr "" -#: c/c-parser.c:20921 cp/parser.c:43386 +#: c/c-parser.c:20921 cp/parser.c:43439 #, gcc-internal-format msgid "" "%<#pragma omp end declare target%> without corresponding %<#pragma omp " @@ -45700,49 +45727,49 @@ msgstr "" msgid "one of the initializer call arguments should be %<&omp_priv%>" msgstr "" -#: c/c-parser.c:21331 cp/parser.c:43854 +#: c/c-parser.c:21331 cp/parser.c:43907 #, gcc-internal-format msgid "expected %<simd%>, %<reduction%>, %<target%> or %<variant%>" msgstr "" -#: c/c-parser.c:21395 cp/parser.c:43917 +#: c/c-parser.c:21395 cp/parser.c:43970 #, gcc-internal-format msgid "expected %<seq_cst%>, %<relaxed%> or %<acq_rel%>" msgstr "" -#: c/c-parser.c:21415 cp/parser.c:43943 +#: c/c-parser.c:21415 cp/parser.c:43996 #, gcc-internal-format msgid "" "expected %<unified_address%>, %<unified_shared_memory%>, %<dynamic_allocators" "%>, %<reverse_offload%> or %<atomic_default_mem_order%> clause" msgstr "" -#: c/c-parser.c:21424 cp/parser.c:43952 +#: c/c-parser.c:21424 cp/parser.c:44005 #, gcc-internal-format msgid "%qs clause on %<requires%> directive not supported yet" msgstr "" -#: c/c-parser.c:21436 cp/parser.c:43964 +#: c/c-parser.c:21436 cp/parser.c:44017 #, gcc-internal-format msgid "" "%qs clause used lexically after first target construct or offloading API" msgstr "" -#: c/c-parser.c:21448 cp/parser.c:43976 +#: c/c-parser.c:21448 cp/parser.c:44029 #, gcc-internal-format msgid "" "more than one %<atomic_default_mem_order%> clause in a single compilation " "unit" msgstr "" -#: c/c-parser.c:21457 cp/parser.c:43985 +#: c/c-parser.c:21457 cp/parser.c:44038 #, gcc-internal-format msgid "" "%<atomic_default_mem_order%> clause used lexically after first %<atomic%> " "construct without memory order clause" msgstr "" -#: c/c-parser.c:21471 cp/parser.c:43999 +#: c/c-parser.c:21471 cp/parser.c:44052 #, gcc-internal-format msgid "%<pragma omp requires%> requires at least one clause" msgstr "" @@ -45757,27 +45784,27 @@ msgstr "" msgid "variable sized type %qT in %<reduction%> clause" msgstr "" -#: c/c-parser.c:21736 cp/semantics.c:8745 +#: c/c-parser.c:21736 cp/semantics.c:8773 #, gcc-internal-format msgid "%qE declared %<threadprivate%> after first use" msgstr "" -#: c/c-parser.c:21738 cp/semantics.c:8747 +#: c/c-parser.c:21738 cp/semantics.c:8775 #, gcc-internal-format msgid "automatic variable %qE cannot be %<threadprivate%>" msgstr "" -#: c/c-parser.c:21742 cp/semantics.c:8749 +#: c/c-parser.c:21742 cp/semantics.c:8777 #, gcc-internal-format msgid "%<threadprivate%> %qE has incomplete type" msgstr "" -#: c/c-parser.c:21921 cp/parser.c:44732 +#: c/c-parser.c:21921 cp/parser.c:44785 #, gcc-internal-format msgid "%<__transaction_cancel%> without transactional memory support enabled" msgstr "" -#: c/c-parser.c:21927 cp/parser.c:44738 +#: c/c-parser.c:21927 cp/parser.c:44791 #, gcc-internal-format msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>" msgstr "" @@ -45789,7 +45816,7 @@ msgid "" "a %<transaction_may_cancel_outer%> function" msgstr "" -#: c/c-parser.c:21944 cp/parser.c:44756 +#: c/c-parser.c:21944 cp/parser.c:44809 #, gcc-internal-format msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>" msgstr "" @@ -45804,7 +45831,7 @@ msgstr "" msgid "%qD has an incomplete type %qT" msgstr "" -#: c/c-typeck.c:241 c/c-typeck.c:10615 c/c-typeck.c:10657 cp/call.c:4552 +#: c/c-typeck.c:241 c/c-typeck.c:10675 c/c-typeck.c:10717 cp/call.c:4555 #, gcc-internal-format msgid "invalid use of void expression" msgstr "" @@ -45847,127 +45874,127 @@ msgstr "" msgid "function types not truly compatible in ISO C" msgstr "" -#: c/c-typeck.c:770 +#: c/c-typeck.c:776 #, gcc-internal-format msgid "cannot mix operands of decimal floating and vector types" msgstr "" -#: c/c-typeck.c:775 +#: c/c-typeck.c:781 #, gcc-internal-format msgid "cannot mix operands of decimal floating and complex types" msgstr "" -#: c/c-typeck.c:780 +#: c/c-typeck.c:786 #, gcc-internal-format msgid "cannot mix operands of decimal floating and other floating types" msgstr "" -#: c/c-typeck.c:1325 +#: c/c-typeck.c:1331 #, gcc-internal-format msgid "pointers to arrays with different qualifiers are incompatible in ISO C" msgstr "" -#: c/c-typeck.c:1329 +#: c/c-typeck.c:1335 #, gcc-internal-format msgid "types are not quite compatible" msgstr "" -#: c/c-typeck.c:1333 +#: c/c-typeck.c:1339 #, gcc-internal-format msgid "pointer target types incompatible in C++" msgstr "" -#: c/c-typeck.c:1666 +#: c/c-typeck.c:1672 #, gcc-internal-format msgid "function return types not compatible due to %<volatile%>" msgstr "" -#: c/c-typeck.c:1924 +#: c/c-typeck.c:1930 #, gcc-internal-format msgid "converting an array compound literal to a pointer is ill-formed in C++" msgstr "" -#: c/c-typeck.c:2457 c/c-typeck.c:9170 +#: c/c-typeck.c:2507 c/c-typeck.c:9230 #, gcc-internal-format msgid "%qT has no member named %qE; did you mean %qE?" msgstr "" -#: c/c-typeck.c:2461 c/c-typeck.c:9174 +#: c/c-typeck.c:2511 c/c-typeck.c:9234 #, gcc-internal-format msgid "%qT has no member named %qE" msgstr "" -#: c/c-typeck.c:2470 +#: c/c-typeck.c:2520 #, gcc-internal-format msgid "accessing a member %qE of an atomic structure %qE" msgstr "" -#: c/c-typeck.c:2473 +#: c/c-typeck.c:2523 #, gcc-internal-format msgid "accessing a member %qE of an atomic union %qE" msgstr "" -#: c/c-typeck.c:2533 +#: c/c-typeck.c:2583 #, gcc-internal-format msgid "%qE is a pointer; did you mean to use %<->%>?" msgstr "" -#: c/c-typeck.c:2539 +#: c/c-typeck.c:2589 #, gcc-internal-format msgid "request for member %qE in something not a structure or union" msgstr "" -#: c/c-typeck.c:2587 +#: c/c-typeck.c:2637 #, gcc-internal-format msgid "dereferencing %<void *%> pointer" msgstr "" -#: c/c-typeck.c:2642 +#: c/c-typeck.c:2692 #, gcc-internal-format msgid "subscripted value is neither array nor pointer nor vector" msgstr "" -#: c/c-typeck.c:2652 cp/typeck.c:3588 cp/typeck.c:3681 +#: c/c-typeck.c:2702 cp/typeck.c:3599 cp/typeck.c:3692 #, gcc-internal-format msgid "array subscript is not an integer" msgstr "" -#: c/c-typeck.c:2658 +#: c/c-typeck.c:2708 #, gcc-internal-format msgid "subscripted value is pointer to function" msgstr "" -#: c/c-typeck.c:2712 +#: c/c-typeck.c:2762 #, gcc-internal-format msgid "ISO C forbids subscripting %<register%> array" msgstr "" -#: c/c-typeck.c:2715 +#: c/c-typeck.c:2765 #, gcc-internal-format msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "" -#: c/c-typeck.c:2829 +#: c/c-typeck.c:2879 #, gcc-internal-format msgid "enum constant defined here" msgstr "" -#: c/c-typeck.c:2936 cp/typeck.c:1801 +#: c/c-typeck.c:2986 cp/typeck.c:1812 #, gcc-internal-format msgid "%<sizeof%> on array function parameter %qE will return size of %qT" msgstr "" -#: c/c-typeck.c:3089 +#: c/c-typeck.c:3139 #, gcc-internal-format msgid "called object %qE is not a function or function pointer" msgstr "" -#: c/c-typeck.c:3094 +#: c/c-typeck.c:3144 #, gcc-internal-format msgid "called object %qD is not a function or function pointer" msgstr "" -#: c/c-typeck.c:3100 +#: c/c-typeck.c:3150 #, gcc-internal-format msgid "called object is not a function or function pointer" msgstr "" @@ -45975,1665 +46002,1665 @@ msgstr "" #. This situation leads to run-time undefined behavior. We can't, #. therefore, simply error unless we can prove that all possible #. executions of the program must execute the code. -#: c/c-typeck.c:3130 +#: c/c-typeck.c:3180 #, gcc-internal-format msgid "function called through a non-compatible type" msgstr "" -#: c/c-typeck.c:3135 c/c-typeck.c:3187 +#: c/c-typeck.c:3185 c/c-typeck.c:3237 #, gcc-internal-format msgid "function with qualified void return type called" msgstr "" -#: c/c-typeck.c:3242 +#: c/c-typeck.c:3292 #, gcc-internal-format, gfc-internal-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c/c-typeck.c:3256 +#: c/c-typeck.c:3306 #, gcc-internal-format msgid "" "passing argument %d of %qE as integer rather than floating due to prototype" msgstr "" -#: c/c-typeck.c:3262 +#: c/c-typeck.c:3312 #, gcc-internal-format msgid "" "passing argument %d of %qE as integer rather than complex due to prototype" msgstr "" -#: c/c-typeck.c:3268 +#: c/c-typeck.c:3318 #, gcc-internal-format msgid "" "passing argument %d of %qE as complex rather than floating due to prototype" msgstr "" -#: c/c-typeck.c:3274 +#: c/c-typeck.c:3324 #, gcc-internal-format msgid "" "passing argument %d of %qE as floating rather than integer due to prototype" msgstr "" -#: c/c-typeck.c:3280 +#: c/c-typeck.c:3330 #, gcc-internal-format msgid "" "passing argument %d of %qE as complex rather than integer due to prototype" msgstr "" -#: c/c-typeck.c:3286 +#: c/c-typeck.c:3336 #, gcc-internal-format msgid "" "passing argument %d of %qE as floating rather than complex due to prototype" msgstr "" -#: c/c-typeck.c:3300 +#: c/c-typeck.c:3350 #, gcc-internal-format msgid "" "passing argument %d of %qE as %<float%> rather than %<double%> due to " "prototype" msgstr "" -#: c/c-typeck.c:3326 +#: c/c-typeck.c:3376 #, gcc-internal-format msgid "passing argument %d of %qE as %qT rather than %qT due to prototype" msgstr "" -#: c/c-typeck.c:3351 +#: c/c-typeck.c:3401 #, gcc-internal-format msgid "passing argument %d of %qE with different width due to prototype" msgstr "" -#: c/c-typeck.c:3375 +#: c/c-typeck.c:3425 #, gcc-internal-format msgid "passing argument %d of %qE as unsigned due to prototype" msgstr "" -#: c/c-typeck.c:3380 +#: c/c-typeck.c:3430 #, gcc-internal-format msgid "passing argument %d of %qE as signed due to prototype" msgstr "" -#: c/c-typeck.c:3533 +#: c/c-typeck.c:3583 #, gcc-internal-format msgid "too many arguments to method %qE" msgstr "" -#: c/c-typeck.c:3543 +#: c/c-typeck.c:3593 #, gcc-internal-format msgid "too many arguments to built-in function %qE expecting %d" msgstr "" -#: c/c-typeck.c:3615 +#: c/c-typeck.c:3665 #, gcc-internal-format msgid "implicit conversion from %qT to %qT when passing argument to function" msgstr "" -#: c/c-typeck.c:3683 +#: c/c-typeck.c:3733 #, gcc-internal-format msgid "too few arguments to built-in function %qE expecting %u" msgstr "" -#: c/c-typeck.c:3858 c/c-typeck.c:3886 cp/typeck.c:5119 cp/typeck.c:5388 +#: c/c-typeck.c:3908 c/c-typeck.c:3936 cp/typeck.c:5130 cp/typeck.c:5399 #, gcc-internal-format msgid "comparison with string literal results in unspecified behavior" msgstr "" -#: c/c-typeck.c:3866 c/c-typeck.c:3877 cp/typeck.c:5146 cp/typeck.c:5170 +#: c/c-typeck.c:3916 c/c-typeck.c:3927 cp/typeck.c:5157 cp/typeck.c:5181 #, gcc-internal-format msgid "comparison between pointer and zero character constant" msgstr "" -#: c/c-typeck.c:3869 c/c-typeck.c:3880 cp/typeck.c:5149 cp/typeck.c:5173 +#: c/c-typeck.c:3919 c/c-typeck.c:3930 cp/typeck.c:5160 cp/typeck.c:5184 #, gcc-internal-format msgid "did you mean to dereference the pointer?" msgstr "" -#: c/c-typeck.c:3900 +#: c/c-typeck.c:3950 #, gcc-internal-format msgid "comparison between %qT and %qT" msgstr "" -#: c/c-typeck.c:3951 +#: c/c-typeck.c:4001 #, gcc-internal-format msgid "pointer of type %<void *%> used in subtraction" msgstr "" -#: c/c-typeck.c:3954 +#: c/c-typeck.c:4004 #, gcc-internal-format msgid "pointer to a function used in subtraction" msgstr "" -#: c/c-typeck.c:3988 +#: c/c-typeck.c:4038 #, gcc-internal-format msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c/c-typeck.c:3997 cp/typeck.c:6086 +#: c/c-typeck.c:4047 cp/typeck.c:6097 #, gcc-internal-format msgid "arithmetic on pointer to an empty aggregate" msgstr "" -#: c/c-typeck.c:4430 +#: c/c-typeck.c:4490 #, gcc-internal-format msgid "%<~%> on a boolean expression" msgstr "" -#: c/c-typeck.c:4434 +#: c/c-typeck.c:4494 #, gcc-internal-format msgid "did you mean to use logical not?" msgstr "" -#: c/c-typeck.c:4444 +#: c/c-typeck.c:4504 #, gcc-internal-format msgid "ISO C does not support %<~%> for complex conjugation" msgstr "" -#: c/c-typeck.c:4468 +#: c/c-typeck.c:4528 #, gcc-internal-format msgid "wrong type argument to absu" msgstr "" -#: c/c-typeck.c:4493 +#: c/c-typeck.c:4553 #, gcc-internal-format msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c/c-typeck.c:4551 +#: c/c-typeck.c:4611 #, gcc-internal-format msgid "increment of enumeration value is invalid in C++" msgstr "" -#: c/c-typeck.c:4554 +#: c/c-typeck.c:4614 #, gcc-internal-format msgid "decrement of enumeration value is invalid in C++" msgstr "" -#: c/c-typeck.c:4561 +#: c/c-typeck.c:4621 #, gcc-internal-format msgid "increment of a boolean expression" msgstr "" -#: c/c-typeck.c:4564 +#: c/c-typeck.c:4624 #, gcc-internal-format msgid "decrement of a boolean expression" msgstr "" -#: c/c-typeck.c:4580 +#: c/c-typeck.c:4640 #, gcc-internal-format msgid "ISO C does not support %<++%> and %<--%> on complex types" msgstr "" -#: c/c-typeck.c:4606 c/c-typeck.c:4640 +#: c/c-typeck.c:4666 c/c-typeck.c:4700 #, gcc-internal-format msgid "wrong type argument to increment" msgstr "" -#: c/c-typeck.c:4608 c/c-typeck.c:4643 +#: c/c-typeck.c:4668 c/c-typeck.c:4703 #, gcc-internal-format msgid "wrong type argument to decrement" msgstr "" -#: c/c-typeck.c:4628 +#: c/c-typeck.c:4688 #, gcc-internal-format msgid "increment of pointer to an incomplete type %qT" msgstr "" -#: c/c-typeck.c:4632 +#: c/c-typeck.c:4692 #, gcc-internal-format msgid "decrement of pointer to an incomplete type %qT" msgstr "" -#: c/c-typeck.c:4739 +#: c/c-typeck.c:4799 #, gcc-internal-format msgid "taking address of expression of type %<void%>" msgstr "" -#: c/c-typeck.c:4798 +#: c/c-typeck.c:4858 #, gcc-internal-format msgid "cannot take address of bit-field %qD" msgstr "" -#: c/c-typeck.c:4811 +#: c/c-typeck.c:4871 #, gcc-internal-format msgid "cannot take address of scalar with reverse storage order" msgstr "" -#: c/c-typeck.c:4819 +#: c/c-typeck.c:4879 #, gcc-internal-format msgid "address of array with reverse scalar storage order requested" msgstr "" -#: c/c-typeck.c:5004 +#: c/c-typeck.c:5064 #, gcc-internal-format msgid "global register variable %qD used in nested function" msgstr "" -#: c/c-typeck.c:5007 +#: c/c-typeck.c:5067 #, gcc-internal-format msgid "register variable %qD used in nested function" msgstr "" -#: c/c-typeck.c:5012 +#: c/c-typeck.c:5072 #, gcc-internal-format msgid "address of global register variable %qD requested" msgstr "" -#: c/c-typeck.c:5014 +#: c/c-typeck.c:5074 #, gcc-internal-format msgid "address of register variable %qD requested" msgstr "" -#: c/c-typeck.c:5153 +#: c/c-typeck.c:5213 #, gcc-internal-format msgid "non-lvalue array in conditional expression" msgstr "" -#: c/c-typeck.c:5235 +#: c/c-typeck.c:5295 #, gcc-internal-format msgid "" "implicit conversion from %qT to %qT to match other result of conditional" msgstr "" -#: c/c-typeck.c:5294 c/c-typeck.c:5300 +#: c/c-typeck.c:5354 c/c-typeck.c:5360 #, gcc-internal-format msgid "" "operand of %<?:%> changes signedness from %qT to %qT due to unsignedness of " "other operand" msgstr "" -#: c/c-typeck.c:5317 +#: c/c-typeck.c:5377 #, gcc-internal-format msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c/c-typeck.c:5334 +#: c/c-typeck.c:5394 #, gcc-internal-format msgid "pointers to disjoint address spaces used in conditional expression" msgstr "" -#: c/c-typeck.c:5345 c/c-typeck.c:5362 +#: c/c-typeck.c:5405 c/c-typeck.c:5422 #, gcc-internal-format msgid "pointer to array loses qualifier in conditional expression" msgstr "" -#: c/c-typeck.c:5350 c/c-typeck.c:5367 +#: c/c-typeck.c:5410 c/c-typeck.c:5427 #, gcc-internal-format msgid "ISO C forbids conditional expr between %<void *%> and function pointer" msgstr "" -#: c/c-typeck.c:5380 +#: c/c-typeck.c:5440 #, gcc-internal-format msgid "" "pointer type mismatch between %qT and %qT of %qD and %qD in conditional " "expression" msgstr "" -#: c/c-typeck.c:5385 +#: c/c-typeck.c:5445 #, gcc-internal-format msgid "pointer type mismatch in conditional expression" msgstr "" -#: c/c-typeck.c:5394 c/c-typeck.c:5405 +#: c/c-typeck.c:5454 c/c-typeck.c:5465 #, gcc-internal-format msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c/c-typeck.c:5419 +#: c/c-typeck.c:5479 #, gcc-internal-format msgid "type mismatch in conditional expression" msgstr "" -#: c/c-typeck.c:5534 +#: c/c-typeck.c:5594 #, gcc-internal-format msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>: %E" msgstr "" -#: c/c-typeck.c:5538 +#: c/c-typeck.c:5598 #, gcc-internal-format msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>" msgstr "" -#: c/c-typeck.c:5556 +#: c/c-typeck.c:5616 #, gcc-internal-format msgid "" "ignoring return value of type %qT, declared with attribute %<nodiscard%>: %E" msgstr "" -#: c/c-typeck.c:5561 +#: c/c-typeck.c:5621 #, gcc-internal-format msgid "" "ignoring return value of type %qT, declared with attribute %<nodiscard%>" msgstr "" -#: c/c-typeck.c:5570 cp/cvt.c:1098 +#: c/c-typeck.c:5630 cp/cvt.c:1098 #, gcc-internal-format msgid "in call to %qD, declared here" msgstr "" -#: c/c-typeck.c:5619 +#: c/c-typeck.c:5679 #, gcc-internal-format msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c/c-typeck.c:5637 c/c-typeck.c:11178 +#: c/c-typeck.c:5697 c/c-typeck.c:11238 #, gcc-internal-format msgid "right-hand operand of comma expression has no effect" msgstr "" -#: c/c-typeck.c:5708 +#: c/c-typeck.c:5768 msgid "cast adds %q#v qualifier to function type" msgstr "" -#: c/c-typeck.c:5714 +#: c/c-typeck.c:5774 msgid "cast discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.c:5749 +#: c/c-typeck.c:5809 #, gcc-internal-format msgid "" "to be safe all intermediate pointers in cast from %qT to %qT must be %<const" "%> qualified" msgstr "" -#: c/c-typeck.c:5843 +#: c/c-typeck.c:5903 #, gcc-internal-format msgid "cast specifies array type" msgstr "" -#: c/c-typeck.c:5849 +#: c/c-typeck.c:5909 #, gcc-internal-format msgid "cast specifies function type" msgstr "" -#: c/c-typeck.c:5864 +#: c/c-typeck.c:5924 #, gcc-internal-format msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c/c-typeck.c:5884 +#: c/c-typeck.c:5944 #, gcc-internal-format msgid "ISO C forbids casts to union type" msgstr "" -#: c/c-typeck.c:5894 +#: c/c-typeck.c:5954 #, gcc-internal-format msgid "cast to union type from type not present in union" msgstr "" -#: c/c-typeck.c:5929 +#: c/c-typeck.c:5989 #, gcc-internal-format, gfc-internal-format msgid "" "cast to %s address space pointer from disjoint generic address space pointer" msgstr "" -#: c/c-typeck.c:5934 +#: c/c-typeck.c:5994 #, gcc-internal-format, gfc-internal-format msgid "" "cast to generic address space pointer from disjoint %s address space pointer" msgstr "" -#: c/c-typeck.c:5939 +#: c/c-typeck.c:5999 #, gcc-internal-format, gfc-internal-format msgid "cast to %s address space pointer from disjoint %s address space pointer" msgstr "" -#: c/c-typeck.c:5959 +#: c/c-typeck.c:6019 #, gcc-internal-format msgid "cast increases required alignment of target type" msgstr "" -#: c/c-typeck.c:5970 +#: c/c-typeck.c:6030 #, gcc-internal-format msgid "cast from pointer to integer of different size" msgstr "" -#: c/c-typeck.c:5975 +#: c/c-typeck.c:6035 #, gcc-internal-format msgid "cast from function call of type %qT to non-matching type %qT" msgstr "" -#: c/c-typeck.c:5984 cp/typeck.c:8438 +#: c/c-typeck.c:6044 cp/typeck.c:8445 #, gcc-internal-format msgid "cast to pointer from integer of different size" msgstr "" -#: c/c-typeck.c:5998 +#: c/c-typeck.c:6058 #, gcc-internal-format msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "" -#: c/c-typeck.c:6007 +#: c/c-typeck.c:6067 #, gcc-internal-format msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "" -#: c/c-typeck.c:6017 +#: c/c-typeck.c:6077 #, gcc-internal-format msgid "cast between incompatible function types from %qT to %qT" msgstr "" -#: c/c-typeck.c:6112 +#: c/c-typeck.c:6172 #, gcc-internal-format msgid "defining a type in a cast is invalid in C++" msgstr "" -#: c/c-typeck.c:6153 +#: c/c-typeck.c:6213 #, gcc-internal-format msgid "assignment to expression with array type" msgstr "" -#: c/c-typeck.c:6279 +#: c/c-typeck.c:6339 #, gcc-internal-format msgid "enum conversion in assignment is invalid in C++" msgstr "" -#: c/c-typeck.c:6481 c/c-typeck.c:6503 c/c-typeck.c:6529 +#: c/c-typeck.c:6541 c/c-typeck.c:6563 c/c-typeck.c:6589 #, gcc-internal-format msgid "(near initialization for %qs)" msgstr "" -#: c/c-typeck.c:6544 +#: c/c-typeck.c:6604 #, gcc-internal-format msgid "array initialized from parenthesized string constant" msgstr "" -#: c/c-typeck.c:6587 c/c-typeck.c:6833 +#: c/c-typeck.c:6647 c/c-typeck.c:6893 #, gcc-internal-format msgid "expected %qT but argument is of type %qT" msgstr "" -#: c/c-typeck.c:6621 +#: c/c-typeck.c:6681 #, gcc-internal-format msgid "" "%qD argument %d type is %qT where %qT is expected in a call to built-in " "function declared without prototype" msgstr "" -#: c/c-typeck.c:6624 +#: c/c-typeck.c:6684 #, gcc-internal-format msgid "" "%qD argument %d promotes to %qT where %qT is expected in a call to built-in " "function declared without prototype" msgstr "" -#: c/c-typeck.c:6629 +#: c/c-typeck.c:6689 #, gcc-internal-format msgid "built-in %qD declared here" msgstr "" -#: c/c-typeck.c:6828 +#: c/c-typeck.c:6888 #, gcc-internal-format msgid "enum conversion when passing argument %d of %qE is invalid in C++" msgstr "" -#: c/c-typeck.c:6837 +#: c/c-typeck.c:6897 #, gcc-internal-format msgid "enum conversion from %qT to %qT in assignment is invalid in C++" msgstr "" -#: c/c-typeck.c:6841 +#: c/c-typeck.c:6901 #, gcc-internal-format msgid "enum conversion from %qT to %qT in initialization is invalid in C++" msgstr "" -#: c/c-typeck.c:6846 +#: c/c-typeck.c:6906 #, gcc-internal-format msgid "enum conversion from %qT to %qT in return is invalid in C++" msgstr "" -#: c/c-typeck.c:6864 +#: c/c-typeck.c:6924 #, gcc-internal-format msgid "implicit conversion from %qT to %qT" msgstr "" -#: c/c-typeck.c:7042 c/c-typeck.c:7397 +#: c/c-typeck.c:7102 c/c-typeck.c:7457 msgid "" "passing argument %d of %qE makes %q#v qualified function pointer from " "unqualified" msgstr "" -#: c/c-typeck.c:7045 c/c-typeck.c:7400 +#: c/c-typeck.c:7105 c/c-typeck.c:7460 msgid "assignment makes %q#v qualified function pointer from unqualified" msgstr "" -#: c/c-typeck.c:7048 c/c-typeck.c:7402 +#: c/c-typeck.c:7108 c/c-typeck.c:7462 msgid "initialization makes %q#v qualified function pointer from unqualified" msgstr "" -#: c/c-typeck.c:7051 c/c-typeck.c:7404 +#: c/c-typeck.c:7111 c/c-typeck.c:7464 msgid "return makes %q#v qualified function pointer from unqualified" msgstr "" -#: c/c-typeck.c:7059 c/c-typeck.c:7292 c/c-typeck.c:7335 +#: c/c-typeck.c:7119 c/c-typeck.c:7352 c/c-typeck.c:7395 msgid "" "passing argument %d of %qE discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.c:7061 c/c-typeck.c:7294 c/c-typeck.c:7337 +#: c/c-typeck.c:7121 c/c-typeck.c:7354 c/c-typeck.c:7397 msgid "assignment discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.c:7063 c/c-typeck.c:7296 c/c-typeck.c:7339 +#: c/c-typeck.c:7123 c/c-typeck.c:7356 c/c-typeck.c:7399 msgid "initialization discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.c:7065 c/c-typeck.c:7298 c/c-typeck.c:7341 +#: c/c-typeck.c:7125 c/c-typeck.c:7358 c/c-typeck.c:7401 msgid "return discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.c:7074 +#: c/c-typeck.c:7134 #, gcc-internal-format msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c/c-typeck.c:7142 +#: c/c-typeck.c:7202 #, gcc-internal-format msgid "request for implicit conversion from %qT to %qT not permitted in C++" msgstr "" -#: c/c-typeck.c:7155 +#: c/c-typeck.c:7215 #, gcc-internal-format msgid "passing argument %d of %qE from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.c:7165 +#: c/c-typeck.c:7225 #, gcc-internal-format msgid "assignment from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.c:7175 +#: c/c-typeck.c:7235 #, gcc-internal-format msgid "initialization from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.c:7185 +#: c/c-typeck.c:7245 #, gcc-internal-format msgid "return from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.c:7208 +#: c/c-typeck.c:7268 #, gcc-internal-format msgid "argument %d of %qE might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.c:7214 +#: c/c-typeck.c:7274 #, gcc-internal-format msgid "assignment left-hand side might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.c:7219 +#: c/c-typeck.c:7279 #, gcc-internal-format msgid "" "initialization left-hand side might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.c:7224 cp/typeck.c:9547 +#: c/c-typeck.c:7284 cp/typeck.c:9554 #, gcc-internal-format msgid "return type might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.c:7245 +#: c/c-typeck.c:7305 #, gcc-internal-format msgid "passing argument %d of %qE from incompatible scalar storage order" msgstr "" -#: c/c-typeck.c:7250 +#: c/c-typeck.c:7310 #, gcc-internal-format msgid "" "assignment to %qT from pointer type %qT with incompatible scalar storage " "order" msgstr "" -#: c/c-typeck.c:7255 +#: c/c-typeck.c:7315 #, gcc-internal-format msgid "" "initialization of %qT from pointer type %qT with incompatible scalar storage " "order" msgstr "" -#: c/c-typeck.c:7260 +#: c/c-typeck.c:7320 #, gcc-internal-format msgid "" "returning %qT from pointer type with incompatible scalar storage order %qT" msgstr "" -#: c/c-typeck.c:7309 +#: c/c-typeck.c:7369 #, gcc-internal-format msgid "" "ISO C forbids passing argument %d of %qE between function pointer and %<void " "*%>" msgstr "" -#: c/c-typeck.c:7312 +#: c/c-typeck.c:7372 #, gcc-internal-format msgid "ISO C forbids assignment between function pointer and %<void *%>" msgstr "" -#: c/c-typeck.c:7314 +#: c/c-typeck.c:7374 #, gcc-internal-format msgid "ISO C forbids initialization between function pointer and %<void *%>" msgstr "" -#: c/c-typeck.c:7316 +#: c/c-typeck.c:7376 #, gcc-internal-format msgid "ISO C forbids return between function pointer and %<void *%>" msgstr "" -#: c/c-typeck.c:7360 +#: c/c-typeck.c:7420 #, gcc-internal-format msgid "pointer targets in passing argument %d of %qE differ in signedness" msgstr "" -#: c/c-typeck.c:7368 +#: c/c-typeck.c:7428 #, gcc-internal-format msgid "pointer targets in assignment from %qT to %qT differ in signedness" msgstr "" -#: c/c-typeck.c:7373 +#: c/c-typeck.c:7433 #, gcc-internal-format msgid "pointer targets in initialization of %qT from %qT differ in signedness" msgstr "" -#: c/c-typeck.c:7378 +#: c/c-typeck.c:7438 #, gcc-internal-format msgid "" "pointer targets in returning %qT from a function with return type %qT differ " "in signedness" msgstr "" -#: c/c-typeck.c:7420 +#: c/c-typeck.c:7480 #, gcc-internal-format msgid "passing argument %d of %qE from incompatible pointer type" msgstr "" -#: c/c-typeck.c:7428 +#: c/c-typeck.c:7488 #, gcc-internal-format msgid "assignment to %qT from pointer to %qD with incompatible type %qT" msgstr "" -#: c/c-typeck.c:7433 +#: c/c-typeck.c:7493 #, gcc-internal-format msgid "assignment to %qT from incompatible pointer type %qT" msgstr "" -#: c/c-typeck.c:7439 +#: c/c-typeck.c:7499 #, gcc-internal-format msgid "initialization of %qT from pointer to %qD with incompatible type %qT" msgstr "" -#: c/c-typeck.c:7444 +#: c/c-typeck.c:7504 #, gcc-internal-format msgid "initialization of %qT from incompatible pointer type %qT" msgstr "" -#: c/c-typeck.c:7451 +#: c/c-typeck.c:7511 #, gcc-internal-format msgid "" "returning pointer to %qD of type %qT from a function with incompatible type " "%qT" msgstr "" -#: c/c-typeck.c:7456 +#: c/c-typeck.c:7516 #, gcc-internal-format msgid "returning %qT from a function with incompatible return type %qT" msgstr "" -#: c/c-typeck.c:7495 +#: c/c-typeck.c:7555 #, gcc-internal-format msgid "passing argument %d of %qE makes pointer from integer without a cast" msgstr "" -#: c/c-typeck.c:7502 +#: c/c-typeck.c:7562 #, gcc-internal-format msgid "assignment to %qT from %qT makes pointer from integer without a cast" msgstr "" -#: c/c-typeck.c:7507 +#: c/c-typeck.c:7567 #, gcc-internal-format msgid "" "initialization of %qT from %qT makes pointer from integer without a cast" msgstr "" -#: c/c-typeck.c:7511 +#: c/c-typeck.c:7571 #, gcc-internal-format msgid "" "returning %qT from a function with return type %qT makes pointer from " "integer without a cast" msgstr "" -#: c/c-typeck.c:7531 +#: c/c-typeck.c:7591 #, gcc-internal-format msgid "passing argument %d of %qE makes integer from pointer without a cast" msgstr "" -#: c/c-typeck.c:7538 +#: c/c-typeck.c:7598 #, gcc-internal-format msgid "assignment to %qT from %qT makes integer from pointer without a cast" msgstr "" -#: c/c-typeck.c:7543 +#: c/c-typeck.c:7603 #, gcc-internal-format msgid "" "initialization of %qT from %qT makes integer from pointer without a cast" msgstr "" -#: c/c-typeck.c:7547 +#: c/c-typeck.c:7607 #, gcc-internal-format msgid "" "returning %qT from a function with return type %qT makes integer from " "pointer without a cast" msgstr "" -#: c/c-typeck.c:7574 +#: c/c-typeck.c:7634 #, gcc-internal-format msgid "incompatible type for argument %d of %qE" msgstr "" -#: c/c-typeck.c:7585 +#: c/c-typeck.c:7645 #, gcc-internal-format msgid "incompatible types when assigning to type %qT from type %qT" msgstr "" -#: c/c-typeck.c:7595 +#: c/c-typeck.c:7655 #, gcc-internal-format msgid "incompatible types when initializing type %qT using type %qT" msgstr "" -#: c/c-typeck.c:7605 +#: c/c-typeck.c:7665 #, gcc-internal-format msgid "incompatible types when returning type %qT but %qT was expected" msgstr "" -#: c/c-typeck.c:7673 +#: c/c-typeck.c:7733 #, gcc-internal-format msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c/c-typeck.c:7913 c/c-typeck.c:8807 cp/typeck2.c:1082 +#: c/c-typeck.c:7973 c/c-typeck.c:8867 cp/typeck2.c:1082 #, gcc-internal-format msgid "initialization of a flexible array member" msgstr "" -#: c/c-typeck.c:7929 cp/typeck2.c:1099 +#: c/c-typeck.c:7989 cp/typeck2.c:1099 #, gcc-internal-format msgid "" "cannot initialize array of %qT from a string literal with type array of %qT" msgstr "" -#: c/c-typeck.c:7969 +#: c/c-typeck.c:8029 #, gcc-internal-format msgid "array of inappropriate type initialized from string constant" msgstr "" -#: c/c-typeck.c:8037 cp/typeck.c:2182 +#: c/c-typeck.c:8097 cp/typeck.c:2193 #, gcc-internal-format msgid "invalid use of non-lvalue array" msgstr "" -#: c/c-typeck.c:8056 c/c-typeck.c:8080 c/c-typeck.c:8083 c/c-typeck.c:8091 -#: c/c-typeck.c:8131 c/c-typeck.c:9660 c/c-typeck.c:9710 +#: c/c-typeck.c:8116 c/c-typeck.c:8140 c/c-typeck.c:8143 c/c-typeck.c:8151 +#: c/c-typeck.c:8191 c/c-typeck.c:9720 c/c-typeck.c:9770 #, gcc-internal-format msgid "initializer element is not constant" msgstr "" -#: c/c-typeck.c:8065 +#: c/c-typeck.c:8125 #, gcc-internal-format msgid "array initialized from non-constant array expression" msgstr "" -#: c/c-typeck.c:8096 c/c-typeck.c:8144 c/c-typeck.c:9720 +#: c/c-typeck.c:8156 c/c-typeck.c:8204 c/c-typeck.c:9780 #, gcc-internal-format msgid "initializer element is not a constant expression" msgstr "" -#: c/c-typeck.c:8138 c/c-typeck.c:9715 +#: c/c-typeck.c:8198 c/c-typeck.c:9775 #, gcc-internal-format msgid "initializer element is not computable at load time" msgstr "" -#: c/c-typeck.c:8157 +#: c/c-typeck.c:8217 #, gcc-internal-format msgid "invalid initializer" msgstr "" -#: c/c-typeck.c:8435 cp/decl.c:6976 +#: c/c-typeck.c:8495 cp/decl.c:6972 #, gcc-internal-format msgid "opaque vector types cannot be initialized" msgstr "" -#: c/c-typeck.c:8655 +#: c/c-typeck.c:8715 #, gcc-internal-format msgid "extra brace group at end of initializer" msgstr "" -#: c/c-typeck.c:8738 +#: c/c-typeck.c:8798 #, gcc-internal-format msgid "braces around scalar initializer" msgstr "" -#: c/c-typeck.c:8804 c/c-typeck.c:10243 cp/typeck2.c:1109 cp/typeck2.c:1367 +#: c/c-typeck.c:8864 c/c-typeck.c:10303 cp/typeck2.c:1109 cp/typeck2.c:1364 #, gcc-internal-format msgid "initialization of flexible array member in a nested context" msgstr "" -#: c/c-typeck.c:8841 +#: c/c-typeck.c:8901 #, gcc-internal-format msgid "missing braces around initializer" msgstr "" -#: c/c-typeck.c:8864 +#: c/c-typeck.c:8924 #, gcc-internal-format msgid "missing initializer for field %qD of %qT" msgstr "" -#: c/c-typeck.c:8888 +#: c/c-typeck.c:8948 #, gcc-internal-format msgid "empty scalar initializer" msgstr "" -#: c/c-typeck.c:8893 +#: c/c-typeck.c:8953 #, gcc-internal-format msgid "extra elements in scalar initializer" msgstr "" -#: c/c-typeck.c:9012 c/c-typeck.c:9094 +#: c/c-typeck.c:9072 c/c-typeck.c:9154 #, gcc-internal-format msgid "array index in non-array initializer" msgstr "" -#: c/c-typeck.c:9017 c/c-typeck.c:9156 +#: c/c-typeck.c:9077 c/c-typeck.c:9216 #, gcc-internal-format msgid "field name not in record or union initializer" msgstr "" -#: c/c-typeck.c:9067 +#: c/c-typeck.c:9127 #, gcc-internal-format msgid "array index in initializer not of integer type" msgstr "" -#: c/c-typeck.c:9076 c/c-typeck.c:9085 +#: c/c-typeck.c:9136 c/c-typeck.c:9145 #, gcc-internal-format msgid "array index in initializer is not an integer constant expression" msgstr "" -#: c/c-typeck.c:9090 c/c-typeck.c:9092 +#: c/c-typeck.c:9150 c/c-typeck.c:9152 #, gcc-internal-format msgid "nonconstant array index in initializer" msgstr "" -#: c/c-typeck.c:9096 c/c-typeck.c:9099 +#: c/c-typeck.c:9156 c/c-typeck.c:9159 #, gcc-internal-format msgid "array index in initializer exceeds array bounds" msgstr "" -#: c/c-typeck.c:9118 +#: c/c-typeck.c:9178 #, gcc-internal-format msgid "empty index range in initializer" msgstr "" -#: c/c-typeck.c:9127 +#: c/c-typeck.c:9187 #, gcc-internal-format msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c/c-typeck.c:9229 c/c-typeck.c:9259 c/c-typeck.c:9803 +#: c/c-typeck.c:9289 c/c-typeck.c:9319 c/c-typeck.c:9863 #, gcc-internal-format msgid "initialized field with side-effects overwritten" msgstr "" -#: c/c-typeck.c:9233 c/c-typeck.c:9263 c/c-typeck.c:9806 +#: c/c-typeck.c:9293 c/c-typeck.c:9323 c/c-typeck.c:9866 #, gcc-internal-format msgid "initialized field overwritten" msgstr "" -#: c/c-typeck.c:9737 +#: c/c-typeck.c:9797 #, gcc-internal-format msgid "enum conversion in initialization is invalid in C++" msgstr "" -#: c/c-typeck.c:10118 +#: c/c-typeck.c:10178 #, gcc-internal-format msgid "excess elements in %<char%> array initializer" msgstr "" -#: c/c-typeck.c:10125 c/c-typeck.c:10202 +#: c/c-typeck.c:10185 c/c-typeck.c:10262 #, gcc-internal-format msgid "excess elements in struct initializer" msgstr "" -#: c/c-typeck.c:10146 +#: c/c-typeck.c:10206 #, gcc-internal-format msgid "" "positional initialization of field in %<struct%> declared with " "%<designated_init%> attribute" msgstr "" -#: c/c-typeck.c:10217 cp/typeck2.c:1086 +#: c/c-typeck.c:10277 cp/typeck2.c:1086 #, gcc-internal-format msgid "non-static initialization of a flexible array member" msgstr "" -#: c/c-typeck.c:10312 +#: c/c-typeck.c:10372 #, gcc-internal-format msgid "excess elements in union initializer" msgstr "" -#: c/c-typeck.c:10334 +#: c/c-typeck.c:10394 #, gcc-internal-format msgid "traditional C rejects initialization of unions" msgstr "" -#: c/c-typeck.c:10396 +#: c/c-typeck.c:10456 #, gcc-internal-format msgid "excess elements in array initializer" msgstr "" -#: c/c-typeck.c:10430 +#: c/c-typeck.c:10490 #, gcc-internal-format msgid "excess elements in vector initializer" msgstr "" -#: c/c-typeck.c:10462 +#: c/c-typeck.c:10522 #, gcc-internal-format msgid "excess elements in scalar initializer" msgstr "" -#: c/c-typeck.c:10704 +#: c/c-typeck.c:10764 #, gcc-internal-format msgid "ISO C forbids %<goto *expr;%>" msgstr "" -#: c/c-typeck.c:10731 c/gimple-parser.c:2404 cp/typeck.c:10039 +#: c/c-typeck.c:10791 c/gimple-parser.c:2404 cp/typeck.c:10046 #, gcc-internal-format msgid "function declared %<noreturn%> has a %<return%> statement" msgstr "" -#: c/c-typeck.c:10759 c/c-typeck.c:10763 +#: c/c-typeck.c:10819 c/c-typeck.c:10823 #, gcc-internal-format msgid "%<return%> with no value, in function returning non-void" msgstr "" -#: c/c-typeck.c:10777 c/gimple-parser.c:2414 +#: c/c-typeck.c:10837 c/gimple-parser.c:2414 #, gcc-internal-format msgid "%<return%> with a value, in function returning void" msgstr "" -#: c/c-typeck.c:10780 +#: c/c-typeck.c:10840 #, gcc-internal-format msgid "ISO C forbids %<return%> with expression, in function returning void" msgstr "" -#: c/c-typeck.c:10857 +#: c/c-typeck.c:10917 #, gcc-internal-format msgid "function returns address of label" msgstr "" -#: c/c-typeck.c:10947 cp/semantics.c:1420 +#: c/c-typeck.c:11007 cp/semantics.c:1439 #, gcc-internal-format msgid "switch quantity not an integer" msgstr "" -#: c/c-typeck.c:10972 +#: c/c-typeck.c:11032 #, gcc-internal-format msgid "%<long%> switch expression not converted to %<int%> in ISO C" msgstr "" -#: c/c-typeck.c:11010 c/c-typeck.c:11018 +#: c/c-typeck.c:11070 c/c-typeck.c:11078 #, gcc-internal-format msgid "case label is not an integer constant expression" msgstr "" -#: c/c-typeck.c:11024 cp/parser.c:11953 +#: c/c-typeck.c:11084 cp/parser.c:11974 #, gcc-internal-format msgid "case label not within a switch statement" msgstr "" -#: c/c-typeck.c:11026 +#: c/c-typeck.c:11086 #, gcc-internal-format msgid "%<default%> label not within a switch statement" msgstr "" -#: c/c-typeck.c:11102 cp/parser.c:13452 +#: c/c-typeck.c:11162 cp/parser.c:13476 #, gcc-internal-format msgid "break statement not within loop or switch" msgstr "" -#: c/c-typeck.c:11105 c/c-typeck.c:11125 cp/decl.c:3661 cp/parser.c:13462 -#: cp/parser.c:13483 +#: c/c-typeck.c:11165 c/c-typeck.c:11185 cp/decl.c:3643 cp/parser.c:13486 +#: cp/parser.c:13507 #, gcc-internal-format msgid "invalid exit from OpenMP structured block" msgstr "" -#: c/c-typeck.c:11108 cp/parser.c:13465 +#: c/c-typeck.c:11168 cp/parser.c:13489 #, gcc-internal-format msgid "break statement used with OpenMP for loop" msgstr "" -#: c/c-typeck.c:11122 cp/parser.c:13475 +#: c/c-typeck.c:11182 cp/parser.c:13499 #, gcc-internal-format msgid "continue statement not within a loop" msgstr "" -#: c/c-typeck.c:11160 cp/cp-gimplify.c:218 +#: c/c-typeck.c:11220 cp/cp-gimplify.c:218 #, gcc-internal-format msgid "statement with no effect" msgstr "" -#: c/c-typeck.c:11204 +#: c/c-typeck.c:11264 #, gcc-internal-format msgid "expression statement has incomplete type" msgstr "" -#: c/c-typeck.c:12038 c/c-typeck.c:12206 cp/typeck.c:5402 +#: c/c-typeck.c:12098 c/c-typeck.c:12266 cp/typeck.c:5413 #, gcc-internal-format msgid "comparing vectors with different element types" msgstr "" -#: c/c-typeck.c:12046 c/c-typeck.c:12214 cp/typeck.c:5415 +#: c/c-typeck.c:12106 c/c-typeck.c:12274 cp/typeck.c:5426 #, gcc-internal-format msgid "comparing vectors with different number of elements" msgstr "" -#: c/c-typeck.c:12071 c/c-typeck.c:12239 cp/typeck.c:5450 +#: c/c-typeck.c:12131 c/c-typeck.c:12299 cp/typeck.c:5461 #, gcc-internal-format msgid "could not find an integer type of the same size as %qT" msgstr "" -#: c/c-typeck.c:12085 cp/typeck.c:5108 +#: c/c-typeck.c:12145 cp/typeck.c:5119 #, gcc-internal-format msgid "comparing floating-point with %<==%> or %<!=%> is unsafe" msgstr "" -#: c/c-typeck.c:12103 c/c-typeck.c:12124 +#: c/c-typeck.c:12163 c/c-typeck.c:12184 #, gcc-internal-format msgid "" "the comparison will always evaluate as %<false%> for the address of %qD will " "never be NULL" msgstr "" -#: c/c-typeck.c:12109 c/c-typeck.c:12130 +#: c/c-typeck.c:12169 c/c-typeck.c:12190 #, gcc-internal-format msgid "" "the comparison will always evaluate as %<true%> for the address of %qD will " "never be NULL" msgstr "" -#: c/c-typeck.c:12151 c/c-typeck.c:12280 +#: c/c-typeck.c:12211 c/c-typeck.c:12340 #, gcc-internal-format msgid "comparison of pointers to disjoint address spaces" msgstr "" -#: c/c-typeck.c:12158 c/c-typeck.c:12164 +#: c/c-typeck.c:12218 c/c-typeck.c:12224 #, gcc-internal-format msgid "ISO C forbids comparison of %<void *%> with function pointer" msgstr "" -#: c/c-typeck.c:12171 c/c-typeck.c:12290 +#: c/c-typeck.c:12231 c/c-typeck.c:12350 #, gcc-internal-format msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c/c-typeck.c:12183 c/c-typeck.c:12188 c/c-typeck.c:12316 c/c-typeck.c:12321 +#: c/c-typeck.c:12243 c/c-typeck.c:12248 c/c-typeck.c:12376 c/c-typeck.c:12381 #, gcc-internal-format msgid "comparison between pointer and integer" msgstr "" -#: c/c-typeck.c:12268 +#: c/c-typeck.c:12328 #, gcc-internal-format msgid "comparison of complete and incomplete pointers" msgstr "" -#: c/c-typeck.c:12270 +#: c/c-typeck.c:12330 #, gcc-internal-format msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c/c-typeck.c:12275 +#: c/c-typeck.c:12335 #, gcc-internal-format msgid "ordered comparison of pointer with null pointer" msgstr "" -#: c/c-typeck.c:12298 c/c-typeck.c:12301 c/c-typeck.c:12308 c/c-typeck.c:12311 +#: c/c-typeck.c:12358 c/c-typeck.c:12361 c/c-typeck.c:12368 c/c-typeck.c:12371 #, gcc-internal-format msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c/c-typeck.c:12380 +#: c/c-typeck.c:12440 #, gcc-internal-format msgid "" "implicit conversion from %qT to %qT to match other operand of binary " "expression" msgstr "" -#: c/c-typeck.c:12695 +#: c/c-typeck.c:12755 #, gcc-internal-format msgid "used array that cannot be converted to pointer where scalar is required" msgstr "" -#: c/c-typeck.c:12699 +#: c/c-typeck.c:12759 #, gcc-internal-format msgid "used struct type value where scalar is required" msgstr "" -#: c/c-typeck.c:12703 +#: c/c-typeck.c:12763 #, gcc-internal-format msgid "used union type value where scalar is required" msgstr "" -#: c/c-typeck.c:12719 +#: c/c-typeck.c:12779 #, gcc-internal-format msgid "used vector type where scalar is required" msgstr "" -#: c/c-typeck.c:12909 cp/semantics.c:9869 +#: c/c-typeck.c:12969 cp/semantics.c:9897 #, gcc-internal-format msgid "" "%<#pragma omp cancel%> must specify one of %<parallel%>, %<for%>, %<sections" "%> or %<taskgroup%> clauses" msgstr "" -#: c/c-typeck.c:12920 c/c-typeck.c:12930 cp/semantics.c:9880 -#: cp/semantics.c:9890 +#: c/c-typeck.c:12980 c/c-typeck.c:12990 cp/semantics.c:9908 +#: cp/semantics.c:9918 #, gcc-internal-format msgid "expected %<cancel%> %<if%> clause modifier" msgstr "" -#: c/c-typeck.c:12965 cp/semantics.c:9925 +#: c/c-typeck.c:13025 cp/semantics.c:9953 #, gcc-internal-format msgid "" "%<#pragma omp cancellation point%> must specify one of %<parallel%>, %<for" "%>, %<sections%> or %<taskgroup%> clauses" msgstr "" -#: c/c-typeck.c:13009 c/c-typeck.c:14596 c/c-typeck.c:14683 c/c-typeck.c:14756 +#: c/c-typeck.c:13069 c/c-typeck.c:14656 c/c-typeck.c:14743 c/c-typeck.c:14816 #, gcc-internal-format msgid "%<_Atomic%> %qE in %qs clause" msgstr "" -#: c/c-typeck.c:13021 c/c-typeck.c:14528 c/c-typeck.c:14669 cp/semantics.c:4930 -#: cp/semantics.c:7473 cp/semantics.c:7667 +#: c/c-typeck.c:13081 c/c-typeck.c:14588 c/c-typeck.c:14729 cp/semantics.c:4958 +#: cp/semantics.c:7501 cp/semantics.c:7695 #, gcc-internal-format msgid "bit-field %qE in %qs clause" msgstr "" -#: c/c-typeck.c:13030 c/c-typeck.c:14693 cp/semantics.c:4940 -#: cp/semantics.c:7686 +#: c/c-typeck.c:13090 c/c-typeck.c:14753 cp/semantics.c:4968 +#: cp/semantics.c:7714 #, gcc-internal-format msgid "%qE is a member of a union" msgstr "" -#: c/c-typeck.c:13038 c/c-typeck.c:14702 +#: c/c-typeck.c:13098 c/c-typeck.c:14762 #, gcc-internal-format msgid "cannot dereference %qE in %qs clause" msgstr "" -#: c/c-typeck.c:13049 cp/semantics.c:4956 cp/semantics.c:7715 +#: c/c-typeck.c:13109 cp/semantics.c:4984 cp/semantics.c:7743 #, gcc-internal-format msgid "%qD is not a variable in %qs clause" msgstr "" -#: c/c-typeck.c:13053 c/c-typeck.c:14721 cp/semantics.c:4960 -#: cp/semantics.c:7719 +#: c/c-typeck.c:13113 c/c-typeck.c:14781 cp/semantics.c:4988 +#: cp/semantics.c:7747 #, gcc-internal-format msgid "%qE is not a variable in %qs clause" msgstr "" -#: c/c-typeck.c:13060 +#: c/c-typeck.c:13120 #, gcc-internal-format msgid "%<_Atomic%> %qD in %qs clause" msgstr "" -#: c/c-typeck.c:13069 c/c-typeck.c:14728 c/c-typeck.c:14846 cp/semantics.c:4978 -#: cp/semantics.c:7726 cp/semantics.c:7907 +#: c/c-typeck.c:13129 c/c-typeck.c:14788 c/c-typeck.c:14906 cp/semantics.c:5006 +#: cp/semantics.c:7754 cp/semantics.c:7935 #, gcc-internal-format msgid "%qD is threadprivate variable in %qs clause" msgstr "" -#: c/c-typeck.c:13105 cp/semantics.c:5012 +#: c/c-typeck.c:13165 cp/semantics.c:5040 #, gcc-internal-format msgid "low bound %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.c:13112 cp/semantics.c:5019 +#: c/c-typeck.c:13172 cp/semantics.c:5047 #, gcc-internal-format msgid "length %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.c:13135 cp/semantics.c:5052 +#: c/c-typeck.c:13195 cp/semantics.c:5080 #, gcc-internal-format msgid "expected single pointer in %qs clause" msgstr "" -#: c/c-typeck.c:13152 c/c-typeck.c:13218 c/c-typeck.c:13495 cp/semantics.c:5069 -#: cp/semantics.c:5135 +#: c/c-typeck.c:13212 c/c-typeck.c:13278 c/c-typeck.c:13555 cp/semantics.c:5097 +#: cp/semantics.c:5163 #, gcc-internal-format msgid "zero length array section in %qs clause" msgstr "" -#: c/c-typeck.c:13171 cp/semantics.c:5088 +#: c/c-typeck.c:13231 cp/semantics.c:5116 #, gcc-internal-format msgid "for unknown bound array type length expression must be specified" msgstr "" -#: c/c-typeck.c:13179 cp/semantics.c:5096 +#: c/c-typeck.c:13239 cp/semantics.c:5124 #, gcc-internal-format msgid "negative low bound in array section in %qs clause" msgstr "" -#: c/c-typeck.c:13188 c/c-typeck.c:13309 cp/semantics.c:5105 -#: cp/semantics.c:5226 +#: c/c-typeck.c:13248 c/c-typeck.c:13369 cp/semantics.c:5133 +#: cp/semantics.c:5254 #, gcc-internal-format msgid "negative length in array section in %qs clause" msgstr "" -#: c/c-typeck.c:13205 cp/semantics.c:5122 +#: c/c-typeck.c:13265 cp/semantics.c:5150 #, gcc-internal-format msgid "low bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13246 cp/semantics.c:5163 +#: c/c-typeck.c:13306 cp/semantics.c:5191 #, gcc-internal-format msgid "length %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13261 cp/semantics.c:5178 +#: c/c-typeck.c:13321 cp/semantics.c:5206 #, gcc-internal-format msgid "high bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13297 cp/semantics.c:5214 +#: c/c-typeck.c:13357 cp/semantics.c:5242 #, gcc-internal-format msgid "for array function parameter length expression must be specified" msgstr "" -#: c/c-typeck.c:13301 cp/semantics.c:5218 +#: c/c-typeck.c:13361 cp/semantics.c:5246 #, gcc-internal-format msgid "for pointer type length expression must be specified" msgstr "" -#: c/c-typeck.c:13319 c/c-typeck.c:13434 cp/semantics.c:5236 -#: cp/semantics.c:5365 +#: c/c-typeck.c:13379 c/c-typeck.c:13494 cp/semantics.c:5264 +#: cp/semantics.c:5393 #, gcc-internal-format msgid "array section is not contiguous in %qs clause" msgstr "" -#: c/c-typeck.c:13327 cp/semantics.c:5244 +#: c/c-typeck.c:13387 cp/semantics.c:5272 #, gcc-internal-format msgid "%qE does not have pointer or array type" msgstr "" -#: c/c-typeck.c:13713 cp/semantics.c:6318 +#: c/c-typeck.c:13773 cp/semantics.c:6346 #, gcc-internal-format msgid "iterator %qD has neither integral nor pointer type" msgstr "" -#: c/c-typeck.c:13720 +#: c/c-typeck.c:13780 #, gcc-internal-format msgid "iterator %qD has %<_Atomic%> qualified type" msgstr "" -#: c/c-typeck.c:13726 cp/semantics.c:6325 +#: c/c-typeck.c:13786 cp/semantics.c:6353 #, gcc-internal-format msgid "iterator %qD has const qualified type" msgstr "" -#: c/c-typeck.c:13739 cp/semantics.c:6341 +#: c/c-typeck.c:13799 cp/semantics.c:6369 #, gcc-internal-format msgid "iterator step with non-integral type" msgstr "" -#: c/c-typeck.c:13759 cp/semantics.c:6377 +#: c/c-typeck.c:13819 cp/semantics.c:6405 #, gcc-internal-format msgid "iterator %qD has zero step" msgstr "" -#: c/c-typeck.c:13786 +#: c/c-typeck.c:13846 #, gcc-internal-format msgid "type of iterator %qD refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13793 cp/semantics.c:6411 +#: c/c-typeck.c:13853 cp/semantics.c:6439 #, gcc-internal-format msgid "begin expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13799 cp/semantics.c:6417 +#: c/c-typeck.c:13859 cp/semantics.c:6445 #, gcc-internal-format msgid "end expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13805 cp/semantics.c:6423 +#: c/c-typeck.c:13865 cp/semantics.c:6451 #, gcc-internal-format msgid "step expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13842 cp/semantics.c:6471 +#: c/c-typeck.c:13902 cp/semantics.c:6499 #, gcc-internal-format msgid "expected pointer in %qs clause" msgstr "" -#: c/c-typeck.c:13924 cp/semantics.c:6546 +#: c/c-typeck.c:13984 cp/semantics.c:6574 #, gcc-internal-format msgid "" "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct" msgstr "" -#: c/c-typeck.c:13946 cp/semantics.c:6566 +#: c/c-typeck.c:14006 cp/semantics.c:6594 #, gcc-internal-format msgid "%<inscan%> %<reduction%> clause with array section" msgstr "" -#: c/c-typeck.c:13972 c/c-typeck.c:13982 +#: c/c-typeck.c:14032 c/c-typeck.c:14042 #, gcc-internal-format msgid "%qD in %<reduction%> clause is a zero size array" msgstr "" -#: c/c-typeck.c:14002 +#: c/c-typeck.c:14062 #, gcc-internal-format msgid "%<_Atomic%> %qE in %<reduction%> clause" msgstr "" -#: c/c-typeck.c:14014 +#: c/c-typeck.c:14074 #, gcc-internal-format msgid "zero sized type %qT in %qs clause" msgstr "" -#: c/c-typeck.c:14022 +#: c/c-typeck.c:14082 #, gcc-internal-format msgid "variable sized type %qT in %qs clause" msgstr "" -#: c/c-typeck.c:14072 +#: c/c-typeck.c:14132 #, gcc-internal-format msgid "%qE has invalid type for %<reduction(%s)%>" msgstr "" -#: c/c-typeck.c:14081 cp/semantics.c:6210 +#: c/c-typeck.c:14141 cp/semantics.c:6238 #, gcc-internal-format msgid "user defined reduction not found for %qE" msgstr "" -#: c/c-typeck.c:14169 +#: c/c-typeck.c:14229 #, gcc-internal-format msgid "variable length element type in array %<reduction%> clause" msgstr "" -#: c/c-typeck.c:14187 c/c-typeck.c:14920 cp/semantics.c:8362 +#: c/c-typeck.c:14247 c/c-typeck.c:14980 cp/semantics.c:8390 #, gcc-internal-format msgid "%<nowait%> clause must not be used together with %<copyprivate%>" msgstr "" -#: c/c-typeck.c:14199 cp/semantics.c:8430 +#: c/c-typeck.c:14259 cp/semantics.c:8458 #, gcc-internal-format msgid "%qE must be %<threadprivate%> for %<copyin%>" msgstr "" -#: c/c-typeck.c:14213 cp/semantics.c:6607 +#: c/c-typeck.c:14273 cp/semantics.c:6635 #, gcc-internal-format msgid "" "modifier should not be specified in %<linear%> clause on %<simd%> or %<for%> " "constructs" msgstr "" -#: c/c-typeck.c:14221 +#: c/c-typeck.c:14281 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with type %qT" msgstr "" -#: c/c-typeck.c:14229 +#: c/c-typeck.c:14289 #, gcc-internal-format msgid "%<_Atomic%> %qD in %<linear%> clause" msgstr "" -#: c/c-typeck.c:14248 cp/semantics.c:6681 +#: c/c-typeck.c:14308 cp/semantics.c:6709 #, gcc-internal-format msgid "%<linear%> clause step %qE is neither constant nor a parameter" msgstr "" -#: c/c-typeck.c:14278 c/c-typeck.c:14839 c/c-typeck.c:15063 cp/semantics.c:6768 -#: cp/semantics.c:7900 cp/semantics.c:8198 +#: c/c-typeck.c:14338 c/c-typeck.c:14899 c/c-typeck.c:15123 cp/semantics.c:6796 +#: cp/semantics.c:7928 cp/semantics.c:8226 #, gcc-internal-format msgid "%qE is not a variable in clause %qs" msgstr "" -#: c/c-typeck.c:14293 cp/semantics.c:6783 +#: c/c-typeck.c:14353 cp/semantics.c:6811 #, gcc-internal-format msgid "%qD appears more than once in reduction clauses" msgstr "" -#: c/c-typeck.c:14306 c/c-typeck.c:14338 c/c-typeck.c:14369 +#: c/c-typeck.c:14366 c/c-typeck.c:14398 c/c-typeck.c:14429 #, gcc-internal-format msgid "%qE appears more than once in data clauses" msgstr "" -#: c/c-typeck.c:14314 c/c-typeck.c:14345 c/c-typeck.c:14617 c/c-typeck.c:14767 -#: c/c-typeck.c:14774 c/c-typeck.c:14792 c/c-typeck.c:14802 c/c-typeck.c:14809 -#: cp/semantics.c:6796 cp/semantics.c:6804 cp/semantics.c:6861 -#: cp/semantics.c:6868 cp/semantics.c:6912 cp/semantics.c:7600 -#: cp/semantics.c:7777 cp/semantics.c:7784 cp/semantics.c:7801 -#: cp/semantics.c:7811 cp/semantics.c:7818 +#: c/c-typeck.c:14374 c/c-typeck.c:14405 c/c-typeck.c:14677 c/c-typeck.c:14827 +#: c/c-typeck.c:14834 c/c-typeck.c:14852 c/c-typeck.c:14862 c/c-typeck.c:14869 +#: cp/semantics.c:6824 cp/semantics.c:6832 cp/semantics.c:6889 +#: cp/semantics.c:6896 cp/semantics.c:6940 cp/semantics.c:7628 +#: cp/semantics.c:7805 cp/semantics.c:7812 cp/semantics.c:7829 +#: cp/semantics.c:7839 cp/semantics.c:7846 #, gcc-internal-format msgid "%qD appears more than once in data clauses" msgstr "" -#: c/c-typeck.c:14317 c/c-typeck.c:14348 c/c-typeck.c:14777 c/c-typeck.c:14812 -#: cp/semantics.c:6807 cp/semantics.c:6871 cp/semantics.c:7787 -#: cp/semantics.c:7821 +#: c/c-typeck.c:14377 c/c-typeck.c:14408 c/c-typeck.c:14837 c/c-typeck.c:14872 +#: cp/semantics.c:6835 cp/semantics.c:6899 cp/semantics.c:7815 +#: cp/semantics.c:7849 #, gcc-internal-format msgid "%qD appears both in data and map clauses" msgstr "" -#: c/c-typeck.c:14331 cp/semantics.c:6853 +#: c/c-typeck.c:14391 cp/semantics.c:6881 #, gcc-internal-format msgid "%qE is not a variable in clause %<firstprivate%>" msgstr "" -#: c/c-typeck.c:14362 cp/semantics.c:6904 +#: c/c-typeck.c:14422 cp/semantics.c:6932 #, gcc-internal-format msgid "%qE is not a variable in clause %<lastprivate%>" msgstr "" -#: c/c-typeck.c:14381 cp/semantics.c:7243 +#: c/c-typeck.c:14441 cp/semantics.c:7271 #, gcc-internal-format msgid "%qE is not a variable in %<aligned%> clause" msgstr "" -#: c/c-typeck.c:14388 +#: c/c-typeck.c:14448 #, gcc-internal-format msgid "%qE in %<aligned%> clause is neither a pointer nor an array" msgstr "" -#: c/c-typeck.c:14395 +#: c/c-typeck.c:14455 #, gcc-internal-format msgid "%<_Atomic%> %qD in %<aligned%> clause" msgstr "" -#: c/c-typeck.c:14402 +#: c/c-typeck.c:14462 #, gcc-internal-format msgid "%qE appears more than once in %<aligned%> clauses" msgstr "" -#: c/c-typeck.c:14415 cp/semantics.c:7314 +#: c/c-typeck.c:14475 cp/semantics.c:7342 #, gcc-internal-format msgid "%qE is not a variable in %<nontemporal%> clause" msgstr "" -#: c/c-typeck.c:14421 +#: c/c-typeck.c:14481 #, gcc-internal-format msgid "%qE appears more than once in %<nontemporal%> clauses" msgstr "" -#: c/c-typeck.c:14434 cp/semantics.c:7353 +#: c/c-typeck.c:14494 cp/semantics.c:7381 #, gcc-internal-format msgid "%qE is not a variable in %<allocate%> clause" msgstr "" -#: c/c-typeck.c:14440 +#: c/c-typeck.c:14500 #, gcc-internal-format msgid "%qE appears more than once in %<allocate%> clauses" msgstr "" -#: c/c-typeck.c:14509 cp/semantics.c:7439 +#: c/c-typeck.c:14569 cp/semantics.c:7467 #, gcc-internal-format msgid "%<depend%> clause with %<depobj%> dependence type on array section" msgstr "" -#: c/c-typeck.c:14520 cp/semantics.c:7464 +#: c/c-typeck.c:14580 cp/semantics.c:7492 #, gcc-internal-format msgid "%qE is not lvalue expression nor array section in %<depend%> clause" msgstr "" -#: c/c-typeck.c:14536 cp/semantics.c:7483 +#: c/c-typeck.c:14596 cp/semantics.c:7511 #, gcc-internal-format msgid "" "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> " "dependence type" msgstr "" -#: c/c-typeck.c:14545 cp/semantics.c:7494 +#: c/c-typeck.c:14605 cp/semantics.c:7522 #, gcc-internal-format msgid "" "%qE should not have %<omp_depend_t%> type in %<depend%> clause with " "dependence type other than %<depobj%>" msgstr "" -#: c/c-typeck.c:14588 cp/semantics.c:7575 +#: c/c-typeck.c:14648 cp/semantics.c:7603 #, gcc-internal-format msgid "array section does not have mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14613 c/c-typeck.c:14789 cp/semantics.c:7596 -#: cp/semantics.c:7798 +#: c/c-typeck.c:14673 c/c-typeck.c:14849 cp/semantics.c:7624 +#: cp/semantics.c:7826 #, gcc-internal-format msgid "%qD appears more than once in motion clauses" msgstr "" -#: c/c-typeck.c:14621 c/c-typeck.c:14795 cp/semantics.c:7604 -#: cp/semantics.c:7804 +#: c/c-typeck.c:14681 c/c-typeck.c:14855 cp/semantics.c:7632 +#: cp/semantics.c:7832 #, gcc-internal-format msgid "%qD appears more than once in map clauses" msgstr "" -#: c/c-typeck.c:14676 cp/semantics.c:7674 +#: c/c-typeck.c:14736 cp/semantics.c:7702 #, gcc-internal-format msgid "%qE does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14747 c/c-typeck.c:14853 cp/semantics.c:7756 -#: cp/semantics.c:7914 +#: c/c-typeck.c:14807 c/c-typeck.c:14913 cp/semantics.c:7784 +#: cp/semantics.c:7942 #, gcc-internal-format msgid "%qD does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14834 cp/semantics.c:7894 +#: c/c-typeck.c:14894 cp/semantics.c:7922 #, gcc-internal-format msgid "%qE is neither a variable nor a function name in clause %qs" msgstr "" -#: c/c-typeck.c:14862 cp/semantics.c:7924 +#: c/c-typeck.c:14922 cp/semantics.c:7952 #, gcc-internal-format msgid "%qE appears more than once on the same %<declare target%> directive" msgstr "" -#: c/c-typeck.c:14876 cp/semantics.c:7940 +#: c/c-typeck.c:14936 cp/semantics.c:7968 #, gcc-internal-format msgid "%qD is not an argument in %<uniform%> clause" msgstr "" -#: c/c-typeck.c:14879 cp/semantics.c:7943 +#: c/c-typeck.c:14939 cp/semantics.c:7971 #, gcc-internal-format msgid "%qE is not an argument in %<uniform%> clause" msgstr "" -#: c/c-typeck.c:14896 +#: c/c-typeck.c:14956 #, gcc-internal-format msgid "%qs variable is not a pointer" msgstr "" -#: c/c-typeck.c:14903 +#: c/c-typeck.c:14963 #, gcc-internal-format msgid "%qs variable is neither a pointer nor an array" msgstr "" -#: c/c-typeck.c:14933 c/c-typeck.c:15024 cp/semantics.c:8340 +#: c/c-typeck.c:14993 c/c-typeck.c:15084 cp/semantics.c:8368 #, gcc-internal-format msgid "%<order%> clause must not be used together with %<ordered%>" msgstr "" -#: c/c-typeck.c:14953 cp/semantics.c:7526 +#: c/c-typeck.c:15013 cp/semantics.c:7554 #, gcc-internal-format msgid "too many %qs clauses on a task construct" msgstr "" -#: c/c-typeck.c:15046 cp/semantics.c:8166 +#: c/c-typeck.c:15106 cp/semantics.c:8194 #, gcc-internal-format msgid "%<inbranch%> clause is incompatible with %<notinbranch%>" msgstr "" -#: c/c-typeck.c:15113 cp/semantics.c:8501 +#: c/c-typeck.c:15173 cp/semantics.c:8529 #, gcc-internal-format msgid "%qE is predetermined %qs for %qs" msgstr "" -#: c/c-typeck.c:15123 +#: c/c-typeck.c:15183 #, gcc-internal-format msgid "" "%<const%> qualified %qE may appear only in %<shared%> or %<firstprivate%> " "clauses" msgstr "" -#: c/c-typeck.c:15142 cp/semantics.c:8292 +#: c/c-typeck.c:15202 cp/semantics.c:8320 #, gcc-internal-format msgid "%<simdlen%> clause value is bigger than %<safelen%> clause value" msgstr "" -#: c/c-typeck.c:15154 cp/semantics.c:8305 +#: c/c-typeck.c:15214 cp/semantics.c:8333 #, gcc-internal-format msgid "" "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause" msgstr "" -#: c/c-typeck.c:15165 c/c-typeck.c:15173 cp/semantics.c:8314 -#: cp/semantics.c:8332 +#: c/c-typeck.c:15225 c/c-typeck.c:15233 cp/semantics.c:8342 +#: cp/semantics.c:8360 #, gcc-internal-format msgid "%qs clause specified together with %<inscan%> %<reduction%> clause" msgstr "" -#: c/c-typeck.c:15218 cp/semantics.c:8272 +#: c/c-typeck.c:15278 cp/semantics.c:8300 #, gcc-internal-format msgid "" "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause" msgstr "" -#: c/c-typeck.c:15255 cp/semantics.c:8322 +#: c/c-typeck.c:15315 cp/semantics.c:8350 #, gcc-internal-format msgid "%<nogroup%> clause must not be used together with %<reduction%> clause" msgstr "" -#: c/c-typeck.c:15265 cp/semantics.c:8351 +#: c/c-typeck.c:15325 cp/semantics.c:8379 #, gcc-internal-format msgid "%<detach%> clause must not be used together with %<mergeable%> clause" msgstr "" -#: c/c-typeck.c:15283 cp/semantics.c:8526 +#: c/c-typeck.c:15343 cp/semantics.c:8554 #, gcc-internal-format msgid "" "the event handle of a %<detach%> clause should not be in a data-sharing " "clause" msgstr "" -#: c/c-typeck.c:15457 +#: c/c-typeck.c:15517 #, gcc-internal-format msgid "cannot use %<va_arg%> with reverse storage order" msgstr "" -#: c/c-typeck.c:15462 +#: c/c-typeck.c:15522 #, gcc-internal-format msgid "second argument to %<va_arg%> is of incomplete type %qT" msgstr "" -#: c/c-typeck.c:15468 +#: c/c-typeck.c:15528 #, gcc-internal-format msgid "C++ requires promoted type, not enum type, in %<va_arg%>" msgstr "" @@ -47838,7 +47865,7 @@ msgstr "" msgid " no known conversion for argument %d from %qH to %qI" msgstr "" -#: cp/call.c:3729 cp/pt.c:6885 +#: cp/call.c:3729 cp/pt.c:6912 #, gcc-internal-format, gfc-internal-format msgid " candidate expects %d argument, %d provided" msgid_plural " candidate expects %d arguments, %d provided" @@ -47957,710 +47984,715 @@ msgstr "" msgid "conversion from %qH to %qI in a converted constant expression" msgstr "" -#: cp/call.c:4641 +#: cp/call.c:4644 #, gcc-internal-format msgid "no matching function for call to %<%D(%A)%>" msgstr "" -#: cp/call.c:4644 +#: cp/call.c:4647 #, gcc-internal-format msgid "call of overloaded %<%D(%A)%> is ambiguous" msgstr "" #. It's no good looking for an overloaded operator() on a #. pointer-to-member-function. -#: cp/call.c:4869 +#: cp/call.c:4872 #, gcc-internal-format msgid "" "pointer-to-member function %qE cannot be called without an object; consider " "using %<.*%> or %<->*%>" msgstr "" -#: cp/call.c:4941 +#: cp/call.c:4944 #, gcc-internal-format msgid "no match for call to %<(%T) (%A)%>" msgstr "" -#: cp/call.c:4955 +#: cp/call.c:4958 #, gcc-internal-format msgid "call of %<(%T) (%A)%> is ambiguous" msgstr "" -#: cp/call.c:5007 +#: cp/call.c:5010 #, gcc-internal-format msgid "ambiguous overload for " msgstr "" -#: cp/call.c:5008 +#: cp/call.c:5011 #, gcc-internal-format msgid "no match for " msgstr "" -#: cp/call.c:5011 +#: cp/call.c:5014 #, gcc-internal-format msgid " (operand types are %qT, %qT, and %qT)" msgstr "" -#: cp/call.c:5013 +#: cp/call.c:5016 #, gcc-internal-format msgid " (operand types are %qT and %qT)" msgstr "" -#: cp/call.c:5015 +#: cp/call.c:5018 #, gcc-internal-format msgid " (operand type is %qT)" msgstr "" -#: cp/call.c:5032 +#: cp/call.c:5035 #, gcc-internal-format msgid "ternary %<operator?:%>" msgstr "" -#: cp/call.c:5036 +#: cp/call.c:5039 #, gcc-internal-format msgid "ternary %<operator?:%> in %<%E ? %E : %E%>" msgstr "" -#: cp/call.c:5045 cp/call.c:5089 cp/call.c:5099 +#: cp/call.c:5048 cp/call.c:5092 cp/call.c:5102 #, gcc-internal-format msgid "%<operator%s%>" msgstr "" -#: cp/call.c:5048 +#: cp/call.c:5051 #, gcc-internal-format msgid "%<operator%s%> in %<%E%s%>" msgstr "" -#: cp/call.c:5055 +#: cp/call.c:5058 #, gcc-internal-format msgid "%<operator[]%>" msgstr "" -#: cp/call.c:5058 +#: cp/call.c:5061 #, gcc-internal-format msgid "%<operator[]%> in %<%E[%E]%>" msgstr "" -#: cp/call.c:5066 +#: cp/call.c:5069 #, gcc-internal-format msgid "%qs" msgstr "" -#: cp/call.c:5069 +#: cp/call.c:5072 #, gcc-internal-format msgid "%qs in %<%s %E%>" msgstr "" -#: cp/call.c:5075 +#: cp/call.c:5078 #, gcc-internal-format msgid "%<operator %s%>" msgstr "" -#: cp/call.c:5078 +#: cp/call.c:5081 #, gcc-internal-format msgid "%<operator %s%> in %<%s%E%>" msgstr "" -#: cp/call.c:5093 +#: cp/call.c:5096 #, gcc-internal-format msgid "%<operator%s%> in %<%E %s %E%>" msgstr "" -#: cp/call.c:5102 +#: cp/call.c:5105 #, gcc-internal-format msgid "%<operator%s%> in %<%s%E%>" msgstr "" -#: cp/call.c:5212 +#: cp/call.c:5215 #, gcc-internal-format msgid "ISO C++ forbids omitting the middle term of a %<?:%> expression" msgstr "" -#: cp/call.c:5279 +#: cp/call.c:5282 #, gcc-internal-format msgid "" "inferred scalar type %qT is not an integer or floating-point type of the " "same size as %qT" msgstr "" -#: cp/call.c:5296 cp/call.c:5303 +#: cp/call.c:5299 cp/call.c:5306 msgid "conversion of scalar %qH to vector %qI involves truncation" msgstr "" -#: cp/call.c:5359 +#: cp/call.c:5362 #, gcc-internal-format msgid "incompatible vector types in conditional expression: %qT, %qT and %qT" msgstr "" -#: cp/call.c:5439 +#: cp/call.c:5442 #, gcc-internal-format msgid "" "second operand to the conditional operator is of type %<void%>, but the " "third operand is neither a throw-expression nor of type %<void%>" msgstr "" -#: cp/call.c:5444 +#: cp/call.c:5447 #, gcc-internal-format msgid "" "third operand to the conditional operator is of type %<void%>, but the " "second operand is neither a throw-expression nor of type %<void%>" msgstr "" -#: cp/call.c:5493 cp/call.c:5608 cp/call.c:5779 +#: cp/call.c:5496 cp/call.c:5611 cp/call.c:5782 #, gcc-internal-format msgid "operands to %<?:%> have different types %qT and %qT" msgstr "" -#: cp/call.c:5497 +#: cp/call.c:5500 #, gcc-internal-format msgid " and each type can be converted to the other" msgstr "" -#: cp/call.c:5684 +#: cp/call.c:5687 msgid "" "implicit conversion from %qH to %qI to match other result of conditional" msgstr "" -#: cp/call.c:5700 +#: cp/call.c:5703 #, gcc-internal-format msgid "enumerated mismatch in conditional expression: %qT vs %qT" msgstr "" -#: cp/call.c:5713 +#: cp/call.c:5716 #, gcc-internal-format msgid "" "conditional expression between enumeration type %qT and floating-point type " "%qT is deprecated" msgstr "" -#: cp/call.c:5718 +#: cp/call.c:5721 #, gcc-internal-format msgid "" "conditional expression between floating-point type %qT and enumeration type " "%qT is deprecated" msgstr "" -#: cp/call.c:5734 +#: cp/call.c:5737 #, gcc-internal-format msgid "enumerated and non-enumerated type in conditional expression" msgstr "" -#: cp/call.c:6415 +#: cp/call.c:6419 #, gcc-internal-format msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead" msgstr "" -#: cp/call.c:6417 +#: cp/call.c:6421 #, gcc-internal-format msgid "no %<%D(int)%> declared for postfix %qs" msgstr "" -#: cp/call.c:6497 +#: cp/call.c:6501 #, gcc-internal-format msgid "" "in C++20 this comparison calls the current function recursively with " "reversed arguments" msgstr "" -#: cp/call.c:6548 +#: cp/call.c:6552 #, gcc-internal-format msgid "return type of %qD is not %qs" msgstr "" -#: cp/call.c:6550 +#: cp/call.c:6554 #, gcc-internal-format msgid "used as rewritten candidate for comparison of %qT and %qT" msgstr "" -#: cp/call.c:6621 +#: cp/call.c:6625 #, gcc-internal-format msgid "comparison between %q#T and %q#T" msgstr "" -#: cp/call.c:7005 +#: cp/call.c:7009 #, gcc-internal-format msgid "" "exception cleanup for this placement new selects non-placement %<operator " "delete%>" msgstr "" -#: cp/call.c:7008 +#: cp/call.c:7012 #, gcc-internal-format msgid "" "%qD is a usual (non-placement) deallocation function in C++14 (or with %<-" "fsized-deallocation%>)" msgstr "" -#: cp/call.c:7047 +#: cp/call.c:7051 #, gcc-internal-format msgid "%qD is a usual (non-placement) deallocation function" msgstr "" -#: cp/call.c:7221 +#: cp/call.c:7225 #, gcc-internal-format msgid "no corresponding deallocation function for %qD" msgstr "" -#: cp/call.c:7227 +#: cp/call.c:7231 #, gcc-internal-format msgid "no suitable %<operator %s%> for %qT" msgstr "" -#: cp/call.c:7263 +#: cp/call.c:7267 #, gcc-internal-format msgid "%q#D is private within this context" msgstr "" -#: cp/call.c:7264 cp/decl.c:8260 +#: cp/call.c:7268 cp/decl.c:8266 #, gcc-internal-format msgid "declared private here" msgstr "" -#: cp/call.c:7269 +#: cp/call.c:7273 #, gcc-internal-format msgid "%q#D is protected within this context" msgstr "" -#: cp/call.c:7270 cp/decl.c:8261 +#: cp/call.c:7274 cp/decl.c:8267 #, gcc-internal-format msgid "declared protected here" msgstr "" -#: cp/call.c:7277 +#: cp/call.c:7281 #, gcc-internal-format msgid "%q#D is inaccessible within this context" msgstr "" -#: cp/call.c:7358 +#: cp/call.c:7362 #, gcc-internal-format msgid "passing NULL to non-pointer argument %P of %qD" msgstr "" -#: cp/call.c:7361 cp/call.c:7380 cp/decl.c:9950 cp/typeck.c:4188 +#: cp/call.c:7365 cp/call.c:7384 cp/decl.c:9962 cp/typeck.c:4199 #, gcc-internal-format msgid " declared here" msgstr "" -#: cp/call.c:7365 +#: cp/call.c:7369 #, gcc-internal-format msgid "converting to non-pointer type %qT from NULL" msgstr "" -#: cp/call.c:7377 +#: cp/call.c:7381 #, gcc-internal-format msgid "converting %<false%> to pointer type for argument %P of %qD" msgstr "" -#: cp/call.c:7384 +#: cp/call.c:7388 #, gcc-internal-format msgid "converting %<false%> to pointer type %qT" msgstr "" -#: cp/call.c:7451 +#: cp/call.c:7455 #, gcc-internal-format msgid " initializing argument %P of %qD" msgstr "" -#: cp/call.c:7471 +#: cp/call.c:7475 #, gcc-internal-format msgid "" "conversions to arrays of unknown bound are only available with %<-std=c+" "+20%> or %<-std=gnu++20%>" msgstr "" -#: cp/call.c:7521 +#: cp/call.c:7525 #, gcc-internal-format msgid "too many braces around initializer for %qT" msgstr "" -#: cp/call.c:7532 +#: cp/call.c:7536 msgid "converting to %qH from %qI requires direct-initialization" msgstr "" -#: cp/call.c:7541 +#: cp/call.c:7545 msgid "invalid user-defined conversion from %qH to %qI" msgstr "" -#: cp/call.c:7578 cp/cvt.c:227 +#: cp/call.c:7582 cp/cvt.c:227 msgid "invalid conversion from %qH to %qI" msgstr "" -#: cp/call.c:7620 cp/call.c:7627 +#: cp/call.c:7624 cp/call.c:7631 #, gcc-internal-format msgid "" "converting to %qT from initializer list would use explicit constructor %qD" msgstr "" -#: cp/call.c:7623 +#: cp/call.c:7627 #, gcc-internal-format msgid "in C++11 and above a default constructor can be explicit" msgstr "" -#: cp/call.c:7893 +#: cp/call.c:7897 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI" msgstr "" -#: cp/call.c:7897 +#: cp/call.c:7906 +msgid "" +"cannot bind non-const lvalue reference of type %qH to a value of type %qI" +msgstr "" + +#: cp/call.c:7911 msgid "" "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI" msgstr "" -#: cp/call.c:7908 +#: cp/call.c:7923 msgid "cannot bind reference of type %qH to %qI due to different array bounds" msgstr "" -#: cp/call.c:7911 +#: cp/call.c:7926 msgid "binding reference of type %qH to %qI discards qualifiers" msgstr "" -#: cp/call.c:7950 +#: cp/call.c:7965 #, gcc-internal-format msgid "cannot bind bit-field %qE to %qT" msgstr "" -#: cp/call.c:7953 cp/call.c:7971 +#: cp/call.c:7968 cp/call.c:7986 #, gcc-internal-format msgid "cannot bind packed field %qE to %qT" msgstr "" -#: cp/call.c:7956 +#: cp/call.c:7971 #, gcc-internal-format msgid "cannot bind rvalue %qE to %qT" msgstr "" -#: cp/call.c:8151 +#: cp/call.c:8166 msgid "implicit conversion from %qH to %qI when passing argument to function" msgstr "" -#: cp/call.c:8175 cp/cvt.c:1978 +#: cp/call.c:8190 cp/cvt.c:1978 #, gcc-internal-format msgid "" "scoped enum %qT passed through %<...%> as %qT before %<-fabi-version=6%>, " "%qT after" msgstr "" -#: cp/call.c:8219 +#: cp/call.c:8234 #, gcc-internal-format msgid "" "passing objects of non-trivially-copyable type %q#T through %<...%> is " "conditionally supported" msgstr "" -#: cp/call.c:8255 +#: cp/call.c:8270 #, gcc-internal-format msgid "cannot receive reference type %qT through %<...%>" msgstr "" -#: cp/call.c:8265 +#: cp/call.c:8280 #, gcc-internal-format msgid "" "receiving objects of non-trivially-copyable type %q#T through %<...%> is " "conditionally-supported" msgstr "" -#: cp/call.c:8333 +#: cp/call.c:8348 #, gcc-internal-format msgid "recursive evaluation of default argument for %q#D" msgstr "" -#: cp/call.c:8342 +#: cp/call.c:8357 #, gcc-internal-format msgid "" "call to %qD uses the default argument for parameter %P, which is not yet " "defined" msgstr "" -#: cp/call.c:8442 +#: cp/call.c:8457 #, gcc-internal-format msgid "argument of function call might be a candidate for a format attribute" msgstr "" -#: cp/call.c:8504 +#: cp/call.c:8519 #, gcc-internal-format msgid "use of multiversioned function without a default" msgstr "" -#: cp/call.c:9083 +#: cp/call.c:9103 #, gcc-internal-format msgid "passing %qT as %<this%> argument discards qualifiers" msgstr "" -#: cp/call.c:9086 cp/call.c:11715 +#: cp/call.c:9106 cp/call.c:11736 #, gcc-internal-format msgid " in call to %qD" msgstr "" -#: cp/call.c:9111 +#: cp/call.c:9131 #, gcc-internal-format msgid "%qT is not an accessible base of %qT" msgstr "" -#: cp/call.c:9293 +#: cp/call.c:9313 #, gcc-internal-format msgid "passing arguments to ellipsis of inherited constructor %qD" msgstr "" -#: cp/call.c:9425 +#: cp/call.c:9445 #, gcc-internal-format msgid "" "assignment from temporary %<initializer_list%> does not extend the lifetime " "of the underlying array" msgstr "" -#: cp/call.c:9825 +#: cp/call.c:9845 #, gcc-internal-format msgid "%qD writing to an object of type %#qT with no trivial copy-assignment" msgstr "" -#: cp/call.c:9828 +#: cp/call.c:9848 #, gcc-internal-format msgid "%qD writing to an object of non-trivial type %#qT%s" msgstr "" -#: cp/call.c:9833 +#: cp/call.c:9853 #, gcc-internal-format msgid "%qD writing to an object of type %#qT with %qs member %qD" msgstr "" -#: cp/call.c:9838 +#: cp/call.c:9858 #, gcc-internal-format msgid "" "%qD writing to an object of type %#qT containing a pointer to data member%s" msgstr "" -#: cp/call.c:9853 +#: cp/call.c:9873 #, gcc-internal-format msgid "; use assignment or value-initialization instead" msgstr "" -#: cp/call.c:9855 +#: cp/call.c:9875 #, gcc-internal-format msgid "; use assignment instead" msgstr "" -#: cp/call.c:9857 +#: cp/call.c:9877 #, gcc-internal-format msgid "; use value-initialization instead" msgstr "" -#: cp/call.c:9860 +#: cp/call.c:9880 #, gcc-internal-format msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s" msgstr "" -#: cp/call.c:9863 +#: cp/call.c:9883 #, gcc-internal-format msgid "%qD clearing an object of non-trivial type %#qT%s" msgstr "" -#: cp/call.c:9865 +#: cp/call.c:9885 #, gcc-internal-format msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s" msgstr "" -#: cp/call.c:9886 +#: cp/call.c:9906 #, gcc-internal-format msgid "; use copy-assignment or copy-initialization instead" msgstr "" -#: cp/call.c:9888 +#: cp/call.c:9908 #, gcc-internal-format msgid "; use copy-assignment instead" msgstr "" -#: cp/call.c:9890 +#: cp/call.c:9910 #, gcc-internal-format msgid "; use copy-initialization instead" msgstr "" -#: cp/call.c:9893 +#: cp/call.c:9913 #, gcc-internal-format msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s" msgstr "" -#: cp/call.c:9896 +#: cp/call.c:9916 #, gcc-internal-format msgid "%qD writing to an object of non-trivially copyable type %#qT%s" msgstr "" -#: cp/call.c:9899 +#: cp/call.c:9919 #, gcc-internal-format msgid "%qD writing to an object with a deleted copy constructor" msgstr "" -#: cp/call.c:9910 +#: cp/call.c:9930 #, gcc-internal-format msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT" msgstr "" -#: cp/call.c:9922 +#: cp/call.c:9942 #, gcc-internal-format msgid "" "%qD copying an object of type %#qT with %qs member %qD from an array of " "%#qT; use assignment or copy-initialization instead" msgstr "" -#: cp/call.c:9939 +#: cp/call.c:9959 #, gcc-internal-format msgid "" "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes " "unchanged" msgstr "" -#: cp/call.c:9942 +#: cp/call.c:9962 #, gcc-internal-format msgid "" "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged" msgstr "" -#: cp/call.c:9952 +#: cp/call.c:9972 #, gcc-internal-format msgid "" "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and " "%<delete%> instead" msgstr "" -#: cp/call.c:9955 +#: cp/call.c:9975 #, gcc-internal-format msgid "" "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> " "and %<delete%> instead" msgstr "" -#: cp/call.c:9958 +#: cp/call.c:9978 #, gcc-internal-format msgid "%qD moving an object of type %#qT with deleted destructor" msgstr "" -#: cp/call.c:9967 +#: cp/call.c:9987 #, gcc-internal-format msgid "" "%qD moving an object of non-trivial type %#qT and size %E into a region of " "size %E" msgstr "" -#: cp/call.c:9989 +#: cp/call.c:10009 #, gcc-internal-format msgid "%#qT declared here" msgstr "" -#: cp/call.c:10089 +#: cp/call.c:10109 #, gcc-internal-format msgid "constructor delegates to itself" msgstr "" -#: cp/call.c:10363 cp/typeck.c:9482 +#: cp/call.c:10383 cp/typeck.c:9489 msgid "cannot convert %qH to %qI" msgstr "" -#: cp/call.c:10385 +#: cp/call.c:10405 #, gcc-internal-format msgid "no matching function for call to %<%T::operator %T(%A)%#V%>" msgstr "" -#: cp/call.c:10417 +#: cp/call.c:10437 #, gcc-internal-format msgid "no matching function for call to %<%T::%s%E(%A)%#V%>" msgstr "" -#: cp/call.c:10464 +#: cp/call.c:10484 #, gcc-internal-format msgid "call to non-function %qD" msgstr "" -#: cp/call.c:10502 cp/pt.c:16264 cp/typeck.c:3162 +#: cp/call.c:10522 cp/pt.c:16353 cp/typeck.c:3173 #, gcc-internal-format msgid "cannot call constructor %<%T::%D%> directly" msgstr "" -#: cp/call.c:10504 +#: cp/call.c:10524 #, gcc-internal-format msgid "for a function-style cast, remove the redundant %<::%D%>" msgstr "" -#: cp/call.c:10696 +#: cp/call.c:10716 #, gcc-internal-format msgid "no matching function for call to %<%s(%A)%>" msgstr "" -#: cp/call.c:10699 +#: cp/call.c:10719 #, gcc-internal-format msgid "call of overloaded %<%s(%A)%> is ambiguous" msgstr "" -#: cp/call.c:10722 +#: cp/call.c:10742 #, gcc-internal-format msgid "pure virtual %q#D called from non-static data member initializer" msgstr "" -#: cp/call.c:10727 +#: cp/call.c:10747 #, gcc-internal-format msgid "pure virtual %q#D called from constructor" msgstr "" -#: cp/call.c:10728 +#: cp/call.c:10748 #, gcc-internal-format msgid "pure virtual %q#D called from destructor" msgstr "" -#: cp/call.c:10751 +#: cp/call.c:10771 #, gcc-internal-format msgid "cannot call member function %qD without object" msgstr "" -#: cp/call.c:11713 +#: cp/call.c:11734 #, gcc-internal-format msgid "passing %qT chooses %qT over %qT" msgstr "" -#: cp/call.c:11782 +#: cp/call.c:11803 #, gcc-internal-format msgid "choosing %qD over %qD" msgstr "" -#: cp/call.c:11783 +#: cp/call.c:11804 msgid " for conversion from %qH to %qI" msgstr "" -#: cp/call.c:11786 +#: cp/call.c:11807 #, gcc-internal-format msgid " because conversion sequence for the argument is better" msgstr "" -#: cp/call.c:12036 +#: cp/call.c:12057 #, gcc-internal-format msgid "default argument mismatch in overload resolution" msgstr "" -#: cp/call.c:12040 +#: cp/call.c:12061 #, gcc-internal-format msgid " candidate 1: %q#F" msgstr "" -#: cp/call.c:12042 +#: cp/call.c:12063 #, gcc-internal-format msgid " candidate 2: %q#F" msgstr "" -#: cp/call.c:12088 +#: cp/call.c:12109 #, gcc-internal-format msgid "" "ISO C++ says that these are ambiguous, even though the worst conversion for " "the first is better than the worst conversion for the second:" msgstr "" -#: cp/call.c:12475 +#: cp/call.c:12496 #, gcc-internal-format msgid "a temporary bound to %qD only persists until the constructor exits" msgstr "" -#: cp/call.c:12630 +#: cp/call.c:12651 msgid "" "invalid initialization of non-const reference of type %qH from an rvalue of " "type %qI" msgstr "" -#: cp/call.c:12634 +#: cp/call.c:12655 msgid "" "invalid initialization of reference of type %qH from expression of type %qI" msgstr "" @@ -48692,1178 +48724,1178 @@ msgid "" "cannot convert from base class %qT to derived class %qT via virtual base %qT" msgstr "" -#: cp/class.c:371 +#: cp/class.c:378 #, gcc-internal-format msgid "cannot convert from %qT to base class %qT because %qT is incomplete" msgstr "" -#: cp/class.c:1184 +#: cp/class.c:1191 #, gcc-internal-format msgid "%q#D conflicts with version inherited from %qT" msgstr "" -#: cp/class.c:1187 +#: cp/class.c:1194 #, gcc-internal-format msgid "version inherited from %qT declared here" msgstr "" -#: cp/class.c:1205 +#: cp/class.c:1212 #, gcc-internal-format msgid "%q#D cannot be overloaded with %q#D" msgstr "" -#: cp/class.c:1207 cp/decl.c:1744 cp/decl.c:1756 cp/decl.c:1781 cp/decl.c:1804 -#: cp/name-lookup.c:2735 cp/name-lookup.c:3061 +#: cp/class.c:1214 cp/decl.c:1744 cp/decl.c:1756 cp/decl.c:1781 cp/decl.c:1804 +#: cp/name-lookup.c:2736 cp/name-lookup.c:3062 #, gcc-internal-format msgid "previous declaration %q#D" msgstr "" -#: cp/class.c:1249 +#: cp/class.c:1256 #, gcc-internal-format msgid "conflicting access specifications for method %q+D, ignored" msgstr "" -#: cp/class.c:1252 +#: cp/class.c:1259 #, gcc-internal-format msgid "conflicting access specifications for field %qE, ignored" msgstr "" -#: cp/class.c:1321 +#: cp/class.c:1328 #, gcc-internal-format msgid "%qD invalid in %q#T because of local method %q#D with same name" msgstr "" -#: cp/class.c:1325 +#: cp/class.c:1332 #, gcc-internal-format msgid "local method %q#D declared here" msgstr "" -#: cp/class.c:1331 +#: cp/class.c:1338 #, gcc-internal-format msgid "%qD invalid in %q#T because of local member %q#D with same name" msgstr "" -#: cp/class.c:1335 +#: cp/class.c:1342 #, gcc-internal-format msgid "local member %q#D declared here" msgstr "" -#: cp/class.c:1410 +#: cp/class.c:1417 #, gcc-internal-format msgid "%qD inherits the %E ABI tag that %qT (used in its return type) has" msgstr "" -#: cp/class.c:1413 cp/class.c:1420 cp/class.c:1427 cp/class.c:1439 +#: cp/class.c:1420 cp/class.c:1427 cp/class.c:1434 cp/class.c:1446 #: cp/cvt.c:1100 #, gcc-internal-format msgid "%qT declared here" msgstr "" -#: cp/class.c:1418 +#: cp/class.c:1425 #, gcc-internal-format msgid "%qD inherits the %E ABI tag that %qT (used in its type) has" msgstr "" -#: cp/class.c:1425 +#: cp/class.c:1432 #, gcc-internal-format msgid "%qT does not have the %E ABI tag that base %qT has" msgstr "" -#: cp/class.c:1433 +#: cp/class.c:1440 #, gcc-internal-format msgid "%qT does not have the %E ABI tag that %qT (used in the type of %qD) has" msgstr "" -#: cp/class.c:1744 +#: cp/class.c:1751 #, gcc-internal-format msgid "cannot derive from %<final%> base %qT in derived type %qT" msgstr "" -#: cp/class.c:2218 +#: cp/class.c:2225 #, gcc-internal-format msgid "all member functions in class %qT are private" msgstr "" -#: cp/class.c:2230 +#: cp/class.c:2237 #, gcc-internal-format msgid "%q#T only defines a private destructor and has no friends" msgstr "" -#: cp/class.c:2271 +#: cp/class.c:2278 #, gcc-internal-format msgid "%q#T only defines private constructors and has no friends" msgstr "" -#: cp/class.c:2275 +#: cp/class.c:2282 #, gcc-internal-format msgid "%q#D is public, but requires an existing %q#T object" msgstr "" -#: cp/class.c:2567 +#: cp/class.c:2574 #, gcc-internal-format msgid "no unique final overrider for %qD in %qT" msgstr "" -#: cp/class.c:2929 +#: cp/class.c:2936 #, gcc-internal-format msgid "%qD can be marked override" msgstr "" -#: cp/class.c:2932 +#: cp/class.c:2939 #, gcc-internal-format msgid "%q+#D marked %<override%>, but does not override" msgstr "" -#: cp/class.c:2947 +#: cp/class.c:2954 #, gcc-internal-format msgid "%q+#D marked %<final%>, but is not virtual" msgstr "" -#: cp/class.c:3010 +#: cp/class.c:3017 #, gcc-internal-format msgid "%qD was hidden" msgstr "" -#: cp/class.c:3011 +#: cp/class.c:3018 #, gcc-internal-format msgid " by %qD" msgstr "" -#: cp/class.c:3046 +#: cp/class.c:3053 #, gcc-internal-format msgid "" "%q#D invalid; an anonymous union may only have public non-static data members" msgstr "" -#: cp/class.c:3056 cp/parser.c:21822 +#: cp/class.c:3063 cp/parser.c:21859 #, gcc-internal-format msgid "this flexibility is deprecated and will be removed" msgstr "" -#: cp/class.c:3252 +#: cp/class.c:3259 #, gcc-internal-format msgid "the ellipsis in %qD is not inherited" msgstr "" -#: cp/class.c:3444 +#: cp/class.c:3451 #, gcc-internal-format msgid "bit-field %q#D with non-integral type %qT" msgstr "" -#: cp/class.c:3460 +#: cp/class.c:3467 #, gcc-internal-format msgid "bit-field %q+D width not an integer constant" msgstr "" -#: cp/class.c:3465 +#: cp/class.c:3472 #, gcc-internal-format msgid "negative width in bit-field %q+D" msgstr "" -#: cp/class.c:3470 +#: cp/class.c:3477 #, gcc-internal-format msgid "zero width for bit-field %q+D" msgstr "" -#: cp/class.c:3480 +#: cp/class.c:3487 #, gcc-internal-format msgid "width of %qD exceeds its type" msgstr "" -#: cp/class.c:3486 +#: cp/class.c:3493 #, gcc-internal-format msgid "%qD is too small to hold all values of %q#T" msgstr "" -#: cp/class.c:3547 +#: cp/class.c:3554 #, gcc-internal-format msgid "member %q+#D with constructor not allowed in union" msgstr "" -#: cp/class.c:3550 +#: cp/class.c:3557 #, gcc-internal-format msgid "member %q+#D with destructor not allowed in union" msgstr "" -#: cp/class.c:3552 +#: cp/class.c:3559 #, gcc-internal-format msgid "member %q+#D with copy assignment operator not allowed in union" msgstr "" -#: cp/class.c:3556 +#: cp/class.c:3563 #, gcc-internal-format msgid "" "unrestricted unions only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/class.c:3672 +#: cp/class.c:3679 #, gcc-internal-format msgid "in C++98 %q+D may not be static because it is a member of a union" msgstr "" -#: cp/class.c:3685 +#: cp/class.c:3692 #, gcc-internal-format msgid "non-static data member %q+D in a union may not have reference type %qT" msgstr "" -#: cp/class.c:3698 +#: cp/class.c:3705 #, gcc-internal-format msgid "data member %q+D invalidly declared function type" msgstr "" -#: cp/class.c:3704 +#: cp/class.c:3711 #, gcc-internal-format msgid "data member %q+D invalidly declared method type" msgstr "" -#: cp/class.c:3775 +#: cp/class.c:3782 #, gcc-internal-format msgid "ignoring packed attribute because of unpacked non-POD field %q#D" msgstr "" -#: cp/class.c:3827 +#: cp/class.c:3834 #, gcc-internal-format msgid "member %q+D cannot be declared as a %<mutable%> reference" msgstr "" -#: cp/class.c:3830 +#: cp/class.c:3837 #, gcc-internal-format msgid "member %q+D cannot be declared both %<const%> and %<mutable%>" msgstr "" -#: cp/class.c:3861 +#: cp/class.c:3868 #, gcc-internal-format msgid "multiple fields in union %qT initialized" msgstr "" -#: cp/class.c:3863 +#: cp/class.c:3870 #, gcc-internal-format msgid "initialized member %q+D declared here" msgstr "" -#: cp/class.c:3906 +#: cp/class.c:3913 #, gcc-internal-format msgid "field %q#D with same name as class" msgstr "" -#: cp/class.c:3934 +#: cp/class.c:3941 #, gcc-internal-format msgid "%q#T has pointer data members" msgstr "" -#: cp/class.c:3939 +#: cp/class.c:3946 #, gcc-internal-format msgid " but does not declare %<%T(const %T&)%>" msgstr "" -#: cp/class.c:3941 +#: cp/class.c:3948 #, gcc-internal-format msgid " or %<operator=(const %T&)%>" msgstr "" -#: cp/class.c:3945 +#: cp/class.c:3952 #, gcc-internal-format msgid " but does not declare %<operator=(const %T&)%>" msgstr "" -#: cp/class.c:3947 +#: cp/class.c:3954 #, gcc-internal-format msgid "pointer member %q+D declared here" msgstr "" -#: cp/class.c:4404 +#: cp/class.c:4411 #, gcc-internal-format msgid "alignment of %qD increased in %<-fabi-version=9%> (GCC 5.2)" msgstr "" -#: cp/class.c:4407 +#: cp/class.c:4414 #, gcc-internal-format msgid "alignment of %qD will increase in %<-fabi-version=9%>" msgstr "" -#: cp/class.c:4735 +#: cp/class.c:4742 #, gcc-internal-format msgid "initializer specified for non-virtual method %q+D" msgstr "" -#: cp/class.c:4768 +#: cp/class.c:4775 #, gcc-internal-format msgid "destructor for %qT is ambiguous" msgstr "" -#: cp/class.c:5224 +#: cp/class.c:5231 #, gcc-internal-format msgid "method overrides both %<transaction_pure%> and %qE methods" msgstr "" -#: cp/class.c:5245 +#: cp/class.c:5252 #, gcc-internal-format msgid "method declared %qE overriding %qE method" msgstr "" -#: cp/class.c:5901 cp/constexpr.c:245 +#: cp/class.c:5908 cp/constexpr.c:246 #, gcc-internal-format msgid "" "enclosing class of %<constexpr%> non-static member function %q+#D is not a " "literal type" msgstr "" -#: cp/class.c:5927 +#: cp/class.c:5934 #, gcc-internal-format msgid "%q+T is not literal because:" msgstr "" -#: cp/class.c:5930 +#: cp/class.c:5937 #, gcc-internal-format msgid " %qT is a closure type, which is only literal in C++17 and later" msgstr "" -#: cp/class.c:5933 +#: cp/class.c:5940 #, gcc-internal-format msgid " %q+T has a non-trivial destructor" msgstr "" -#: cp/class.c:5936 +#: cp/class.c:5943 #, gcc-internal-format msgid " %q+T does not have %<constexpr%> destructor" msgstr "" -#: cp/class.c:5944 +#: cp/class.c:5951 #, gcc-internal-format msgid "" " %q+T is not an aggregate, does not have a trivial default constructor, and " "has no %<constexpr%> constructor that is not a copy or move constructor" msgstr "" -#: cp/class.c:5977 +#: cp/class.c:5984 #, gcc-internal-format msgid " base class %qT of %q+T is non-literal" msgstr "" -#: cp/class.c:5992 +#: cp/class.c:5999 #, gcc-internal-format msgid " non-static data member %qD has non-literal type" msgstr "" -#: cp/class.c:5999 +#: cp/class.c:6006 #, gcc-internal-format msgid " non-static data member %qD has volatile type" msgstr "" -#: cp/class.c:6120 +#: cp/class.c:6127 #, gcc-internal-format msgid "base class %q#T has accessible non-virtual destructor" msgstr "" -#: cp/class.c:6149 +#: cp/class.c:6156 #, gcc-internal-format msgid "non-static reference %q#D in class without a constructor" msgstr "" -#: cp/class.c:6155 +#: cp/class.c:6162 #, gcc-internal-format msgid "non-static const member %q#D in class without a constructor" msgstr "" -#: cp/class.c:6474 +#: cp/class.c:6481 #, gcc-internal-format msgid "direct base %qT inaccessible in %qT due to ambiguity" msgstr "" -#: cp/class.c:6486 +#: cp/class.c:6493 #, gcc-internal-format msgid "virtual base %qT inaccessible in %qT due to ambiguity" msgstr "" -#: cp/class.c:6736 +#: cp/class.c:6743 #, gcc-internal-format msgid "" "offset of %qD is not ABI-compliant and may change in a future version of GCC" msgstr "" -#: cp/class.c:6915 +#: cp/class.c:6922 #, gcc-internal-format msgid "size of type %qT is too large (%qE bytes)" msgstr "" -#: cp/class.c:7201 +#: cp/class.c:7208 #, gcc-internal-format msgid "invalid use of %q#T with a zero-size array in %q#D" msgstr "" -#: cp/class.c:7203 +#: cp/class.c:7210 #, gcc-internal-format msgid "invalid use of %q#T with a flexible array member in %q#T" msgstr "" -#: cp/class.c:7208 +#: cp/class.c:7215 #, gcc-internal-format msgid "array member %q#D declared here" msgstr "" -#: cp/class.c:7236 +#: cp/class.c:7243 #, gcc-internal-format msgid "zero-size array member %qD not at end of %q#T" msgstr "" -#: cp/class.c:7238 +#: cp/class.c:7245 #, gcc-internal-format msgid "zero-size array member %qD in an otherwise empty %q#T" msgstr "" -#: cp/class.c:7247 cp/class.c:7278 +#: cp/class.c:7254 cp/class.c:7285 #, gcc-internal-format msgid "in the definition of %q#T" msgstr "" -#: cp/class.c:7255 +#: cp/class.c:7262 #, gcc-internal-format msgid "flexible array member %qD not at end of %q#T" msgstr "" -#: cp/class.c:7257 +#: cp/class.c:7264 #, gcc-internal-format msgid "flexible array member %qD in an otherwise empty %q#T" msgstr "" -#: cp/class.c:7276 +#: cp/class.c:7283 #, gcc-internal-format msgid "next member %q#D declared here" msgstr "" -#: cp/class.c:7390 cp/parser.c:25610 +#: cp/class.c:7397 cp/parser.c:25645 #, gcc-internal-format msgid "redefinition of %q#T" msgstr "" -#: cp/class.c:7527 +#: cp/class.c:7534 #, gcc-internal-format msgid "%q#T has virtual functions and accessible non-virtual destructor" msgstr "" -#: cp/class.c:7555 +#: cp/class.c:7562 #, gcc-internal-format msgid "type transparent %q#T does not have any fields" msgstr "" -#: cp/class.c:7561 +#: cp/class.c:7568 #, gcc-internal-format msgid "type transparent class %qT has base classes" msgstr "" -#: cp/class.c:7565 +#: cp/class.c:7572 #, gcc-internal-format msgid "type transparent class %qT has virtual functions" msgstr "" -#: cp/class.c:7571 +#: cp/class.c:7578 #, gcc-internal-format msgid "" "type transparent %q#T cannot be made transparent because the type of the " "first field has a different ABI from the class overall" msgstr "" -#: cp/class.c:7728 +#: cp/class.c:7735 #, gcc-internal-format msgid "definition of %qD does not match %<#include <initializer_list>%>" msgstr "" -#: cp/class.c:7739 +#: cp/class.c:7746 #, gcc-internal-format msgid "trying to finish struct, but kicked out due to previous parse errors" msgstr "" -#: cp/class.c:8246 +#: cp/class.c:8253 #, gcc-internal-format msgid "language string %<\"%E\"%> not recognized" msgstr "" -#: cp/class.c:8336 +#: cp/class.c:8343 #, gcc-internal-format msgid "cannot resolve overloaded function %qD based on conversion to type %qT" msgstr "" -#: cp/class.c:8494 +#: cp/class.c:8501 #, gcc-internal-format msgid "no matches converting function %qD to type %q#T" msgstr "" -#: cp/class.c:8521 +#: cp/class.c:8528 #, gcc-internal-format msgid "converting overloaded function %qD to type %q#T is ambiguous" msgstr "" -#: cp/class.c:8548 +#: cp/class.c:8555 #, gcc-internal-format msgid "assuming pointer to member %qD" msgstr "" -#: cp/class.c:8551 +#: cp/class.c:8558 #, gcc-internal-format msgid "(a pointer to member can only be formed with %<&%E%>)" msgstr "" -#: cp/class.c:8627 cp/class.c:8669 +#: cp/class.c:8634 cp/class.c:8676 #, gcc-internal-format msgid "not enough type information" msgstr "" -#: cp/class.c:8647 +#: cp/class.c:8654 #, gcc-internal-format msgid "cannot convert %qE from type %qT to type %qT" msgstr "" -#: cp/class.c:8921 +#: cp/class.c:8928 #, gcc-internal-format msgid "declaration of %q#D changes meaning of %qD" msgstr "" -#: cp/class.c:8924 +#: cp/class.c:8931 #, gcc-internal-format msgid "%qD declared here as %q#D" msgstr "" -#: cp/constexpr.c:106 +#: cp/constexpr.c:107 #, gcc-internal-format msgid "the type %qT of %<constexpr%> variable %qD is not literal" msgstr "" -#: cp/constexpr.c:117 +#: cp/constexpr.c:118 #, gcc-internal-format msgid "variable %qD of non-literal type %qT in %<constexpr%> function" msgstr "" -#: cp/constexpr.c:129 +#: cp/constexpr.c:130 #, gcc-internal-format msgid "%<constexpr%> variable %qD has variably-modified type %qT" msgstr "" -#: cp/constexpr.c:193 +#: cp/constexpr.c:194 #, gcc-internal-format msgid "inherited constructor %qD is not %<constexpr%>" msgstr "" -#: cp/constexpr.c:206 +#: cp/constexpr.c:207 #, gcc-internal-format msgid "invalid type for parameter %d of %<constexpr%> function %q+#D" msgstr "" -#: cp/constexpr.c:218 +#: cp/constexpr.c:219 #, gcc-internal-format msgid "lambdas are implicitly %<constexpr%> only in C++17 and later" msgstr "" -#: cp/constexpr.c:229 +#: cp/constexpr.c:230 #, gcc-internal-format msgid "invalid return type %qT of %<constexpr%> function %q+D" msgstr "" -#: cp/constexpr.c:256 +#: cp/constexpr.c:257 #, gcc-internal-format msgid "%q#T has virtual base classes" msgstr "" -#: cp/constexpr.c:517 +#: cp/constexpr.c:518 #, gcc-internal-format msgid "%<constexpr%> constructor does not have empty body" msgstr "" -#: cp/constexpr.c:780 +#: cp/constexpr.c:781 #, gcc-internal-format msgid "" "%<constexpr%> constructor for union %qT must initialize exactly one non-" "static data member" msgstr "" -#: cp/constexpr.c:841 +#: cp/constexpr.c:842 #, gcc-internal-format msgid "" "member %qD must be initialized by mem-initializer in %<constexpr%> " "constructor" msgstr "" -#: cp/constexpr.c:883 +#: cp/constexpr.c:884 #, gcc-internal-format msgid "body of %<constexpr%> function %qD not a return-statement" msgstr "" -#: cp/constexpr.c:972 +#: cp/constexpr.c:973 #, gcc-internal-format msgid "%qD is not usable as a %<constexpr%> function because:" msgstr "" -#: cp/constexpr.c:1445 cp/constexpr.c:2747 +#: cp/constexpr.c:1446 cp/constexpr.c:2783 #, gcc-internal-format msgid "%<constexpr%> call flows off the end of the function" msgstr "" -#: cp/constexpr.c:1450 cp/constexpr.c:1460 cp/constexpr.c:2942 +#: cp/constexpr.c:1451 cp/constexpr.c:1461 cp/constexpr.c:2997 #, gcc-internal-format msgid "%q+E is not a constant expression" msgstr "" -#: cp/constexpr.c:1735 cp/constexpr.c:7953 +#: cp/constexpr.c:1771 cp/constexpr.c:8016 #, gcc-internal-format msgid "call to internal function %qE" msgstr "" -#: cp/constexpr.c:1790 +#: cp/constexpr.c:1826 #, gcc-internal-format msgid "modifying a const object %qE is not allowed in a constant expression" msgstr "" -#: cp/constexpr.c:1792 +#: cp/constexpr.c:1828 #, gcc-internal-format msgid "originally declared %<const%> here" msgstr "" -#: cp/constexpr.c:2010 cp/constexpr.c:2065 cp/constexpr.c:2097 -#: cp/constexpr.c:2118 +#: cp/constexpr.c:2046 cp/constexpr.c:2101 cp/constexpr.c:2133 +#: cp/constexpr.c:2154 #, gcc-internal-format msgid "reference %<dynamic_cast%> failed" msgstr "" -#: cp/constexpr.c:2011 +#: cp/constexpr.c:2047 #, gcc-internal-format msgid "dynamic type %qT of its operand does not have a base class of type %qT" msgstr "" -#: cp/constexpr.c:2035 +#: cp/constexpr.c:2071 #, gcc-internal-format msgid "virtual table pointer is used uninitialized" msgstr "" -#: cp/constexpr.c:2066 cp/constexpr.c:2098 +#: cp/constexpr.c:2102 cp/constexpr.c:2134 #, gcc-internal-format msgid "" "static type %qT of its operand is a non-public base class of dynamic type %qT" msgstr "" -#: cp/constexpr.c:2120 +#: cp/constexpr.c:2156 #, gcc-internal-format msgid "%qT is an ambiguous base class of dynamic type %qT of its operand" msgstr "" -#: cp/constexpr.c:2123 +#: cp/constexpr.c:2159 #, gcc-internal-format msgid "" "dynamic type %qT of its operand does not have an unambiguous public base " "class %qT" msgstr "" -#: cp/constexpr.c:2198 cp/constexpr.c:2467 cp/constexpr.c:7985 +#: cp/constexpr.c:2234 cp/constexpr.c:2503 cp/constexpr.c:8048 #, gcc-internal-format msgid "call to non-%<constexpr%> function %qD" msgstr "" -#: cp/constexpr.c:2315 +#: cp/constexpr.c:2351 #, gcc-internal-format msgid "expression %qE does not designate a %<constexpr%> function" msgstr "" -#: cp/constexpr.c:2388 +#: cp/constexpr.c:2424 #, gcc-internal-format msgid "array deallocation of object allocated with non-array allocation" msgstr "" -#: cp/constexpr.c:2392 cp/constexpr.c:2414 +#: cp/constexpr.c:2428 cp/constexpr.c:2450 #, gcc-internal-format msgid "allocation performed here" msgstr "" -#: cp/constexpr.c:2410 +#: cp/constexpr.c:2446 #, gcc-internal-format msgid "non-array deallocation of object allocated with array allocation" msgstr "" -#: cp/constexpr.c:2427 +#: cp/constexpr.c:2463 #, gcc-internal-format msgid "deallocation of already deallocated storage" msgstr "" -#: cp/constexpr.c:2434 +#: cp/constexpr.c:2470 #, gcc-internal-format msgid "deallocation of storage that was not previously allocated" msgstr "" -#: cp/constexpr.c:2541 +#: cp/constexpr.c:2577 #, gcc-internal-format msgid "%qD called in a constant expression before its definition is complete" msgstr "" -#: cp/constexpr.c:2548 +#: cp/constexpr.c:2584 #, gcc-internal-format msgid "%qD called in a constant expression" msgstr "" -#: cp/constexpr.c:2552 +#: cp/constexpr.c:2588 #, gcc-internal-format msgid "%qD used before its definition" msgstr "" -#: cp/constexpr.c:2643 +#: cp/constexpr.c:2679 #, gcc-internal-format msgid "call has circular dependency" msgstr "" -#: cp/constexpr.c:2654 +#: cp/constexpr.c:2690 #, gcc-internal-format msgid "" "%<constexpr%> evaluation depth exceeds maximum of %d (use %<-fconstexpr-" "depth=%> to increase the maximum)" msgstr "" -#: cp/constexpr.c:2982 +#: cp/constexpr.c:3037 #, gcc-internal-format msgid "right operand of shift expression %q+E is negative" msgstr "" -#: cp/constexpr.c:2989 +#: cp/constexpr.c:3044 #, gcc-internal-format msgid "" "right operand of shift expression %q+E is greater than or equal to the " "precision %wu of the left operand" msgstr "" -#: cp/constexpr.c:3012 +#: cp/constexpr.c:3067 #, gcc-internal-format msgid "left operand of shift expression %q+E is negative" msgstr "" -#: cp/constexpr.c:3031 +#: cp/constexpr.c:3086 #, gcc-internal-format msgid "shift expression %q+E overflows" msgstr "" -#: cp/constexpr.c:3189 +#: cp/constexpr.c:3244 #, gcc-internal-format msgid "arithmetic involving a null pointer in %qE" msgstr "" -#: cp/constexpr.c:3578 +#: cp/constexpr.c:3633 #, gcc-internal-format msgid "" "array subscript value %qE is outside the bounds of array %qD of type %qT" msgstr "" -#: cp/constexpr.c:3581 +#: cp/constexpr.c:3636 #, gcc-internal-format msgid "" "nonzero array subscript %qE is used with array %qD of type %qT with unknown " "bounds" msgstr "" -#: cp/constexpr.c:3586 +#: cp/constexpr.c:3641 #, gcc-internal-format msgid "array subscript value %qE is outside the bounds of array type %qT" msgstr "" -#: cp/constexpr.c:3589 +#: cp/constexpr.c:3644 #, gcc-internal-format msgid "" "nonzero array subscript %qE is used with array of type %qT with unknown " "bounds" msgstr "" -#: cp/constexpr.c:3772 +#: cp/constexpr.c:3827 #, gcc-internal-format msgid "accessing uninitialized array element" msgstr "" -#: cp/constexpr.c:3820 +#: cp/constexpr.c:3875 #, gcc-internal-format msgid "dereferencing a null pointer in %qE" msgstr "" -#: cp/constexpr.c:3837 cp/constexpr.c:3936 cp/constexpr.c:6051 -#: cp/constexpr.c:6148 cp/constexpr.c:7905 +#: cp/constexpr.c:3892 cp/constexpr.c:3991 cp/constexpr.c:6114 +#: cp/constexpr.c:6211 cp/constexpr.c:7968 #, gcc-internal-format msgid "%qE is not a constant expression" msgstr "" -#: cp/constexpr.c:3843 +#: cp/constexpr.c:3898 #, gcc-internal-format msgid "mutable %qD is not usable in a constant expression" msgstr "" -#: cp/constexpr.c:3874 cp/constexpr.c:3896 +#: cp/constexpr.c:3929 cp/constexpr.c:3951 #, gcc-internal-format msgid "accessing uninitialized member %qD" msgstr "" -#: cp/constexpr.c:3876 +#: cp/constexpr.c:3931 #, gcc-internal-format msgid "" "accessing %qD member instead of initialized %qD member in constant expression" msgstr "" -#: cp/constexpr.c:4007 +#: cp/constexpr.c:4062 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is a union type" msgstr "" -#: cp/constexpr.c:4010 +#: cp/constexpr.c:4065 #, gcc-internal-format msgid "%qs is not a constant expression because %qT contains a union type" msgstr "" -#: cp/constexpr.c:4021 +#: cp/constexpr.c:4076 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is a pointer type" msgstr "" -#: cp/constexpr.c:4024 +#: cp/constexpr.c:4079 #, gcc-internal-format msgid "%qs is not a constant expression because %qT contains a pointer type" msgstr "" -#: cp/constexpr.c:4035 +#: cp/constexpr.c:4090 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is a reference type" msgstr "" -#: cp/constexpr.c:4038 +#: cp/constexpr.c:4093 #, gcc-internal-format msgid "%qs is not a constant expression because %qT contains a reference type" msgstr "" -#: cp/constexpr.c:4049 +#: cp/constexpr.c:4104 #, gcc-internal-format msgid "" "%qs is not a constant expression because %qT is a pointer to member type" msgstr "" -#: cp/constexpr.c:4053 +#: cp/constexpr.c:4108 #, gcc-internal-format msgid "" "%qs is not a constant expression because %qT contains a pointer to member " "type" msgstr "" -#: cp/constexpr.c:4064 +#: cp/constexpr.c:4119 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is volatile" msgstr "" -#: cp/constexpr.c:4067 +#: cp/constexpr.c:4122 #, gcc-internal-format msgid "" "%qs is not a constant expression because %qT contains a volatile subobject" msgstr "" -#: cp/constexpr.c:4108 +#: cp/constexpr.c:4163 #, gcc-internal-format msgid "%qs cannot be constant evaluated on the target" msgstr "" -#: cp/constexpr.c:4117 cp/constexpr.c:4127 +#: cp/constexpr.c:4172 cp/constexpr.c:4182 #, gcc-internal-format msgid "%qs cannot be constant evaluated because the type is too large" msgstr "" -#: cp/constexpr.c:4147 +#: cp/constexpr.c:4202 #, gcc-internal-format msgid "%qs cannot be constant evaluated because the argument cannot be encoded" msgstr "" -#: cp/constexpr.c:4171 +#: cp/constexpr.c:4226 #, gcc-internal-format msgid "%qs accessing uninitialized byte at offset %d" msgstr "" -#: cp/constexpr.c:4183 +#: cp/constexpr.c:4238 #, gcc-internal-format msgid "" "%qs cannot be constant evaluated because the argument cannot be interpreted" msgstr "" -#: cp/constexpr.c:4906 cp/constexpr.c:6718 +#: cp/constexpr.c:4961 cp/constexpr.c:6781 #, gcc-internal-format msgid "dereferencing a null pointer" msgstr "" -#: cp/constexpr.c:4926 +#: cp/constexpr.c:4981 #, gcc-internal-format msgid "accessing value of %qE through a %qT glvalue in a constant expression" msgstr "" -#: cp/constexpr.c:4971 +#: cp/constexpr.c:5026 #, gcc-internal-format msgid "" "the content of uninitialized storage is not usable in a constant expression" msgstr "" -#: cp/constexpr.c:4973 cp/constexpr.c:4980 +#: cp/constexpr.c:5028 cp/constexpr.c:5035 #, gcc-internal-format msgid "allocated here" msgstr "" -#: cp/constexpr.c:4978 +#: cp/constexpr.c:5033 #, gcc-internal-format msgid "use of allocated storage after deallocation in a constant expression" msgstr "" -#: cp/constexpr.c:4983 +#: cp/constexpr.c:5038 #, gcc-internal-format msgid "the value of %qD is not usable in a constant expression" msgstr "" -#: cp/constexpr.c:4990 +#: cp/constexpr.c:5045 #, gcc-internal-format msgid "%qD used in its own initializer" msgstr "" -#: cp/constexpr.c:4995 +#: cp/constexpr.c:5050 #, gcc-internal-format msgid "%q#D is not const" msgstr "" -#: cp/constexpr.c:4998 +#: cp/constexpr.c:5053 #, gcc-internal-format msgid "%q#D is volatile" msgstr "" -#: cp/constexpr.c:5003 cp/constexpr.c:5010 +#: cp/constexpr.c:5058 cp/constexpr.c:5065 #, gcc-internal-format msgid "%qD was not initialized with a constant expression" msgstr "" -#: cp/constexpr.c:5016 +#: cp/constexpr.c:5071 #, gcc-internal-format msgid "%qD was not declared %<constexpr%>" msgstr "" -#: cp/constexpr.c:5019 +#: cp/constexpr.c:5074 #, gcc-internal-format msgid "%qD does not have integral or enumeration type" msgstr "" -#: cp/constexpr.c:5265 +#: cp/constexpr.c:5320 #, gcc-internal-format msgid "modification of %qE is not a constant expression" msgstr "" -#: cp/constexpr.c:5334 +#: cp/constexpr.c:5389 #, gcc-internal-format msgid "change of the active member of a union from %qD to %qD" msgstr "" -#: cp/constexpr.c:5347 +#: cp/constexpr.c:5402 #, gcc-internal-format msgid "" "change of the active member of a union from %qD to %qD during initialization" msgstr "" -#: cp/constexpr.c:5739 cp/constexpr.c:6976 +#: cp/constexpr.c:5802 cp/constexpr.c:7039 #, gcc-internal-format msgid "statement is not a constant expression" msgstr "" -#: cp/constexpr.c:5845 +#: cp/constexpr.c:5908 #, gcc-internal-format msgid "" "%<constexpr%> loop iteration count exceeds limit of %d (use %<-fconstexpr-" "loop-limit=%> to increase the limit)" msgstr "" -#: cp/constexpr.c:5947 +#: cp/constexpr.c:6010 #, gcc-internal-format msgid "inline assembly is not a constant expression" msgstr "" -#: cp/constexpr.c:5948 +#: cp/constexpr.c:6011 #, gcc-internal-format msgid "" "only unevaluated inline assembly is allowed in a %<constexpr%> function in C+" "+20" msgstr "" -#: cp/constexpr.c:6013 +#: cp/constexpr.c:6076 #, gcc-internal-format msgid "value %qE of type %qT is not a constant expression" msgstr "" -#: cp/constexpr.c:6026 +#: cp/constexpr.c:6089 #, gcc-internal-format msgid "" "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-" "fconstexpr-ops-limit=%> to increase the limit)" msgstr "" -#: cp/constexpr.c:6208 cp/constexpr.c:8583 +#: cp/constexpr.c:6271 cp/constexpr.c:8646 #, gcc-internal-format msgid "temporary of non-literal type %qT in a constant expression" msgstr "" -#: cp/constexpr.c:6636 cp/constexpr.c:8110 +#: cp/constexpr.c:6699 cp/constexpr.c:8173 #, gcc-internal-format msgid "%<reinterpret_cast%> is not a constant expression" msgstr "" -#: cp/constexpr.c:6664 +#: cp/constexpr.c:6727 #, gcc-internal-format msgid "" "conversion from pointer type %qT to arithmetic type %qT in a constant " "expression" msgstr "" -#: cp/constexpr.c:6693 +#: cp/constexpr.c:6756 #, gcc-internal-format msgid "cast from %qT is not allowed" msgstr "" -#: cp/constexpr.c:6729 +#: cp/constexpr.c:6792 #, gcc-internal-format msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression" msgstr "" -#: cp/constexpr.c:6834 cp/constexpr.c:8409 cp/constexpr.c:8787 +#: cp/constexpr.c:6897 cp/constexpr.c:8472 cp/constexpr.c:8850 #, gcc-internal-format msgid "expression %qE is not a constant expression" msgstr "" -#: cp/constexpr.c:6929 +#: cp/constexpr.c:6992 #, gcc-internal-format msgid "unexpected template-id %qE" msgstr "" -#: cp/constexpr.c:6935 +#: cp/constexpr.c:6998 #, gcc-internal-format msgid "function concept must be called" msgstr "" -#: cp/constexpr.c:6960 +#: cp/constexpr.c:7023 #, gcc-internal-format msgid "address of a call to %qs is not a constant expression" msgstr "" -#: cp/constexpr.c:6979 +#: cp/constexpr.c:7042 #, gcc-internal-format msgid "unexpected expression %qE of kind %s" msgstr "" -#: cp/constexpr.c:7209 +#: cp/constexpr.c:7272 #, gcc-internal-format msgid "" "%qE is not a constant expression because it refers to mutable subobjects of " "%qT" msgstr "" -#: cp/constexpr.c:7217 +#: cp/constexpr.c:7280 #, gcc-internal-format msgid "" "%qE is not a constant expression because it refers to an incompletely " "initialized variable" msgstr "" -#: cp/constexpr.c:7232 +#: cp/constexpr.c:7295 #, gcc-internal-format msgid "" "%qE is not a constant expression because it refers to a result of %<operator " "new%>" msgstr "" -#: cp/constexpr.c:7243 +#: cp/constexpr.c:7306 #, gcc-internal-format msgid "" "%qE is not a constant expression because allocated storage has not been " "deallocated" msgstr "" -#: cp/constexpr.c:7265 +#: cp/constexpr.c:7328 #, gcc-internal-format msgid "immediate evaluation returns address of immediate function %qD" msgstr "" -#: cp/constexpr.c:7845 +#: cp/constexpr.c:7908 #, gcc-internal-format msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT" msgstr "" -#: cp/constexpr.c:8075 +#: cp/constexpr.c:8138 #, gcc-internal-format msgid "lambda capture of %qE is not a constant expression" msgstr "" -#: cp/constexpr.c:8078 +#: cp/constexpr.c:8141 #, gcc-internal-format msgid "because it is used as a glvalue" msgstr "" -#: cp/constexpr.c:8130 +#: cp/constexpr.c:8193 #, gcc-internal-format msgid "%<reinterpret_cast%> from integer to pointer" msgstr "" -#: cp/constexpr.c:8163 +#: cp/constexpr.c:8226 #, gcc-internal-format msgid "" "address-of an object %qE with thread local or automatic storage is not a " "constant expression" msgstr "" -#: cp/constexpr.c:8202 +#: cp/constexpr.c:8265 #, gcc-internal-format msgid "use of %<this%> in a constant expression" msgstr "" -#: cp/constexpr.c:8356 +#: cp/constexpr.c:8419 #, gcc-internal-format msgid "lambda-expression is not a constant expression before C++17" msgstr "" -#: cp/constexpr.c:8423 +#: cp/constexpr.c:8486 #, gcc-internal-format msgid "virtual functions cannot be %<constexpr%> before C++20" msgstr "" -#: cp/constexpr.c:8438 +#: cp/constexpr.c:8501 #, gcc-internal-format msgid "" "%<typeid%> is not a constant expression because %qE is of polymorphic type" msgstr "" -#: cp/constexpr.c:8502 +#: cp/constexpr.c:8565 #, gcc-internal-format msgid "cast to non-integral type %qT in a constant expression" msgstr "" -#: cp/constexpr.c:8552 +#: cp/constexpr.c:8615 #, gcc-internal-format msgid "%qD declared %<static%> in %<constexpr%> context" msgstr "" -#: cp/constexpr.c:8559 +#: cp/constexpr.c:8622 #, gcc-internal-format msgid "%qD declared %<thread_local%> in %<constexpr%> context" msgstr "" -#: cp/constexpr.c:8632 +#: cp/constexpr.c:8695 #, gcc-internal-format msgid "division by zero is not a constant expression" msgstr "" -#: cp/constexpr.c:8728 +#: cp/constexpr.c:8791 #, gcc-internal-format msgid "%<delete[]%> is not a constant expression" msgstr "" -#: cp/constexpr.c:8795 +#: cp/constexpr.c:8858 #, gcc-internal-format msgid "non-constant array initialization" msgstr "" -#: cp/constexpr.c:8825 +#: cp/constexpr.c:8888 #, gcc-internal-format msgid "%<goto%> is not a constant expression" msgstr "" -#: cp/constexpr.c:8834 +#: cp/constexpr.c:8897 #, gcc-internal-format msgid "label definition is not a constant expression" msgstr "" -#: cp/constexpr.c:8853 +#: cp/constexpr.c:8916 #, gcc-internal-format, gfc-internal-format msgid "unexpected AST of kind %s" msgstr "" @@ -49873,56 +49905,56 @@ msgstr "" msgid "both branches of %<if%> statement marked as %qs" msgstr "" -#: cp/cp-gimplify.c:1325 +#: cp/cp-gimplify.c:1333 #, gcc-internal-format msgid "%<throw%> will always call %<terminate%>" msgstr "" -#: cp/cp-gimplify.c:1328 +#: cp/cp-gimplify.c:1336 #, gcc-internal-format msgid "in C++11 destructors default to %<noexcept%>" msgstr "" -#: cp/cp-gimplify.c:1340 +#: cp/cp-gimplify.c:1348 #, gcc-internal-format msgid "" "in C++11 this %<throw%> will call %<terminate%> because destructors default " "to %<noexcept%>" msgstr "" -#: cp/cp-gimplify.c:2793 +#: cp/cp-gimplify.c:2773 #, gcc-internal-format msgid "ignoring attribute %qE after earlier %qE" msgstr "" -#: cp/cp-gimplify.c:2815 cp/cp-gimplify.c:2827 cp/decl.c:4066 cp/method.c:978 +#: cp/cp-gimplify.c:2795 cp/cp-gimplify.c:2807 cp/decl.c:4048 cp/method.c:978 #, gcc-internal-format msgid "%qD is not a type" msgstr "" -#: cp/cp-gimplify.c:2833 +#: cp/cp-gimplify.c:2813 #, gcc-internal-format msgid "%qD is not a class type" msgstr "" -#: cp/cp-gimplify.c:2850 +#: cp/cp-gimplify.c:2830 #, gcc-internal-format msgid "%qD does not have %<const char *%> type" msgstr "" -#: cp/cp-gimplify.c:2861 +#: cp/cp-gimplify.c:2841 #, gcc-internal-format msgid "%qD does not have integral type" msgstr "" -#: cp/cp-gimplify.c:2873 +#: cp/cp-gimplify.c:2853 #, gcc-internal-format msgid "" "%<std::source_location::__impl%> does not contain only non-static data " "members %<_M_file_name%>, %<_M_function_name%>, %<_M_line%> and %<_M_column%>" msgstr "" -#: cp/cp-gimplify.c:2977 +#: cp/cp-gimplify.c:2957 #, gcc-internal-format msgid "evaluating %qs" msgstr "" @@ -49963,7 +49995,7 @@ msgstr "" msgid "conversion from %qH to %qI discards qualifiers" msgstr "" -#: cp/cvt.c:498 cp/typeck.c:7969 +#: cp/cvt.c:498 cp/typeck.c:7976 #, gcc-internal-format msgid "casting %qT to %qT does not dereference pointer" msgstr "" @@ -50408,7 +50440,7 @@ msgstr "" msgid "redeclaration %qD differs in %qs from previous declaration" msgstr "" -#: cp/decl.c:1303 cp/decl.c:15319 +#: cp/decl.c:1303 cp/decl.c:15337 #, gcc-internal-format msgid "previous declaration %qD" msgstr "" @@ -50540,8 +50572,8 @@ msgstr "" msgid "%q#D previously defined here" msgstr "" -#: cp/decl.c:1901 cp/name-lookup.c:3187 cp/name-lookup.c:3216 -#: cp/name-lookup.c:3240 +#: cp/decl.c:1901 cp/name-lookup.c:3188 cp/name-lookup.c:3217 +#: cp/name-lookup.c:3241 #, gcc-internal-format msgid "%q#D previously declared here" msgstr "" @@ -50576,53 +50608,53 @@ msgstr "" msgid "previous specification in %q#D here" msgstr "" -#: cp/decl.c:2047 +#: cp/decl.c:2045 #, gcc-internal-format msgid "declaration %qD conflicts with builtin" msgstr "" -#: cp/decl.c:2055 +#: cp/decl.c:2053 #, gcc-internal-format msgid "declaration %qD conflicts with import" msgstr "" -#: cp/decl.c:2056 +#: cp/decl.c:2054 #, gcc-internal-format msgid "import declared %q#D here" msgstr "" -#: cp/decl.c:2064 +#: cp/decl.c:2062 #, gcc-internal-format msgid "conflicting exporting declaration %qD" msgstr "" -#: cp/decl.c:2065 +#: cp/decl.c:2063 #, gcc-internal-format msgid "previous declaration %q#D here" msgstr "" -#: cp/decl.c:2090 +#: cp/decl.c:2088 #, gcc-internal-format msgid "previous definition of %qD here" msgstr "" -#: cp/decl.c:2091 +#: cp/decl.c:2089 #, gcc-internal-format msgid "previous declaration of %qD here" msgstr "" -#: cp/decl.c:2104 +#: cp/decl.c:2102 #, gcc-internal-format msgid "" "function %qD declared %<[[noreturn]]%> but its first declaration was not" msgstr "" -#: cp/decl.c:2149 +#: cp/decl.c:2147 #, gcc-internal-format msgid "redundant redeclaration of %qD in same scope" msgstr "" -#: cp/decl.c:2166 +#: cp/decl.c:2164 #, gcc-internal-format msgid "deleted definition of %qD is not first declaration" msgstr "" @@ -50635,12 +50667,12 @@ msgstr "" #. that specialization that would cause an implicit #. instantiation to take place, in every translation unit in #. which such a use occurs. -#: cp/decl.c:2640 +#: cp/decl.c:2635 #, gcc-internal-format msgid "explicit specialization of %qD after first use" msgstr "" -#: cp/decl.c:2779 +#: cp/decl.c:2774 #, gcc-internal-format msgid "" "%qD: visibility attribute ignored because it conflicts with previous " @@ -50648,37 +50680,37 @@ msgid "" msgstr "" #. Reject two definitions. -#: cp/decl.c:3052 cp/decl.c:3081 cp/decl.c:3123 cp/decl.c:3140 cp/decl.c:3243 +#: cp/decl.c:3034 cp/decl.c:3063 cp/decl.c:3105 cp/decl.c:3122 cp/decl.c:3225 #, gcc-internal-format msgid "redefinition of %q#D" msgstr "" -#: cp/decl.c:3068 +#: cp/decl.c:3050 #, gcc-internal-format msgid "%qD conflicts with used function" msgstr "" -#: cp/decl.c:3078 +#: cp/decl.c:3060 #, gcc-internal-format msgid "%q#D not declared in class" msgstr "" -#: cp/decl.c:3092 cp/decl.c:3150 +#: cp/decl.c:3074 cp/decl.c:3132 #, gcc-internal-format msgid "%q+D redeclared inline with %<gnu_inline%> attribute" msgstr "" -#: cp/decl.c:3095 cp/decl.c:3153 +#: cp/decl.c:3077 cp/decl.c:3135 #, gcc-internal-format msgid "%q+D redeclared inline without %<gnu_inline%> attribute" msgstr "" -#: cp/decl.c:3102 cp/decl.c:3160 +#: cp/decl.c:3084 cp/decl.c:3142 #, gcc-internal-format msgid "deduction guide %q+D redeclared" msgstr "" -#: cp/decl.c:3109 +#: cp/decl.c:3091 #, gcc-internal-format msgid "comparison operator %q+D defaulted after its first declaration" msgstr "" @@ -50686,2382 +50718,2397 @@ msgstr "" #. is_primary= #. is_partial= #. is_friend_decl= -#: cp/decl.c:3174 +#: cp/decl.c:3156 #, gcc-internal-format msgid "redeclaration of friend %q#D may not have default template arguments" msgstr "" -#: cp/decl.c:3189 +#: cp/decl.c:3171 #, gcc-internal-format msgid "thread-local declaration of %q#D follows non-thread-local declaration" msgstr "" -#: cp/decl.c:3192 +#: cp/decl.c:3174 #, gcc-internal-format msgid "non-thread-local declaration of %q#D follows thread-local declaration" msgstr "" -#: cp/decl.c:3207 cp/decl.c:3251 cp/name-lookup.c:2730 cp/name-lookup.c:3214 -#: cp/name-lookup.c:3238 +#: cp/decl.c:3189 cp/decl.c:3233 cp/name-lookup.c:2731 cp/name-lookup.c:3215 +#: cp/name-lookup.c:3239 #, gcc-internal-format msgid "redeclaration of %q#D" msgstr "" -#: cp/decl.c:3234 +#: cp/decl.c:3216 #, gcc-internal-format msgid "redundant redeclaration of %<constexpr%> static data member %qD" msgstr "" -#: cp/decl.c:3300 +#: cp/decl.c:3282 #, gcc-internal-format msgid "local label %qE conflicts with existing label" msgstr "" -#: cp/decl.c:3301 +#: cp/decl.c:3283 #, gcc-internal-format msgid "previous label" msgstr "" -#: cp/decl.c:3395 +#: cp/decl.c:3377 #, gcc-internal-format msgid " from here" msgstr "" -#: cp/decl.c:3418 cp/decl.c:3646 +#: cp/decl.c:3400 cp/decl.c:3628 #, gcc-internal-format msgid " exits OpenMP structured block" msgstr "" -#: cp/decl.c:3446 +#: cp/decl.c:3428 #, gcc-internal-format msgid " crosses initialization of %q#D" msgstr "" -#: cp/decl.c:3449 +#: cp/decl.c:3431 #, gcc-internal-format msgid " enters scope of %q#D, which has non-trivial destructor" msgstr "" -#: cp/decl.c:3463 cp/decl.c:3617 +#: cp/decl.c:3445 cp/decl.c:3599 #, gcc-internal-format msgid " enters %<try%> block" msgstr "" -#: cp/decl.c:3469 cp/decl.c:3599 cp/decl.c:3619 +#: cp/decl.c:3451 cp/decl.c:3581 cp/decl.c:3601 #, gcc-internal-format msgid " enters %<catch%> block" msgstr "" -#: cp/decl.c:3475 cp/decl.c:3629 +#: cp/decl.c:3457 cp/decl.c:3611 #, gcc-internal-format msgid " enters OpenMP structured block" msgstr "" -#: cp/decl.c:3481 cp/decl.c:3621 +#: cp/decl.c:3463 cp/decl.c:3603 #, gcc-internal-format msgid " enters synchronized or atomic statement" msgstr "" -#: cp/decl.c:3488 cp/decl.c:3623 +#: cp/decl.c:3470 cp/decl.c:3605 #, gcc-internal-format msgid " enters %<constexpr if%> statement" msgstr "" -#: cp/decl.c:3606 +#: cp/decl.c:3588 #, gcc-internal-format msgid " skips initialization of %q#D" msgstr "" -#: cp/decl.c:3609 +#: cp/decl.c:3591 #, gcc-internal-format msgid " enters scope of %q#D which has non-trivial destructor" msgstr "" -#: cp/decl.c:4073 cp/parser.c:6807 +#: cp/decl.c:4055 cp/parser.c:6807 #, gcc-internal-format msgid "%qD used without template arguments" msgstr "" -#: cp/decl.c:4084 +#: cp/decl.c:4061 +#, gcc-internal-format +msgid "%qD is a function, not a type" +msgstr "" + +#: cp/decl.c:4072 #, gcc-internal-format msgid "%q#T is not a class" msgstr "" -#: cp/decl.c:4112 cp/decl.c:4198 +#: cp/decl.c:4100 cp/decl.c:4186 #, gcc-internal-format msgid "no class template named %q#T in %q#T" msgstr "" -#: cp/decl.c:4113 +#: cp/decl.c:4101 #, gcc-internal-format msgid "no type named %q#T in %q#T" msgstr "" -#: cp/decl.c:4126 +#: cp/decl.c:4114 #, gcc-internal-format msgid "lookup of %qT in %qT is ambiguous" msgstr "" -#: cp/decl.c:4135 +#: cp/decl.c:4123 #, gcc-internal-format msgid "%<typename %T::%D%> names %q#T, which is not a class template" msgstr "" -#: cp/decl.c:4142 +#: cp/decl.c:4130 #, gcc-internal-format msgid "%<typename %T::%D%> names %q#T, which is not a type" msgstr "" -#: cp/decl.c:4207 +#: cp/decl.c:4195 #, gcc-internal-format msgid "template parameters do not match template %qD" msgstr "" -#: cp/decl.c:4543 +#: cp/decl.c:4531 #, gcc-internal-format msgid "%<-faligned-new=%d%> is not a power of two" msgstr "" -#: cp/decl.c:5042 +#: cp/decl.c:5038 #, gcc-internal-format msgid "member %q+#D with constructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:5045 +#: cp/decl.c:5041 #, gcc-internal-format msgid "member %q+#D with destructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:5048 +#: cp/decl.c:5044 #, gcc-internal-format msgid "" "member %q+#D with copy assignment operator not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:5067 +#: cp/decl.c:5063 #, gcc-internal-format msgid "attribute ignored in declaration of %q#T" msgstr "" -#: cp/decl.c:5070 +#: cp/decl.c:5066 #, gcc-internal-format msgid "attribute for %q#T must follow the %qs keyword" msgstr "" -#: cp/decl.c:5112 +#: cp/decl.c:5108 #, gcc-internal-format msgid "multiple types in one declaration" msgstr "" -#: cp/decl.c:5117 +#: cp/decl.c:5113 #, gcc-internal-format msgid "redeclaration of C++ built-in type %qT" msgstr "" -#: cp/decl.c:5134 +#: cp/decl.c:5130 #, gcc-internal-format msgid "%<auto%> can only be specified for variables or function declarations" msgstr "" -#: cp/decl.c:5167 +#: cp/decl.c:5163 #, gcc-internal-format msgid "missing type-name in typedef-declaration" msgstr "" -#: cp/decl.c:5175 +#: cp/decl.c:5171 #, gcc-internal-format msgid "ISO C++ prohibits anonymous structs" msgstr "" -#: cp/decl.c:5182 +#: cp/decl.c:5178 #, gcc-internal-format msgid "%<inline%> can only be specified for functions" msgstr "" -#: cp/decl.c:5185 +#: cp/decl.c:5181 #, gcc-internal-format msgid "%<virtual%> can only be specified for functions" msgstr "" -#: cp/decl.c:5190 +#: cp/decl.c:5186 #, gcc-internal-format msgid "%<friend%> can only be specified inside a class" msgstr "" -#: cp/decl.c:5193 +#: cp/decl.c:5189 #, gcc-internal-format msgid "%<explicit%> can only be specified for constructors" msgstr "" -#: cp/decl.c:5196 +#: cp/decl.c:5192 #, gcc-internal-format msgid "a storage class can only be specified for objects and functions" msgstr "" -#: cp/decl.c:5200 +#: cp/decl.c:5196 #, gcc-internal-format msgid "%<const%> can only be specified for objects and functions" msgstr "" -#: cp/decl.c:5204 +#: cp/decl.c:5200 #, gcc-internal-format msgid "%<volatile%> can only be specified for objects and functions" msgstr "" -#: cp/decl.c:5208 +#: cp/decl.c:5204 #, gcc-internal-format msgid "%<__restrict%> can only be specified for objects and functions" msgstr "" -#: cp/decl.c:5212 +#: cp/decl.c:5208 #, gcc-internal-format msgid "%<__thread%> can only be specified for objects and functions" msgstr "" -#: cp/decl.c:5216 +#: cp/decl.c:5212 #, gcc-internal-format msgid "%<typedef%> was ignored in this declaration" msgstr "" -#: cp/decl.c:5219 cp/decl.c:5222 cp/decl.c:5225 +#: cp/decl.c:5215 cp/decl.c:5218 cp/decl.c:5221 #, gcc-internal-format msgid "%qs cannot be used for type declarations" msgstr "" -#: cp/decl.c:5247 +#: cp/decl.c:5243 #, gcc-internal-format msgid "attribute ignored in explicit instantiation %q#T" msgstr "" -#: cp/decl.c:5250 +#: cp/decl.c:5246 #, gcc-internal-format msgid "no attribute can be applied to an explicit instantiation" msgstr "" -#: cp/decl.c:5322 +#: cp/decl.c:5318 #, gcc-internal-format msgid "ignoring attributes applied to class type %qT outside of definition" msgstr "" #. A template type parameter or other dependent type. -#: cp/decl.c:5326 +#: cp/decl.c:5322 #, gcc-internal-format msgid "" "ignoring attributes applied to dependent type %qT without an associated " "declaration" msgstr "" -#: cp/decl.c:5390 cp/decl2.c:859 +#: cp/decl.c:5386 cp/decl2.c:859 #, gcc-internal-format msgid "typedef %qD is initialized (use %qs instead)" msgstr "" -#: cp/decl.c:5403 +#: cp/decl.c:5399 #, gcc-internal-format msgid "declaration of %q#D has %<extern%> and is initialized" msgstr "" -#: cp/decl.c:5441 +#: cp/decl.c:5437 #, gcc-internal-format msgid "definition of %q#D is marked %<dllimport%>" msgstr "" -#: cp/decl.c:5465 +#: cp/decl.c:5461 #, gcc-internal-format msgid "%q+#D is not a static data member of %q#T" msgstr "" -#: cp/decl.c:5473 +#: cp/decl.c:5469 #, gcc-internal-format msgid "non-member-template declaration of %qD" msgstr "" -#: cp/decl.c:5474 +#: cp/decl.c:5470 #, gcc-internal-format msgid "does not match member template declaration here" msgstr "" -#: cp/decl.c:5486 +#: cp/decl.c:5482 #, gcc-internal-format msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>" msgstr "" -#: cp/decl.c:5498 +#: cp/decl.c:5494 #, gcc-internal-format msgid "duplicate initialization of %qD" msgstr "" -#: cp/decl.c:5546 +#: cp/decl.c:5542 #, gcc-internal-format msgid "declaration of %q#D outside of class is not definition" msgstr "" -#: cp/decl.c:5563 +#: cp/decl.c:5559 #, gcc-internal-format msgid "block-scope extern declaration %q#D not permitted in module purview" msgstr "" -#: cp/decl.c:5598 +#: cp/decl.c:5594 #, gcc-internal-format msgid "%qD declared %<thread_local%> in %qs function" msgstr "" -#: cp/decl.c:5603 +#: cp/decl.c:5599 #, gcc-internal-format msgid "%qD declared %<static%> in %qs function" msgstr "" -#: cp/decl.c:5675 +#: cp/decl.c:5671 #, gcc-internal-format msgid "variable %q#D has initializer but incomplete type" msgstr "" -#: cp/decl.c:5681 cp/decl.c:6834 +#: cp/decl.c:5677 cp/decl.c:6830 #, gcc-internal-format msgid "elements of array %q#D have incomplete type" msgstr "" -#: cp/decl.c:5691 +#: cp/decl.c:5687 #, gcc-internal-format msgid "aggregate %q#D has incomplete type and cannot be defined" msgstr "" -#: cp/decl.c:5758 +#: cp/decl.c:5754 #, gcc-internal-format msgid "%qD declared as reference but not initialized" msgstr "" -#: cp/decl.c:5841 +#: cp/decl.c:5837 #, gcc-internal-format msgid "name used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.c:5847 +#: cp/decl.c:5843 #, gcc-internal-format msgid "name %qD used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.c:5866 +#: cp/decl.c:5862 #, gcc-internal-format msgid "non-trivial designated initializers not supported" msgstr "" -#: cp/decl.c:5870 +#: cp/decl.c:5866 #, gcc-internal-format msgid "C99 designator %qE is not an integral constant-expression" msgstr "" -#: cp/decl.c:5926 +#: cp/decl.c:5922 #, gcc-internal-format msgid "initializer fails to determine size of %qD" msgstr "" -#: cp/decl.c:5933 +#: cp/decl.c:5929 #, gcc-internal-format msgid "array size missing in %qD" msgstr "" -#: cp/decl.c:5945 +#: cp/decl.c:5941 #, gcc-internal-format msgid "zero-size array %qD" msgstr "" -#: cp/decl.c:5985 +#: cp/decl.c:5981 #, gcc-internal-format msgid "storage size of %qD isn%'t known" msgstr "" -#: cp/decl.c:6010 +#: cp/decl.c:6006 #, gcc-internal-format msgid "storage size of %qD isn%'t constant" msgstr "" -#: cp/decl.c:6061 +#: cp/decl.c:6057 #, gcc-internal-format msgid "" "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with " "multiple copies)" msgstr "" -#: cp/decl.c:6065 +#: cp/decl.c:6061 #, gcc-internal-format msgid "" "sorry: semantics of inline function static data %q#D are wrong (you%'ll wind " "up with multiple copies)" msgstr "" -#: cp/decl.c:6071 +#: cp/decl.c:6067 #, gcc-internal-format msgid "you can work around this by removing the initializer" msgstr "" -#: cp/decl.c:6113 +#: cp/decl.c:6109 #, gcc-internal-format msgid "uninitialized %<const %D%>" msgstr "" -#: cp/decl.c:6120 +#: cp/decl.c:6116 #, gcc-internal-format msgid "uninitialized variable %qD in %<constexpr%> function" msgstr "" -#: cp/decl.c:6129 +#: cp/decl.c:6125 #, gcc-internal-format msgid "uninitialized variable %qD in %<constexpr%> context" msgstr "" -#: cp/decl.c:6137 +#: cp/decl.c:6133 #, gcc-internal-format msgid "%q#T has no user-provided default constructor" msgstr "" -#: cp/decl.c:6141 +#: cp/decl.c:6137 #, gcc-internal-format msgid "" "constructor is not user-provided because it is explicitly defaulted in the " "class body" msgstr "" -#: cp/decl.c:6144 +#: cp/decl.c:6140 #, gcc-internal-format msgid "and the implicitly-defined constructor does not initialize %q#D" msgstr "" -#: cp/decl.c:6312 +#: cp/decl.c:6308 #, gcc-internal-format msgid "invalid type %qT as initializer for a vector of type %qT" msgstr "" -#: cp/decl.c:6369 +#: cp/decl.c:6365 #, gcc-internal-format msgid "initializer for %qT must be brace-enclosed" msgstr "" -#: cp/decl.c:6407 +#: cp/decl.c:6403 #, gcc-internal-format msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT" msgstr "" -#: cp/decl.c:6415 +#: cp/decl.c:6411 #, gcc-internal-format msgid "%qT has no non-static data member named %qD" msgstr "" -#: cp/decl.c:6443 +#: cp/decl.c:6439 #, gcc-internal-format msgid "invalid initializer for %q#D" msgstr "" -#: cp/decl.c:6494 +#: cp/decl.c:6490 #, gcc-internal-format msgid "C99 designator %qE outside aggregate initializer" msgstr "" -#: cp/decl.c:6533 cp/decl.c:6793 cp/typeck2.c:1380 cp/typeck2.c:1694 -#: cp/typeck2.c:1742 cp/typeck2.c:1789 +#: cp/decl.c:6529 cp/decl.c:6789 cp/typeck2.c:1377 cp/typeck2.c:1691 +#: cp/typeck2.c:1739 cp/typeck2.c:1786 #, gcc-internal-format msgid "too many initializers for %qT" msgstr "" -#: cp/decl.c:6574 +#: cp/decl.c:6570 #, gcc-internal-format msgid "braces around scalar initializer for type %qT" msgstr "" -#: cp/decl.c:6584 +#: cp/decl.c:6580 #, gcc-internal-format msgid "too many braces around scalar initializer for type %qT" msgstr "" -#: cp/decl.c:6702 +#: cp/decl.c:6698 #, gcc-internal-format msgid "missing braces around initializer for %qT" msgstr "" -#: cp/decl.c:6822 +#: cp/decl.c:6818 #, gcc-internal-format msgid "structured binding has incomplete type %qT" msgstr "" -#: cp/decl.c:6836 +#: cp/decl.c:6832 #, gcc-internal-format msgid "elements of array %q#T have incomplete type" msgstr "" -#: cp/decl.c:6849 +#: cp/decl.c:6845 #, gcc-internal-format msgid "variable-sized compound literal" msgstr "" -#: cp/decl.c:6904 +#: cp/decl.c:6900 #, gcc-internal-format msgid "%q#D has incomplete type" msgstr "" -#: cp/decl.c:6925 +#: cp/decl.c:6921 #, gcc-internal-format msgid "scalar object %qD requires one element in initializer" msgstr "" -#: cp/decl.c:6970 +#: cp/decl.c:6966 #, gcc-internal-format msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>" msgstr "" -#: cp/decl.c:7102 +#: cp/decl.c:7098 #, gcc-internal-format msgid "array %qD initialized by parenthesized string literal %qE" msgstr "" -#: cp/decl.c:7137 +#: cp/decl.c:7133 #, gcc-internal-format msgid "initializer invalid for static member with constructor" msgstr "" -#: cp/decl.c:7139 +#: cp/decl.c:7135 #, gcc-internal-format msgid "non-constant in-class initialization invalid for static member %qD" msgstr "" -#: cp/decl.c:7142 +#: cp/decl.c:7138 #, gcc-internal-format msgid "" "non-constant in-class initialization invalid for non-inline static member %qD" msgstr "" -#: cp/decl.c:7147 +#: cp/decl.c:7143 #, gcc-internal-format msgid "(an out of class initialization is required)" msgstr "" -#: cp/decl.c:7332 +#: cp/decl.c:7328 #, gcc-internal-format msgid "reference %qD is initialized with itself" msgstr "" -#: cp/decl.c:7590 +#: cp/decl.c:7586 #, gcc-internal-format msgid "could not find variant declaration" msgstr "" -#: cp/decl.c:7614 +#: cp/decl.c:7610 #, gcc-internal-format msgid "%<declare variant%> on constructor %qD" msgstr "" -#: cp/decl.c:7619 +#: cp/decl.c:7615 #, gcc-internal-format msgid "%<declare variant%> on destructor %qD" msgstr "" -#: cp/decl.c:7624 +#: cp/decl.c:7620 #, gcc-internal-format msgid "%<declare variant%> on defaulted %qD" msgstr "" -#: cp/decl.c:7629 +#: cp/decl.c:7625 #, gcc-internal-format msgid "%<declare variant%> on deleted %qD" msgstr "" -#: cp/decl.c:7634 +#: cp/decl.c:7630 #, gcc-internal-format msgid "%<declare variant%> on virtual %qD" msgstr "" -#: cp/decl.c:7684 +#: cp/decl.c:7680 #, gcc-internal-format msgid "assignment (not initialization) in declaration" msgstr "" -#: cp/decl.c:7702 cp/decl.c:14061 +#: cp/decl.c:7698 cp/decl.c:14079 #, gcc-internal-format msgid "ISO C++17 does not allow %<register%> storage class specifier" msgstr "" -#: cp/decl.c:7706 cp/decl.c:14065 +#: cp/decl.c:7702 cp/decl.c:14083 #, gcc-internal-format msgid "%<register%> storage class specifier used" msgstr "" -#: cp/decl.c:7759 +#: cp/decl.c:7758 #, gcc-internal-format msgid "" "initializer for %<decltype(auto) %D%> has function type; did you forget the " "%<()%>?" msgstr "" -#: cp/decl.c:7867 +#: cp/decl.c:7866 #, gcc-internal-format msgid "variable concept has no initializer" msgstr "" -#: cp/decl.c:7926 +#: cp/decl.c:7925 #, gcc-internal-format msgid "shadowing previous type declaration of %q#D" msgstr "" -#: cp/decl.c:7969 +#: cp/decl.c:7968 #, gcc-internal-format msgid "" "%<constinit%> can only be applied to a variable with static or thread " "storage duration" msgstr "" -#: cp/decl.c:8140 +#: cp/decl.c:8146 #, gcc-internal-format msgid "function %q#D is initialized like a variable" msgstr "" -#: cp/decl.c:8246 +#: cp/decl.c:8252 #, gcc-internal-format msgid "" "cannot decompose class type %qT because it has an anonymous struct member" msgstr "" -#: cp/decl.c:8249 +#: cp/decl.c:8255 #, gcc-internal-format msgid "" "cannot decompose class type %qT because it has an anonymous union member" msgstr "" -#: cp/decl.c:8256 +#: cp/decl.c:8262 #, gcc-internal-format msgid "cannot decompose inaccessible member %qD of %qT" msgstr "" -#: cp/decl.c:8282 +#: cp/decl.c:8288 #, gcc-internal-format msgid "" "cannot decompose class type %qT: both it and its base class %qT have non-" "static data members" msgstr "" -#: cp/decl.c:8291 +#: cp/decl.c:8297 #, gcc-internal-format msgid "" "cannot decompose class type %qT: its base classes %qT and %qT have non-" "static data members" msgstr "" -#: cp/decl.c:8501 +#: cp/decl.c:8507 #, gcc-internal-format msgid "structured binding refers to incomplete type %qT" msgstr "" -#: cp/decl.c:8517 +#: cp/decl.c:8523 #, gcc-internal-format msgid "cannot decompose variable length array %qT" msgstr "" -#: cp/decl.c:8526 cp/decl.c:8611 +#: cp/decl.c:8532 cp/decl.c:8617 #, gcc-internal-format, gfc-internal-format msgid "%u name provided for structured binding" msgid_plural "%u names provided for structured binding" msgstr[0] "" msgstr[1] "" -#: cp/decl.c:8530 +#: cp/decl.c:8536 #, gcc-internal-format, gfc-internal-format msgid "only %u name provided for structured binding" msgid_plural "only %u names provided for structured binding" msgstr[0] "" msgstr[1] "" -#: cp/decl.c:8533 +#: cp/decl.c:8539 #, gcc-internal-format msgid "while %qT decomposes into %wu element" msgid_plural "while %qT decomposes into %wu elements" msgstr[0] "" msgstr[1] "" -#: cp/decl.c:8578 +#: cp/decl.c:8584 #, gcc-internal-format msgid "cannot decompose variable length vector %qT" msgstr "" -#: cp/decl.c:8604 +#: cp/decl.c:8610 #, gcc-internal-format msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression" msgstr "" -#: cp/decl.c:8613 +#: cp/decl.c:8619 #, gcc-internal-format msgid "while %qT decomposes into %E elements" msgstr "" -#: cp/decl.c:8634 +#: cp/decl.c:8640 +#, gcc-internal-format +msgid "%<std::tuple_element<%u, %T>::type%> is %<void%>" +msgstr "" + +#: cp/decl.c:8646 #, gcc-internal-format msgid "in initialization of structured binding variable %qD" msgstr "" -#: cp/decl.c:8663 +#: cp/decl.c:8675 #, gcc-internal-format msgid "cannot decompose union type %qT" msgstr "" -#: cp/decl.c:8668 +#: cp/decl.c:8680 #, gcc-internal-format msgid "cannot decompose non-array non-class type %qT" msgstr "" -#: cp/decl.c:8673 +#: cp/decl.c:8685 #, gcc-internal-format msgid "cannot decompose lambda closure type %qT" msgstr "" -#: cp/decl.c:8679 +#: cp/decl.c:8691 #, gcc-internal-format msgid "structured binding refers to incomplete class type %qT" msgstr "" -#: cp/decl.c:8688 +#: cp/decl.c:8700 #, gcc-internal-format msgid "cannot decompose class type %qT without non-static data members" msgstr "" -#: cp/decl.c:9155 +#: cp/decl.c:9167 #, gcc-internal-format msgid "" "non-local variable %qD declared %<__thread%> needs dynamic initialization" msgstr "" -#: cp/decl.c:9158 +#: cp/decl.c:9170 #, gcc-internal-format msgid "" "non-local variable %qD declared %<__thread%> has a non-trivial destructor" msgstr "" -#: cp/decl.c:9163 +#: cp/decl.c:9175 #, gcc-internal-format msgid "C++11 %<thread_local%> allows dynamic initialization and destruction" msgstr "" -#: cp/decl.c:9400 +#: cp/decl.c:9412 #, gcc-internal-format msgid "initializer fails to determine size of %qT" msgstr "" -#: cp/decl.c:9404 +#: cp/decl.c:9416 #, gcc-internal-format msgid "array size missing in %qT" msgstr "" -#: cp/decl.c:9407 +#: cp/decl.c:9419 #, gcc-internal-format msgid "zero-size array %qT" msgstr "" -#: cp/decl.c:9423 +#: cp/decl.c:9435 #, gcc-internal-format msgid "destructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.c:9425 +#: cp/decl.c:9437 #, gcc-internal-format msgid "constructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.c:9451 +#: cp/decl.c:9463 #, gcc-internal-format msgid "%qD declared as a %<virtual%> variable" msgstr "" -#: cp/decl.c:9453 +#: cp/decl.c:9465 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in variable " "declaration" msgstr "" -#: cp/decl.c:9459 +#: cp/decl.c:9471 #, gcc-internal-format msgid "%qD declared as a %<virtual%> parameter" msgstr "" -#: cp/decl.c:9462 +#: cp/decl.c:9474 #, gcc-internal-format msgid "%qD declared as an %<inline%> parameter" msgstr "" -#: cp/decl.c:9464 +#: cp/decl.c:9476 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in parameter " "declaration" msgstr "" -#: cp/decl.c:9470 +#: cp/decl.c:9482 #, gcc-internal-format msgid "%qD declared as a %<virtual%> type" msgstr "" -#: cp/decl.c:9473 +#: cp/decl.c:9485 #, gcc-internal-format msgid "%qD declared as an %<inline%> type" msgstr "" -#: cp/decl.c:9475 +#: cp/decl.c:9487 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in type " "declaration" msgstr "" -#: cp/decl.c:9481 +#: cp/decl.c:9493 #, gcc-internal-format msgid "%qD declared as a %<virtual%> field" msgstr "" -#: cp/decl.c:9484 +#: cp/decl.c:9496 #, gcc-internal-format msgid "%qD declared as an %<inline%> field" msgstr "" -#: cp/decl.c:9486 +#: cp/decl.c:9498 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in field " "declaration" msgstr "" -#: cp/decl.c:9493 +#: cp/decl.c:9505 #, gcc-internal-format msgid "%q+D declared as a friend" msgstr "" -#: cp/decl.c:9500 +#: cp/decl.c:9512 #, gcc-internal-format msgid "%q+D declared with an exception specification" msgstr "" -#: cp/decl.c:9532 +#: cp/decl.c:9544 #, gcc-internal-format msgid "definition of %qD is not in namespace enclosing %qT" msgstr "" -#: cp/decl.c:9572 +#: cp/decl.c:9584 #, gcc-internal-format msgid "static member function %q#D declared with type qualifiers" msgstr "" -#: cp/decl.c:9583 +#: cp/decl.c:9595 #, gcc-internal-format msgid "concept %q#D declared with function parameters" msgstr "" -#: cp/decl.c:9590 +#: cp/decl.c:9602 #, gcc-internal-format msgid "concept %q#D declared with a deduced return type" msgstr "" -#: cp/decl.c:9593 +#: cp/decl.c:9605 #, gcc-internal-format msgid "concept %q#D with non-%<bool%> return type %qT" msgstr "" -#: cp/decl.c:9669 +#: cp/decl.c:9681 #, gcc-internal-format msgid "concept %qD has no definition" msgstr "" -#: cp/decl.c:9691 +#: cp/decl.c:9703 #, gcc-internal-format msgid "a function concept cannot be constrained" msgstr "" -#: cp/decl.c:9701 +#: cp/decl.c:9713 #, gcc-internal-format msgid "constraints on a non-templated function" msgstr "" -#: cp/decl.c:9746 +#: cp/decl.c:9758 #, gcc-internal-format msgid "defining explicit specialization %qD in friend declaration" msgstr "" -#: cp/decl.c:9757 +#: cp/decl.c:9769 #, gcc-internal-format msgid "invalid use of template-id %qD in declaration of primary template" msgstr "" -#: cp/decl.c:9776 +#: cp/decl.c:9788 #, gcc-internal-format msgid "" "default arguments are not allowed in declaration of friend template " "specialization %qD" msgstr "" -#: cp/decl.c:9785 +#: cp/decl.c:9797 #, gcc-internal-format msgid "" "%<inline%> is not allowed in declaration of friend template specialization " "%qD" msgstr "" -#: cp/decl.c:9802 +#: cp/decl.c:9814 #, gcc-internal-format msgid "" "friend declaration of %qD specifies default arguments and isn%'t a definition" msgstr "" -#: cp/decl.c:9847 +#: cp/decl.c:9859 #, gcc-internal-format msgid "cannot declare %<::main%> to be a template" msgstr "" -#: cp/decl.c:9850 +#: cp/decl.c:9862 #, gcc-internal-format msgid "cannot declare %<::main%> to be inline" msgstr "" -#: cp/decl.c:9853 cp/decl.c:9856 +#: cp/decl.c:9865 cp/decl.c:9868 #, gcc-internal-format msgid "cannot declare %<::main%> to be %qs" msgstr "" -#: cp/decl.c:9858 +#: cp/decl.c:9870 #, gcc-internal-format msgid "cannot declare %<::main%> to be static" msgstr "" -#: cp/decl.c:9920 +#: cp/decl.c:9932 #, gcc-internal-format msgid "static member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.c:9921 +#: cp/decl.c:9933 #, gcc-internal-format msgid "non-member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.c:9929 +#: cp/decl.c:9941 #, gcc-internal-format msgid "static member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.c:9930 +#: cp/decl.c:9942 #, gcc-internal-format msgid "non-member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.c:9940 +#: cp/decl.c:9952 #, gcc-internal-format msgid "deduction guide %qD must be declared at namespace scope" msgstr "" -#: cp/decl.c:9948 +#: cp/decl.c:9960 #, gcc-internal-format msgid "deduction guide %qD must be declared in the same scope as %qT" msgstr "" -#: cp/decl.c:9955 +#: cp/decl.c:9967 #, gcc-internal-format msgid "deduction guide %qD must not have a function body" msgstr "" -#: cp/decl.c:9968 +#: cp/decl.c:9980 #, gcc-internal-format msgid "literal operator with C linkage" msgstr "" -#: cp/decl.c:9978 +#: cp/decl.c:9990 #, gcc-internal-format msgid "%qD has invalid argument list" msgstr "" -#: cp/decl.c:9986 +#: cp/decl.c:9998 #, gcc-internal-format msgid "integer suffix %qs shadowed by implementation" msgstr "" -#: cp/decl.c:9992 +#: cp/decl.c:10004 #, gcc-internal-format msgid "floating-point suffix %qs shadowed by implementation" msgstr "" -#: cp/decl.c:9999 +#: cp/decl.c:10011 #, gcc-internal-format msgid "" "literal operator suffixes not preceded by %<_%> are reserved for future " "standardization" msgstr "" -#: cp/decl.c:10004 +#: cp/decl.c:10016 #, gcc-internal-format msgid "%qD must be a non-member function" msgstr "" -#: cp/decl.c:10087 +#: cp/decl.c:10099 #, gcc-internal-format msgid "%<::main%> must return %<int%>" msgstr "" -#: cp/decl.c:10127 +#: cp/decl.c:10139 #, gcc-internal-format msgid "definition of implicitly-declared %qD" msgstr "" -#: cp/decl.c:10132 +#: cp/decl.c:10144 #, gcc-internal-format msgid "definition of explicitly-defaulted %q+D" msgstr "" -#: cp/decl.c:10134 +#: cp/decl.c:10146 #, gcc-internal-format msgid "%q#D explicitly defaulted here" msgstr "" -#: cp/decl.c:10151 +#: cp/decl.c:10163 #, gcc-internal-format msgid "no %q#D member function declared in class %qT" msgstr "" -#: cp/decl.c:10344 +#: cp/decl.c:10356 #, gcc-internal-format msgid "cannot declare %<::main%> to be a global variable" msgstr "" -#: cp/decl.c:10353 +#: cp/decl.c:10365 #, gcc-internal-format msgid "a non-template variable cannot be %<concept%>" msgstr "" -#: cp/decl.c:10360 +#: cp/decl.c:10371 +#, gcc-internal-format +msgid "concept must be defined at namespace scope" +msgstr "" + +#: cp/decl.c:10378 #, gcc-internal-format msgid "concept must have type %<bool%>" msgstr "" -#: cp/decl.c:10363 +#: cp/decl.c:10381 #, gcc-internal-format msgid "a variable concept cannot be constrained" msgstr "" -#: cp/decl.c:10487 +#: cp/decl.c:10505 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of incomplete type" msgstr "" -#: cp/decl.c:10491 +#: cp/decl.c:10509 #, gcc-internal-format msgid "" "%<constexpr%> needed for in-class initialization of static data member %q#D " "of non-integral type" msgstr "" -#: cp/decl.c:10495 +#: cp/decl.c:10513 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of non-literal type" msgstr "" -#: cp/decl.c:10506 +#: cp/decl.c:10524 #, gcc-internal-format msgid "" "invalid in-class initialization of static data member of non-integral type " "%qT" msgstr "" -#: cp/decl.c:10511 +#: cp/decl.c:10529 #, gcc-internal-format msgid "ISO C++ forbids in-class initialization of non-const static member %qD" msgstr "" -#: cp/decl.c:10516 +#: cp/decl.c:10534 #, gcc-internal-format msgid "" "ISO C++ forbids initialization of member constant %qD of non-integral type " "%qT" msgstr "" -#: cp/decl.c:10627 +#: cp/decl.c:10645 #, gcc-internal-format msgid "size of array %qD has non-integral type %qT" msgstr "" -#: cp/decl.c:10630 +#: cp/decl.c:10648 #, gcc-internal-format msgid "size of array has non-integral type %qT" msgstr "" -#: cp/decl.c:10661 cp/decl.c:10733 +#: cp/decl.c:10679 cp/decl.c:10751 #, gcc-internal-format msgid "size of array %qD is not an integral constant-expression" msgstr "" -#: cp/decl.c:10665 cp/decl.c:10736 +#: cp/decl.c:10683 cp/decl.c:10754 #, gcc-internal-format msgid "size of array is not an integral constant-expression" msgstr "" -#: cp/decl.c:10716 +#: cp/decl.c:10734 #, gcc-internal-format msgid "ISO C++ forbids zero-size array %qD" msgstr "" -#: cp/decl.c:10719 +#: cp/decl.c:10737 #, gcc-internal-format msgid "ISO C++ forbids zero-size array" msgstr "" -#: cp/decl.c:10743 +#: cp/decl.c:10761 #, gcc-internal-format msgid "ISO C++ forbids variable length array %qD" msgstr "" -#: cp/decl.c:10746 +#: cp/decl.c:10764 #, gcc-internal-format msgid "ISO C++ forbids variable length array" msgstr "" -#: cp/decl.c:10752 +#: cp/decl.c:10770 #, gcc-internal-format msgid "variable length array %qD is used" msgstr "" -#: cp/decl.c:10755 +#: cp/decl.c:10773 #, gcc-internal-format msgid "variable length array is used" msgstr "" -#: cp/decl.c:10807 +#: cp/decl.c:10825 #, gcc-internal-format msgid "overflow in array dimension" msgstr "" -#: cp/decl.c:10867 +#: cp/decl.c:10885 #, gcc-internal-format msgid "%qD declared as array of %qT" msgstr "" -#: cp/decl.c:10869 cp/pt.c:15991 +#: cp/decl.c:10887 cp/pt.c:16080 #, gcc-internal-format msgid "creating array of %qT" msgstr "" -#: cp/decl.c:10879 +#: cp/decl.c:10897 #, gcc-internal-format msgid "declaration of %qD as array of void" msgstr "" -#: cp/decl.c:10881 +#: cp/decl.c:10899 #, gcc-internal-format msgid "creating array of void" msgstr "" -#: cp/decl.c:10886 +#: cp/decl.c:10904 #, gcc-internal-format msgid "declaration of %qD as array of functions" msgstr "" -#: cp/decl.c:10888 +#: cp/decl.c:10906 #, gcc-internal-format msgid "creating array of functions" msgstr "" -#: cp/decl.c:10893 +#: cp/decl.c:10911 #, gcc-internal-format msgid "declaration of %qD as array of references" msgstr "" -#: cp/decl.c:10895 +#: cp/decl.c:10913 #, gcc-internal-format msgid "creating array of references" msgstr "" -#: cp/decl.c:10900 +#: cp/decl.c:10918 #, gcc-internal-format msgid "declaration of %qD as array of function members" msgstr "" -#: cp/decl.c:10903 +#: cp/decl.c:10921 #, gcc-internal-format msgid "creating array of function members" msgstr "" -#: cp/decl.c:10921 +#: cp/decl.c:10939 #, gcc-internal-format msgid "" "declaration of %qD as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: cp/decl.c:10925 +#: cp/decl.c:10943 #, gcc-internal-format msgid "" "multidimensional array must have bounds for all dimensions except the first" msgstr "" -#: cp/decl.c:11007 +#: cp/decl.c:11025 #, gcc-internal-format msgid "return type specification for constructor invalid" msgstr "" -#: cp/decl.c:11010 +#: cp/decl.c:11028 #, gcc-internal-format msgid "qualifiers are not allowed on constructor declaration" msgstr "" -#: cp/decl.c:11021 +#: cp/decl.c:11039 #, gcc-internal-format msgid "return type specification for destructor invalid" msgstr "" -#: cp/decl.c:11024 +#: cp/decl.c:11042 #, gcc-internal-format msgid "qualifiers are not allowed on destructor declaration" msgstr "" -#: cp/decl.c:11037 +#: cp/decl.c:11055 #, gcc-internal-format msgid "return type specified for %<operator %T%>" msgstr "" -#: cp/decl.c:11040 +#: cp/decl.c:11058 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of %<operator %T%>" msgstr "" -#: cp/decl.c:11049 +#: cp/decl.c:11067 #, gcc-internal-format msgid "return type specified for deduction guide" msgstr "" -#: cp/decl.c:11052 +#: cp/decl.c:11070 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of deduction guide" msgstr "" -#: cp/decl.c:11056 +#: cp/decl.c:11074 #, gcc-internal-format msgid "template template parameter %qT in declaration of deduction guide" msgstr "" -#: cp/decl.c:11065 +#: cp/decl.c:11083 #, gcc-internal-format msgid "%<decl-specifier%> in declaration of deduction guide" msgstr "" -#: cp/decl.c:11086 +#: cp/decl.c:11104 #, gcc-internal-format msgid "unnamed variable or field declared void" msgstr "" -#: cp/decl.c:11094 +#: cp/decl.c:11112 #, gcc-internal-format msgid "variable or field declared void" msgstr "" -#: cp/decl.c:11109 +#: cp/decl.c:11127 #, gcc-internal-format msgid "%<inline%> specifier invalid for variable %qD declared at block scope" msgstr "" -#: cp/decl.c:11114 +#: cp/decl.c:11132 #, gcc-internal-format msgid "" "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/decl.c:11361 +#: cp/decl.c:11379 #, gcc-internal-format msgid "invalid use of qualified-name %<::%D%>" msgstr "" -#: cp/decl.c:11364 cp/decl.c:11386 +#: cp/decl.c:11382 cp/decl.c:11404 #, gcc-internal-format msgid "invalid use of qualified-name %<%T::%D%>" msgstr "" -#: cp/decl.c:11367 +#: cp/decl.c:11385 #, gcc-internal-format msgid "invalid use of qualified-name %<%D::%D%>" msgstr "" -#: cp/decl.c:11377 +#: cp/decl.c:11395 #, gcc-internal-format msgid "%q#T is not a class or namespace" msgstr "" -#: cp/decl.c:11401 +#: cp/decl.c:11419 #, gcc-internal-format msgid "declaration of %qE as non-function" msgstr "" -#: cp/decl.c:11408 +#: cp/decl.c:11426 #, gcc-internal-format msgid "declaration of %qE as non-member" msgstr "" -#: cp/decl.c:11436 +#: cp/decl.c:11454 #, gcc-internal-format msgid "declarator-id missing; using reserved word %qD" msgstr "" -#: cp/decl.c:11487 +#: cp/decl.c:11505 #, gcc-internal-format msgid "function definition does not declare parameters" msgstr "" -#: cp/decl.c:11495 cp/decl.c:11504 cp/decl.c:13312 +#: cp/decl.c:11513 cp/decl.c:11522 cp/decl.c:13330 #, gcc-internal-format msgid "declaration of %qD as non-function" msgstr "" -#: cp/decl.c:11512 +#: cp/decl.c:11530 #, gcc-internal-format msgid "declaration of %qD as %<typedef%>" msgstr "" -#: cp/decl.c:11517 +#: cp/decl.c:11535 #, gcc-internal-format msgid "declaration of %qD as parameter" msgstr "" -#: cp/decl.c:11552 +#: cp/decl.c:11570 #, gcc-internal-format msgid "both %qs and %qs specified" msgstr "" -#: cp/decl.c:11559 cp/decl.c:11566 cp/decl.c:11573 cp/decl.c:11580 +#: cp/decl.c:11577 cp/decl.c:11584 cp/decl.c:11591 cp/decl.c:11598 #, gcc-internal-format msgid "%qs cannot appear in a typedef declaration" msgstr "" -#: cp/decl.c:11591 +#: cp/decl.c:11609 #, gcc-internal-format msgid "can use at most one of the %<constinit%> and %<constexpr%> specifiers" msgstr "" -#: cp/decl.c:11601 +#: cp/decl.c:11619 #, gcc-internal-format msgid "two or more data types in declaration of %qs" msgstr "" -#: cp/decl.c:11609 +#: cp/decl.c:11627 #, gcc-internal-format msgid "conflicting specifiers in declaration of %qs" msgstr "" -#: cp/decl.c:11656 +#: cp/decl.c:11674 #, gcc-internal-format msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>" msgstr "" -#: cp/decl.c:11705 cp/decl.c:11709 cp/decl.c:11712 +#: cp/decl.c:11723 cp/decl.c:11727 cp/decl.c:11730 #, gcc-internal-format msgid "ISO C++ forbids declaration of %qs with no type" msgstr "" -#: cp/decl.c:11729 +#: cp/decl.c:11747 #, gcc-internal-format msgid "%<__int%d%> is not supported by this target" msgstr "" -#: cp/decl.c:11737 +#: cp/decl.c:11755 #, gcc-internal-format msgid "ISO C++ does not support %<__int%d%> for %qs" msgstr "" -#: cp/decl.c:11791 +#: cp/decl.c:11809 #, gcc-internal-format msgid "%<signed%> and %<unsigned%> specified together" msgstr "" -#: cp/decl.c:11797 +#: cp/decl.c:11815 #, gcc-internal-format msgid "%<long%> and %<short%> specified together" msgstr "" -#: cp/decl.c:11805 cp/decl.c:11811 +#: cp/decl.c:11823 cp/decl.c:11829 #, gcc-internal-format msgid "%qs specified with %qT" msgstr "" -#: cp/decl.c:11816 +#: cp/decl.c:11834 #, gcc-internal-format msgid "%qs specified with %<decltype%>" msgstr "" -#: cp/decl.c:11818 +#: cp/decl.c:11836 #, gcc-internal-format msgid "%qs specified with %<typeof%>" msgstr "" -#: cp/decl.c:11885 +#: cp/decl.c:11903 #, gcc-internal-format msgid "complex invalid for %qs" msgstr "" -#: cp/decl.c:11924 +#: cp/decl.c:11942 #, gcc-internal-format msgid "" "template placeholder type %qT must be followed by a simple declarator-id" msgstr "" -#: cp/decl.c:11945 +#: cp/decl.c:11963 #, gcc-internal-format msgid "member %qD cannot be declared both %<virtual%> and %<static%>" msgstr "" -#: cp/decl.c:11954 +#: cp/decl.c:11972 #, gcc-internal-format msgid "" "member %qD can be declared both %<virtual%> and %<constexpr%> only in %<-" "std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/decl.c:11967 +#: cp/decl.c:11985 #, gcc-internal-format msgid "typedef declaration invalid in parameter declaration" msgstr "" -#: cp/decl.c:11974 +#: cp/decl.c:11992 #, gcc-internal-format msgid "storage class specified for template parameter %qs" msgstr "" -#: cp/decl.c:11984 cp/decl.c:12156 +#: cp/decl.c:12002 cp/decl.c:12174 #, gcc-internal-format msgid "storage class specified for parameter %qs" msgstr "" -#: cp/decl.c:11992 cp/decl.c:12001 cp/decl.c:12007 cp/decl.c:12013 +#: cp/decl.c:12010 cp/decl.c:12019 cp/decl.c:12025 cp/decl.c:12031 #, gcc-internal-format msgid "a parameter cannot be declared %qs" msgstr "" -#: cp/decl.c:12023 +#: cp/decl.c:12041 #, gcc-internal-format msgid "%<virtual%> outside class declaration" msgstr "" -#: cp/decl.c:12033 cp/decl.c:12036 cp/decl.c:12038 cp/decl.c:12041 -#: cp/decl.c:12051 cp/decl.c:12061 cp/decl.c:12071 cp/decl.c:12075 +#: cp/decl.c:12051 cp/decl.c:12054 cp/decl.c:12056 cp/decl.c:12059 +#: cp/decl.c:12069 cp/decl.c:12079 cp/decl.c:12089 cp/decl.c:12093 #, gcc-internal-format msgid "structured binding declaration cannot be %qs" msgstr "" -#: cp/decl.c:12045 cp/decl.c:12067 +#: cp/decl.c:12063 cp/decl.c:12085 #, gcc-internal-format msgid "" "structured binding declaration can be %qs only in %<-std=c++20%> or %<-" "std=gnu++20%>" msgstr "" -#: cp/decl.c:12055 +#: cp/decl.c:12073 #, gcc-internal-format msgid "%<volatile%>-qualified structured binding is deprecated" msgstr "" -#: cp/decl.c:12079 +#: cp/decl.c:12097 #, gcc-internal-format msgid "structured binding declaration cannot be C++98 %<auto%>" msgstr "" -#: cp/decl.c:12090 +#: cp/decl.c:12108 #, gcc-internal-format msgid "structured binding declaration cannot have type %qT" msgstr "" -#: cp/decl.c:12093 +#: cp/decl.c:12111 #, gcc-internal-format msgid "" "type must be cv-qualified %<auto%> or reference to cv-qualified %<auto%>" msgstr "" -#: cp/decl.c:12128 +#: cp/decl.c:12146 #, gcc-internal-format msgid "multiple storage classes in declaration of %qs" msgstr "" -#: cp/decl.c:12154 +#: cp/decl.c:12172 #, gcc-internal-format msgid "storage class specified for %qs" msgstr "" -#: cp/decl.c:12168 +#: cp/decl.c:12186 #, gcc-internal-format msgid "nested function %qs declared %<extern%>" msgstr "" -#: cp/decl.c:12173 +#: cp/decl.c:12191 #, gcc-internal-format msgid "top-level declaration of %qs specifies %<auto%>" msgstr "" -#: cp/decl.c:12181 +#: cp/decl.c:12199 #, gcc-internal-format msgid "function-scope %qs implicitly auto and declared %<__thread%>" msgstr "" -#: cp/decl.c:12195 +#: cp/decl.c:12213 #, gcc-internal-format msgid "storage class specifiers invalid in friend function declarations" msgstr "" -#: cp/decl.c:12226 +#: cp/decl.c:12244 #, gcc-internal-format msgid "attribute ignored" msgstr "" -#: cp/decl.c:12227 +#: cp/decl.c:12245 #, gcc-internal-format msgid "an attribute that appertains to a type-specifier is ignored" msgstr "" -#: cp/decl.c:12285 +#: cp/decl.c:12303 #, gcc-internal-format msgid "unnecessary parentheses in declaration of %qs" msgstr "" -#: cp/decl.c:12291 +#: cp/decl.c:12309 #, gcc-internal-format msgid "remove parentheses" msgstr "" -#: cp/decl.c:12340 +#: cp/decl.c:12358 #, gcc-internal-format msgid "requires-clause on return type" msgstr "" -#: cp/decl.c:12360 +#: cp/decl.c:12378 #, gcc-internal-format msgid "%qs function uses %<auto%> type specifier without trailing return type" msgstr "" -#: cp/decl.c:12364 +#: cp/decl.c:12382 #, gcc-internal-format msgid "" "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>" msgstr "" -#: cp/decl.c:12369 +#: cp/decl.c:12387 #, gcc-internal-format msgid "virtual function cannot have deduced return type" msgstr "" -#: cp/decl.c:12376 +#: cp/decl.c:12394 #, gcc-internal-format msgid "" "%qs function with trailing return type has %qT as its type rather than plain " "%<auto%>" msgstr "" -#: cp/decl.c:12385 +#: cp/decl.c:12403 #, gcc-internal-format msgid "" "%qs function with trailing return type has %<decltype(auto)%> as its type " "rather than plain %<auto%>" msgstr "" -#: cp/decl.c:12390 +#: cp/decl.c:12408 #, gcc-internal-format msgid "invalid use of %<decltype(auto)%>" msgstr "" -#: cp/decl.c:12401 +#: cp/decl.c:12419 #, gcc-internal-format msgid "deduced class type %qD in function return type" msgstr "" -#: cp/decl.c:12410 +#: cp/decl.c:12428 #, gcc-internal-format msgid "deduction guide for %qT must have trailing return type" msgstr "" -#: cp/decl.c:12423 +#: cp/decl.c:12441 #, gcc-internal-format msgid "" "trailing return type %qT of deduction guide is not a specialization of %qT" msgstr "" -#: cp/decl.c:12437 +#: cp/decl.c:12455 #, gcc-internal-format msgid "" "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/decl.c:12440 +#: cp/decl.c:12458 #, gcc-internal-format msgid "" "%qs function with trailing return type not declared with %<auto%> type " "specifier" msgstr "" -#: cp/decl.c:12464 +#: cp/decl.c:12482 #, gcc-internal-format msgid "%<volatile%>-qualified return type is deprecated" msgstr "" -#: cp/decl.c:12476 +#: cp/decl.c:12494 #, gcc-internal-format msgid "%qs declared as function returning a function" msgstr "" -#: cp/decl.c:12482 +#: cp/decl.c:12500 #, gcc-internal-format msgid "%qs declared as function returning an array" msgstr "" -#: cp/decl.c:12489 +#: cp/decl.c:12507 #, gcc-internal-format msgid "%<constinit%> on function return type is not allowed" msgstr "" -#: cp/decl.c:12500 cp/pt.c:29580 +#: cp/decl.c:12518 cp/pt.c:29649 #, gcc-internal-format msgid "%qT as type rather than plain %<decltype(auto)%>" msgstr "" -#: cp/decl.c:12506 cp/pt.c:29586 +#: cp/decl.c:12524 cp/pt.c:29655 #, gcc-internal-format msgid "%<decltype(auto)%> cannot be cv-qualified" msgstr "" -#: cp/decl.c:12538 +#: cp/decl.c:12556 #, gcc-internal-format msgid "destructor cannot be static member function" msgstr "" -#: cp/decl.c:12540 +#: cp/decl.c:12558 #, gcc-internal-format msgid "constructor cannot be static member function" msgstr "" -#: cp/decl.c:12545 +#: cp/decl.c:12563 #, gcc-internal-format msgid "destructors may not be cv-qualified" msgstr "" -#: cp/decl.c:12546 +#: cp/decl.c:12564 #, gcc-internal-format msgid "constructors may not be cv-qualified" msgstr "" -#: cp/decl.c:12554 +#: cp/decl.c:12572 #, gcc-internal-format msgid "destructors may not be ref-qualified" msgstr "" -#: cp/decl.c:12555 +#: cp/decl.c:12573 #, gcc-internal-format msgid "constructors may not be ref-qualified" msgstr "" -#: cp/decl.c:12573 +#: cp/decl.c:12591 #, gcc-internal-format msgid "constructors cannot be declared %<virtual%>" msgstr "" -#: cp/decl.c:12590 +#: cp/decl.c:12608 #, gcc-internal-format msgid "virtual functions cannot be friends" msgstr "" -#: cp/decl.c:12595 +#: cp/decl.c:12613 #, gcc-internal-format msgid "friend declaration not in class definition" msgstr "" -#: cp/decl.c:12599 +#: cp/decl.c:12617 #, gcc-internal-format msgid "cannot define friend function %qs in a local class definition" msgstr "" -#: cp/decl.c:12609 +#: cp/decl.c:12627 #, gcc-internal-format msgid "friend function definition %qs cannot have a name qualified with %<::%>" msgstr "" -#: cp/decl.c:12613 +#: cp/decl.c:12631 #, gcc-internal-format msgid "" "friend function definition %qs cannot have a name qualified with %<%D::%>" msgstr "" -#: cp/decl.c:12626 +#: cp/decl.c:12644 #, gcc-internal-format msgid "a conversion function cannot have a trailing return type" msgstr "" -#: cp/decl.c:12653 +#: cp/decl.c:12671 #, gcc-internal-format msgid "destructors may not have parameters" msgstr "" -#: cp/decl.c:12693 +#: cp/decl.c:12711 #, gcc-internal-format msgid "cannot declare pointer to %q#T" msgstr "" -#: cp/decl.c:12706 cp/decl.c:12713 +#: cp/decl.c:12724 cp/decl.c:12731 #, gcc-internal-format msgid "cannot declare reference to %q#T" msgstr "" -#: cp/decl.c:12715 +#: cp/decl.c:12733 #, gcc-internal-format msgid "cannot declare pointer to %q#T member" msgstr "" -#: cp/decl.c:12744 +#: cp/decl.c:12762 #, gcc-internal-format msgid "cannot declare reference to qualified function type %qT" msgstr "" -#: cp/decl.c:12745 +#: cp/decl.c:12763 #, gcc-internal-format msgid "cannot declare pointer to qualified function type %qT" msgstr "" -#: cp/decl.c:12818 +#: cp/decl.c:12836 #, gcc-internal-format msgid "" "cannot declare reference to %q#T, which is not a typedef or a template type " "argument" msgstr "" -#: cp/decl.c:12889 +#: cp/decl.c:12907 #, gcc-internal-format msgid "template-id %qD used as a declarator" msgstr "" -#: cp/decl.c:12915 +#: cp/decl.c:12933 #, gcc-internal-format msgid "member functions are implicitly friends of their class" msgstr "" -#: cp/decl.c:12920 +#: cp/decl.c:12938 #, gcc-internal-format msgid "extra qualification %<%T::%> on member %qs" msgstr "" -#: cp/decl.c:12950 +#: cp/decl.c:12968 #, gcc-internal-format msgid "cannot define member function %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:12952 +#: cp/decl.c:12970 #, gcc-internal-format msgid "cannot declare member function %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:12960 +#: cp/decl.c:12978 #, gcc-internal-format msgid "cannot declare member %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:13000 +#: cp/decl.c:13018 #, gcc-internal-format msgid "non-parameter %qs cannot be a parameter pack" msgstr "" -#: cp/decl.c:13009 +#: cp/decl.c:13027 #, gcc-internal-format msgid "data member may not have variably modified type %qT" msgstr "" -#: cp/decl.c:13012 +#: cp/decl.c:13030 #, gcc-internal-format msgid "parameter may not have variably modified type %qT" msgstr "" -#: cp/decl.c:13023 +#: cp/decl.c:13041 #, gcc-internal-format msgid "%<explicit%> outside class declaration" msgstr "" -#: cp/decl.c:13026 +#: cp/decl.c:13044 #, gcc-internal-format msgid "%<explicit%> in friend declaration" msgstr "" -#: cp/decl.c:13029 +#: cp/decl.c:13047 #, gcc-internal-format msgid "" "only declarations of constructors and conversion operators can be %<explicit" "%>" msgstr "" -#: cp/decl.c:13039 +#: cp/decl.c:13057 #, gcc-internal-format msgid "non-member %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.c:13046 +#: cp/decl.c:13064 #, gcc-internal-format msgid "non-object member %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.c:13052 +#: cp/decl.c:13070 #, gcc-internal-format msgid "function %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.c:13058 +#: cp/decl.c:13076 #, gcc-internal-format msgid "%<static%> %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.c:13064 +#: cp/decl.c:13082 #, gcc-internal-format msgid "%<const%> %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.c:13070 +#: cp/decl.c:13088 #, gcc-internal-format msgid "reference %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.c:13086 +#: cp/decl.c:13104 #, gcc-internal-format msgid "typedef may not be a function definition" msgstr "" -#: cp/decl.c:13089 +#: cp/decl.c:13107 #, gcc-internal-format msgid "typedef may not be a member function definition" msgstr "" -#: cp/decl.c:13115 +#: cp/decl.c:13133 #, gcc-internal-format msgid "%<auto%> not allowed in alias declaration" msgstr "" -#: cp/decl.c:13118 +#: cp/decl.c:13136 #, gcc-internal-format msgid "typedef declared %<auto%>" msgstr "" -#: cp/decl.c:13123 +#: cp/decl.c:13141 #, gcc-internal-format msgid "requires-clause on typedef" msgstr "" -#: cp/decl.c:13127 +#: cp/decl.c:13145 #, gcc-internal-format msgid "typedef name may not be a nested-name-specifier" msgstr "" -#: cp/decl.c:13153 +#: cp/decl.c:13171 #, gcc-internal-format msgid "ISO C++ forbids nested type %qD with same name as enclosing class" msgstr "" -#: cp/decl.c:13242 +#: cp/decl.c:13260 #, gcc-internal-format msgid "%<inline%> specified for friend class declaration" msgstr "" -#: cp/decl.c:13250 +#: cp/decl.c:13268 #, gcc-internal-format msgid "template parameters cannot be friends" msgstr "" -#: cp/decl.c:13252 +#: cp/decl.c:13270 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>" msgstr "" -#: cp/decl.c:13256 +#: cp/decl.c:13274 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %<friend %#T%>" msgstr "" -#: cp/decl.c:13269 +#: cp/decl.c:13287 #, gcc-internal-format msgid "trying to make class %qT a friend of global scope" msgstr "" -#: cp/decl.c:13289 +#: cp/decl.c:13307 #, gcc-internal-format msgid "invalid qualifiers on non-member function type" msgstr "" -#: cp/decl.c:13293 +#: cp/decl.c:13311 #, gcc-internal-format msgid "requires-clause on type-id" msgstr "" -#: cp/decl.c:13303 +#: cp/decl.c:13321 #, gcc-internal-format msgid "abstract declarator %qT used as declaration" msgstr "" -#: cp/decl.c:13318 +#: cp/decl.c:13336 #, gcc-internal-format msgid "requires-clause on declaration of non-function type %qT" msgstr "" -#: cp/decl.c:13337 +#: cp/decl.c:13355 #, gcc-internal-format msgid "cannot use %<::%> in parameter declaration" msgstr "" -#: cp/decl.c:13346 cp/parser.c:19160 +#: cp/decl.c:13364 cp/parser.c:19197 #, gcc-internal-format msgid "cannot declare a parameter with %<decltype(auto)%>" msgstr "" -#: cp/decl.c:13351 +#: cp/decl.c:13369 #, gcc-internal-format msgid "class template placeholder %qE not permitted in this context" msgstr "" -#: cp/decl.c:13354 +#: cp/decl.c:13372 #, gcc-internal-format msgid "use %<auto%> for an abbreviated function template" msgstr "" -#: cp/decl.c:13359 +#: cp/decl.c:13377 #, gcc-internal-format msgid "%<auto%> parameter not permitted in this context" msgstr "" -#: cp/decl.c:13362 +#: cp/decl.c:13380 #, gcc-internal-format msgid "parameter declared %<auto%>" msgstr "" -#: cp/decl.c:13413 cp/parser.c:3429 +#: cp/decl.c:13431 cp/parser.c:3429 #, gcc-internal-format msgid "invalid use of template-name %qE without an argument list" msgstr "" -#: cp/decl.c:13417 +#: cp/decl.c:13435 #, gcc-internal-format msgid "non-static data member declared with placeholder %qT" msgstr "" -#: cp/decl.c:13438 +#: cp/decl.c:13456 #, gcc-internal-format msgid "ISO C++ forbids flexible array member %qs" msgstr "" -#: cp/decl.c:13441 +#: cp/decl.c:13459 #, gcc-internal-format msgid "ISO C++ forbids flexible array members" msgstr "" #. Something like struct S { int N::j; }; -#: cp/decl.c:13457 +#: cp/decl.c:13475 #, gcc-internal-format msgid "invalid use of %<::%>" msgstr "" -#: cp/decl.c:13478 +#: cp/decl.c:13496 #, gcc-internal-format msgid "declaration of function %qD in invalid context" msgstr "" -#: cp/decl.c:13488 +#: cp/decl.c:13506 #, gcc-internal-format msgid "function %qD declared %<virtual%> inside a union" msgstr "" -#: cp/decl.c:13498 +#: cp/decl.c:13516 #, gcc-internal-format msgid "%qD cannot be declared %<virtual%>, since it is always static" msgstr "" -#: cp/decl.c:13512 +#: cp/decl.c:13530 #, gcc-internal-format msgid "expected qualified name in friend declaration for destructor %qD" msgstr "" -#: cp/decl.c:13519 +#: cp/decl.c:13537 #, gcc-internal-format msgid "declaration of %qD as member of %qT" msgstr "" -#: cp/decl.c:13526 cp/decl.c:13539 +#: cp/decl.c:13544 cp/decl.c:13557 #, gcc-internal-format msgid "a destructor cannot be %qs" msgstr "" -#: cp/decl.c:13532 +#: cp/decl.c:13550 #, gcc-internal-format msgid "" "%<constexpr%> destructors only available with %<-std=c++20%> or %<-std=gnu+" "+20%>" msgstr "" -#: cp/decl.c:13545 +#: cp/decl.c:13563 #, gcc-internal-format msgid "expected qualified name in friend declaration for constructor %qD" msgstr "" -#: cp/decl.c:13554 +#: cp/decl.c:13572 #, gcc-internal-format msgid "a constructor cannot be %<concept%>" msgstr "" -#: cp/decl.c:13560 +#: cp/decl.c:13578 #, gcc-internal-format msgid "a concept cannot be a member function" msgstr "" -#: cp/decl.c:13568 cp/decl.c:13898 +#: cp/decl.c:13586 cp/decl.c:13916 #, gcc-internal-format msgid "%qD cannot be %qs" msgstr "" -#: cp/decl.c:13577 +#: cp/decl.c:13595 #, gcc-internal-format msgid "specialization of variable template %qD declared as function" msgstr "" -#: cp/decl.c:13580 +#: cp/decl.c:13598 #, gcc-internal-format msgid "variable template declared here" msgstr "" -#: cp/decl.c:13642 +#: cp/decl.c:13660 #, gcc-internal-format msgid "field %qD has incomplete type %qT" msgstr "" -#: cp/decl.c:13647 +#: cp/decl.c:13665 #, gcc-internal-format msgid "name %qT has incomplete type" msgstr "" -#: cp/decl.c:13667 +#: cp/decl.c:13685 #, gcc-internal-format msgid "%qE is neither function nor member function; cannot be declared friend" msgstr "" -#: cp/decl.c:13670 +#: cp/decl.c:13688 #, gcc-internal-format msgid "" "unnamed field is neither function nor member function; cannot be declared " "friend" msgstr "" -#: cp/decl.c:13723 cp/decl.c:13734 +#: cp/decl.c:13741 cp/decl.c:13752 #, gcc-internal-format msgid "static data member %qE declared %qs" msgstr "" -#: cp/decl.c:13728 +#: cp/decl.c:13746 #, gcc-internal-format msgid "%<constexpr%> static data member %qD must have an initializer" msgstr "" -#: cp/decl.c:13762 cp/decl.c:13770 cp/decl.c:13777 cp/decl.c:13784 +#: cp/decl.c:13780 cp/decl.c:13788 cp/decl.c:13795 cp/decl.c:13802 #, gcc-internal-format msgid "non-static data member %qE declared %qs" msgstr "" -#: cp/decl.c:13839 +#: cp/decl.c:13857 #, gcc-internal-format msgid "storage class %<auto%> invalid for function %qs" msgstr "" -#: cp/decl.c:13842 +#: cp/decl.c:13860 #, gcc-internal-format msgid "storage class %<register%> invalid for function %qs" msgstr "" -#: cp/decl.c:13848 +#: cp/decl.c:13866 #, gcc-internal-format msgid "storage class %<__thread%> invalid for function %qs" msgstr "" -#: cp/decl.c:13852 +#: cp/decl.c:13870 #, gcc-internal-format msgid "storage class %<thread_local%> invalid for function %qs" msgstr "" -#: cp/decl.c:13857 +#: cp/decl.c:13875 #, gcc-internal-format msgid "virt-specifiers in %qs not allowed outside a class definition" msgstr "" -#: cp/decl.c:13869 +#: cp/decl.c:13887 #, gcc-internal-format msgid "" "%<static%> specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.c:13873 +#: cp/decl.c:13891 #, gcc-internal-format msgid "" "%<inline%> specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.c:13881 +#: cp/decl.c:13899 #, gcc-internal-format msgid "virtual non-class function %qs" msgstr "" -#: cp/decl.c:13888 +#: cp/decl.c:13906 #, gcc-internal-format msgid "%qs defined in a non-class scope" msgstr "" -#: cp/decl.c:13889 +#: cp/decl.c:13907 #, gcc-internal-format msgid "%qs declared in a non-class scope" msgstr "" -#: cp/decl.c:13932 +#: cp/decl.c:13950 #, gcc-internal-format msgid "cannot declare member function %qD to have static linkage" msgstr "" -#: cp/decl.c:13941 +#: cp/decl.c:13959 #, gcc-internal-format msgid "cannot declare static function inside another function" msgstr "" -#: cp/decl.c:13980 +#: cp/decl.c:13998 #, gcc-internal-format msgid "" "%<static%> may not be used when defining (as opposed to declaring) a static " "data member" msgstr "" -#: cp/decl.c:13987 +#: cp/decl.c:14005 #, gcc-internal-format msgid "static member %qD declared %<register%>" msgstr "" -#: cp/decl.c:13993 +#: cp/decl.c:14011 #, gcc-internal-format msgid "cannot explicitly declare member %q#D to have extern linkage" msgstr "" -#: cp/decl.c:14001 +#: cp/decl.c:14019 #, gcc-internal-format msgid "declaration of %<constexpr%> variable %qD is not a definition" msgstr "" -#: cp/decl.c:14008 +#: cp/decl.c:14026 #, gcc-internal-format msgid "a variable cannot be declared %<consteval%>" msgstr "" -#: cp/decl.c:14028 +#: cp/decl.c:14046 #, gcc-internal-format msgid "declaration of %q#D has no initializer" msgstr "" -#: cp/decl.c:14040 +#: cp/decl.c:14058 #, gcc-internal-format msgid "%qs initialized and declared %<extern%>" msgstr "" -#: cp/decl.c:14045 +#: cp/decl.c:14063 #, gcc-internal-format msgid "%qs has both %<extern%> and initializer" msgstr "" -#: cp/decl.c:14217 +#: cp/decl.c:14235 #, gcc-internal-format msgid "default argument %qE uses %qD" msgstr "" -#: cp/decl.c:14220 +#: cp/decl.c:14238 #, gcc-internal-format msgid "default argument %qE uses local variable %qD" msgstr "" -#: cp/decl.c:14310 +#: cp/decl.c:14328 #, gcc-internal-format msgid "invalid use of cv-qualified type %qT in parameter declaration" msgstr "" -#: cp/decl.c:14314 +#: cp/decl.c:14332 #, gcc-internal-format msgid "invalid use of type %<void%> in parameter declaration" msgstr "" -#: cp/decl.c:14336 +#: cp/decl.c:14354 #, gcc-internal-format msgid "%<volatile%>-qualified parameter is deprecated" msgstr "" -#: cp/decl.c:14344 +#: cp/decl.c:14362 #, gcc-internal-format msgid "parameter %qD invalidly declared method type" msgstr "" -#: cp/decl.c:14369 +#: cp/decl.c:14387 #, gcc-internal-format msgid "parameter %qD includes pointer to array of unknown bound %qT" msgstr "" -#: cp/decl.c:14371 +#: cp/decl.c:14389 #, gcc-internal-format msgid "parameter %qD includes reference to array of unknown bound %qT" msgstr "" -#: cp/decl.c:14630 +#: cp/decl.c:14648 #, gcc-internal-format msgid "invalid constructor; you probably meant %<%T (const %T&)%>" msgstr "" -#: cp/decl.c:14709 +#: cp/decl.c:14727 #, gcc-internal-format msgid "%qD may not be declared within a namespace" msgstr "" -#: cp/decl.c:14716 +#: cp/decl.c:14734 #, gcc-internal-format msgid "%qD may not be declared as static" msgstr "" -#: cp/decl.c:14746 +#: cp/decl.c:14764 #, gcc-internal-format msgid "%qD must be a non-static member function" msgstr "" -#: cp/decl.c:14752 +#: cp/decl.c:14770 #, gcc-internal-format msgid "" "%qD must be either a non-static member function or a non-member function" msgstr "" -#: cp/decl.c:14762 +#: cp/decl.c:14780 #, gcc-internal-format msgid "%qD must have an argument of class or enumerated type" msgstr "" #. 13.4.0.3 -#: cp/decl.c:14788 +#: cp/decl.c:14806 #, gcc-internal-format msgid "ISO C++ prohibits overloading %<operator ?:%>" msgstr "" #. Variadic. -#: cp/decl.c:14799 +#: cp/decl.c:14817 #, gcc-internal-format msgid "%qD must not have variable number of arguments" msgstr "" -#: cp/decl.c:14825 +#: cp/decl.c:14843 #, gcc-internal-format msgid "%qD must have either zero or one argument" msgstr "" -#: cp/decl.c:14826 +#: cp/decl.c:14844 #, gcc-internal-format msgid "%qD must have either one or two arguments" msgstr "" -#: cp/decl.c:14838 +#: cp/decl.c:14856 #, gcc-internal-format msgid "postfix %qD must have %<int%> as its argument" msgstr "" -#: cp/decl.c:14839 +#: cp/decl.c:14857 #, gcc-internal-format msgid "postfix %qD must have %<int%> as its second argument" msgstr "" -#: cp/decl.c:14850 +#: cp/decl.c:14868 #, gcc-internal-format msgid "%qD must have no arguments" msgstr "" -#: cp/decl.c:14851 cp/decl.c:14861 +#: cp/decl.c:14869 cp/decl.c:14879 #, gcc-internal-format msgid "%qD must have exactly one argument" msgstr "" -#: cp/decl.c:14862 +#: cp/decl.c:14880 #, gcc-internal-format msgid "%qD must have exactly two arguments" msgstr "" -#: cp/decl.c:14876 +#: cp/decl.c:14894 #, gcc-internal-format msgid "%qD cannot have default arguments" msgstr "" -#: cp/decl.c:14900 +#: cp/decl.c:14918 #, gcc-internal-format msgid "converting %qT to %<void%> will never use a type conversion operator" msgstr "" -#: cp/decl.c:14907 +#: cp/decl.c:14925 #, gcc-internal-format msgid "" "converting %qT to a reference to the same type will never use a type " "conversion operator" msgstr "" -#: cp/decl.c:14909 +#: cp/decl.c:14927 #, gcc-internal-format msgid "" "converting %qT to the same type will never use a type conversion operator" msgstr "" -#: cp/decl.c:14918 +#: cp/decl.c:14936 #, gcc-internal-format msgid "" "converting %qT to a reference to a base class %qT will never use a type " "conversion operator" msgstr "" -#: cp/decl.c:14920 +#: cp/decl.c:14938 #, gcc-internal-format msgid "" "converting %qT to a base class %qT will never use a type conversion operator" msgstr "" -#: cp/decl.c:14936 +#: cp/decl.c:14954 #, gcc-internal-format msgid "user-defined %qD always evaluates both arguments" msgstr "" -#: cp/decl.c:14955 +#: cp/decl.c:14973 #, gcc-internal-format msgid "prefix %qD should return %qT" msgstr "" -#: cp/decl.c:14962 +#: cp/decl.c:14980 #, gcc-internal-format msgid "postfix %qD should return %qT" msgstr "" -#: cp/decl.c:14974 +#: cp/decl.c:14992 #, gcc-internal-format msgid "%qD should return by value" msgstr "" -#: cp/decl.c:15029 +#: cp/decl.c:15047 #, gcc-internal-format msgid "using template type parameter %qT after %qs" msgstr "" -#: cp/decl.c:15052 +#: cp/decl.c:15070 #, gcc-internal-format msgid "using alias template specialization %qT after %qs" msgstr "" -#: cp/decl.c:15055 +#: cp/decl.c:15073 #, gcc-internal-format msgid "using typedef-name %qD after %qs" msgstr "" -#: cp/decl.c:15057 +#: cp/decl.c:15075 #, gcc-internal-format msgid "%qD has a previous declaration here" msgstr "" -#: cp/decl.c:15065 +#: cp/decl.c:15083 #, gcc-internal-format msgid "%qT referred to as %qs" msgstr "" -#: cp/decl.c:15066 cp/decl.c:15073 +#: cp/decl.c:15084 cp/decl.c:15091 #, gcc-internal-format msgid "%qT has a previous declaration here" msgstr "" -#: cp/decl.c:15072 +#: cp/decl.c:15090 #, gcc-internal-format msgid "%qT referred to as enum" msgstr "" @@ -53073,105 +53120,105 @@ msgstr "" #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:15087 +#: cp/decl.c:15105 #, gcc-internal-format msgid "template argument required for %<%s %T%>" msgstr "" -#: cp/decl.c:15130 cp/name-lookup.c:5736 cp/name-lookup.c:5871 cp/parser.c:6817 -#: cp/parser.c:29391 +#: cp/decl.c:15148 cp/name-lookup.c:5753 cp/name-lookup.c:5888 cp/parser.c:6817 +#: cp/parser.c:29445 #, gcc-internal-format msgid "reference to %qD is ambiguous" msgstr "" -#: cp/decl.c:15151 cp/name-lookup.c:5434 +#: cp/decl.c:15169 cp/name-lookup.c:5451 #, gcc-internal-format msgid "%qD has the same name as the class in which it is declared" msgstr "" -#: cp/decl.c:15179 cp/friend.c:302 cp/parser.c:3254 cp/parser.c:6526 -#: cp/pt.c:9740 +#: cp/decl.c:15197 cp/friend.c:302 cp/parser.c:3254 cp/parser.c:6526 +#: cp/pt.c:9770 #, gcc-internal-format msgid "%qT is not a template" msgstr "" -#: cp/decl.c:15184 +#: cp/decl.c:15202 #, gcc-internal-format msgid "perhaps you want to explicitly add %<%T::%>" msgstr "" -#: cp/decl.c:15287 +#: cp/decl.c:15305 #, gcc-internal-format msgid "use of enum %q#D without previous declaration" msgstr "" -#: cp/decl.c:15318 +#: cp/decl.c:15336 #, gcc-internal-format msgid "redeclaration of %qT as a non-template" msgstr "" -#: cp/decl.c:15329 cp/semantics.c:3336 +#: cp/decl.c:15347 cp/semantics.c:3354 #, gcc-internal-format msgid "cannot declare %qD in a different module" msgstr "" -#: cp/decl.c:15457 +#: cp/decl.c:15475 #, gcc-internal-format msgid "derived union %qT invalid" msgstr "" -#: cp/decl.c:15464 +#: cp/decl.c:15482 #, gcc-internal-format msgid "%qT defined with multiple direct bases" msgstr "" -#: cp/decl.c:15475 +#: cp/decl.c:15493 #, gcc-internal-format msgid "%qT defined with direct virtual base" msgstr "" -#: cp/decl.c:15500 +#: cp/decl.c:15518 #, gcc-internal-format msgid "base type %qT fails to be a struct or class type" msgstr "" -#: cp/decl.c:15530 +#: cp/decl.c:15548 #, gcc-internal-format msgid "recursive type %qT undefined" msgstr "" -#: cp/decl.c:15532 +#: cp/decl.c:15550 #, gcc-internal-format msgid "duplicate base type %qT invalid" msgstr "" -#: cp/decl.c:15677 +#: cp/decl.c:15695 #, gcc-internal-format msgid "scoped/unscoped mismatch in enum %q#T" msgstr "" -#: cp/decl.c:15680 cp/decl.c:15688 cp/decl.c:15698 cp/decl.c:16300 -#: cp/parser.c:20064 +#: cp/decl.c:15698 cp/decl.c:15706 cp/decl.c:15716 cp/decl.c:16318 +#: cp/parser.c:20101 #, gcc-internal-format msgid "previous definition here" msgstr "" -#: cp/decl.c:15685 +#: cp/decl.c:15703 #, gcc-internal-format msgid "underlying type mismatch in enum %q#T" msgstr "" -#: cp/decl.c:15695 +#: cp/decl.c:15713 #, gcc-internal-format msgid "different underlying type in enum %q#T" msgstr "" -#: cp/decl.c:15706 +#: cp/decl.c:15724 #, gcc-internal-format msgid "cannot define %qD in different module" msgstr "" -#: cp/decl.c:15780 +#: cp/decl.c:15798 #, gcc-internal-format msgid "underlying type %qT of %qT must be an integral type" msgstr "" @@ -53180,78 +53227,78 @@ msgstr "" #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:15927 +#: cp/decl.c:15945 #, gcc-internal-format msgid "no integral type can represent all of the enumerator values for %qT" msgstr "" -#: cp/decl.c:16102 +#: cp/decl.c:16120 #, gcc-internal-format msgid "" "enumerator value for %qD must have integral or unscoped enumeration type" msgstr "" -#: cp/decl.c:16112 +#: cp/decl.c:16130 #, gcc-internal-format msgid "enumerator value for %qD is not an integer constant" msgstr "" -#: cp/decl.c:16161 +#: cp/decl.c:16179 #, gcc-internal-format msgid "incremented enumerator value is too large for %<unsigned long%>" msgstr "" -#: cp/decl.c:16162 +#: cp/decl.c:16180 #, gcc-internal-format msgid "incremented enumerator value is too large for %<long%>" msgstr "" -#: cp/decl.c:16173 +#: cp/decl.c:16191 #, gcc-internal-format msgid "overflow in enumeration values at %qD" msgstr "" -#: cp/decl.c:16193 +#: cp/decl.c:16211 #, gcc-internal-format msgid "enumerator value %qE is outside the range of underlying type %qT" msgstr "" -#: cp/decl.c:16298 cp/parser.c:20062 +#: cp/decl.c:16316 cp/parser.c:20099 #, gcc-internal-format msgid "multiple definition of %q#T" msgstr "" -#: cp/decl.c:16338 +#: cp/decl.c:16356 #, gcc-internal-format msgid "return type %q#T is incomplete" msgstr "" -#: cp/decl.c:16498 cp/typeck.c:10213 +#: cp/decl.c:16516 cp/typeck.c:10220 #, gcc-internal-format msgid "%<operator=%> should return a reference to %<*this%>" msgstr "" -#: cp/decl.c:17347 +#: cp/decl.c:17365 #, gcc-internal-format msgid "no return statements in function returning %qT" msgstr "" -#: cp/decl.c:17349 cp/typeck.c:10093 +#: cp/decl.c:17367 cp/typeck.c:10100 #, gcc-internal-format msgid "only plain %<auto%> return type can be deduced to %<void%>" msgstr "" -#: cp/decl.c:17411 +#: cp/decl.c:17429 #, gcc-internal-format msgid "no return statement in %<constexpr%> function returning non-void" msgstr "" -#: cp/decl.c:17593 +#: cp/decl.c:17611 #, gcc-internal-format msgid "%qD is already defined in class %qT" msgstr "" -#: cp/decl.c:17984 +#: cp/decl.c:18002 #, gcc-internal-format msgid "use of %qD before deduction of %<auto%>" msgstr "" @@ -53293,7 +53340,7 @@ msgstr "" msgid "deleting %qT is undefined" msgstr "" -#: cp/decl2.c:580 cp/pt.c:5824 +#: cp/decl2.c:580 cp/pt.c:5847 #, gcc-internal-format msgid "template declaration of %q#D" msgstr "" @@ -53304,7 +53351,7 @@ msgid "" "template parameter lists provided don%'t match the template parameters of %qD" msgstr "" -#: cp/decl2.c:635 cp/pt.c:5781 +#: cp/decl2.c:635 cp/pt.c:5804 #, gcc-internal-format msgid "destructor %qD declared as member template" msgstr "" @@ -53634,22 +53681,22 @@ msgstr "" #. We mark a lambda conversion op as deleted if we can't #. generate it properly; see maybe_add_lambda_conv_op. -#: cp/decl2.c:5618 +#: cp/decl2.c:5619 #, gcc-internal-format msgid "converting lambda that uses %<...%> to function pointer" msgstr "" -#: cp/decl2.c:5621 +#: cp/decl2.c:5622 #, gcc-internal-format msgid "use of deleted function %qD" msgstr "" -#: cp/decl2.c:5671 +#: cp/decl2.c:5672 #, gcc-internal-format msgid "use of function %qD with unsatisfied constraints" msgstr "" -#: cp/decl2.c:5703 +#: cp/decl2.c:5704 #, gcc-internal-format msgid "use of built-in parameter pack %qD outside of a template" msgstr "" @@ -53772,7 +53819,7 @@ msgstr "" msgid "%qD is not a member of %qT; did you mean %qs?" msgstr "" -#: cp/error.c:4550 cp/typeck.c:2550 +#: cp/error.c:4550 cp/typeck.c:2561 #, gcc-internal-format msgid "%qD is not a member of %qT" msgstr "" @@ -53782,7 +53829,7 @@ msgstr "" msgid "%qD is not a member of %qD; did you mean %qs?" msgstr "" -#: cp/error.c:4576 cp/typeck.c:3146 +#: cp/error.c:4576 cp/typeck.c:3157 #, gcc-internal-format msgid "%qD is not a member of %qD" msgstr "" @@ -53975,447 +54022,447 @@ msgstr "" msgid "recursive instantiation of default member initializer for %qD" msgstr "" -#: cp/init.c:633 +#: cp/init.c:640 #, gcc-internal-format msgid "" "default member initializer for %qD required before the end of its enclosing " "class" msgstr "" -#: cp/init.c:697 +#: cp/init.c:704 #, gcc-internal-format msgid "initializer for flexible array member %q#D" msgstr "" -#: cp/init.c:755 +#: cp/init.c:762 #, gcc-internal-format msgid "" "initializing %qD from %qE does not extend the lifetime of the underlying " "array" msgstr "" -#: cp/init.c:781 +#: cp/init.c:788 #, gcc-internal-format msgid "%qD should be initialized in the member initialization list" msgstr "" -#: cp/init.c:802 +#: cp/init.c:809 #, gcc-internal-format msgid "%qD is initialized with itself" msgstr "" -#: cp/init.c:918 +#: cp/init.c:925 #, gcc-internal-format msgid "invalid initializer for array member %q#D" msgstr "" -#: cp/init.c:933 cp/init.c:959 cp/init.c:2504 cp/method.c:2261 +#: cp/init.c:940 cp/init.c:966 cp/init.c:2511 cp/method.c:2261 #, gcc-internal-format msgid "uninitialized const member in %q#T" msgstr "" -#: cp/init.c:935 cp/init.c:953 cp/init.c:961 cp/init.c:2489 cp/init.c:2517 +#: cp/init.c:942 cp/init.c:960 cp/init.c:968 cp/init.c:2496 cp/init.c:2524 #: cp/method.c:2264 cp/method.c:2275 #, gcc-internal-format msgid "%q#D should be initialized" msgstr "" -#: cp/init.c:951 cp/init.c:2476 cp/method.c:2272 +#: cp/init.c:958 cp/init.c:2483 cp/method.c:2272 #, gcc-internal-format msgid "uninitialized reference member in %q#T" msgstr "" -#: cp/init.c:1128 +#: cp/init.c:1135 #, gcc-internal-format msgid "%qD will be initialized after" msgstr "" -#: cp/init.c:1131 +#: cp/init.c:1138 #, gcc-internal-format msgid "base %qT will be initialized after" msgstr "" -#: cp/init.c:1135 +#: cp/init.c:1142 #, gcc-internal-format msgid " %q#D" msgstr "" -#: cp/init.c:1137 +#: cp/init.c:1144 #, gcc-internal-format msgid " base %qT" msgstr "" -#: cp/init.c:1139 +#: cp/init.c:1146 #, gcc-internal-format msgid " when initialized here" msgstr "" -#: cp/init.c:1156 +#: cp/init.c:1163 #, gcc-internal-format msgid "multiple initializations given for %qD" msgstr "" -#: cp/init.c:1160 +#: cp/init.c:1167 #, gcc-internal-format msgid "multiple initializations given for base %qT" msgstr "" -#: cp/init.c:1247 +#: cp/init.c:1254 #, gcc-internal-format msgid "initializations for multiple members of %qT" msgstr "" -#: cp/init.c:1344 +#: cp/init.c:1351 #, gcc-internal-format msgid "" "base class %q#T should be explicitly initialized in the copy constructor" msgstr "" -#: cp/init.c:1575 cp/init.c:1594 +#: cp/init.c:1582 cp/init.c:1601 #, gcc-internal-format msgid "class %qT does not have any field named %qD" msgstr "" -#: cp/init.c:1581 +#: cp/init.c:1588 #, gcc-internal-format msgid "" "%q#D is a static data member; it can only be initialized at its definition" msgstr "" -#: cp/init.c:1588 +#: cp/init.c:1595 #, gcc-internal-format msgid "%q#D is not a non-static data member of %qT" msgstr "" -#: cp/init.c:1627 +#: cp/init.c:1634 #, gcc-internal-format msgid "unnamed initializer for %qT, which has no base classes" msgstr "" -#: cp/init.c:1635 +#: cp/init.c:1642 #, gcc-internal-format msgid "unnamed initializer for %qT, which uses multiple inheritance" msgstr "" -#: cp/init.c:1682 +#: cp/init.c:1689 #, gcc-internal-format msgid "%qD is both a direct base and an indirect virtual base" msgstr "" -#: cp/init.c:1690 +#: cp/init.c:1697 #, gcc-internal-format msgid "type %qT is not a direct or virtual base of %qT" msgstr "" -#: cp/init.c:1693 +#: cp/init.c:1700 #, gcc-internal-format msgid "type %qT is not a direct base of %qT" msgstr "" -#: cp/init.c:1805 cp/init.c:4511 cp/typeck2.c:1238 +#: cp/init.c:1812 cp/init.c:4518 cp/typeck2.c:1238 #, gcc-internal-format msgid "array must be initialized with a brace-enclosed initializer" msgstr "" -#: cp/init.c:2115 cp/semantics.c:3604 +#: cp/init.c:2122 cp/semantics.c:3622 #, gcc-internal-format msgid "%qT is not a class type" msgstr "" -#: cp/init.c:2159 +#: cp/init.c:2166 #, gcc-internal-format msgid "incomplete type %qT does not have member %qD" msgstr "" -#: cp/init.c:2173 +#: cp/init.c:2180 #, gcc-internal-format msgid "invalid pointer to bit-field %qD" msgstr "" -#: cp/init.c:2259 cp/typeck.c:2018 +#: cp/init.c:2266 cp/typeck.c:2029 #, gcc-internal-format msgid "invalid use of non-static member function %qD" msgstr "" -#: cp/init.c:2266 cp/semantics.c:2092 +#: cp/init.c:2273 cp/semantics.c:2111 #, gcc-internal-format msgid "invalid use of non-static data member %qD" msgstr "" -#: cp/init.c:2473 +#: cp/init.c:2480 #, gcc-internal-format msgid "" "uninitialized reference member in %q#T using %<new%> without new-initializer" msgstr "" -#: cp/init.c:2481 +#: cp/init.c:2488 #, gcc-internal-format msgid "" "uninitialized reference member in base %q#T of %q#T using %<new%> without " "new-initializer" msgstr "" -#: cp/init.c:2485 +#: cp/init.c:2492 #, gcc-internal-format msgid "uninitialized reference member in base %q#T of %q#T" msgstr "" -#: cp/init.c:2501 +#: cp/init.c:2508 #, gcc-internal-format msgid "" "uninitialized const member in %q#T using %<new%> without new-initializer" msgstr "" -#: cp/init.c:2509 +#: cp/init.c:2516 #, gcc-internal-format msgid "" "uninitialized const member in base %q#T of %q#T using %<new%> without new-" "initializer" msgstr "" -#: cp/init.c:2513 +#: cp/init.c:2520 #, gcc-internal-format msgid "uninitialized const member in base %q#T of %q#T" msgstr "" -#: cp/init.c:2623 +#: cp/init.c:2630 #, gcc-internal-format msgid "" "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a " "region of type %qT and size %qwi" msgstr "" -#: cp/init.c:2626 +#: cp/init.c:2633 #, gcc-internal-format msgid "" "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a " "region of type %qT and size at most %qwu" msgstr "" -#: cp/init.c:2636 +#: cp/init.c:2643 #, gcc-internal-format msgid "" "placement new constructing an array of objects of type %qT and size %qwu in " "a region of type %qT and size %qwi" msgstr "" -#: cp/init.c:2639 +#: cp/init.c:2646 #, gcc-internal-format msgid "" "placement new constructing an array of objects of type %qT and size %qwu in " "a region of type %qT and size at most %qwu" msgstr "" -#: cp/init.c:2648 +#: cp/init.c:2655 #, gcc-internal-format msgid "" "placement new constructing an object of type %qT and size %qwu in a region " "of type %qT and size %qwi" msgstr "" -#: cp/init.c:2651 +#: cp/init.c:2658 #, gcc-internal-format msgid "" "placement new constructing an object of type %qT and size %qwu in a region " "of type %qT and size at most %qwu" msgstr "" -#: cp/init.c:2668 +#: cp/init.c:2675 #, gcc-internal-format msgid "at offset %wi from %qD declared here" msgstr "" -#: cp/init.c:2672 +#: cp/init.c:2679 #, gcc-internal-format msgid "at offset [%wi, %wi] from %qD declared here" msgstr "" -#: cp/init.c:2887 +#: cp/init.c:2894 #, gcc-internal-format msgid "integer overflow in array size" msgstr "" -#: cp/init.c:2897 +#: cp/init.c:2904 #, gcc-internal-format msgid "array size in new-expression must be constant" msgstr "" -#: cp/init.c:2915 +#: cp/init.c:2922 #, gcc-internal-format msgid "variably modified type not allowed in new-expression" msgstr "" -#: cp/init.c:2931 +#: cp/init.c:2938 #, gcc-internal-format msgid "" "non-constant array new length must be specified directly, not by %<typedef%>" msgstr "" -#: cp/init.c:2933 +#: cp/init.c:2940 #, gcc-internal-format msgid "" "non-constant array new length must be specified without parentheses around " "the type-id" msgstr "" -#: cp/init.c:2943 +#: cp/init.c:2950 #, gcc-internal-format msgid "invalid type %<void%> for %<new%>" msgstr "" -#: cp/init.c:2949 +#: cp/init.c:2956 #, gcc-internal-format msgid "" "%<new%> of %<initializer_list%> does not extend the lifetime of the " "underlying array" msgstr "" -#: cp/init.c:2991 +#: cp/init.c:2998 #, gcc-internal-format msgid "uninitialized const in %<new%> of %q#T" msgstr "" -#: cp/init.c:3135 +#: cp/init.c:3142 #, gcc-internal-format msgid "no suitable %qD found in class %qT" msgstr "" -#: cp/init.c:3142 cp/search.c:1058 +#: cp/init.c:3149 cp/search.c:1058 #, gcc-internal-format msgid "request for member %qD is ambiguous" msgstr "" -#: cp/init.c:3216 +#: cp/init.c:3223 #, gcc-internal-format msgid "%<new%> of type %qT with extended alignment %d" msgstr "" -#: cp/init.c:3219 +#: cp/init.c:3226 #, gcc-internal-format msgid "uses %qD, which does not have an alignment parameter" msgstr "" -#: cp/init.c:3222 +#: cp/init.c:3229 #, gcc-internal-format msgid "use %<-faligned-new%> to enable C++17 over-aligned new support" msgstr "" -#: cp/init.c:3419 +#: cp/init.c:3426 #, gcc-internal-format msgid "parenthesized initializer in array new" msgstr "" -#: cp/init.c:3712 +#: cp/init.c:3719 #, gcc-internal-format msgid "size in array new must have integral type" msgstr "" -#: cp/init.c:3741 +#: cp/init.c:3748 #, gcc-internal-format msgid "new cannot be applied to a reference type" msgstr "" -#: cp/init.c:3750 +#: cp/init.c:3757 #, gcc-internal-format msgid "new cannot be applied to a function type" msgstr "" -#: cp/init.c:3869 +#: cp/init.c:3876 #, gcc-internal-format msgid "possible problem detected in invocation of operator %<delete []%>" msgstr "" -#: cp/init.c:3873 +#: cp/init.c:3880 #, gcc-internal-format msgid "" "neither the destructor nor the class-specific operator %<delete []%> will be " "called, even if they are declared when the class is defined" msgstr "" -#: cp/init.c:4420 +#: cp/init.c:4427 #, gcc-internal-format msgid "initializer ends prematurely" msgstr "" -#: cp/init.c:4726 +#: cp/init.c:4733 #, gcc-internal-format msgid "unknown array size in delete" msgstr "" -#: cp/init.c:4760 +#: cp/init.c:4767 #, gcc-internal-format msgid "possible problem detected in invocation of %<operator delete%>" msgstr "" -#: cp/init.c:4765 +#: cp/init.c:4772 #, gcc-internal-format msgid "" "neither the destructor nor the class-specific %<operator delete%> will be " "called, even if they are declared when the class is defined" msgstr "" -#: cp/init.c:4780 +#: cp/init.c:4787 #, gcc-internal-format msgid "" "deleting object of abstract class type %qT which has non-virtual destructor " "will cause undefined behavior" msgstr "" -#: cp/init.c:4785 +#: cp/init.c:4792 #, gcc-internal-format msgid "" "deleting object of polymorphic class type %qT which has non-virtual " "destructor might cause undefined behavior" msgstr "" -#: cp/init.c:5089 +#: cp/init.c:5096 #, gcc-internal-format msgid "type to vector delete is neither pointer or array type" msgstr "" -#: cp/lambda.c:528 +#: cp/lambda.c:529 #, gcc-internal-format msgid "array of runtime bound cannot be captured by copy, only by reference" msgstr "" -#: cp/lambda.c:543 +#: cp/lambda.c:544 #, gcc-internal-format msgid "" "capture of variably-modified type %qT that is not an N3639 array of runtime " "bound" msgstr "" -#: cp/lambda.c:547 +#: cp/lambda.c:548 #, gcc-internal-format msgid "because the array element type %qT has variable size" msgstr "" -#: cp/lambda.c:571 +#: cp/lambda.c:572 #, gcc-internal-format msgid "cannot capture %qE by reference" msgstr "" -#: cp/lambda.c:581 +#: cp/lambda.c:582 #, gcc-internal-format msgid "capture by copy of incomplete type %qT" msgstr "" -#: cp/lambda.c:633 +#: cp/lambda.c:637 #, gcc-internal-format msgid "trying to capture %qD in instantiation of generic lambda" msgstr "" -#: cp/lambda.c:709 +#: cp/lambda.c:713 #, gcc-internal-format msgid "implicit capture of %qE via %<[=]%> is deprecated in C++20" msgstr "" -#: cp/lambda.c:711 +#: cp/lambda.c:715 #, gcc-internal-format msgid "add explicit %<this%> or %<*this%> capture" msgstr "" -#: cp/lambda.c:825 +#: cp/lambda.c:829 #, gcc-internal-format msgid "%<this%> was not captured for this lambda function" msgstr "" @@ -54474,71 +54521,71 @@ msgid "" "use of an undeclared name is deprecated)" msgstr "" -#: cp/mangle.c:2357 +#: cp/mangle.c:2350 #, gcc-internal-format msgid "mangling %<typeof%>, use %<decltype%> instead" msgstr "" -#: cp/mangle.c:2361 +#: cp/mangle.c:2354 #, gcc-internal-format msgid "mangling %<__underlying_type%>" msgstr "" -#: cp/mangle.c:2668 +#: cp/mangle.c:2661 #, gcc-internal-format msgid "mangling unknown fixed point type" msgstr "" -#: cp/mangle.c:3428 +#: cp/mangle.c:3439 #, gcc-internal-format msgid "" "use of built-in trait %qE in function signature; use library traits instead" msgstr "" -#: cp/mangle.c:3433 +#: cp/mangle.c:3444 #, gcc-internal-format, gfc-internal-format msgid "mangling %C" msgstr "" -#: cp/mangle.c:3509 +#: cp/mangle.c:3520 #, gcc-internal-format msgid "omitted middle operand to %<?:%> operand cannot be mangled" msgstr "" -#: cp/mangle.c:4074 +#: cp/mangle.c:4085 #, gcc-internal-format msgid "" "mangled name for %qD will change in C++17 because the exception " "specification is part of a function type" msgstr "" -#: cp/mangle.c:4120 +#: cp/mangle.c:4131 #, gcc-internal-format msgid "" "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)" msgstr "" -#: cp/mangle.c:4126 +#: cp/mangle.c:4137 #, gcc-internal-format msgid "" "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)" msgstr "" -#: cp/mangle.c:4398 +#: cp/mangle.c:4409 #, gcc-internal-format msgid "" "the mangled name of a thunk for %qD changes between %<-fabi-version=%d%> and " "%<-fabi-version=%d%>" msgstr "" -#: cp/mangle.c:4403 +#: cp/mangle.c:4414 #, gcc-internal-format msgid "" "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-" "version=%d%>" msgstr "" -#: cp/mangle.c:4408 +#: cp/mangle.c:4419 #, gcc-internal-format msgid "" "the mangled name of the initialization guard variable for %qD changes " @@ -54736,310 +54783,310 @@ msgid "" "match the implicit exception-specification %qX" msgstr "" -#: cp/method.c:3136 +#: cp/method.c:3153 #, gcc-internal-format msgid "defaulted declaration %q+D does not match the expected signature" msgstr "" -#: cp/method.c:3139 +#: cp/method.c:3156 #, gcc-internal-format msgid "expected signature: %qD" msgstr "" -#: cp/method.c:3171 +#: cp/method.c:3188 #, gcc-internal-format msgid "" "explicitly defaulted function %q+D cannot be declared %qs because the " "implicit declaration is not %qs:" msgstr "" -#: cp/method.c:3191 +#: cp/method.c:3208 #, gcc-internal-format msgid "a template cannot be defaulted" msgstr "" -#: cp/method.c:3226 +#: cp/method.c:3243 #, gcc-internal-format msgid "%qD cannot be defaulted" msgstr "" -#: cp/method.c:3235 +#: cp/method.c:3252 #, gcc-internal-format msgid "defaulted function %q+D with default argument" msgstr "" -#: cp/name-lookup.c:2727 +#: cp/name-lookup.c:2728 #, gcc-internal-format msgid "redeclaration of %q#D with different template parameters" msgstr "" -#: cp/name-lookup.c:2733 +#: cp/name-lookup.c:2734 #, gcc-internal-format msgid "%q#D conflicts with a previous declaration" msgstr "" -#: cp/name-lookup.c:2910 +#: cp/name-lookup.c:2911 #, gcc-internal-format msgid "%q#D hides constructor for %q#D" msgstr "" -#: cp/name-lookup.c:3059 +#: cp/name-lookup.c:3060 #, gcc-internal-format msgid "conflicting C language linkage declaration %q#D" msgstr "" -#: cp/name-lookup.c:3064 +#: cp/name-lookup.c:3065 #, gcc-internal-format msgid "due to different exception specifications" msgstr "" -#: cp/name-lookup.c:3162 +#: cp/name-lookup.c:3163 #, gcc-internal-format msgid "lambda parameter %qD previously declared as a capture" msgstr "" -#: cp/name-lookup.c:3185 +#: cp/name-lookup.c:3186 #, gcc-internal-format msgid "declaration of %q#D shadows a parameter" msgstr "" -#: cp/name-lookup.c:3319 +#: cp/name-lookup.c:3320 #, gcc-internal-format msgid "declaration of %qD shadows a member of %qT" msgstr "" -#: cp/name-lookup.c:3746 +#: cp/name-lookup.c:3763 #, gcc-internal-format msgid "friend declaration %qD in local class without prior local declaration" msgstr "" -#: cp/name-lookup.c:4226 +#: cp/name-lookup.c:4243 #, gcc-internal-format msgid "%s %<%s(%E)%> %p %d" msgstr "" -#: cp/name-lookup.c:4229 +#: cp/name-lookup.c:4246 #, gcc-internal-format msgid "%s %s %p %d" msgstr "" -#: cp/name-lookup.c:4844 +#: cp/name-lookup.c:4861 #, gcc-internal-format msgid "%q#D does not have external linkage" msgstr "" -#: cp/name-lookup.c:4846 cp/parser.c:11133 cp/parser.c:11143 -#: cp/semantics.c:3788 cp/semantics.c:3800 +#: cp/name-lookup.c:4863 cp/parser.c:11154 cp/parser.c:11164 +#: cp/semantics.c:3806 cp/semantics.c:3818 #, gcc-internal-format msgid "%q#D declared here" msgstr "" -#: cp/name-lookup.c:5588 +#: cp/name-lookup.c:5605 #, gcc-internal-format msgid "%<%T%s%D%> names destructor" msgstr "" -#: cp/name-lookup.c:5604 +#: cp/name-lookup.c:5621 #, gcc-internal-format msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:5612 +#: cp/name-lookup.c:5629 #, gcc-internal-format msgid "" "%<using%> with enumeration scope %q#T only available with %<-std=c++20%> or " "%<-std=gnu++20%>" msgstr "" -#: cp/name-lookup.c:5628 cp/pt.c:18214 +#: cp/name-lookup.c:5645 cp/pt.c:18303 #, gcc-internal-format msgid "%qT is not a class, namespace, or enumeration" msgstr "" -#: cp/name-lookup.c:5638 +#: cp/name-lookup.c:5655 #, gcc-internal-format msgid "non-member using-declaration names constructor of %qT" msgstr "" -#: cp/name-lookup.c:5649 cp/name-lookup.c:5707 +#: cp/name-lookup.c:5666 cp/name-lookup.c:5724 #, gcc-internal-format msgid "using-declaration for member at non-class scope" msgstr "" -#: cp/name-lookup.c:5672 +#: cp/name-lookup.c:5689 #, gcc-internal-format msgid "%qT is not a direct base of %qT" msgstr "" -#: cp/name-lookup.c:5717 +#: cp/name-lookup.c:5734 #, gcc-internal-format msgid "did you mean %<using enum %T::%D%>?" msgstr "" -#: cp/name-lookup.c:5729 +#: cp/name-lookup.c:5746 #, gcc-internal-format msgid "%qD has not been declared in %qD" msgstr "" -#: cp/name-lookup.c:5743 +#: cp/name-lookup.c:5760 #, gcc-internal-format msgid "using-declaration may not name namespace %qD" msgstr "" -#: cp/name-lookup.c:5754 +#: cp/name-lookup.c:5771 #, gcc-internal-format msgid "%<%T::%D%> names constructor in %qT" msgstr "" -#: cp/name-lookup.c:5850 +#: cp/name-lookup.c:5867 #, gcc-internal-format msgid "declaration of %qD not in a namespace surrounding %qD" msgstr "" -#: cp/name-lookup.c:5891 +#: cp/name-lookup.c:5908 #, gcc-internal-format msgid "explicit qualification in declaration of %qD" msgstr "" -#: cp/name-lookup.c:5901 +#: cp/name-lookup.c:5918 #, gcc-internal-format msgid "%qD should have been declared inside %qD" msgstr "" -#: cp/name-lookup.c:5954 +#: cp/name-lookup.c:5971 #, gcc-internal-format msgid "%qD has not been declared within %qD" msgstr "" -#: cp/name-lookup.c:5956 +#: cp/name-lookup.c:5973 #, gcc-internal-format msgid "only here as a %<friend%>" msgstr "" -#: cp/name-lookup.c:6010 +#: cp/name-lookup.c:6027 #, gcc-internal-format msgid "%qD attribute requires a single NTBS argument" msgstr "" -#: cp/name-lookup.c:6017 +#: cp/name-lookup.c:6034 #, gcc-internal-format msgid "" "%qD attribute is meaningless since members of the anonymous namespace get " "local symbols" msgstr "" -#: cp/name-lookup.c:6027 cp/name-lookup.c:6054 +#: cp/name-lookup.c:6044 cp/name-lookup.c:6071 #, gcc-internal-format msgid "ignoring %qD attribute on anonymous namespace" msgstr "" -#: cp/name-lookup.c:6033 +#: cp/name-lookup.c:6050 #, gcc-internal-format msgid "ignoring %qD attribute on non-inline namespace" msgstr "" -#: cp/name-lookup.c:6070 cp/name-lookup.c:8581 +#: cp/name-lookup.c:6087 cp/name-lookup.c:8598 #, gcc-internal-format msgid "%qD attribute directive ignored" msgstr "" -#: cp/name-lookup.c:6398 +#: cp/name-lookup.c:6415 #, gcc-internal-format msgid "maximum limit of %d namespaces searched for %qE" msgstr "" -#: cp/name-lookup.c:6450 +#: cp/name-lookup.c:6467 #, gcc-internal-format msgid "suggested alternative:" msgid_plural "suggested alternatives:" msgstr[0] "" msgstr[1] "" -#: cp/name-lookup.c:6456 +#: cp/name-lookup.c:6473 #, gcc-internal-format msgid " %qE" msgstr "" -#: cp/name-lookup.c:6985 +#: cp/name-lookup.c:7002 #, gcc-internal-format msgid "" "%<std::%s%> is defined in header %qs; did you forget to %<#include %s%>?" msgstr "" -#: cp/name-lookup.c:6991 +#: cp/name-lookup.c:7008 #, gcc-internal-format msgid "%<std::%s%> is only available from %s onwards" msgstr "" -#: cp/name-lookup.c:7427 +#: cp/name-lookup.c:7444 #, gcc-internal-format msgid "the macro %qs had not yet been defined" msgstr "" -#: cp/name-lookup.c:7430 +#: cp/name-lookup.c:7447 #, gcc-internal-format msgid "it was later defined here" msgstr "" -#: cp/name-lookup.c:8213 +#: cp/name-lookup.c:8230 #, gcc-internal-format msgid "" "declaration of %<std::initializer_list%> does not match %<#include " "<initializer_list>%>, isn%'t a template" msgstr "" -#: cp/name-lookup.c:8575 +#: cp/name-lookup.c:8592 #, gcc-internal-format msgid "%<strong%> using directive no longer supported" msgstr "" -#: cp/name-lookup.c:8578 +#: cp/name-lookup.c:8595 #, gcc-internal-format msgid "you can use an inline namespace instead" msgstr "" #. We only allow depth 255. -#: cp/name-lookup.c:8669 +#: cp/name-lookup.c:8686 #, gcc-internal-format, gfc-internal-format msgid "cannot nest more than %d namespaces" msgstr "" -#: cp/name-lookup.c:8766 +#: cp/name-lookup.c:8783 #, gcc-internal-format msgid "%<namespace %E%> is ambiguous" msgstr "" -#: cp/name-lookup.c:8782 +#: cp/name-lookup.c:8799 #, gcc-internal-format msgid "namespace alias %qD not allowed here, assuming %qD" msgstr "" -#: cp/name-lookup.c:8862 +#: cp/name-lookup.c:8879 #, gcc-internal-format msgid "inline namespace must be specified at initial definition" msgstr "" -#: cp/name-lookup.c:8863 +#: cp/name-lookup.c:8880 #, gcc-internal-format msgid "%qD defined here" msgstr "" -#: cp/name-lookup.c:8915 +#: cp/name-lookup.c:8932 #, gcc-internal-format msgid "%s namespace %qD conflicts with reachable definition" msgstr "" -#: cp/name-lookup.c:8917 +#: cp/name-lookup.c:8934 #, gcc-internal-format, gfc-internal-format msgid "reachable %s definition here" msgstr "" -#: cp/name-lookup.c:8997 +#: cp/name-lookup.c:9014 #, gcc-internal-format msgid "XXX entering %<pop_everything ()%>" msgstr "" -#: cp/name-lookup.c:9006 +#: cp/name-lookup.c:9023 #, gcc-internal-format msgid "XXX leaving %<pop_everything ()%>" msgstr "" @@ -55064,7 +55111,7 @@ msgstr "" msgid "%<LEXER_DEBUGGING_ENABLED_P%> is not set to true" msgstr "" -#: cp/parser.c:1415 cp/parser.c:42693 +#: cp/parser.c:1415 cp/parser.c:42746 #, gcc-internal-format msgid "" "%<#pragma omp declare %s%> not immediately followed by function declaration " @@ -55091,7 +55138,7 @@ msgstr "" msgid "request for member %qE in non-class type %qT" msgstr "" -#: cp/parser.c:3106 cp/parser.c:20001 +#: cp/parser.c:3106 cp/parser.c:20038 #, gcc-internal-format msgid "%<%T::%E%> has not been declared" msgstr "" @@ -55171,7 +55218,7 @@ msgstr "" msgid "ISO C++ forbids using a floating-point literal in a constant-expression" msgstr "" -#: cp/parser.c:3301 cp/pt.c:19710 +#: cp/parser.c:3301 cp/pt.c:19798 #, gcc-internal-format msgid "" "a cast to a type other than an integral or enumeration type cannot appear in " @@ -55317,7 +55364,7 @@ msgstr "" msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>" msgstr "" -#: cp/parser.c:3496 cp/parser.c:28706 +#: cp/parser.c:3496 cp/parser.c:28760 #, gcc-internal-format msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>" msgstr "" @@ -55447,7 +55494,7 @@ msgstr "" msgid "global module fragment contents must be from preprocessor inclusion" msgstr "" -#: cp/parser.c:4935 cp/parser.c:14325 +#: cp/parser.c:4935 cp/parser.c:14349 #, gcc-internal-format msgid "expected declaration" msgstr "" @@ -55499,7 +55546,7 @@ msgstr "" msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:5638 cp/parser.c:5817 cp/parser.c:5995 cp/semantics.c:3942 +#: cp/parser.c:5638 cp/parser.c:5817 cp/parser.c:5995 cp/semantics.c:3960 #, gcc-internal-format msgid "expected primary-expression" msgstr "" @@ -55529,7 +55576,7 @@ msgstr "" msgid "%<template%> keyword not permitted in destructor name" msgstr "" -#: cp/parser.c:6329 cp/parser.c:8350 +#: cp/parser.c:6329 cp/parser.c:8357 #, gcc-internal-format msgid "%<~auto%> only available with %<-std=c++14%> or %<-std=gnu++14%>" msgstr "" @@ -55549,12 +55596,12 @@ msgstr "" msgid "typedef-name %qD used as destructor declarator" msgstr "" -#: cp/parser.c:6500 cp/parser.c:22400 +#: cp/parser.c:6500 cp/parser.c:22437 #, gcc-internal-format msgid "expected unqualified-id" msgstr "" -#: cp/parser.c:6527 cp/typeck.c:2843 cp/typeck.c:2846 cp/typeck.c:2863 +#: cp/parser.c:6527 cp/typeck.c:2854 cp/typeck.c:2857 cp/typeck.c:2874 #, gcc-internal-format msgid "%qD is not a template" msgstr "" @@ -55589,7 +55636,7 @@ msgstr "" msgid "expected nested-name-specifier" msgstr "" -#: cp/parser.c:7143 cp/parser.c:9595 +#: cp/parser.c:7143 cp/parser.c:9602 #, gcc-internal-format msgid "types may not be defined in casts" msgstr "" @@ -55604,7 +55651,7 @@ msgstr "" msgid "wrong number of arguments to %<__builtin_addressof%>" msgstr "" -#: cp/parser.c:7336 cp/pt.c:20360 +#: cp/parser.c:7336 cp/pt.c:20448 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_launder%>" msgstr "" @@ -55619,1193 +55666,1198 @@ msgstr "" msgid "two consecutive %<[%> shall only introduce an attribute" msgstr "" -#: cp/parser.c:8088 cp/typeck.c:2731 +#: cp/parser.c:8095 cp/typeck.c:2742 #, gcc-internal-format msgid "invalid use of %qD" msgstr "" -#: cp/parser.c:8097 +#: cp/parser.c:8104 #, gcc-internal-format msgid "%<%D::%D%> is not a class member" msgstr "" -#: cp/parser.c:8402 +#: cp/parser.c:8409 #, gcc-internal-format msgid "non-scalar type" msgstr "" -#: cp/parser.c:8512 +#: cp/parser.c:8519 #, gcc-internal-format msgid "ISO C++ does not allow %<alignof%> with a non-type" msgstr "" -#: cp/parser.c:8607 +#: cp/parser.c:8614 #, gcc-internal-format msgid "types may not be defined in %<noexcept%> expressions" msgstr "" -#: cp/parser.c:8881 cp/parser.c:31202 +#: cp/parser.c:8888 cp/parser.c:31256 #, gcc-internal-format msgid "types may not be defined in %qs expressions" msgstr "" -#: cp/parser.c:8946 +#: cp/parser.c:8953 #, gcc-internal-format msgid "%<__builtin_has_attribute%> with dependent argument not supported yet" msgstr "" -#: cp/parser.c:9032 +#: cp/parser.c:9039 #, gcc-internal-format msgid "types may not be defined in a new-expression" msgstr "" -#: cp/parser.c:9048 +#: cp/parser.c:9055 #, gcc-internal-format msgid "array bound forbidden after parenthesized type-id" msgstr "" -#: cp/parser.c:9050 +#: cp/parser.c:9057 #, gcc-internal-format msgid "try removing the parentheses around the type-id" msgstr "" -#: cp/parser.c:9082 +#: cp/parser.c:9089 #, gcc-internal-format msgid "" "initialization of new-expression for type %<auto%> requires exactly one " "element" msgstr "" -#: cp/parser.c:9127 +#: cp/parser.c:9134 #, gcc-internal-format msgid "expected expression-list or type-id" msgstr "" -#: cp/parser.c:9156 +#: cp/parser.c:9163 #, gcc-internal-format msgid "types may not be defined in a new-type-id" msgstr "" -#: cp/parser.c:9291 +#: cp/parser.c:9298 #, gcc-internal-format msgid "expression in new-declarator must have integral or enumeration type" msgstr "" -#: cp/parser.c:9700 +#: cp/parser.c:9707 #, gcc-internal-format msgid "use of old-style cast to %q#T" msgstr "" -#: cp/parser.c:9849 +#: cp/parser.c:9856 #, gcc-internal-format msgid "%<>>%> operator is treated as two right angle brackets in C++11" msgstr "" -#: cp/parser.c:9852 +#: cp/parser.c:9859 #, gcc-internal-format msgid "suggest parentheses around %<>>%> expression" msgstr "" -#: cp/parser.c:10060 +#: cp/parser.c:10067 #, gcc-internal-format msgid "ISO C++ does not allow %<?:%> with omitted middle operand" msgstr "" -#: cp/parser.c:10349 +#: cp/parser.c:10356 #, gcc-internal-format msgid "top-level comma expression in array subscript is deprecated" msgstr "" -#: cp/parser.c:10499 +#: cp/parser.c:10506 #, gcc-internal-format msgid "types may not be defined within %<__builtin_offsetof%>" msgstr "" -#: cp/parser.c:10798 +#: cp/parser.c:10809 +#, gcc-internal-format +msgid "lambda-expression in template parameter type" +msgstr "" + +#: cp/parser.c:10819 #, gcc-internal-format msgid "" "lambda-expression in unevaluated context only available with %<-std=c++20%> " "or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:10808 +#: cp/parser.c:10829 #, gcc-internal-format msgid "" "lambda-expression in template-argument only available with %<-std=c++20%> or " "%<-std=gnu++20%>" msgstr "" -#: cp/parser.c:10960 +#: cp/parser.c:10981 #, gcc-internal-format msgid "non-local lambda expression cannot have a capture-default" msgstr "" -#: cp/parser.c:10982 +#: cp/parser.c:11003 #, gcc-internal-format msgid "expected end of capture-list" msgstr "" -#: cp/parser.c:10997 +#: cp/parser.c:11018 #, gcc-internal-format msgid "" "explicit by-copy capture of %<this%> redundant with by-copy capture default" msgstr "" -#: cp/parser.c:11002 cp/parser.c:11023 cp/parser.c:11215 +#: cp/parser.c:11023 cp/parser.c:11044 cp/parser.c:11236 #, gcc-internal-format msgid "already captured %qD in lambda expression" msgstr "" -#: cp/parser.c:11017 +#: cp/parser.c:11038 #, gcc-internal-format msgid "" "%<*this%> capture only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:11037 +#: cp/parser.c:11058 #, gcc-internal-format msgid "%<this%> cannot be captured by reference" msgstr "" -#: cp/parser.c:11056 +#: cp/parser.c:11077 #, gcc-internal-format msgid "" "pack init-capture only available with %<-std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:11067 +#: cp/parser.c:11088 #, gcc-internal-format msgid "%<&%> should come before %<...%>" msgstr "" -#: cp/parser.c:11098 +#: cp/parser.c:11119 #, gcc-internal-format msgid "" "lambda capture initializers only available with %<-std=c++14%> or %<-std=gnu+" "+14%>" msgstr "" -#: cp/parser.c:11105 +#: cp/parser.c:11126 #, gcc-internal-format msgid "empty initializer for lambda init-capture" msgstr "" -#: cp/parser.c:11129 +#: cp/parser.c:11150 #, gcc-internal-format msgid "capture of non-variable %qE" msgstr "" -#: cp/parser.c:11139 +#: cp/parser.c:11160 #, gcc-internal-format msgid "capture of variable %qD with non-automatic storage duration" msgstr "" -#: cp/parser.c:11177 +#: cp/parser.c:11198 #, gcc-internal-format msgid "too many %<...%> in lambda capture" msgstr "" -#: cp/parser.c:11188 +#: cp/parser.c:11209 #, gcc-internal-format msgid "explicit by-copy capture of %qD redundant with by-copy capture default" msgstr "" -#: cp/parser.c:11193 +#: cp/parser.c:11214 #, gcc-internal-format msgid "" "explicit by-reference capture of %qD redundant with by-reference capture " "default" msgstr "" -#: cp/parser.c:11272 +#: cp/parser.c:11293 #, gcc-internal-format msgid "" "lambda templates are only available with %<-std=c++14%> or %<-std=gnu++14%>" msgstr "" -#: cp/parser.c:11276 +#: cp/parser.c:11297 #, gcc-internal-format msgid "" "lambda templates are only available with %<-std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:11344 +#: cp/parser.c:11365 #, gcc-internal-format msgid "default argument specified for lambda parameter" msgstr "" -#: cp/parser.c:11364 +#: cp/parser.c:11385 #, gcc-internal-format msgid "" "parameter declaration before lambda declaration specifiers only optional " "with %<-std=c++2b%> or %<-std=gnu++2b%>" msgstr "" -#: cp/parser.c:11376 +#: cp/parser.c:11397 #, gcc-internal-format msgid "duplicate %<mutable%>" msgstr "" -#: cp/parser.c:11383 +#: cp/parser.c:11404 #, gcc-internal-format msgid "" "parameter declaration before lambda transaction qualifier only optional with " "%<-std=c++2b%> or %<-std=gnu++2b%>" msgstr "" -#: cp/parser.c:11396 +#: cp/parser.c:11417 #, gcc-internal-format msgid "" "parameter declaration before lambda exception specification only optional " "with %<-std=c++2b%> or %<-std=gnu++2b%>" msgstr "" -#: cp/parser.c:11414 +#: cp/parser.c:11435 #, gcc-internal-format msgid "" "parameter declaration before lambda trailing return type only optional with " "%<-std=c++2b%> or %<-std=gnu++2b%>" msgstr "" -#: cp/parser.c:11456 +#: cp/parser.c:11477 #, gcc-internal-format msgid "" "%<constexpr%> lambda only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:11845 cp/parser.c:12046 +#: cp/parser.c:11866 cp/parser.c:12067 #, gcc-internal-format msgid "attributes at the beginning of statement are ignored" msgstr "" -#: cp/parser.c:11885 +#: cp/parser.c:11906 #, gcc-internal-format msgid "expected labeled-statement" msgstr "" -#: cp/parser.c:11934 +#: cp/parser.c:11955 #, gcc-internal-format msgid "case label %qE not within a switch statement" msgstr "" -#: cp/parser.c:12053 +#: cp/parser.c:12074 #, gcc-internal-format msgid "need %<typename%> before %qE because %qT is a dependent scope" msgstr "" -#: cp/parser.c:12062 +#: cp/parser.c:12083 #, gcc-internal-format msgid "%<%T::%D%> names the constructor, not the type" msgstr "" -#: cp/parser.c:12110 +#: cp/parser.c:12131 #, gcc-internal-format msgid "compound-statement in %<constexpr%> function" msgstr "" -#: cp/parser.c:12275 +#: cp/parser.c:12297 #, gcc-internal-format msgid "%<if constexpr%> only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:12302 +#: cp/parser.c:12324 #, gcc-internal-format msgid "" "init-statement in selection statements only available with %<-std=c++17%> or " "%<-std=gnu++17%>" msgstr "" -#: cp/parser.c:12470 cp/parser.c:31686 +#: cp/parser.c:12492 cp/parser.c:31740 #, gcc-internal-format msgid "expected selection-statement" msgstr "" -#: cp/parser.c:12511 +#: cp/parser.c:12533 #, gcc-internal-format msgid "condition declares an array" msgstr "" -#: cp/parser.c:12513 +#: cp/parser.c:12535 #, gcc-internal-format msgid "condition declares a function" msgstr "" -#: cp/parser.c:12553 +#: cp/parser.c:12575 #, gcc-internal-format msgid "types may not be defined in conditions" msgstr "" #. Anything else is an error. -#: cp/parser.c:12634 cp/parser.c:21692 cp/parser.c:24161 +#: cp/parser.c:12656 cp/parser.c:21729 cp/parser.c:24198 #, gcc-internal-format msgid "expected initializer" msgstr "" -#: cp/parser.c:12918 +#: cp/parser.c:12942 #, gcc-internal-format msgid "" "loop variable %qD of type %qT binds to a temporary constructed from type %qT" msgstr "" #. rval -#: cp/parser.c:12925 +#: cp/parser.c:12949 #, gcc-internal-format msgid "" "use non-reference type %qT to make the copy explicit or %qT to prevent " "copying" msgstr "" -#: cp/parser.c:12950 +#: cp/parser.c:12974 #, gcc-internal-format msgid "loop variable %qD creates a copy from type %qT" msgstr "" -#: cp/parser.c:12955 +#: cp/parser.c:12979 #, gcc-internal-format msgid "use reference type to prevent copying" msgstr "" -#: cp/parser.c:13098 +#: cp/parser.c:13122 #, gcc-internal-format msgid "range-based %<for%> expression of type %qT has incomplete type" msgstr "" -#: cp/parser.c:13182 +#: cp/parser.c:13206 #, gcc-internal-format msgid "" "inconsistent begin/end types in range-based %<for%> statement: %qT and %qT" msgstr "" -#: cp/parser.c:13325 cp/parser.c:31689 +#: cp/parser.c:13349 cp/parser.c:31743 #, gcc-internal-format msgid "expected iteration-statement" msgstr "" -#: cp/parser.c:13371 +#: cp/parser.c:13395 #, gcc-internal-format msgid "" "range-based %<for%> loops with initializer only available with %<-std=c+" "+20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:13395 +#: cp/parser.c:13419 #, gcc-internal-format msgid "" "range-based %<for%> loops only available with %<-std=c++11%> or %<-std=gnu+" "+11%>" msgstr "" -#: cp/parser.c:13526 +#: cp/parser.c:13550 #, gcc-internal-format msgid "%<goto%> in %<constexpr%> function" msgstr "" #. Issue a warning about this use of a GNU extension. -#: cp/parser.c:13534 +#: cp/parser.c:13558 #, gcc-internal-format msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.c:13547 cp/parser.c:31692 +#: cp/parser.c:13571 cp/parser.c:31746 #, gcc-internal-format msgid "expected jump-statement" msgstr "" -#: cp/parser.c:13724 +#: cp/parser.c:13748 #, gcc-internal-format msgid "expected module-name" msgstr "" -#: cp/parser.c:13759 +#: cp/parser.c:13783 #, gcc-internal-format msgid "module-declaration not permitted in header-unit" msgstr "" -#: cp/parser.c:13784 +#: cp/parser.c:13808 #, gcc-internal-format msgid "" "private module fragment only permitted in purview of module interface or " "partition" msgstr "" -#: cp/parser.c:13789 +#: cp/parser.c:13813 #, gcc-internal-format msgid "private module fragment" msgstr "" #. Neither the first declaration, nor in a GMF. -#: cp/parser.c:13795 +#: cp/parser.c:13819 #, gcc-internal-format msgid "" "module-declaration only permitted as first declaration, or ending a global " "module fragment" msgstr "" -#: cp/parser.c:13832 +#: cp/parser.c:13856 #, gcc-internal-format msgid "post-module-declaration imports must be contiguous" msgstr "" -#: cp/parser.c:13835 +#: cp/parser.c:13859 #, gcc-internal-format msgid "" "perhaps insert a line break, or other disambiguation, to prevent this being " "considered a module control-line" msgstr "" -#: cp/parser.c:13843 +#: cp/parser.c:13867 #, gcc-internal-format msgid "import-declaration must be at global scope" msgstr "" -#: cp/parser.c:13856 +#: cp/parser.c:13880 #, gcc-internal-format msgid "import cannot appear directly in a linkage-specification" msgstr "" -#: cp/parser.c:13864 +#: cp/parser.c:13888 #, gcc-internal-format msgid "post-module-declaration imports must not be include-translated" msgstr "" -#: cp/parser.c:13869 +#: cp/parser.c:13893 #, gcc-internal-format msgid "post-module-declaration imports must not be from header inclusion" msgstr "" -#: cp/parser.c:13889 +#: cp/parser.c:13913 #, gcc-internal-format msgid "%qE may only occur after a module interface declaration" msgstr "" -#: cp/parser.c:13897 +#: cp/parser.c:13921 #, gcc-internal-format msgid "%qE may only occur once in an export declaration" msgstr "" -#: cp/parser.c:13918 +#: cp/parser.c:13942 #, gcc-internal-format msgid "%<export%> not part of following module-directive" msgstr "" -#: cp/parser.c:14020 +#: cp/parser.c:14044 #, gcc-internal-format msgid "attributes are not permitted in this position" msgstr "" -#: cp/parser.c:14024 +#: cp/parser.c:14048 #, gcc-internal-format msgid "attributes may be inserted here" msgstr "" -#: cp/parser.c:14155 cp/parser.c:25964 +#: cp/parser.c:14179 cp/parser.c:25999 #, gcc-internal-format msgid "extra %<;%>" msgstr "" -#: cp/parser.c:14248 +#: cp/parser.c:14272 #, gcc-internal-format msgid "%<__label__%> not at the beginning of a block" msgstr "" -#: cp/parser.c:14463 +#: cp/parser.c:14487 #, gcc-internal-format msgid "" "non-variable %qD in declaration with more than one declarator with " "placeholder type" msgstr "" -#: cp/parser.c:14483 +#: cp/parser.c:14507 #, gcc-internal-format msgid "inconsistent deduction for %qT: %qT and then %qT" msgstr "" -#: cp/parser.c:14504 +#: cp/parser.c:14528 #, gcc-internal-format msgid "mixing declarations and function-definitions is forbidden" msgstr "" -#: cp/parser.c:14528 +#: cp/parser.c:14552 #, gcc-internal-format msgid "types may not be defined in a for-range-declaration" msgstr "" -#: cp/parser.c:14583 +#: cp/parser.c:14607 #, gcc-internal-format msgid "initializer in range-based %<for%> loop" msgstr "" -#: cp/parser.c:14586 +#: cp/parser.c:14610 #, gcc-internal-format msgid "multiple declarations in range-based %<for%> loop" msgstr "" -#: cp/parser.c:14637 +#: cp/parser.c:14661 #, gcc-internal-format msgid "" "structured bindings only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:14689 +#: cp/parser.c:14713 #, gcc-internal-format msgid "empty structured binding declaration" msgstr "" -#: cp/parser.c:14707 +#: cp/parser.c:14731 #, gcc-internal-format msgid "invalid initializer for structured binding declaration" msgstr "" -#: cp/parser.c:14876 +#: cp/parser.c:14900 #, gcc-internal-format msgid "%<friend%> used outside of class" msgstr "" -#: cp/parser.c:14915 +#: cp/parser.c:14939 #, gcc-internal-format msgid "the %<bool%> keyword is not allowed in a C++20 concept definition" msgstr "" -#: cp/parser.c:14918 +#: cp/parser.c:14942 #, gcc-internal-format msgid "C++20 concept definition syntax is %<concept <name> = <expr>%>" msgstr "" -#: cp/parser.c:14985 +#: cp/parser.c:15009 #, gcc-internal-format msgid "%<auto%> changes meaning in C++11; please remove it" msgstr "" -#: cp/parser.c:15021 +#: cp/parser.c:15045 #, gcc-internal-format msgid "%<decl-specifier%> invalid in condition" msgstr "" -#: cp/parser.c:15028 +#: cp/parser.c:15052 #, gcc-internal-format msgid "%qD invalid in lambda" msgstr "" -#: cp/parser.c:15109 +#: cp/parser.c:15133 #, gcc-internal-format msgid "type-specifier invalid in lambda" msgstr "" -#: cp/parser.c:15128 +#: cp/parser.c:15152 #, gcc-internal-format msgid "class definition may not be declared a friend" msgstr "" -#: cp/parser.c:15201 cp/parser.c:26479 +#: cp/parser.c:15225 cp/parser.c:26514 #, gcc-internal-format msgid "templates may not be %<virtual%>" msgstr "" -#: cp/parser.c:15220 +#: cp/parser.c:15244 #, gcc-internal-format msgid "types may not be defined in explicit-specifier" msgstr "" -#: cp/parser.c:15224 +#: cp/parser.c:15248 #, gcc-internal-format msgid "" "%<explicit(bool)%> only available with %<-std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:15288 +#: cp/parser.c:15312 #, gcc-internal-format msgid "invalid linkage-specification" msgstr "" -#: cp/parser.c:15392 +#: cp/parser.c:15416 #, gcc-internal-format msgid "" "%<static_assert%> without a message only available with %<-std=c++17%> or %<-" "std=gnu++17%>" msgstr "" -#: cp/parser.c:15594 +#: cp/parser.c:15618 #, gcc-internal-format msgid "" "%<decltype(auto)%> type specifier only available with %<-std=c++14%> or %<-" "std=gnu++14%>" msgstr "" -#: cp/parser.c:15607 +#: cp/parser.c:15631 #, gcc-internal-format msgid "types may not be defined in %<decltype%> expressions" msgstr "" -#: cp/parser.c:15770 +#: cp/parser.c:15794 #, gcc-internal-format msgid "types may not be defined in a conversion-type-id" msgstr "" -#: cp/parser.c:15799 +#: cp/parser.c:15823 #, gcc-internal-format msgid "invalid use of %<auto%> in conversion operator" msgstr "" -#: cp/parser.c:15803 +#: cp/parser.c:15827 #, gcc-internal-format msgid "" "use of %<auto%> in member template conversion operator can never be deduced" msgstr "" -#: cp/parser.c:15887 +#: cp/parser.c:15911 #, gcc-internal-format msgid "only constructors take member initializers" msgstr "" -#: cp/parser.c:15914 +#: cp/parser.c:15938 #, gcc-internal-format msgid "cannot expand initializer for member %qD" msgstr "" -#: cp/parser.c:15926 cp/pt.c:26408 +#: cp/parser.c:15950 cp/pt.c:26452 #, gcc-internal-format msgid "mem-initializer for %qD follows constructor delegation" msgstr "" -#: cp/parser.c:15938 cp/pt.c:26420 +#: cp/parser.c:15962 cp/pt.c:26464 #, gcc-internal-format msgid "constructor delegation follows mem-initializer for %qD" msgstr "" -#: cp/parser.c:15990 +#: cp/parser.c:16014 #, gcc-internal-format msgid "anachronistic old-style base class initializer" msgstr "" -#: cp/parser.c:16075 +#: cp/parser.c:16099 #, gcc-internal-format msgid "" "keyword %<typename%> not allowed in this context (a qualified member " "initializer is implicitly a type)" msgstr "" -#: cp/parser.c:16476 +#: cp/parser.c:16500 #, gcc-internal-format msgid "unexpected keyword; remove space between quotes and suffix identifier" msgstr "" -#: cp/parser.c:16482 +#: cp/parser.c:16506 #, gcc-internal-format msgid "expected suffix identifier" msgstr "" -#: cp/parser.c:16491 +#: cp/parser.c:16515 #, gcc-internal-format msgid "expected empty string after %<operator%> keyword" msgstr "" -#: cp/parser.c:16497 +#: cp/parser.c:16521 #, gcc-internal-format msgid "invalid encoding prefix in literal operator" msgstr "" -#: cp/parser.c:16531 +#: cp/parser.c:16555 #, gcc-internal-format msgid "expected operator" msgstr "" -#: cp/parser.c:16578 +#: cp/parser.c:16602 #, gcc-internal-format msgid "keyword %<export%> not implemented, and will be ignored" msgstr "" -#: cp/parser.c:16580 +#: cp/parser.c:16604 #, gcc-internal-format msgid "keyword %<export%> is deprecated, and is ignored" msgstr "" -#: cp/parser.c:16582 +#: cp/parser.c:16606 #, gcc-internal-format msgid "keyword %<export%> is enabled with %<-fmodules-ts%>" msgstr "" -#: cp/parser.c:16761 +#: cp/parser.c:16785 #, gcc-internal-format msgid "invalid constrained type parameter" msgstr "" -#: cp/parser.c:16769 +#: cp/parser.c:16793 #, gcc-internal-format msgid "cv-qualified type parameter" msgstr "" -#: cp/parser.c:16912 +#: cp/parser.c:16940 #, gcc-internal-format msgid "invalid use of %<auto%> in default template argument" msgstr "" -#: cp/parser.c:17148 cp/parser.c:17234 cp/parser.c:23932 +#: cp/parser.c:17176 cp/parser.c:17262 cp/parser.c:23969 #, gcc-internal-format msgid "template parameter pack %qD cannot have a default argument" msgstr "" -#: cp/parser.c:17152 cp/parser.c:17238 +#: cp/parser.c:17180 cp/parser.c:17266 #, gcc-internal-format msgid "template parameter packs cannot have default arguments" msgstr "" -#: cp/parser.c:17305 +#: cp/parser.c:17333 #, gcc-internal-format msgid "expected template-id" msgstr "" -#: cp/parser.c:17367 +#: cp/parser.c:17395 #, gcc-internal-format msgid "%<<::%> cannot begin a template-argument list" msgstr "" -#: cp/parser.c:17371 +#: cp/parser.c:17399 #, gcc-internal-format msgid "" "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> " "and %<::%>" msgstr "" -#: cp/parser.c:17375 +#: cp/parser.c:17403 #, gcc-internal-format msgid "" "(if you use %<-fpermissive%> or %<-std=c++11%>, or %<-std=gnu++11%> G++ will " "accept your code)" msgstr "" -#: cp/parser.c:17405 +#: cp/parser.c:17433 #, gcc-internal-format msgid "invalid template-argument-list" msgstr "" -#: cp/parser.c:17406 +#: cp/parser.c:17434 #, gcc-internal-format msgid "" "function name as the left hand operand of %<<%> is ill-formed in C++20; wrap " "the function name in %<()%>" msgstr "" -#: cp/parser.c:17413 +#: cp/parser.c:17441 #, gcc-internal-format msgid "expected %<(%> after template-argument-list" msgstr "" -#: cp/parser.c:17517 +#: cp/parser.c:17545 #, gcc-internal-format msgid "parse error in template argument list" msgstr "" #. The name does not name a template. -#: cp/parser.c:17602 cp/parser.c:17768 cp/parser.c:17973 +#: cp/parser.c:17630 cp/parser.c:17796 cp/parser.c:18001 #, gcc-internal-format msgid "expected template-name" msgstr "" #. Explain what went wrong. -#: cp/parser.c:17648 +#: cp/parser.c:17676 #, gcc-internal-format msgid "non-template %qD used as template" msgstr "" -#: cp/parser.c:17650 +#: cp/parser.c:17678 #, gcc-internal-format msgid "use %<%T::template %D%> to indicate that it is a template" msgstr "" -#: cp/parser.c:17829 +#: cp/parser.c:17857 #, gcc-internal-format msgid "expected parameter pack before %<...%>" msgstr "" -#: cp/parser.c:17938 cp/parser.c:17956 cp/parser.c:18127 +#: cp/parser.c:17966 cp/parser.c:17984 cp/parser.c:18155 #, gcc-internal-format msgid "expected template-argument" msgstr "" -#: cp/parser.c:18094 +#: cp/parser.c:18122 #, gcc-internal-format msgid "invalid non-type template argument" msgstr "" -#: cp/parser.c:18229 +#: cp/parser.c:18257 #, gcc-internal-format msgid "explicit instantiation shall not use %<inline%> specifier" msgstr "" -#: cp/parser.c:18233 +#: cp/parser.c:18261 #, gcc-internal-format msgid "explicit instantiation shall not use %<constexpr%> specifier" msgstr "" -#: cp/parser.c:18237 +#: cp/parser.c:18265 #, gcc-internal-format msgid "explicit instantiation shall not use %<consteval%> specifier" msgstr "" -#: cp/parser.c:18297 +#: cp/parser.c:18325 #, gcc-internal-format msgid "template specialization with C linkage" msgstr "" -#: cp/parser.c:18517 +#: cp/parser.c:18554 #, gcc-internal-format msgid "expected type specifier" msgstr "" -#: cp/parser.c:18710 +#: cp/parser.c:18747 #, gcc-internal-format msgid "" "use of %<auto%> in lambda parameter declaration only available with %<-std=c+" "+14%> or %<-std=gnu++14%>" msgstr "" -#: cp/parser.c:18716 +#: cp/parser.c:18753 #, gcc-internal-format msgid "" "use of %<auto%> in parameter declaration only available with %<-std=c++14%> " "or %<-std=gnu++14%>" msgstr "" -#: cp/parser.c:18721 +#: cp/parser.c:18758 #, gcc-internal-format msgid "" "use of %<auto%> in parameter declaration only available with %<-fconcepts-ts" "%>" msgstr "" -#: cp/parser.c:18878 +#: cp/parser.c:18915 #, gcc-internal-format msgid "expected template-id for type" msgstr "" -#: cp/parser.c:19008 +#: cp/parser.c:19045 #, gcc-internal-format msgid "expected type-name" msgstr "" -#: cp/parser.c:19118 +#: cp/parser.c:19155 #, gcc-internal-format msgid "%qE does not constrain a type" msgstr "" -#: cp/parser.c:19119 +#: cp/parser.c:19156 #, gcc-internal-format msgid "concept defined here" msgstr "" -#: cp/parser.c:19141 +#: cp/parser.c:19178 #, gcc-internal-format msgid "expected %<auto%> or %<decltype(auto)%> after %qE" msgstr "" -#: cp/parser.c:19148 +#: cp/parser.c:19185 #, gcc-internal-format msgid "unexpected placeholder in constrained result type" msgstr "" -#: cp/parser.c:19391 +#: cp/parser.c:19428 #, gcc-internal-format msgid "" "elaborated-type-specifier for a scoped enum must not use the %qD keyword" msgstr "" -#: cp/parser.c:19467 +#: cp/parser.c:19504 #, gcc-internal-format msgid "%<template%> must follow a nested-name-specifier" msgstr "" -#: cp/parser.c:19629 +#: cp/parser.c:19666 #, gcc-internal-format msgid "declaration %qD does not declare anything" msgstr "" -#: cp/parser.c:19717 +#: cp/parser.c:19754 #, gcc-internal-format msgid "attributes ignored on uninstantiated type" msgstr "" -#: cp/parser.c:19723 +#: cp/parser.c:19760 #, gcc-internal-format msgid "attributes ignored on template instantiation" msgstr "" -#: cp/parser.c:19728 +#: cp/parser.c:19765 #, gcc-internal-format msgid "" "attributes ignored on elaborated-type-specifier that is not a forward " "declaration" msgstr "" -#: cp/parser.c:19868 +#: cp/parser.c:19905 #, gcc-internal-format msgid "%qD is an enumeration template" msgstr "" -#: cp/parser.c:19879 +#: cp/parser.c:19916 #, gcc-internal-format msgid "%qD does not name an enumeration in %qT" msgstr "" -#: cp/parser.c:19894 +#: cp/parser.c:19931 #, gcc-internal-format msgid "unnamed scoped enum is not allowed" msgstr "" -#: cp/parser.c:19951 +#: cp/parser.c:19988 #, gcc-internal-format msgid "expected %<;%> or %<{%>" msgstr "" -#: cp/parser.c:19995 +#: cp/parser.c:20032 #, gcc-internal-format msgid "cannot add an enumerator list to a template instantiation" msgstr "" -#: cp/parser.c:20009 +#: cp/parser.c:20046 #, gcc-internal-format msgid "" "nested name specifier %qT for enum declaration does not name a class or " "namespace" msgstr "" -#: cp/parser.c:20021 cp/parser.c:25439 +#: cp/parser.c:20058 cp/parser.c:25474 #, gcc-internal-format msgid "declaration of %qD in namespace %qD which does not enclose %qD" msgstr "" -#: cp/parser.c:20026 cp/parser.c:25444 +#: cp/parser.c:20063 cp/parser.c:25479 #, gcc-internal-format msgid "declaration of %qD in %qD which does not enclose %qD" msgstr "" -#: cp/parser.c:20038 cp/parser.c:25457 +#: cp/parser.c:20075 cp/parser.c:25492 #, gcc-internal-format msgid "extra qualification not allowed" msgstr "" -#: cp/parser.c:20075 +#: cp/parser.c:20112 #, gcc-internal-format msgid "ISO C++ forbids empty unnamed enum" msgstr "" -#: cp/parser.c:20100 +#: cp/parser.c:20137 #, gcc-internal-format msgid "opaque-enum-specifier without name" msgstr "" -#: cp/parser.c:20103 +#: cp/parser.c:20140 #, gcc-internal-format msgid "opaque-enum-specifier must use a simple identifier" msgstr "" -#: cp/parser.c:20290 +#: cp/parser.c:20327 #, gcc-internal-format msgid "%qD is not a namespace-name; did you mean %qs?" msgstr "" -#: cp/parser.c:20294 +#: cp/parser.c:20331 #, gcc-internal-format msgid "%qD is not a namespace-name" msgstr "" -#: cp/parser.c:20298 +#: cp/parser.c:20335 #, gcc-internal-format msgid "expected namespace-name" msgstr "" -#: cp/parser.c:20359 +#: cp/parser.c:20396 #, gcc-internal-format msgid "" "nested inline namespace definitions only available with %<-std=c++20%> or %<-" "std=gnu++20%>" msgstr "" -#: cp/parser.c:20370 +#: cp/parser.c:20407 #, gcc-internal-format msgid "standard attributes on namespaces must precede the namespace name" msgstr "" -#: cp/parser.c:20389 +#: cp/parser.c:20426 #, gcc-internal-format msgid "" "nested namespace definitions only available with %<-std=c++17%> or %<-std=gnu" "++17%>" msgstr "" -#: cp/parser.c:20399 +#: cp/parser.c:20436 #, gcc-internal-format msgid "nested namespace name required" msgstr "" -#: cp/parser.c:20404 +#: cp/parser.c:20441 #, gcc-internal-format msgid "namespace name required" msgstr "" -#: cp/parser.c:20408 +#: cp/parser.c:20445 #, gcc-internal-format msgid "a nested namespace definition cannot have attributes" msgstr "" -#: cp/parser.c:20411 +#: cp/parser.c:20448 #, gcc-internal-format msgid "a nested namespace definition cannot be inline" msgstr "" -#: cp/parser.c:20418 +#: cp/parser.c:20455 #, gcc-internal-format msgid "namespace %qD entered" msgstr "" -#: cp/parser.c:20473 +#: cp/parser.c:20510 #, gcc-internal-format msgid "%<namespace%> definition is not allowed here" msgstr "" -#: cp/parser.c:20648 +#: cp/parser.c:20685 #, gcc-internal-format msgid "" "pack expansion in using-declaration only available with %<-std=c++17%> or %<-" "std=gnu++17%>" msgstr "" -#: cp/parser.c:20663 +#: cp/parser.c:20700 #, gcc-internal-format msgid "a template-id may not appear in a using-declaration" msgstr "" -#: cp/parser.c:20681 +#: cp/parser.c:20718 #, gcc-internal-format msgid "" "comma-separated list in using-declaration only available with %<-std=c++17%> " "or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:20691 +#: cp/parser.c:20728 #, gcc-internal-format msgid "" "access declarations are deprecated in favour of using-declarations; " "suggestion: add the %<using%> keyword" msgstr "" -#: cp/parser.c:20756 +#: cp/parser.c:20793 #, gcc-internal-format msgid "opaque-enum-declaration here" msgstr "" -#: cp/parser.c:20826 +#: cp/parser.c:20863 #, gcc-internal-format msgid "types may not be defined in alias template declarations" msgstr "" -#: cp/parser.c:20997 +#: cp/parser.c:21034 #, gcc-internal-format msgid "" "%<asm%> in %<constexpr%> function only available with %<-std=c++20%> or %<-" "std=gnu++20%>" msgstr "" -#: cp/parser.c:21016 cp/parser.c:21033 cp/parser.c:21047 +#: cp/parser.c:21053 cp/parser.c:21070 cp/parser.c:21084 #, gcc-internal-format msgid "duplicate %<asm%> qualifier %qT" msgstr "" -#: cp/parser.c:21023 +#: cp/parser.c:21060 #, gcc-internal-format msgid "%<asm%> qualifier %qT ignored outside of function body" msgstr "" -#: cp/parser.c:21060 +#: cp/parser.c:21097 #, gcc-internal-format msgid "%qT is not an %<asm%> qualifier" msgstr "" -#: cp/parser.c:21076 +#: cp/parser.c:21113 #, gcc-internal-format msgid "%<asm%> qualifier outside of function body" msgstr "" -#: cp/parser.c:21304 +#: cp/parser.c:21341 #, gcc-internal-format msgid "empty parentheses were disambiguated as a function declaration" msgstr "" -#: cp/parser.c:21315 +#: cp/parser.c:21352 #, gcc-internal-format msgid "remove parentheses to default-initialize a variable" msgstr "" -#: cp/parser.c:21320 +#: cp/parser.c:21357 #, gcc-internal-format msgid "or replace parentheses with braces to aggregate-initialize a variable" msgstr "" -#: cp/parser.c:21323 +#: cp/parser.c:21360 #, gcc-internal-format msgid "or replace parentheses with braces to value-initialize a variable" msgstr "" -#: cp/parser.c:21340 cp/parser.c:21365 +#: cp/parser.c:21377 cp/parser.c:21402 #, gcc-internal-format msgid "parentheses were disambiguated as a function declaration" msgstr "" -#: cp/parser.c:21352 cp/parser.c:21373 +#: cp/parser.c:21389 cp/parser.c:21410 #, gcc-internal-format msgid "replace parentheses with braces to declare a variable" msgstr "" -#: cp/parser.c:21359 +#: cp/parser.c:21396 #, gcc-internal-format msgid "add parentheses to declare a variable" msgstr "" -#: cp/parser.c:21587 +#: cp/parser.c:21624 #, gcc-internal-format msgid "a function-definition is not allowed here" msgstr "" -#: cp/parser.c:21598 +#: cp/parser.c:21635 #, gcc-internal-format msgid "an %<asm%> specification is not allowed on a function-definition" msgstr "" -#: cp/parser.c:21602 +#: cp/parser.c:21639 #, gcc-internal-format msgid "attributes are not allowed on a function-definition" msgstr "" -#: cp/parser.c:21653 +#: cp/parser.c:21690 #, gcc-internal-format msgid "expected constructor, destructor, or type conversion" msgstr "" -#: cp/parser.c:21773 +#: cp/parser.c:21810 #, gcc-internal-format msgid "initializer provided for function" msgstr "" -#: cp/parser.c:21815 +#: cp/parser.c:21852 #, gcc-internal-format msgid "attributes after parenthesized initializer ignored" msgstr "" -#: cp/parser.c:21829 +#: cp/parser.c:21866 #, gcc-internal-format msgid "non-function %qD declared as implicit template" msgstr "" -#: cp/parser.c:22320 +#: cp/parser.c:22357 #, gcc-internal-format msgid "array bound is not an integer constant" msgstr "" -#: cp/parser.c:22446 +#: cp/parser.c:22483 #, gcc-internal-format msgid "cannot define member of dependent typedef %qT" msgstr "" -#: cp/parser.c:22450 +#: cp/parser.c:22487 #, gcc-internal-format msgid "%<%T::%E%> is not a type" msgstr "" @@ -56814,17 +56866,17 @@ msgstr "" #. here because we do not have enough #. information about its original syntactic #. form. -#: cp/parser.c:22479 +#: cp/parser.c:22516 #, gcc-internal-format msgid "invalid declarator" msgstr "" -#: cp/parser.c:22487 +#: cp/parser.c:22524 #, gcc-internal-format msgid "invalid use of constructor as a template" msgstr "" -#: cp/parser.c:22489 +#: cp/parser.c:22526 #, gcc-internal-format msgid "" "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified " @@ -56833,429 +56885,429 @@ msgstr "" #. But declarations with qualified-ids can't appear in a #. function. -#: cp/parser.c:22604 +#: cp/parser.c:22641 #, gcc-internal-format msgid "qualified-id in declaration" msgstr "" -#: cp/parser.c:22629 +#: cp/parser.c:22666 #, gcc-internal-format msgid "expected declarator" msgstr "" -#: cp/parser.c:22750 +#: cp/parser.c:22787 #, gcc-internal-format msgid "%qD is a namespace" msgstr "" -#: cp/parser.c:22752 +#: cp/parser.c:22789 #, gcc-internal-format msgid "cannot form pointer to member of non-class %q#T" msgstr "" -#: cp/parser.c:22773 +#: cp/parser.c:22810 #, gcc-internal-format msgid "expected ptr-operator" msgstr "" -#: cp/parser.c:22834 +#: cp/parser.c:22871 #, gcc-internal-format msgid "duplicate cv-qualifier" msgstr "" -#: cp/parser.c:22888 +#: cp/parser.c:22925 #, gcc-internal-format msgid "multiple ref-qualifiers" msgstr "" -#: cp/parser.c:22925 +#: cp/parser.c:22962 #, gcc-internal-format msgid "%qE requires %<-fgnu-tm%>" msgstr "" -#: cp/parser.c:22983 +#: cp/parser.c:23020 #, gcc-internal-format msgid "duplicate virt-specifier" msgstr "" -#: cp/parser.c:23232 +#: cp/parser.c:23269 #, gcc-internal-format msgid "missing template arguments after %qT" msgstr "" -#: cp/parser.c:23238 +#: cp/parser.c:23275 #, gcc-internal-format msgid "%qT not permitted in template argument" msgstr "" -#: cp/parser.c:23241 cp/typeck2.c:353 cp/typeck2.c:400 cp/typeck2.c:2200 +#: cp/parser.c:23278 cp/typeck2.c:353 cp/typeck2.c:400 cp/typeck2.c:2197 #, gcc-internal-format msgid "invalid use of %qT" msgstr "" -#: cp/parser.c:23267 +#: cp/parser.c:23304 #, gcc-internal-format msgid "types may not be defined in template arguments" msgstr "" -#: cp/parser.c:23272 +#: cp/parser.c:23309 #, gcc-internal-format msgid "invalid use of %<auto%> in template argument" msgstr "" -#: cp/parser.c:23378 +#: cp/parser.c:23415 #, gcc-internal-format msgid "expected type-specifier" msgstr "" -#: cp/parser.c:23659 +#: cp/parser.c:23696 #, gcc-internal-format msgid "expected %<,%> or %<...%>" msgstr "" -#: cp/parser.c:23737 +#: cp/parser.c:23774 #, gcc-internal-format msgid "types may not be defined in parameter types" msgstr "" -#: cp/parser.c:23916 +#: cp/parser.c:23953 #, gcc-internal-format msgid "default arguments are only permitted for function parameters" msgstr "" -#: cp/parser.c:23934 +#: cp/parser.c:23971 #, gcc-internal-format msgid "parameter pack %qD cannot have a default argument" msgstr "" -#: cp/parser.c:23940 +#: cp/parser.c:23977 #, gcc-internal-format msgid "template parameter pack cannot have a default argument" msgstr "" -#: cp/parser.c:23942 +#: cp/parser.c:23979 #, gcc-internal-format msgid "parameter pack cannot have a default argument" msgstr "" -#: cp/parser.c:24068 +#: cp/parser.c:24105 #, gcc-internal-format msgid "" "function-try-block body of %<constexpr%> constructor only available with %<-" "std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:24072 +#: cp/parser.c:24109 #, gcc-internal-format msgid "" "function-try-block body of %<constexpr%> function only available with %<-" "std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:24396 +#: cp/parser.c:24433 #, gcc-internal-format msgid "" "C++ designated initializers only available with %<-std=c++20%> or %<-std=gnu+" "+20%>" msgstr "" -#: cp/parser.c:24416 +#: cp/parser.c:24453 #, gcc-internal-format msgid "ISO C++ does not allow GNU designated initializers" msgstr "" -#: cp/parser.c:24454 +#: cp/parser.c:24491 #, gcc-internal-format msgid "ISO C++ does not allow C99 designated initializers" msgstr "" -#: cp/parser.c:24468 +#: cp/parser.c:24505 #, gcc-internal-format msgid "" "either all initializer clauses should be designated or none of them should be" msgstr "" -#: cp/parser.c:24493 +#: cp/parser.c:24530 #, gcc-internal-format msgid "%<...%> not allowed in designated initializer list" msgstr "" -#: cp/parser.c:24544 +#: cp/parser.c:24581 #, gcc-internal-format msgid "%<.%s%> designator used multiple times in the same initializer list" msgstr "" -#: cp/parser.c:24600 cp/parser.c:24739 +#: cp/parser.c:24637 cp/parser.c:24774 #, gcc-internal-format msgid "expected class-name" msgstr "" -#: cp/parser.c:24978 +#: cp/parser.c:25013 #, gcc-internal-format msgid "expected %<;%> after class definition" msgstr "" -#: cp/parser.c:24981 +#: cp/parser.c:25016 #, gcc-internal-format msgid "expected %<;%> after struct definition" msgstr "" -#: cp/parser.c:24984 +#: cp/parser.c:25019 #, gcc-internal-format msgid "expected %<;%> after union definition" msgstr "" -#: cp/parser.c:25381 +#: cp/parser.c:25416 #, gcc-internal-format msgid "expected %<{%> or %<:%>" msgstr "" -#: cp/parser.c:25392 +#: cp/parser.c:25427 #, gcc-internal-format msgid "cannot specify %<override%> for a class" msgstr "" -#: cp/parser.c:25400 +#: cp/parser.c:25435 #, gcc-internal-format msgid "global qualification of class name is invalid" msgstr "" -#: cp/parser.c:25407 +#: cp/parser.c:25442 #, gcc-internal-format msgid "qualified name does not name a class" msgstr "" -#: cp/parser.c:25419 +#: cp/parser.c:25454 #, gcc-internal-format msgid "keyword %<template%> not allowed in class-head-name" msgstr "" -#: cp/parser.c:25425 +#: cp/parser.c:25460 #, gcc-internal-format msgid "invalid class name in declaration of %qD" msgstr "" -#: cp/parser.c:25479 +#: cp/parser.c:25514 #, gcc-internal-format msgid "an explicit specialization must be preceded by %<template <>%>" msgstr "" -#: cp/parser.c:25511 +#: cp/parser.c:25546 #, gcc-internal-format msgid "function template %qD redeclared as a class template" msgstr "" -#: cp/parser.c:25547 +#: cp/parser.c:25582 #, gcc-internal-format msgid "could not resolve typename type" msgstr "" -#: cp/parser.c:25612 +#: cp/parser.c:25647 #, gcc-internal-format msgid "previous definition of %q#T" msgstr "" -#: cp/parser.c:25712 cp/parser.c:31695 +#: cp/parser.c:25747 cp/parser.c:31749 #, gcc-internal-format msgid "expected class-key" msgstr "" -#: cp/parser.c:25736 +#: cp/parser.c:25771 #, gcc-internal-format msgid "" "ISO C++ forbids typename key in template template parameter; use %<-std=c+" "+17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:25740 +#: cp/parser.c:25775 #, gcc-internal-format msgid "expected %<class%> or %<typename%>" msgstr "" -#: cp/parser.c:25983 +#: cp/parser.c:26018 #, gcc-internal-format msgid "in C++03 a class-key must be used when declaring a friend" msgstr "" -#: cp/parser.c:26001 +#: cp/parser.c:26036 #, gcc-internal-format msgid "friend declaration does not name a class or function" msgstr "" -#: cp/parser.c:26019 +#: cp/parser.c:26054 #, gcc-internal-format msgid "a storage class on an anonymous aggregate in class scope is not allowed" msgstr "" -#: cp/parser.c:26117 +#: cp/parser.c:26152 #, gcc-internal-format msgid "" "default member initializers for bit-fields only available with %<-std=c+" "+20%> or %<-std=gnu++20%>" msgstr "" -#: cp/parser.c:26124 +#: cp/parser.c:26159 #, gcc-internal-format msgid "default member initializer for unnamed bit-field" msgstr "" -#: cp/parser.c:26137 +#: cp/parser.c:26172 #, gcc-internal-format msgid "ISO C++ allows bit-field attributes only before the %<:%> token" msgstr "" -#: cp/parser.c:26290 +#: cp/parser.c:26325 #, gcc-internal-format msgid "bit-field %qD has non-integral type %qT" msgstr "" -#: cp/parser.c:26318 +#: cp/parser.c:26353 #, gcc-internal-format msgid "pure-specifier on function-definition" msgstr "" -#: cp/parser.c:26338 +#: cp/parser.c:26373 #, gcc-internal-format msgid "extra %<;%> after in-class function definition" msgstr "" -#: cp/parser.c:26385 +#: cp/parser.c:26420 #, gcc-internal-format msgid "stray %<,%> at end of member declaration" msgstr "" -#: cp/parser.c:26399 +#: cp/parser.c:26434 #, gcc-internal-format msgid "expected %<;%> at end of member declaration" msgstr "" -#: cp/parser.c:26473 +#: cp/parser.c:26508 #, gcc-internal-format msgid "invalid pure specifier (only %<= 0%> is allowed)" msgstr "" -#: cp/parser.c:26508 +#: cp/parser.c:26543 #, gcc-internal-format msgid "a brace-enclosed initializer is not allowed here" msgstr "" -#: cp/parser.c:26638 +#: cp/parser.c:26673 #, gcc-internal-format msgid "%<virtual%> specified more than once in base-specifier" msgstr "" -#: cp/parser.c:26658 +#: cp/parser.c:26693 #, gcc-internal-format msgid "more than one access specifier in base-specifier" msgstr "" -#: cp/parser.c:26682 +#: cp/parser.c:26717 #, gcc-internal-format msgid "keyword %<typename%> not allowed outside of templates" msgstr "" -#: cp/parser.c:26685 +#: cp/parser.c:26720 #, gcc-internal-format msgid "" "keyword %<typename%> not allowed in this context (the base class is " "implicitly a type)" msgstr "" -#: cp/parser.c:26885 cp/parser.c:26979 +#: cp/parser.c:26920 cp/parser.c:27014 #, gcc-internal-format msgid "types may not be defined in an exception-specification" msgstr "" -#: cp/parser.c:26987 +#: cp/parser.c:27022 #, gcc-internal-format msgid "ISO C++17 does not allow dynamic exception specifications" msgstr "" -#: cp/parser.c:26993 +#: cp/parser.c:27028 #, gcc-internal-format msgid "dynamic exception specifications are deprecated in C++11" msgstr "" -#: cp/parser.c:27037 +#: cp/parser.c:27072 #, gcc-internal-format msgid "invalid use of %<auto%> in exception-specification" msgstr "" -#: cp/parser.c:27078 +#: cp/parser.c:27113 #, gcc-internal-format msgid "" "%<try%> in %<constexpr%> function only available with %<-std=c++20%> or %<-" "std=gnu++20%>" msgstr "" -#: cp/parser.c:27190 +#: cp/parser.c:27225 #, gcc-internal-format msgid "types may not be defined in exception-declarations" msgstr "" -#: cp/parser.c:27797 +#: cp/parser.c:27832 #, gcc-internal-format msgid "attribute using prefix used together with scoped attribute token" msgstr "" -#: cp/parser.c:27811 +#: cp/parser.c:27846 #, gcc-internal-format msgid "expected an identifier for the attribute name" msgstr "" #. e.g. [[attr()]]. -#: cp/parser.c:27900 +#: cp/parser.c:27935 #, gcc-internal-format msgid "parentheses must be omitted if %qE attribute argument list is empty" msgstr "" -#: cp/parser.c:27935 +#: cp/parser.c:27970 #, gcc-internal-format msgid "attribute %qs specified multiple times" msgstr "" -#: cp/parser.c:27977 +#: cp/parser.c:28012 #, gcc-internal-format msgid "expected attribute before %<...%>" msgstr "" -#: cp/parser.c:28037 +#: cp/parser.c:28072 #, gcc-internal-format msgid "" "attribute using prefix only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:28377 cp/parser.c:28386 +#: cp/parser.c:28415 cp/parser.c:28424 #, gcc-internal-format msgid "expression must be enclosed in parentheses" msgstr "" -#: cp/parser.c:28723 +#: cp/parser.c:28777 #, gcc-internal-format msgid "missing additional %<requires%> to start a requires-expression" msgstr "" -#: cp/parser.c:29073 +#: cp/parser.c:29127 #, gcc-internal-format msgid "result type is not a plain type-constraint" msgstr "" -#: cp/parser.c:29081 +#: cp/parser.c:29135 #, gcc-internal-format msgid "return-type-requirement is not a type-constraint" msgstr "" -#: cp/parser.c:29563 +#: cp/parser.c:29617 #, gcc-internal-format msgid "specializing member %<%T::%E%> requires %<template<>%> syntax" msgstr "" -#: cp/parser.c:29568 +#: cp/parser.c:29622 #, gcc-internal-format msgid "invalid declaration of %<%T::%E%>" msgstr "" -#: cp/parser.c:29572 +#: cp/parser.c:29626 #, gcc-internal-format msgid "too few template-parameter-lists" msgstr "" @@ -57264,24 +57316,24 @@ msgstr "" #. something like: #. #. template <class T> template <class U> void S::f(); -#: cp/parser.c:29579 +#: cp/parser.c:29633 #, gcc-internal-format msgid "too many template-parameter-lists" msgstr "" -#: cp/parser.c:29978 +#: cp/parser.c:30032 #, gcc-internal-format msgid "named return values are no longer supported" msgstr "" -#: cp/parser.c:30149 +#: cp/parser.c:30203 #, gcc-internal-format msgid "" "ISO C++ did not adopt string literal operator templates taking an argument " "pack of characters" msgstr "" -#: cp/parser.c:30158 +#: cp/parser.c:30212 #, gcc-internal-format msgid "" "literal operator template %qD has invalid parameter list; expected non-type " @@ -57289,675 +57341,675 @@ msgid "" "type" msgstr "" -#: cp/parser.c:30164 +#: cp/parser.c:30218 #, gcc-internal-format msgid "" "literal operator template %qD has invalid parameter list; expected non-type " "template parameter pack %<<char...>%>" msgstr "" -#: cp/parser.c:30264 +#: cp/parser.c:30318 #, gcc-internal-format msgid "" "template-introductions are not part of C++20 concepts; use %qs to enable" msgstr "" -#: cp/parser.c:30274 +#: cp/parser.c:30328 #, gcc-internal-format msgid "no matching concept for template-introduction" msgstr "" -#: cp/parser.c:30297 +#: cp/parser.c:30351 #, gcc-internal-format msgid "invalid declaration of member template in local class" msgstr "" -#: cp/parser.c:30306 +#: cp/parser.c:30360 #, gcc-internal-format msgid "template with C linkage" msgstr "" -#: cp/parser.c:30326 +#: cp/parser.c:30380 #, gcc-internal-format msgid "invalid explicit specialization" msgstr "" -#: cp/parser.c:30431 +#: cp/parser.c:30485 #, gcc-internal-format msgid "template declaration of %<typedef%>" msgstr "" -#: cp/parser.c:30482 +#: cp/parser.c:30536 #, gcc-internal-format msgid "a class template declaration must not declare anything else" msgstr "" -#: cp/parser.c:30529 +#: cp/parser.c:30583 #, gcc-internal-format msgid "explicit template specialization cannot have a storage class" msgstr "" -#: cp/parser.c:30829 +#: cp/parser.c:30883 #, gcc-internal-format msgid "%<>>%> should be %<> >%> within a nested template argument list" msgstr "" -#: cp/parser.c:30842 +#: cp/parser.c:30896 #, gcc-internal-format msgid "spurious %<>>%>, use %<>%> to terminate a template argument list" msgstr "" -#: cp/parser.c:31150 +#: cp/parser.c:31204 #, gcc-internal-format msgid "%<sizeof...%> argument must be surrounded by parentheses" msgstr "" -#: cp/parser.c:31302 +#: cp/parser.c:31356 #, gcc-internal-format msgid "invalid use of %qD in linkage specification" msgstr "" -#: cp/parser.c:31317 +#: cp/parser.c:31371 #, gcc-internal-format msgid "%<__thread%> before %qD" msgstr "" -#: cp/parser.c:31452 +#: cp/parser.c:31506 #, gcc-internal-format msgid "ISO C++ 1998 does not support %<long long%>" msgstr "" -#: cp/parser.c:31463 +#: cp/parser.c:31517 #, gcc-internal-format msgid "both %<__thread%> and %<thread_local%> specified" msgstr "" -#: cp/parser.c:31468 +#: cp/parser.c:31522 #, gcc-internal-format msgid "duplicate %qD" msgstr "" -#: cp/parser.c:31494 +#: cp/parser.c:31548 #, gcc-internal-format msgid "duplicate %qs" msgstr "" -#: cp/parser.c:31546 +#: cp/parser.c:31600 #, gcc-internal-format msgid "expected %<new%>" msgstr "" -#: cp/parser.c:31549 +#: cp/parser.c:31603 #, gcc-internal-format msgid "expected %<delete%>" msgstr "" -#: cp/parser.c:31552 +#: cp/parser.c:31606 #, gcc-internal-format msgid "expected %<return%>" msgstr "" -#: cp/parser.c:31558 +#: cp/parser.c:31612 #, gcc-internal-format msgid "expected %<extern%>" msgstr "" -#: cp/parser.c:31561 +#: cp/parser.c:31615 #, gcc-internal-format msgid "expected %<static_assert%>" msgstr "" -#: cp/parser.c:31564 +#: cp/parser.c:31618 #, gcc-internal-format msgid "expected %<decltype%>" msgstr "" -#: cp/parser.c:31567 +#: cp/parser.c:31621 #, gcc-internal-format msgid "expected %<operator%>" msgstr "" -#: cp/parser.c:31570 +#: cp/parser.c:31624 #, gcc-internal-format msgid "expected %<class%>" msgstr "" -#: cp/parser.c:31573 +#: cp/parser.c:31627 #, gcc-internal-format msgid "expected %<template%>" msgstr "" -#: cp/parser.c:31576 +#: cp/parser.c:31630 #, gcc-internal-format msgid "expected %<namespace%>" msgstr "" -#: cp/parser.c:31579 +#: cp/parser.c:31633 #, gcc-internal-format msgid "expected %<using%>" msgstr "" -#: cp/parser.c:31582 +#: cp/parser.c:31636 #, gcc-internal-format msgid "expected %<asm%>" msgstr "" -#: cp/parser.c:31585 +#: cp/parser.c:31639 #, gcc-internal-format msgid "expected %<try%>" msgstr "" -#: cp/parser.c:31588 +#: cp/parser.c:31642 #, gcc-internal-format msgid "expected %<catch%>" msgstr "" -#: cp/parser.c:31591 +#: cp/parser.c:31645 #, gcc-internal-format msgid "expected %<throw%>" msgstr "" -#: cp/parser.c:31594 +#: cp/parser.c:31648 #, gcc-internal-format msgid "expected %<auto%>" msgstr "" -#: cp/parser.c:31597 +#: cp/parser.c:31651 #, gcc-internal-format msgid "expected %<__label__%>" msgstr "" -#: cp/parser.c:31600 +#: cp/parser.c:31654 #, gcc-internal-format msgid "expected %<@try%>" msgstr "" -#: cp/parser.c:31603 +#: cp/parser.c:31657 #, gcc-internal-format msgid "expected %<@synchronized%>" msgstr "" -#: cp/parser.c:31606 +#: cp/parser.c:31660 #, gcc-internal-format msgid "expected %<@throw%>" msgstr "" -#: cp/parser.c:31609 +#: cp/parser.c:31663 #, gcc-internal-format msgid "expected %<__transaction_atomic%>" msgstr "" -#: cp/parser.c:31612 +#: cp/parser.c:31666 #, gcc-internal-format msgid "expected %<__transaction_relaxed%>" msgstr "" -#: cp/parser.c:31615 +#: cp/parser.c:31669 #, gcc-internal-format msgid "expected %<co_yield%>" msgstr "" -#: cp/parser.c:31647 +#: cp/parser.c:31701 #, gcc-internal-format msgid "expected %<::%>" msgstr "" -#: cp/parser.c:31659 +#: cp/parser.c:31713 #, gcc-internal-format msgid "expected %<...%>" msgstr "" -#: cp/parser.c:31662 +#: cp/parser.c:31716 #, gcc-internal-format msgid "expected %<*%>" msgstr "" -#: cp/parser.c:31665 +#: cp/parser.c:31719 #, gcc-internal-format msgid "expected %<~%>" msgstr "" -#: cp/parser.c:31671 +#: cp/parser.c:31725 #, gcc-internal-format msgid "expected %<:%> or %<::%>" msgstr "" -#: cp/parser.c:31698 +#: cp/parser.c:31752 #, gcc-internal-format msgid "expected %<class%>, %<typename%>, or %<template%>" msgstr "" -#: cp/parser.c:32000 +#: cp/parser.c:32054 #, gcc-internal-format msgid "redundant enum-key %<enum%s%> in reference to %q#T" msgstr "" -#: cp/parser.c:32151 +#: cp/parser.c:32205 #, gcc-internal-format msgid "%qs tag used in naming %q#T" msgstr "" -#: cp/parser.c:32156 +#: cp/parser.c:32210 #, gcc-internal-format msgid "%q#T was previously declared here" msgstr "" -#: cp/parser.c:32276 +#: cp/parser.c:32330 #, gcc-internal-format msgid "redundant class-key %qs in reference to %q#T" msgstr "" -#: cp/parser.c:32416 cp/parser.c:32450 +#: cp/parser.c:32470 cp/parser.c:32504 #, gcc-internal-format msgid "%qT declared with a mismatched class-key %qs" msgstr "" -#: cp/parser.c:32423 cp/parser.c:32456 +#: cp/parser.c:32477 cp/parser.c:32510 #, gcc-internal-format msgid "remove the class-key or replace it with %qs" msgstr "" -#: cp/parser.c:32424 cp/parser.c:32457 +#: cp/parser.c:32478 cp/parser.c:32511 #, gcc-internal-format msgid "replace the class-key with %qs" msgstr "" -#: cp/parser.c:32431 +#: cp/parser.c:32485 #, gcc-internal-format msgid "%qT defined as %qs here" msgstr "" -#: cp/parser.c:32432 +#: cp/parser.c:32486 #, gcc-internal-format msgid "%qT first declared as %qs here" msgstr "" -#: cp/parser.c:32514 +#: cp/parser.c:32568 #, gcc-internal-format msgid "%qD redeclared with different access" msgstr "" -#: cp/parser.c:32535 +#: cp/parser.c:32589 #, gcc-internal-format msgid "" "in C++98 %<template%> (as a disambiguator) is only allowed within templates" msgstr "" -#: cp/parser.c:32783 +#: cp/parser.c:32837 #, gcc-internal-format msgid "file ends in default argument" msgstr "" -#: cp/parser.c:33024 cp/parser.c:34332 cp/parser.c:34521 +#: cp/parser.c:33078 cp/parser.c:34386 cp/parser.c:34575 #, gcc-internal-format msgid "misplaced %<@%D%> Objective-C++ construct" msgstr "" -#: cp/parser.c:33095 +#: cp/parser.c:33149 #, gcc-internal-format msgid "objective-c++ message receiver expected" msgstr "" -#: cp/parser.c:33165 +#: cp/parser.c:33219 #, gcc-internal-format msgid "objective-c++ message argument(s) are expected" msgstr "" -#: cp/parser.c:33196 +#: cp/parser.c:33250 #, gcc-internal-format msgid "%<@encode%> must specify a type as an argument" msgstr "" -#: cp/parser.c:33600 +#: cp/parser.c:33654 #, gcc-internal-format msgid "invalid Objective-C++ selector name" msgstr "" -#: cp/parser.c:33675 cp/parser.c:33693 +#: cp/parser.c:33729 cp/parser.c:33747 #, gcc-internal-format msgid "objective-c++ method declaration is expected" msgstr "" -#: cp/parser.c:33687 cp/parser.c:33753 +#: cp/parser.c:33741 cp/parser.c:33807 #, gcc-internal-format msgid "method attributes must be specified at the end" msgstr "" -#: cp/parser.c:33796 +#: cp/parser.c:33850 #, gcc-internal-format msgid "stray %qs between Objective-C++ methods" msgstr "" -#: cp/parser.c:33993 cp/parser.c:34000 cp/parser.c:34007 +#: cp/parser.c:34047 cp/parser.c:34054 cp/parser.c:34061 #, gcc-internal-format msgid "invalid type for instance variable" msgstr "" -#: cp/parser.c:34124 +#: cp/parser.c:34178 #, gcc-internal-format msgid "identifier expected after %<@protocol%>" msgstr "" -#: cp/parser.c:34297 +#: cp/parser.c:34351 #, gcc-internal-format msgid "" "attributes may not be specified before the %<@%D%> Objective-C++ keyword" msgstr "" -#: cp/parser.c:34304 +#: cp/parser.c:34358 #, gcc-internal-format msgid "prefix attributes are ignored before %<@%D%>" msgstr "" -#: cp/parser.c:34584 cp/parser.c:34591 cp/parser.c:34598 +#: cp/parser.c:34638 cp/parser.c:34645 cp/parser.c:34652 #, gcc-internal-format msgid "invalid type for property" msgstr "" -#: cp/parser.c:34760 +#: cp/parser.c:34814 #, gcc-internal-format msgid "unknown property attribute %qE" msgstr "" -#: cp/parser.c:35826 +#: cp/parser.c:35879 #, gcc-internal-format msgid "expected integer expression list" msgstr "" -#: cp/parser.c:35843 +#: cp/parser.c:35896 #, gcc-internal-format msgid "%<wait%> expression must be integral" msgstr "" -#: cp/parser.c:36826 +#: cp/parser.c:36879 #, gcc-internal-format msgid "invalid reduction-identifier" msgstr "" -#: cp/parser.c:37579 +#: cp/parser.c:37632 #, gcc-internal-format msgid "types may not be defined in iterator type" msgstr "" -#: cp/parser.c:39708 +#: cp/parser.c:39761 #, gcc-internal-format msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop" msgstr "" -#: cp/parser.c:40259 +#: cp/parser.c:40312 #, gcc-internal-format msgid "%<ordered%> clause with parameter on range-based %<for%> loop" msgstr "" -#: cp/parser.c:40346 cp/pt.c:17893 +#: cp/parser.c:40399 cp/pt.c:17982 #, gcc-internal-format msgid "iteration variable %qD should not be reduction" msgstr "" -#: cp/parser.c:40439 +#: cp/parser.c:40492 #, gcc-internal-format msgid "not enough for loops to collapse" msgstr "" -#: cp/parser.c:42655 +#: cp/parser.c:42708 #, gcc-internal-format msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>" msgstr "" -#: cp/parser.c:43486 +#: cp/parser.c:43539 #, gcc-internal-format msgid "invalid initializer clause" msgstr "" -#: cp/parser.c:43516 +#: cp/parser.c:43569 #, gcc-internal-format msgid "expected id-expression (arguments)" msgstr "" -#: cp/parser.c:43528 +#: cp/parser.c:43581 #, gcc-internal-format msgid "" "one of the initializer call arguments should be %<omp_priv%> or %<&omp_priv%>" msgstr "" -#: cp/parser.c:43631 +#: cp/parser.c:43684 #, gcc-internal-format msgid "types may not be defined in declare reduction type list" msgstr "" -#: cp/parser.c:43651 cp/semantics.c:5850 +#: cp/parser.c:43704 cp/semantics.c:5878 #, gcc-internal-format msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:43655 cp/semantics.c:5858 +#: cp/parser.c:43708 cp/semantics.c:5886 #, gcc-internal-format msgid "function or array type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:43658 cp/pt.c:14005 cp/semantics.c:5864 +#: cp/parser.c:43711 cp/pt.c:14078 cp/semantics.c:5892 #, gcc-internal-format msgid "reference type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:43661 cp/semantics.c:5870 +#: cp/parser.c:43714 cp/semantics.c:5898 #, gcc-internal-format msgid "" "%<const%>, %<volatile%> or %<__restrict%>-qualified type %qT in %<#pragma " "omp declare reduction%>" msgstr "" -#: cp/parser.c:44188 +#: cp/parser.c:44241 #, gcc-internal-format msgid "%<#pragma acc routine%> names a set of overloads" msgstr "" -#: cp/parser.c:44198 +#: cp/parser.c:44251 #, gcc-internal-format msgid "%qD does not refer to a namespace scope function" msgstr "" #. cancel-and-throw is unimplemented. -#: cp/parser.c:44552 +#: cp/parser.c:44605 #, gcc-internal-format msgid "%<atomic_cancel%>" msgstr "" -#: cp/parser.c:44599 cp/semantics.c:9954 +#: cp/parser.c:44652 cp/semantics.c:9982 #, gcc-internal-format msgid "%<__transaction_relaxed%> without transactional memory support enabled" msgstr "" -#: cp/parser.c:44601 cp/semantics.c:9956 +#: cp/parser.c:44654 cp/semantics.c:9984 #, gcc-internal-format msgid "%<__transaction_atomic%> without transactional memory support enabled" msgstr "" -#: cp/parser.c:44747 +#: cp/parser.c:44800 #, gcc-internal-format msgid "" "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>" msgstr "" -#: cp/parser.c:44750 +#: cp/parser.c:44803 #, gcc-internal-format msgid " or a %<transaction_may_cancel_outer%> function" msgstr "" -#: cp/parser.c:44801 +#: cp/parser.c:44854 #, gcc-internal-format msgid "malformed %<#pragma GCC pch_preprocess%>" msgstr "" -#: cp/parser.c:45086 +#: cp/parser.c:45139 #, gcc-internal-format msgid "%<#pragma omp requires%> may only be used at file or namespace scope" msgstr "" -#: cp/parser.c:45129 +#: cp/parser.c:45182 #, gcc-internal-format msgid "%<#pragma GCC ivdep%> must be inside a function" msgstr "" -#: cp/parser.c:45161 +#: cp/parser.c:45214 #, gcc-internal-format msgid "%<#pragma GCC unroll%> must be inside a function" msgstr "" -#: cp/parser.c:45241 +#: cp/parser.c:45294 #, gcc-internal-format msgid "multi-source compilation not implemented for C++" msgstr "" -#: cp/parser.c:45280 +#: cp/parser.c:45333 #, gcc-internal-format msgid "placeholder type not allowed in this context" msgstr "" -#: cp/parser.c:45481 +#: cp/parser.c:45534 #, gcc-internal-format msgid "implicit templates may not be %<virtual%>" msgstr "" -#: cp/parser.c:45537 +#: cp/parser.c:45590 #, gcc-internal-format msgid "%<extern \"C\"%> linkage started here" msgstr "" -#: cp/pt.c:299 +#: cp/pt.c:297 #, gcc-internal-format msgid "data member %qD cannot be a member template" msgstr "" -#: cp/pt.c:312 +#: cp/pt.c:310 #, gcc-internal-format msgid "invalid member template declaration %qD" msgstr "" -#: cp/pt.c:736 +#: cp/pt.c:734 #, gcc-internal-format msgid "explicit specialization in non-namespace scope %qD" msgstr "" -#: cp/pt.c:750 +#: cp/pt.c:748 #, gcc-internal-format msgid "enclosing class templates are not explicitly specialized" msgstr "" -#: cp/pt.c:834 +#: cp/pt.c:832 #, gcc-internal-format msgid "specialization of %qD must appear at namespace scope" msgstr "" -#: cp/pt.c:845 cp/pt.c:1078 +#: cp/pt.c:843 cp/pt.c:1080 #, gcc-internal-format msgid "specialization of %qD in different namespace" msgstr "" -#: cp/pt.c:847 +#: cp/pt.c:845 #, gcc-internal-format msgid " from definition of %q#D" msgstr "" -#: cp/pt.c:864 +#: cp/pt.c:862 #, gcc-internal-format msgid "" "explicit instantiation of %qD in namespace %qD (which does not enclose " "namespace %qD)" msgstr "" -#: cp/pt.c:990 +#: cp/pt.c:992 #, gcc-internal-format msgid "name of class shadows template template parameter %qD" msgstr "" -#: cp/pt.c:1002 +#: cp/pt.c:1004 #, gcc-internal-format msgid "specialization of alias template %qD" msgstr "" -#: cp/pt.c:1005 cp/pt.c:1144 +#: cp/pt.c:1007 cp/pt.c:1146 #, gcc-internal-format msgid "explicit specialization of non-template %qT" msgstr "" -#: cp/pt.c:1037 +#: cp/pt.c:1039 #, gcc-internal-format msgid "specialization of %qT after instantiation" msgstr "" -#: cp/pt.c:1081 +#: cp/pt.c:1083 #, gcc-internal-format msgid "from definition of %q#D" msgstr "" #. But if we've had an implicit instantiation, that's a #. problem ([temp.expl.spec]/6). -#: cp/pt.c:1122 +#: cp/pt.c:1124 #, gcc-internal-format msgid "specialization %qT after instantiation %qT" msgstr "" -#: cp/pt.c:1140 +#: cp/pt.c:1142 #, gcc-internal-format msgid "template specialization of %qD not allowed by ISO C++" msgstr "" -#: cp/pt.c:1605 +#: cp/pt.c:1607 #, gcc-internal-format msgid "specialization of %qD after instantiation" msgstr "" -#: cp/pt.c:2047 cp/semantics.c:5719 +#: cp/pt.c:2049 cp/semantics.c:5747 #, gcc-internal-format msgid "%s %#qD" msgstr "" -#: cp/pt.c:2183 +#: cp/pt.c:2185 #, gcc-internal-format msgid "%qD is not a function template" msgstr "" -#: cp/pt.c:2188 +#: cp/pt.c:2190 #, gcc-internal-format msgid "%qD is not a variable template" msgstr "" -#: cp/pt.c:2480 +#: cp/pt.c:2486 #, gcc-internal-format msgid "template-id %qD for %q+D does not match any template declaration" msgstr "" -#: cp/pt.c:2484 +#: cp/pt.c:2490 #, gcc-internal-format msgid "" "saw %d %<template<>%>, need %d for specializing a member function template" msgstr "" -#: cp/pt.c:2495 +#: cp/pt.c:2500 #, gcc-internal-format msgid "ambiguous template specialization %qD for %q+D" msgstr "" -#: cp/pt.c:2702 +#: cp/pt.c:2707 #, gcc-internal-format msgid "" "variable templates only available with %<-std=c++14%> or %<-std=gnu++14%>" msgstr "" -#: cp/pt.c:2712 +#: cp/pt.c:2717 #, gcc-internal-format msgid "too many template headers for %qD (should be %d)" msgstr "" -#: cp/pt.c:2718 +#: cp/pt.c:2723 #, gcc-internal-format msgid "" "members of an explicitly specialized class are defined without a template " "header" msgstr "" -#: cp/pt.c:2742 +#: cp/pt.c:2747 #, gcc-internal-format msgid "" "explicit specialization of %qD outside its namespace must use a nested-name-" @@ -57965,79 +58017,79 @@ msgid "" msgstr "" #. This was allowed in C++98, so only pedwarn. -#: cp/pt.c:2747 +#: cp/pt.c:2752 #, gcc-internal-format msgid "" "explicit instantiation of %qD outside its namespace must use a nested-name-" "specifier" msgstr "" -#: cp/pt.c:2783 +#: cp/pt.c:2788 #, gcc-internal-format msgid "explicit specialization %q#D may be missing attributes" msgstr "" -#: cp/pt.c:2787 +#: cp/pt.c:2792 #, gcc-internal-format, gfc-internal-format msgid "missing primary template attributes %s" msgstr "" -#: cp/pt.c:2788 +#: cp/pt.c:2793 #, gcc-internal-format, gfc-internal-format msgid "missing primary template attribute %s" msgstr "" -#: cp/pt.c:2878 cp/pt.c:2938 +#: cp/pt.c:2883 cp/pt.c:2943 #, gcc-internal-format msgid "template-id %qE in declaration of primary template" msgstr "" -#: cp/pt.c:2891 +#: cp/pt.c:2896 #, gcc-internal-format msgid "template parameter list used in explicit instantiation" msgstr "" -#: cp/pt.c:2897 +#: cp/pt.c:2902 #, gcc-internal-format msgid "definition provided for explicit instantiation" msgstr "" -#: cp/pt.c:2905 +#: cp/pt.c:2910 #, gcc-internal-format msgid "too many template parameter lists in declaration of %qD" msgstr "" -#: cp/pt.c:2908 +#: cp/pt.c:2913 #, gcc-internal-format msgid "too few template parameter lists in declaration of %qD" msgstr "" -#: cp/pt.c:2910 +#: cp/pt.c:2915 #, gcc-internal-format msgid "explicit specialization of %qD must be introduced by %<template <>%>" msgstr "" -#: cp/pt.c:2916 +#: cp/pt.c:2921 #, gcc-internal-format msgid "explicit specialization declared %<concept%>" msgstr "" -#: cp/pt.c:2949 +#: cp/pt.c:2954 #, gcc-internal-format msgid "non-type partial specialization %qE is not allowed" msgstr "" -#: cp/pt.c:2953 +#: cp/pt.c:2958 #, gcc-internal-format msgid "non-class, non-variable partial specialization %qE is not allowed" msgstr "" -#: cp/pt.c:2985 +#: cp/pt.c:2990 #, gcc-internal-format msgid "default argument specified in explicit specialization" msgstr "" -#: cp/pt.c:3028 +#: cp/pt.c:3033 #, gcc-internal-format msgid "%qD is not a template function" msgstr "" @@ -58050,99 +58102,99 @@ msgstr "" #. program is ill-formed. #. #. Similar language is found in [temp.explicit]. -#: cp/pt.c:3090 +#: cp/pt.c:3095 #, gcc-internal-format msgid "specialization of implicitly-declared special member function" msgstr "" -#: cp/pt.c:3106 +#: cp/pt.c:3111 #, gcc-internal-format msgid "no member function %qD declared in %qT" msgstr "" -#: cp/pt.c:3137 +#: cp/pt.c:3142 #, gcc-internal-format msgid "friend declaration %qD is not visible to explicit specialization" msgstr "" -#: cp/pt.c:3140 +#: cp/pt.c:3145 #, gcc-internal-format msgid "friend declaration here" msgstr "" -#: cp/pt.c:3249 +#: cp/pt.c:3254 #, gcc-internal-format msgid "explicit specialization of function concept %qD" msgstr "" -#: cp/pt.c:3830 +#: cp/pt.c:3835 #, gcc-internal-format msgid "argument to %<__integer_pack%> must be between 0 and %d" msgstr "" -#: cp/pt.c:4133 +#: cp/pt.c:4164 #, gcc-internal-format msgid "base initializer expansion %qT contains no parameter packs" msgstr "" -#: cp/pt.c:4201 +#: cp/pt.c:4232 #, gcc-internal-format msgid "expansion pattern %qT contains no parameter packs" msgstr "" -#: cp/pt.c:4203 +#: cp/pt.c:4234 #, gcc-internal-format msgid "expansion pattern %qE contains no parameter packs" msgstr "" -#: cp/pt.c:4262 +#: cp/pt.c:4293 #, gcc-internal-format msgid "parameter packs not expanded with %<...%>:" msgstr "" -#: cp/pt.c:4279 cp/pt.c:5092 +#: cp/pt.c:4310 cp/pt.c:5115 #, gcc-internal-format msgid " %qD" msgstr "" -#: cp/pt.c:4281 +#: cp/pt.c:4312 #, gcc-internal-format, gfc-internal-format msgid " %s" msgstr "" -#: cp/pt.c:4407 +#: cp/pt.c:4438 #, gcc-internal-format msgid "declaration of template parameter %q+D shadows template parameter" msgstr "" -#: cp/pt.c:4410 +#: cp/pt.c:4441 #, gcc-internal-format msgid "declaration of %q+#D shadows template parameter" msgstr "" -#: cp/pt.c:4412 +#: cp/pt.c:4443 #, gcc-internal-format msgid "template parameter %qD declared here" msgstr "" -#: cp/pt.c:5028 +#: cp/pt.c:5051 #, gcc-internal-format msgid "specialization of variable concept %q#D" msgstr "" -#: cp/pt.c:5087 +#: cp/pt.c:5110 #, gcc-internal-format msgid "template parameters not deducible in partial specialization:" msgstr "" -#: cp/pt.c:5110 +#: cp/pt.c:5133 #, gcc-internal-format msgid "" "partial specialization %q+D does not specialize any template arguments; to " "define the primary template, remove the template argument list" msgstr "" -#: cp/pt.c:5114 +#: cp/pt.c:5137 #, gcc-internal-format msgid "" "partial specialization %q+D does not specialize any template arguments and " @@ -58150,68 +58202,68 @@ msgid "" "template, remove the template argument list" msgstr "" -#: cp/pt.c:5118 cp/pt.c:5129 cp/pt.c:5137 +#: cp/pt.c:5141 cp/pt.c:5152 cp/pt.c:5160 #, gcc-internal-format msgid "primary template here" msgstr "" -#: cp/pt.c:5126 +#: cp/pt.c:5149 #, gcc-internal-format msgid "" "partial specialization is not more specialized than the primary template " "because it replaces multiple parameters with a pack expansion" msgstr "" -#: cp/pt.c:5136 +#: cp/pt.c:5159 #, gcc-internal-format msgid "too many arguments for partial specialization %qT" msgstr "" -#: cp/pt.c:5150 +#: cp/pt.c:5173 #, gcc-internal-format msgid "partial specialization %qD is not more specialized than" msgstr "" -#: cp/pt.c:5152 +#: cp/pt.c:5175 #, gcc-internal-format msgid "primary template %qD" msgstr "" -#: cp/pt.c:5198 +#: cp/pt.c:5221 #, gcc-internal-format msgid "" "parameter pack argument %qE must be at the end of the template argument list" msgstr "" -#: cp/pt.c:5201 +#: cp/pt.c:5224 #, gcc-internal-format msgid "" "parameter pack argument %qT must be at the end of the template argument list" msgstr "" -#: cp/pt.c:5224 +#: cp/pt.c:5247 #, gcc-internal-format msgid "template argument %qE involves template parameter(s)" msgstr "" -#: cp/pt.c:5270 +#: cp/pt.c:5293 #, gcc-internal-format msgid "type %qT of template argument %qE depends on a template parameter" msgid_plural "type %qT of template argument %qE depends on template parameters" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:5330 +#: cp/pt.c:5353 #, gcc-internal-format msgid "declaration of %qD ambiguates earlier template instantiation for %qD" msgstr "" -#: cp/pt.c:5334 +#: cp/pt.c:5357 #, gcc-internal-format msgid "partial specialization of %qD after instantiation of %qD" msgstr "" -#: cp/pt.c:5517 +#: cp/pt.c:5540 #, gcc-internal-format msgid "no default argument for %qD" msgstr "" @@ -58220,52 +58272,52 @@ msgstr "" #. (DR 2032), or alias template can only have one #. parameter pack, at the end of the template #. parameter list. -#: cp/pt.c:5540 +#: cp/pt.c:5563 #, gcc-internal-format msgid "parameter pack %q+D must be at the end of the template parameter list" msgstr "" -#: cp/pt.c:5576 +#: cp/pt.c:5599 #, gcc-internal-format msgid "" "default template arguments may not be used in function template friend re-" "declaration" msgstr "" -#: cp/pt.c:5579 +#: cp/pt.c:5602 #, gcc-internal-format msgid "" "default template arguments may not be used in template friend declarations" msgstr "" -#: cp/pt.c:5582 +#: cp/pt.c:5605 #, gcc-internal-format msgid "" "default template arguments may not be used in function templates without %<-" "std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/pt.c:5585 +#: cp/pt.c:5608 #, gcc-internal-format msgid "default template arguments may not be used in partial specializations" msgstr "" -#: cp/pt.c:5588 cp/pt.c:5646 +#: cp/pt.c:5611 cp/pt.c:5669 #, gcc-internal-format msgid "default argument for template parameter for class enclosing %qD" msgstr "" -#: cp/pt.c:5757 +#: cp/pt.c:5780 #, gcc-internal-format msgid "template %qD declared" msgstr "" -#: cp/pt.c:5765 +#: cp/pt.c:5788 #, gcc-internal-format msgid "template class without a name" msgstr "" -#: cp/pt.c:5773 +#: cp/pt.c:5796 #, gcc-internal-format msgid "member template %qD may not have virt-specifiers" msgstr "" @@ -58275,525 +58327,525 @@ msgstr "" #. An allocation function can be a function #. template. ... Template allocation functions shall #. have two or more parameters. -#: cp/pt.c:5796 +#: cp/pt.c:5819 #, gcc-internal-format msgid "invalid template declaration of %qD" msgstr "" -#: cp/pt.c:5952 +#: cp/pt.c:5975 #, gcc-internal-format msgid "template definition of non-template %q#D" msgstr "" -#: cp/pt.c:5991 +#: cp/pt.c:6014 #, gcc-internal-format msgid "expected %d levels of template parms for %q#D, got %d" msgstr "" -#: cp/pt.c:6005 +#: cp/pt.c:6028 #, gcc-internal-format msgid "got %d template parameters for %q#D" msgstr "" -#: cp/pt.c:6008 +#: cp/pt.c:6031 #, gcc-internal-format msgid "got %d template parameters for %q#T" msgstr "" -#: cp/pt.c:6010 +#: cp/pt.c:6033 #, gcc-internal-format, gfc-internal-format msgid " but %d required" msgstr "" -#: cp/pt.c:6031 +#: cp/pt.c:6054 #, gcc-internal-format msgid "template arguments to %qD do not match original template %qD" msgstr "" -#: cp/pt.c:6034 +#: cp/pt.c:6057 #, gcc-internal-format msgid "use %<template<>%> for an explicit specialization" msgstr "" -#: cp/pt.c:6179 +#: cp/pt.c:6202 #, gcc-internal-format msgid "%qT is not a template type" msgstr "" -#: cp/pt.c:6192 +#: cp/pt.c:6215 #, gcc-internal-format msgid "template specifiers not specified in declaration of %qD" msgstr "" -#: cp/pt.c:6203 +#: cp/pt.c:6226 #, gcc-internal-format, gfc-internal-format msgid "redeclared with %d template parameter" msgid_plural "redeclared with %d template parameters" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:6207 +#: cp/pt.c:6230 #, gcc-internal-format msgid "previous declaration %qD used %d template parameter" msgid_plural "previous declaration %qD used %d template parameters" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:6245 +#: cp/pt.c:6268 #, gcc-internal-format msgid "template parameter %q+#D" msgstr "" -#: cp/pt.c:6246 +#: cp/pt.c:6269 #, gcc-internal-format msgid "redeclared here as %q#D" msgstr "" -#: cp/pt.c:6257 +#: cp/pt.c:6280 #, gcc-internal-format msgid "declaration of template parameter %q+#D with different constraints" msgstr "" -#: cp/pt.c:6260 cp/pt.c:6309 +#: cp/pt.c:6283 cp/pt.c:6332 #, gcc-internal-format msgid "original declaration appeared here" msgstr "" -#: cp/pt.c:6271 +#: cp/pt.c:6294 #, gcc-internal-format msgid "redefinition of default argument for %q#D" msgstr "" -#: cp/pt.c:6273 +#: cp/pt.c:6296 #, gcc-internal-format msgid "original definition appeared here" msgstr "" -#: cp/pt.c:6306 +#: cp/pt.c:6329 #, gcc-internal-format msgid "redeclaration %q#D with different constraints" msgstr "" -#: cp/pt.c:6637 cp/pt.c:6706 +#: cp/pt.c:6664 cp/pt.c:6733 #, gcc-internal-format msgid "%qE is not a valid template argument for type %qT" msgstr "" -#: cp/pt.c:6640 +#: cp/pt.c:6667 #, gcc-internal-format msgid "it must be the address of a function with external linkage" msgstr "" -#: cp/pt.c:6643 +#: cp/pt.c:6670 #, gcc-internal-format msgid "it must be the name of a function with external linkage" msgstr "" -#: cp/pt.c:6656 +#: cp/pt.c:6683 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because %qD has no linkage" msgstr "" -#: cp/pt.c:6660 +#: cp/pt.c:6687 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because %qD does not have " "external linkage" msgstr "" -#: cp/pt.c:6709 +#: cp/pt.c:6736 #, gcc-internal-format msgid "it must be a pointer-to-member of the form %<&X::Y%>" msgstr "" -#: cp/pt.c:6711 +#: cp/pt.c:6738 #, gcc-internal-format msgid "because it is a member of %qT" msgstr "" -#: cp/pt.c:6773 +#: cp/pt.c:6800 #, gcc-internal-format msgid " couldn%'t deduce template parameter %qD" msgstr "" -#: cp/pt.c:6782 +#: cp/pt.c:6809 #, gcc-internal-format msgid " types %qT and %qT have incompatible cv-qualifiers" msgstr "" -#: cp/pt.c:6791 +#: cp/pt.c:6818 #, gcc-internal-format msgid " mismatched types %qT and %qT" msgstr "" -#: cp/pt.c:6800 +#: cp/pt.c:6827 #, gcc-internal-format msgid " template parameter %qD is not a parameter pack, but argument %qD is" msgstr "" -#: cp/pt.c:6811 +#: cp/pt.c:6838 #, gcc-internal-format msgid " template argument %qE does not match pointer-to-member constant %qE" msgstr "" -#: cp/pt.c:6821 +#: cp/pt.c:6848 #, gcc-internal-format msgid " %qE is not equivalent to %qE" msgstr "" -#: cp/pt.c:6830 +#: cp/pt.c:6857 #, gcc-internal-format msgid " inconsistent parameter pack deduction with %qT and %qT" msgstr "" -#: cp/pt.c:6842 +#: cp/pt.c:6869 #, gcc-internal-format msgid " deduced conflicting types for parameter %qT (%qT and %qT)" msgstr "" -#: cp/pt.c:6846 +#: cp/pt.c:6873 #, gcc-internal-format msgid " deduced conflicting values for non-type parameter %qE (%qE and %qE)" msgstr "" -#: cp/pt.c:6857 +#: cp/pt.c:6884 #, gcc-internal-format msgid " variable-sized array type %qT is not a valid template argument" msgstr "" -#: cp/pt.c:6868 +#: cp/pt.c:6895 #, gcc-internal-format msgid " member function type %qT is not a valid template argument" msgstr "" -#: cp/pt.c:6880 +#: cp/pt.c:6907 #, gcc-internal-format, gfc-internal-format msgid " candidate expects at least %d argument, %d provided" msgid_plural " candidate expects at least %d arguments, %d provided" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:6911 +#: cp/pt.c:6938 #, gcc-internal-format msgid " cannot convert %qE (type %qT) to type %qT" msgstr "" -#: cp/pt.c:6924 +#: cp/pt.c:6951 #, gcc-internal-format msgid " %qT is an ambiguous base class of %qT" msgstr "" -#: cp/pt.c:6928 +#: cp/pt.c:6955 #, gcc-internal-format msgid " %qT is not derived from %qT" msgstr "" -#: cp/pt.c:6939 +#: cp/pt.c:6966 #, gcc-internal-format msgid "" " template parameters of a template template argument are inconsistent with " "other deduced template arguments" msgstr "" -#: cp/pt.c:6949 +#: cp/pt.c:6976 #, gcc-internal-format msgid " cannot deduce a template for %qT from non-template type %qT" msgstr "" -#: cp/pt.c:6959 +#: cp/pt.c:6986 #, gcc-internal-format msgid " template argument %qE does not match %qE" msgstr "" -#: cp/pt.c:7021 +#: cp/pt.c:7048 #, gcc-internal-format msgid "" "%qE is not a valid template argument of type %qT because %qE is not a " "variable" msgstr "" -#: cp/pt.c:7029 +#: cp/pt.c:7056 #, gcc-internal-format msgid "" "%qE is not a valid template argument of type %qT in C++98 because %qD does " "not have external linkage" msgstr "" -#: cp/pt.c:7039 +#: cp/pt.c:7066 #, gcc-internal-format msgid "" "%qE is not a valid template argument of type %qT because %qD has no linkage" msgstr "" -#: cp/pt.c:7054 +#: cp/pt.c:7081 #, gcc-internal-format msgid "the address of %qD is not a valid template argument" msgstr "" -#: cp/pt.c:7064 +#: cp/pt.c:7091 #, gcc-internal-format msgid "" "the address of the %qT subobject of %qD is not a valid template argument" msgstr "" -#: cp/pt.c:7071 +#: cp/pt.c:7098 #, gcc-internal-format msgid "" "the address of %qD is not a valid template argument because it does not have " "static storage duration" msgstr "" -#: cp/pt.c:7089 +#: cp/pt.c:7116 #, gcc-internal-format msgid "" "%qD is not a valid template argument because %qD is a variable, not the " "address of a variable" msgstr "" -#: cp/pt.c:7097 +#: cp/pt.c:7124 #, gcc-internal-format msgid "" "%qE is not a valid template argument for %qT because it is not the address " "of a variable" msgstr "" -#: cp/pt.c:7206 +#: cp/pt.c:7236 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because string literals " "can never be used in this context" msgstr "" -#: cp/pt.c:7365 +#: cp/pt.c:7395 #, gcc-internal-format msgid "in template argument for type %qT" msgstr "" -#: cp/pt.c:7379 +#: cp/pt.c:7409 #, gcc-internal-format msgid "template argument %qE for type %qT not a compile-time constant" msgstr "" -#: cp/pt.c:7465 +#: cp/pt.c:7495 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because of conflicts in cv-" "qualification" msgstr "" -#: cp/pt.c:7473 +#: cp/pt.c:7503 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because it is not an lvalue" msgstr "" -#: cp/pt.c:7491 +#: cp/pt.c:7521 #, gcc-internal-format msgid "" "%q#D is not a valid template argument for type %qT because a reference " "variable does not have a constant address" msgstr "" -#: cp/pt.c:7550 +#: cp/pt.c:7580 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because it is a pointer" msgstr "" -#: cp/pt.c:7552 +#: cp/pt.c:7582 #, gcc-internal-format msgid "try using %qE instead" msgstr "" -#: cp/pt.c:7606 +#: cp/pt.c:7636 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because it is of type %qT" msgstr "" -#: cp/pt.c:8155 +#: cp/pt.c:8185 #, gcc-internal-format msgid "ignoring attributes on template argument %qT" msgstr "" -#: cp/pt.c:8171 +#: cp/pt.c:8201 #, gcc-internal-format msgid "ignoring attributes in template argument %qE" msgstr "" -#: cp/pt.c:8305 +#: cp/pt.c:8335 #, gcc-internal-format msgid "injected-class-name %qD used as template template argument" msgstr "" -#: cp/pt.c:8334 +#: cp/pt.c:8364 #, gcc-internal-format msgid "invalid use of destructor %qE as a type" msgstr "" -#: cp/pt.c:8339 +#: cp/pt.c:8369 #, gcc-internal-format msgid "to refer to a type member of a template parameter, use %<typename %E%>" msgstr "" -#: cp/pt.c:8355 cp/pt.c:8389 cp/pt.c:8443 +#: cp/pt.c:8385 cp/pt.c:8419 cp/pt.c:8473 #, gcc-internal-format msgid "type/value mismatch at argument %d in template parameter list for %qD" msgstr "" -#: cp/pt.c:8363 +#: cp/pt.c:8393 #, gcc-internal-format msgid " expected a constant of type %qT, got %qT" msgstr "" -#: cp/pt.c:8371 +#: cp/pt.c:8401 #, gcc-internal-format msgid "" " ambiguous template argument for non-type template parameter is treated as " "function type" msgstr "" -#: cp/pt.c:8377 +#: cp/pt.c:8407 #, gcc-internal-format msgid " expected a class template, got %qE" msgstr "" -#: cp/pt.c:8380 +#: cp/pt.c:8410 #, gcc-internal-format msgid " expected a type, got %qE" msgstr "" -#: cp/pt.c:8394 +#: cp/pt.c:8424 #, gcc-internal-format msgid " expected a type, got %qT" msgstr "" -#: cp/pt.c:8397 +#: cp/pt.c:8427 #, gcc-internal-format msgid " expected a class template, got %qT" msgstr "" -#: cp/pt.c:8447 +#: cp/pt.c:8477 #, gcc-internal-format msgid " expected a template of type %qD, got %qT" msgstr "" -#: cp/pt.c:8461 +#: cp/pt.c:8491 #, gcc-internal-format msgid "constraint mismatch at argument %d in template parameter list for %qD" msgstr "" -#: cp/pt.c:8464 +#: cp/pt.c:8494 #, gcc-internal-format msgid " expected %qD but got %qD" msgstr "" -#: cp/pt.c:8528 +#: cp/pt.c:8558 #, gcc-internal-format msgid "could not convert template argument %qE from %qT to %qT" msgstr "" -#: cp/pt.c:8666 cp/pt.c:8979 +#: cp/pt.c:8696 cp/pt.c:9009 #, gcc-internal-format, gfc-internal-format msgid "template argument %d is invalid" msgstr "" -#: cp/pt.c:8681 cp/pt.c:8813 +#: cp/pt.c:8711 cp/pt.c:8843 #, gcc-internal-format, gfc-internal-format msgid "wrong number of template arguments (%d, should be %d)" msgstr "" -#: cp/pt.c:8809 +#: cp/pt.c:8839 #, gcc-internal-format, gfc-internal-format msgid "wrong number of template arguments (%d, should be at least %d)" msgstr "" -#: cp/pt.c:8818 +#: cp/pt.c:8848 #, gcc-internal-format msgid "provided for %qD" msgstr "" -#: cp/pt.c:8843 +#: cp/pt.c:8873 #, gcc-internal-format msgid "" "pack expansion argument for non-pack parameter %qD of alias template %qD" msgstr "" -#: cp/pt.c:8847 +#: cp/pt.c:8877 #, gcc-internal-format msgid "pack expansion argument for non-pack parameter %qD of concept %qD" msgstr "" -#: cp/pt.c:8945 +#: cp/pt.c:8975 #, gcc-internal-format msgid "" "so any instantiation with a non-empty parameter pack would be ill-formed" msgstr "" -#: cp/pt.c:9589 +#: cp/pt.c:9619 #, gcc-internal-format msgid "%q#D is not a function template" msgstr "" -#: cp/pt.c:9752 +#: cp/pt.c:9782 #, gcc-internal-format msgid "non-template type %qT used as a template" msgstr "" -#: cp/pt.c:9754 +#: cp/pt.c:9784 #, gcc-internal-format msgid "for template declaration %q+D" msgstr "" -#: cp/pt.c:9883 cp/pt.c:21201 +#: cp/pt.c:9913 cp/pt.c:21289 #, gcc-internal-format msgid "template constraint failure for %qD" msgstr "" -#: cp/pt.c:10280 +#: cp/pt.c:10293 #, gcc-internal-format msgid "use of invalid variable template %qE" msgstr "" -#: cp/pt.c:10924 +#: cp/pt.c:10953 #, gcc-internal-format msgid "" "template instantiation depth exceeds maximum of %d (use %<-ftemplate-depth=" "%> to increase the maximum)" msgstr "" -#: cp/pt.c:12083 +#: cp/pt.c:12112 #, gcc-internal-format msgid "flexible array member %qD in union" msgstr "" -#: cp/pt.c:12580 +#: cp/pt.c:12609 #, gcc-internal-format msgid "fold of empty expansion over %O" msgstr "" -#: cp/pt.c:12977 +#: cp/pt.c:13039 #, gcc-internal-format msgid "%qE is not the entire pattern of the pack expansion" msgstr "" -#: cp/pt.c:13065 +#: cp/pt.c:13127 #, gcc-internal-format msgid "mismatched argument pack lengths while expanding %qT" msgstr "" -#: cp/pt.c:13068 +#: cp/pt.c:13130 #, gcc-internal-format msgid "mismatched argument pack lengths while expanding %qE" msgstr "" -#: cp/pt.c:13658 +#: cp/pt.c:13731 #, gcc-internal-format msgid " when instantiating default argument for call to %qD" msgstr "" -#: cp/pt.c:13757 +#: cp/pt.c:13830 #, gcc-internal-format msgid "creating pointer to member function of non-class type %qT" msgstr "" @@ -58811,295 +58863,295 @@ msgstr "" #. #. is an attempt to declare a variable with function #. type. -#: cp/pt.c:14830 +#: cp/pt.c:14919 #, gcc-internal-format msgid "variable %qD has function type" msgstr "" -#: cp/pt.c:15030 +#: cp/pt.c:15119 #, gcc-internal-format msgid "invalid parameter type %qT" msgstr "" -#: cp/pt.c:15032 +#: cp/pt.c:15121 #, gcc-internal-format msgid "in declaration %q+D" msgstr "" -#: cp/pt.c:15147 +#: cp/pt.c:15236 #, gcc-internal-format msgid "function returning an array" msgstr "" -#: cp/pt.c:15149 +#: cp/pt.c:15238 #, gcc-internal-format msgid "function returning a function" msgstr "" -#: cp/pt.c:15845 +#: cp/pt.c:15934 #, gcc-internal-format msgid "forming reference to void" msgstr "" -#: cp/pt.c:15847 +#: cp/pt.c:15936 #, gcc-internal-format msgid "forming pointer to reference type %qT" msgstr "" -#: cp/pt.c:15849 +#: cp/pt.c:15938 #, gcc-internal-format msgid "forming reference to reference type %qT" msgstr "" -#: cp/pt.c:15862 +#: cp/pt.c:15951 #, gcc-internal-format msgid "forming pointer to qualified function type %qT" msgstr "" -#: cp/pt.c:15865 +#: cp/pt.c:15954 #, gcc-internal-format msgid "forming reference to qualified function type %qT" msgstr "" -#: cp/pt.c:15913 +#: cp/pt.c:16002 #, gcc-internal-format msgid "creating pointer to member of non-class type %qT" msgstr "" -#: cp/pt.c:15919 +#: cp/pt.c:16008 #, gcc-internal-format msgid "creating pointer to member reference type %qT" msgstr "" -#: cp/pt.c:15925 +#: cp/pt.c:16014 #, gcc-internal-format msgid "creating pointer to member of type void" msgstr "" -#: cp/pt.c:16026 +#: cp/pt.c:16115 #, gcc-internal-format msgid "%qD is instantiated for an empty pack" msgstr "" -#: cp/pt.c:16046 +#: cp/pt.c:16135 #, gcc-internal-format msgid "%qT is not a class, struct, or union type" msgstr "" -#: cp/pt.c:16078 +#: cp/pt.c:16167 #, gcc-internal-format msgid "%qT resolves to %qT, which is not an enumeration type" msgstr "" -#: cp/pt.c:16086 +#: cp/pt.c:16175 #, gcc-internal-format msgid "%qT resolves to %qT, which is not a class type" msgstr "" -#: cp/pt.c:16200 +#: cp/pt.c:16289 #, gcc-internal-format msgid "use of %qs in template" msgstr "" -#: cp/pt.c:16388 +#: cp/pt.c:16477 #, gcc-internal-format msgid "qualifying type %qT does not match destructor name ~%qT" msgstr "" -#: cp/pt.c:16403 +#: cp/pt.c:16492 #, gcc-internal-format msgid "" "dependent-name %qE is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:16405 +#: cp/pt.c:16494 #, gcc-internal-format msgid "say %<typename %E%> if a type is meant" msgstr "" -#: cp/pt.c:16498 +#: cp/pt.c:16587 #, gcc-internal-format msgid "initializer for %q#D expands to an empty list of expressions" msgstr "" -#: cp/pt.c:16649 +#: cp/pt.c:16738 #, gcc-internal-format msgid "using invalid field %qD" msgstr "" -#: cp/pt.c:17213 cp/pt.c:19086 +#: cp/pt.c:17302 cp/pt.c:19175 #, gcc-internal-format msgid "invalid use of pack expansion expression" msgstr "" -#: cp/pt.c:17217 cp/pt.c:19090 +#: cp/pt.c:17306 cp/pt.c:19179 #, gcc-internal-format msgid "use %<...%> to expand argument pack" msgstr "" -#: cp/pt.c:19230 +#: cp/pt.c:19319 #, gcc-internal-format msgid "empty initializer in lambda init-capture" msgstr "" -#: cp/pt.c:20286 +#: cp/pt.c:20374 #, gcc-internal-format msgid "" "%qD was not declared in this scope, and no declarations were found by " "argument-dependent lookup at the point of instantiation" msgstr "" -#: cp/pt.c:20313 +#: cp/pt.c:20401 #, gcc-internal-format msgid "declarations in dependent base %qT are not found by unqualified lookup" msgstr "" -#: cp/pt.c:20318 +#: cp/pt.c:20406 #, gcc-internal-format msgid "use %<this->%D%> instead" msgstr "" -#: cp/pt.c:20321 +#: cp/pt.c:20409 #, gcc-internal-format msgid "use %<%T::%D%> instead" msgstr "" -#: cp/pt.c:20326 +#: cp/pt.c:20414 #, gcc-internal-format msgid "%qD declared here, later in the translation unit" msgstr "" -#: cp/pt.c:20374 +#: cp/pt.c:20462 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_convertvector%>" msgstr "" -#: cp/pt.c:20594 +#: cp/pt.c:20682 #, gcc-internal-format msgid "%qT is not a class or namespace" msgstr "" -#: cp/pt.c:20597 +#: cp/pt.c:20685 #, gcc-internal-format msgid "%qD is not a class or namespace" msgstr "" -#: cp/pt.c:20919 +#: cp/pt.c:21007 #, gcc-internal-format msgid "%qT is/uses unnamed type" msgstr "" -#: cp/pt.c:20921 +#: cp/pt.c:21009 #, gcc-internal-format msgid "template argument for %qD uses local type %qT" msgstr "" -#: cp/pt.c:20931 +#: cp/pt.c:21019 #, gcc-internal-format msgid "%qT is a variably modified type" msgstr "" -#: cp/pt.c:20946 +#: cp/pt.c:21034 #, gcc-internal-format msgid "integral expression %qE is not constant" msgstr "" -#: cp/pt.c:20964 +#: cp/pt.c:21052 #, gcc-internal-format msgid " trying to instantiate %qD" msgstr "" -#: cp/pt.c:25055 +#: cp/pt.c:25148 #, gcc-internal-format msgid "ambiguous template instantiation for %q#T" msgstr "" -#: cp/pt.c:25057 +#: cp/pt.c:25150 #, gcc-internal-format msgid "ambiguous template instantiation for %q#D" msgstr "" -#: cp/pt.c:25063 +#: cp/pt.c:25156 msgid "%s %#qS" msgstr "" -#: cp/pt.c:25087 cp/pt.c:25182 +#: cp/pt.c:25180 cp/pt.c:25275 #, gcc-internal-format msgid "explicit instantiation of non-template %q#D" msgstr "" -#: cp/pt.c:25093 +#: cp/pt.c:25186 #, gcc-internal-format msgid "explicit instantiation of variable concept %q#D" msgstr "" -#: cp/pt.c:25095 +#: cp/pt.c:25188 #, gcc-internal-format msgid "explicit instantiation of function concept %q#D" msgstr "" -#: cp/pt.c:25114 +#: cp/pt.c:25207 #, gcc-internal-format msgid "%qD is not a static data member of a class template" msgstr "" -#: cp/pt.c:25120 cp/pt.c:25177 +#: cp/pt.c:25213 cp/pt.c:25270 #, gcc-internal-format msgid "no matching template for %qD found" msgstr "" -#: cp/pt.c:25125 +#: cp/pt.c:25218 #, gcc-internal-format msgid "" "type %qT for explicit instantiation %qD does not match declared type %qT" msgstr "" -#: cp/pt.c:25133 +#: cp/pt.c:25226 #, gcc-internal-format msgid "explicit instantiation of %q#D" msgstr "" -#: cp/pt.c:25169 +#: cp/pt.c:25262 #, gcc-internal-format msgid "duplicate explicit instantiation of %q#D" msgstr "" -#: cp/pt.c:25192 cp/pt.c:25259 +#: cp/pt.c:25285 cp/pt.c:25352 #, gcc-internal-format msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations" msgstr "" -#: cp/pt.c:25197 cp/pt.c:25274 +#: cp/pt.c:25290 cp/pt.c:25367 #, gcc-internal-format msgid "storage class %qD applied to template instantiation" msgstr "" -#: cp/pt.c:25231 +#: cp/pt.c:25324 #, gcc-internal-format msgid "explicit instantiation of non-class template %qD" msgstr "" -#: cp/pt.c:25234 +#: cp/pt.c:25327 #, gcc-internal-format msgid "explicit instantiation of non-template type %qT" msgstr "" -#: cp/pt.c:25243 +#: cp/pt.c:25336 #, gcc-internal-format msgid "explicit instantiation of %q#T before definition of template" msgstr "" -#: cp/pt.c:25264 +#: cp/pt.c:25357 #, gcc-internal-format msgid "ISO C++ forbids the use of %qE on explicit instantiations" msgstr "" -#: cp/pt.c:25304 +#: cp/pt.c:25397 #, gcc-internal-format msgid "duplicate explicit instantiation of %q#T" msgstr "" -#: cp/pt.c:25647 +#: cp/pt.c:25691 #, gcc-internal-format msgid "exception specification of %qD depends on itself" msgstr "" @@ -59111,12 +59163,12 @@ msgstr "" #. member function or static data member of a class template #. shall be present in every translation unit in which it is #. explicitly instantiated. -#: cp/pt.c:26148 +#: cp/pt.c:26192 #, gcc-internal-format msgid "explicit instantiation of %qD but no definition available" msgstr "" -#: cp/pt.c:26196 +#: cp/pt.c:26240 #, gcc-internal-format msgid "" "template instantiation depth exceeds maximum of %d instantiating %q+D, " @@ -59124,160 +59176,160 @@ msgid "" "increase the maximum)" msgstr "" -#: cp/pt.c:26562 +#: cp/pt.c:26606 #, gcc-internal-format msgid "" "non-type template parameters of deduced class type only available with %<-" "std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/pt.c:26592 +#: cp/pt.c:26636 #, gcc-internal-format msgid "" "%qT is not a valid type for a template non-type parameter because it is not " "structural" msgstr "" -#: cp/pt.c:26601 +#: cp/pt.c:26645 #, gcc-internal-format msgid "" "non-type template parameters of class type only available with %<-std=c+" "+20%> or %<-std=gnu++20%>" msgstr "" -#: cp/pt.c:26609 +#: cp/pt.c:26653 #, gcc-internal-format msgid "invalid template non-type parameter" msgstr "" -#: cp/pt.c:26611 +#: cp/pt.c:26655 #, gcc-internal-format msgid "%q#T is not a valid type for a template non-type parameter" msgstr "" -#: cp/pt.c:27965 +#: cp/pt.c:28009 #, gcc-internal-format msgid "keyword %<template%> not allowed in declarator-id" msgstr "" -#: cp/pt.c:28246 +#: cp/pt.c:28295 #, gcc-internal-format msgid "a concept cannot be constrained" msgstr "" -#: cp/pt.c:28255 +#: cp/pt.c:28304 #, gcc-internal-format msgid "concept %qE not in namespace scope" msgstr "" -#: cp/pt.c:28282 +#: cp/pt.c:28331 #, gcc-internal-format msgid "" "deducing from brace-enclosed initializer list requires %<#include " "<initializer_list>%>" msgstr "" -#: cp/pt.c:29286 +#: cp/pt.c:29354 #, gcc-internal-format msgid "non-deducible template %qT used without template arguments" msgstr "" -#: cp/pt.c:29293 +#: cp/pt.c:29360 #, gcc-internal-format msgid "" "alias template deduction only available with %<-std=c++20%> or %<-std=gnu+" "+20%>" msgstr "" -#: cp/pt.c:29395 +#: cp/pt.c:29463 #, gcc-internal-format msgid "" "cannot deduce template arguments for copy-initialization of %qT, as it has " "no non-explicit deduction guides or user-declared constructors" msgstr "" -#: cp/pt.c:29402 +#: cp/pt.c:29470 #, gcc-internal-format msgid "" "cannot deduce template arguments of %qT, as it has no viable deduction guides" msgstr "" -#: cp/pt.c:29418 +#: cp/pt.c:29486 #, gcc-internal-format msgid "class template argument deduction failed:" msgstr "" -#: cp/pt.c:29426 +#: cp/pt.c:29494 #, gcc-internal-format msgid "explicit deduction guides not considered for copy-initialization" msgstr "" #. TODO: Pass down location from cp_finish_decl. -#: cp/pt.c:29441 +#: cp/pt.c:29509 #, gcc-internal-format msgid "" "class template argument deduction for %qT failed: explicit deduction guide " "selected in copy-list-initialization" msgstr "" -#: cp/pt.c:29445 +#: cp/pt.c:29513 #, gcc-internal-format msgid "explicit deduction guide declared here" msgstr "" -#: cp/pt.c:29461 +#: cp/pt.c:29529 #, gcc-internal-format msgid "%qT may not intend to support class template argument deduction" msgstr "" -#: cp/pt.c:29463 +#: cp/pt.c:29531 #, gcc-internal-format msgid "add a deduction guide to suppress this warning" msgstr "" -#: cp/pt.c:29529 +#: cp/pt.c:29595 #, gcc-internal-format msgid "direct-list-initialization of %<auto%> requires exactly one element" msgstr "" -#: cp/pt.c:29532 +#: cp/pt.c:29598 #, gcc-internal-format msgid "" "for deduction to %<std::initializer_list%>, use copy-list-initialization (i." "e. add %<=%> before the %<{%>)" msgstr "" -#: cp/pt.c:29627 +#: cp/pt.c:29696 #, gcc-internal-format msgid "unable to deduce lambda return type from %qE" msgstr "" -#: cp/pt.c:29629 +#: cp/pt.c:29698 #, gcc-internal-format msgid "unable to deduce %qT from %qE" msgstr "" -#: cp/pt.c:29686 +#: cp/pt.c:29758 #, gcc-internal-format msgid "placeholder constraints not satisfied" msgstr "" -#: cp/pt.c:29690 +#: cp/pt.c:29762 #, gcc-internal-format msgid "deduced initializer does not satisfy placeholder constraints" msgstr "" -#: cp/pt.c:29694 +#: cp/pt.c:29766 #, gcc-internal-format msgid "deduced return type does not satisfy placeholder constraints" msgstr "" -#: cp/pt.c:29698 +#: cp/pt.c:29770 #, gcc-internal-format msgid "deduced expression type does not satisfy placeholder constraints" msgstr "" -#: cp/pt.c:29834 +#: cp/pt.c:29906 #, gcc-internal-format msgid "invalid use of %qT in template argument" msgstr "" @@ -59414,547 +59466,547 @@ msgstr "" msgid " since %q+#D declared in base class" msgstr "" -#: cp/semantics.c:937 +#: cp/semantics.c:956 #, gcc-internal-format msgid "%qs always evaluates to true in %<if constexpr%>" msgstr "" -#: cp/semantics.c:1085 +#: cp/semantics.c:1104 #, gcc-internal-format msgid "suggest explicit braces around empty body in %<do%> statement" msgstr "" -#: cp/semantics.c:1603 +#: cp/semantics.c:1622 #, gcc-internal-format msgid "catching polymorphic type %q#T by value" msgstr "" -#: cp/semantics.c:1608 +#: cp/semantics.c:1627 #, gcc-internal-format msgid "catching type %q#T by value" msgstr "" -#: cp/semantics.c:1613 +#: cp/semantics.c:1632 #, gcc-internal-format msgid "catching non-reference type %q#T" msgstr "" -#: cp/semantics.c:1823 +#: cp/semantics.c:1842 #, gcc-internal-format msgid "type of %<asm%> operand %qE could not be determined" msgstr "" -#: cp/semantics.c:1905 +#: cp/semantics.c:1924 #, gcc-internal-format msgid "%<__label__%> declarations are only allowed in function scopes" msgstr "" -#: cp/semantics.c:2090 +#: cp/semantics.c:2109 #, gcc-internal-format msgid "invalid use of member %qD in static member function" msgstr "" -#: cp/semantics.c:2337 +#: cp/semantics.c:2356 #, gcc-internal-format msgid "%qE missing template arguments" msgstr "" -#: cp/semantics.c:2397 +#: cp/semantics.c:2416 #, gcc-internal-format msgid "" "a statement expression is an insufficient context for overload resolution" msgstr "" -#: cp/semantics.c:2749 +#: cp/semantics.c:2768 #, gcc-internal-format msgid "cannot call a concept as a function" msgstr "" -#: cp/semantics.c:2817 +#: cp/semantics.c:2836 #, gcc-internal-format msgid "arguments to destructor are not allowed" msgstr "" -#: cp/semantics.c:2899 +#: cp/semantics.c:2918 #, gcc-internal-format msgid "%<this%> is unavailable for static member functions" msgstr "" -#: cp/semantics.c:2901 +#: cp/semantics.c:2920 #, gcc-internal-format msgid "invalid use of %<this%> in non-member function" msgstr "" -#: cp/semantics.c:2903 +#: cp/semantics.c:2922 #, gcc-internal-format msgid "invalid use of %<this%> at top level" msgstr "" -#: cp/semantics.c:2925 +#: cp/semantics.c:2944 #, gcc-internal-format msgid "invalid qualifying scope in pseudo-destructor name" msgstr "" -#: cp/semantics.c:2933 cp/typeck.c:2763 +#: cp/semantics.c:2952 cp/typeck.c:2774 #, gcc-internal-format msgid "qualified type %qT does not match destructor name ~%qT" msgstr "" -#: cp/semantics.c:2955 +#: cp/semantics.c:2974 #, gcc-internal-format msgid "%qE is not of type %qT" msgstr "" -#: cp/semantics.c:3035 +#: cp/semantics.c:3054 #, gcc-internal-format msgid "compound literal of non-object type %qT" msgstr "" -#: cp/semantics.c:3215 +#: cp/semantics.c:3233 #, gcc-internal-format msgid "template type parameters must use the keyword %<class%> or %<typename%>" msgstr "" -#: cp/semantics.c:3265 +#: cp/semantics.c:3283 #, gcc-internal-format msgid "" "invalid use of type %qT as a default value for a template template-parameter" msgstr "" -#: cp/semantics.c:3268 +#: cp/semantics.c:3286 #, gcc-internal-format msgid "invalid default argument for a template template parameter" msgstr "" -#: cp/semantics.c:3285 +#: cp/semantics.c:3303 #, gcc-internal-format msgid "definition of %q#T inside template parameter list" msgstr "" -#: cp/semantics.c:3316 +#: cp/semantics.c:3334 #, gcc-internal-format msgid "invalid definition of qualified type %qT" msgstr "" -#: cp/semantics.c:3599 +#: cp/semantics.c:3617 #, gcc-internal-format msgid "invalid base-class specification" msgstr "" -#: cp/semantics.c:3762 +#: cp/semantics.c:3780 #, gcc-internal-format msgid "cannot capture member %qD of anonymous union" msgstr "" -#: cp/semantics.c:3779 cp/semantics.c:10726 +#: cp/semantics.c:3797 cp/semantics.c:10754 #, gcc-internal-format msgid "%qD is not captured" msgstr "" -#: cp/semantics.c:3783 +#: cp/semantics.c:3801 #, gcc-internal-format msgid "the lambda has no capture-default" msgstr "" -#: cp/semantics.c:3785 +#: cp/semantics.c:3803 #, gcc-internal-format msgid "" "lambda in local class %q+T cannot capture variables from the enclosing " "context" msgstr "" -#: cp/semantics.c:3797 +#: cp/semantics.c:3815 #, gcc-internal-format msgid "use of local variable with automatic storage from containing function" msgstr "" -#: cp/semantics.c:3799 +#: cp/semantics.c:3817 #, gcc-internal-format msgid "use of parameter from containing function" msgstr "" -#: cp/semantics.c:3926 +#: cp/semantics.c:3944 #, gcc-internal-format msgid "use of parameter outside function body" msgstr "" -#: cp/semantics.c:3936 +#: cp/semantics.c:3954 #, gcc-internal-format msgid "missing template arguments" msgstr "" -#: cp/semantics.c:3972 +#: cp/semantics.c:3990 #, gcc-internal-format msgid "" "template parameter %qD of type %qT is not allowed in an integral constant " "expression because it is not of integral or enumeration type" msgstr "" -#: cp/semantics.c:4003 +#: cp/semantics.c:4021 #, gcc-internal-format msgid "use of class template %qT as expression" msgstr "" #. Ambiguous reference to base members. -#: cp/semantics.c:4010 +#: cp/semantics.c:4028 #, gcc-internal-format msgid "request for member %qD is ambiguous in multiple inheritance lattice" msgstr "" -#: cp/semantics.c:4038 +#: cp/semantics.c:4056 #, gcc-internal-format msgid "%qD cannot appear in a constant-expression" msgstr "" -#: cp/semantics.c:4215 +#: cp/semantics.c:4243 #, gcc-internal-format msgid "type of %qE is unknown" msgstr "" -#: cp/semantics.c:4244 +#: cp/semantics.c:4272 #, gcc-internal-format msgid "%qT is not an enumeration type" msgstr "" #. Parameter packs can only be used in templates -#: cp/semantics.c:4378 +#: cp/semantics.c:4406 #, gcc-internal-format msgid "parameter pack %<__bases%> only valid in template declaration" msgstr "" -#: cp/semantics.c:4410 +#: cp/semantics.c:4438 #, gcc-internal-format msgid "cannot apply %<offsetof%> to destructor %<~%T%>" msgstr "" -#: cp/semantics.c:4423 +#: cp/semantics.c:4451 #, gcc-internal-format msgid "cannot apply %<offsetof%> to member function %qD" msgstr "" -#: cp/semantics.c:4427 +#: cp/semantics.c:4455 #, gcc-internal-format msgid "cannot apply %<offsetof%> to member function" msgstr "" -#: cp/semantics.c:4432 +#: cp/semantics.c:4460 #, gcc-internal-format msgid "cannot apply %<offsetof%> to an enumerator %qD" msgstr "" -#: cp/semantics.c:4443 +#: cp/semantics.c:4471 #, gcc-internal-format msgid "" "%<offsetof%> within non-standard-layout type %qT is conditionally-supported" msgstr "" -#: cp/semantics.c:4970 cp/semantics.c:6752 cp/semantics.c:6836 -#: cp/semantics.c:6887 cp/semantics.c:7229 cp/semantics.c:7450 -#: cp/semantics.c:7733 cp/semantics.c:8181 +#: cp/semantics.c:4998 cp/semantics.c:6780 cp/semantics.c:6864 +#: cp/semantics.c:6915 cp/semantics.c:7257 cp/semantics.c:7478 +#: cp/semantics.c:7761 cp/semantics.c:8209 #, gcc-internal-format msgid "%<this%> allowed in OpenMP only in %<declare simd%> clauses" msgstr "" -#: cp/semantics.c:5716 +#: cp/semantics.c:5744 #, gcc-internal-format msgid "user defined reduction lookup is ambiguous" msgstr "" -#: cp/semantics.c:5990 +#: cp/semantics.c:6018 #, gcc-internal-format msgid "%qE in %<reduction%> clause is a zero size array" msgstr "" -#: cp/semantics.c:6040 +#: cp/semantics.c:6068 #, gcc-internal-format msgid "%qE has const type for %<reduction%>" msgstr "" -#: cp/semantics.c:6159 +#: cp/semantics.c:6187 #, gcc-internal-format msgid "user defined reduction with constructor initializer for base class %qT" msgstr "" -#: cp/semantics.c:6620 +#: cp/semantics.c:6648 #, gcc-internal-format msgid "" "linear clause with %qs modifier applied to non-reference variable with %qT " "type" msgstr "" -#: cp/semantics.c:6635 +#: cp/semantics.c:6663 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with %qT type" msgstr "" -#: cp/semantics.c:6659 +#: cp/semantics.c:6687 #, gcc-internal-format msgid "linear step expression must be integral" msgstr "" -#: cp/semantics.c:6764 cp/semantics.c:8194 +#: cp/semantics.c:6792 cp/semantics.c:8222 #, gcc-internal-format msgid "%qD is not a variable in clause %qs" msgstr "" -#: cp/semantics.c:6849 +#: cp/semantics.c:6877 #, gcc-internal-format msgid "%qD is not a variable in clause %<firstprivate%>" msgstr "" -#: cp/semantics.c:6900 +#: cp/semantics.c:6928 #, gcc-internal-format msgid "%qD is not a variable in clause %<lastprivate%>" msgstr "" -#: cp/semantics.c:6950 +#: cp/semantics.c:6978 #, gcc-internal-format msgid "%<gang%> static expression must be integral" msgstr "" -#: cp/semantics.c:6964 +#: cp/semantics.c:6992 #, gcc-internal-format msgid "%<gang%> static value must be positive" msgstr "" -#: cp/semantics.c:6998 +#: cp/semantics.c:7026 #, gcc-internal-format msgid "%<gang%> num expression must be integral" msgstr "" -#: cp/semantics.c:7001 +#: cp/semantics.c:7029 #, gcc-internal-format msgid "%<vector%> length expression must be integral" msgstr "" -#: cp/semantics.c:7005 +#: cp/semantics.c:7033 #, gcc-internal-format msgid "%<worker%> num expression must be integral" msgstr "" -#: cp/semantics.c:7027 +#: cp/semantics.c:7055 #, gcc-internal-format msgid "%<gang%> num value must be positive" msgstr "" -#: cp/semantics.c:7031 +#: cp/semantics.c:7059 #, gcc-internal-format msgid "%<vector%> length value must be positive" msgstr "" -#: cp/semantics.c:7036 +#: cp/semantics.c:7064 #, gcc-internal-format msgid "%<worker%> num value must be positive" msgstr "" -#: cp/semantics.c:7063 +#: cp/semantics.c:7091 #, gcc-internal-format msgid "schedule chunk size expression must be integral" msgstr "" -#: cp/semantics.c:7096 +#: cp/semantics.c:7124 #, gcc-internal-format msgid "%qs length expression must be integral" msgstr "" -#: cp/semantics.c:7110 +#: cp/semantics.c:7138 #, gcc-internal-format msgid "%qs length expression must be positive constant integer expression" msgstr "" -#: cp/semantics.c:7130 +#: cp/semantics.c:7158 #, gcc-internal-format msgid "%<async%> expression must be integral" msgstr "" -#: cp/semantics.c:7159 +#: cp/semantics.c:7187 #, gcc-internal-format msgid "%<thread_limit%> expression must be integral" msgstr "" -#: cp/semantics.c:7189 +#: cp/semantics.c:7217 #, gcc-internal-format msgid "%<device%> id must be integral" msgstr "" -#: cp/semantics.c:7211 +#: cp/semantics.c:7239 #, gcc-internal-format msgid "%<dist_schedule%> chunk size expression must be integral" msgstr "" -#: cp/semantics.c:7240 +#: cp/semantics.c:7268 #, gcc-internal-format msgid "%qD is not a variable in %<aligned%> clause" msgstr "" -#: cp/semantics.c:7255 +#: cp/semantics.c:7283 #, gcc-internal-format msgid "" "%qE in %<aligned%> clause is neither a pointer nor an array nor a reference " "to pointer or array" msgstr "" -#: cp/semantics.c:7262 +#: cp/semantics.c:7290 #, gcc-internal-format msgid "%qD appears more than once in %<aligned%> clauses" msgstr "" -#: cp/semantics.c:7277 +#: cp/semantics.c:7305 #, gcc-internal-format msgid "%<aligned%> clause alignment expression must be integral" msgstr "" -#: cp/semantics.c:7310 +#: cp/semantics.c:7338 #, gcc-internal-format msgid "%qD is not a variable in %<nontemporal%> clause" msgstr "" -#: cp/semantics.c:7321 +#: cp/semantics.c:7349 #, gcc-internal-format msgid "%qD appears more than once in %<nontemporal%> clauses" msgstr "" -#: cp/semantics.c:7338 +#: cp/semantics.c:7366 #, gcc-internal-format msgid "%<this%> not allowed in %<allocate%> clause" msgstr "" -#: cp/semantics.c:7350 +#: cp/semantics.c:7378 #, gcc-internal-format msgid "%qD is not a variable in %<allocate%> clause" msgstr "" -#: cp/semantics.c:7359 +#: cp/semantics.c:7387 #, gcc-internal-format msgid "%qD appears more than once in %<allocate%> clauses" msgstr "" -#: cp/semantics.c:7460 +#: cp/semantics.c:7488 #, gcc-internal-format msgid "%qD is not lvalue expression nor array section in %<depend%> clause" msgstr "" -#: cp/semantics.c:7886 +#: cp/semantics.c:7914 #, gcc-internal-format msgid "template %qE in clause %qs" msgstr "" -#: cp/semantics.c:7890 +#: cp/semantics.c:7918 #, gcc-internal-format msgid "overloaded function name %qE in clause %qs" msgstr "" -#: cp/semantics.c:7959 +#: cp/semantics.c:7987 #, gcc-internal-format msgid "%<grainsize%> expression must be integral" msgstr "" -#: cp/semantics.c:7989 +#: cp/semantics.c:8017 #, gcc-internal-format msgid "%<priority%> expression must be integral" msgstr "" -#: cp/semantics.c:8019 +#: cp/semantics.c:8047 #, gcc-internal-format msgid "%<hint%> expression must be integral" msgstr "" -#: cp/semantics.c:8032 +#: cp/semantics.c:8060 #, gcc-internal-format msgid "%<hint%> expression must be constant integer expression" msgstr "" -#: cp/semantics.c:8055 +#: cp/semantics.c:8083 #, gcc-internal-format msgid "%qs variable is neither a pointer nor reference to pointer" msgstr "" -#: cp/semantics.c:8065 +#: cp/semantics.c:8093 #, gcc-internal-format msgid "" "%qs variable is neither a pointer, nor an array nor reference to pointer or " "array" msgstr "" -#: cp/semantics.c:8122 +#: cp/semantics.c:8150 #, gcc-internal-format msgid "%<tile%> argument needs integral type" msgstr "" -#: cp/semantics.c:8511 +#: cp/semantics.c:8539 #, gcc-internal-format msgid "" "%<const%> qualified %qE without %<mutable%> member may appear only in " "%<shared%> or %<firstprivate%> clauses" msgstr "" -#: cp/semantics.c:8738 +#: cp/semantics.c:8766 #, gcc-internal-format msgid "%<threadprivate%> %qD is not file, namespace or block scope variable" msgstr "" -#: cp/semantics.c:8752 +#: cp/semantics.c:8780 #, gcc-internal-format msgid "%<threadprivate%> %qE directive not in %qT definition" msgstr "" -#: cp/semantics.c:8949 +#: cp/semantics.c:8977 #, gcc-internal-format msgid "difference between %qE and %qD does not have integer type" msgstr "" -#: cp/semantics.c:9415 +#: cp/semantics.c:9443 #, gcc-internal-format msgid "%<#pragma omp simd%> used with class iteration variable %qE" msgstr "" -#: cp/semantics.c:9718 cp/semantics.c:9728 +#: cp/semantics.c:9746 cp/semantics.c:9756 #, gcc-internal-format msgid "%<#pragma omp atomic update%> uses two different expressions for memory" msgstr "" -#: cp/semantics.c:10133 +#: cp/semantics.c:10161 #, gcc-internal-format, gfc-internal-format msgid "static assertion failed: %s" msgstr "" -#: cp/semantics.c:10136 +#: cp/semantics.c:10164 #, gcc-internal-format msgid "%qE evaluates to false" msgstr "" -#: cp/semantics.c:10148 +#: cp/semantics.c:10176 #, gcc-internal-format msgid "non-constant condition for static assertion" msgstr "" -#: cp/semantics.c:10177 +#: cp/semantics.c:10205 #, gcc-internal-format msgid "argument to %<decltype%> must be an expression" msgstr "" -#: cp/semantics.c:10214 +#: cp/semantics.c:10242 #, gcc-internal-format msgid "%<decltype%> cannot resolve address of overloaded function" msgstr "" -#: cp/semantics.c:10765 +#: cp/semantics.c:10793 #, gcc-internal-format msgid "operand of fold expression has no unexpanded parameter packs" msgstr "" -#: cp/semantics.c:10818 +#: cp/semantics.c:10846 #, gcc-internal-format msgid "both arguments in binary fold have unexpanded parameter packs" msgstr "" -#: cp/semantics.c:10820 +#: cp/semantics.c:10848 #, gcc-internal-format msgid "no unexpanded parameter packs in binary fold" msgstr "" -#: cp/semantics.c:10838 +#: cp/semantics.c:10866 #, gcc-internal-format msgid "non-pointer argument to %<__builtin_launder%>" msgstr "" @@ -59962,22 +60014,22 @@ msgstr "" #. std::bit_cast for destination ARRAY_TYPE is not possible, #. as functions may not return an array, so don't bother trying #. to support this (and then deal with VLAs etc.). -#: cp/semantics.c:10887 +#: cp/semantics.c:10915 #, gcc-internal-format msgid "%<__builtin_bit_cast%> destination type %qT is an array type" msgstr "" -#: cp/semantics.c:10893 +#: cp/semantics.c:10921 #, gcc-internal-format msgid "%<__builtin_bit_cast%> destination type %qT is not trivially copyable" msgstr "" -#: cp/semantics.c:10920 +#: cp/semantics.c:10948 #, gcc-internal-format msgid "%<__builtin_bit_cast%> source type %qT is not trivially copyable" msgstr "" -#: cp/semantics.c:10928 +#: cp/semantics.c:10956 #, gcc-internal-format msgid "" "%<__builtin_bit_cast%> source size %qE not equal to destination type size %qE" @@ -59988,668 +60040,668 @@ msgstr "" msgid "%qV qualifiers cannot be applied to %qT" msgstr "" -#: cp/tree.c:1934 +#: cp/tree.c:1943 #, gcc-internal-format msgid "statement-expression in a constant expression" msgstr "" -#: cp/tree.c:4249 +#: cp/tree.c:4300 #, gcc-internal-format msgid "" "%<-fabi-version=13%> (GCC 8.2) fixes the calling convention for %qT, which " "was accidentally changed in 8.1" msgstr "" -#: cp/tree.c:4253 +#: cp/tree.c:4304 #, gcc-internal-format msgid "" "%<-fabi-version=12%> (GCC 8.1) accidentally changes the calling convention " "for %qT" msgstr "" -#: cp/tree.c:4256 +#: cp/tree.c:4307 #, gcc-internal-format msgid " declared here" msgstr "" -#: cp/tree.c:4261 +#: cp/tree.c:4312 #, gcc-internal-format msgid "" "the calling convention for %qT changes in %<-fabi-version=13%> (GCC 8.2)" msgstr "" -#: cp/tree.c:4263 +#: cp/tree.c:4314 #, gcc-internal-format msgid " because all of its copy and move constructors are deleted" msgstr "" -#: cp/tree.c:4684 +#: cp/tree.c:4745 #, gcc-internal-format msgid "base class %qT is not public" msgstr "" -#: cp/tree.c:4687 +#: cp/tree.c:4748 #, gcc-internal-format msgid "%qD is not public" msgstr "" -#: cp/tree.c:4694 +#: cp/tree.c:4755 #, gcc-internal-format msgid "%qD is mutable" msgstr "" -#: cp/tree.c:4702 +#: cp/tree.c:4763 #, gcc-internal-format msgid "%qD has a non-structural type" msgstr "" -#: cp/tree.c:4720 +#: cp/tree.c:4781 #, gcc-internal-format msgid "%qE attribute argument must be a string constant" msgstr "" -#: cp/tree.c:4735 +#: cp/tree.c:4796 #, gcc-internal-format msgid "" "%qE attribute can only be applied to functions or to class or enumeration " "types" msgstr "" -#: cp/tree.c:4753 +#: cp/tree.c:4814 #, gcc-internal-format msgid "%qE attribute can only be applied to non-static data members" msgstr "" -#: cp/tree.c:4759 +#: cp/tree.c:4820 #, gcc-internal-format msgid "%qE attribute cannot be applied to a bit-field" msgstr "" -#: cp/tree.c:4779 +#: cp/tree.c:4840 #, gcc-internal-format msgid "%qE attribute takes no arguments" msgstr "" -#: cp/tree.c:4783 +#: cp/tree.c:4844 #, gcc-internal-format msgid "" "ISO C++ %qE attribute does not apply to functions; treating as %<[[gnu::" "%E]]%>" msgstr "" -#: cp/tree.c:4846 +#: cp/tree.c:4907 #, gcc-internal-format msgid "requested %<init_priority%> is not an integer constant" msgstr "" -#: cp/tree.c:4868 +#: cp/tree.c:4929 #, gcc-internal-format msgid "" "can only use %qE attribute on file-scope definitions of objects of class type" msgstr "" -#: cp/tree.c:4876 +#: cp/tree.c:4937 #, gcc-internal-format msgid "requested %<init_priority%> %i is out of range [0, %i]" msgstr "" -#: cp/tree.c:4887 +#: cp/tree.c:4948 #, gcc-internal-format msgid "requested %<init_priority%> %i is reserved for internal use" msgstr "" -#: cp/tree.c:4899 +#: cp/tree.c:4960 #, gcc-internal-format msgid "%qE attribute is not supported on this platform" msgstr "" -#: cp/tree.c:4926 +#: cp/tree.c:4987 #, gcc-internal-format msgid "redeclaration of %qD adds abi tag %qE" msgstr "" -#: cp/tree.c:4946 +#: cp/tree.c:5007 #, gcc-internal-format msgid "the %qE attribute requires arguments" msgstr "" -#: cp/tree.c:4957 +#: cp/tree.c:5018 #, gcc-internal-format msgid "arguments to the %qE attribute must be narrow string literals" msgstr "" -#: cp/tree.c:4970 cp/tree.c:4983 +#: cp/tree.c:5031 cp/tree.c:5044 #, gcc-internal-format msgid "arguments to the %qE attribute must contain valid identifiers" msgstr "" -#: cp/tree.c:4972 +#: cp/tree.c:5033 #, gcc-internal-format msgid "%<%c%> is not a valid first character for an identifier" msgstr "" -#: cp/tree.c:4985 +#: cp/tree.c:5046 #, gcc-internal-format msgid "%<%c%> is not a valid character in an identifier" msgstr "" -#: cp/tree.c:5009 +#: cp/tree.c:5070 #, gcc-internal-format msgid "%qE attribute applied to non-class, non-enum type %qT" msgstr "" -#: cp/tree.c:5015 +#: cp/tree.c:5076 #, gcc-internal-format msgid "%qE attribute applied to %qT after its definition" msgstr "" -#: cp/tree.c:5022 +#: cp/tree.c:5083 #, gcc-internal-format msgid "ignoring %qE attribute applied to template instantiation %qT" msgstr "" -#: cp/tree.c:5029 +#: cp/tree.c:5090 #, gcc-internal-format msgid "ignoring %qE attribute applied to template specialization %qT" msgstr "" -#: cp/tree.c:5051 +#: cp/tree.c:5112 #, gcc-internal-format msgid "%qE attribute applied to non-function, non-variable %qD" msgstr "" -#: cp/tree.c:5057 +#: cp/tree.c:5118 #, gcc-internal-format msgid "%qE attribute applied to extern \"C\" declaration %qD" msgstr "" -#: cp/tree.c:5937 +#: cp/tree.c:5998 #, gcc-internal-format msgid "zero as null pointer constant" msgstr "" -#: cp/tree.c:5959 +#: cp/tree.c:6020 #, gcc-internal-format msgid "%<lang_*%> check: failed in %s, at %s:%d" msgstr "" -#: cp/typeck.c:467 +#: cp/typeck.c:478 #, gcc-internal-format msgid "comparison between distinct pointer types %qT and %qT lacks a cast" msgstr "" -#: cp/typeck.c:473 +#: cp/typeck.c:484 #, gcc-internal-format msgid "conversion between distinct pointer types %qT and %qT lacks a cast" msgstr "" -#: cp/typeck.c:479 +#: cp/typeck.c:490 #, gcc-internal-format msgid "" "conditional expression between distinct pointer types %qT and %qT lacks a " "cast" msgstr "" -#: cp/typeck.c:627 +#: cp/typeck.c:638 #, gcc-internal-format msgid "" "ISO C++ forbids comparison between pointer of type %<void *%> and pointer-to-" "function" msgstr "" -#: cp/typeck.c:632 +#: cp/typeck.c:643 #, gcc-internal-format msgid "" "ISO C++ forbids conversion between pointer of type %<void *%> and pointer-to-" "function" msgstr "" -#: cp/typeck.c:637 +#: cp/typeck.c:648 #, gcc-internal-format msgid "" "ISO C++ forbids conditional expression between pointer of type %<void *%> " "and pointer-to-function" msgstr "" -#: cp/typeck.c:716 +#: cp/typeck.c:727 #, gcc-internal-format msgid "" "comparison between distinct pointer-to-member types %qT and %qT lacks a cast" msgstr "" -#: cp/typeck.c:721 +#: cp/typeck.c:732 #, gcc-internal-format msgid "" "conversion between distinct pointer-to-member types %qT and %qT lacks a cast" msgstr "" -#: cp/typeck.c:726 +#: cp/typeck.c:737 #, gcc-internal-format msgid "" "conditional expression between distinct pointer-to-member types %qT and %qT " "lacks a cast" msgstr "" -#: cp/typeck.c:1547 +#: cp/typeck.c:1558 #, gcc-internal-format msgid "canonical types differ for identical types %qT and %qT" msgstr "" -#: cp/typeck.c:1554 +#: cp/typeck.c:1565 #, gcc-internal-format msgid "same canonical type node for different types %qT and %qT" msgstr "" -#: cp/typeck.c:1714 +#: cp/typeck.c:1725 #, gcc-internal-format msgid "invalid application of %qs to a member function" msgstr "" -#: cp/typeck.c:1812 +#: cp/typeck.c:1823 #, gcc-internal-format msgid "invalid application of %<sizeof%> to a bit-field" msgstr "" -#: cp/typeck.c:1820 +#: cp/typeck.c:1831 #, gcc-internal-format msgid "ISO C++ forbids applying %<sizeof%> to an expression of function type" msgstr "" -#: cp/typeck.c:1885 +#: cp/typeck.c:1896 #, gcc-internal-format msgid "invalid application of %<__alignof%> to a bit-field" msgstr "" -#: cp/typeck.c:1896 +#: cp/typeck.c:1907 #, gcc-internal-format msgid "" "ISO C++ forbids applying %<__alignof%> to an expression of function type" msgstr "" -#: cp/typeck.c:1978 +#: cp/typeck.c:1989 #, gcc-internal-format msgid "%<alignas%> argument has non-integral type %qT" msgstr "" -#: cp/typeck.c:2023 +#: cp/typeck.c:2034 #, gcc-internal-format msgid "invalid use of non-static member function of type %qT" msgstr "" -#: cp/typeck.c:2191 +#: cp/typeck.c:2202 #, gcc-internal-format msgid "taking address of temporary array" msgstr "" -#: cp/typeck.c:2373 +#: cp/typeck.c:2384 #, gcc-internal-format msgid "ISO C++ forbids converting a string constant to %qT" msgstr "" -#: cp/typeck.c:2377 +#: cp/typeck.c:2388 #, gcc-internal-format msgid "deprecated conversion from string constant to %qT" msgstr "" -#: cp/typeck.c:2513 cp/typeck.c:3078 +#: cp/typeck.c:2524 cp/typeck.c:3089 #, gcc-internal-format msgid "" "request for member %qD in %qE, which is of pointer type %qT (maybe you meant " "to use %<->%> ?)" msgstr "" -#: cp/typeck.c:2517 cp/typeck.c:3082 +#: cp/typeck.c:2528 cp/typeck.c:3093 #, gcc-internal-format msgid "request for member %qD in %qE, which is of non-class type %qT" msgstr "" -#: cp/typeck.c:2548 +#: cp/typeck.c:2559 #, gcc-internal-format msgid "invalid use of non-static data member %qE" msgstr "" -#: cp/typeck.c:2628 +#: cp/typeck.c:2639 #, gcc-internal-format msgid "" "invalid access to non-static data member %qD in virtual base of NULL object" msgstr "" -#: cp/typeck.c:2778 +#: cp/typeck.c:2789 #, gcc-internal-format msgid "object type %qT does not match destructor name ~%qT" msgstr "" -#: cp/typeck.c:2787 +#: cp/typeck.c:2798 #, gcc-internal-format msgid "the type being destroyed is %qT, but the destructor refers to %qT" msgstr "" -#: cp/typeck.c:2929 +#: cp/typeck.c:2940 #, gcc-internal-format msgid "field %q#D can be accessed via %q#D" msgstr "" #. No hint. -#: cp/typeck.c:2948 +#: cp/typeck.c:2959 #, gcc-internal-format msgid "%q#T has no member named %qE" msgstr "" -#: cp/typeck.c:2971 +#: cp/typeck.c:2982 #, gcc-internal-format msgid "%q#T has no member named %qE; did you mean %q#D? (accessible via %q#D)" msgstr "" -#: cp/typeck.c:2982 +#: cp/typeck.c:2993 #, gcc-internal-format msgid "" "%q#T has no member named %qE; did you mean %q#D? (not accessible from this " "context)" msgstr "" -#: cp/typeck.c:2997 +#: cp/typeck.c:3008 #, gcc-internal-format msgid "%q#T has no member named %qE; did you mean %qE?" msgstr "" -#: cp/typeck.c:3112 cp/typeck.c:3138 +#: cp/typeck.c:3123 cp/typeck.c:3149 #, gcc-internal-format msgid "%<%D::%D%> is not a member of %qT" msgstr "" -#: cp/typeck.c:3177 +#: cp/typeck.c:3188 #, gcc-internal-format msgid "%qT is not a base of %qT" msgstr "" -#: cp/typeck.c:3230 +#: cp/typeck.c:3241 #, gcc-internal-format msgid "%qD is not a member template function" msgstr "" -#: cp/typeck.c:3433 +#: cp/typeck.c:3444 #, gcc-internal-format msgid "%qT is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:3465 +#: cp/typeck.c:3476 #, gcc-internal-format msgid "invalid use of array indexing on pointer to member" msgstr "" -#: cp/typeck.c:3468 +#: cp/typeck.c:3479 #, gcc-internal-format msgid "invalid use of unary %<*%> on pointer to member" msgstr "" -#: cp/typeck.c:3471 +#: cp/typeck.c:3482 #, gcc-internal-format msgid "invalid use of implicit conversion on pointer to member" msgstr "" -#: cp/typeck.c:3475 +#: cp/typeck.c:3486 #, gcc-internal-format msgid "" "left hand operand of %<->*%> must be a pointer to class, but is a pointer to " "member of type %qT" msgstr "" -#: cp/typeck.c:3540 +#: cp/typeck.c:3551 #, gcc-internal-format msgid "subscript missing in array reference" msgstr "" -#: cp/typeck.c:3637 +#: cp/typeck.c:3648 #, gcc-internal-format msgid "subscripting array declared %<register%>" msgstr "" -#: cp/typeck.c:3675 +#: cp/typeck.c:3686 #, gcc-internal-format msgid "subscripted value is neither array nor pointer" msgstr "" -#: cp/typeck.c:3747 +#: cp/typeck.c:3758 #, gcc-internal-format msgid "object missing in use of %qE" msgstr "" -#: cp/typeck.c:3972 +#: cp/typeck.c:3983 #, gcc-internal-format msgid "ISO C++ forbids calling %<::main%> from within program" msgstr "" -#: cp/typeck.c:3993 +#: cp/typeck.c:4004 #, gcc-internal-format msgid "" "must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E " "(...)%>, e.g. %<(... ->* %E) (...)%>" msgstr "" -#: cp/typeck.c:4010 +#: cp/typeck.c:4021 #, gcc-internal-format msgid "%qE cannot be used as a function" msgstr "" -#: cp/typeck.c:4013 +#: cp/typeck.c:4024 #, gcc-internal-format msgid "%qD cannot be used as a function" msgstr "" -#: cp/typeck.c:4016 +#: cp/typeck.c:4027 #, gcc-internal-format msgid "expression cannot be used as a function" msgstr "" -#: cp/typeck.c:4074 +#: cp/typeck.c:4085 #, gcc-internal-format msgid "too many arguments to constructor %q#D" msgstr "" -#: cp/typeck.c:4075 +#: cp/typeck.c:4086 #, gcc-internal-format msgid "too few arguments to constructor %q#D" msgstr "" -#: cp/typeck.c:4080 +#: cp/typeck.c:4091 #, gcc-internal-format msgid "too many arguments to member function %q#D" msgstr "" -#: cp/typeck.c:4081 +#: cp/typeck.c:4092 #, gcc-internal-format msgid "too few arguments to member function %q#D" msgstr "" -#: cp/typeck.c:4087 +#: cp/typeck.c:4098 #, gcc-internal-format msgid "too many arguments to function %q#D" msgstr "" -#: cp/typeck.c:4088 +#: cp/typeck.c:4099 #, gcc-internal-format msgid "too few arguments to function %q#D" msgstr "" -#: cp/typeck.c:4098 +#: cp/typeck.c:4109 #, gcc-internal-format msgid "too many arguments to method %q#D" msgstr "" -#: cp/typeck.c:4099 +#: cp/typeck.c:4110 #, gcc-internal-format msgid "too few arguments to method %q#D" msgstr "" -#: cp/typeck.c:4102 +#: cp/typeck.c:4113 #, gcc-internal-format msgid "too many arguments to function" msgstr "" -#: cp/typeck.c:4103 +#: cp/typeck.c:4114 #, gcc-internal-format msgid "too few arguments to function" msgstr "" -#: cp/typeck.c:4185 +#: cp/typeck.c:4196 #, gcc-internal-format msgid "parameter %P of %qD has incomplete type %qT" msgstr "" -#: cp/typeck.c:4191 +#: cp/typeck.c:4202 #, gcc-internal-format msgid "parameter %P has incomplete type %qT" msgstr "" -#: cp/typeck.c:4440 +#: cp/typeck.c:4451 #, gcc-internal-format msgid "the address of %qD will never be NULL" msgstr "" -#: cp/typeck.c:4451 +#: cp/typeck.c:4462 #, gcc-internal-format msgid "the compiler can assume that the address of %qD will never be NULL" msgstr "" -#: cp/typeck.c:4497 +#: cp/typeck.c:4508 #, gcc-internal-format msgid "" "bitwise operation between different enumeration types %qT and %qT is " "deprecated" msgstr "" -#: cp/typeck.c:4502 +#: cp/typeck.c:4513 #, gcc-internal-format msgid "" "arithmetic between different enumeration types %qT and %qT is deprecated" msgstr "" -#: cp/typeck.c:4532 +#: cp/typeck.c:4543 #, gcc-internal-format msgid "" "comparison of enumeration type %qT with floating-point type %qT is deprecated" msgstr "" -#: cp/typeck.c:4536 +#: cp/typeck.c:4547 #, gcc-internal-format msgid "" "comparison of floating-point type %qT with enumeration type %qT is deprecated" msgstr "" -#: cp/typeck.c:4545 +#: cp/typeck.c:4556 #, gcc-internal-format msgid "" "arithmetic between enumeration type %qT and floating-point type %qT is " "deprecated" msgstr "" -#: cp/typeck.c:4549 +#: cp/typeck.c:4560 #, gcc-internal-format msgid "" "arithmetic between floating-point type %qT and enumeration type %qT is " "deprecated" msgstr "" -#: cp/typeck.c:4675 cp/typeck.c:4687 +#: cp/typeck.c:4686 cp/typeck.c:4698 #, gcc-internal-format msgid "assuming cast to type %qT from overloaded function" msgstr "" -#: cp/typeck.c:4733 +#: cp/typeck.c:4744 #, gcc-internal-format msgid "NULL used in arithmetic" msgstr "" -#: cp/typeck.c:5189 cp/typeck.c:5198 cp/typeck.c:5491 cp/typeck.c:5500 +#: cp/typeck.c:5200 cp/typeck.c:5209 cp/typeck.c:5502 cp/typeck.c:5511 #, gcc-internal-format msgid "ISO C++ forbids comparison between pointer and integer" msgstr "" -#: cp/typeck.c:5404 cp/typeck.c:5417 +#: cp/typeck.c:5415 cp/typeck.c:5428 #, gcc-internal-format msgid "operand types are %qT and %qT" msgstr "" -#: cp/typeck.c:5440 +#: cp/typeck.c:5451 #, gcc-internal-format msgid "three-way comparison of vectors" msgstr "" -#: cp/typeck.c:5472 cp/typeck.c:5480 +#: cp/typeck.c:5483 cp/typeck.c:5491 #, gcc-internal-format msgid "ordered comparison of pointer with integer zero (%qT and %qT)" msgstr "" -#: cp/typeck.c:5530 +#: cp/typeck.c:5541 #, gcc-internal-format msgid "unordered comparison on non-floating-point argument" msgstr "" -#: cp/typeck.c:5576 +#: cp/typeck.c:5587 msgid "" "implicit conversion from %qH to %qI to match other operand of binary " "expression" msgstr "" -#: cp/typeck.c:5656 +#: cp/typeck.c:5667 #, gcc-internal-format msgid "invalid operands of types %qT and %qT to binary %qO" msgstr "" -#: cp/typeck.c:6008 +#: cp/typeck.c:6019 #, gcc-internal-format msgid "ISO C++ forbids using pointer of type %<void *%> in subtraction" msgstr "" -#: cp/typeck.c:6016 +#: cp/typeck.c:6027 #, gcc-internal-format msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:6024 +#: cp/typeck.c:6035 #, gcc-internal-format msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:6077 +#: cp/typeck.c:6088 #, gcc-internal-format msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:6156 +#: cp/typeck.c:6167 #, gcc-internal-format msgid "taking address of constructor %qD" msgstr "" -#: cp/typeck.c:6157 +#: cp/typeck.c:6168 #, gcc-internal-format msgid "taking address of destructor %qD" msgstr "" -#: cp/typeck.c:6173 +#: cp/typeck.c:6184 #, gcc-internal-format msgid "invalid use of %qE to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:6176 +#: cp/typeck.c:6187 #, gcc-internal-format msgid " a qualified-id is required" msgstr "" -#: cp/typeck.c:6183 +#: cp/typeck.c:6194 #, gcc-internal-format msgid "" "parentheses around %qE cannot be used to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:6369 +#: cp/typeck.c:6380 #, gcc-internal-format msgid "" "ISO C++ forbids taking the address of an unqualified or parenthesized non-" "static member function to form a pointer to member function. Say %<&%T::%D%>" msgstr "" -#: cp/typeck.c:6375 +#: cp/typeck.c:6386 #, gcc-internal-format msgid "" "ISO C++ forbids taking the address of a bound member function to form a " @@ -60657,445 +60709,445 @@ msgid "" msgstr "" #. Make this a permerror because we used to accept it. -#: cp/typeck.c:6410 +#: cp/typeck.c:6421 #, gcc-internal-format msgid "taking address of rvalue" msgstr "" -#: cp/typeck.c:6427 +#: cp/typeck.c:6438 #, gcc-internal-format msgid "ISO C++ forbids taking address of function %<::main%>" msgstr "" -#: cp/typeck.c:6485 +#: cp/typeck.c:6496 #, gcc-internal-format msgid "cannot create pointer to reference member %qD" msgstr "" -#: cp/typeck.c:6505 +#: cp/typeck.c:6516 #, gcc-internal-format msgid "attempt to take address of bit-field" msgstr "" -#: cp/typeck.c:6521 +#: cp/typeck.c:6532 #, gcc-internal-format msgid "taking address of an immediate function %qD" msgstr "" -#: cp/typeck.c:6668 +#: cp/typeck.c:6679 #, gcc-internal-format msgid "%<~%> on an expression of type %<bool%>" msgstr "" -#: cp/typeck.c:6669 +#: cp/typeck.c:6680 #, gcc-internal-format msgid "did you mean to use logical not (%<!%>)?" msgstr "" -#: cp/typeck.c:6792 +#: cp/typeck.c:6803 #, gcc-internal-format msgid "ISO C++ forbids incrementing an enum" msgstr "" -#: cp/typeck.c:6793 +#: cp/typeck.c:6804 #, gcc-internal-format msgid "ISO C++ forbids decrementing an enum" msgstr "" -#: cp/typeck.c:6809 +#: cp/typeck.c:6820 #, gcc-internal-format msgid "cannot increment a pointer to incomplete type %qT" msgstr "" -#: cp/typeck.c:6811 +#: cp/typeck.c:6822 #, gcc-internal-format msgid "cannot decrement a pointer to incomplete type %qT" msgstr "" -#: cp/typeck.c:6823 +#: cp/typeck.c:6834 #, gcc-internal-format msgid "ISO C++ forbids incrementing a pointer of type %qT" msgstr "" -#: cp/typeck.c:6825 +#: cp/typeck.c:6836 #, gcc-internal-format msgid "ISO C++ forbids decrementing a pointer of type %qT" msgstr "" -#: cp/typeck.c:6864 +#: cp/typeck.c:6875 #, gcc-internal-format msgid "%qs expression of %<volatile%>-qualified type is deprecated" msgstr "" -#: cp/typeck.c:6877 +#: cp/typeck.c:6888 #, gcc-internal-format msgid "use of an operand of type %qT in %<operator--%> is forbidden" msgstr "" -#: cp/typeck.c:6887 +#: cp/typeck.c:6898 #, gcc-internal-format msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++17" msgstr "" -#: cp/typeck.c:6895 +#: cp/typeck.c:6906 #, gcc-internal-format msgid "use of an operand of type %qT in %<operator++%> is deprecated" msgstr "" -#: cp/typeck.c:7075 +#: cp/typeck.c:7086 #, gcc-internal-format msgid "cannot take the address of %<this%>, which is an rvalue expression" msgstr "" -#: cp/typeck.c:7097 +#: cp/typeck.c:7108 #, gcc-internal-format msgid "address of explicit register variable %qD requested" msgstr "" -#: cp/typeck.c:7102 +#: cp/typeck.c:7113 #, gcc-internal-format msgid "address requested for %qD, which is declared %<register%>" msgstr "" -#: cp/typeck.c:7177 +#: cp/typeck.c:7188 #, gcc-internal-format msgid "list-initializer for non-class type must not be parenthesized" msgstr "" -#: cp/typeck.c:7189 +#: cp/typeck.c:7200 #, gcc-internal-format msgid "expression list treated as compound expression in initializer" msgstr "" -#: cp/typeck.c:7193 +#: cp/typeck.c:7204 #, gcc-internal-format msgid "expression list treated as compound expression in mem-initializer" msgstr "" -#: cp/typeck.c:7197 +#: cp/typeck.c:7208 #, gcc-internal-format msgid "expression list treated as compound expression in functional cast" msgstr "" -#: cp/typeck.c:7234 +#: cp/typeck.c:7245 #, gcc-internal-format, gfc-internal-format msgid "%s expression list treated as compound expression" msgstr "" -#: cp/typeck.c:7321 +#: cp/typeck.c:7332 #, gcc-internal-format msgid "no context to resolve type of %qE" msgstr "" -#: cp/typeck.c:7355 +#: cp/typeck.c:7366 #, gcc-internal-format msgid "cast from type %qT to type %qT casts away qualifiers" msgstr "" -#: cp/typeck.c:7361 +#: cp/typeck.c:7372 #, gcc-internal-format msgid "%<static_cast%> from type %qT to type %qT casts away qualifiers" msgstr "" -#: cp/typeck.c:7368 +#: cp/typeck.c:7379 #, gcc-internal-format msgid "%<reinterpret_cast%> from type %qT to type %qT casts away qualifiers" msgstr "" -#: cp/typeck.c:7392 +#: cp/typeck.c:7403 #, gcc-internal-format msgid "useless cast to type %q#T" msgstr "" -#: cp/typeck.c:7406 +#: cp/typeck.c:7417 #, gcc-internal-format msgid "type qualifiers ignored on cast result type" msgstr "" -#: cp/typeck.c:7843 +#: cp/typeck.c:7854 #, gcc-internal-format msgid "invalid %<static_cast%> from type %qT to type %qT" msgstr "" -#: cp/typeck.c:7849 cp/typeck.c:7855 cp/typeck.c:9510 +#: cp/typeck.c:7860 cp/typeck.c:7866 cp/typeck.c:9517 #, gcc-internal-format msgid "class type %qT is incomplete" msgstr "" -#: cp/typeck.c:7881 +#: cp/typeck.c:7892 msgid "converting from %qH to %qI" msgstr "" -#: cp/typeck.c:7956 +#: cp/typeck.c:7963 #, 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 "" -#: cp/typeck.c:8026 +#: cp/typeck.c:8033 msgid "cast from %qH to %qI loses precision" msgstr "" -#: cp/typeck.c:8051 +#: cp/typeck.c:8058 msgid "cast between incompatible function types from %qH to %qI" msgstr "" -#: cp/typeck.c:8062 +#: cp/typeck.c:8069 msgid "cast between incompatible pointer to member types from %qH to %qI" msgstr "" -#: cp/typeck.c:8083 cp/typeck.c:8273 +#: cp/typeck.c:8090 cp/typeck.c:8280 msgid "cast from %qH to %qI increases required alignment of target type" msgstr "" -#: cp/typeck.c:8100 +#: cp/typeck.c:8107 #, gcc-internal-format msgid "" "casting between pointer-to-function and pointer-to-object is conditionally-" "supported" msgstr "" -#: cp/typeck.c:8114 +#: cp/typeck.c:8121 #, gcc-internal-format msgid "invalid cast from type %qT to type %qT" msgstr "" -#: cp/typeck.c:8187 +#: cp/typeck.c:8194 #, gcc-internal-format msgid "" "invalid use of %<const_cast%> with type %qT, which is not a pointer, " "reference, nor a pointer-to-data-member type" msgstr "" -#: cp/typeck.c:8196 +#: cp/typeck.c:8203 #, gcc-internal-format msgid "" "invalid use of %<const_cast%> with type %qT, which is a pointer or reference " "to a function type" msgstr "" -#: cp/typeck.c:8238 +#: cp/typeck.c:8245 #, gcc-internal-format msgid "invalid %<const_cast%> of an rvalue of type %qT to type %qT" msgstr "" -#: cp/typeck.c:8308 +#: cp/typeck.c:8315 #, gcc-internal-format msgid "invalid %<const_cast%> from type %qT to type %qT" msgstr "" -#: cp/typeck.c:8409 cp/typeck.c:8418 +#: cp/typeck.c:8416 cp/typeck.c:8425 #, gcc-internal-format msgid "ISO C++ forbids casting to an array type %qT" msgstr "" -#: cp/typeck.c:8427 +#: cp/typeck.c:8434 #, gcc-internal-format msgid "invalid cast to function type %qT" msgstr "" -#: cp/typeck.c:8737 +#: cp/typeck.c:8744 #, gcc-internal-format msgid "" "compound assignment with %<volatile%>-qualified left operand is deprecated" msgstr "" -#: cp/typeck.c:8757 +#: cp/typeck.c:8764 #, gcc-internal-format msgid " in evaluation of %<%Q(%#T, %#T)%>" msgstr "" -#: cp/typeck.c:8817 +#: cp/typeck.c:8824 #, gcc-internal-format msgid "assigning to an array from an initializer list" msgstr "" -#: cp/typeck.c:8844 +#: cp/typeck.c:8851 #, gcc-internal-format msgid "incompatible types in assignment of %qT to %qT" msgstr "" -#: cp/typeck.c:8858 +#: cp/typeck.c:8865 #, gcc-internal-format msgid "array used as initializer" msgstr "" -#: cp/typeck.c:8860 +#: cp/typeck.c:8867 #, gcc-internal-format msgid "invalid array assignment" msgstr "" -#: cp/typeck.c:8997 +#: cp/typeck.c:9004 #, gcc-internal-format msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:9011 +#: cp/typeck.c:9018 #, gcc-internal-format msgid "pointer to member conversion via virtual base %qT" msgstr "" -#: cp/typeck.c:9058 cp/typeck.c:9077 +#: cp/typeck.c:9065 cp/typeck.c:9084 #, gcc-internal-format msgid " in pointer to member conversion" msgstr "" -#: cp/typeck.c:9158 +#: cp/typeck.c:9165 #, gcc-internal-format msgid "invalid conversion to type %qT from type %qT" msgstr "" -#: cp/typeck.c:9473 +#: cp/typeck.c:9480 msgid "cannot convert %qH to %qI in default argument" msgstr "" -#: cp/typeck.c:9478 +#: cp/typeck.c:9485 msgid "cannot convert %qH to %qI in argument passing" msgstr "" -#: cp/typeck.c:9487 +#: cp/typeck.c:9494 msgid "cannot convert %qH to %qI in initialization" msgstr "" -#: cp/typeck.c:9491 +#: cp/typeck.c:9498 msgid "cannot convert %qH to %qI in return" msgstr "" -#: cp/typeck.c:9496 +#: cp/typeck.c:9503 msgid "cannot convert %qH to %qI in assignment" msgstr "" -#: cp/typeck.c:9528 +#: cp/typeck.c:9535 #, gcc-internal-format msgid "parameter %qP of %qD might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9532 +#: cp/typeck.c:9539 #, gcc-internal-format msgid "parameter might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9537 +#: cp/typeck.c:9544 #, gcc-internal-format msgid "target of conversion might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9542 +#: cp/typeck.c:9549 #, gcc-internal-format msgid "target of initialization might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9552 +#: cp/typeck.c:9559 #, gcc-internal-format msgid "" "left-hand side of assignment might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9648 +#: cp/typeck.c:9655 #, gcc-internal-format msgid "in passing argument %P of %qD" msgstr "" -#: cp/typeck.c:9730 +#: cp/typeck.c:9737 #, gcc-internal-format msgid "returning reference to temporary" msgstr "" -#: cp/typeck.c:9733 +#: cp/typeck.c:9740 #, gcc-internal-format msgid "" "returning temporary %<initializer_list%> does not extend the lifetime of the " "underlying array" msgstr "" -#: cp/typeck.c:9769 +#: cp/typeck.c:9776 #, gcc-internal-format msgid "reference to local variable %qD returned" msgstr "" -#: cp/typeck.c:9773 +#: cp/typeck.c:9780 #, gcc-internal-format msgid "" "returning local %<initializer_list%> variable %qD does not extend the " "lifetime of the underlying array" msgstr "" -#: cp/typeck.c:9779 +#: cp/typeck.c:9786 #, gcc-internal-format msgid "address of label %qD returned" msgstr "" -#: cp/typeck.c:9783 +#: cp/typeck.c:9790 #, gcc-internal-format msgid "address of local variable %qD returned" msgstr "" -#: cp/typeck.c:9982 +#: cp/typeck.c:9989 #, gcc-internal-format msgid "moving a local object in a return statement prevents copy elision" msgstr "" -#: cp/typeck.c:9984 cp/typeck.c:10007 +#: cp/typeck.c:9991 cp/typeck.c:10014 #, gcc-internal-format msgid "remove %<std::move%> call" msgstr "" -#: cp/typeck.c:10006 +#: cp/typeck.c:10013 #, gcc-internal-format msgid "redundant move in return statement" msgstr "" -#: cp/typeck.c:10045 +#: cp/typeck.c:10052 #, gcc-internal-format msgid "returning a value from a destructor" msgstr "" #. If a return statement appears in a handler of the #. function-try-block of a constructor, the program is ill-formed. -#: cp/typeck.c:10053 +#: cp/typeck.c:10060 #, gcc-internal-format msgid "cannot return from a handler of a function-try-block of a constructor" msgstr "" #. You can't return a value from a constructor. -#: cp/typeck.c:10056 +#: cp/typeck.c:10063 #, gcc-internal-format msgid "returning a value from a constructor" msgstr "" #. Give a helpful error message. -#: cp/typeck.c:10091 cp/typeck.c:10137 +#: cp/typeck.c:10098 cp/typeck.c:10144 #, gcc-internal-format msgid "return-statement with no value, in function returning %qT" msgstr "" -#: cp/typeck.c:10099 +#: cp/typeck.c:10106 #, gcc-internal-format msgid "returning initializer list" msgstr "" -#: cp/typeck.c:10118 +#: cp/typeck.c:10125 #, gcc-internal-format msgid "inconsistent types %qT and %qT deduced for lambda return type" msgstr "" -#: cp/typeck.c:10121 +#: cp/typeck.c:10128 #, gcc-internal-format msgid "inconsistent deduction for auto return type: %qT and then %qT" msgstr "" -#: cp/typeck.c:10156 +#: cp/typeck.c:10163 #, gcc-internal-format msgid "return-statement with a value, in function returning %qT" msgstr "" -#: cp/typeck.c:10185 +#: cp/typeck.c:10192 #, gcc-internal-format msgid "" "%<operator new%> must not return NULL unless it is declared %<throw()%> (or " "%<-fcheck-new%> is in effect)" msgstr "" -#: cp/typeck.c:10828 +#: cp/typeck.c:10838 #, gcc-internal-format msgid "using rvalue as lvalue" msgstr "" @@ -61361,107 +61413,102 @@ msgstr "" msgid "cannot initialize aggregate of type %qT with a compound literal" msgstr "" -#: cp/typeck2.c:1586 cp/typeck2.c:1616 +#: cp/typeck2.c:1583 cp/typeck2.c:1613 #, gcc-internal-format msgid "missing initializer for member %qD" msgstr "" -#: cp/typeck2.c:1593 +#: cp/typeck2.c:1590 #, gcc-internal-format msgid "member %qD is uninitialized reference" msgstr "" -#: cp/typeck2.c:1600 +#: cp/typeck2.c:1597 #, gcc-internal-format msgid "member %qD with uninitialized reference fields" msgstr "" -#: cp/typeck2.c:1691 +#: cp/typeck2.c:1688 #, gcc-internal-format msgid "designator order for field %qD does not match declaration order in %qT" msgstr "" -#: cp/typeck2.c:1764 +#: cp/typeck2.c:1761 #, gcc-internal-format msgid "no field %qD found in union being initialized" msgstr "" -#: cp/typeck2.c:1775 +#: cp/typeck2.c:1772 #, gcc-internal-format msgid "index value instead of field name in union initializer" msgstr "" -#: cp/typeck2.c:1969 +#: cp/typeck2.c:1966 #, gcc-internal-format msgid "circular pointer delegation detected" msgstr "" -#: cp/typeck2.c:1983 +#: cp/typeck2.c:1980 #, gcc-internal-format msgid "base operand of %<->%> has non-pointer type %qT" msgstr "" -#: cp/typeck2.c:2013 +#: cp/typeck2.c:2010 #, gcc-internal-format msgid "result of %<operator->()%> yields non-pointer result" msgstr "" -#: cp/typeck2.c:2015 +#: cp/typeck2.c:2012 #, gcc-internal-format msgid "base operand of %<->%> is not a pointer" msgstr "" -#: cp/typeck2.c:2042 +#: cp/typeck2.c:2039 #, gcc-internal-format msgid "%qE cannot be used as a member pointer, since it is of type %qT" msgstr "" -#: cp/typeck2.c:2051 +#: cp/typeck2.c:2048 #, gcc-internal-format msgid "cannot apply member pointer %qE to %qE, which is of non-class type %qT" msgstr "" -#: cp/typeck2.c:2073 +#: cp/typeck2.c:2070 #, gcc-internal-format msgid "pointer to member type %qT incompatible with object type %qT" msgstr "" -#: cp/typeck2.c:2131 +#: cp/typeck2.c:2128 #, gcc-internal-format msgid "pointer-to-member-function type %qT requires an rvalue" msgstr "" -#: cp/typeck2.c:2142 +#: cp/typeck2.c:2139 #, gcc-internal-format msgid "pointer-to-member-function type %qT requires an lvalue" msgstr "" -#: cp/typeck2.c:2150 +#: cp/typeck2.c:2147 #, gcc-internal-format msgid "pointer-to-member-function type %qT requires an lvalue before C++20" msgstr "" -#: cp/typeck2.c:2191 +#: cp/typeck2.c:2188 #, gcc-internal-format msgid "functional cast to array type %qT" msgstr "" -#: cp/typeck2.c:2213 -#, gcc-internal-format -msgid "cannot deduce template arguments for %qT from %<()%>" -msgstr "" - -#: cp/typeck2.c:2233 +#: cp/typeck2.c:2219 #, gcc-internal-format msgid "invalid value-initialization of reference type" msgstr "" -#: cp/typeck2.c:2474 +#: cp/typeck2.c:2460 #, gcc-internal-format msgid "call to function %qD which throws incomplete type %q#T" msgstr "" -#: cp/typeck2.c:2477 +#: cp/typeck2.c:2463 #, gcc-internal-format msgid "call to function which throws incomplete type %q#T" msgstr "" @@ -61481,273 +61528,278 @@ msgstr "" msgid "unable to open log file %<vtv_count_data.log%>: %m" msgstr "" -#: d/dmd/dsymbolsem.c:134 +#: d/dmd/dsymbolsem.c:136 #, gcc-internal-format msgid "missing or corrupt object.d" msgstr "" -#: d/dmd/dsymbolsem.c:182 +#: d/dmd/dsymbolsem.c:184 #, gcc-internal-format msgid "%p has no semantic routine" msgstr "" -#: d/dmd/dsymbolsem.c:304 +#: d/dmd/dsymbolsem.c:306 #, gcc-internal-format msgid "extern symbols cannot have initializers" msgstr "" -#: d/dmd/dsymbolsem.c:385 +#: d/dmd/dsymbolsem.c:387 #, gcc-internal-format msgid "__gshared not allowed in safe functions; use shared" msgstr "" -#: d/dmd/dsymbolsem.c:397 +#: d/dmd/dsymbolsem.c:399 #, gcc-internal-format, gfc-internal-format msgid "" "type %s is inferred from initializer %s, and variables cannot be of type void" msgstr "" -#: d/dmd/dsymbolsem.c:401 +#: d/dmd/dsymbolsem.c:403 #, gcc-internal-format msgid "variables cannot be of type void" msgstr "" -#: d/dmd/dsymbolsem.c:407 +#: d/dmd/dsymbolsem.c:409 #, gcc-internal-format msgid "cannot be declared to be a function" msgstr "" -#: d/dmd/dsymbolsem.c:416 +#: d/dmd/dsymbolsem.c:418 #, gcc-internal-format, gfc-internal-format -msgid "no definition of struct %s" +msgid "no definition of struct `%s`" msgstr "" -#: d/dmd/dsymbolsem.c:420 +#: d/dmd/dsymbolsem.c:434 #, gcc-internal-format msgid "" "storage class `auto` has no effect if type is not inferred, did you mean " "`scope`?" msgstr "" -#: d/dmd/dsymbolsem.c:605 +#: d/dmd/dsymbolsem.c:619 #, gcc-internal-format msgid "cannot be final, perhaps you meant const?" msgstr "" -#: d/dmd/dsymbolsem.c:610 +#: d/dmd/dsymbolsem.c:624 #, gcc-internal-format, gfc-internal-format msgid "cannot be %s" msgstr "" -#: d/dmd/dsymbolsem.c:622 +#: d/dmd/dsymbolsem.c:636 #, gcc-internal-format, gfc-internal-format msgid "cannot be `scope` and `%s`" msgstr "" -#: d/dmd/dsymbolsem.c:626 +#: d/dmd/dsymbolsem.c:640 #, gcc-internal-format msgid "field cannot be `scope`" msgstr "" -#: d/dmd/dsymbolsem.c:659 +#: d/dmd/dsymbolsem.c:673 #, gcc-internal-format msgid "field not allowed in interface" msgstr "" -#: d/dmd/dsymbolsem.c:663 +#: d/dmd/dsymbolsem.c:677 #, gcc-internal-format, gfc-internal-format msgid "cannot be further field because it will change the determined %s size" msgstr "" -#: d/dmd/dsymbolsem.c:684 +#: d/dmd/dsymbolsem.c:698 #, gcc-internal-format, gfc-internal-format msgid "cannot use template to add field to aggregate `%s`" msgstr "" -#: d/dmd/dsymbolsem.c:691 +#: d/dmd/dsymbolsem.c:705 #, gcc-internal-format msgid "only parameters or foreach declarations can be ref" msgstr "" -#: d/dmd/dsymbolsem.c:700 +#: d/dmd/dsymbolsem.c:714 #, gcc-internal-format msgid "only parameters or stack based variables can be inout" msgstr "" -#: d/dmd/dsymbolsem.c:718 +#: d/dmd/dsymbolsem.c:732 #, gcc-internal-format msgid "inout variables can only be declared inside inout functions" msgstr "" -#: d/dmd/dsymbolsem.c:737 +#: d/dmd/dsymbolsem.c:751 #, gcc-internal-format, gfc-internal-format msgid "default construction is disabled for type %s" msgstr "" -#: d/dmd/dsymbolsem.c:746 +#: d/dmd/dsymbolsem.c:760 #, gcc-internal-format msgid "" "globals, statics, fields, manifest constants, ref and out parameters cannot " "be scope" msgstr "" -#: d/dmd/dsymbolsem.c:752 +#: d/dmd/dsymbolsem.c:766 #, gcc-internal-format msgid "reference to scope class must be scope" msgstr "" -#: d/dmd/dsymbolsem.c:762 d/dmd/dsymbolsem.c:769 +#: d/dmd/dsymbolsem.c:776 d/dmd/dsymbolsem.c:783 #, gcc-internal-format msgid "void initializers for pointers not allowed in safe functions" msgstr "" -#: d/dmd/dsymbolsem.c:782 +#: d/dmd/dsymbolsem.c:796 #, gcc-internal-format msgid "manifest constants must have initializers" msgstr "" -#: d/dmd/dsymbolsem.c:794 +#: d/dmd/dsymbolsem.c:808 #, gcc-internal-format, gfc-internal-format msgid "size of type %s is invalid" msgstr "" -#: d/dmd/dsymbolsem.c:829 +#: d/dmd/dsymbolsem.c:843 #, gcc-internal-format, gfc-internal-format msgid "%s does not have a default initializer" msgstr "" -#: d/dmd/dsymbolsem.c:873 +#: d/dmd/dsymbolsem.c:887 #, gcc-internal-format msgid "is not a static and cannot have static initializer" msgstr "" -#: d/dmd/dsymbolsem.c:993 +#: d/dmd/dsymbolsem.c:1007 #, gcc-internal-format, gfc-internal-format msgid "" "of type struct %s uses this(this), which is not allowed in static " "initialization" msgstr "" -#: d/dmd/dsymbolsem.c:1028 +#: d/dmd/dsymbolsem.c:1042 #, gcc-internal-format msgid "static storage variables cannot have destructors" msgstr "" -#: d/dmd/dsymbolsem.c:1339 +#: d/dmd/dsymbolsem.c:1340 #, gcc-internal-format msgid "string expected for library name" msgstr "" -#: d/dmd/dsymbolsem.c:1371 +#: d/dmd/dsymbolsem.c:1372 #, gcc-internal-format msgid "function name expected for start address" msgstr "" -#: d/dmd/dsymbolsem.c:1386 +#: d/dmd/dsymbolsem.c:1387 #, gcc-internal-format, gfc-internal-format msgid "function name expected for start address, not `%s`" msgstr "" -#: d/dmd/dsymbolsem.c:1400 +#: d/dmd/dsymbolsem.c:1401 #, gcc-internal-format msgid "string expected for mangled name" msgstr "" -#: d/dmd/dsymbolsem.c:1413 +#: d/dmd/dsymbolsem.c:1414 #, gcc-internal-format msgid "zero-length string not allowed for mangled name" msgstr "" -#: d/dmd/dsymbolsem.c:1418 +#: d/dmd/dsymbolsem.c:1419 #, gcc-internal-format msgid "mangled name characters can only be of type char" msgstr "" -#: d/dmd/dsymbolsem.c:1443 +#: d/dmd/dsymbolsem.c:1444 msgid "char 0x%02x not allowed in mangled name" msgstr "" -#: d/dmd/dsymbolsem.c:1456 +#: d/dmd/dsymbolsem.c:1457 msgid "char 0x%04x not allowed in mangled name" msgstr "" -#: d/dmd/dsymbolsem.c:1519 +#: d/dmd/dsymbolsem.c:1465 +#, gcc-internal-format +msgid "takes no argument" +msgstr "" + +#: d/dmd/dsymbolsem.c:1526 #, gcc-internal-format msgid "can only apply to a single declaration" msgstr "" -#: d/dmd/dsymbolsem.c:1532 +#: d/dmd/dsymbolsem.c:1539 #, gcc-internal-format msgid "pragma is missing closing `;`" msgstr "" -#: d/dmd/dsymbolsem.c:1565 +#: d/dmd/dsymbolsem.c:1573 #, gcc-internal-format, gfc-internal-format msgid "incomplete mixin declaration (%s)" msgstr "" -#: d/dmd/dsymbolsem.c:1747 +#: d/dmd/dsymbolsem.c:1758 #, gcc-internal-format msgid "base type must not be void" msgstr "" -#: d/dmd/dsymbolsem.c:1773 +#: d/dmd/dsymbolsem.c:1784 #, gcc-internal-format, gfc-internal-format msgid "enum %s must have at least one member" msgstr "" -#: d/dmd/dsymbolsem.c:1859 +#: d/dmd/dsymbolsem.c:1870 #, gcc-internal-format msgid "circular reference to enum member" msgstr "" -#: d/dmd/dsymbolsem.c:2037 +#: d/dmd/dsymbolsem.c:2048 #, gcc-internal-format, gfc-internal-format msgid "initialization with (%s.%s + 1) causes overflow for type `%s`" msgstr "" -#: d/dmd/dsymbolsem.c:2066 +#: d/dmd/dsymbolsem.c:2077 #, gcc-internal-format msgid "has inexact value, due to loss of precision" msgstr "" -#: d/dmd/dsymbolsem.c:2144 +#: d/dmd/dsymbolsem.c:2155 #, gcc-internal-format msgid "template tuple parameter must be last one" msgstr "" -#: d/dmd/dsymbolsem.c:2320 +#: d/dmd/dsymbolsem.c:2331 #, gcc-internal-format msgid "recursive mixin instantiation" msgstr "" #. ensure error message gets printed -#: d/dmd/dsymbolsem.c:2374 d/dmd/dsymbolsem.c:5234 +#: d/dmd/dsymbolsem.c:2385 d/dmd/dsymbolsem.c:5364 #, gcc-internal-format msgid "recursive expansion" msgstr "" -#: d/dmd/dsymbolsem.c:2414 +#: d/dmd/dsymbolsem.c:2425 #, gcc-internal-format msgid "error instantiating" msgstr "" -#: d/dmd/dsymbolsem.c:2537 d/dmd/dsymbolsem.c:2706 +#: d/dmd/dsymbolsem.c:2565 d/dmd/dsymbolsem.c:2734 #, gcc-internal-format, gfc-internal-format msgid "%s must be a function instead of %s" msgstr "" -#: d/dmd/dsymbolsem.c:2634 +#: d/dmd/dsymbolsem.c:2662 #, gcc-internal-format, gfc-internal-format msgid "without `this` cannot be %s" msgstr "" -#: d/dmd/dsymbolsem.c:2734 +#: d/dmd/dsymbolsem.c:2762 #, gcc-internal-format msgid "storage class `auto` has no effect if return type is not inferred" msgstr "" -#: d/dmd/dsymbolsem.c:2739 +#: d/dmd/dsymbolsem.c:2767 #, gcc-internal-format msgid "functions cannot be scope" msgstr "" @@ -61755,44 +61807,58 @@ msgstr "" #. Non-static nested functions have a hidden 'this' pointer to which #. * the 'return' applies #. -#: d/dmd/dsymbolsem.c:2747 +#: d/dmd/dsymbolsem.c:2775 #, gcc-internal-format msgid "static member has no `this` to which `return` can apply" msgstr "" -#: d/dmd/dsymbolsem.c:2759 +#: d/dmd/dsymbolsem.c:2787 #, gcc-internal-format, gfc-internal-format msgid "%s functions cannot be abstract" msgstr "" -#: d/dmd/dsymbolsem.c:2766 +#: d/dmd/dsymbolsem.c:2794 #, gcc-internal-format, gfc-internal-format msgid "%s method is not virtual and cannot override" msgstr "" -#: d/dmd/dsymbolsem.c:2768 +#: d/dmd/dsymbolsem.c:2796 #, gcc-internal-format msgid "cannot override a non-virtual function" msgstr "" -#: d/dmd/dsymbolsem.c:2772 +#: d/dmd/dsymbolsem.c:2800 #, gcc-internal-format msgid "cannot be both final and abstract" msgstr "" -#: d/dmd/dsymbolsem.c:2784 +#: d/dmd/dsymbolsem.c:2829 +#, gcc-internal-format, gfc-internal-format +msgid "" +"`pragma(%s)` functions must be `extern(C) %s %s([parameters...], " +"const(char)*, ...)` not `%s`" +msgstr "" + +#: d/dmd/dsymbolsem.c:2835 +#, gcc-internal-format, gfc-internal-format +msgid "" +"`pragma(%s)` functions must be `extern(C) %s %s([parameters...], " +"const(char)*, va_list)`" +msgstr "" + +#: d/dmd/dsymbolsem.c:2851 #, gcc-internal-format, gfc-internal-format msgid "" "constructors, destructors, postblits, invariants, new and delete functions " "are not allowed in interface %s" msgstr "" -#: d/dmd/dsymbolsem.c:2786 +#: d/dmd/dsymbolsem.c:2853 #, gcc-internal-format, gfc-internal-format msgid "function body only allowed in final functions in interface %s" msgstr "" -#: d/dmd/dsymbolsem.c:2794 +#: d/dmd/dsymbolsem.c:2861 #, gcc-internal-format, gfc-internal-format msgid "destructors, postblits and invariants are not allowed in union %s" msgstr "" @@ -61800,181 +61866,181 @@ msgstr "" #. If same name function exists in base class but 'this' is auto return, #. * cannot find index of base class's vtbl[] to override. #. -#: d/dmd/dsymbolsem.c:2850 +#: d/dmd/dsymbolsem.c:2917 #, gcc-internal-format msgid "" "return type inference is not supported if may override base class function" msgstr "" -#: d/dmd/dsymbolsem.c:2880 d/dmd/dsymbolsem.c:2975 +#: d/dmd/dsymbolsem.c:2947 d/dmd/dsymbolsem.c:3042 #, gcc-internal-format, gfc-internal-format msgid "cannot override final function %s" msgstr "" -#: d/dmd/dsymbolsem.c:3008 +#: d/dmd/dsymbolsem.c:3075 #, gcc-internal-format msgid "multiple overrides of same function" msgstr "" -#: d/dmd/dsymbolsem.c:3103 +#: d/dmd/dsymbolsem.c:3170 #, gcc-internal-format, gfc-internal-format msgid "incompatible covariant types %s and %s" msgstr "" -#: d/dmd/dsymbolsem.c:3125 +#: d/dmd/dsymbolsem.c:3192 #, gcc-internal-format, gfc-internal-format msgid "does not override any function, did you mean to override `%s%s`?" msgstr "" -#: d/dmd/dsymbolsem.c:3128 +#: d/dmd/dsymbolsem.c:3195 #, gcc-internal-format msgid "does not override any function" msgstr "" -#: d/dmd/dsymbolsem.c:3149 +#: d/dmd/dsymbolsem.c:3216 #, gcc-internal-format, gfc-internal-format msgid "cannot override final function %s.%s" msgstr "" -#: d/dmd/dsymbolsem.c:3164 +#: d/dmd/dsymbolsem.c:3231 #, gcc-internal-format msgid "override only applies to class member functions" msgstr "" -#: d/dmd/dsymbolsem.c:3173 +#: d/dmd/dsymbolsem.c:3240 #, gcc-internal-format msgid "" "in and out contracts can only appear without a body when they are virtual " "interface functions or abstract" msgstr "" -#: d/dmd/dsymbolsem.c:3196 +#: d/dmd/dsymbolsem.c:3263 #, gcc-internal-format, gfc-internal-format msgid "cannot use template to add virtual function to class `%s`" msgstr "" -#: d/dmd/dsymbolsem.c:3304 +#: d/dmd/dsymbolsem.c:3371 #, gcc-internal-format msgid "" "default constructor for structs only allowed with @disable, no body, and no " "parameters" msgstr "" -#: d/dmd/dsymbolsem.c:3648 +#: d/dmd/dsymbolsem.c:3715 #, gcc-internal-format msgid "at least one argument of type size_t expected" msgstr "" -#: d/dmd/dsymbolsem.c:3654 +#: d/dmd/dsymbolsem.c:3721 #, gcc-internal-format, gfc-internal-format msgid "first argument must be type size_t, not %s" msgstr "" -#: d/dmd/dsymbolsem.c:3690 +#: d/dmd/dsymbolsem.c:3757 #, gcc-internal-format msgid "one argument of type void* expected" msgstr "" -#: d/dmd/dsymbolsem.c:3696 +#: d/dmd/dsymbolsem.c:3763 #, gcc-internal-format, gfc-internal-format msgid "one argument of type void* expected, not %s" msgstr "" -#: d/dmd/dsymbolsem.c:3754 +#: d/dmd/dsymbolsem.c:3821 #, gcc-internal-format msgid "structs, unions cannot be abstract" msgstr "" -#: d/dmd/dsymbolsem.c:3894 d/dmd/dsymbolsem.c:4446 +#: d/dmd/dsymbolsem.c:3961 d/dmd/dsymbolsem.c:4513 #, gcc-internal-format, gfc-internal-format msgid "already exists at %s. Perhaps in another function with the same name?" msgstr "" -#: d/dmd/dsymbolsem.c:3976 +#: d/dmd/dsymbolsem.c:4043 #, gcc-internal-format msgid "" "storage class `auto` is invalid when declaring a class, did you mean to use " "`scope`?" msgstr "" -#: d/dmd/dsymbolsem.c:4039 +#: d/dmd/dsymbolsem.c:4106 #, gcc-internal-format, gfc-internal-format msgid "base type must be class or interface, not %s" msgstr "" -#: d/dmd/dsymbolsem.c:4062 +#: d/dmd/dsymbolsem.c:4129 #, gcc-internal-format msgid "circular inheritance" msgstr "" -#: d/dmd/dsymbolsem.c:4098 d/dmd/dsymbolsem.c:4588 +#: d/dmd/dsymbolsem.c:4165 d/dmd/dsymbolsem.c:4655 #, gcc-internal-format, gfc-internal-format msgid "base type must be interface, not %s" msgstr "" -#: d/dmd/dsymbolsem.c:4109 d/dmd/dsymbolsem.c:4599 +#: d/dmd/dsymbolsem.c:4176 d/dmd/dsymbolsem.c:4666 #, gcc-internal-format, gfc-internal-format msgid "inherits from duplicate interface %s" msgstr "" -#: d/dmd/dsymbolsem.c:4173 +#: d/dmd/dsymbolsem.c:4240 #, gcc-internal-format, gfc-internal-format msgid "cannot inherit from final class %s" msgstr "" -#: d/dmd/dsymbolsem.c:4273 +#: d/dmd/dsymbolsem.c:4340 #, gcc-internal-format, gfc-internal-format msgid "C++ base class %s needs at least one virtual function" msgstr "" -#: d/dmd/dsymbolsem.c:4297 +#: d/dmd/dsymbolsem.c:4364 #, gcc-internal-format, gfc-internal-format msgid "static class cannot inherit from nested class %s" msgstr "" -#: d/dmd/dsymbolsem.c:4305 +#: d/dmd/dsymbolsem.c:4372 #, gcc-internal-format, gfc-internal-format msgid "is nested within %s, but super class %s is nested within %s" msgstr "" -#: d/dmd/dsymbolsem.c:4312 +#: d/dmd/dsymbolsem.c:4379 #, gcc-internal-format, gfc-internal-format msgid "is not nested, but super class %s is nested within %s" msgstr "" -#: d/dmd/dsymbolsem.c:4420 +#: d/dmd/dsymbolsem.c:4487 #, gcc-internal-format, gfc-internal-format msgid "" "cannot implicitly generate a default ctor when base class %s is missing a " "default ctor" msgstr "" -#: d/dmd/dsymbolsem.c:4467 +#: d/dmd/dsymbolsem.c:4534 #, gcc-internal-format, gfc-internal-format msgid "Field members of a synchronized class cannot be %s" msgstr "" -#: d/dmd/dsymbolsem.c:4607 +#: d/dmd/dsymbolsem.c:4674 #, gcc-internal-format msgid "circular inheritance of interface" msgstr "" -#: d/dmd/dsymbolsem.c:4841 +#: d/dmd/dsymbolsem.c:4956 #, gcc-internal-format msgid "mixin templates are not regular templates" msgstr "" -#: d/dmd/dsymbolsem.c:5028 +#: d/dmd/dsymbolsem.c:5158 #, gcc-internal-format, gfc-internal-format msgid "template instantiation %s forward references template declaration %s" msgstr "" -#: d/dmd/dsymbolsem.c:5409 +#: d/dmd/dsymbolsem.c:5540 #, gcc-internal-format msgid "cannot resolve" msgstr "" -#: d/dmd/dsymbolsem.c:5436 +#: d/dmd/dsymbolsem.c:5567 #, gcc-internal-format, gfc-internal-format msgid "cannot alias an expression %s" msgstr "" @@ -61989,28 +62055,28 @@ msgstr "" msgid "(%s) is false" msgstr "" -#: d/dmd/semantic2.c:210 +#: d/dmd/semantic2.c:219 #, gcc-internal-format msgid "" ": Unable to initialize enum with class or pointer to struct. Use static " "const variable instead." msgstr "" -#: d/dmd/semantic2.c:219 +#: d/dmd/semantic2.c:228 #, gcc-internal-format, gfc-internal-format msgid "" "is mutable. Only const or immutable class thread local variable are allowed, " "not %s" msgstr "" -#: d/dmd/semantic2.c:226 +#: d/dmd/semantic2.c:235 #, gcc-internal-format, gfc-internal-format msgid "" "is a pointer to mutable struct. Only pointers to const, immutable or shared " "struct thread local variable are allowed, not %s" msgstr "" -#: d/dmd/semantic2.c:384 +#: d/dmd/semantic2.c:404 #, gcc-internal-format msgid "has forward references" msgstr "" @@ -62076,22 +62142,23 @@ msgstr "" msgid "cannot call super() implicitly because it is annotated with @disable" msgstr "" -#: d/dmd/semantic3.c:860 +#: d/dmd/semantic3.c:862 #, gcc-internal-format, gfc-internal-format -msgid "has no return statement, but is expected to return a value of type %s" +msgid "" +"has no `return` statement, but is expected to return a value of type `%s`" msgstr "" -#: d/dmd/semantic3.c:862 +#: d/dmd/semantic3.c:864 #, gcc-internal-format -msgid "no return exp; or assert(0); at end of function" +msgid "no `return exp;` or `assert(0);` at end of function" msgstr "" -#: d/dmd/semantic3.c:1193 +#: d/dmd/semantic3.c:1171 #, gcc-internal-format, gfc-internal-format msgid "synchronized function %s must be a member of a class" msgstr "" -#: d/dmd/semantic3.c:1212 +#: d/dmd/semantic3.c:1190 #, gcc-internal-format msgid "naked assembly functions with contracts are not supported" msgstr "" @@ -62639,7 +62706,7 @@ msgstr "" msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants" msgstr "" -#: fortran/check.c:123 fortran/resolve.c:10921 +#: fortran/check.c:123 fortran/resolve.c:10929 #, gcc-internal-format, gfc-internal-format msgid "Invalid use of BOZ literal constant at %L" msgstr "" @@ -63855,12 +63922,12 @@ msgstr "" msgid "Initialization string at %L was truncated to fit the variable (%ld/%ld)" msgstr "" -#: fortran/data.c:188 fortran/resolve.c:5099 +#: fortran/data.c:188 fortran/resolve.c:5107 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L is less than one" msgstr "" -#: fortran/data.c:194 fortran/resolve.c:5129 +#: fortran/data.c:194 fortran/resolve.c:5137 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L exceeds the string length" msgstr "" @@ -64049,7 +64116,7 @@ msgstr "" msgid "deferred type parameter at %C" msgstr "" -#: fortran/decl.c:1155 fortran/resolve.c:12452 +#: fortran/decl.c:1155 fortran/resolve.c:12461 #, gcc-internal-format, gfc-internal-format msgid "Scalar INTEGER expression expected at %L" msgstr "" @@ -66691,7 +66758,7 @@ msgid "Illegal id in copy_walk_reduction_arg" msgstr "" #: fortran/frontend-passes.c:870 fortran/trans-array.c:1356 -#: fortran/trans-array.c:6713 fortran/trans-array.c:8208 +#: fortran/trans-array.c:6680 fortran/trans-array.c:8175 #: fortran/trans-intrinsic.c:8549 #, gcc-internal-format, gfc-internal-format msgid "Creating array temporary at %L" @@ -66788,7 +66855,7 @@ msgid "" "INTENT(INOUT) argument to function %qs" msgstr "" -#: fortran/frontend-passes.c:3458 fortran/trans-expr.c:1794 +#: fortran/frontend-passes.c:3458 fortran/trans-expr.c:1831 #, gcc-internal-format, gfc-internal-format msgid "Code for reallocating the allocatable array at %L will be added" msgstr "" @@ -66927,12 +66994,12 @@ msgstr "" msgid "Second argument of defined assignment at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.c:987 fortran/resolve.c:17201 +#: fortran/interface.c:987 fortran/resolve.c:17210 #, gcc-internal-format, gfc-internal-format msgid "First argument of operator interface at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.c:994 fortran/resolve.c:17219 +#: fortran/interface.c:994 fortran/resolve.c:17228 #, gcc-internal-format, gfc-internal-format msgid "Second argument of operator interface at %L must be INTENT(IN)" msgstr "" @@ -67059,53 +67126,53 @@ msgid "" "%d and rank-%d)" msgstr "" -#: fortran/interface.c:2355 +#: fortran/interface.c:2356 #, gcc-internal-format, gfc-internal-format msgid "Invalid procedure argument at %L" msgstr "" -#: fortran/interface.c:2363 fortran/interface.c:2390 +#: fortran/interface.c:2364 fortran/interface.c:2391 #, gcc-internal-format msgid "Interface mismatch in dummy procedure %qs at %L: %s" msgstr "" -#: fortran/interface.c:2401 +#: fortran/interface.c:2402 #, gcc-internal-format msgid "" "Actual argument to contiguous pointer dummy %qs at %L must be simply " "contiguous" msgstr "" -#: fortran/interface.c:2424 +#: fortran/interface.c:2425 #, gcc-internal-format, gfc-internal-format msgid "" "Type mismatch between actual argument at %L and actual argument at %L (%s/" "%s)." msgstr "" -#: fortran/interface.c:2434 +#: fortran/interface.c:2435 #, gcc-internal-format msgid "Type mismatch in argument %qs at %L; passed %s to %s" msgstr "" -#: fortran/interface.c:2444 +#: fortran/interface.c:2445 #, gcc-internal-format msgid "" "Assumed-type actual argument at %L requires that dummy argument %qs is of " "assumed type" msgstr "" -#: fortran/interface.c:2460 +#: fortran/interface.c:2461 #, gcc-internal-format msgid "Actual argument to %qs at %L must be polymorphic" msgstr "" -#: fortran/interface.c:2470 +#: fortran/interface.c:2471 #, gcc-internal-format msgid "Actual argument to %qs at %L must have the same declared type" msgstr "" -#: fortran/interface.c:2485 +#: fortran/interface.c:2486 #, gcc-internal-format msgid "" "Actual argument to %qs at %L must be unlimited polymorphic since the formal " @@ -67113,38 +67180,38 @@ msgid "" "12.5.2.5]" msgstr "" -#: fortran/interface.c:2496 +#: fortran/interface.c:2502 #, gcc-internal-format msgid "Actual argument to %qs at %L must be a coarray" msgstr "" -#: fortran/interface.c:2515 +#: fortran/interface.c:2521 #, gcc-internal-format msgid "Corank mismatch in argument %qs at %L (%d and %d)" msgstr "" -#: fortran/interface.c:2533 +#: fortran/interface.c:2539 #, gcc-internal-format msgid "" "Actual argument to %qs at %L must be simply contiguous or an element of such " "an array" msgstr "" -#: fortran/interface.c:2548 +#: fortran/interface.c:2554 #, gcc-internal-format msgid "" "Actual argument to non-INTENT(INOUT) dummy %qs at %L, which is LOCK_TYPE or " "has a LOCK_TYPE component" msgstr "" -#: fortran/interface.c:2563 +#: fortran/interface.c:2569 #, gcc-internal-format msgid "" "Actual argument to non-INTENT(INOUT) dummy %qs at %L, which is EVENT_TYPE or " "has a EVENT_TYPE component" msgstr "" -#: fortran/interface.c:2582 +#: fortran/interface.c:2588 #, gcc-internal-format msgid "" "Dummy argument %qs has to be a pointer, assumed-shape or assumed-rank array " @@ -67152,202 +67219,202 @@ msgid "" "contiguous and both are ASYNCHRONOUS or VOLATILE" msgstr "" -#: fortran/interface.c:2595 +#: fortran/interface.c:2601 #, gcc-internal-format msgid "" "Passing coarray at %L to allocatable, noncoarray, INTENT(OUT) dummy argument " "%qs" msgstr "" -#: fortran/interface.c:2602 +#: fortran/interface.c:2608 #, gcc-internal-format msgid "" "Passing coarray at %L to allocatable, noncoarray dummy argument %qs, which " "is invalid if the allocation status is modified" msgstr "" -#: fortran/interface.c:2676 +#: fortran/interface.c:2682 #, gcc-internal-format msgid "Polymorphic scalar passed to array dummy argument %qs at %L" msgstr "" -#: fortran/interface.c:2687 +#: fortran/interface.c:2693 #, gcc-internal-format, gfc-internal-format msgid "" "Element of assumed-shape or pointer array as actual argument at %L cannot " "correspond to actual argument at %L" msgstr "" -#: fortran/interface.c:2692 +#: fortran/interface.c:2698 #, gcc-internal-format msgid "" "Element of assumed-shape or pointer array passed to array dummy argument %qs " "at %L" msgstr "" -#: fortran/interface.c:2705 +#: fortran/interface.c:2711 #, gcc-internal-format msgid "" "Extension: Scalar non-default-kind, non-C_CHAR-kind CHARACTER actual " "argument with array dummy argument %qs at %L" msgstr "" -#: fortran/interface.c:2713 +#: fortran/interface.c:2719 #, gcc-internal-format msgid "" "Fortran 2003: Scalar CHARACTER actual argument with array dummy argument %qs " "at %L" msgstr "" -#: fortran/interface.c:3064 +#: fortran/interface.c:3070 #, gcc-internal-format msgid "Keyword argument %qs at %L is invalid in a statement function" msgstr "" -#: fortran/interface.c:3087 +#: fortran/interface.c:3093 #, gcc-internal-format msgid "Keyword argument %qs at %L is not in the procedure; did you mean %qs?" msgstr "" -#: fortran/interface.c:3091 +#: fortran/interface.c:3097 #, gcc-internal-format msgid "Keyword argument %qs at %L is not in the procedure" msgstr "" -#: fortran/interface.c:3100 +#: fortran/interface.c:3106 #, gcc-internal-format msgid "" "Keyword argument %qs at %L is already associated with another actual argument" msgstr "" -#: fortran/interface.c:3110 +#: fortran/interface.c:3116 #, gcc-internal-format, gfc-internal-format msgid "More actual than formal arguments in procedure call at %L" msgstr "" -#: fortran/interface.c:3124 +#: fortran/interface.c:3130 #, gcc-internal-format, gfc-internal-format msgid "Missing alternate return specifier in subroutine call at %L" msgstr "" -#: fortran/interface.c:3136 +#: fortran/interface.c:3142 #, gcc-internal-format, gfc-internal-format msgid "Unexpected alternate return specifier in subroutine call at %L" msgstr "" -#: fortran/interface.c:3165 +#: fortran/interface.c:3171 #, gcc-internal-format msgid "Unexpected NULL() intrinsic at %L to dummy %qs" msgstr "" -#: fortran/interface.c:3168 +#: fortran/interface.c:3174 #, gcc-internal-format msgid "Fortran 2008: Null pointer at %L to non-pointer dummy %qs" msgstr "" -#: fortran/interface.c:3192 +#: fortran/interface.c:3198 #, gcc-internal-format, gfc-internal-format msgid "" "Actual argument at %L to assumed-type dummy is of derived type with type-" "bound or FINAL procedures" msgstr "" -#: fortran/interface.c:3214 +#: fortran/interface.c:3220 #, gcc-internal-format msgid "" "Character length mismatch (%ld/%ld) between actual argument and pointer or " "allocatable dummy argument %qs at %L" msgstr "" -#: fortran/interface.c:3221 +#: fortran/interface.c:3227 #, gcc-internal-format msgid "" "Character length mismatch (%ld/%ld) between actual argument and assumed-" "shape dummy argument %qs at %L" msgstr "" -#: fortran/interface.c:3235 +#: fortran/interface.c:3241 #, gcc-internal-format msgid "" "Actual argument at %L to allocatable or pointer dummy argument %qs must have " "a deferred length type parameter if and only if the dummy has one" msgstr "" -#: fortran/interface.c:3252 +#: fortran/interface.c:3258 #, gcc-internal-format msgid "" "Character length of actual argument shorter than of dummy argument %qs (%lu/" "%lu) at %L" msgstr "" -#: fortran/interface.c:3260 fortran/interface.c:3265 +#: fortran/interface.c:3266 fortran/interface.c:3271 #, gcc-internal-format msgid "" "Actual argument contains too few elements for dummy argument %qs (%lu/%lu) " "at %L" msgstr "" -#: fortran/interface.c:3285 +#: fortran/interface.c:3291 #, gcc-internal-format msgid "Expected a procedure pointer for argument %qs at %L" msgstr "" -#: fortran/interface.c:3301 +#: fortran/interface.c:3307 #, gcc-internal-format msgid "Expected a procedure for argument %qs at %L" msgstr "" -#: fortran/interface.c:3318 +#: fortran/interface.c:3324 #, gcc-internal-format msgid "Actual argument for %qs cannot be an assumed-size array at %L" msgstr "" -#: fortran/interface.c:3327 +#: fortran/interface.c:3333 #, gcc-internal-format msgid "Actual argument for %qs must be a pointer at %L" msgstr "" -#: fortran/interface.c:3337 +#: fortran/interface.c:3343 #, gcc-internal-format msgid "Fortran 2008: Non-pointer actual argument at %L to pointer dummy %qs" msgstr "" -#: fortran/interface.c:3347 +#: fortran/interface.c:3353 #, gcc-internal-format msgid "Coindexed actual argument at %L to pointer dummy %qs" msgstr "" -#: fortran/interface.c:3360 +#: fortran/interface.c:3366 #, gcc-internal-format msgid "" "Coindexed actual argument at %L to allocatable dummy %qs requires INTENT(IN)" msgstr "" -#: fortran/interface.c:3374 +#: fortran/interface.c:3380 #, gcc-internal-format msgid "" "Coindexed ASYNCHRONOUS or VOLATILE actual argument at %L requires that dummy " "%qs has neither ASYNCHRONOUS nor VOLATILE" msgstr "" -#: fortran/interface.c:3388 +#: fortran/interface.c:3394 #, gcc-internal-format msgid "" "Coindexed actual argument at %L with allocatable ultimate component to dummy " "%qs requires either VALUE or INTENT(IN)" msgstr "" -#: fortran/interface.c:3400 +#: fortran/interface.c:3406 #, gcc-internal-format msgid "Actual CLASS array argument for %qs must be a full array at %L" msgstr "" -#: fortran/interface.c:3410 +#: fortran/interface.c:3416 #, gcc-internal-format msgid "Actual argument for %qs must be ALLOCATABLE at %L" msgstr "" -#: fortran/interface.c:3440 +#: fortran/interface.c:3446 #, gcc-internal-format msgid "" "Array-section actual argument with vector subscripts at %L is incompatible " @@ -67355,334 +67422,334 @@ msgid "" "dummy argument %qs" msgstr "" -#: fortran/interface.c:3459 +#: fortran/interface.c:3465 #, gcc-internal-format msgid "" "Assumed-shape actual argument at %L is incompatible with the non-assumed-" "shape dummy argument %qs due to VOLATILE attribute" msgstr "" -#: fortran/interface.c:3476 +#: fortran/interface.c:3482 #, gcc-internal-format msgid "" "Array-section actual argument at %L is incompatible with the non-assumed-" "shape dummy argument %qs due to VOLATILE attribute" msgstr "" -#: fortran/interface.c:3496 +#: fortran/interface.c:3502 #, gcc-internal-format msgid "" "Pointer-array actual argument at %L requires an assumed-shape or pointer-" "array dummy argument %qs due to VOLATILE attribute" msgstr "" -#: fortran/interface.c:3519 +#: fortran/interface.c:3525 #, gcc-internal-format, gfc-internal-format msgid "Missing alternate return spec in subroutine call at %L" msgstr "" -#: fortran/interface.c:3527 +#: fortran/interface.c:3533 #, gcc-internal-format msgid "Missing actual argument for argument %qs at %L" msgstr "" -#: fortran/interface.c:3657 +#: fortran/interface.c:3663 #, gcc-internal-format msgid "compare_actual_expr(): Bad component code" msgstr "" -#: fortran/interface.c:3686 +#: fortran/interface.c:3692 #, gcc-internal-format msgid "check_some_aliasing(): List mismatch" msgstr "" -#: fortran/interface.c:3712 +#: fortran/interface.c:3718 #, gcc-internal-format msgid "check_some_aliasing(): corrupted data" msgstr "" -#: fortran/interface.c:3722 +#: fortran/interface.c:3728 #, gcc-internal-format msgid "" "Same actual argument associated with INTENT(%s) argument %qs and INTENT(%s) " "argument %qs at %L" msgstr "" -#: fortran/interface.c:3752 +#: fortran/interface.c:3758 #, gcc-internal-format msgid "check_intents(): List mismatch" msgstr "" -#: fortran/interface.c:3772 +#: fortran/interface.c:3778 #, gcc-internal-format, gfc-internal-format msgid "" "Procedure argument at %L is local to a PURE procedure and has the POINTER " "attribute" msgstr "" -#: fortran/interface.c:3784 +#: fortran/interface.c:3790 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed actual argument at %L in PURE procedure is passed to an INTENT(%s) " "argument" msgstr "" -#: fortran/interface.c:3794 +#: fortran/interface.c:3800 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed actual argument at %L in PURE procedure is passed to a POINTER " "dummy argument" msgstr "" -#: fortran/interface.c:3805 +#: fortran/interface.c:3811 #, gcc-internal-format msgid "" "Coindexed polymorphic actual argument at %L is passed polymorphic dummy " "argument %qs" msgstr "" -#: fortran/interface.c:3847 +#: fortran/interface.c:3853 #, gcc-internal-format msgid "" "Procedure %qs called at %L is not explicitly declared; did you mean %qs?" msgstr "" -#: fortran/interface.c:3851 fortran/interface.c:3861 +#: fortran/interface.c:3857 fortran/interface.c:3867 #, gcc-internal-format msgid "Procedure %qs called at %L is not explicitly declared" msgstr "" -#: fortran/interface.c:3857 +#: fortran/interface.c:3863 #, gcc-internal-format msgid "Procedure %qs called with an implicit interface at %L" msgstr "" -#: fortran/interface.c:3870 +#: fortran/interface.c:3876 #, gcc-internal-format msgid "" "The pointer object %qs at %L must have an explicit function interface or be " "declared as array" msgstr "" -#: fortran/interface.c:3878 +#: fortran/interface.c:3884 #, gcc-internal-format msgid "" "The allocatable object %qs at %L must have an explicit function interface or " "be declared as array" msgstr "" -#: fortran/interface.c:3886 +#: fortran/interface.c:3892 #, gcc-internal-format msgid "Allocatable function %qs at %L must have an explicit function interface" msgstr "" -#: fortran/interface.c:3903 +#: fortran/interface.c:3909 #, gcc-internal-format, gfc-internal-format msgid "Explicit interface required for polymorphic argument at %L" msgstr "" -#: fortran/interface.c:3912 +#: fortran/interface.c:3918 #, gcc-internal-format msgid "Keyword argument requires explicit interface for procedure %qs at %L" msgstr "" -#: fortran/interface.c:3921 +#: fortran/interface.c:3927 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type argument %s at %L requires an explicit interface" msgstr "" -#: fortran/interface.c:3936 +#: fortran/interface.c:3942 #, gcc-internal-format msgid "" "Actual argument of LOCK_TYPE or with LOCK_TYPE component at %L requires an " "explicit interface for procedure %qs" msgstr "" -#: fortran/interface.c:3951 +#: fortran/interface.c:3957 #, gcc-internal-format msgid "" "Actual argument of EVENT_TYPE or with EVENT_TYPE component at %L requires an " "explicit interface for procedure %qs" msgstr "" -#: fortran/interface.c:3961 +#: fortran/interface.c:3967 #, gcc-internal-format, gfc-internal-format msgid "MOLD argument to NULL required at %L" msgstr "" -#: fortran/interface.c:3971 +#: fortran/interface.c:3977 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank argument requires an explicit interface at %L" msgstr "" -#: fortran/interface.c:4013 +#: fortran/interface.c:4019 #, gcc-internal-format msgid "Procedure pointer component %qs called with an implicit interface at %L" msgstr "" -#: fortran/interface.c:4024 +#: fortran/interface.c:4030 #, gcc-internal-format msgid "" "Keyword argument requires explicit interface for procedure pointer component " "%qs at %L" msgstr "" -#: fortran/interface.c:4109 +#: fortran/interface.c:4115 #, gcc-internal-format, gfc-internal-format msgid "" "MOLD= required in NULL() argument at %L: Ambiguity between specific " "functions %s and %s" msgstr "" -#: fortran/interface.c:4179 +#: fortran/interface.c:4185 #, gcc-internal-format msgid "Unable to find symbol %qs" msgstr "" -#: fortran/interface.c:4552 +#: fortran/interface.c:4558 #, gcc-internal-format msgid "Entity %qs at %L is already present in the interface" msgstr "" -#: fortran/interface.c:4669 +#: fortran/interface.c:4675 #, gcc-internal-format msgid "gfc_add_interface(): Bad interface type" msgstr "" -#: fortran/interface.c:4763 +#: fortran/interface.c:4769 #, gcc-internal-format msgid "Cannot overwrite GENERIC %qs at %L" msgstr "" -#: fortran/interface.c:4775 +#: fortran/interface.c:4781 #, gcc-internal-format msgid "%qs at %L overrides a procedure binding declared NON_OVERRIDABLE" msgstr "" -#: fortran/interface.c:4783 +#: fortran/interface.c:4789 #, gcc-internal-format msgid "%qs at %L must not be DEFERRED as it overrides a non-DEFERRED binding" msgstr "" -#: fortran/interface.c:4791 +#: fortran/interface.c:4797 #, gcc-internal-format msgid "%qs at %L overrides a PURE procedure and must also be PURE" msgstr "" -#: fortran/interface.c:4800 +#: fortran/interface.c:4806 #, gcc-internal-format msgid "%qs at %L overrides an ELEMENTAL procedure and must also be ELEMENTAL" msgstr "" -#: fortran/interface.c:4806 +#: fortran/interface.c:4812 #, gcc-internal-format msgid "" "%qs at %L overrides a non-ELEMENTAL procedure and must not be ELEMENTAL, " "either" msgstr "" -#: fortran/interface.c:4815 +#: fortran/interface.c:4821 #, gcc-internal-format msgid "%qs at %L overrides a SUBROUTINE and must also be a SUBROUTINE" msgstr "" -#: fortran/interface.c:4826 +#: fortran/interface.c:4832 #, gcc-internal-format msgid "%qs at %L overrides a FUNCTION and must also be a FUNCTION" msgstr "" -#: fortran/interface.c:4834 +#: fortran/interface.c:4840 #, gcc-internal-format msgid "Result mismatch for the overriding procedure %qs at %L: %s" msgstr "" -#: fortran/interface.c:4845 +#: fortran/interface.c:4851 #, gcc-internal-format msgid "%qs at %L overrides a PUBLIC procedure and must not be PRIVATE" msgstr "" -#: fortran/interface.c:4875 +#: fortran/interface.c:4881 #, gcc-internal-format msgid "" "Dummy argument %qs of %qs at %L should be named %qs as to match the " "corresponding argument of the overridden procedure" msgstr "" -#: fortran/interface.c:4886 +#: fortran/interface.c:4892 #, gcc-internal-format msgid "Argument mismatch for the overriding procedure %qs at %L: %s" msgstr "" -#: fortran/interface.c:4895 +#: fortran/interface.c:4901 #, gcc-internal-format msgid "" "%qs at %L must have the same number of formal arguments as the overridden " "procedure" msgstr "" -#: fortran/interface.c:4904 +#: fortran/interface.c:4910 #, gcc-internal-format msgid "%qs at %L overrides a NOPASS binding and must also be NOPASS" msgstr "" -#: fortran/interface.c:4915 +#: fortran/interface.c:4921 #, gcc-internal-format msgid "%qs at %L overrides a binding with PASS and must also be PASS" msgstr "" -#: fortran/interface.c:4922 +#: fortran/interface.c:4928 #, gcc-internal-format msgid "" "Passed-object dummy argument of %qs at %L must be at the same position as " "the passed-object dummy argument of the overridden procedure" msgstr "" -#: fortran/interface.c:4943 +#: fortran/interface.c:4949 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be of type %s" msgstr "" -#: fortran/interface.c:4950 +#: fortran/interface.c:4956 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be of KIND = %d" msgstr "" -#: fortran/interface.c:4957 +#: fortran/interface.c:4963 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be a scalar" msgstr "" -#: fortran/interface.c:4961 +#: fortran/interface.c:4967 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be an ASSUMED SHAPE ARRAY" msgstr "" -#: fortran/interface.c:4965 +#: fortran/interface.c:4971 #, gcc-internal-format, gfc-internal-format msgid "DTIO character argument at %L must have assumed length" msgstr "" -#: fortran/interface.c:4969 +#: fortran/interface.c:4975 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must have INTENT %s" msgstr "" -#: fortran/interface.c:5027 fortran/interface.c:5073 +#: fortran/interface.c:5033 fortran/interface.c:5079 #, gcc-internal-format, gfc-internal-format msgid "Alternate return at %L is not permitted in a DTIO procedure" msgstr "" -#: fortran/interface.c:5039 +#: fortran/interface.c:5045 #, gcc-internal-format msgid "DTIO procedure %qs at %L must be a subroutine" msgstr "" -#: fortran/interface.c:5051 +#: fortran/interface.c:5057 #, gcc-internal-format msgid "Too few dummy arguments in DTIO procedure %qs at %L" msgstr "" -#: fortran/interface.c:5058 +#: fortran/interface.c:5064 #, gcc-internal-format msgid "Too many dummy arguments in DTIO procedure %qs at %L" msgstr "" @@ -67847,34 +67914,34 @@ msgid "" "character arguments at %L" msgstr "" -#: fortran/intrinsic.c:5149 +#: fortran/intrinsic.c:5154 #, gcc-internal-format msgid "" "Subroutine call to intrinsic %qs in DO CONCURRENT block at %L is not PURE" msgstr "" -#: fortran/intrinsic.c:5156 +#: fortran/intrinsic.c:5161 #, gcc-internal-format msgid "Subroutine call to intrinsic %qs at %L is not PURE" msgstr "" -#: fortran/intrinsic.c:5258 +#: fortran/intrinsic.c:5263 #, gcc-internal-format, gfc-internal-format msgid "Extension: Conversion from %s to %s at %L" msgstr "" -#: fortran/intrinsic.c:5279 +#: fortran/intrinsic.c:5284 #, gcc-internal-format, gfc-internal-format msgid "Nonstandard conversion from %s to %s at %L" msgstr "" -#: fortran/intrinsic.c:5296 fortran/intrinsic.c:5313 +#: fortran/intrinsic.c:5301 fortran/intrinsic.c:5318 #, gcc-internal-format, gfc-internal-format msgid "Possible change of value in conversion from %s to %s at %L" msgstr "" #. If HOLLERITH is involved, all bets are off. -#: fortran/intrinsic.c:5301 fortran/intrinsic.c:5321 +#: fortran/intrinsic.c:5306 fortran/intrinsic.c:5326 #, gcc-internal-format, gfc-internal-format msgid "Conversion from %s to %s at %L" msgstr "" @@ -67882,24 +67949,24 @@ msgstr "" #. Use of -fdec-char-conversions allows assignment of character data #. to non-character variables. This not permited for nonconstant #. strings. -#: fortran/intrinsic.c:5387 fortran/resolve.c:10896 +#: fortran/intrinsic.c:5392 fortran/resolve.c:10904 #, gcc-internal-format, gfc-internal-format msgid "Cannot convert %s to %s at %L" msgstr "" -#: fortran/intrinsic.c:5392 +#: fortran/intrinsic.c:5397 #, gcc-internal-format msgid "Cannot convert %qs to %qs at %L" msgstr "" -#: fortran/intrinsic.c:5483 +#: fortran/intrinsic.c:5488 #, gcc-internal-format msgid "" "%qs declared at %L may shadow the intrinsic of the same name. In order to " "call the intrinsic, explicit INTRINSIC declarations may be required." msgstr "" -#: fortran/intrinsic.c:5489 +#: fortran/intrinsic.c:5494 #, gcc-internal-format msgid "" "%qs declared at %L is also the name of an intrinsic. It can only be called " @@ -68450,7 +68517,7 @@ msgid "" "defined input/output procedure" msgstr "" -#: fortran/io.c:3431 fortran/resolve.c:15073 +#: fortran/io.c:3431 fortran/resolve.c:15082 #, gcc-internal-format msgid "" "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER " @@ -69671,12 +69738,12 @@ msgstr "" msgid "gfc_basic_typename(): Undefined type" msgstr "" -#: fortran/misc.c:205 +#: fortran/misc.c:207 #, gcc-internal-format msgid "gfc_typename(): Undefined type" msgstr "" -#: fortran/misc.c:309 +#: fortran/misc.c:311 #, gcc-internal-format msgid "gfc_code2string(): Bad code" msgstr "" @@ -69837,160 +69904,160 @@ msgstr "" msgid "write_symbol(): bad module symbol %qs" msgstr "" -#: fortran/module.c:6223 +#: fortran/module.c:6234 #, gcc-internal-format msgid "write_symtree(): Symbol not written" msgstr "" -#: fortran/module.c:6413 +#: fortran/module.c:6424 #, gcc-internal-format msgid "Cannot open module file %qs for writing at %C: %s" msgstr "" -#: fortran/module.c:6434 +#: fortran/module.c:6445 #, gcc-internal-format msgid "Error writing module file %qs for writing: %s" msgstr "" -#: fortran/module.c:6445 +#: fortran/module.c:6456 #, gcc-internal-format msgid "Cannot delete module file %qs: %s" msgstr "" -#: fortran/module.c:6448 +#: fortran/module.c:6459 #, gcc-internal-format msgid "Cannot rename module file %qs to %qs: %s" msgstr "" -#: fortran/module.c:6454 +#: fortran/module.c:6465 #, gcc-internal-format msgid "Cannot delete temporary module file %qs: %s" msgstr "" -#: fortran/module.c:6511 +#: fortran/module.c:6522 #, gcc-internal-format msgid "Symbol %qs at %C already declared" msgstr "" -#: fortran/module.c:6582 +#: fortran/module.c:6593 #, gcc-internal-format, gfc-internal-format msgid "import_iso_c_binding_module(): Unable to create symbol for %s" msgstr "" -#: fortran/module.c:6690 fortran/module.c:7034 +#: fortran/module.c:6701 fortran/module.c:7045 #, gcc-internal-format msgid "The symbol %qs, referenced at %L, is not in the selected standard" msgstr "" -#: fortran/module.c:6818 +#: fortran/module.c:6829 #, gcc-internal-format msgid "Symbol %qs referenced at %L not found in intrinsic module ISO_C_BINDING" msgstr "" -#: fortran/module.c:6839 fortran/module.c:6872 fortran/module.c:6914 +#: fortran/module.c:6850 fortran/module.c:6883 fortran/module.c:6925 #, gcc-internal-format msgid "Symbol %qs already declared" msgstr "" -#: fortran/module.c:7019 +#: fortran/module.c:7030 #, gcc-internal-format msgid "" "Use of intrinsic module %qs at %C conflicts with non-intrinsic module name " "used previously" msgstr "" -#: fortran/module.c:7041 +#: fortran/module.c:7052 #, gcc-internal-format msgid "" "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module " "ISO_FORTRAN_ENV at %L is incompatible with option %qs" msgstr "" -#: fortran/module.c:7109 +#: fortran/module.c:7120 #, gcc-internal-format, gfc-internal-format msgid "" "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module " "ISO_FORTRAN_ENV at %C is incompatible with option %s" msgstr "" -#: fortran/module.c:7163 +#: fortran/module.c:7174 #, gcc-internal-format msgid "" "Symbol %qs referenced at %L not found in intrinsic module ISO_FORTRAN_ENV" msgstr "" -#: fortran/module.c:7189 +#: fortran/module.c:7200 #, gcc-internal-format, gfc-internal-format msgid "USE statement at %C has no ONLY qualifier" msgstr "" -#: fortran/module.c:7218 +#: fortran/module.c:7229 #, gcc-internal-format, gfc-internal-format msgid "ISO_FORTRAN_ENV intrinsic module at %C" msgstr "" -#: fortran/module.c:7230 +#: fortran/module.c:7241 #, gcc-internal-format, gfc-internal-format msgid "ISO_C_BINDING module at %C" msgstr "" -#: fortran/module.c:7243 +#: fortran/module.c:7254 #, gcc-internal-format msgid "Cannot find an intrinsic module named %qs at %C" msgstr "" -#: fortran/module.c:7249 +#: fortran/module.c:7260 #, gcc-internal-format, gfc-internal-format msgid "IEEE_FEATURES module at %C" msgstr "" -#: fortran/module.c:7255 +#: fortran/module.c:7266 #, gcc-internal-format, gfc-internal-format msgid "IEEE_EXCEPTIONS module at %C" msgstr "" -#: fortran/module.c:7261 +#: fortran/module.c:7272 #, gcc-internal-format, gfc-internal-format msgid "IEEE_ARITHMETIC module at %C" msgstr "" -#: fortran/module.c:7271 +#: fortran/module.c:7282 #, gcc-internal-format msgid "Cannot open module file %qs for reading at %C: %s" msgstr "" -#: fortran/module.c:7274 +#: fortran/module.c:7285 #, gcc-internal-format msgid "" "Module file %qs has not been generated, either because the module does not " "contain a MODULE PROCEDURE or there is an error in the module." msgstr "" -#: fortran/module.c:7285 +#: fortran/module.c:7296 #, gcc-internal-format msgid "" "Use of non-intrinsic module %qs at %C conflicts with intrinsic module name " "used previously" msgstr "" -#: fortran/module.c:7308 +#: fortran/module.c:7319 #, gcc-internal-format msgid "File %qs opened at %C is not a GNU Fortran module file" msgstr "" -#: fortran/module.c:7316 +#: fortran/module.c:7327 #, gcc-internal-format msgid "" "Cannot read module file %qs opened at %C, because it was created by a " "different version of GNU Fortran" msgstr "" -#: fortran/module.c:7333 +#: fortran/module.c:7344 #, gcc-internal-format msgid "Cannot USE a submodule that is currently built" msgstr "" -#: fortran/module.c:7335 +#: fortran/module.c:7346 #, gcc-internal-format msgid "Cannot USE a module that is currently built" msgstr "" @@ -70580,8 +70647,8 @@ msgstr "" msgid "ORDERED clause parameter is less than COLLAPSE at %L" msgstr "" -#: fortran/openmp.c:4722 fortran/openmp.c:4733 fortran/resolve.c:10721 -#: fortran/resolve.c:12026 +#: fortran/openmp.c:4722 fortran/openmp.c:4733 fortran/resolve.c:10729 +#: fortran/resolve.c:12035 #, gcc-internal-format, gfc-internal-format msgid "IF clause at %L requires a scalar LOGICAL expression" msgstr "" @@ -72796,7 +72863,7 @@ msgid "" "Declare it RECURSIVE or use %<-frecursive%>" msgstr "" -#: fortran/resolve.c:1926 fortran/resolve.c:10250 fortran/resolve.c:11954 +#: fortran/resolve.c:1926 fortran/resolve.c:10258 fortran/resolve.c:11962 #, gcc-internal-format, gfc-internal-format msgid "Label %d referenced at %L is never defined" msgstr "" @@ -72923,7 +72990,7 @@ msgstr "" msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?" msgstr "" -#: fortran/resolve.c:2961 fortran/resolve.c:17133 +#: fortran/resolve.c:2961 fortran/resolve.c:17142 #, gcc-internal-format msgid "Function %qs at %L has no IMPLICIT type" msgstr "" @@ -73095,225 +73162,225 @@ msgstr "" msgid "Impure function at %L might not be evaluated" msgstr "" -#: fortran/resolve.c:4020 +#: fortran/resolve.c:4021 #, gcc-internal-format msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs" msgstr "" -#: fortran/resolve.c:4041 +#: fortran/resolve.c:4042 #, gcc-internal-format msgid "Operands at %L and %L cannot appear as operands of binary operator %qs" msgstr "" -#: fortran/resolve.c:4212 fortran/resolve.c:4227 +#: fortran/resolve.c:4216 fortran/resolve.c:4231 #, gcc-internal-format, gfc-internal-format msgid "" "BOZ literal constant near %L cannot appear as an operand of a relational " "operator" msgstr "" -#: fortran/resolve.c:4266 +#: fortran/resolve.c:4270 #, gcc-internal-format, gfc-internal-format msgid "Equality comparison for %s at %L" msgstr "" -#: fortran/resolve.c:4268 +#: fortran/resolve.c:4272 #, gcc-internal-format, gfc-internal-format msgid "Inequality comparison for %s at %L" msgstr "" -#: fortran/resolve.c:4324 +#: fortran/resolve.c:4332 #, gcc-internal-format msgid "resolve_operator(): Bad intrinsic" msgstr "" -#: fortran/resolve.c:4494 fortran/resolve.c:4517 +#: fortran/resolve.c:4502 fortran/resolve.c:4525 #, gcc-internal-format msgid "compare_bound_int(): Bad expression" msgstr "" -#: fortran/resolve.c:4612 +#: fortran/resolve.c:4620 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d" msgstr "" -#: fortran/resolve.c:4617 +#: fortran/resolve.c:4625 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d" msgstr "" -#: fortran/resolve.c:4627 +#: fortran/resolve.c:4635 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d" msgstr "" -#: fortran/resolve.c:4632 +#: fortran/resolve.c:4640 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d" msgstr "" -#: fortran/resolve.c:4652 +#: fortran/resolve.c:4660 #, gcc-internal-format, gfc-internal-format msgid "Illegal stride of zero at %L" msgstr "" -#: fortran/resolve.c:4669 +#: fortran/resolve.c:4677 #, gcc-internal-format, gfc-internal-format msgid "" "Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d" msgstr "" -#: fortran/resolve.c:4677 +#: fortran/resolve.c:4685 #, gcc-internal-format, gfc-internal-format msgid "" "Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d" msgstr "" -#: fortran/resolve.c:4693 +#: fortran/resolve.c:4701 #, gcc-internal-format, gfc-internal-format msgid "" "Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d" msgstr "" -#: fortran/resolve.c:4702 +#: fortran/resolve.c:4710 #, gcc-internal-format, gfc-internal-format msgid "" "Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d" msgstr "" -#: fortran/resolve.c:4718 +#: fortran/resolve.c:4726 #, gcc-internal-format msgid "check_dimension(): Bad array reference" msgstr "" -#: fortran/resolve.c:4741 +#: fortran/resolve.c:4749 #, gcc-internal-format, gfc-internal-format msgid "Rightmost upper bound of assumed size array section not specified at %L" msgstr "" -#: fortran/resolve.c:4751 +#: fortran/resolve.c:4759 #, gcc-internal-format, gfc-internal-format msgid "Rank mismatch in array reference at %L (%d/%d)" msgstr "" -#: fortran/resolve.c:4759 +#: fortran/resolve.c:4767 #, gcc-internal-format, gfc-internal-format msgid "Coindex rank mismatch in array reference at %L (%d/%d)" msgstr "" -#: fortran/resolve.c:4775 +#: fortran/resolve.c:4783 #, gcc-internal-format, gfc-internal-format msgid "Coindex of codimension %d must be a scalar at %L" msgstr "" -#: fortran/resolve.c:4803 +#: fortran/resolve.c:4811 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L must be scalar" msgstr "" -#: fortran/resolve.c:4809 +#: fortran/resolve.c:4817 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L must be of INTEGER type, found %s" msgstr "" -#: fortran/resolve.c:4815 +#: fortran/resolve.c:4823 #, gcc-internal-format, gfc-internal-format msgid "REAL array index at %L" msgstr "" -#: fortran/resolve.c:4854 +#: fortran/resolve.c:4862 #, gcc-internal-format, gfc-internal-format msgid "Argument dim at %L must be scalar" msgstr "" -#: fortran/resolve.c:4861 +#: fortran/resolve.c:4869 #, gcc-internal-format, gfc-internal-format msgid "Argument dim at %L must be of INTEGER type" msgstr "" -#: fortran/resolve.c:4919 +#: fortran/resolve.c:4927 #, gcc-internal-format msgid "find_array_spec(): Missing spec" msgstr "" -#: fortran/resolve.c:4930 +#: fortran/resolve.c:4938 #, gcc-internal-format msgid "find_array_spec(): unused as(1)" msgstr "" -#: fortran/resolve.c:4942 +#: fortran/resolve.c:4950 #, gcc-internal-format msgid "find_array_spec(): unused as(2)" msgstr "" -#: fortran/resolve.c:4985 +#: fortran/resolve.c:4993 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L is an array of rank %d" msgstr "" -#: fortran/resolve.c:5083 +#: fortran/resolve.c:5091 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:5090 +#: fortran/resolve.c:5098 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L must be scalar" msgstr "" -#: fortran/resolve.c:5112 +#: fortran/resolve.c:5120 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:5119 +#: fortran/resolve.c:5127 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L must be scalar" msgstr "" -#: fortran/resolve.c:5139 +#: fortran/resolve.c:5147 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L is too large" msgstr "" -#: fortran/resolve.c:5329 +#: fortran/resolve.c:5337 #, gcc-internal-format msgid "resolve_ref(): Bad array reference" msgstr "" -#: fortran/resolve.c:5343 +#: fortran/resolve.c:5351 #, gcc-internal-format, gfc-internal-format msgid "" "Component to the right of a part reference with nonzero rank must not have " "the POINTER attribute at %L" msgstr "" -#: fortran/resolve.c:5353 +#: fortran/resolve.c:5361 #, gcc-internal-format, gfc-internal-format msgid "" "Component to the right of a part reference with nonzero rank must not have " "the ALLOCATABLE attribute at %L" msgstr "" -#: fortran/resolve.c:5399 +#: fortran/resolve.c:5407 #, gcc-internal-format, gfc-internal-format msgid "" "Two or more part references with nonzero rank must not be specified at %L" msgstr "" -#: fortran/resolve.c:5491 +#: fortran/resolve.c:5499 #, gcc-internal-format msgid "gfc_expression_rank(): Two array specs" msgstr "" -#: fortran/resolve.c:5573 +#: fortran/resolve.c:5581 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may only be used as actual " "argument" msgstr "" -#: fortran/resolve.c:5583 +#: fortran/resolve.c:5591 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L may only be used as actual argument" msgstr "" @@ -73322,14 +73389,14 @@ msgstr "" #. for all inquiry functions in resolve_function; the reason is #. that the function-name resolution happens too late in that #. function. -#: fortran/resolve.c:5593 +#: fortran/resolve.c:5601 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-type variable %s at %L as actual argument to an inquiry function " "shall be the first argument" msgstr "" -#: fortran/resolve.c:5612 +#: fortran/resolve.c:5620 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank variable %s at %L may only be used as actual argument" msgstr "" @@ -73338,321 +73405,321 @@ msgstr "" #. for all inquiry functions in resolve_function; the reason is #. that the function-name resolution happens too late in that #. function. -#: fortran/resolve.c:5622 +#: fortran/resolve.c:5630 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-rank variable %s at %L as actual argument to an inquiry function " "shall be the first argument" msgstr "" -#: fortran/resolve.c:5633 +#: fortran/resolve.c:5641 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall not have a subobject " "reference" msgstr "" -#: fortran/resolve.c:5642 +#: fortran/resolve.c:5650 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L shall not have a subobject reference" msgstr "" -#: fortran/resolve.c:5658 +#: fortran/resolve.c:5666 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank variable %s at %L shall not have a subobject reference" msgstr "" -#: fortran/resolve.c:5838 +#: fortran/resolve.c:5846 #, gcc-internal-format msgid "" "Variable %qs, used in a specification expression, is referenced at %L before " "the ENTRY statement in which it is a parameter" msgstr "" -#: fortran/resolve.c:5843 +#: fortran/resolve.c:5851 #, gcc-internal-format msgid "" "Variable %qs is used at %L before the ENTRY statement in which it is a " "parameter" msgstr "" -#: fortran/resolve.c:5913 +#: fortran/resolve.c:5921 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic subobject of coindexed object at %L" msgstr "" -#: fortran/resolve.c:5926 +#: fortran/resolve.c:5934 #, gcc-internal-format, gfc-internal-format msgid "Coindexed object with polymorphic allocatable subcomponent at %L" msgstr "" -#: fortran/resolve.c:5942 +#: fortran/resolve.c:5950 #, gcc-internal-format msgid "Using variable %qs at %L is deprecated" msgstr "" -#: fortran/resolve.c:6030 +#: fortran/resolve.c:6038 #, gcc-internal-format msgid "" "%qs at %L is host associated at %L into a contained procedure with an " "internal procedure of the same name" msgstr "" -#: fortran/resolve.c:6184 fortran/resolve.c:6336 +#: fortran/resolve.c:6192 fortran/resolve.c:6344 #, gcc-internal-format, gfc-internal-format msgid "Error in typebound call at %L" msgstr "" -#: fortran/resolve.c:6300 +#: fortran/resolve.c:6308 #, gcc-internal-format, gfc-internal-format msgid "Passed-object at %L must be scalar" msgstr "" -#: fortran/resolve.c:6307 +#: fortran/resolve.c:6315 #, gcc-internal-format msgid "" "Base object for procedure-pointer component call at %L is of ABSTRACT type " "%qs" msgstr "" -#: fortran/resolve.c:6346 +#: fortran/resolve.c:6354 #, gcc-internal-format msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs" msgstr "" -#: fortran/resolve.c:6355 +#: fortran/resolve.c:6363 #, gcc-internal-format, gfc-internal-format msgid "Base object for NOPASS type-bound procedure call at %L must be scalar" msgstr "" #. Nothing matching found! -#: fortran/resolve.c:6543 +#: fortran/resolve.c:6551 #, gcc-internal-format msgid "" "Found no matching specific binding for the call to the GENERIC %qs at %L" msgstr "" -#: fortran/resolve.c:6577 +#: fortran/resolve.c:6585 #, gcc-internal-format msgid "%qs at %L should be a SUBROUTINE" msgstr "" -#: fortran/resolve.c:6629 +#: fortran/resolve.c:6637 #, gcc-internal-format msgid "%qs at %L should be a FUNCTION" msgstr "" -#: fortran/resolve.c:7164 +#: fortran/resolve.c:7172 #, gcc-internal-format msgid "gfc_resolve_expr(): Bad expression type" msgstr "" -#: fortran/resolve.c:7197 +#: fortran/resolve.c:7205 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be a scalar" msgstr "" -#: fortran/resolve.c:7207 +#: fortran/resolve.c:7215 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be integer" msgstr "" -#: fortran/resolve.c:7211 fortran/resolve.c:7218 +#: fortran/resolve.c:7219 fortran/resolve.c:7226 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be INTEGER" msgstr "" -#: fortran/resolve.c:7273 +#: fortran/resolve.c:7281 #, gcc-internal-format, gfc-internal-format msgid "Step expression in DO loop at %L cannot be zero" msgstr "" -#: fortran/resolve.c:7296 +#: fortran/resolve.c:7304 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L will be executed zero times" msgstr "" -#: fortran/resolve.c:7313 +#: fortran/resolve.c:7321 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L is undefined as it overflows" msgstr "" -#: fortran/resolve.c:7319 +#: fortran/resolve.c:7327 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L is undefined as it underflows" msgstr "" -#: fortran/resolve.c:7380 +#: fortran/resolve.c:7388 #, gcc-internal-format, gfc-internal-format msgid "FORALL index-name at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:7385 +#: fortran/resolve.c:7393 #, gcc-internal-format, gfc-internal-format msgid "FORALL start expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:7392 +#: fortran/resolve.c:7400 #, gcc-internal-format, gfc-internal-format msgid "FORALL end expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:7400 +#: fortran/resolve.c:7408 #, gcc-internal-format, gfc-internal-format msgid "FORALL stride expression at %L must be a scalar %s" msgstr "" -#: fortran/resolve.c:7405 +#: fortran/resolve.c:7413 #, gcc-internal-format, gfc-internal-format msgid "FORALL stride expression at %L cannot be zero" msgstr "" -#: fortran/resolve.c:7418 +#: fortran/resolve.c:7426 #, gcc-internal-format msgid "FORALL index %qs may not appear in triplet specification at %L" msgstr "" -#: fortran/resolve.c:7522 fortran/resolve.c:7819 +#: fortran/resolve.c:7530 fortran/resolve.c:7827 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER" msgstr "" -#: fortran/resolve.c:7530 fortran/resolve.c:7783 +#: fortran/resolve.c:7538 fortran/resolve.c:7791 #, gcc-internal-format, gfc-internal-format msgid "Coindexed allocatable object at %L" msgstr "" -#: fortran/resolve.c:7640 +#: fortran/resolve.c:7648 #, gcc-internal-format, gfc-internal-format msgid "" "Source-expr at %L must be scalar or have the same rank as the allocate-" "object at %L" msgstr "" -#: fortran/resolve.c:7671 +#: fortran/resolve.c:7679 #, gcc-internal-format, gfc-internal-format msgid "Source-expr at %L and allocate-object at %L must have the same shape" msgstr "" -#: fortran/resolve.c:7830 +#: fortran/resolve.c:7838 #, gcc-internal-format, gfc-internal-format msgid "Type of entity at %L is type incompatible with source-expr at %L" msgstr "" -#: fortran/resolve.c:7842 +#: fortran/resolve.c:7850 #, gcc-internal-format, gfc-internal-format msgid "" "The allocate-object at %L and the source-expr at %L shall have the same kind " "type parameter" msgstr "" -#: fortran/resolve.c:7856 +#: fortran/resolve.c:7864 #, gcc-internal-format, gfc-internal-format msgid "" "The source-expr at %L shall neither be of type LOCK_TYPE nor have a " "LOCK_TYPE component if allocate-object at %L is a coarray" msgstr "" -#: fortran/resolve.c:7871 +#: fortran/resolve.c:7879 #, gcc-internal-format, gfc-internal-format msgid "" "The source-expr at %L shall neither be of type EVENT_TYPE nor have a " "EVENT_TYPE component if allocate-object at %L is a coarray" msgstr "" -#: fortran/resolve.c:7884 +#: fortran/resolve.c:7892 #, gcc-internal-format, gfc-internal-format msgid "" "Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr" msgstr "" -#: fortran/resolve.c:7902 +#: fortran/resolve.c:7910 #, gcc-internal-format, gfc-internal-format msgid "" "Allocating %s at %L with type-spec requires the same character-length " "parameter as in the declaration" msgstr "" -#: fortran/resolve.c:7983 fortran/resolve.c:7998 +#: fortran/resolve.c:7991 fortran/resolve.c:8006 #, gcc-internal-format, gfc-internal-format msgid "Array specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:7990 +#: fortran/resolve.c:7998 #, gcc-internal-format, gfc-internal-format msgid "" "Array specification or array-valued SOURCE= expression required in ALLOCATE " "statement at %L" msgstr "" -#: fortran/resolve.c:8015 +#: fortran/resolve.c:8023 #, gcc-internal-format, gfc-internal-format msgid "Coarray specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:8024 fortran/resolve.c:8053 fortran/resolve.c:8081 +#: fortran/resolve.c:8032 fortran/resolve.c:8061 fortran/resolve.c:8089 #, gcc-internal-format, gfc-internal-format msgid "Bad array specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:8030 +#: fortran/resolve.c:8038 #, gcc-internal-format, gfc-internal-format msgid "Upper cobound is less than lower cobound at %L" msgstr "" -#: fortran/resolve.c:8042 +#: fortran/resolve.c:8050 #, gcc-internal-format, gfc-internal-format msgid "Upper cobound is less than lower cobound of 1 at %L" msgstr "" -#: fortran/resolve.c:8100 +#: fortran/resolve.c:8108 #, gcc-internal-format msgid "" "%qs must not appear in the array specification at %L in the same ALLOCATE " "statement where it is itself allocated" msgstr "" -#: fortran/resolve.c:8115 +#: fortran/resolve.c:8123 #, gcc-internal-format, gfc-internal-format msgid "Expected '*' in coindex specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:8126 +#: fortran/resolve.c:8134 #, gcc-internal-format, gfc-internal-format msgid "Bad coarray specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:8158 +#: fortran/resolve.c:8166 #, gcc-internal-format, gfc-internal-format msgid "Stat-variable at %L must be a scalar INTEGER variable" msgstr "" -#: fortran/resolve.c:8181 +#: fortran/resolve.c:8189 #, gcc-internal-format, gfc-internal-format msgid "Stat-variable at %L shall not be %sd within the same %s statement" msgstr "" -#: fortran/resolve.c:8192 +#: fortran/resolve.c:8200 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG at %L is useless without a STAT tag" msgstr "" -#: fortran/resolve.c:8208 +#: fortran/resolve.c:8216 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable" msgstr "" -#: fortran/resolve.c:8231 +#: fortran/resolve.c:8239 #, gcc-internal-format, gfc-internal-format msgid "Errmsg-variable at %L shall not be %sd within the same %s statement" msgstr "" -#: fortran/resolve.c:8261 +#: fortran/resolve.c:8269 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L also appears at %L" msgstr "" -#: fortran/resolve.c:8267 fortran/resolve.c:8273 +#: fortran/resolve.c:8275 fortran/resolve.c:8281 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L is subobject of object at %L" msgstr "" @@ -73661,301 +73728,301 @@ msgstr "" #. element in the list. Either way, we must #. issue an error and get the next case from P. #. FIXME: Sort P and Q by line number. -#: fortran/resolve.c:8501 +#: fortran/resolve.c:8509 #, gcc-internal-format, gfc-internal-format msgid "CASE label at %L overlaps with CASE label at %L" msgstr "" -#: fortran/resolve.c:8552 +#: fortran/resolve.c:8560 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be of type %s" msgstr "" -#: fortran/resolve.c:8563 +#: fortran/resolve.c:8571 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be of kind %d" msgstr "" -#: fortran/resolve.c:8576 +#: fortran/resolve.c:8584 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be scalar" msgstr "" -#: fortran/resolve.c:8622 +#: fortran/resolve.c:8630 #, gcc-internal-format, gfc-internal-format msgid "" "Selection expression in computed GOTO statement at %L must be a scalar " "integer expression" msgstr "" -#: fortran/resolve.c:8641 +#: fortran/resolve.c:8649 #, gcc-internal-format, gfc-internal-format msgid "Argument of SELECT statement at %L cannot be %s" msgstr "" -#: fortran/resolve.c:8651 +#: fortran/resolve.c:8659 #, gcc-internal-format, gfc-internal-format msgid "Argument of SELECT statement at %L must be a scalar expression" msgstr "" -#: fortran/resolve.c:8669 fortran/resolve.c:8677 +#: fortran/resolve.c:8677 fortran/resolve.c:8685 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L is not in the range of %s" msgstr "" -#: fortran/resolve.c:8739 fortran/resolve.c:9391 +#: fortran/resolve.c:8747 fortran/resolve.c:9399 #, gcc-internal-format, gfc-internal-format msgid "" "The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L" msgstr "" -#: fortran/resolve.c:8765 +#: fortran/resolve.c:8773 #, gcc-internal-format, gfc-internal-format msgid "Logical range in CASE statement at %L is not allowed" msgstr "" -#: fortran/resolve.c:8777 +#: fortran/resolve.c:8785 #, gcc-internal-format, gfc-internal-format msgid "Constant logical value in CASE statement is repeated at %L" msgstr "" -#: fortran/resolve.c:8792 +#: fortran/resolve.c:8800 #, gcc-internal-format, gfc-internal-format msgid "Range specification at %L can never be matched" msgstr "" -#: fortran/resolve.c:8895 +#: fortran/resolve.c:8903 #, gcc-internal-format, gfc-internal-format msgid "Logical SELECT CASE block at %L has more that two cases" msgstr "" -#: fortran/resolve.c:8946 +#: fortran/resolve.c:8954 #, gcc-internal-format msgid "Associating entity %qs at %L is a procedure pointer" msgstr "" -#: fortran/resolve.c:8955 +#: fortran/resolve.c:8963 #, gcc-internal-format msgid "Derived type %qs cannot be used as a variable at %L" msgstr "" -#: fortran/resolve.c:8972 +#: fortran/resolve.c:8980 #, gcc-internal-format msgid "Associating entity %qs at %L is a procedure name" msgstr "" -#: fortran/resolve.c:8988 +#: fortran/resolve.c:8996 #, gcc-internal-format, gfc-internal-format msgid "Associating selector-expression at %L yields a procedure" msgstr "" -#: fortran/resolve.c:8995 +#: fortran/resolve.c:9003 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L cannot be NULL()" msgstr "" -#: fortran/resolve.c:9000 +#: fortran/resolve.c:9008 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L has no type" msgstr "" -#: fortran/resolve.c:9022 +#: fortran/resolve.c:9030 #, gcc-internal-format msgid "Associate-name %qs at %L is used as array" msgstr "" -#: fortran/resolve.c:9033 +#: fortran/resolve.c:9041 #, gcc-internal-format, gfc-internal-format msgid "CLASS selector at %L needs a temporary which is not yet implemented" msgstr "" -#: fortran/resolve.c:9263 +#: fortran/resolve.c:9271 #, gcc-internal-format, gfc-internal-format msgid "Selector shall be polymorphic in SELECT TYPE statement at %L" msgstr "" -#: fortran/resolve.c:9301 fortran/resolve.c:9313 +#: fortran/resolve.c:9309 fortran/resolve.c:9321 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L must not be coindexed" msgstr "" -#: fortran/resolve.c:9342 +#: fortran/resolve.c:9350 #, gcc-internal-format, gfc-internal-format msgid "TYPE IS at %L overlaps with TYPE IS at %L" msgstr "" -#: fortran/resolve.c:9354 +#: fortran/resolve.c:9362 #, gcc-internal-format msgid "Derived type %qs at %L must be extensible" msgstr "" -#: fortran/resolve.c:9366 +#: fortran/resolve.c:9374 #, gcc-internal-format msgid "Derived type %qs at %L must be an extension of %qs" msgstr "" -#: fortran/resolve.c:9369 +#: fortran/resolve.c:9377 #, gcc-internal-format msgid "Unexpected intrinsic type %qs at %L" msgstr "" -#: fortran/resolve.c:9379 +#: fortran/resolve.c:9387 #, gcc-internal-format, gfc-internal-format msgid "" "The type-spec at %L shall specify that each length type parameter is assumed" msgstr "" -#: fortran/resolve.c:9626 +#: fortran/resolve.c:9634 #, gcc-internal-format, gfc-internal-format msgid "Double CLASS IS block in SELECT TYPE statement at %L" msgstr "" -#: fortran/resolve.c:9760 +#: fortran/resolve.c:9768 #, gcc-internal-format, gfc-internal-format msgid "RANK DEFAULT at %L is repeated at %L" msgstr "" -#: fortran/resolve.c:9769 +#: fortran/resolve.c:9777 #, gcc-internal-format, gfc-internal-format msgid "RANK (*) at %L is repeated at %L" msgstr "" -#: fortran/resolve.c:9772 +#: fortran/resolve.c:9780 #, gcc-internal-format, gfc-internal-format msgid "RANK (%i) at %L is repeated at %L" msgstr "" -#: fortran/resolve.c:9782 fortran/resolve.c:9787 +#: fortran/resolve.c:9790 fortran/resolve.c:9795 #, gcc-internal-format, gfc-internal-format msgid "" "RANK (*) at %L cannot be used with the pointer or allocatable selector at %L" msgstr "" -#: fortran/resolve.c:9896 +#: fortran/resolve.c:9904 #, gcc-internal-format, gfc-internal-format msgid "Invalid context for NULL () intrinsic at %L" msgstr "" -#: fortran/resolve.c:9948 +#: fortran/resolve.c:9956 #, gcc-internal-format, gfc-internal-format msgid "DTIO %s procedure at %L must be recursive" msgstr "" -#: fortran/resolve.c:9958 +#: fortran/resolve.c:9966 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot be polymorphic unless it is processed by " "a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9971 +#: fortran/resolve.c:9979 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have POINTER components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9980 +#: fortran/resolve.c:9988 #, gcc-internal-format, gfc-internal-format msgid "Data transfer element at %L cannot have procedure pointer components" msgstr "" -#: fortran/resolve.c:9987 +#: fortran/resolve.c:9995 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have ALLOCATABLE components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9998 +#: fortran/resolve.c:10006 #, gcc-internal-format, gfc-internal-format msgid "Data transfer element at %L cannot have PRIVATE components" msgstr "" -#: fortran/resolve.c:10004 +#: fortran/resolve.c:10012 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have PRIVATE components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.c:10019 +#: fortran/resolve.c:10027 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot be a full reference to an assumed-size " "array" msgstr "" -#: fortran/resolve.c:10076 +#: fortran/resolve.c:10084 #, gcc-internal-format, gfc-internal-format msgid "Lock variable at %L must be a scalar of type LOCK_TYPE" msgstr "" -#: fortran/resolve.c:10086 +#: fortran/resolve.c:10094 #, gcc-internal-format, gfc-internal-format msgid "Event variable at %L must be a scalar of type EVENT_TYPE" msgstr "" -#: fortran/resolve.c:10090 +#: fortran/resolve.c:10098 #, gcc-internal-format, gfc-internal-format msgid "Event variable argument at %L must be a coarray or coindexed" msgstr "" -#: fortran/resolve.c:10093 +#: fortran/resolve.c:10101 #, gcc-internal-format, gfc-internal-format msgid "Event variable argument at %L must be a coarray but not coindexed" msgstr "" -#: fortran/resolve.c:10100 fortran/resolve.c:10222 +#: fortran/resolve.c:10108 fortran/resolve.c:10230 #, gcc-internal-format, gfc-internal-format msgid "STAT= argument at %L must be a scalar INTEGER variable" msgstr "" -#: fortran/resolve.c:10112 fortran/resolve.c:10230 +#: fortran/resolve.c:10120 fortran/resolve.c:10238 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable" msgstr "" -#: fortran/resolve.c:10124 +#: fortran/resolve.c:10132 #, gcc-internal-format, gfc-internal-format msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable" msgstr "" -#: fortran/resolve.c:10137 +#: fortran/resolve.c:10145 #, gcc-internal-format, gfc-internal-format msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression" msgstr "" -#: fortran/resolve.c:10198 +#: fortran/resolve.c:10206 #, gcc-internal-format, gfc-internal-format msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression" msgstr "" -#: fortran/resolve.c:10202 fortran/resolve.c:10212 +#: fortran/resolve.c:10210 fortran/resolve.c:10220 #, gcc-internal-format, gfc-internal-format msgid "Imageset argument at %L must between 1 and num_images()" msgstr "" -#: fortran/resolve.c:10257 +#: fortran/resolve.c:10265 #, gcc-internal-format, gfc-internal-format msgid "" "Statement at %L is not a valid branch target statement for the branch " "statement at %L" msgstr "" -#: fortran/resolve.c:10267 +#: fortran/resolve.c:10275 #, gcc-internal-format, gfc-internal-format msgid "Branch at %L may result in an infinite loop" msgstr "" #. Note: A label at END CRITICAL does not leave the CRITICAL #. construct as END CRITICAL is still part of it. -#: fortran/resolve.c:10284 fortran/resolve.c:10307 +#: fortran/resolve.c:10292 fortran/resolve.c:10315 #, gcc-internal-format, gfc-internal-format msgid "GOTO statement at %L leaves CRITICAL construct for label at %L" msgstr "" -#: fortran/resolve.c:10288 fortran/resolve.c:10313 +#: fortran/resolve.c:10296 fortran/resolve.c:10321 #, gcc-internal-format, gfc-internal-format msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L" msgstr "" @@ -73963,74 +74030,74 @@ msgstr "" #. The label is not in an enclosing block, so illegal. This was #. allowed in Fortran 66, so we allow it as extension. No #. further checks are necessary in this case. -#: fortran/resolve.c:10328 +#: fortran/resolve.c:10336 #, gcc-internal-format, gfc-internal-format msgid "Label at %L is not in the same block as the GOTO statement at %L" msgstr "" -#: fortran/resolve.c:10400 +#: fortran/resolve.c:10408 #, gcc-internal-format, gfc-internal-format msgid "WHERE mask at %L has inconsistent shape" msgstr "" -#: fortran/resolve.c:10416 +#: fortran/resolve.c:10424 #, gcc-internal-format, gfc-internal-format msgid "WHERE assignment target at %L has inconsistent shape" msgstr "" -#: fortran/resolve.c:10424 fortran/resolve.c:10511 +#: fortran/resolve.c:10432 fortran/resolve.c:10519 #, gcc-internal-format, gfc-internal-format msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L" msgstr "" -#: fortran/resolve.c:10434 fortran/resolve.c:10521 +#: fortran/resolve.c:10442 fortran/resolve.c:10529 #, gcc-internal-format, gfc-internal-format msgid "Unsupported statement inside WHERE at %L" msgstr "" -#: fortran/resolve.c:10465 +#: fortran/resolve.c:10473 #, gcc-internal-format, gfc-internal-format msgid "Assignment to a FORALL index variable at %L" msgstr "" -#: fortran/resolve.c:10474 +#: fortran/resolve.c:10482 #, gcc-internal-format msgid "" "The FORALL with index %qs is not used on the left side of the assignment at " "%L and so might cause multiple assignment to this object" msgstr "" -#: fortran/resolve.c:10621 +#: fortran/resolve.c:10629 #, gcc-internal-format, gfc-internal-format msgid "FORALL construct at %L" msgstr "" -#: fortran/resolve.c:10642 +#: fortran/resolve.c:10650 #, gcc-internal-format, gfc-internal-format msgid "FORALL index-name at %L must be a scalar variable of type integer" msgstr "" -#: fortran/resolve.c:10652 +#: fortran/resolve.c:10660 #, gcc-internal-format, gfc-internal-format msgid "An outer FORALL construct already has an index with this name %L" msgstr "" -#: fortran/resolve.c:10729 +#: fortran/resolve.c:10737 #, gcc-internal-format, gfc-internal-format msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array" msgstr "" -#: fortran/resolve.c:10831 +#: fortran/resolve.c:10839 #, gcc-internal-format msgid "gfc_resolve_blocks(): Bad block type" msgstr "" -#: fortran/resolve.c:10944 +#: fortran/resolve.c:10952 #, gcc-internal-format, gfc-internal-format msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L" msgstr "" -#: fortran/resolve.c:10976 +#: fortran/resolve.c:10984 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed expression at %L is assigned to a derived type variable with a " @@ -74038,7 +74105,7 @@ msgid "" msgstr "" #. F2008, C1283 (4). -#: fortran/resolve.c:10982 +#: fortran/resolve.c:10990 #, gcc-internal-format, gfc-internal-format msgid "" "In a pure subprogram an INTENT(IN) dummy argument shall not be used as the " @@ -74047,43 +74114,43 @@ msgid "" "component selection." msgstr "" -#: fortran/resolve.c:10994 +#: fortran/resolve.c:11002 #, gcc-internal-format, gfc-internal-format msgid "Assignment to coindexed variable at %L in a PURE procedure" msgstr "" -#: fortran/resolve.c:11026 +#: fortran/resolve.c:11034 #, gcc-internal-format, gfc-internal-format msgid "Assignment to polymorphic coarray at %L is not permitted" msgstr "" -#: fortran/resolve.c:11030 +#: fortran/resolve.c:11038 #, gcc-internal-format, gfc-internal-format msgid "Assignment to an allocatable polymorphic variable at %L" msgstr "" -#: fortran/resolve.c:11035 +#: fortran/resolve.c:11043 #, gcc-internal-format msgid "" "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-" "lhs%>" msgstr "" -#: fortran/resolve.c:11042 +#: fortran/resolve.c:11050 #, gcc-internal-format, gfc-internal-format msgid "" "Nonallocatable variable must not be polymorphic in intrinsic assignment at " "%L - check that there is a matching specific subroutine for '=' operator" msgstr "" -#: fortran/resolve.c:11053 +#: fortran/resolve.c:11061 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed variable must not have an allocatable ultimate component in " "assignment at %L" msgstr "" -#: fortran/resolve.c:11373 +#: fortran/resolve.c:11381 #, gcc-internal-format, gfc-internal-format msgid "" "TODO: type-bound defined assignment(s) at %L not done because multiple part " @@ -74092,77 +74159,77 @@ msgstr "" #. Even if standard does not support this feature, continue to build #. the two statements to avoid upsetting frontend_passes.c. -#: fortran/resolve.c:11615 +#: fortran/resolve.c:11623 #, gcc-internal-format, gfc-internal-format msgid "Pointer procedure assignment at %L" msgstr "" -#: fortran/resolve.c:11627 +#: fortran/resolve.c:11635 #, gcc-internal-format, gfc-internal-format msgid "" "The function result on the lhs of the assignment at %L must have the pointer " "attribute." msgstr "" -#: fortran/resolve.c:11882 +#: fortran/resolve.c:11890 #, gcc-internal-format, gfc-internal-format msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable" msgstr "" -#: fortran/resolve.c:11886 +#: fortran/resolve.c:11894 #, gcc-internal-format msgid "Variable %qs has not been assigned a target label at %L" msgstr "" -#: fortran/resolve.c:11897 +#: fortran/resolve.c:11905 #, gcc-internal-format, gfc-internal-format msgid "" "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier" msgstr "" -#: fortran/resolve.c:11963 +#: fortran/resolve.c:11971 #, gcc-internal-format, gfc-internal-format msgid "ASSIGN statement at %L requires a scalar default INTEGER variable" msgstr "" -#: fortran/resolve.c:12009 +#: fortran/resolve.c:12018 #, gcc-internal-format, gfc-internal-format msgid "Invalid NULL at %L" msgstr "" -#: fortran/resolve.c:12013 +#: fortran/resolve.c:12022 #, gcc-internal-format, gfc-internal-format msgid "" "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression" msgstr "" -#: fortran/resolve.c:12074 +#: fortran/resolve.c:12083 #, gcc-internal-format msgid "gfc_resolve_code(): No expression on DO WHILE" msgstr "" -#: fortran/resolve.c:12079 +#: fortran/resolve.c:12088 #, gcc-internal-format, gfc-internal-format msgid "" "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.c:12163 +#: fortran/resolve.c:12172 #, gcc-internal-format, gfc-internal-format msgid "FORALL mask clause at %L requires a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.c:12245 +#: fortran/resolve.c:12254 #, gcc-internal-format msgid "gfc_resolve_code(): Bad statement code" msgstr "" -#: fortran/resolve.c:12266 +#: fortran/resolve.c:12275 #, gcc-internal-format msgid "Using parameter %qs declared at %L is deprecated" msgstr "" -#: fortran/resolve.c:12360 +#: fortran/resolve.c:12369 #, gcc-internal-format msgid "" "Variable %qs with binding label %qs at %L uses the same global identifier as " @@ -74171,7 +74238,7 @@ msgstr "" #. This can only happen if the variable is defined in a module - if it #. isn't the same module, reject it. -#: fortran/resolve.c:12374 +#: fortran/resolve.c:12383 #, gcc-internal-format msgid "" "Variable %qs from module %qs with binding label %qs at %L uses the same " @@ -74181,63 +74248,63 @@ msgstr "" #. Print an error if the procedure is defined multiple times; we have to #. exclude references to the same procedure via module association or #. multiple checks for the same procedure. -#: fortran/resolve.c:12393 +#: fortran/resolve.c:12402 #, gcc-internal-format msgid "" "Procedure %qs with binding label %qs at %L uses the same global identifier " "as entity at %L" msgstr "" -#: fortran/resolve.c:12479 +#: fortran/resolve.c:12488 #, gcc-internal-format, gfc-internal-format msgid "String length at %L is too large" msgstr "" -#: fortran/resolve.c:12713 +#: fortran/resolve.c:12722 #, gcc-internal-format msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank" msgstr "" -#: fortran/resolve.c:12717 +#: fortran/resolve.c:12726 #, gcc-internal-format msgid "Scalar object %qs at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:12725 +#: fortran/resolve.c:12734 #, gcc-internal-format msgid "Array pointer %qs at %L must have a deferred shape or assumed rank" msgstr "" -#: fortran/resolve.c:12736 +#: fortran/resolve.c:12745 #, gcc-internal-format msgid "Array %qs at %L cannot have a deferred shape" msgstr "" -#: fortran/resolve.c:12752 +#: fortran/resolve.c:12761 #, gcc-internal-format msgid "Type %qs of CLASS variable %qs at %L is not extensible" msgstr "" -#: fortran/resolve.c:12764 +#: fortran/resolve.c:12773 #, gcc-internal-format msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer" msgstr "" -#: fortran/resolve.c:12797 +#: fortran/resolve.c:12806 #, gcc-internal-format msgid "" "The type %qs cannot be host associated at %L because it is blocked by an " "incompatible object of the same name declared at %L" msgstr "" -#: fortran/resolve.c:12819 +#: fortran/resolve.c:12828 #, gcc-internal-format msgid "" "Implied SAVE for module variable %qs at %L, needed due to the default " "initialization" msgstr "" -#: fortran/resolve.c:12850 +#: fortran/resolve.c:12859 #, gcc-internal-format msgid "" "Entity %qs at %L has a deferred type parameter and requires either the " @@ -74246,1026 +74313,1026 @@ msgstr "" #. F08:C541. The shape of an array defined in a main program or module #. * needs to be constant. -#: fortran/resolve.c:12886 +#: fortran/resolve.c:12895 #, gcc-internal-format msgid "The module or main program array %qs at %L must have constant shape" msgstr "" -#: fortran/resolve.c:12911 +#: fortran/resolve.c:12920 #, gcc-internal-format, gfc-internal-format msgid "" "Entity with assumed character length at %L must be a dummy argument or a " "PARAMETER" msgstr "" -#: fortran/resolve.c:12932 +#: fortran/resolve.c:12941 #, gcc-internal-format msgid "%qs at %L must have constant character length in this context" msgstr "" -#: fortran/resolve.c:12939 +#: fortran/resolve.c:12948 #, gcc-internal-format msgid "COMMON variable %qs at %L must have constant character length" msgstr "" -#: fortran/resolve.c:12986 +#: fortran/resolve.c:12995 #, gcc-internal-format msgid "Allocatable %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12989 +#: fortran/resolve.c:12998 #, gcc-internal-format msgid "External %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12992 +#: fortran/resolve.c:13001 #, gcc-internal-format msgid "Dummy %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12995 +#: fortran/resolve.c:13004 #, gcc-internal-format msgid "Intrinsic %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12998 +#: fortran/resolve.c:13007 #, gcc-internal-format msgid "Function result %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:13001 +#: fortran/resolve.c:13010 #, gcc-internal-format msgid "Automatic array %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:13043 +#: fortran/resolve.c:13052 #, gcc-internal-format, gfc-internal-format msgid "%s at %L" msgstr "" -#: fortran/resolve.c:13075 +#: fortran/resolve.c:13084 #, gcc-internal-format msgid "Character-valued statement function %qs at %L must have constant length" msgstr "" -#: fortran/resolve.c:13098 +#: fortran/resolve.c:13107 #, gcc-internal-format msgid "" "%qs is of a PRIVATE type and cannot be a dummy argument of %qs, which is " "PUBLIC at %L" msgstr "" -#: fortran/resolve.c:13120 +#: fortran/resolve.c:13129 #, gcc-internal-format msgid "" "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs " "which is PRIVATE" msgstr "" -#: fortran/resolve.c:13138 +#: fortran/resolve.c:13147 #, gcc-internal-format msgid "Function %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:13150 +#: fortran/resolve.c:13159 #, gcc-internal-format msgid "External object %qs at %L may not have an initializer" msgstr "" -#: fortran/resolve.c:13159 +#: fortran/resolve.c:13168 #, gcc-internal-format msgid "ELEMENTAL function %qs at %L must have a scalar result" msgstr "" -#: fortran/resolve.c:13169 +#: fortran/resolve.c:13178 #, gcc-internal-format msgid "" "Statement function %qs at %L may not have pointer or allocatable attribute" msgstr "" -#: fortran/resolve.c:13188 +#: fortran/resolve.c:13197 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be array-valued" msgstr "" -#: fortran/resolve.c:13192 +#: fortran/resolve.c:13201 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued" msgstr "" -#: fortran/resolve.c:13196 +#: fortran/resolve.c:13205 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be pure" msgstr "" -#: fortran/resolve.c:13200 +#: fortran/resolve.c:13209 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be recursive" msgstr "" -#: fortran/resolve.c:13213 +#: fortran/resolve.c:13222 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L" msgstr "" -#: fortran/resolve.c:13224 +#: fortran/resolve.c:13233 #, gcc-internal-format msgid "Procedure pointer %qs at %L shall not be elemental" msgstr "" -#: fortran/resolve.c:13230 +#: fortran/resolve.c:13239 #, gcc-internal-format msgid "Dummy procedure %qs at %L shall not be elemental" msgstr "" -#: fortran/resolve.c:13250 +#: fortran/resolve.c:13259 #, gcc-internal-format msgid "" "Function result variable %qs at %L of elemental function %qs shall not have " "an ALLOCATABLE or POINTER attribute" msgstr "" -#: fortran/resolve.c:13307 +#: fortran/resolve.c:13316 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:13313 +#: fortran/resolve.c:13322 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:13319 +#: fortran/resolve.c:13328 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:13327 +#: fortran/resolve.c:13336 #, gcc-internal-format msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:13333 +#: fortran/resolve.c:13342 #, gcc-internal-format msgid "Procedure pointer result %qs at %L is missing the pointer attribute" msgstr "" -#: fortran/resolve.c:13376 +#: fortran/resolve.c:13385 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its " "interface in %s" msgstr "" -#: fortran/resolve.c:13384 +#: fortran/resolve.c:13393 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface " "in %s" msgstr "" -#: fortran/resolve.c:13392 +#: fortran/resolve.c:13401 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its " "interface in %s" msgstr "" -#: fortran/resolve.c:13401 +#: fortran/resolve.c:13410 #, gcc-internal-format msgid "" "%s between the MODULE PROCEDURE declaration in MODULE %qs and the " "declaration at %L in (SUB)MODULE %qs" msgstr "" -#: fortran/resolve.c:13485 +#: fortran/resolve.c:13494 #, gcc-internal-format msgid "FINAL procedure %qs at %L is not a SUBROUTINE" msgstr "" -#: fortran/resolve.c:13494 +#: fortran/resolve.c:13503 #, gcc-internal-format, gfc-internal-format msgid "FINAL procedure at %L must have exactly one argument" msgstr "" -#: fortran/resolve.c:13503 +#: fortran/resolve.c:13512 #, gcc-internal-format msgid "Argument of FINAL procedure at %L must be of type %qs" msgstr "" -#: fortran/resolve.c:13511 +#: fortran/resolve.c:13520 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be a POINTER" msgstr "" -#: fortran/resolve.c:13517 +#: fortran/resolve.c:13526 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:13523 +#: fortran/resolve.c:13532 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be OPTIONAL" msgstr "" -#: fortran/resolve.c:13531 +#: fortran/resolve.c:13540 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)" msgstr "" -#: fortran/resolve.c:13540 +#: fortran/resolve.c:13549 #, gcc-internal-format, gfc-internal-format msgid "Non-scalar FINAL procedure at %L should have assumed shape argument" msgstr "" -#: fortran/resolve.c:13562 +#: fortran/resolve.c:13571 #, gcc-internal-format msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs" msgstr "" -#: fortran/resolve.c:13599 +#: fortran/resolve.c:13608 #, gcc-internal-format msgid "" "Only array FINAL procedures declared for derived type %qs defined at %L, " "suggest also scalar one" msgstr "" -#: fortran/resolve.c:13639 +#: fortran/resolve.c:13648 #, gcc-internal-format msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L" msgstr "" -#: fortran/resolve.c:13675 +#: fortran/resolve.c:13684 #, gcc-internal-format msgid "%qs and %qs for GENERIC %qs at %L are ambiguous" msgstr "" -#: fortran/resolve.c:13734 +#: fortran/resolve.c:13743 #, gcc-internal-format msgid "Undefined specific binding %qs as target of GENERIC %qs at %L" msgstr "" -#: fortran/resolve.c:13746 +#: fortran/resolve.c:13755 #, gcc-internal-format msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too" msgstr "" -#: fortran/resolve.c:13774 +#: fortran/resolve.c:13783 #, gcc-internal-format msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name" msgstr "" -#: fortran/resolve.c:13830 +#: fortran/resolve.c:13839 #, gcc-internal-format, gfc-internal-format msgid "Type-bound operator at %L cannot be NOPASS" msgstr "" -#: fortran/resolve.c:14042 +#: fortran/resolve.c:14051 #, gcc-internal-format msgid "" "%qs must be a module procedure or an external procedure with an explicit " "interface at %L" msgstr "" -#: fortran/resolve.c:14085 +#: fortran/resolve.c:14094 #, gcc-internal-format msgid "Procedure %qs with PASS(%s) at %L has no argument %qs" msgstr "" -#: fortran/resolve.c:14099 +#: fortran/resolve.c:14108 #, gcc-internal-format msgid "Procedure %qs with PASS at %L must have at least one argument" msgstr "" -#: fortran/resolve.c:14113 fortran/resolve.c:14599 +#: fortran/resolve.c:14122 fortran/resolve.c:14608 #, gcc-internal-format msgid "Non-polymorphic passed-object dummy argument of %qs at %L" msgstr "" -#: fortran/resolve.c:14121 +#: fortran/resolve.c:14130 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs" msgstr "" -#: fortran/resolve.c:14130 +#: fortran/resolve.c:14139 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must be scalar" msgstr "" -#: fortran/resolve.c:14136 +#: fortran/resolve.c:14145 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:14142 +#: fortran/resolve.c:14151 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must not be POINTER" msgstr "" -#: fortran/resolve.c:14171 +#: fortran/resolve.c:14180 #, gcc-internal-format msgid "Procedure %qs at %L has the same name as a component of %qs" msgstr "" -#: fortran/resolve.c:14181 +#: fortran/resolve.c:14190 #, gcc-internal-format msgid "Procedure %qs at %L has the same name as an inherited component of %qs" msgstr "" -#: fortran/resolve.c:14276 +#: fortran/resolve.c:14285 #, gcc-internal-format msgid "" "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and " "not overridden" msgstr "" -#: fortran/resolve.c:14379 +#: fortran/resolve.c:14388 #, gcc-internal-format msgid "Coarray component %qs at %L must be allocatable with deferred shape" msgstr "" -#: fortran/resolve.c:14388 +#: fortran/resolve.c:14397 #, gcc-internal-format msgid "" "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray" msgstr "" -#: fortran/resolve.c:14398 +#: fortran/resolve.c:14407 #, gcc-internal-format msgid "" "Component %qs at %L with coarray component shall be a nonpointer, " "nonallocatable scalar" msgstr "" -#: fortran/resolve.c:14423 +#: fortran/resolve.c:14432 #, gcc-internal-format msgid "" "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer" msgstr "" -#: fortran/resolve.c:14434 +#: fortran/resolve.c:14443 #, gcc-internal-format msgid "Component %qs of BIND(C) type at %L must have length one" msgstr "" -#: fortran/resolve.c:14532 +#: fortran/resolve.c:14541 #, gcc-internal-format msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs" msgstr "" -#: fortran/resolve.c:14546 +#: fortran/resolve.c:14555 #, gcc-internal-format msgid "" "Procedure pointer component %qs with PASS at %L must have at least one " "argument" msgstr "" -#: fortran/resolve.c:14562 +#: fortran/resolve.c:14571 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs" msgstr "" -#: fortran/resolve.c:14572 +#: fortran/resolve.c:14581 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar" msgstr "" -#: fortran/resolve.c:14581 +#: fortran/resolve.c:14590 #, gcc-internal-format msgid "" "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute" msgstr "" -#: fortran/resolve.c:14590 +#: fortran/resolve.c:14599 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:14632 +#: fortran/resolve.c:14641 #, gcc-internal-format msgid "" "Component %qs of %qs at %L has the same name as an inherited type-bound " "procedure" msgstr "" -#: fortran/resolve.c:14645 +#: fortran/resolve.c:14654 #, gcc-internal-format msgid "" "Character length of component %qs needs to be a constant specification " "expression at %L" msgstr "" -#: fortran/resolve.c:14656 +#: fortran/resolve.c:14665 #, gcc-internal-format msgid "" "Character component %qs of %qs at %L with deferred length must be a POINTER " "or ALLOCATABLE" msgstr "" -#: fortran/resolve.c:14689 +#: fortran/resolve.c:14698 #, gcc-internal-format msgid "" "the component %qs is a PRIVATE type and cannot be a component of %qs, which " "is PUBLIC at %L" msgstr "" -#: fortran/resolve.c:14697 +#: fortran/resolve.c:14706 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s" msgstr "" -#: fortran/resolve.c:14706 +#: fortran/resolve.c:14715 #, gcc-internal-format, gfc-internal-format msgid "" "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE " "attribute" msgstr "" -#: fortran/resolve.c:14792 +#: fortran/resolve.c:14801 #, gcc-internal-format, gfc-internal-format msgid "Conflicting initializers in union at %L and %L" msgstr "" -#: fortran/resolve.c:14837 +#: fortran/resolve.c:14846 #, gcc-internal-format msgid "" "As extending type %qs at %L has a coarray component, parent type %qs shall " "also have one" msgstr "" -#: fortran/resolve.c:14850 +#: fortran/resolve.c:14859 #, gcc-internal-format msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT" msgstr "" -#: fortran/resolve.c:14914 +#: fortran/resolve.c:14923 #, gcc-internal-format msgid "" "Parameterized type %qs does not have a component corresponding to parameter " "%qs at %L" msgstr "" -#: fortran/resolve.c:14947 +#: fortran/resolve.c:14956 #, gcc-internal-format msgid "" "Generic name %qs of function %qs at %L being the same name as derived type " "at %L" msgstr "" -#: fortran/resolve.c:14961 +#: fortran/resolve.c:14970 #, gcc-internal-format msgid "Derived type %qs at %L has not been declared" msgstr "" -#: fortran/resolve.c:15026 +#: fortran/resolve.c:15035 #, gcc-internal-format msgid "Assumed size array %qs in namelist %qs at %L is not allowed" msgstr "" -#: fortran/resolve.c:15032 +#: fortran/resolve.c:15041 #, gcc-internal-format msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L" msgstr "" -#: fortran/resolve.c:15038 +#: fortran/resolve.c:15047 #, gcc-internal-format msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L" msgstr "" -#: fortran/resolve.c:15046 +#: fortran/resolve.c:15055 #, gcc-internal-format msgid "" "NAMELIST object %qs with nonconstant character length in namelist %qs at %L" msgstr "" -#: fortran/resolve.c:15063 +#: fortran/resolve.c:15072 #, gcc-internal-format msgid "" "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC " "namelist %qs at %L" msgstr "" -#: fortran/resolve.c:15085 +#: fortran/resolve.c:15094 #, gcc-internal-format msgid "" "NAMELIST object %qs has use-associated PRIVATE components and cannot be " "member of namelist %qs at %L" msgstr "" -#: fortran/resolve.c:15096 +#: fortran/resolve.c:15105 #, gcc-internal-format msgid "" "NAMELIST object %qs has PRIVATE components and cannot be a member of PUBLIC " "namelist %qs at %L" msgstr "" -#: fortran/resolve.c:15123 +#: fortran/resolve.c:15132 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:15142 +#: fortran/resolve.c:15151 #, gcc-internal-format msgid "Parameter array %qs at %L cannot be automatic or of deferred shape" msgstr "" -#: fortran/resolve.c:15158 +#: fortran/resolve.c:15167 #, gcc-internal-format msgid "" "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type" msgstr "" -#: fortran/resolve.c:15169 +#: fortran/resolve.c:15178 #, gcc-internal-format, gfc-internal-format msgid "Incompatible derived type in PARAMETER at %L" msgstr "" -#: fortran/resolve.c:15177 +#: fortran/resolve.c:15186 #, gcc-internal-format msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute" msgstr "" -#: fortran/resolve.c:15228 +#: fortran/resolve.c:15237 #, gcc-internal-format msgid "" "The object %qs at %L has a deferred LEN parameter %qs and is neither " "allocatable nor a pointer" msgstr "" -#: fortran/resolve.c:15239 +#: fortran/resolve.c:15248 #, gcc-internal-format msgid "" "The AUTOMATIC object %qs at %L must not have the SAVE attribute or be a " "variable declared in the main program, a module or a submodule(F08/C513)" msgstr "" -#: fortran/resolve.c:15246 +#: fortran/resolve.c:15255 #, gcc-internal-format msgid "" "The object %qs at %L with ASSUMED type parameters must be a dummy or a " "SELECT TYPE selector(F08/4.2)" msgstr "" -#: fortran/resolve.c:15286 +#: fortran/resolve.c:15295 #, gcc-internal-format, gfc-internal-format msgid "" "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays " "at %L are unsupported" msgstr "" -#: fortran/resolve.c:15350 +#: fortran/resolve.c:15359 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L" msgstr "" -#: fortran/resolve.c:15353 +#: fortran/resolve.c:15362 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L" msgstr "" -#: fortran/resolve.c:15453 +#: fortran/resolve.c:15462 #, gcc-internal-format msgid "" "%qs at %L has the CONTIGUOUS attribute but is not an array pointer or an " "assumed-shape or assumed-rank array" msgstr "" -#: fortran/resolve.c:15474 +#: fortran/resolve.c:15483 #, gcc-internal-format, gfc-internal-format msgid "Bad specification for assumed size array at %L" msgstr "" -#: fortran/resolve.c:15487 +#: fortran/resolve.c:15496 #, gcc-internal-format, gfc-internal-format msgid "Assumed size array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:15490 +#: fortran/resolve.c:15499 #, gcc-internal-format, gfc-internal-format msgid "Assumed shape array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:15500 +#: fortran/resolve.c:15509 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:15507 +#: fortran/resolve.c:15516 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute" msgstr "" -#: fortran/resolve.c:15520 +#: fortran/resolve.c:15529 #, gcc-internal-format, gfc-internal-format msgid "Symbol at %L is not a DUMMY variable" msgstr "" -#: fortran/resolve.c:15526 +#: fortran/resolve.c:15535 #, gcc-internal-format msgid "" "%qs at %L cannot have the VALUE attribute because it is not a dummy argument" msgstr "" -#: fortran/resolve.c:15536 +#: fortran/resolve.c:15545 #, gcc-internal-format msgid "" "Character dummy variable %qs at %L with VALUE attribute must have constant " "length" msgstr "" -#: fortran/resolve.c:15545 +#: fortran/resolve.c:15554 #, gcc-internal-format msgid "" "C interoperable character dummy variable %qs at %L with VALUE attribute must " "have length one" msgstr "" -#: fortran/resolve.c:15558 fortran/resolve.c:15735 +#: fortran/resolve.c:15567 fortran/resolve.c:15744 #, gcc-internal-format msgid "The derived type %qs at %L is of type %qs, which has not been defined" msgstr "" -#: fortran/resolve.c:15572 +#: fortran/resolve.c:15581 #, gcc-internal-format, gfc-internal-format msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument" msgstr "" -#: fortran/resolve.c:15581 +#: fortran/resolve.c:15590 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall be of type TYPE(*) or of " "an numeric intrinsic type" msgstr "" -#: fortran/resolve.c:15590 +#: fortran/resolve.c:15599 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may not have the ALLOCATABLE, " "CODIMENSION, POINTER or VALUE attribute" msgstr "" -#: fortran/resolve.c:15598 +#: fortran/resolve.c:15607 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may not have the INTENT(OUT) " "attribute" msgstr "" -#: fortran/resolve.c:15605 +#: fortran/resolve.c:15614 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall either be a scalar or an " "assumed-size array" msgstr "" -#: fortran/resolve.c:15625 +#: fortran/resolve.c:15634 #, gcc-internal-format, gfc-internal-format msgid "Assumed type of variable %s at %L is only permitted for dummy variables" msgstr "" -#: fortran/resolve.c:15632 +#: fortran/resolve.c:15641 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-type variable %s at %L may not have the ALLOCATABLE, CODIMENSION, " "POINTER or VALUE attribute" msgstr "" -#: fortran/resolve.c:15639 +#: fortran/resolve.c:15648 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute" msgstr "" -#: fortran/resolve.c:15646 +#: fortran/resolve.c:15655 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L shall not be an explicit-shape array" msgstr "" -#: fortran/resolve.c:15672 +#: fortran/resolve.c:15681 #, gcc-internal-format msgid "" "Variable %qs at %L cannot be BIND(C) because it is neither a COMMON block " "nor declared at the module level scope" msgstr "" -#: fortran/resolve.c:15682 +#: fortran/resolve.c:15691 #, gcc-internal-format msgid "BIND(C) Variable %qs at %L must have length one" msgstr "" -#: fortran/resolve.c:15761 +#: fortran/resolve.c:15770 #, gcc-internal-format msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs" msgstr "" -#: fortran/resolve.c:15776 +#: fortran/resolve.c:15785 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L of type LOCK_TYPE or with subcomponent of type LOCK_TYPE " "must be a coarray" msgstr "" -#: fortran/resolve.c:15789 +#: fortran/resolve.c:15798 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L of type EVENT_TYPE or with subcomponent of type EVENT_TYPE " "must be a coarray" msgstr "" -#: fortran/resolve.c:15807 +#: fortran/resolve.c:15816 #, gcc-internal-format msgid "" "The INTENT(OUT) dummy argument %qs at %L is ASSUMED SIZE and so cannot have " "a default initializer" msgstr "" -#: fortran/resolve.c:15819 +#: fortran/resolve.c:15828 #, gcc-internal-format msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)" msgstr "" -#: fortran/resolve.c:15828 +#: fortran/resolve.c:15837 #, gcc-internal-format msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)" msgstr "" -#: fortran/resolve.c:15841 +#: fortran/resolve.c:15850 #, gcc-internal-format msgid "" "Function result %qs at %L shall not be a coarray or have a coarray component" msgstr "" -#: fortran/resolve.c:15850 +#: fortran/resolve.c:15859 #, gcc-internal-format msgid "" "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray" msgstr "" -#: fortran/resolve.c:15863 +#: fortran/resolve.c:15872 #, gcc-internal-format msgid "" "Variable %qs at %L with coarray component shall be a nonpointer, " "nonallocatable scalar, which is not a coarray" msgstr "" -#: fortran/resolve.c:15879 +#: fortran/resolve.c:15888 #, gcc-internal-format msgid "" "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy " "argument" msgstr "" -#: fortran/resolve.c:15887 +#: fortran/resolve.c:15896 #, gcc-internal-format msgid "" "Coarray variable %qs at %L shall not have codimensions with deferred shape" msgstr "" -#: fortran/resolve.c:15894 +#: fortran/resolve.c:15903 #, gcc-internal-format msgid "Allocatable coarray variable %qs at %L must have deferred shape" msgstr "" -#: fortran/resolve.c:15907 +#: fortran/resolve.c:15916 #, gcc-internal-format msgid "" "Variable %qs at %L is INTENT(OUT) and can thus not be an allocatable coarray " "or have coarray components" msgstr "" -#: fortran/resolve.c:15916 +#: fortran/resolve.c:15925 #, gcc-internal-format msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs" msgstr "" -#: fortran/resolve.c:15932 +#: fortran/resolve.c:15941 #, gcc-internal-format msgid "" "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure " "%qs" msgstr "" -#: fortran/resolve.c:15938 +#: fortran/resolve.c:15947 #, gcc-internal-format msgid "" "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure " "%qs" msgstr "" -#: fortran/resolve.c:15963 +#: fortran/resolve.c:15972 #, gcc-internal-format msgid "Namelist %qs cannot be an argument to subroutine or function at %L" msgstr "" -#: fortran/resolve.c:16033 +#: fortran/resolve.c:16042 #, gcc-internal-format, gfc-internal-format msgid "Threadprivate at %L isn't SAVEd" msgstr "" -#: fortran/resolve.c:16044 +#: fortran/resolve.c:16053 #, gcc-internal-format msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd" msgstr "" -#: fortran/resolve.c:16149 +#: fortran/resolve.c:16158 #, gcc-internal-format, gfc-internal-format msgid "Expecting definable entity near %L" msgstr "" -#: fortran/resolve.c:16157 +#: fortran/resolve.c:16166 #, gcc-internal-format msgid "BLOCK DATA element %qs at %L must be in COMMON" msgstr "" -#: fortran/resolve.c:16164 +#: fortran/resolve.c:16173 #, gcc-internal-format msgid "DATA array %qs at %L must be specified in a previous declaration" msgstr "" -#: fortran/resolve.c:16171 +#: fortran/resolve.c:16180 #, gcc-internal-format msgid "DATA element %qs at %L cannot have a coindex" msgstr "" -#: fortran/resolve.c:16187 +#: fortran/resolve.c:16196 #, gcc-internal-format msgid "DATA element %qs at %L is a pointer and so must be a full array" msgstr "" -#: fortran/resolve.c:16194 +#: fortran/resolve.c:16203 #, gcc-internal-format, gfc-internal-format msgid "" "DATA object near %L has the pointer attribute and the corresponding DATA " "value is not a valid initial-data-target" msgstr "" -#: fortran/resolve.c:16203 +#: fortran/resolve.c:16212 #, gcc-internal-format msgid "DATA element %qs at %L cannot have the ALLOCATABLE attribute" msgstr "" -#: fortran/resolve.c:16249 +#: fortran/resolve.c:16258 #, gcc-internal-format, gfc-internal-format msgid "Nonconstant array section at %L in DATA statement" msgstr "" -#: fortran/resolve.c:16262 +#: fortran/resolve.c:16271 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %L has more variables than values" msgstr "" -#: fortran/resolve.c:16361 +#: fortran/resolve.c:16370 #, gcc-internal-format, gfc-internal-format msgid "" "start of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.c:16369 +#: fortran/resolve.c:16378 #, gcc-internal-format, gfc-internal-format msgid "" "end of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.c:16377 +#: fortran/resolve.c:16386 #, gcc-internal-format, gfc-internal-format msgid "" "step of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.c:16384 +#: fortran/resolve.c:16393 #, gcc-internal-format, gfc-internal-format msgid "step of implied-do loop at %L shall not be zero" msgstr "" -#: fortran/resolve.c:16509 +#: fortran/resolve.c:16518 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %L has more values than variables" msgstr "" -#: fortran/resolve.c:16675 +#: fortran/resolve.c:16684 #, gcc-internal-format, gfc-internal-format msgid "Label %d at %L defined but not used" msgstr "" -#: fortran/resolve.c:16681 +#: fortran/resolve.c:16690 #, gcc-internal-format, gfc-internal-format msgid "Label %d at %L defined but cannot be used" msgstr "" -#: fortran/resolve.c:16765 +#: fortran/resolve.c:16774 #, gcc-internal-format msgid "" "Derived type variable %qs at %L must have SEQUENCE attribute to be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16774 +#: fortran/resolve.c:16783 #, gcc-internal-format msgid "" "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16782 +#: fortran/resolve.c:16791 #, gcc-internal-format msgid "" "Derived type variable %qs at %L with default initialization cannot be in " "EQUIVALENCE with a variable in COMMON" msgstr "" -#: fortran/resolve.c:16798 +#: fortran/resolve.c:16807 #, gcc-internal-format msgid "" "Derived type variable %qs at %L with pointer component(s) cannot be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16901 +#: fortran/resolve.c:16910 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.c:16916 +#: fortran/resolve.c:16925 #, gcc-internal-format, gfc-internal-format msgid "" "Either all or none of the objects in the EQUIVALENCE set at %L shall have " "the PROTECTED attribute" msgstr "" -#: fortran/resolve.c:16941 +#: fortran/resolve.c:16950 #, gcc-internal-format msgid "" "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure " "procedure %qs" msgstr "" -#: fortran/resolve.c:16950 +#: fortran/resolve.c:16959 #, gcc-internal-format msgid "Named constant %qs at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:17023 +#: fortran/resolve.c:17032 #, gcc-internal-format msgid "" "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:17034 +#: fortran/resolve.c:17043 #, gcc-internal-format msgid "Structure component %qs at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:17045 +#: fortran/resolve.c:17054 #, gcc-internal-format, gfc-internal-format msgid "Substring at %L has length zero" msgstr "" -#: fortran/resolve.c:17076 +#: fortran/resolve.c:17085 #, gcc-internal-format msgid "Self reference in character length expression for %qs at %L" msgstr "" -#: fortran/resolve.c:17143 +#: fortran/resolve.c:17152 #, gcc-internal-format msgid "PUBLIC function %qs at %L of PRIVATE type %qs" msgstr "" -#: fortran/resolve.c:17156 +#: fortran/resolve.c:17165 #, gcc-internal-format msgid "ENTRY %qs at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.c:17176 +#: fortran/resolve.c:17185 #, gcc-internal-format msgid "User operator procedure %qs at %L must be a FUNCTION" msgstr "" -#: fortran/resolve.c:17186 +#: fortran/resolve.c:17195 #, gcc-internal-format msgid "User operator procedure %qs at %L cannot be assumed character length" msgstr "" -#: fortran/resolve.c:17194 +#: fortran/resolve.c:17203 #, gcc-internal-format msgid "User operator procedure %qs at %L must have at least one argument" msgstr "" -#: fortran/resolve.c:17208 +#: fortran/resolve.c:17217 #, gcc-internal-format, gfc-internal-format msgid "First argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.c:17226 +#: fortran/resolve.c:17235 #, gcc-internal-format, gfc-internal-format msgid "Second argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.c:17233 +#: fortran/resolve.c:17242 #, gcc-internal-format, gfc-internal-format msgid "Operator interface at %L must have, at most, two arguments" msgstr "" -#: fortran/resolve.c:17312 +#: fortran/resolve.c:17321 #, gcc-internal-format msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE" msgstr "" @@ -76176,19 +76243,19 @@ msgstr "" #. Problems occur when we get something like #. integer :: a(lots) = (/(i, i=1, lots)/) -#: fortran/trans-array.c:6171 +#: fortran/trans-array.c:6138 #, gcc-internal-format msgid "" "The number of elements in the array constructor at %L requires an increase " "of the allowed %d upper limit. See %<-fmax-array-constructor%> option" msgstr "" -#: fortran/trans-array.c:8204 +#: fortran/trans-array.c:8171 #, gcc-internal-format msgid "Creating array temporary at %L for argument %qs" msgstr "" -#: fortran/trans-array.c:11392 +#: fortran/trans-array.c:11360 #, gcc-internal-format, gfc-internal-format msgid "bad expression type during walk (%d)" msgstr "" @@ -76297,113 +76364,113 @@ msgid "" "code to use an ALLOCATABLE array." msgstr "" -#: fortran/trans-decl.c:1763 +#: fortran/trans-decl.c:1764 #, gcc-internal-format msgid "intrinsic variable which isn't a procedure" msgstr "" -#: fortran/trans-decl.c:4594 fortran/trans-decl.c:6958 +#: fortran/trans-decl.c:4599 fortran/trans-decl.c:6963 #, gcc-internal-format msgid "Return value of function %qs at %L not set" msgstr "" -#: fortran/trans-decl.c:5082 +#: fortran/trans-decl.c:5087 #, gcc-internal-format msgid "Deferred type parameter not yet supported" msgstr "" -#: fortran/trans-decl.c:5322 +#: fortran/trans-decl.c:5327 #, gcc-internal-format msgid "backend decl for module variable %qs already exists" msgstr "" -#: fortran/trans-decl.c:5335 +#: fortran/trans-decl.c:5340 #, gcc-internal-format msgid "Unused PRIVATE module variable %qs declared at %L" msgstr "" -#: fortran/trans-decl.c:5960 +#: fortran/trans-decl.c:5965 #, gcc-internal-format msgid "Dummy argument %qs at %L was declared INTENT(OUT) but was not set" msgstr "" -#: fortran/trans-decl.c:5966 +#: fortran/trans-decl.c:5971 #, gcc-internal-format msgid "" "Derived-type dummy argument %qs at %L was declared INTENT(OUT) but was not " "set and does not have a default initializer" msgstr "" -#: fortran/trans-decl.c:5977 fortran/trans-decl.c:6123 +#: fortran/trans-decl.c:5982 fortran/trans-decl.c:6128 #, gcc-internal-format msgid "Unused dummy argument %qs at %L" msgstr "" -#: fortran/trans-decl.c:5993 +#: fortran/trans-decl.c:5998 #, gcc-internal-format msgid "Unused module variable %qs which has been explicitly imported at %L" msgstr "" -#: fortran/trans-decl.c:6012 +#: fortran/trans-decl.c:6017 #, gcc-internal-format msgid "Unused variable %qs declared at %L" msgstr "" -#: fortran/trans-decl.c:6061 +#: fortran/trans-decl.c:6066 #, gcc-internal-format msgid "Unused parameter %qs declared at %L" msgstr "" -#: fortran/trans-decl.c:6065 +#: fortran/trans-decl.c:6070 #, gcc-internal-format msgid "Unused parameter %qs which has been explicitly imported at %L" msgstr "" -#: fortran/trans-decl.c:6095 +#: fortran/trans-decl.c:6100 #, gcc-internal-format msgid "Return value %qs of function %qs declared at %L not set" msgstr "" -#: fortran/trans-decl.c:6687 +#: fortran/trans-decl.c:6692 #, gcc-internal-format, gfc-internal-format msgid "Sorry, !$ACC DECLARE at %L is not allowed in BLOCK construct" msgstr "" -#: fortran/trans-expr.c:1030 +#: fortran/trans-expr.c:1067 #, gcc-internal-format, gfc-internal-format msgid "Cannot compute the length of the char array at %L." msgstr "" -#: fortran/trans-expr.c:1798 +#: fortran/trans-expr.c:1835 #, gcc-internal-format, gfc-internal-format msgid "Code for reallocating the allocatable variable at %L will be added" msgstr "" -#: fortran/trans-expr.c:2115 +#: fortran/trans-expr.c:2152 #, gcc-internal-format, gfc-internal-format msgid "" "Sorry, coindexed access to an unlimited polymorphic object at %L is not " "supported" msgstr "" -#: fortran/trans-expr.c:2124 +#: fortran/trans-expr.c:2161 #, gcc-internal-format, gfc-internal-format msgid "" "Sorry, coindexed access to an unlimited polymorphic component at %L is not " "supported" msgstr "" -#: fortran/trans-expr.c:3793 +#: fortran/trans-expr.c:3830 #, gcc-internal-format msgid "Unknown intrinsic op" msgstr "" -#: fortran/trans-expr.c:5292 +#: fortran/trans-expr.c:5329 #, gcc-internal-format, gfc-internal-format msgid "Unknown argument list function at %L" msgstr "" -#: fortran/trans-expr.c:9511 +#: fortran/trans-expr.c:9560 #, gcc-internal-format, gfc-internal-format msgid "" "If bounds remapping is specified at %L, the pointer target shall not be NULL" @@ -76555,7 +76622,7 @@ msgstr "" msgid "gfc_validate_kind(): Got bad kind" msgstr "" -#: fortran/trans.c:2220 +#: fortran/trans.c:2230 #, gcc-internal-format msgid "gfc_trans_code(): Bad statement code" msgstr "" @@ -76682,7 +76749,7 @@ msgstr "" #: lto/lto-lang.c:898 #, gcc-internal-format -msgid "%<-flinker-output=rel%> and %<-fltrans%> are mutually exclussive" +msgid "%<-flinker-output=rel%> and %<-fltrans%> are mutually exclusive" msgstr "" #: lto/lto-object.c:107 @@ -77807,7 +77874,7 @@ msgstr "" msgid "Unrecognized option to floating-point init value: %qs" msgstr "" -#: fortran/lang.opt:775 +#: fortran/lang.opt:771 #, gcc-internal-format msgid "Unrecognized option: %qs" msgstr "" @@ -77825,15 +77892,15 @@ msgstr "" #: c-family/c.opt:70 c-family/c.opt:73 c-family/c.opt:76 c-family/c.opt:79 #: c-family/c.opt:175 c-family/c.opt:178 c-family/c.opt:220 c-family/c.opt:224 -#: c-family/c.opt:236 c-family/c.opt:2120 c-family/c.opt:2128 brig/lang.opt:44 -#: config/darwin.opt:30 common.opt:324 common.opt:327 common.opt:3319 +#: c-family/c.opt:236 c-family/c.opt:2107 c-family/c.opt:2115 brig/lang.opt:44 +#: config/darwin.opt:30 common.opt:324 common.opt:327 common.opt:3323 #, gcc-internal-format msgid "missing filename after %qs" msgstr "" #: c-family/c.opt:85 c-family/c.opt:88 c-family/c.opt:91 c-family/c.opt:94 -#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:2116 -#: c-family/c.opt:2136 c-family/c.opt:2140 c-family/c.opt:2144 +#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:2103 +#: c-family/c.opt:2123 c-family/c.opt:2127 c-family/c.opt:2131 #, gcc-internal-format msgid "missing path after %qs" msgstr "" @@ -77885,7 +77952,7 @@ msgstr "" msgid "unrecognized ivar visibility value %qs" msgstr "" -#: c-family/c.opt:1980 +#: c-family/c.opt:1967 #, gcc-internal-format msgid "unrecognized scalar storage order value %qs" msgstr "" @@ -77970,93 +78037,93 @@ msgstr "" msgid "unknown linker output %qs" msgstr "" -#: common.opt:1502 +#: common.opt:1506 #, gcc-internal-format msgid "unknown excess precision style %qs" msgstr "" -#: common.opt:1517 +#: common.opt:1521 #, gcc-internal-format msgid "" "unknown specification for the set of FLT_EVAL_METHOD values to permit %qs" msgstr "" -#: common.opt:1561 +#: common.opt:1565 #, gcc-internal-format msgid "unknown floating point contraction style %qs" msgstr "" -#: common.opt:1718 +#: common.opt:1722 #, gcc-internal-format msgid "unknown Stack Reuse Level %qs" msgstr "" -#: common.opt:1787 +#: common.opt:1791 #, gcc-internal-format msgid "unknown Control-Flow Protection Level %qs" msgstr "" -#: common.opt:1889 +#: common.opt:1893 #, gcc-internal-format msgid "unknown IRA algorithm %qs" msgstr "" -#: common.opt:1902 +#: common.opt:1906 #, gcc-internal-format msgid "unknown IRA region %qs" msgstr "" -#: common.opt:1980 +#: common.opt:1984 #, gcc-internal-format msgid "unknown LTO partitioning model %qs" msgstr "" -#: common.opt:2082 +#: common.opt:2086 #, gcc-internal-format msgid "options or targets missing after %qs" msgstr "" -#: common.opt:2090 +#: common.opt:2094 #, gcc-internal-format msgid "unknown offload ABI %qs" msgstr "" -#: common.opt:2232 +#: common.opt:2236 #, gcc-internal-format msgid "unknown profile reproducibility method %qs" msgstr "" -#: common.opt:2248 +#: common.opt:2252 #, gcc-internal-format msgid "unknown profile update method %qs" msgstr "" -#: common.opt:2350 +#: common.opt:2354 #, gcc-internal-format msgid "unknown Live-Patching Level %qs" msgstr "" -#: common.opt:2383 +#: common.opt:2387 #, gcc-internal-format msgid "unknown basic block reordering algorithm %qs" msgstr "" -#: common.opt:2690 +#: common.opt:2694 #, gcc-internal-format msgid "unknown TLS model %qs" msgstr "" -#: common.opt:3026 +#: common.opt:3030 #, gcc-internal-format msgid "unknown vectorizer cost model %qs" msgstr "" -#: common.opt:3067 +#: common.opt:3071 #, gcc-internal-format msgid "unrecognized visibility value %qs" msgstr "" -#: common.opt:3086 +#: common.opt:3090 #, gcc-internal-format msgid "unknown vtable verify initialization priority %qs" msgstr "" diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 29c90df..d7e47c1 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,83 @@ +2021-04-21 David Edelsohn <dje.gcc@gmail.com> + + * gfortran.dg/bind_c_array_params_2.f90: Look for AIX-specific call + pattern. + +2021-04-21 Marek Polacek <polacek@redhat.com> + + PR c++/96380 + * g++.dg/cpp0x/enum_base4.C: New test. + * g++.dg/cpp0x/enum_base5.C: New test. + +2021-04-21 Alex Coplan <alex.coplan@arm.com> + + PR target/99988 + * gcc.target/aarch64/pr99988.c: New test. + +2021-04-21 Jakub Jelinek <jakub@redhat.com> + + * g++.dg/cpp1z/constexpr-lambda26.C: Add dg-additional-options + -fchecking. + * g++.dg/cpp1y/auto-fn61.C: Likewise. + * g++.dg/cpp2a/nontype-class39.C: Likewise. + * g++.dg/cpp0x/constexpr-52830.C: Likewise. + * g++.dg/cpp0x/vt-88982.C: Likewise. + * c-c++-common/goacc/kernels-decompose-ice-1.c: Add -fchecking to + dg-additional-options. + * c-c++-common/goacc/kernels-decompose-ice-2.c: Likewise. + +2021-04-21 H.J. Lu <hjl.tools@gmail.com> + + * gcc.target/i386/monitor-2.c: New test. + +2021-04-21 Richard Biener <rguenther@suse.de> + + PR testsuite/100176 + * g++.dg/compat/struct-layout-1_generate.c: Add missing return. + * gcc.dg/compat/struct-layout-1_generate.c: Likewise. + +2021-04-21 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/100148 + * g++.dg/opt/pr100148.C: New test. + +2021-04-21 Tobias Burnus <tobias@codesourcery.com> + + * gfortran.dg/gomp/depobj-1.f90: New test. + * gfortran.dg/gomp/depobj-2.f90: New test. + +2021-04-21 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * gcc.dg/vect/pr71264.c: Xfail on IBM Z due to V4QImode support. + +2021-04-21 Richard Sandiford <richard.sandiford@arm.com> + + PR middle-end/100130 + * c-c++-common/attr-retain-10.c: New test. + * c-c++-common/attr-retain-11.c: Likewise. + +2021-04-21 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * gcc.dg/vect/bb-slp-39.c: Change number of times the pattern + must match for target IBM Z only. + +2021-04-20 Jason Merrill <jason@redhat.com> + + PR c++/100109 + * g++.dg/cpp0x/lambda/lambda-variadic14.C: New test. + +2021-04-20 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> + + * gcc.target/s390/zero-scratch-regs-1.c: Force test to run for + z/Architecture only. + +2021-04-20 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/100110 + * gfortran.dg/pdt_31.f03: New test. + * gfortran.dg/pdt_26.f03: Reduce 'builtin_malloc' count from 9 + to 8. + 2021-04-19 Marek Polacek <polacek@redhat.com> PR c++/97536 diff --git a/gcc/testsuite/c-c++-common/attr-retain-10.c b/gcc/testsuite/c-c++-common/attr-retain-10.c new file mode 100644 index 0000000..0bac947 --- /dev/null +++ b/gcc/testsuite/c-c++-common/attr-retain-10.c @@ -0,0 +1,11 @@ +/* { dg-do compile { target R_flag_in_section } } */ +/* { dg-skip-if "non-ELF target" { *-*-darwin* powerpc*-*-aix* } } */ +/* { dg-options "-Wall -O2 -fno-toplevel-reorder" } */ + +int __attribute__((used,retain,section(".data.foo"))) foo2 = 2; +int between = 1; +int __attribute__((section(".data.foo"))) foo1 = 1; +/* { dg-warning "'.*' without 'retain' attribute and '.*' with 'retain' attribute are placed in a section with the same name" "" { target R_flag_in_section } .-1 } */ + +/* { dg-final { scan-assembler ".data.foo,\"aw\"" { target R_flag_in_section } } } */ +/* { dg-final { scan-assembler ".data.foo,\"awR\"" { target R_flag_in_section } } } */ diff --git a/gcc/testsuite/c-c++-common/attr-retain-11.c b/gcc/testsuite/c-c++-common/attr-retain-11.c new file mode 100644 index 0000000..d1d3d9e --- /dev/null +++ b/gcc/testsuite/c-c++-common/attr-retain-11.c @@ -0,0 +1,11 @@ +/* { dg-do compile { target R_flag_in_section } } */ +/* { dg-skip-if "non-ELF target" { *-*-darwin* powerpc*-*-aix* } } */ +/* { dg-options "-Wall -O2 -fno-toplevel-reorder" } */ + +int __attribute__((section(".data.foo"))) foo1 = 1; +/* { dg-warning "'.*' without 'retain' attribute and '.*' with 'retain' attribute are placed in a section with the same name" "" { target R_flag_in_section } .-1 } */ +int between = 1; +int __attribute__((used,retain,section(".data.foo"))) foo2 = 2; + +/* { dg-final { scan-assembler ".data.foo,\"aw\"" { target R_flag_in_section } } } */ +/* { dg-final { scan-assembler ".data.foo,\"awR\"" { target R_flag_in_section } } } */ diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-1.c b/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-1.c index d770b91d..8c3884b 100644 --- a/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-1.c +++ b/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-1.c @@ -1,7 +1,7 @@ /* Test OpenACC 'kernels' construct decomposition. */ /* { dg-additional-options "-fopt-info-omp-all" } */ -/* { dg-additional-options "--param=openacc-kernels=decompose" } */ +/* { dg-additional-options "-fchecking --param=openacc-kernels=decompose" } */ /* { dg-ice "TODO" } { dg-prune-output "during GIMPLE pass: omplower" } */ diff --git a/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-2.c b/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-2.c index ae059eb..8bf60a9 100644 --- a/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-2.c +++ b/gcc/testsuite/c-c++-common/goacc/kernels-decompose-ice-2.c @@ -1,6 +1,6 @@ /* Test OpenACC 'kernels' construct decomposition. */ -/* { dg-additional-options "--param=openacc-kernels=decompose" } */ +/* { dg-additional-options "-fchecking --param=openacc-kernels=decompose" } */ /* { dg-ice "TODO" } { dg-prune-output "during GIMPLE pass: omplower" } */ diff --git a/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c b/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c index 990e6f4..e9ece64 100644 --- a/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c +++ b/gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c @@ -983,6 +983,8 @@ subvalues (struct entry *e, char *p, char *letter) if (e[0].len != 0) output_FNB ('B', e); return 1; + default: + return 0; } } diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-52830.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-52830.C index 2c9d2f9..eae0d8c 100644 --- a/gcc/testsuite/g++.dg/cpp0x/constexpr-52830.C +++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-52830.C @@ -1,5 +1,6 @@ // PR c++/52830 // { dg-do compile { target c++11 } } +// { dg-additional-options "-fchecking" } // { dg-ice "comptypes" } template<bool b> struct eif { typedef void type; }; diff --git a/gcc/testsuite/g++.dg/cpp0x/enum_base4.C b/gcc/testsuite/g++.dg/cpp0x/enum_base4.C new file mode 100644 index 0000000..b301525 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/enum_base4.C @@ -0,0 +1,8 @@ +// PR c++/96380 +// { dg-do compile { target c++11 } } + +extern const int a, b; +enum struct c; +template <class> +enum struct c : union enum struct c { e = b, f = a }; // { dg-error "types may not be defined|expected|elaborated-type-specifier" } +enum class c {}; diff --git a/gcc/testsuite/g++.dg/cpp0x/enum_base5.C b/gcc/testsuite/g++.dg/cpp0x/enum_base5.C new file mode 100644 index 0000000..c01e857 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/enum_base5.C @@ -0,0 +1,7 @@ +// PR c++/96380 +// { dg-do compile { target c++11 } } + +extern const int a, b; +enum struct c; +template <class> +enum struct c : union enum struct c { e = b, f = a }; // { dg-error "types may not be defined|expected|elaborated-type-specifier" } diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic14.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic14.C new file mode 100644 index 0000000..185aa03 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic14.C @@ -0,0 +1,8 @@ +// PR c++/100109 +// { dg-do compile { target c++11 } } + +template <int... E> +void f() { + [] { enum e { e = E }; }; // { dg-error "not expanded" } +} +template void f<>(); diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-88982.C b/gcc/testsuite/g++.dg/cpp0x/vt-88982.C index cb9530d..7a86823 100644 --- a/gcc/testsuite/g++.dg/cpp0x/vt-88982.C +++ b/gcc/testsuite/g++.dg/cpp0x/vt-88982.C @@ -1,5 +1,6 @@ // PR c++/88982 // { dg-do compile { target c++11 } } +// { dg-additional-options "-fchecking" } // { dg-ice "tsubst_pack_expansion" } template<typename...Ts> struct A { diff --git a/gcc/testsuite/g++.dg/cpp1y/auto-fn61.C b/gcc/testsuite/g++.dg/cpp1y/auto-fn61.C index c24c3b8..bed5ea0 100644 --- a/gcc/testsuite/g++.dg/cpp1y/auto-fn61.C +++ b/gcc/testsuite/g++.dg/cpp1y/auto-fn61.C @@ -1,5 +1,6 @@ // PR c++/88003 // { dg-do compile { target c++14 } } +// { dg-additional-options "-fchecking" } // { dg-ice "poplevel_class" } auto test() { diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda26.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda26.C index d6c8bae..0cdb400 100644 --- a/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda26.C +++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-lambda26.C @@ -1,5 +1,6 @@ // PR c++/87765 // { dg-do compile { target c++17 } } +// { dg-additional-options "-fchecking" } // { dg-ice "cxx_eval_constant_expression" } template <int N> diff --git a/gcc/testsuite/g++.dg/cpp2a/nontype-class39.C b/gcc/testsuite/g++.dg/cpp2a/nontype-class39.C index f5f79a7..512afad 100644 --- a/gcc/testsuite/g++.dg/cpp2a/nontype-class39.C +++ b/gcc/testsuite/g++.dg/cpp2a/nontype-class39.C @@ -1,5 +1,6 @@ // PR c++/89565 // { dg-do compile { target c++20 } } +// { dg-additional-options "-fchecking" } // { dg-ice "resolve_args" } template <auto> diff --git a/gcc/testsuite/g++.dg/opt/pr100148.C b/gcc/testsuite/g++.dg/opt/pr100148.C new file mode 100644 index 0000000..d038879 --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/pr100148.C @@ -0,0 +1,27 @@ +// PR rtl-optimization/100148 +// { dg-do compile } +// { dg-options "-O2 -fno-dce -fno-tree-dce -fno-tree-dominator-opts -fno-tree-sink -fcompare-debug" } + +int i; +enum E { } e, ee; + +bool +baz (int) +{ + return ee; +} + +bool bar (); +bool a, b; + +void +foo () +{ + switch (ee) + { + case 0: + e = E (a ? : i); + case 1: + !(b || baz (0) && bar ()); + } +} diff --git a/gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c b/gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c index 75e902c..35dff89 100644 --- a/gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c +++ b/gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c @@ -1280,6 +1280,8 @@ subvalues (struct entry *e, char *p, char *letter) if (e[0].len != 0) output_FNB ('B', e); return 1; + default: + return 0; } } diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-39.c b/gcc/testsuite/gcc.dg/vect/bb-slp-39.c index 255bb10..ee596cf 100644 --- a/gcc/testsuite/gcc.dg/vect/bb-slp-39.c +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-39.c @@ -16,4 +16,5 @@ void foo (double *p) } /* See that we vectorize three SLP instances. */ -/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 3 "slp2" } } */ +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 3 "slp2" { target { ! s390*-*-* } } } } */ +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 5 "slp2" { target { s390*-*-* } } } } */ diff --git a/gcc/testsuite/gcc.dg/vect/pr71264.c b/gcc/testsuite/gcc.dg/vect/pr71264.c index 5f6407a..dc849bf 100644 --- a/gcc/testsuite/gcc.dg/vect/pr71264.c +++ b/gcc/testsuite/gcc.dg/vect/pr71264.c @@ -19,5 +19,5 @@ void test(uint8_t *ptr, uint8_t *mask) } } -/* { dg-final { scan-tree-dump "vectorized 1 loops in function" "vect" { xfail sparc*-*-* } } } */ +/* { dg-final { scan-tree-dump "vectorized 1 loops in function" "vect" { xfail s390*-*-* sparc*-*-* } } } */ diff --git a/gcc/testsuite/gcc.target/aarch64/pr99988.c b/gcc/testsuite/gcc.target/aarch64/pr99988.c new file mode 100644 index 0000000..2d87f41 --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/pr99988.c @@ -0,0 +1,66 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -mbranch-protection=standard" } */ +/* { dg-final { scan-assembler-times {bti j} 13 } } */ +int a; +int c(); +int d(); +int e(); +int f(); +int g(); +void h() { + switch (a) { + case 0: + case 56: + case 57: + break; + case 58: + case 59: + case 61: + case 62: + c(); + case 64: + case 63: + d(); + case 66: + case 65: + d(); + case 68: + case 67: + d(); + case 69: + case 70: + d(); + case 71: + case 72: + case 88: + case 87: + d(); + case 90: + case 89: + d(); + case 92: + case 1: + d(); + case 93: + case 73: + case 4: + e(); + case 76: + case 5: + f(); + case 7: + case 8: + case 84: + case 85: + break; + case 6: + case 299: + case 9: + case 80: + case 2: + case 3: + e(); + default: + g(); + } +} diff --git a/gcc/testsuite/gcc.target/i386/monitor-2.c b/gcc/testsuite/gcc.target/i386/monitor-2.c new file mode 100644 index 0000000..96eeec0 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/monitor-2.c @@ -0,0 +1,27 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -mmwait -mgeneral-regs-only" } */ + +/* Verify that they work in both 32bit and 64bit. */ + +#include <x86gprintrin.h> + +void +foo (char *p, int x, int y, int z) +{ + _mm_monitor (p, y, x); + _mm_mwait (z, y); +} + +void +bar (char *p, long x, long y, long z) +{ + _mm_monitor (p, y, x); + _mm_mwait (z, y); +} + +void +foo1 (char *p) +{ + _mm_monitor (p, 0, 0); + _mm_mwait (0, 0); +} diff --git a/gcc/testsuite/gcc.target/s390/zero-scratch-regs-1.c b/gcc/testsuite/gcc.target/s390/zero-scratch-regs-1.c index c394c4b..1c02c0c 100644 --- a/gcc/testsuite/gcc.target/s390/zero-scratch-regs-1.c +++ b/gcc/testsuite/gcc.target/s390/zero-scratch-regs-1.c @@ -1,65 +1,50 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -fzero-call-used-regs=all -march=z13" } */ +/* { dg-options "-O2 -fzero-call-used-regs=all -march=z13 -mzarch" } */ /* Ensure that all call clobbered GPRs, FPRs, and VRs are zeroed and all call saved registers are kept. */ void foo (void) { } -/* { dg-final { scan-assembler-times "lhi\t" 6 { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lhi\t%r0,0" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lhi\t%r1,0" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lhi\t%r2,0" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lhi\t%r3,0" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lhi\t%r4,0" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lhi\t%r5,0" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler-times "lghi\t" 6 } } */ +/* { dg-final { scan-assembler "lghi\t%r0,0" } } */ +/* { dg-final { scan-assembler "lghi\t%r1,0" } } */ +/* { dg-final { scan-assembler "lghi\t%r2,0" } } */ +/* { dg-final { scan-assembler "lghi\t%r3,0" } } */ +/* { dg-final { scan-assembler "lghi\t%r4,0" } } */ +/* { dg-final { scan-assembler "lghi\t%r5,0" } } */ -/* { dg-final { scan-assembler-times "lzdr\t" 14 { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f0" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f1" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f2" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f3" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f5" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f7" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f8" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f9" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f10" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f11" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f12" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f13" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f14" { target { ! lp64 } } } } */ -/* { dg-final { scan-assembler "lzdr\t%f15" { target { ! lp64 } } } } */ - -/* { dg-final { scan-assembler-times "lghi\t" 6 { target { lp64 } } } } */ -/* { dg-final { scan-assembler "lghi\t%r0,0" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "lghi\t%r1,0" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "lghi\t%r2,0" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "lghi\t%r3,0" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "lghi\t%r4,0" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "lghi\t%r5,0" { target { lp64 } } } } */ - -/* { dg-final { scan-assembler-times "vzero\t" 24 { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v0" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v1" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v2" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v3" { target { lp64 } } } } */ +/* { dg-final { scan-assembler-times "vzero\t" 30 { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler-times "vzero\t" 24 { target { lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v0" } } */ +/* { dg-final { scan-assembler "vzero\t%v1" } } */ +/* { dg-final { scan-assembler "vzero\t%v2" } } */ +/* { dg-final { scan-assembler "vzero\t%v3" } } */ /* { dg-final { scan-assembler "vzero\t%v4" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v5" { target { lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v5" } } */ /* { dg-final { scan-assembler "vzero\t%v6" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v7" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v16" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v17" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v18" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v19" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v20" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v21" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v22" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v23" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v24" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v25" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v26" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v27" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v28" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v29" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v30" { target { lp64 } } } } */ -/* { dg-final { scan-assembler "vzero\t%v31" { target { lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v7" } } */ +/* { dg-final { scan-assembler "vzero\t%v8" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v9" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v10" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v11" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v12" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v13" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v14" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v15" { target { ! lp64 } } } } */ +/* { dg-final { scan-assembler "vzero\t%v16" } } */ +/* { dg-final { scan-assembler "vzero\t%v17" } } */ +/* { dg-final { scan-assembler "vzero\t%v18" } } */ +/* { dg-final { scan-assembler "vzero\t%v19" } } */ +/* { dg-final { scan-assembler "vzero\t%v20" } } */ +/* { dg-final { scan-assembler "vzero\t%v21" } } */ +/* { dg-final { scan-assembler "vzero\t%v22" } } */ +/* { dg-final { scan-assembler "vzero\t%v23" } } */ +/* { dg-final { scan-assembler "vzero\t%v24" } } */ +/* { dg-final { scan-assembler "vzero\t%v25" } } */ +/* { dg-final { scan-assembler "vzero\t%v26" } } */ +/* { dg-final { scan-assembler "vzero\t%v27" } } */ +/* { dg-final { scan-assembler "vzero\t%v28" } } */ +/* { dg-final { scan-assembler "vzero\t%v29" } } */ +/* { dg-final { scan-assembler "vzero\t%v30" } } */ +/* { dg-final { scan-assembler "vzero\t%v31" } } */ diff --git a/gcc/testsuite/gfortran.dg/bind_c_array_params_2.f90 b/gcc/testsuite/gfortran.dg/bind_c_array_params_2.f90 index 4528d13..00628c1 100644 --- a/gcc/testsuite/gfortran.dg/bind_c_array_params_2.f90 +++ b/gcc/testsuite/gfortran.dg/bind_c_array_params_2.f90 @@ -16,9 +16,10 @@ integer :: aa(4,4) call test(aa) end -! { dg-final { scan-assembler-times "\[ \t\]\[$,_0-9\]*myBindC" 1 { target { ! { hppa*-*-* s390*-*-* *-*-cygwin* amdgcn*-*-* } } } } } +! { dg-final { scan-assembler-times "\[ \t\]\[$,_0-9\]*myBindC" 1 { target { ! { hppa*-*-* s390*-*-* *-*-cygwin* amdgcn*-*-* powerpc-ibm-aix*} } } } } ! { dg-final { scan-assembler-times "myBindC,%r2" 1 { target { hppa*-*-* } } } } ! { dg-final { scan-assembler-times "call\tmyBindC" 1 { target { *-*-cygwin* } } } } ! { dg-final { scan-assembler-times "brasl\t%r\[0-9\]*,myBindC" 1 { target { s390*-*-* } } } } +! { dg-final { scan-assembler-times "bl \.myBindC" 1 { target { powerpc-ibm-aix* } } } } ! { dg-final { scan-assembler-times "add_u32\t\[sv\]\[0-9\]*, \[sv\]\[0-9\]*, myBindC@rel32@lo" 1 { target { amdgcn*-*-* } } } } ! { dg-final { scan-tree-dump-times "cfi_desc_to_gfc_desc \\\(&parm\\." 1 "original" } } diff --git a/gcc/testsuite/gfortran.dg/gomp/depobj-1.f90 b/gcc/testsuite/gfortran.dg/gomp/depobj-1.f90 new file mode 100644 index 0000000..66cfb61 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/gomp/depobj-1.f90 @@ -0,0 +1,25 @@ +! { dg-do compile { target { fortran_integer_16 || ilp32 } } } +! omp_depend_kind = 2*intptr_t --> 16 (128 bit) on 64bit-pointer systems +! --> 8 (128 bit) on 32bit-pointer systems +subroutine f1 + !use omp_lib ! N/A in gcc/testsuite + use iso_c_binding, only: c_intptr_t + implicit none + integer, parameter :: omp_depend_kind = 2*c_intptr_t + integer :: a + integer(kind=omp_depend_kind) :: depobj1, depobj2, depobj3, depobj4, depobj5 + !$omp depobj(depobj1) depend (in : a) + !$omp depobj(depobj2) depend (out : a) + !$omp depobj(depobj3) depend( inout : a) + !$omp depobj(depobj4) depend(mutexinoutset: a) + !$omp depobj(depobj1) update(out) + !$omp depobj(depobj2) update(mutexinoutset) + !$omp depobj(depobj3) update(in) + !$omp depobj(depobj4) update(inout) + !$omp task depend (depobj: depobj1, depobj2, depobj3) + !$omp end task + + !$omp task depend(mutexinoutset: a) + !$omp end task + !$omp depobj(depobj2) destroy +end subroutine f1 diff --git a/gcc/testsuite/gfortran.dg/gomp/depobj-2.f90 b/gcc/testsuite/gfortran.dg/gomp/depobj-2.f90 new file mode 100644 index 0000000..3ffd3d5 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/gomp/depobj-2.f90 @@ -0,0 +1,33 @@ +! { dg-do compile { target { fortran_integer_16 || ilp32 } } } +! omp_depend_kind = 2*intptr_t --> 16 (128 bit) on 64bit-pointer systems +! --> 8 (128 bit) on 32bit-pointer systems +subroutine f1 + !use omp_lib ! N/A in gcc/testsuite + use iso_c_binding, only: c_intptr_t + implicit none + integer, parameter :: omp_depend_kind = 2*c_intptr_t + integer :: a, b + integer(kind=omp_depend_kind) :: depobj, depobj1(5) + real :: r + integer(1) :: d + + !$omp depobj ! { dg-error "Expected '\\( depobj \\)\'" } + !$omp depobj(depobj) ! { dg-error "Expected DEPEND, UPDATE, or DESTROY clause" } + !$omp depobj destroy ! { dg-error "Expected '\\( depobj \\)\'" } + !$omp depobj ( depobj1 ( 1 ) ) depend( inout : a) ! OK + !$omp depobj(depobj1) depend( inout : a) ! { dg-error "DEPOBJ in DEPOBJ construct at .1. shall be a scalar integer of OMP_DEPEND_KIND kind" } + !$omp depobj(depobj1(:)) depend( inout : a) ! { dg-error "DEPOBJ in DEPOBJ construct at .1. shall be a scalar integer of OMP_DEPEND_KIND kind" } + !$omp depobj(r) depend( inout : a) ! { dg-error "DEPOBJ in DEPOBJ construct at .1. shall be a scalar integer of OMP_DEPEND_KIND kind" } + !$omp depobj(d) depend( inout : a) ! { dg-error "DEPOBJ in DEPOBJ construct at .1. shall be a scalar integer of OMP_DEPEND_KIND kind" } + !$omp depobj(depobj) depend( inout : a, b) ! { dg-error "DEPEND clause at .1. of OMP DEPOBJ construct shall have only a single locator" } + !$omp depobj(depobj) depend(mutexinoutset : a) ! OK + !$omp depobj(depobj) depend(source) ! { dg-error "DEPEND clause at .1. of OMP DEPOBJ construct shall not have dependence-type SOURCE, SINK or DEPOBJ" } + !$omp depobj(depobj) depend(sink : i + 1) ! { dg-error "DEPEND clause at .1. of OMP DEPOBJ construct shall not have dependence-type SOURCE, SINK or DEPOBJ" } + !$omp depobj(depobj) update(source) ! { dg-error "Expected IN, OUT, INOUT, MUTEXINOUTSET followed by '\\)'" } + !$omp depobj(depobj) update(sink) ! { dg-error "Expected IN, OUT, INOUT, MUTEXINOUTSET followed by '\\)'" } + !$omp depobj(depobj) update(depobj) ! { dg-error "Expected IN, OUT, INOUT, MUTEXINOUTSET followed by '\\)'" } + + ! Valid in OpenMP 5.1: + !$omp depobj(depobj5) depend(depobj: depobj3) ! { dg-error "DEPEND clause at .1. of OMP DEPOBJ construct shall not have dependence-type SOURCE, SINK or DEPOBJ" } +end subroutine f1 + diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 4f63aa6..f985867 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -5564,37 +5564,29 @@ gimple_verify_flow_info (void) label = gimple_label_label (as_a <glabel *> (stmt)); if (prev_stmt && DECL_NONLOCAL (label)) { - error ("nonlocal label "); - print_generic_expr (stderr, label); - fprintf (stderr, " is not first in a sequence of labels in bb %d", - bb->index); + error ("nonlocal label %qD is not first in a sequence " + "of labels in bb %d", label, bb->index); err = 1; } if (prev_stmt && EH_LANDING_PAD_NR (label) != 0) { - error ("EH landing pad label "); - print_generic_expr (stderr, label); - fprintf (stderr, " is not first in a sequence of labels in bb %d", - bb->index); + error ("EH landing pad label %qD is not first in a sequence " + "of labels in bb %d", label, bb->index); err = 1; } if (label_to_block (cfun, label) != bb) { - error ("label "); - print_generic_expr (stderr, label); - fprintf (stderr, " to block does not match in bb %d", - bb->index); + error ("label %qD to block does not match in bb %d", + label, bb->index); err = 1; } if (decl_function_context (label) != current_function_decl) { - error ("label "); - print_generic_expr (stderr, label); - fprintf (stderr, " has incorrect context in bb %d", - bb->index); + error ("label %qD has incorrect context in bb %d", + label, bb->index); err = 1; } } @@ -5616,9 +5608,8 @@ gimple_verify_flow_info (void) if (glabel *label_stmt = dyn_cast <glabel *> (stmt)) { - error ("label "); - print_generic_expr (stderr, gimple_label_label (label_stmt)); - fprintf (stderr, " in the middle of basic block %d", bb->index); + error ("label %qD in the middle of basic block %d", + gimple_label_label (label_stmt), bb->index); err = 1; } } @@ -5538,9 +5538,11 @@ fld_simplified_type (tree t, class free_lang_data_d *fld) if (POINTER_TYPE_P (t)) return fld_incomplete_type_of (t, fld); /* FIXME: This triggers verification error, see PR88140. */ - if (TREE_CODE (t) == ARRAY_TYPE && 0) +#if 0 + if (TREE_CODE (t) == ARRAY_TYPE) return fld_process_array_type (t, fld_simplified_type (TREE_TYPE (t), fld), fld_simplified_types, fld); +#endif return t; } @@ -13451,7 +13453,7 @@ get_tree_code_name (enum tree_code code) invalid values, so force an unsigned comparison. */ if (unsigned (code) >= MAX_TREE_CODES) { - if (code == 0xa5a5) + if ((unsigned)code == 0xa5a5) return "ggc_freed"; return invalid; } @@ -14099,8 +14101,10 @@ verify_type_variant (const_tree t, tree tv) verify_variant_match (TREE_CODE); /* FIXME: Ada builds non-artificial variants of artificial types. */ - if (TYPE_ARTIFICIAL (tv) && 0) +#if 0 + if (TYPE_ARTIFICIAL (tv)) verify_variant_match (TYPE_ARTIFICIAL); +#endif if (POINTER_TYPE_P (tv)) verify_variant_match (TYPE_REF_CAN_ALIAS_ALL); /* FIXME: TYPE_SIZES_GIMPLIFIED may differs for Ada build. */ @@ -14113,8 +14117,10 @@ verify_type_variant (const_tree t, tree tv) else verify_variant_match (TYPE_SATURATING); /* FIXME: This check trigger during libstdc++ build. */ - if (RECORD_OR_UNION_TYPE_P (t) && COMPLETE_TYPE_P (t) && 0) +#if 0 + if (RECORD_OR_UNION_TYPE_P (t) && COMPLETE_TYPE_P (t)) verify_variant_match (TYPE_FINAL_P); +#endif /* tree_type_common checks. */ @@ -14149,8 +14155,10 @@ verify_type_variant (const_tree t, tree tv) that may differ BY TYPE_CONTEXT that in turn may point to TRANSLATION_UNIT_DECL. Ada also builds variants of types with different TYPE_CONTEXT. */ - if ((!in_lto_p || !TYPE_FILE_SCOPE_P (t)) && 0) +#if 0 + if (!in_lto_p || !TYPE_FILE_SCOPE_P (t)) verify_variant_match (TYPE_CONTEXT); +#endif if (TREE_CODE (t) == ARRAY_TYPE || TREE_CODE (t) == INTEGER_TYPE) verify_variant_match (TYPE_STRING_FLAG); if (TREE_CODE (t) == RECORD_TYPE || TREE_CODE (t) == UNION_TYPE) diff --git a/gcc/varasm.c b/gcc/varasm.c index 8bb921f..3ecf9e0 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -1314,6 +1314,10 @@ get_block_for_decl (tree decl) if (SECTION_STYLE (sect) == SECTION_NOSWITCH) return NULL; + if (bool (lookup_attribute ("retain", DECL_ATTRIBUTES (decl))) + != bool (sect->common.flags & SECTION_RETAIN)) + return NULL; + return get_block_for_section (sect); } @@ -7758,33 +7762,33 @@ output_section_asm_op (const void *directive) void switch_to_section (section *new_section, tree decl) { - if (in_section == new_section) + bool retain_p; + if ((new_section->common.flags & SECTION_NAMED) + && decl != nullptr + && DECL_P (decl) + && ((retain_p = !!lookup_attribute ("retain", + DECL_ATTRIBUTES (decl))) + != !!(new_section->common.flags & SECTION_RETAIN))) { - bool retain_p; - if ((new_section->common.flags & SECTION_NAMED) - && decl != nullptr - && DECL_P (decl) - && ((retain_p = !!lookup_attribute ("retain", - DECL_ATTRIBUTES (decl))) - != !!(new_section->common.flags & SECTION_RETAIN))) - { - /* If the SECTION_RETAIN bit doesn't match, switch to a new - section. */ - tree used_decl, no_used_decl; + /* If the SECTION_RETAIN bit doesn't match, switch to a new + section. */ + tree used_decl, no_used_decl; - if (retain_p) - { - new_section->common.flags |= SECTION_RETAIN; - used_decl = decl; - no_used_decl = new_section->named.decl; - } - else - { - new_section->common.flags &= ~(SECTION_RETAIN - | SECTION_DECLARED); - used_decl = new_section->named.decl; - no_used_decl = decl; - } + if (retain_p) + { + new_section->common.flags |= SECTION_RETAIN; + used_decl = decl; + no_used_decl = new_section->named.decl; + } + else + { + new_section->common.flags &= ~(SECTION_RETAIN + | SECTION_DECLARED); + used_decl = new_section->named.decl; + no_used_decl = decl; + } + if (no_used_decl != used_decl) + { warning (OPT_Wattributes, "%+qD without %<retain%> attribute and %qD with " "%<retain%> attribute are placed in a section with " @@ -7792,9 +7796,9 @@ switch_to_section (section *new_section, tree decl) inform (DECL_SOURCE_LOCATION (used_decl), "%qD was declared here", used_decl); } - else - return; } + else if (in_section == new_section) + return; if (new_section->common.flags & SECTION_FORGET) in_section = NULL; @@ -8007,7 +8011,7 @@ output_object_block (struct object_block *block) && (strcmp (block->sect->named.name, ".vtable_map_vars") == 0)) handle_vtv_comdat_section (block->sect, block->sect->named.decl); else - switch_to_section (block->sect); + switch_to_section (block->sect, SYMBOL_REF_DECL ((*block->objects)[0])); gcc_checking_assert (!(block->sect->common.flags & SECTION_MERGE)); assemble_align (block->alignment); diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 7b939ad..10ad750 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,24 @@ +2021-04-21 Tobias Burnus <tobias@codesourcery.com> + + * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's + omp_depend_kind instead of defining it as 16. + +2021-04-21 Tobias Burnus <tobias@codesourcery.com> + + * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type): + New, based on check_effective_target_offload_target_nvptx. + (check_effective_target_offload_target_nvptx): Call it. + (check_effective_target_offload_target_amdgcn): New. + * testsuite/libgomp.c-c++-common/function-not-offloaded.c: + Require target offload_target_nvptx || offload_target_amdgcn. + * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise. + * testsuite/libgomp.c/pr86416-1.c: Likewise. + * testsuite/libgomp.c/pr86416-2.c: Likewise. + +2021-04-21 Tobias Burnus <tobias@codesourcery.com> + + * testsuite/libgomp.fortran/depobj-1.f90: New test. + 2021-04-19 Thomas Schwinge <thomas@codesourcery.com> * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c: diff --git a/libgomp/testsuite/lib/libgomp.exp b/libgomp/testsuite/lib/libgomp.exp index 14dcfdf..46cce9b 100644 --- a/libgomp/testsuite/lib/libgomp.exp +++ b/libgomp/testsuite/lib/libgomp.exp @@ -340,8 +340,10 @@ proc offload_target_to_openacc_device_type { offload_target } { } } -# Return 1 if compiling for offload target nvptx. -proc check_effective_target_offload_target_nvptx { } { +# Return 1 if compiling for the specified offload target +# Takes -foffload=... into account by checking OFFLOAD_TARGET_NAMES= +# in the -v compiler output. +proc libgomp_check_effective_target_offload_target { target_name } { # Consider all actual options, including the flags passed to # 'gcc-dg-runtest', or 'gfortran-dg-runtest' (see the 'libgomp.*/*.exp' # files; in particular, '-foffload', 'libgomp.oacc-*/*.exp'), which don't @@ -354,13 +356,23 @@ proc check_effective_target_offload_target_nvptx { } { set gcc_output [libgomp_target_compile "" "" "none" $options] if [regexp "(?n)^OFFLOAD_TARGET_NAMES=(.*)" $gcc_output dummy offload_targets] { verbose "compiling for offload targets: $offload_targets" - return [string match "*:nvptx*:*" ":$offload_targets:"] + return [string match "*:$target_name*:*" ":$offload_targets:"] } - verbose "not compiling for any offload targets" + verbose "not compiling for $target_name offload target" return 0 } +# Return 1 if compiling for offload target nvptx. +proc check_effective_target_offload_target_nvptx { } { + return [libgomp_check_effective_target_offload_target "nvptx"] +} + +# Return 1 if compiling for offload target amdgcn +proc check_effective_target_offload_target_amdgcn { } { + return [libgomp_check_effective_target_offload_target "amdgcn"] +} + # Return 1 if offload device is available. proc check_effective_target_offload_device { } { return [check_runtime_nocache offload_device_available_ { diff --git a/libgomp/testsuite/libgomp.c-c++-common/function-not-offloaded.c b/libgomp/testsuite/libgomp.c-c++-common/function-not-offloaded.c index 9e59ef8..bc1ae68 100644 --- a/libgomp/testsuite/libgomp.c-c++-common/function-not-offloaded.c +++ b/libgomp/testsuite/libgomp.c-c++-common/function-not-offloaded.c @@ -1,5 +1,5 @@ /* { dg-do link } */ -/* { dg-excess-errors "unresolved symbol foo, lto1, mkoffload and lto-wrapper fatal errors" { target offload_device_nonshared_as } } */ +/* { dg-excess-errors "unresolved symbol foo, lto1, mkoffload and lto-wrapper fatal errors" { target { offload_target_nvptx || offload_target_amdgcn } } } */ /* { dg-additional-sources "function-not-offloaded-aux.c" } */ #pragma omp declare target diff --git a/libgomp/testsuite/libgomp.c-c++-common/reduction-16.c b/libgomp/testsuite/libgomp.c-c++-common/reduction-16.c index e60fe36..0eea73b 100644 --- a/libgomp/testsuite/libgomp.c-c++-common/reduction-16.c +++ b/libgomp/testsuite/libgomp.c-c++-common/reduction-16.c @@ -1,5 +1,5 @@ /* { dg-do run } */ -/* { dg-additional-options "-foffload=-latomic" { target offload_target_nvptx } } */ +/* { dg-additional-options "-foffload=nvptx-none=-latomic" { target offload_target_nvptx } } */ #include <stdlib.h> diff --git a/libgomp/testsuite/libgomp.c-c++-common/variable-not-offloaded.c b/libgomp/testsuite/libgomp.c-c++-common/variable-not-offloaded.c index bc4b916..fe2a8b2 100644 --- a/libgomp/testsuite/libgomp.c-c++-common/variable-not-offloaded.c +++ b/libgomp/testsuite/libgomp.c-c++-common/variable-not-offloaded.c @@ -1,7 +1,7 @@ /* { dg-do link } */ -/* { dg-excess-errors "lto1, mkoffload and lto-wrapper fatal errors" { target offload_device_nonshared_as } } */ +/* { dg-excess-errors "lto1, mkoffload and lto-wrapper fatal errors" { target { offload_target_nvptx || offload_target_amdgcn } } } */ -int var; /* { dg-error "variable 'var' has been referenced in offloaded code but hasn't been marked to be included in the offloaded code" "" { target offload_device_nonshared_as } } */ +int var; /* { dg-error "variable 'var' has been referenced in offloaded code but hasn't been marked to be included in the offloaded code" "" { target { offload_target_nvptx || offload_target_amdgcn } } } */ #pragma omp declare target void __attribute__((noinline, noclone)) diff --git a/libgomp/testsuite/libgomp.c/pr86416-1.c b/libgomp/testsuite/libgomp.c/pr86416-1.c index ad9370f..6d38692 100644 --- a/libgomp/testsuite/libgomp.c/pr86416-1.c +++ b/libgomp/testsuite/libgomp.c/pr86416-1.c @@ -2,8 +2,8 @@ /* { dg-require-effective-target large_long_double } */ /* PR middle-end/86416 */ -/* { dg-error "bit-precision floating-point numbers unsupported .mode '.F'." "" { target offload_device } 0 } */ -/* { dg-excess-errors "Follow-up errors from mkoffload and lto-wrapper" { target offload_device } } */ +/* { dg-error "bit-precision floating-point numbers unsupported .mode '.F'." "" { target { offload_target_nvptx || offload_target_amdgcn } } 0 } */ +/* { dg-excess-errors "Follow-up errors from mkoffload and lto-wrapper" { target { offload_target_nvptx || offload_target_amdgcn } } } */ #include <stdlib.h> /* For abort. */ diff --git a/libgomp/testsuite/libgomp.c/pr86416-2.c b/libgomp/testsuite/libgomp.c/pr86416-2.c index ec45e40..cffeb3f 100644 --- a/libgomp/testsuite/libgomp.c/pr86416-2.c +++ b/libgomp/testsuite/libgomp.c/pr86416-2.c @@ -2,8 +2,8 @@ /* { dg-add-options __float128 } */ /* PR middle-end/86416 */ -/* { dg-error "bit-precision floating-point numbers unsupported .mode '.F'." "" { target offload_device } 0 } */ -/* { dg-excess-errors "Follow-up errors from mkoffload and lto-wrapper" { target offload_device } } */ +/* { dg-error "bit-precision floating-point numbers unsupported .mode '.F'." "" { target { offload_target_nvptx || offload_target_amdgcn } } 0 } */ +/* { dg-excess-errors "Follow-up errors from mkoffload and lto-wrapper" { target { offload_target_nvptx || offload_target_amdgcn } } } */ #include <stdlib.h> /* For abort. */ diff --git a/libgomp/testsuite/libgomp.fortran/depobj-1.f90 b/libgomp/testsuite/libgomp.fortran/depobj-1.f90 new file mode 100644 index 0000000..1e239bba --- /dev/null +++ b/libgomp/testsuite/libgomp.fortran/depobj-1.f90 @@ -0,0 +1,112 @@ +module m + use omp_lib, only: omp_depend_kind + implicit none (type, external) + integer :: xx + integer(omp_depend_kind) :: dd1, dd2 +contains + subroutine dep + integer :: x + integer(omp_depend_kind) :: d1, d2 + x = 1 + + !$omp depobj (d1) depend(in: x) + !$omp depobj (d2) depend(in: x) + !$omp depobj (d2) update(out) + !$omp parallel + !$omp single + !$omp task shared (x) depend(depobj: d2) + x = 2 + !$omp end task + !$omp task shared (x) depend(depobj: d1) + if (x /= 2) & + stop 1 + !$omp end task + !$omp end single + !$omp end parallel + !$omp depobj (d2) destroy + !$omp depobj (d1) destroy + end + + subroutine dep2 + integer, pointer :: x + integer(omp_depend_kind) :: d1, d2 + pointer :: d1 + allocate(d1, x) + call dep2i(d1, d2, x) + deallocate(d1) + contains + subroutine dep2i(d1, d2, x) + integer(omp_depend_kind) :: d1 + integer(omp_depend_kind), optional :: d2 + integer, pointer, optional :: x + pointer :: d1 + !$omp parallel + !$omp single + x = 1 + !$omp depobj (d1) depend(out: x) + !$omp depobj (d2) depend (in:x) + !$omp depobj(d2)update(in) + !$omp task shared (x) depend(depobj:d1) + x = 2 + !$omp end task + !$omp task shared (x) depend(depobj : d2) + if (x /= 2) & + stop 2 + !$omp end task + !$omp taskwait + !$omp depobj(d1)destroy + !$omp depobj(d2) destroy + !$omp end single + !$omp end parallel + end + end + + subroutine dep3 + integer :: x + integer(omp_depend_kind) :: d(2) + !$omp parallel + x = 1 + !$omp single + !$omp depobj(d(1)) depend(out:x) + !$omp depobj(d(2)) depend(in: x) + !$omp task shared (x) depend(depobj: d(1)) + x = 2 + !$omp end task + !$omp task shared (x) depend(depobj: d(2)) + if (x /= 2) & + stop 3 + !$omp end task + !$omp end single + !$omp end parallel + !$omp depobj(d(1)) destroy + !$omp depobj(d(2)) destroy + end + + subroutine antidep + xx = 1 + !$omp parallel + !$omp single + !$omp task shared(xx) depend(depobj:dd2) + if (xx /= 1) & + stop 4 + !$omp end task + !$omp task shared(xx) depend(depobj:dd1) + xx = 2 + !$omp end task + !$omp end single + !$omp end parallel + end +end module m + +program main + use m + implicit none (type, external) + call dep () + call dep2 () + call dep3 () + !$omp depobj (dd1) depend (inout: xx) + !$omp depobj (dd2) depend (in : xx) + call antidep () + !$omp depobj (dd2) destroy + !$omp depobj (dd1) destroy +end program main diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 92fb71b..4f2605c 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,9 @@ +2021-04-21 Andreas Schwab <schwab@linux-m68k.org> + + PR demangler/100177 + * rust-demangle.c (demangle_const_char): Properly print the + character value. + 2021-03-31 Patrick Palka <ppalka@redhat.com> PR c++/88115 diff --git a/libiberty/rust-demangle.c b/libiberty/rust-demangle.c index 6fd8f6a..449941b 100644 --- a/libiberty/rust-demangle.c +++ b/libiberty/rust-demangle.c @@ -1253,9 +1253,12 @@ demangle_const_char (struct rust_demangler *rdm) else if (value == '\n') PRINT ("\\n"); else if (value > ' ' && value < '~') - /* Rust also considers many non-ASCII codepoints to be printable, but - that logic is not easily ported to C. */ - print_str (rdm, (char *) &value, 1); + { + /* Rust also considers many non-ASCII codepoints to be printable, but + that logic is not easily ported to C. */ + char c = value; + print_str (rdm, &c, 1); + } else { PRINT ("\\u{"); diff --git a/libphobos/ChangeLog b/libphobos/ChangeLog index 56f7de5..a588ad2 100644 --- a/libphobos/ChangeLog +++ b/libphobos/ChangeLog @@ -1,3 +1,23 @@ +2021-04-21 Iain Buclaw <ibuclaw@gdcproject.org> + + * libdruntime/core/thread/osthread.d (callWithStackShell): Statically + generate PPC and PPC64 asm implementations, and conditionally remove + PPC register names on non-Darwin targets. + +2021-04-20 Iain Buclaw <ibuclaw@gdcproject.org> + + PR d/98584 + * libdruntime/gcc/deh.d (scanLSDA): Update calls to read_uleb128 and + read_encoded_value. + (actionTableLookup): Update calls to read_sleb128 and + read_encoded_value_with_base. + * libdruntime/gcc/unwind/pe.d (read_uleb128): Update signature. + (read_sleb128): Update signature. + (read_unaligned): New function. + (read_encoded_value_with_base): Update signature. Call read_unaligned + instead of unsafe pointer dereferencing. + (read_encoded_value): Update signature. + 2021-04-19 Iain Buclaw <ibuclaw@gdcproject.org> PR d/98494 diff --git a/libphobos/libdruntime/core/thread/osthread.d b/libphobos/libdruntime/core/thread/osthread.d index 31764e6..9fcd30e 100644 --- a/libphobos/libdruntime/core/thread/osthread.d +++ b/libphobos/libdruntime/core/thread/osthread.d @@ -1444,55 +1444,35 @@ in (fn) else version (PPC) { void*[19] regs = void; - asm pure nothrow @nogc - { - "stw r13, %0" : "=m" (regs[ 0]); - "stw r14, %0" : "=m" (regs[ 1]); - "stw r15, %0" : "=m" (regs[ 2]); - "stw r16, %0" : "=m" (regs[ 3]); - "stw r17, %0" : "=m" (regs[ 4]); - "stw r18, %0" : "=m" (regs[ 5]); - "stw r19, %0" : "=m" (regs[ 6]); - "stw r20, %0" : "=m" (regs[ 7]); - "stw r21, %0" : "=m" (regs[ 9]); - "stw r22, %0" : "=m" (regs[ 9]); - "stw r23, %0" : "=m" (regs[10]); - "stw r24, %0" : "=m" (regs[11]); - "stw r25, %0" : "=m" (regs[12]); - "stw r26, %0" : "=m" (regs[13]); - "stw r27, %0" : "=m" (regs[14]); - "stw r28, %0" : "=m" (regs[15]); - "stw r29, %0" : "=m" (regs[16]); - "stw r30, %0" : "=m" (regs[17]); - "stw r31, %0" : "=m" (regs[18]); - } + version (Darwin) + enum regname = "r"; + else + enum regname = ""; + static foreach (i; 0 .. regs.length) + {{ + enum int j = 13 + i; // source register + asm pure nothrow @nogc + { + "stw "~regname~j.stringof~", %0" : "=m" (regs[i]); + } + }} sp = cast(void*)®s[0]; } else version (PPC64) { void*[19] regs = void; - asm pure nothrow @nogc - { - "std r13, %0" : "=m" (regs[ 0]); - "std r14, %0" : "=m" (regs[ 1]); - "std r15, %0" : "=m" (regs[ 2]); - "std r16, %0" : "=m" (regs[ 3]); - "std r17, %0" : "=m" (regs[ 4]); - "std r18, %0" : "=m" (regs[ 5]); - "std r19, %0" : "=m" (regs[ 6]); - "std r20, %0" : "=m" (regs[ 7]); - "std r21, %0" : "=m" (regs[ 8]); - "std r22, %0" : "=m" (regs[ 9]); - "std r23, %0" : "=m" (regs[10]); - "std r24, %0" : "=m" (regs[11]); - "std r25, %0" : "=m" (regs[12]); - "std r26, %0" : "=m" (regs[13]); - "std r27, %0" : "=m" (regs[14]); - "std r28, %0" : "=m" (regs[15]); - "std r29, %0" : "=m" (regs[16]); - "std r30, %0" : "=m" (regs[17]); - "std r31, %0" : "=m" (regs[18]); - } + version (Darwin) + enum regname = "r"; + else + enum regname = ""; + static foreach (i; 0 .. regs.length) + {{ + enum int j = 13 + i; // source register + asm pure nothrow @nogc + { + "std "~regname~j.stringof~", %0" : "=m" (regs[i]); + } + }} sp = cast(void*)®s[0]; } else diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 7edf117..aeef1dc 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,185 @@ +2021-04-21 Thomas Rodgers <rodgert@twrodgers.com> + + * include/bits/semaphore_base.h: Always reload __old in + __atomic_semaphore::_S_do_try_acquire(). + * testsuite/30_threads/stop_token/stop_callback/destroy.cc: + re-enable testcase. + +2021-04-21 Philippe Blain <levraiphilippeblain@gmail.com> + Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/99453 + * python/Makefile.am: Install libstdc++*-gdb.py more robustly. + * python/Makefile.in: Regenerate. + +2021-04-21 Thomas Rodgers <rodgert@twrodgers.com> + + * include/bits/semaphore_base.h: Add missing _M_try_acquire() + member to __platform_wait. + +2021-04-21 Jonathan Wakely <jwakely@redhat.com> + + * include/std/latch: Replace tab characters in license text. + * include/std/semaphore: Likewise. + +2021-04-21 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/100164 + * acinclude.m4: For POSIX semaphores AC_DEFINE HAVE_POSIX_SEMAPHORE + rather than _GLIBCXX_HAVE_POSIX_SEMAPHORE. + * configure: Regenerated. + * config.h.in: Regenerated. + +2021-04-20 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/30_threads/semaphore/try_acquire_for.cc: Disable + test for targets not using futexes for semaphores. + * testsuite/30_threads/semaphore/try_acquire_until.cc: Likewise. + * testsuite/30_threads/stop_token/stop_callback/destroy.cc: + Disable for all targets. + +2021-04-20 Thomas Rodgers <trodgers@redhat.com> + + * include/Makefile.am: Add new <bits/this_thread_sleep.h> header. + * include/Makefile.in: Regenerate. + * include/bits/this_thread_sleep.h: New file. + * include/bits/atomic_base.h: Adjust all calls + to __atomic_wait/__atomic_notify for new call signatures. + * include/bits/atomic_timed_wait.h: Extensive rewrite. + * include/bits/atomic_wait.h: Likewise. + * include/bits/semaphore_base.h: Adjust all calls + to __atomic_wait/__atomic_notify for new call signatures. + * include/std/atomic: Likewise. + * include/std/barrier: Likewise. + * include/std/latch: Likewise. + * include/std/semaphore: Likewise. + * include/std/thread (this_thread::sleep_for) + (this_thread::sleep_until): Move to new header. + * testsuite/29_atomics/atomic/wait_notify/bool.cc: Simplify + test. + * testsuite/29_atomics/atomic/wait_notify/generic.cc: Likewise. + * testsuite/29_atomics/atomic/wait_notify/pointers.cc: Likewise. + * testsuite/29_atomics/atomic_flag/wait_notify/1.cc: Likewise. + * testsuite/29_atomics/atomic_float/wait_notify.cc: Likewise. + * testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise. + * testsuite/29_atomics/atomic_ref/wait_notify.cc: Likewise. + +2021-04-20 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/95983 + * include/bits/stl_iterator.h (__detail::__move_iter_cat): + Define. + (move_iterator): Derive from the above in C++20 in order to + conditionally define iterator_category as per P2259. + (move_iterator::__base_cat): No longer used, so remove. + (move_iterator::iterator_category): Remove in C++20. + (__detail::__common_iter_use_postfix_proxy): Define. + (common_iterator::_Proxy): Rename to ... + (common_iterator:__arrow_proxy): ... this. + (common_iterator::__postfix_proxy): Define as per P2259. + (common_iterator::operator->): Adjust. + (common_iterator::operator++): Adjust as per P2259. + (iterator_traits<common_iterator>::_S_iter_cat): Define. + (iterator_traits<common_iterator>::iterator_category): Change as + per P2259. + (__detail::__counted_iter_value_type): Define. + (__detail::__counted_iter_concept): Define. + (__detail::__counted_iter_cat): Define. + (counted_iterator): Derive from the above three classes in order + to conditionally define value_type, iterator_concept and + iterator category respectively as per P2259. + (counted_iterator::operator->): Define as per P2259. + (incrementable_traits<counted_iterator>): Remove as per P2259. + (iterator_traits<counted_iterator>): Adjust as per P2259. + * include/std/ranges (__detail::__iota_view_iter_cat): Define. + (iota_view::_Iterator): Derive from the above in order to + conditionally define iterator_category as per P2259. + (iota_view::_S_iter_cat): Rename to ... + (iota_view::_S_iter_concept): ... this. + (iota_view::iterator_concept): Use it to apply LWG 3291 changes. + (iota_view::iterator_category): Remove. + (__detail::__filter_view_iter_cat): Define. + (filter_view::_Iterator): Derive from the above in order to + conditionally define iterator_category as per P2259. + (filter_view::_Iterator): Move to struct __filter_view_iter_cat. + (filter_view::_Iterator::iterator_category): Remove. + (transform_view::_Base): Define. + (transform_view::__iter_cat): Define. + (transform_view::_Iterator): Derive from the above in order to + conditionally define iterator_category as per P2259. + (transform_view::_Iterator::_Base): Just alias + transform_view::_Base. + (transform_view::_Iterator::_S_iter_cat): Move to struct + transform_view::__iter_cat. + (transform_view::_Iterator::iterator_category): Remove. + (transform_view::_Sentinel::_Base): Just alias + transform_view::_Base. + (join_view::_Base): Define. + (join_view::_Outer_iter): Define. + (join_view::_Inner_iter): Define. + (join_view::_S_ref_is_glvalue): Define. + (join_view::__iter_cat): Define. + (join_view::_Iterator): Derive from it in order to conditionally + define iterator_category as per P2259. + (join_view::_Iterator::_Base): Just alias join_view::_Base. + (join_view::_Iterator::_S_ref_is_glvalue): Just alias + join_view::_S_ref_is_glvalue. + (join_view::_Iterator::_S_iter_cat): Move to struct + transform_view::__iter_cat. + (join_view::_Iterator::_Outer_iter): Just alias + join_view::_Outer_iter. + (join_view::_Iterator::_Inner_iter): Just alias + join_view::_Inner_iter. + (join_view::_Iterator::iterator_category): Remove. + (join_view::_Sentinel::_Base): Just alias join_view::_Base. + (__detail::__split_view_outer_iter_cat): Define. + (__detail::__split_view_inner_iter_cat): Define. + (split_view::_Base): Define. + (split_view::_Outer_iter): Derive from __split_view_outer_iter_cat + in order to conditionally define iterator_category as per P2259. + (split_view::_Outer_iter::iterator_category): Remove. + (split_view::_Inner_iter): Derive from __split_view_inner_iter_cat + in order to conditionally define iterator_category as per P2259. + (split_view::_Inner_iter::_S_iter_cat): Move to + __split_view_inner_iter_cat. + (split_view::_Inner_iter::iterator_category): Remove. + (elements_view::_Base): Define. + (elements_view::__iter_cat): Define. + (elements_view::_Iterator): Derive from the above in order to + conditionall define iterator_category as per P2259. + (elements_view::_Iterator::_Base): Just alias + elements_view::_Base. + (elements_view::_Iterator::_S_iter_concept) + (elements_view::_Iterator::iterator_concept): Define as per + P2259. + (elements_view::_Iterator::iterator_category): Remove. + (elements_view::_Sentinel::_Base): Just alias + elements_view::_Base. + * testsuite/24_iterators/headers/iterator/synopsis_c++20.cc: + Adjust constraints on iterator_traits<counted_iterator>. + * testsuite/std/ranges/p2259.cc: New test. + +2021-04-20 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/100146 + * include/std/charconv (__cpp_lib_to_chars): Define + conditionally. + * include/std/version (__cpp_lib_to_chars): Likewise.. + * testsuite/20_util/from_chars/4.cc: Only check feature test + macro, not _GLIBCXX_HAVE_USELOCALE. + * testsuite/20_util/from_chars/5.cc: Likewise. + * testsuite/20_util/from_chars/6.cc: Likewise. + * testsuite/20_util/to_chars/long_double.cc: Likewise. + +2021-04-20 Jakub Jelinek <jakub@redhat.com> + + * testsuite/util/testsuite_abi.cc (compare_symbols): If any symbol + versions with _IEEE128_ substring are found, set ieee_version_found + to true. Ignore missing symbols with _IEEE128_ in version name if + !ieee_version_found. Use i->first as version_name instead of + i->second.version_name if the latter is empty. + * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update. + 2021-04-19 H.J. Lu <hjl.tools@gmail.com> * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index e4175ea..1c0a4c1 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -4097,7 +4097,7 @@ AC_DEFUN([GLIBCXX_CHECK_GTHREADS], [ [ac_have_posix_semaphore=no]) if test $ac_have_posix_semaphore = yes ; then - AC_DEFINE(_GLIBCXX_HAVE_POSIX_SEMAPHORE, + AC_DEFINE(HAVE_POSIX_SEMAPHORE, 1, [Define to 1 if POSIX Semaphores with sem_timedwait are available in <semaphore.h>.]) fi diff --git a/libstdc++-v3/config.h.in b/libstdc++-v3/config.h.in index d36ca26..37b56b8 100644 --- a/libstdc++-v3/config.h.in +++ b/libstdc++-v3/config.h.in @@ -291,6 +291,10 @@ /* Define to 1 if you have the `posix_memalign' function. */ #undef HAVE_POSIX_MEMALIGN +/* Define to 1 if POSIX Semaphores with sem_timedwait are available in + <semaphore.h>. */ +#undef HAVE_POSIX_SEMAPHORE + /* Define to 1 if you have the `powf' function. */ #undef HAVE_POWF @@ -818,10 +822,6 @@ /* Define if gthreads library is available. */ #undef _GLIBCXX_HAS_GTHREADS -/* Define to 1 if POSIX Semaphores with sem_timedwait are available in - <semaphore.h>. */ -#undef _GLIBCXX_HAVE_POSIX_SEMAPHORE - /* Define to 1 if a full hosted library is built, or 0 if freestanding. */ #undef _GLIBCXX_HOSTED diff --git a/libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt b/libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt index ba9f8bc..941c96e 100644 --- a/libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt +++ b/libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt @@ -548,6 +548,124 @@ FUNC:_ZNKSt15basic_streambufIwSt11char_traitsIwEE6getlocEv@@GLIBCXX_3.4 FUNC:_ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv@@GLIBCXX_3.4 FUNC:_ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv@@GLIBCXX_3.4 FUNC:_ZNKSt16bad_array_length4whatEv@@CXXABI_1.3.8 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcmcRSt8ios_basePcSA_Ri@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES4_S4_RSt8ios_basecT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES4_S4_RSt8ios_basecT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES4_S4_RSt8ios_basecT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES4_S4_RSt8ios_basecT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcmcS7_PcS8_Ri@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES4_S4_RSt8ios_baseccT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIgEES4_S4_RSt8ios_baseccT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIu9__ieee128EES4_S4_RSt8ios_baseccT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecPKv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEclRSt8ios_basePcPKcRi@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecPKv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_RSt8ios_basecd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_RSt8ios_basecg@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcmwRSt8ios_basePwSA_Ri@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES4_S4_RSt8ios_basewT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES4_S4_RSt8ios_basewT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES4_S4_RSt8ios_basewT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES4_S4_RSt8ios_basewT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcmwPKwPwSA_Ri@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES4_S4_RSt8ios_basewcT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIgEES4_S4_RSt8ios_basewcT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIu9__ieee128EES4_S4_RSt8ios_basewcT_@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewPKv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwlRSt8ios_basePwPKwRi@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewPKv@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewb@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewl@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewm@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewx@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewy@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_RSt8ios_basewd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_RSt8ios_basewg@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_LDBL_3.4 FUNC:_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_LDBL_3.4 FUNC:_ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_LDBL_3.4 @@ -714,6 +832,16 @@ FUNC:_ZNKSt19__codecvt_utf8_baseIwE16do_always_noconvEv@@GLIBCXX_3.4.21 FUNC:_ZNKSt19__codecvt_utf8_baseIwE5do_inER11__mbstate_tPKcS4_RS4_PwS6_RS6_@@GLIBCXX_3.4.21 FUNC:_ZNKSt19__codecvt_utf8_baseIwE6do_outER11__mbstate_tPKwS4_RS4_PcS6_RS6_@@GLIBCXX_3.4.21 FUNC:_ZNKSt19__codecvt_utf8_baseIwE9do_lengthER11__mbstate_tPKcS4_m@@GLIBCXX_3.4.21 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRNSt7__cxx1112basic_stringIcS3_SaIcEEE@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecRKNSt7__cxx1112basic_stringIcS3_SaIcEEE@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecu9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_bRSt8ios_basecd@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_bRSt8ios_basecg@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNKSt19__gnu_cxx11_ieee1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNKSt19basic_istringstreamIcSt11char_traitsIcESaIcEE3strEv@@GLIBCXX_3.4 FUNC:_ZNKSt19basic_istringstreamIcSt11char_traitsIcESaIcEE5rdbufEv@@GLIBCXX_3.4 FUNC:_ZNKSt19basic_istringstreamIwSt11char_traitsIwESaIwEE3strEv@@GLIBCXX_3.4 @@ -778,6 +906,7 @@ FUNC:_ZNKSt3tr14hashISbIwSt11char_traitsIwESaIwEEEclES4_@@GLIBCXX_3.4.10 FUNC:_ZNKSt3tr14hashISsEclESs@@GLIBCXX_3.4.10 FUNC:_ZNKSt3tr14hashIeEclEe@@GLIBCXX_3.4.10 FUNC:_ZNKSt3tr14hashIgEclEg@@GLIBCXX_LDBL_3.4.10 +FUNC:_ZNKSt3tr14hashIu9__ieee128EclEu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNKSt4hashIRKSbIwSt11char_traitsIwESaIwEEEclES5_@@GLIBCXX_3.4.10 FUNC:_ZNKSt4hashIRKSsEclES1_@@GLIBCXX_3.4.10 FUNC:_ZNKSt4hashISbIwSt11char_traitsIwESaIwEEEclES3_@@GLIBCXX_3.4.10 @@ -785,6 +914,7 @@ FUNC:_ZNKSt4hashISsEclESs@@GLIBCXX_3.4.10 FUNC:_ZNKSt4hashISt10error_codeEclES0_@@GLIBCXX_3.4.11 FUNC:_ZNKSt4hashIeEclEe@@GLIBCXX_3.4.10 FUNC:_ZNKSt4hashIgEclEg@@GLIBCXX_LDBL_3.4.10 +FUNC:_ZNKSt4hashIu9__ieee128EclEu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNKSt5ctypeIcE10do_tolowerEPcPKc@@GLIBCXX_3.4 FUNC:_ZNKSt5ctypeIcE10do_tolowerEc@@GLIBCXX_3.4 FUNC:_ZNKSt5ctypeIcE10do_toupperEPcPKc@@GLIBCXX_3.4 @@ -1642,6 +1772,7 @@ FUNC:_ZNSi10_M_extractIjEERSiRT_@@GLIBCXX_3.4.9 FUNC:_ZNSi10_M_extractIlEERSiRT_@@GLIBCXX_3.4.9 FUNC:_ZNSi10_M_extractImEERSiRT_@@GLIBCXX_3.4.9 FUNC:_ZNSi10_M_extractItEERSiRT_@@GLIBCXX_3.4.9 +FUNC:_ZNSi10_M_extractIu9__ieee128EERSiRT_@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSi10_M_extractIxEERSiRT_@@GLIBCXX_3.4.9 FUNC:_ZNSi10_M_extractIyEERSiRT_@@GLIBCXX_3.4.9 FUNC:_ZNSi3getEPcl@@GLIBCXX_3.4 @@ -1695,6 +1826,7 @@ FUNC:_ZNSirsERl@@GLIBCXX_3.4 FUNC:_ZNSirsERm@@GLIBCXX_3.4 FUNC:_ZNSirsERs@@GLIBCXX_3.4 FUNC:_ZNSirsERt@@GLIBCXX_3.4 +FUNC:_ZNSirsERu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSirsERx@@GLIBCXX_3.4 FUNC:_ZNSirsERy@@GLIBCXX_3.4 FUNC:_ZNSo3putEc@@GLIBCXX_3.4 @@ -1716,6 +1848,7 @@ FUNC:_ZNSo9_M_insertIeEERSoT_@@GLIBCXX_3.4.9 FUNC:_ZNSo9_M_insertIgEERSoT_@@GLIBCXX_LDBL_3.4.7 FUNC:_ZNSo9_M_insertIlEERSoT_@@GLIBCXX_3.4.9 FUNC:_ZNSo9_M_insertImEERSoT_@@GLIBCXX_3.4.9 +FUNC:_ZNSo9_M_insertIu9__ieee128EERSoT_@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSo9_M_insertIxEERSoT_@@GLIBCXX_3.4.9 FUNC:_ZNSo9_M_insertIyEERSoT_@@GLIBCXX_3.4.9 FUNC:_ZNSoC1EOSo@@GLIBCXX_3.4.21 @@ -1747,6 +1880,7 @@ FUNC:_ZNSolsEl@@GLIBCXX_3.4 FUNC:_ZNSolsEm@@GLIBCXX_3.4 FUNC:_ZNSolsEs@@GLIBCXX_3.4 FUNC:_ZNSolsEt@@GLIBCXX_3.4 +FUNC:_ZNSolsEu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSolsEx@@GLIBCXX_3.4 FUNC:_ZNSolsEy@@GLIBCXX_3.4 FUNC:_ZNSs10_S_compareEmm@@GLIBCXX_3.4.16 @@ -2467,6 +2601,7 @@ FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIjEERS2_RT_@@GLIBCXX_3 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIlEERS2_RT_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractImEERS2_RT_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractItEERS2_RT_@@GLIBCXX_3.4.9 +FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIu9__ieee128EERS2_RT_@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIxEERS2_RT_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIyEERS2_RT_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwl@@GLIBCXX_3.4 @@ -2520,6 +2655,7 @@ FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERl@@GLIBCXX_3.4 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERm@@GLIBCXX_3.4 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERs@@GLIBCXX_3.4 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERt@@GLIBCXX_3.4 +FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERx@@GLIBCXX_3.4 FUNC:_ZNSt13basic_istreamIwSt11char_traitsIwEErsERy@@GLIBCXX_3.4 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw@@GLIBCXX_3.4 @@ -2541,6 +2677,7 @@ FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIeEERS2_T_@@GLIBCXX_3.4. FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIgEERS2_T_@@GLIBCXX_LDBL_3.4.7 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIlEERS2_T_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertImEERS2_T_@@GLIBCXX_3.4.9 +FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIu9__ieee128EERS2_T_@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIxEERS2_T_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIyEERS2_T_@@GLIBCXX_3.4.9 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEEC1EOS2_@@GLIBCXX_3.4.21 @@ -2572,6 +2709,7 @@ FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEl@@GLIBCXX_3.4 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEm@@GLIBCXX_3.4 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEs@@GLIBCXX_3.4 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEt@@GLIBCXX_3.4 +FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEu9__ieee128@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEx@@GLIBCXX_3.4 FUNC:_ZNSt13basic_ostreamIwSt11char_traitsIwEElsEy@@GLIBCXX_3.4 FUNC:_ZNSt13random_device14_M_init_pretr1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@@GLIBCXX_3.4.21 @@ -2983,6 +3121,26 @@ FUNC:_ZNSt16invalid_argumentD2Ev@@GLIBCXX_3.4.15 FUNC:_ZNSt16nested_exceptionD0Ev@@CXXABI_1.3.5 FUNC:_ZNSt16nested_exceptionD1Ev@@CXXABI_1.3.5 FUNC:_ZNSt16nested_exceptionD2Ev@@CXXABI_1.3.5 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@@GLIBCXX_LDBL_3.4 FUNC:_ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@@GLIBCXX_LDBL_3.4 FUNC:_ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@@GLIBCXX_LDBL_3.4 @@ -4294,6 +4452,7 @@ FUNC:_ZSt10from_charsPKcS0_RdSt12chars_format@@GLIBCXX_3.4.29 FUNC:_ZSt10from_charsPKcS0_ReSt12chars_format@@GLIBCXX_3.4.29 FUNC:_ZSt10from_charsPKcS0_RfSt12chars_format@@GLIBCXX_3.4.29 FUNC:_ZSt10from_charsPKcS0_RgSt12chars_format@@GLIBCXX_LDBL_3.4.29 +FUNC:_ZSt10from_charsPKcS0_Ru9__ieee128St12chars_format@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZSt10unexpectedv@@GLIBCXX_3.4 FUNC:_ZSt11_Hash_bytesPKvmm@@CXXABI_1.3.5 FUNC:_ZSt13get_terminatev@@GLIBCXX_3.4.20 @@ -4302,6 +4461,7 @@ FUNC:_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@@GLIBCX FUNC:_ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@@GLIBCXX_3.4 FUNC:_ZSt14__convert_to_vIfEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@@GLIBCXX_3.4 FUNC:_ZSt14__convert_to_vIgEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@@GLIBCXX_LDBL_3.4 +FUNC:_ZSt14__convert_to_vIu9__ieee128EvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZSt14get_unexpectedv@@GLIBCXX_3.4.20 FUNC:_ZSt14set_unexpectedPFvvE@@GLIBCXX_3.4 FUNC:_ZSt15_Fnv_hash_bytesPKvmm@@CXXABI_1.3.5 @@ -4384,6 +4544,13 @@ FUNC:_ZSt8to_charsPcS_fSt12chars_formati@@GLIBCXX_3.4.29 FUNC:_ZSt8to_charsPcS_g@@GLIBCXX_LDBL_3.4.29 FUNC:_ZSt8to_charsPcS_gSt12chars_format@@GLIBCXX_LDBL_3.4.29 FUNC:_ZSt8to_charsPcS_gSt12chars_formati@@GLIBCXX_LDBL_3.4.29 +FUNC:_ZSt8to_charsPcS_u9__ieee128@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt8to_charsPcS_u9__ieee128St12chars_format@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt8to_charsPcS_u9__ieee128St12chars_formati@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_LDBL_3.4 @@ -4392,6 +4559,10 @@ FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcS FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_LDBL_3.4 +FUNC:_ZSt9has_facetINSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt19__gnu_cxx11_ieee1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9has_facetINSt19__gnu_cxx11_ieee1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZSt9has_facetINSt7__cxx1110moneypunctIcLb0EEEEbRKSt6locale@@GLIBCXX_3.4.21 FUNC:_ZSt9has_facetINSt7__cxx1110moneypunctIwLb0EEEEbRKSt6locale@@GLIBCXX_3.4.21 FUNC:_ZSt9has_facetINSt7__cxx117collateIcEEEbRKSt6locale@@GLIBCXX_3.4.21 @@ -4433,6 +4604,10 @@ FUNC:_ZSt9has_facetISt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE FUNC:_ZSt9has_facetISt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@@GLIBCXX_3.4 FUNC:_ZSt9has_facetISt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@@GLIBCXX_3.4 FUNC:_ZSt9terminatev@@GLIBCXX_3.4 +FUNC:_ZSt9use_facetINSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9use_facetINSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9use_facetINSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9use_facetINSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_LDBL_3.4 @@ -4441,6 +4616,10 @@ FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcS FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_LDBL_3.4 FUNC:_ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_LDBL_3.4 +FUNC:_ZSt9use_facetINSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9use_facetINSt19__gnu_cxx11_ieee1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9use_facetINSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZSt9use_facetINSt19__gnu_cxx11_ieee1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZSt9use_facetINSt7__cxx1110moneypunctIcLb0EEEERKT_RKSt6locale@@GLIBCXX_3.4.21 FUNC:_ZSt9use_facetINSt7__cxx1110moneypunctIcLb1EEEERKT_RKSt6locale@@GLIBCXX_3.4.21 FUNC:_ZSt9use_facetINSt7__cxx1110moneypunctIwLb0EEEERKT_RKSt6locale@@GLIBCXX_3.4.21 @@ -4507,6 +4686,8 @@ FUNC:_ZStlsIfcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@@ FUNC:_ZStlsIfwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@@GLIBCXX_3.4 FUNC:_ZStlsIgcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@@GLIBCXX_LDBL_3.4 FUNC:_ZStlsIgwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@@GLIBCXX_LDBL_3.4 +FUNC:_ZStlsIu9__ieee128cSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZStlsIu9__ieee128wSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKS3_@@GLIBCXX_3.4 FUNC:_ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKc@@GLIBCXX_3.4 FUNC:_ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_S3_@@GLIBCXX_3.4 @@ -4553,6 +4734,8 @@ FUNC:_ZStrsIfcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@@G FUNC:_ZStrsIfwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@@GLIBCXX_3.4 FUNC:_ZStrsIgcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@@GLIBCXX_LDBL_3.4 FUNC:_ZStrsIgwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@@GLIBCXX_LDBL_3.4 +FUNC:_ZStrsIu9__ieee128cSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@@GLIBCXX_IEEE128_3.4.29 +FUNC:_ZStrsIu9__ieee128wSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@@GLIBCXX_IEEE128_3.4.29 FUNC:_ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_PS3_@@GLIBCXX_3.4 FUNC:_ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_RS3_@@GLIBCXX_3.4 FUNC:_ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St12_Setiosflags@@GLIBCXX_3.4 @@ -4734,6 +4917,7 @@ OBJECT:0:CXXABI_1.3.6 OBJECT:0:CXXABI_1.3.7 OBJECT:0:CXXABI_1.3.8 OBJECT:0:CXXABI_1.3.9 +OBJECT:0:CXXABI_IEEE128_1.3.13 OBJECT:0:CXXABI_LDBL_1.3 OBJECT:0:CXXABI_TM_1 OBJECT:0:GLIBCXX_3.4 @@ -4766,6 +4950,7 @@ OBJECT:0:GLIBCXX_3.4.6 OBJECT:0:GLIBCXX_3.4.7 OBJECT:0:GLIBCXX_3.4.8 OBJECT:0:GLIBCXX_3.4.9 +OBJECT:0:GLIBCXX_IEEE128_3.4.29 OBJECT:0:GLIBCXX_LDBL_3.4 OBJECT:0:GLIBCXX_LDBL_3.4.10 OBJECT:0:GLIBCXX_LDBL_3.4.21 @@ -4791,6 +4976,8 @@ OBJECT:104:_ZTVSt17moneypunct_bynameIwLb0EE@@GLIBCXX_3.4 OBJECT:104:_ZTVSt17moneypunct_bynameIwLb1EE@@GLIBCXX_3.4 OBJECT:112:_ZNSt17__timepunct_cacheIcE12_S_timezonesE@@GLIBCXX_3.4 OBJECT:112:_ZNSt17__timepunct_cacheIwE12_S_timezonesE@@GLIBCXX_3.4 +OBJECT:112:_ZTVNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:112:_ZTVNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 OBJECT:120:_ZTVNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE@@GLIBCXX_3.4.21 OBJECT:120:_ZTVNSt7__cxx1118basic_stringstreamIwSt11char_traitsIwESaIwEEE@@GLIBCXX_3.4.21 OBJECT:120:_ZTVSd@@GLIBCXX_3.4 @@ -4823,11 +5010,16 @@ OBJECT:12:_ZTSSt5ctypeIcE@@GLIBCXX_3.4 OBJECT:12:_ZTSSt5ctypeIwE@@GLIBCXX_3.4 OBJECT:12:_ZTSSt8bad_cast@@GLIBCXX_3.4 OBJECT:12:_ZTSSt8ios_base@@GLIBCXX_3.4 +OBJECT:12:_ZTSu9__ieee128@@CXXABI_IEEE128_1.3.13 +OBJECT:136:_ZTVNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:136:_ZTVNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:13:_ZTSPu9__ieee128@@CXXABI_IEEE128_1.3.13 OBJECT:13:_ZTSSt9bad_alloc@@GLIBCXX_3.4 OBJECT:13:_ZTSSt9exception@@GLIBCXX_3.4 OBJECT:13:_ZTSSt9strstream@@GLIBCXX_3.4 OBJECT:13:_ZTSSt9time_base@@GLIBCXX_3.4 OBJECT:13:_ZTSSt9type_info@@GLIBCXX_3.4 +OBJECT:14:_ZTSPKu9__ieee128@@CXXABI_IEEE128_1.3.13 OBJECT:14:_ZTSSt7collateIcE@@GLIBCXX_3.4 OBJECT:14:_ZTSSt7collateIwE@@GLIBCXX_3.4 OBJECT:15:_ZTSSt10bad_typeid@@GLIBCXX_3.4 @@ -4883,6 +5075,7 @@ OBJECT:16:_ZTIn@@CXXABI_1.3.5 OBJECT:16:_ZTIo@@CXXABI_1.3.5 OBJECT:16:_ZTIs@@CXXABI_1.3 OBJECT:16:_ZTIt@@CXXABI_1.3 +OBJECT:16:_ZTIu9__ieee128@@CXXABI_IEEE128_1.3.13 OBJECT:16:_ZTIv@@CXXABI_1.3 OBJECT:16:_ZTIw@@CXXABI_1.3 OBJECT:16:_ZTIx@@CXXABI_1.3 @@ -5190,6 +5383,19 @@ OBJECT:1:_ZNSt14numeric_limitsItE8is_exactE@@GLIBCXX_3.4 OBJECT:1:_ZNSt14numeric_limitsItE9is_iec559E@@GLIBCXX_3.4 OBJECT:1:_ZNSt14numeric_limitsItE9is_moduloE@@GLIBCXX_3.4 OBJECT:1:_ZNSt14numeric_limitsItE9is_signedE@@GLIBCXX_3.4 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E10is_boundedE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E10is_integerE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E12has_infinityE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E13has_quiet_NaNE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E14is_specializedE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E15has_denorm_lossE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E15tinyness_beforeE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E17has_signaling_NaNE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E5trapsE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E8is_exactE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E9is_iec559E@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E9is_moduloE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:1:_ZNSt14numeric_limitsIu9__ieee128E9is_signedE@@GLIBCXX_IEEE128_3.4.29 OBJECT:1:_ZNSt14numeric_limitsIwE10is_boundedE@@GLIBCXX_3.4 OBJECT:1:_ZNSt14numeric_limitsIwE10is_integerE@@GLIBCXX_3.4 OBJECT:1:_ZNSt14numeric_limitsIwE12has_infinityE@@GLIBCXX_3.4 @@ -5296,6 +5502,10 @@ OBJECT:24:_ZTIN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@@GLIBCXX_3.4 OBJECT:24:_ZTINSt10filesystem16filesystem_errorE@@GLIBCXX_3.4.26 OBJECT:24:_ZTINSt10filesystem7__cxx1116filesystem_errorE@@GLIBCXX_3.4.26 OBJECT:24:_ZTINSt13__future_base19_Async_state_commonE@@GLIBCXX_3.4.17 +OBJECT:24:_ZTINSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:24:_ZTINSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:24:_ZTINSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:24:_ZTINSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_LDBL_3.4 OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_LDBL_3.4 OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_LDBL_3.4 @@ -5304,6 +5514,10 @@ OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11cha OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_LDBL_3.4 OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_LDBL_3.4 OBJECT:24:_ZTINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_LDBL_3.4 +OBJECT:24:_ZTINSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:24:_ZTINSt19__gnu_cxx11_ieee1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:24:_ZTINSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:24:_ZTINSt19__gnu_cxx11_ieee1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 OBJECT:24:_ZTINSt3pmr25monotonic_buffer_resourceE@@GLIBCXX_3.4.28 OBJECT:24:_ZTINSt3pmr26synchronized_pool_resourceE@@GLIBCXX_3.4.26 OBJECT:24:_ZTINSt3pmr28unsynchronized_pool_resourceE@@GLIBCXX_3.4.26 @@ -5529,6 +5743,7 @@ OBJECT:32:_ZTIPKn@@CXXABI_1.3.5 OBJECT:32:_ZTIPKo@@CXXABI_1.3.5 OBJECT:32:_ZTIPKs@@CXXABI_1.3 OBJECT:32:_ZTIPKt@@CXXABI_1.3 +OBJECT:32:_ZTIPKu9__ieee128@@CXXABI_IEEE128_1.3.13 OBJECT:32:_ZTIPKv@@CXXABI_1.3 OBJECT:32:_ZTIPKw@@CXXABI_1.3 OBJECT:32:_ZTIPKx@@CXXABI_1.3 @@ -5549,6 +5764,7 @@ OBJECT:32:_ZTIPn@@CXXABI_1.3.5 OBJECT:32:_ZTIPo@@CXXABI_1.3.5 OBJECT:32:_ZTIPs@@CXXABI_1.3 OBJECT:32:_ZTIPt@@CXXABI_1.3 +OBJECT:32:_ZTIPu9__ieee128@@CXXABI_IEEE128_1.3.13 OBJECT:32:_ZTIPv@@CXXABI_1.3 OBJECT:32:_ZTIPw@@CXXABI_1.3 OBJECT:32:_ZTIPx@@CXXABI_1.3 @@ -5887,6 +6103,16 @@ OBJECT:4:_ZNSt14numeric_limitsItE14min_exponent10E@@GLIBCXX_3.4 OBJECT:4:_ZNSt14numeric_limitsItE5radixE@@GLIBCXX_3.4 OBJECT:4:_ZNSt14numeric_limitsItE6digitsE@@GLIBCXX_3.4 OBJECT:4:_ZNSt14numeric_limitsItE8digits10E@@GLIBCXX_3.4 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E10has_denormE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E11round_styleE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E12max_digits10E@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E12max_exponentE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E12min_exponentE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E14max_exponent10E@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E14min_exponent10E@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E5radixE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E6digitsE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:4:_ZNSt14numeric_limitsIu9__ieee128E8digits10E@@GLIBCXX_IEEE128_3.4.29 OBJECT:4:_ZNSt14numeric_limitsIwE10has_denormE@@GLIBCXX_3.4 OBJECT:4:_ZNSt14numeric_limitsIwE11round_styleE@@GLIBCXX_3.4 OBJECT:4:_ZNSt14numeric_limitsIwE12max_digits10E@@GLIBCXX_3.4.14 @@ -6063,6 +6289,10 @@ OBJECT:64:_ZTVN10__cxxabiv116__enum_type_infoE@@CXXABI_1.3 OBJECT:64:_ZTVN10__cxxabiv117__array_type_infoE@@CXXABI_1.3 OBJECT:64:_ZTVN10__cxxabiv120__function_type_infoE@@CXXABI_1.3 OBJECT:64:_ZTVN10__cxxabiv123__fundamental_type_infoE@@CXXABI_1.3 +OBJECT:64:_ZTVNSt19__gnu_cxx11_ieee1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:64:_ZTVNSt19__gnu_cxx11_ieee1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:64:_ZTVNSt19__gnu_cxx11_ieee1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:64:_ZTVNSt19__gnu_cxx11_ieee1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 OBJECT:64:_ZTVSt9type_info@@GLIBCXX_3.4 OBJECT:67:_ZTSSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@@GLIBCXX_3.4 OBJECT:67:_ZTSSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@@GLIBCXX_3.4 @@ -6088,6 +6318,10 @@ OBJECT:72:_ZTVSt8numpunctIcE@@GLIBCXX_3.4 OBJECT:72:_ZTVSt8numpunctIwE@@GLIBCXX_3.4 OBJECT:77:_ZTSNSt7__cxx1115time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_3.4.21 OBJECT:77:_ZTSNSt7__cxx1115time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_3.4.21 +OBJECT:79:_ZTSNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:79:_ZTSNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:79:_ZTSNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:79:_ZTSNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_IEEE128_3.4.29 OBJECT:79:_ZTSNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_LDBL_3.4 OBJECT:79:_ZTSNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@@GLIBCXX_LDBL_3.4 OBJECT:79:_ZTSNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@@GLIBCXX_LDBL_3.4 @@ -6158,6 +6392,10 @@ OBJECT:8:_ZGVNSt10moneypunctIwLb0EE2idE@@GLIBCXX_3.4 OBJECT:8:_ZGVNSt10moneypunctIwLb1EE2idE@@GLIBCXX_3.4 OBJECT:8:_ZGVNSt11__timepunctIcE2idE@@GLIBCXX_3.4 OBJECT:8:_ZGVNSt11__timepunctIwE2idE@@GLIBCXX_3.4 +OBJECT:8:_ZGVNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:8:_ZGVNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:8:_ZGVNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:8:_ZGVNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@@GLIBCXX_IEEE128_3.4.29 OBJECT:8:_ZGVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_LDBL_3.4 OBJECT:8:_ZGVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@@GLIBCXX_LDBL_3.4 OBJECT:8:_ZGVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_LDBL_3.4 @@ -6213,6 +6451,10 @@ OBJECT:8:_ZNSt10moneypunctIwLb0EE2idE@@GLIBCXX_3.4 OBJECT:8:_ZNSt10moneypunctIwLb1EE2idE@@GLIBCXX_3.4 OBJECT:8:_ZNSt11__timepunctIcE2idE@@GLIBCXX_3.4 OBJECT:8:_ZNSt11__timepunctIwE2idE@@GLIBCXX_3.4 +OBJECT:8:_ZNSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:8:_ZNSt17__gnu_cxx_ieee1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:8:_ZNSt17__gnu_cxx_ieee1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_IEEE128_3.4.29 +OBJECT:8:_ZNSt17__gnu_cxx_ieee1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@@GLIBCXX_IEEE128_3.4.29 OBJECT:8:_ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_LDBL_3.4 OBJECT:8:_ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@@GLIBCXX_LDBL_3.4 OBJECT:8:_ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@@GLIBCXX_LDBL_3.4 diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index 13f2e69..326a279 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -75836,7 +75836,7 @@ fi if test $ac_have_posix_semaphore = yes ; then -$as_echo "#define _GLIBCXX_HAVE_POSIX_SEMAPHORE 1" >>confdefs.h +$as_echo "#define HAVE_POSIX_SEMAPHORE 1" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_have_posix_semaphore" >&5 diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am index f24a548..40a41ef 100644 --- a/libstdc++-v3/include/Makefile.am +++ b/libstdc++-v3/include/Makefile.am @@ -225,6 +225,7 @@ bits_headers = \ ${bits_srcdir}/streambuf.tcc \ ${bits_srcdir}/stringfwd.h \ ${bits_srcdir}/string_view.tcc \ + ${bits_srcdir}/this_thread_sleep.h \ ${bits_srcdir}/uniform_int_dist.h \ ${bits_srcdir}/unique_lock.h \ ${bits_srcdir}/unique_ptr.h \ diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in index 12c6340..fcd2b5b 100644 --- a/libstdc++-v3/include/Makefile.in +++ b/libstdc++-v3/include/Makefile.in @@ -575,6 +575,7 @@ bits_headers = \ ${bits_srcdir}/streambuf.tcc \ ${bits_srcdir}/stringfwd.h \ ${bits_srcdir}/string_view.tcc \ + ${bits_srcdir}/this_thread_sleep.h \ ${bits_srcdir}/uniform_int_dist.h \ ${bits_srcdir}/unique_lock.h \ ${bits_srcdir}/unique_ptr.h \ diff --git a/libstdc++-v3/include/bits/atomic_base.h b/libstdc++-v3/include/bits/atomic_base.h index b75f611..029b8ad 100644 --- a/libstdc++-v3/include/bits/atomic_base.h +++ b/libstdc++-v3/include/bits/atomic_base.h @@ -235,22 +235,24 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION wait(bool __old, memory_order __m = memory_order_seq_cst) const noexcept { - std::__atomic_wait(&_M_i, static_cast<__atomic_flag_data_type>(__old), - [__m, this, __old]() - { return this->test(__m) != __old; }); + const __atomic_flag_data_type __v + = __old ? __GCC_ATOMIC_TEST_AND_SET_TRUEVAL : 0; + + std::__atomic_wait_address_v(&_M_i, __v, + [__m, this] { return __atomic_load_n(&_M_i, int(__m)); }); } // TODO add const volatile overload _GLIBCXX_ALWAYS_INLINE void notify_one() const noexcept - { std::__atomic_notify(&_M_i, false); } + { std::__atomic_notify_address(&_M_i, false); } // TODO add const volatile overload _GLIBCXX_ALWAYS_INLINE void notify_all() const noexcept - { std::__atomic_notify(&_M_i, true); } + { std::__atomic_notify_address(&_M_i, true); } // TODO add const volatile overload #endif // __cpp_lib_atomic_wait @@ -609,22 +611,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION wait(__int_type __old, memory_order __m = memory_order_seq_cst) const noexcept { - std::__atomic_wait(&_M_i, __old, - [__m, this, __old] - { return this->load(__m) != __old; }); + std::__atomic_wait_address_v(&_M_i, __old, + [__m, this] { return this->load(__m); }); } // TODO add const volatile overload _GLIBCXX_ALWAYS_INLINE void notify_one() const noexcept - { std::__atomic_notify(&_M_i, false); } + { std::__atomic_notify_address(&_M_i, false); } // TODO add const volatile overload _GLIBCXX_ALWAYS_INLINE void notify_all() const noexcept - { std::__atomic_notify(&_M_i, true); } + { std::__atomic_notify_address(&_M_i, true); } // TODO add const volatile overload #endif // __cpp_lib_atomic_wait @@ -903,22 +904,22 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION wait(__pointer_type __old, memory_order __m = memory_order_seq_cst) noexcept { - std::__atomic_wait(&_M_p, __old, - [__m, this, __old]() - { return this->load(__m) != __old; }); + std::__atomic_wait_address_v(&_M_p, __old, + [__m, this] + { return this->load(__m); }); } // TODO add const volatile overload _GLIBCXX_ALWAYS_INLINE void notify_one() const noexcept - { std::__atomic_notify(&_M_p, false); } + { std::__atomic_notify_address(&_M_p, false); } // TODO add const volatile overload _GLIBCXX_ALWAYS_INLINE void notify_all() const noexcept - { std::__atomic_notify(&_M_p, true); } + { std::__atomic_notify_address(&_M_p, true); } // TODO add const volatile overload #endif // __cpp_lib_atomic_wait @@ -1017,8 +1018,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION wait(const _Tp* __ptr, _Val<_Tp> __old, memory_order __m = memory_order_seq_cst) noexcept { - std::__atomic_wait(__ptr, __old, - [=]() { return load(__ptr, __m) == __old; }); + std::__atomic_wait_address_v(__ptr, __old, + [__ptr, __m]() { return __atomic_impl::load(__ptr, __m); }); } // TODO add const volatile overload @@ -1026,14 +1027,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template<typename _Tp> _GLIBCXX_ALWAYS_INLINE void notify_one(const _Tp* __ptr) noexcept - { std::__atomic_notify(__ptr, false); } + { std::__atomic_notify_address(__ptr, false); } // TODO add const volatile overload template<typename _Tp> _GLIBCXX_ALWAYS_INLINE void notify_all(const _Tp* __ptr) noexcept - { std::__atomic_notify(__ptr, true); } + { std::__atomic_notify_address(__ptr, true); } // TODO add const volatile overload #endif // __cpp_lib_atomic_wait diff --git a/libstdc++-v3/include/bits/atomic_timed_wait.h b/libstdc++-v3/include/bits/atomic_timed_wait.h index a0c5ef4..70e5335 100644 --- a/libstdc++-v3/include/bits/atomic_timed_wait.h +++ b/libstdc++-v3/include/bits/atomic_timed_wait.h @@ -36,6 +36,7 @@ #if __cpp_lib_atomic_wait #include <bits/functional_hash.h> +#include <bits/this_thread_sleep.h> #include <chrono> @@ -48,19 +49,38 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION - enum class __atomic_wait_status { no_timeout, timeout }; - namespace __detail { + using __wait_clock_t = chrono::steady_clock; + + template<typename _Clock, typename _Dur> + __wait_clock_t::time_point + __to_wait_clock(const chrono::time_point<_Clock, _Dur>& __atime) noexcept + { + const typename _Clock::time_point __c_entry = _Clock::now(); + const __wait_clock_t::time_point __w_entry = __wait_clock_t::now(); + const auto __delta = __atime - __c_entry; + using __w_dur = typename __wait_clock_t::duration; + return __w_entry + chrono::ceil<__w_dur>(__delta); + } + + template<typename _Dur> + __wait_clock_t::time_point + __to_wait_clock(const chrono::time_point<__wait_clock_t, + _Dur>& __atime) noexcept + { + using __w_dur = typename __wait_clock_t::duration; + return chrono::ceil<__w_dur>(__atime); + } + #ifdef _GLIBCXX_HAVE_LINUX_FUTEX - using __platform_wait_clock_t = chrono::steady_clock; - - template<typename _Duration> - __atomic_wait_status - __platform_wait_until_impl(__platform_wait_t* __addr, - __platform_wait_t __val, - const chrono::time_point< - __platform_wait_clock_t, _Duration>& +#define _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT + // returns true if wait ended before timeout + template<typename _Dur> + bool + __platform_wait_until_impl(const __platform_wait_t* __addr, + __platform_wait_t __old, + const chrono::time_point<__wait_clock_t, _Dur>& __atime) noexcept { auto __s = chrono::time_point_cast<chrono::seconds>(__atime); @@ -75,52 +95,55 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION auto __e = syscall (SYS_futex, __addr, static_cast<int>(__futex_wait_flags:: __wait_bitset_private), - __val, &__rt, nullptr, + __old, &__rt, nullptr, static_cast<int>(__futex_wait_flags:: __bitset_match_any)); - if (__e && !(errno == EINTR || errno == EAGAIN || errno == ETIMEDOUT)) - std::terminate(); - return (__platform_wait_clock_t::now() < __atime) - ? __atomic_wait_status::no_timeout - : __atomic_wait_status::timeout; + + if (__e) + { + if ((errno != ETIMEDOUT) && (errno != EINTR) + && (errno != EAGAIN)) + __throw_system_error(errno); + return true; + } + return false; } - template<typename _Clock, typename _Duration> - __atomic_wait_status - __platform_wait_until(__platform_wait_t* __addr, __platform_wait_t __val, - const chrono::time_point<_Clock, _Duration>& - __atime) + // returns true if wait ended before timeout + template<typename _Clock, typename _Dur> + bool + __platform_wait_until(const __platform_wait_t* __addr, __platform_wait_t __old, + const chrono::time_point<_Clock, _Dur>& __atime) { - if constexpr (is_same_v<__platform_wait_clock_t, _Clock>) + if constexpr (is_same_v<__wait_clock_t, _Clock>) { - return __detail::__platform_wait_until_impl(__addr, __val, __atime); + return __platform_wait_until_impl(__addr, __old, __atime); } else { - const typename _Clock::time_point __c_entry = _Clock::now(); - const __platform_wait_clock_t::time_point __s_entry = - __platform_wait_clock_t::now(); - const auto __delta = __atime - __c_entry; - const auto __s_atime = __s_entry + __delta; - if (__detail::__platform_wait_until_impl(__addr, __val, __s_atime) - == __atomic_wait_status::no_timeout) - return __atomic_wait_status::no_timeout; - - // We got a timeout when measured against __clock_t but - // we need to check against the caller-supplied clock - // to tell whether we should return a timeout. - if (_Clock::now() < __atime) - return __atomic_wait_status::no_timeout; - return __atomic_wait_status::timeout; + if (!__platform_wait_until_impl(__addr, __old, + __to_wait_clock(__atime))) + { + // We got a timeout when measured against __clock_t but + // we need to check against the caller-supplied clock + // to tell whether we should return a timeout. + if (_Clock::now() < __atime) + return true; + } + return false; } } -#else // ! FUTEX - -#ifdef _GLIBCXX_USE_PTHREAD_COND_CLOCKWAIT - template<typename _Duration> - __atomic_wait_status +#else +// define _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT and implement __platform_wait_until() +// if there is a more efficient primitive supported by the platform +// (e.g. __ulock_wait())which is better than pthread_cond_clockwait +#endif // ! PLATFORM_TIMED_WAIT + + // returns true if wait ended before timeout + template<typename _Dur> + bool __cond_wait_until_impl(__condvar& __cv, mutex& __mx, - const chrono::time_point<chrono::steady_clock, _Duration>& __atime) + const chrono::time_point<chrono::steady_clock, _Dur>& __atime) { auto __s = chrono::time_point_cast<chrono::seconds>(__atime); auto __ns = chrono::duration_cast<chrono::nanoseconds>(__atime - __s); @@ -131,45 +154,22 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION static_cast<long>(__ns.count()) }; +#ifdef _GLIBCXX_USE_PTHREAD_COND_CLOCKWAIT __cv.wait_until(__mx, CLOCK_MONOTONIC, __ts); - - return (chrono::steady_clock::now() < __atime) - ? __atomic_wait_status::no_timeout - : __atomic_wait_status::timeout; - } -#endif - - template<typename _Duration> - __atomic_wait_status - __cond_wait_until_impl(__condvar& __cv, mutex& __mx, - const chrono::time_point<chrono::system_clock, _Duration>& __atime) - { - auto __s = chrono::time_point_cast<chrono::seconds>(__atime); - auto __ns = chrono::duration_cast<chrono::nanoseconds>(__atime - __s); - - __gthread_time_t __ts = - { - static_cast<std::time_t>(__s.time_since_epoch().count()), - static_cast<long>(__ns.count()) - }; - + return chrono::steady_clock::now() < __atime; +#else __cv.wait_until(__mx, __ts); - - return (chrono::system_clock::now() < __atime) - ? __atomic_wait_status::no_timeout - : __atomic_wait_status::timeout; + return chrono::system_clock::now() < __atime; +#endif // ! _GLIBCXX_USE_PTHREAD_COND_CLOCKWAIT } - // return true if timeout - template<typename _Clock, typename _Duration> - __atomic_wait_status + // returns true if wait ended before timeout + template<typename _Clock, typename _Dur> + bool __cond_wait_until(__condvar& __cv, mutex& __mx, - const chrono::time_point<_Clock, _Duration>& __atime) + const chrono::time_point<_Clock, _Dur>& __atime) { -#ifndef _GLIBCXX_USE_PTHREAD_COND_CLOCKWAIT - using __clock_t = chrono::system_clock; -#else - using __clock_t = chrono::steady_clock; +#ifdef _GLIBCXX_USE_PTHREAD_COND_CLOCKWAIT if constexpr (is_same_v<_Clock, chrono::steady_clock>) return __detail::__cond_wait_until_impl(__cv, __mx, __atime); else @@ -178,118 +178,265 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return __detail::__cond_wait_until_impl(__cv, __mx, __atime); else { - const typename _Clock::time_point __c_entry = _Clock::now(); - const __clock_t::time_point __s_entry = __clock_t::now(); - const auto __delta = __atime - __c_entry; - const auto __s_atime = __s_entry + __delta; - if (__detail::__cond_wait_until_impl(__cv, __mx, __s_atime) - == __atomic_wait_status::no_timeout) - return __atomic_wait_status::no_timeout; - // We got a timeout when measured against __clock_t but - // we need to check against the caller-supplied clock - // to tell whether we should return a timeout. - if (_Clock::now() < __atime) - return __atomic_wait_status::no_timeout; - return __atomic_wait_status::timeout; + if (__cond_wait_until_impl(__cv, __mx, + __to_wait_clock(__atime))) + { + // We got a timeout when measured against __clock_t but + // we need to check against the caller-supplied clock + // to tell whether we should return a timeout. + if (_Clock::now() < __atime) + return true; + } + return false; } } -#endif // FUTEX - struct __timed_waiters : __waiters + struct __timed_waiter_pool : __waiter_pool_base { - template<typename _Clock, typename _Duration> - __atomic_wait_status - _M_do_wait_until(__platform_wait_t __version, - const chrono::time_point<_Clock, _Duration>& __atime) + // returns true if wait ended before timeout + template<typename _Clock, typename _Dur> + bool + _M_do_wait_until(__platform_wait_t* __addr, __platform_wait_t __old, + const chrono::time_point<_Clock, _Dur>& __atime) { -#ifdef _GLIBCXX_HAVE_LINUX_FUTEX - return __detail::__platform_wait_until(&_M_ver, __version, __atime); +#ifdef _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT + return __platform_wait_until(__addr, __old, __atime); #else - __platform_wait_t __cur = 0; - __waiters::__lock_t __l(_M_mtx); - while (__cur <= __version) + __platform_wait_t __val; + __atomic_load(__addr, &__val, __ATOMIC_RELAXED); + if (__val == __old) { - if (__detail::__cond_wait_until(_M_cv, _M_mtx, __atime) - == __atomic_wait_status::timeout) - return __atomic_wait_status::timeout; - - __platform_wait_t __last = __cur; - __atomic_load(&_M_ver, &__cur, __ATOMIC_ACQUIRE); - if (__cur < __last) - break; // break the loop if version overflows + lock_guard<mutex> __l(_M_mtx); + return __cond_wait_until(_M_cv, _M_mtx, __atime); } - return __atomic_wait_status::no_timeout; -#endif +#endif // _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT } + }; - static __timed_waiters& - _S_timed_for(void* __t) + struct __timed_backoff_spin_policy + { + __wait_clock_t::time_point _M_deadline; + __wait_clock_t::time_point _M_t0; + + template<typename _Clock, typename _Dur> + __timed_backoff_spin_policy(chrono::time_point<_Clock, _Dur> + __deadline = _Clock::time_point::max(), + chrono::time_point<_Clock, _Dur> + __t0 = _Clock::now()) noexcept + : _M_deadline(__to_wait_clock(__deadline)) + , _M_t0(__to_wait_clock(__t0)) + { } + + bool + operator()() const noexcept { - static_assert(sizeof(__timed_waiters) == sizeof(__waiters)); - return static_cast<__timed_waiters&>(__waiters::_S_for(__t)); + using namespace literals::chrono_literals; + auto __now = __wait_clock_t::now(); + if (_M_deadline <= __now) + return false; + + auto __elapsed = __now - _M_t0; + if (__elapsed > 128ms) + { + this_thread::sleep_for(64ms); + } + else if (__elapsed > 64us) + { + this_thread::sleep_for(__elapsed / 2); + } + else if (__elapsed > 4us) + { + __thread_yield(); + } + else + return false; + return true; } }; + + template<typename _EntersWait> + struct __timed_waiter : __waiter_base<__timed_waiter_pool> + { + using __base_type = __waiter_base<__timed_waiter_pool>; + + template<typename _Tp> + __timed_waiter(const _Tp* __addr) noexcept + : __base_type(__addr) + { + if constexpr (_EntersWait::value) + _M_w._M_enter_wait(); + } + + ~__timed_waiter() + { + if constexpr (_EntersWait::value) + _M_w._M_leave_wait(); + } + + // returns true if wait ended before timeout + template<typename _Tp, typename _ValFn, + typename _Clock, typename _Dur> + bool + _M_do_wait_until_v(_Tp __old, _ValFn __vfn, + const chrono::time_point<_Clock, _Dur>& + __atime) noexcept + { + __platform_wait_t __val; + if (_M_do_spin(__old, std::move(__vfn), __val, + __timed_backoff_spin_policy(__atime))) + return true; + return __base_type::_M_w._M_do_wait_until(__base_type::_M_addr, __val, __atime); + } + + // returns true if wait ended before timeout + template<typename _Pred, + typename _Clock, typename _Dur> + bool + _M_do_wait_until(_Pred __pred, __platform_wait_t __val, + const chrono::time_point<_Clock, _Dur>& + __atime) noexcept + { + for (auto __now = _Clock::now(); __now < __atime; + __now = _Clock::now()) + { + if (__base_type::_M_w._M_do_wait_until( + __base_type::_M_addr, __val, __atime) + && __pred()) + return true; + + if (__base_type::_M_do_spin(__pred, __val, + __timed_backoff_spin_policy(__atime, __now))) + return true; + } + return false; + } + + // returns true if wait ended before timeout + template<typename _Pred, + typename _Clock, typename _Dur> + bool + _M_do_wait_until(_Pred __pred, + const chrono::time_point<_Clock, _Dur>& + __atime) noexcept + { + __platform_wait_t __val; + if (__base_type::_M_do_spin(__pred, __val, + __timed_backoff_spin_policy(__atime))) + return true; + return _M_do_wait_until(__pred, __val, __atime); + } + + template<typename _Tp, typename _ValFn, + typename _Rep, typename _Period> + bool + _M_do_wait_for_v(_Tp __old, _ValFn __vfn, + const chrono::duration<_Rep, _Period>& + __rtime) noexcept + { + __platform_wait_t __val; + if (_M_do_spin_v(__old, std::move(__vfn), __val)) + return true; + + if (!__rtime.count()) + return false; // no rtime supplied, and spin did not acquire + + auto __reltime = chrono::ceil<__wait_clock_t::duration>(__rtime); + + return __base_type::_M_w._M_do_wait_until( + __base_type::_M_addr, + __val, + chrono::steady_clock::now() + __reltime); + } + + template<typename _Pred, + typename _Rep, typename _Period> + bool + _M_do_wait_for(_Pred __pred, + const chrono::duration<_Rep, _Period>& __rtime) noexcept + { + __platform_wait_t __val; + if (__base_type::_M_do_spin(__pred, __val)) + return true; + + if (!__rtime.count()) + return false; // no rtime supplied, and spin did not acquire + + auto __reltime = chrono::ceil<__wait_clock_t::duration>(__rtime); + + return _M_do_wait_until(__pred, __val, + chrono::steady_clock::now() + __reltime); + } + }; + + using __enters_timed_wait = __timed_waiter<std::true_type>; + using __bare_timed_wait = __timed_waiter<std::false_type>; } // namespace __detail - template<typename _Tp, typename _Pred, - typename _Clock, typename _Duration> + // returns true if wait ended before timeout + template<typename _Tp, typename _ValFn, + typename _Clock, typename _Dur> bool - __atomic_wait_until(const _Tp* __addr, _Tp __old, _Pred __pred, - const chrono::time_point<_Clock, _Duration>& + __atomic_wait_address_until_v(const _Tp* __addr, _Tp&& __old, _ValFn&& __vfn, + const chrono::time_point<_Clock, _Dur>& __atime) noexcept { - using namespace __detail; + __detail::__enters_timed_wait __w{__addr}; + return __w._M_do_wait_until_v(__old, __vfn, __atime); + } - if (std::__atomic_spin(__pred)) - return true; + template<typename _Tp, typename _Pred, + typename _Clock, typename _Dur> + bool + __atomic_wait_address_until(const _Tp* __addr, _Pred __pred, + const chrono::time_point<_Clock, _Dur>& + __atime) noexcept + { + __detail::__enters_timed_wait __w{__addr}; + return __w._M_do_wait_until(__pred, __atime); + } - auto& __w = __timed_waiters::_S_timed_for((void*)__addr); - auto __version = __w._M_enter_wait(); - do - { - __atomic_wait_status __res; -#ifdef _GLIBCXX_HAVE_LINUX_FUTEX - if constexpr (__platform_wait_uses_type<_Tp>) - { - __res = __detail::__platform_wait_until((__platform_wait_t*)(void*) __addr, - __old, __atime); - } - else -#endif - { - __res = __w._M_do_wait_until(__version, __atime); - } - if (__res == __atomic_wait_status::timeout) - return false; - } - while (!__pred() && __atime < _Clock::now()); - __w._M_leave_wait(); + template<typename _Pred, + typename _Clock, typename _Dur> + bool + __atomic_wait_address_until_bare(const __detail::__platform_wait_t* __addr, + _Pred __pred, + const chrono::time_point<_Clock, _Dur>& + __atime) noexcept + { + __detail::__bare_timed_wait __w{__addr}; + return __w._M_do_wait_until(__pred, __atime); + } - // if timed out, return false - return (_Clock::now() < __atime); + template<typename _Tp, typename _ValFn, + typename _Rep, typename _Period> + bool + __atomic_wait_address_for_v(const _Tp* __addr, _Tp&& __old, _ValFn&& __vfn, + const chrono::duration<_Rep, _Period>& __rtime) noexcept + { + __detail::__enters_timed_wait __w{__addr}; + return __w._M_do_wait_for_v(__old, __vfn, __rtime); } template<typename _Tp, typename _Pred, typename _Rep, typename _Period> bool - __atomic_wait_for(const _Tp* __addr, _Tp __old, _Pred __pred, + __atomic_wait_address_for(const _Tp* __addr, _Pred __pred, const chrono::duration<_Rep, _Period>& __rtime) noexcept { - using namespace __detail; - if (std::__atomic_spin(__pred)) - return true; - - if (!__rtime.count()) - return false; // no rtime supplied, and spin did not acquire - - using __dur = chrono::steady_clock::duration; - auto __reltime = chrono::duration_cast<__dur>(__rtime); - if (__reltime < __rtime) - ++__reltime; + __detail::__enters_timed_wait __w{__addr}; + return __w._M_do_wait_for(__pred, __rtime); + } - return __atomic_wait_until(__addr, __old, std::move(__pred), - chrono::steady_clock::now() + __reltime); + template<typename _Pred, + typename _Rep, typename _Period> + bool + __atomic_wait_address_for_bare(const __detail::__platform_wait_t* __addr, + _Pred __pred, + const chrono::duration<_Rep, _Period>& __rtime) noexcept + { + __detail::__bare_timed_wait __w{__addr}; + return __w._M_do_wait_for(__pred, __rtime); } _GLIBCXX_END_NAMESPACE_VERSION } // namespace std diff --git a/libstdc++-v3/include/bits/atomic_wait.h b/libstdc++-v3/include/bits/atomic_wait.h index 424fccb..0ac5575 100644 --- a/libstdc++-v3/include/bits/atomic_wait.h +++ b/libstdc++-v3/include/bits/atomic_wait.h @@ -44,12 +44,10 @@ # include <unistd.h> # include <syscall.h> # include <bits/functexcept.h> -// TODO get this from Autoconf -# define _GLIBCXX_HAVE_LINUX_FUTEX_PRIVATE 1 -#else -# include <bits/std_mutex.h> // std::mutex, std::__condvar #endif +# include <bits/std_mutex.h> // std::mutex, std::__condvar + #define __cpp_lib_atomic_wait 201907L namespace std _GLIBCXX_VISIBILITY(default) @@ -57,20 +55,30 @@ namespace std _GLIBCXX_VISIBILITY(default) _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace __detail { +#ifdef _GLIBCXX_HAVE_LINUX_FUTEX using __platform_wait_t = int; + static constexpr size_t __platform_wait_alignment = 4; +#else + using __platform_wait_t = uint64_t; + static constexpr size_t __platform_wait_alignment + = __alignof__(__platform_wait_t); +#endif + } // namespace __detail - constexpr auto __atomic_spin_count_1 = 16; - constexpr auto __atomic_spin_count_2 = 12; - - template<typename _Tp> - inline constexpr bool __platform_wait_uses_type -#ifdef _GLIBCXX_HAVE_LINUX_FUTEX - = is_same_v<remove_cv_t<_Tp>, __platform_wait_t>; + template<typename _Tp> + inline constexpr bool __platform_wait_uses_type +#ifdef _GLIBCXX_HAVE_PLATFORM_WAIT + = is_scalar_v<_Tp> + && ((sizeof(_Tp) == sizeof(__detail::__platform_wait_t)) + && (alignof(_Tp*) >= __platform_wait_alignment)); #else - = false; + = false; #endif + namespace __detail + { #ifdef _GLIBCXX_HAVE_LINUX_FUTEX +#define _GLIBCXX_HAVE_PLATFORM_WAIT 1 enum class __futex_wait_flags : int { #ifdef _GLIBCXX_HAVE_LINUX_FUTEX_PRIVATE @@ -93,16 +101,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION void __platform_wait(const _Tp* __addr, __platform_wait_t __val) noexcept { - for(;;) - { - auto __e = syscall (SYS_futex, static_cast<const void*>(__addr), - static_cast<int>(__futex_wait_flags::__wait_private), - __val, nullptr); - if (!__e || errno == EAGAIN) - break; - else if (errno != EINTR) - __throw_system_error(__e); - } + auto __e = syscall (SYS_futex, static_cast<const void*>(__addr), + static_cast<int>(__futex_wait_flags::__wait_private), + __val, nullptr); + if (!__e || errno == EAGAIN) + return; + if (errno != EINTR) + __throw_system_error(errno); } template<typename _Tp> @@ -110,72 +115,124 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION __platform_notify(const _Tp* __addr, bool __all) noexcept { syscall (SYS_futex, static_cast<const void*>(__addr), - static_cast<int>(__futex_wait_flags::__wake_private), - __all ? INT_MAX : 1); + static_cast<int>(__futex_wait_flags::__wake_private), + __all ? INT_MAX : 1); } +#else +// define _GLIBCX_HAVE_PLATFORM_WAIT and implement __platform_wait() +// and __platform_notify() if there is a more efficient primitive supported +// by the platform (e.g. __ulock_wait()/__ulock_wake()) which is better than +// a mutex/condvar based wait #endif - struct __waiters + inline void + __thread_yield() noexcept { - alignas(64) __platform_wait_t _M_ver = 0; - alignas(64) __platform_wait_t _M_wait = 0; - -#ifndef _GLIBCXX_HAVE_LINUX_FUTEX - using __lock_t = lock_guard<mutex>; - mutex _M_mtx; - __condvar _M_cv; +#if defined _GLIBCXX_HAS_GTHREADS && defined _GLIBCXX_USE_SCHED_YIELD + __gthread_yield(); +#endif + } - __waiters() noexcept = default; + inline void + __thread_relax() noexcept + { +#if defined __i386__ || defined __x86_64__ + __builtin_ia32_pause(); +#else + __thread_yield(); #endif + } - __platform_wait_t - _M_enter_wait() noexcept + constexpr auto __atomic_spin_count_1 = 12; + constexpr auto __atomic_spin_count_2 = 4; + + struct __default_spin_policy + { + bool + operator()() const noexcept + { return false; } + }; + + template<typename _Pred, + typename _Spin = __default_spin_policy> + bool + __atomic_spin(_Pred& __pred, _Spin __spin = _Spin{ }) noexcept { - __platform_wait_t __res; - __atomic_load(&_M_ver, &__res, __ATOMIC_ACQUIRE); - __atomic_fetch_add(&_M_wait, 1, __ATOMIC_ACQ_REL); - return __res; + for (auto __i = 0; __i < __atomic_spin_count_1; ++__i) + { + if (__pred()) + return true; + __detail::__thread_relax(); + } + + for (auto __i = 0; __i < __atomic_spin_count_2; ++__i) + { + if (__pred()) + return true; + __detail::__thread_yield(); + } + + while (__spin()) + { + if (__pred()) + return true; + } + + return false; } - void - _M_leave_wait() noexcept + template<typename _Tp> + bool __atomic_compare(const _Tp& __a, const _Tp& __b) { - __atomic_fetch_sub(&_M_wait, 1, __ATOMIC_ACQ_REL); + // TODO make this do the correct padding bit ignoring comparison + return __builtin_memcmp(&__a, &__b, sizeof(_Tp)) != 0; } - void - _M_do_wait(__platform_wait_t __version) noexcept - { -#ifdef _GLIBCXX_HAVE_LINUX_FUTEX - __platform_wait(&_M_ver, __version); + struct __waiter_pool_base + { +#ifdef __cpp_lib_hardware_interference_size + static constexpr auto _S_align = hardware_destructive_interference_size; #else - __platform_wait_t __cur = 0; - while (__cur <= __version) - { - __waiters::__lock_t __l(_M_mtx); - _M_cv.wait(_M_mtx); - __platform_wait_t __last = __cur; - __atomic_load(&_M_ver, &__cur, __ATOMIC_ACQUIRE); - if (__cur < __last) - break; // break the loop if version overflows - } + static constexpr auto _S_align = 64; #endif - } + + alignas(_S_align) __platform_wait_t _M_wait = 0; + +#ifndef _GLIBCXX_HAVE_PLATFORM_WAIT + mutex _M_mtx; +#endif + + alignas(_S_align) __platform_wait_t _M_ver = 0; + +#ifndef _GLIBCXX_HAVE_PLATFORM_WAIT + __condvar _M_cv; +#endif + __waiter_pool_base() = default; + + void + _M_enter_wait() noexcept + { __atomic_fetch_add(&_M_wait, 1, __ATOMIC_ACQ_REL); } + + void + _M_leave_wait() noexcept + { __atomic_fetch_sub(&_M_wait, 1, __ATOMIC_ACQ_REL); } bool _M_waiting() const noexcept { __platform_wait_t __res; __atomic_load(&_M_wait, &__res, __ATOMIC_ACQUIRE); - return __res; + return __res > 0; } void - _M_notify(bool __all) noexcept + _M_notify(const __platform_wait_t* __addr, bool __all) noexcept { - __atomic_fetch_add(&_M_ver, 1, __ATOMIC_ACQ_REL); -#ifdef _GLIBCXX_HAVE_LINUX_FUTEX - __platform_notify(&_M_ver, __all); + if (!_M_waiting()) + return; + +#ifdef _GLIBCXX_HAVE_PLATFORM_WAIT + __platform_notify(__addr, __all); #else if (__all) _M_cv.notify_all(); @@ -184,114 +241,232 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #endif } - static __waiters& - _S_for(const void* __t) + static __waiter_pool_base& + _S_for(const void* __addr) noexcept { - const unsigned char __mask = 0xf; - static __waiters __w[__mask + 1]; - - auto __key = _Hash_impl::hash(__t) & __mask; + constexpr uintptr_t __ct = 16; + static __waiter_pool_base __w[__ct]; + auto __key = (uintptr_t(__addr) >> 2) % __ct; return __w[__key]; } }; - struct __waiter + struct __waiter_pool : __waiter_pool_base { - __waiters& _M_w; - __platform_wait_t _M_version; + void + _M_do_wait(const __platform_wait_t* __addr, __platform_wait_t __old) noexcept + { +#ifdef _GLIBCXX_HAVE_PLATFORM_WAIT + __platform_wait(__addr, __old); +#else + __platform_wait_t __val; + __atomic_load(__addr, &__val, __ATOMIC_RELAXED); + if (__val == __old) + { + lock_guard<mutex> __l(_M_mtx); + _M_cv.wait(_M_mtx); + } +#endif // __GLIBCXX_HAVE_PLATFORM_WAIT + } + }; - template<typename _Tp> - __waiter(const _Tp* __addr) noexcept - : _M_w(__waiters::_S_for(static_cast<const void*>(__addr))) - , _M_version(_M_w._M_enter_wait()) - { } + template<typename _Tp> + struct __waiter_base + { + using __waiter_type = _Tp; - ~__waiter() - { _M_w._M_leave_wait(); } + __waiter_type& _M_w; + __platform_wait_t* _M_addr; - void _M_do_wait() noexcept - { _M_w._M_do_wait(_M_version); } - }; + template<typename _Up> + static __platform_wait_t* + _S_wait_addr(const _Up* __a, __platform_wait_t* __b) + { + if constexpr (__platform_wait_uses_type<_Up>) + return reinterpret_cast<__platform_wait_t*>(const_cast<_Up*>(__a)); + else + return __b; + } - inline void - __thread_yield() noexcept - { -#if defined _GLIBCXX_HAS_GTHREADS && defined _GLIBCXX_USE_SCHED_YIELD - __gthread_yield(); -#endif - } + static __waiter_type& + _S_for(const void* __addr) noexcept + { + static_assert(sizeof(__waiter_type) == sizeof(__waiter_pool_base)); + auto& res = __waiter_pool_base::_S_for(__addr); + return reinterpret_cast<__waiter_type&>(res); + } - inline void - __thread_relax() noexcept - { -#if defined __i386__ || defined __x86_64__ - __builtin_ia32_pause(); -#else - __thread_yield(); -#endif - } - } // namespace __detail + template<typename _Up> + explicit __waiter_base(const _Up* __addr) noexcept + : _M_w(_S_for(__addr)) + , _M_addr(_S_wait_addr(__addr, &_M_w._M_ver)) + { + } - template<typename _Pred> - bool - __atomic_spin(_Pred& __pred) noexcept - { - for (auto __i = 0; __i < __detail::__atomic_spin_count_1; ++__i) + void + _M_notify(bool __all) { - if (__pred()) - return true; + if (_M_addr == &_M_w._M_ver) + __atomic_fetch_add(_M_addr, 1, __ATOMIC_ACQ_REL); + _M_w._M_notify(_M_addr, __all); + } - if (__i < __detail::__atomic_spin_count_2) - __detail::__thread_relax(); - else - __detail::__thread_yield(); + template<typename _Up, typename _ValFn, + typename _Spin = __default_spin_policy> + static bool + _S_do_spin_v(__platform_wait_t* __addr, + const _Up& __old, _ValFn __vfn, + __platform_wait_t& __val, + _Spin __spin = _Spin{ }) + { + auto const __pred = [=] + { return __detail::__atomic_compare(__old, __vfn()); }; + + if constexpr (__platform_wait_uses_type<_Up>) + { + __val == __old; + } + else + { + __atomic_load(__addr, &__val, __ATOMIC_RELAXED); + } + return __atomic_spin(__pred, __spin); + } + + template<typename _Up, typename _ValFn, + typename _Spin = __default_spin_policy> + bool + _M_do_spin_v(const _Up& __old, _ValFn __vfn, + __platform_wait_t& __val, + _Spin __spin = _Spin{ }) + { return _S_do_spin_v(_M_addr, __old, __vfn, __val, __spin); } + + template<typename _Pred, + typename _Spin = __default_spin_policy> + static bool + _S_do_spin(const __platform_wait_t* __addr, + _Pred __pred, + __platform_wait_t& __val, + _Spin __spin = _Spin{ }) + { + __atomic_load(__addr, &__val, __ATOMIC_RELAXED); + return __atomic_spin(__pred, __spin); + } + + template<typename _Pred, + typename _Spin = __default_spin_policy> + bool + _M_do_spin(_Pred __pred, __platform_wait_t& __val, + _Spin __spin = _Spin{ }) + { return _S_do_spin(_M_addr, __pred, __val, __spin); } + }; + + template<typename _EntersWait> + struct __waiter : __waiter_base<__waiter_pool> + { + using __base_type = __waiter_base<__waiter_pool>; + + template<typename _Tp> + explicit __waiter(const _Tp* __addr) noexcept + : __base_type(__addr) + { + if constexpr (_EntersWait::value) + _M_w._M_enter_wait(); + } + + ~__waiter() + { + if constexpr (_EntersWait::value) + _M_w._M_leave_wait(); } - return false; + + template<typename _Tp, typename _ValFn> + void + _M_do_wait_v(_Tp __old, _ValFn __vfn) + { + __platform_wait_t __val; + if (__base_type::_M_do_spin_v(__old, __vfn, __val)) + return; + __base_type::_M_w._M_do_wait(__base_type::_M_addr, __val); + } + + template<typename _Pred> + void + _M_do_wait(_Pred __pred) noexcept + { + do + { + __platform_wait_t __val; + if (__base_type::_M_do_spin(__pred, __val)) + return; + __base_type::_M_w._M_do_wait(__base_type::_M_addr, __val); + } + while (!__pred()); + } + }; + + using __enters_wait = __waiter<std::true_type>; + using __bare_wait = __waiter<std::false_type>; + } // namespace __detail + + template<typename _Tp, typename _ValFn> + void + __atomic_wait_address_v(const _Tp* __addr, _Tp __old, + _ValFn __vfn) noexcept + { + __detail::__enters_wait __w(__addr); + __w._M_do_wait_v(__old, __vfn); } template<typename _Tp, typename _Pred> void - __atomic_wait(const _Tp* __addr, _Tp __old, _Pred __pred) noexcept + __atomic_wait_address(const _Tp* __addr, _Pred __pred) noexcept { - using namespace __detail; - if (std::__atomic_spin(__pred)) - return; + __detail::__enters_wait __w(__addr); + __w._M_do_wait(__pred); + } - __waiter __w(__addr); - while (!__pred()) + // This call is to be used by atomic types which track contention externally + template<typename _Pred> + void + __atomic_wait_address_bare(const __detail::__platform_wait_t* __addr, + _Pred __pred) noexcept + { +#ifdef _GLIBCXX_HAVE_PLATFORM_WAIT + do { - if constexpr (__platform_wait_uses_type<_Tp>) - { - __platform_wait(__addr, __old); - } - else - { - // TODO support timed backoff when this can be moved into the lib - __w._M_do_wait(); - } + __detail::__platform_wait_t __val; + if (__detail::__bare_wait::_S_do_spin(__addr, __pred, __val)) + return; + __detail::__platform_wait(__addr, __val); } + while (!__pred()); +#else // !_GLIBCXX_HAVE_PLATFORM_WAIT + __detail::__bare_wait __w(__addr); + __w._M_do_wait(__pred); +#endif } template<typename _Tp> void - __atomic_notify(const _Tp* __addr, bool __all) noexcept + __atomic_notify_address(const _Tp* __addr, bool __all) noexcept { - using namespace __detail; - auto& __w = __waiters::_S_for((void*)__addr); - if (!__w._M_waiting()) - return; + __detail::__bare_wait __w(__addr); + __w._M_notify(__all); + } -#ifdef _GLIBCXX_HAVE_LINUX_FUTEX - if constexpr (__platform_wait_uses_type<_Tp>) - { - __platform_notify((__platform_wait_t*)(void*) __addr, __all); - } - else + // This call is to be used by atomic types which track contention externally + inline void + __atomic_notify_address_bare(const __detail::__platform_wait_t* __addr, + bool __all) noexcept + { +#ifdef _GLIBCXX_HAVE_PLATFORM_WAIT + __detail::__platform_notify(__addr, __all); +#else + __detail::__bare_wait __w(__addr); + __w._M_notify(__all); #endif - { - __w._M_notify(__all); - } - } + } _GLIBCXX_END_NAMESPACE_VERSION } // namespace std #endif // GTHREADS || LINUX_FUTEX diff --git a/libstdc++-v3/include/bits/semaphore_base.h b/libstdc++-v3/include/bits/semaphore_base.h index b65717e..84b3342 100644 --- a/libstdc++-v3/include/bits/semaphore_base.h +++ b/libstdc++-v3/include/bits/semaphore_base.h @@ -35,8 +35,8 @@ #include <bits/atomic_base.h> #if __cpp_lib_atomic_wait #include <bits/atomic_timed_wait.h> - #include <ext/numeric_traits.h> +#endif // __cpp_lib_atomic_wait #ifdef _GLIBCXX_HAVE_POSIX_SEMAPHORE # include <limits.h> @@ -86,6 +86,24 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } } + _GLIBCXX_ALWAYS_INLINE bool + _M_try_acquire() noexcept + { + for (;;) + { + auto __err = sem_trywait(&_M_semaphore); + if (__err && (errno == EINTR)) + continue; + else if (__err && (errno == EAGAIN)) + return false; + else if (__err) + std::terminate(); + else + break; + } + return true; + } + _GLIBCXX_ALWAYS_INLINE void _M_release(std::ptrdiff_t __update) noexcept { @@ -164,138 +182,97 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION }; #endif // _GLIBCXX_HAVE_POSIX_SEMAPHORE - template<typename _Tp> - struct __atomic_semaphore +#if __cpp_lib_atomic_wait + struct __atomic_semaphore + { + static constexpr ptrdiff_t _S_max = __gnu_cxx::__int_traits<int>::__max; + explicit __atomic_semaphore(__detail::__platform_wait_t __count) noexcept + : _M_counter(__count) { - static_assert(std::is_integral_v<_Tp>); - static_assert(__gnu_cxx::__int_traits<_Tp>::__max - <= __gnu_cxx::__int_traits<ptrdiff_t>::__max); - static constexpr ptrdiff_t _S_max = __gnu_cxx::__int_traits<_Tp>::__max; + __glibcxx_assert(__count >= 0 && __count <= _S_max); + } - explicit __atomic_semaphore(_Tp __count) noexcept - : _M_counter(__count) - { - __glibcxx_assert(__count >= 0 && __count <= _S_max); - } + __atomic_semaphore(const __atomic_semaphore&) = delete; + __atomic_semaphore& operator=(const __atomic_semaphore&) = delete; - __atomic_semaphore(const __atomic_semaphore&) = delete; - __atomic_semaphore& operator=(const __atomic_semaphore&) = delete; + static _GLIBCXX_ALWAYS_INLINE bool + _S_do_try_acquire(__detail::__platform_wait_t* __counter) noexcept + { + auto __old = __atomic_impl::load(__counter, memory_order::acquire); + if (__old == 0) + return false; + + return __atomic_impl::compare_exchange_strong(__counter, + __old, __old - 1, + memory_order::acquire, + memory_order::relaxed); + } - _GLIBCXX_ALWAYS_INLINE void - _M_acquire() noexcept - { - auto const __pred = [this] - { - auto __old = __atomic_impl::load(&this->_M_counter, - memory_order::acquire); - if (__old == 0) - return false; - return __atomic_impl::compare_exchange_strong(&this->_M_counter, - __old, __old - 1, - memory_order::acquire, - memory_order::release); - }; - auto __old = __atomic_impl::load(&_M_counter, memory_order_relaxed); - std::__atomic_wait(&_M_counter, __old, __pred); - } + _GLIBCXX_ALWAYS_INLINE void + _M_acquire() noexcept + { + auto const __pred = + [this] { return _S_do_try_acquire(&this->_M_counter); }; + std::__atomic_wait_address_bare(&_M_counter, __pred); + } - bool - _M_try_acquire() noexcept - { - auto __old = __atomic_impl::load(&_M_counter, memory_order::acquire); - auto const __pred = [this, __old] - { - if (__old == 0) - return false; - - auto __prev = __old; - return __atomic_impl::compare_exchange_weak(&this->_M_counter, - __prev, __prev - 1, - memory_order::acquire, - memory_order::release); - }; - return std::__atomic_spin(__pred); - } + bool + _M_try_acquire() noexcept + { + auto const __pred = + [this] { return _S_do_try_acquire(&this->_M_counter); }; + return std::__detail::__atomic_spin(__pred); + } - template<typename _Clock, typename _Duration> - _GLIBCXX_ALWAYS_INLINE bool - _M_try_acquire_until(const chrono::time_point<_Clock, - _Duration>& __atime) noexcept - { - auto const __pred = [this] - { - auto __old = __atomic_impl::load(&this->_M_counter, - memory_order::acquire); - if (__old == 0) - return false; - return __atomic_impl::compare_exchange_strong(&this->_M_counter, - __old, __old - 1, - memory_order::acquire, - memory_order::release); - }; - - auto __old = __atomic_impl::load(&_M_counter, memory_order_relaxed); - return __atomic_wait_until(&_M_counter, __old, __pred, __atime); - } + template<typename _Clock, typename _Duration> + _GLIBCXX_ALWAYS_INLINE bool + _M_try_acquire_until(const chrono::time_point<_Clock, + _Duration>& __atime) noexcept + { + auto const __pred = + [this] { return _S_do_try_acquire(&this->_M_counter); }; - template<typename _Rep, typename _Period> - _GLIBCXX_ALWAYS_INLINE bool - _M_try_acquire_for(const chrono::duration<_Rep, _Period>& __rtime) - noexcept - { - auto const __pred = [this] - { - auto __old = __atomic_impl::load(&this->_M_counter, - memory_order::acquire); - if (__old == 0) - return false; - return __atomic_impl::compare_exchange_strong(&this->_M_counter, - __old, __old - 1, - memory_order::acquire, - memory_order::release); - }; - - auto __old = __atomic_impl::load(&_M_counter, memory_order_relaxed); - return __atomic_wait_for(&_M_counter, __old, __pred, __rtime); - } + return __atomic_wait_address_until_bare(&_M_counter, __pred, __atime); + } - _GLIBCXX_ALWAYS_INLINE void - _M_release(ptrdiff_t __update) noexcept + template<typename _Rep, typename _Period> + _GLIBCXX_ALWAYS_INLINE bool + _M_try_acquire_for(const chrono::duration<_Rep, _Period>& __rtime) + noexcept { - if (0 < __atomic_impl::fetch_add(&_M_counter, __update, memory_order_release)) - return; - if (__update > 1) - __atomic_impl::notify_all(&_M_counter); - else - __atomic_impl::notify_one(&_M_counter); + auto const __pred = + [this] { return _S_do_try_acquire(&this->_M_counter); }; + + return __atomic_wait_address_for_bare(&_M_counter, __pred, __rtime); } - private: - alignas(__alignof__(_Tp)) _Tp _M_counter; - }; + _GLIBCXX_ALWAYS_INLINE void + _M_release(ptrdiff_t __update) noexcept + { + if (0 < __atomic_impl::fetch_add(&_M_counter, __update, memory_order_release)) + return; + if (__update > 1) + __atomic_notify_address_bare(&_M_counter, true); + else + __atomic_notify_address_bare(&_M_counter, false); + } + + private: + alignas(__detail::__platform_wait_alignment) + __detail::__platform_wait_t _M_counter; + }; +#endif // __cpp_lib_atomic_wait // Note: the _GLIBCXX_REQUIRE_POSIX_SEMAPHORE macro can be used to force the // use of Posix semaphores (sem_t). Doing so however, alters the ABI. -#if defined _GLIBCXX_HAVE_LINUX_FUTEX && !_GLIBCXX_REQUIRE_POSIX_SEMAPHORE - // Use futex if available and didn't force use of POSIX - using __fast_semaphore = __atomic_semaphore<__detail::__platform_wait_t>; +#if defined __cpp_lib_atomic_wait && !_GLIBCXX_REQUIRE_POSIX_SEMAPHORE + using __semaphore_impl = __atomic_semaphore; #elif _GLIBCXX_HAVE_POSIX_SEMAPHORE - using __fast_semaphore = __platform_semaphore; + using __semaphore_impl = __platform_semaphore; #else - using __fast_semaphore = __atomic_semaphore<ptrdiff_t>; +# error "No suitable semaphore implementation available" #endif -template<ptrdiff_t __least_max_value> - using __semaphore_impl = conditional_t< - (__least_max_value > 1), - conditional_t< - (__least_max_value <= __fast_semaphore::_S_max), - __fast_semaphore, - __atomic_semaphore<ptrdiff_t>>, - __fast_semaphore>; - _GLIBCXX_END_NAMESPACE_VERSION } // namespace std - -#endif // __cpp_lib_atomic_wait #endif // _GLIBCXX_SEMAPHORE_BASE_H diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h index dc8b101..049f83c 100644 --- a/libstdc++-v3/include/bits/stl_iterator.h +++ b/libstdc++-v3/include/bits/stl_iterator.h @@ -1302,6 +1302,24 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION }; #endif // C++20 + namespace __detail + { +#if __cplusplus > 201703L && __cpp_lib_concepts + template<typename _Iterator> + struct __move_iter_cat + { }; + + template<typename _Iterator> + requires requires { typename iterator_traits<_Iterator>::iterator_category; } + struct __move_iter_cat<_Iterator> + { + using iterator_category + = __clamp_iter_cat<typename iterator_traits<_Iterator>::iterator_category, + random_access_iterator_tag>; + }; +#endif + } + // 24.4.3 Move iterators /** * Class template move_iterator is an iterator adapter with the same @@ -1313,13 +1331,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION */ template<typename _Iterator> class move_iterator +#if __cplusplus > 201703L && __cpp_lib_concepts + : public __detail::__move_iter_cat<_Iterator> +#endif { _Iterator _M_current; using __traits_type = iterator_traits<_Iterator>; -#if __cplusplus > 201703L && __cpp_lib_concepts - using __base_cat = typename __traits_type::iterator_category; -#else +#if ! (__cplusplus > 201703L && __cpp_lib_concepts) using __base_ref = typename __traits_type::reference; #endif @@ -1339,8 +1358,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #if __cplusplus > 201703L && __cpp_lib_concepts using iterator_concept = input_iterator_tag; - using iterator_category - = __detail::__clamp_iter_cat<__base_cat, random_access_iterator_tag>; + // iterator_category defined in __move_iter_cat using value_type = iter_value_t<_Iterator>; using difference_type = iter_difference_t<_Iterator>; using pointer = _Iterator; @@ -1662,6 +1680,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION || is_reference_v<iter_reference_t<_It>> || constructible_from<iter_value_t<_It>, iter_reference_t<_It>>); + template<typename _It> + concept __common_iter_use_postfix_proxy + = (!requires (_It& __i) { { *__i++ } -> __can_reference; }) + && constructible_from<iter_value_t<_It>, iter_reference_t<_It>>; } // namespace __detail /// An iterator/sentinel adaptor for representing a non-common range. @@ -1684,11 +1706,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _S_noexcept() { return _S_noexcept1<_It, _It2>() && _S_noexcept1<_Sent, _Sent2>(); } - class _Proxy + class __arrow_proxy { iter_value_t<_It> _M_keep; - _Proxy(iter_reference_t<_It>&& __x) + __arrow_proxy(iter_reference_t<_It>&& __x) : _M_keep(std::move(__x)) { } friend class common_iterator; @@ -1699,6 +1721,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION { return std::__addressof(_M_keep); } }; + class __postfix_proxy + { + iter_value_t<_It> _M_keep; + + __postfix_proxy(iter_reference_t<_It>&& __x) + : _M_keep(std::move(__x)) { } + + friend class common_iterator; + + public: + const iter_value_t<_It>& + operator*() const + { return _M_keep; } + }; + public: constexpr common_iterator() @@ -1855,7 +1892,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return std::__addressof(__tmp); } else - return _Proxy{*_M_it}; + return __arrow_proxy{*_M_it}; } common_iterator& @@ -1876,8 +1913,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ++*this; return __tmp; } - else + else if constexpr (!__detail::__common_iter_use_postfix_proxy<_It>) return _M_it++; + else + { + __postfix_proxy __p(**this); + ++*this; + return __p; + } } template<typename _It2, sentinel_for<_It> _Sent2> @@ -2008,12 +2051,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION using type = decltype(std::declval<const _CIter&>().operator->()); }; + static auto + _S_iter_cat() + { + using _Traits = iterator_traits<_It>; + if constexpr (requires { requires derived_from<typename _Traits::iterator_category, + forward_iterator_tag>; }) + return forward_iterator_tag{}; + else + return input_iterator_tag{}; + } + public: using iterator_concept = conditional_t<forward_iterator<_It>, forward_iterator_tag, input_iterator_tag>; - using iterator_category = __detail::__clamp_iter_cat< - typename iterator_traits<_It>::iterator_category, - forward_iterator_tag, input_iterator_tag>; + using iterator_category = decltype(_S_iter_cat()); using value_type = iter_value_t<_It>; using difference_type = iter_difference_t<_It>; using pointer = typename __ptr<_It>::type; @@ -2022,12 +2074,48 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // [iterators.counted] Counted iterators + namespace __detail + { + template<typename _It> + struct __counted_iter_value_type + { }; + + template<indirectly_readable _It> + struct __counted_iter_value_type<_It> + { using value_type = iter_value_t<_It>; }; + + template<typename _It> + struct __counted_iter_concept + { }; + + template<typename _It> + requires requires { typename _It::iterator_concept; } + struct __counted_iter_concept<_It> + { using iterator_concept = typename _It::iterator_concept; }; + + template<typename _It> + struct __counted_iter_cat + { }; + + template<typename _It> + requires requires { typename _It::iterator_category; } + struct __counted_iter_cat<_It> + { using iterator_category = typename _It::iterator_category; }; + } + /// An iterator adaptor that keeps track of the distance to the end. template<input_or_output_iterator _It> class counted_iterator + : public __detail::__counted_iter_value_type<_It>, + public __detail::__counted_iter_concept<_It>, + public __detail::__counted_iter_cat<_It> { public: using iterator_type = _It; + // value_type defined in __counted_iter_value_type + using difference_type = iter_difference_t<_It>; + // iterator_concept defined in __counted_iter_concept + // iterator_category defined in __counted_iter_cat constexpr counted_iterator() = default; @@ -2084,6 +2172,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return *_M_current; } + constexpr auto + operator->() const noexcept + requires contiguous_iterator<_It> + { return std::to_address(_M_current); } + constexpr counted_iterator& operator++() { @@ -2232,16 +2325,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION iter_difference_t<_It> _M_length = 0; }; - template<typename _It> - struct incrementable_traits<counted_iterator<_It>> - { - using difference_type = iter_difference_t<_It>; - }; - template<input_iterator _It> + requires same_as<__detail::__iter_traits<_It>, iterator_traits<_It>> struct iterator_traits<counted_iterator<_It>> : iterator_traits<_It> { - using pointer = void; + using pointer = conditional_t<contiguous_iterator<_It>, + add_pointer_t<iter_reference_t<_It>>, + void>; }; #endif // C++20 diff --git a/libstdc++-v3/include/bits/this_thread_sleep.h b/libstdc++-v3/include/bits/this_thread_sleep.h new file mode 100644 index 0000000..a87da38 --- /dev/null +++ b/libstdc++-v3/include/bits/this_thread_sleep.h @@ -0,0 +1,119 @@ +// std::this_thread::sleep_for/until declarations -*- C++ -*- + +// Copyright (C) 2008-2021 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// Under Section 7 of GPL version 3, you are granted additional +// permissions described in the GCC Runtime Library Exception, version +// 3.1, as published by the Free Software Foundation. + +// You should have received a copy of the GNU General Public License and +// a copy of the GCC Runtime Library Exception along with this program; +// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +// <http://www.gnu.org/licenses/>. + +/** @file bits/std_thread_sleep.h + * This is an internal header file, included by other library headers. + * Do not attempt to use it directly. @headername{thread} + */ + +#ifndef _GLIBCXX_THIS_THREAD_SLEEP_H +#define _GLIBCXX_THIS_THREAD_SLEEP_H 1 + +#pragma GCC system_header + +#if __cplusplus >= 201103L +#include <bits/c++config.h> + +#include <chrono> // std::chrono::* + +#ifdef _GLIBCXX_USE_NANOSLEEP +# include <cerrno> // errno, EINTR +# include <time.h> // nanosleep +#endif + +namespace std _GLIBCXX_VISIBILITY(default) +{ +_GLIBCXX_BEGIN_NAMESPACE_VERSION + + /** @addtogroup threads + * @{ + */ + + /** @namespace std::this_thread + * @brief ISO C++ 2011 namespace for interacting with the current thread + * + * C++11 30.3.2 [thread.thread.this] Namespace this_thread. + */ + namespace this_thread + { +#ifndef _GLIBCXX_NO_SLEEP + +#ifndef _GLIBCXX_USE_NANOSLEEP + void + __sleep_for(chrono::seconds, chrono::nanoseconds); +#endif + + /// this_thread::sleep_for + template<typename _Rep, typename _Period> + inline void + sleep_for(const chrono::duration<_Rep, _Period>& __rtime) + { + if (__rtime <= __rtime.zero()) + return; + auto __s = chrono::duration_cast<chrono::seconds>(__rtime); + auto __ns = chrono::duration_cast<chrono::nanoseconds>(__rtime - __s); +#ifdef _GLIBCXX_USE_NANOSLEEP + struct ::timespec __ts = + { + static_cast<std::time_t>(__s.count()), + static_cast<long>(__ns.count()) + }; + while (::nanosleep(&__ts, &__ts) == -1 && errno == EINTR) + { } +#else + __sleep_for(__s, __ns); +#endif + } + + /// this_thread::sleep_until + template<typename _Clock, typename _Duration> + inline void + sleep_until(const chrono::time_point<_Clock, _Duration>& __atime) + { +#if __cplusplus > 201703L + static_assert(chrono::is_clock_v<_Clock>); +#endif + auto __now = _Clock::now(); + if (_Clock::is_steady) + { + if (__now < __atime) + sleep_for(__atime - __now); + return; + } + while (__now < __atime) + { + sleep_for(__atime - __now); + __now = _Clock::now(); + } + } + } // namespace this_thread +#endif // ! NO_SLEEP + + /// @} + +_GLIBCXX_END_NAMESPACE_VERSION +} // namespace +#endif // C++11 + +#endif // _GLIBCXX_THIS_THREAD_SLEEP_H diff --git a/libstdc++-v3/include/std/atomic b/libstdc++-v3/include/std/atomic index a77edcb..9b1fb15 100644 --- a/libstdc++-v3/include/std/atomic +++ b/libstdc++-v3/include/std/atomic @@ -384,26 +384,19 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION void wait(_Tp __old, memory_order __m = memory_order_seq_cst) const noexcept { - std::__atomic_wait(&_M_i, __old, - [__m, this, __old] - { - const auto __v = this->load(__m); - // TODO make this ignore padding bits when we - // can do that - return __builtin_memcmp(&__old, &__v, - sizeof(_Tp)) != 0; - }); + std::__atomic_wait_address_v(&_M_i, __old, + [__m, this] { return this->load(__m); }); } // TODO add const volatile overload void notify_one() const noexcept - { std::__atomic_notify(&_M_i, false); } + { std::__atomic_notify_address(&_M_i, false); } void notify_all() const noexcept - { std::__atomic_notify(&_M_i, true); } + { std::__atomic_notify_address(&_M_i, true); } #endif // __cpp_lib_atomic_wait }; diff --git a/libstdc++-v3/include/std/barrier b/libstdc++-v3/include/std/barrier index 6f2b987..fd61fb4 100644 --- a/libstdc++-v3/include/std/barrier +++ b/libstdc++-v3/include/std/barrier @@ -94,7 +94,7 @@ It looks different from literature pseudocode for two main reasons: alignas(__phase_alignment) __barrier_phase_t _M_phase; bool - _M_arrive(__barrier_phase_t __old_phase) + _M_arrive(__barrier_phase_t __old_phase, size_t __current) { const auto __old_phase_val = static_cast<unsigned char>(__old_phase); const auto __half_step = @@ -104,8 +104,7 @@ It looks different from literature pseudocode for two main reasons: size_t __current_expected = _M_expected; std::hash<std::thread::id> __hasher; - size_t __current = __hasher(std::this_thread::get_id()) - % ((_M_expected + 1) >> 1); + __current %= ((_M_expected + 1) >> 1); for (int __round = 0; ; ++__round) { @@ -163,12 +162,14 @@ It looks different from literature pseudocode for two main reasons: [[nodiscard]] arrival_token arrive(ptrdiff_t __update) { + std::hash<std::thread::id> __hasher; + size_t __current = __hasher(std::this_thread::get_id()); __atomic_phase_ref_t __phase(_M_phase); const auto __old_phase = __phase.load(memory_order_relaxed); const auto __cur = static_cast<unsigned char>(__old_phase); for(; __update; --__update) { - if(_M_arrive(__old_phase)) + if(_M_arrive(__old_phase, __current)) { _M_completion(); _M_expected += _M_expected_adjustment.load(memory_order_relaxed); @@ -185,11 +186,11 @@ It looks different from literature pseudocode for two main reasons: wait(arrival_token&& __old_phase) const { __atomic_phase_const_ref_t __phase(_M_phase); - auto const __test_fn = [=, this] + auto const __test_fn = [=] { return __phase.load(memory_order_acquire) != __old_phase; }; - std::__atomic_wait(&_M_phase, __old_phase, __test_fn); + std::__atomic_wait_address(&_M_phase, __test_fn); } void diff --git a/libstdc++-v3/include/std/charconv b/libstdc++-v3/include/std/charconv index 851b1e5..6e407f3 100644 --- a/libstdc++-v3/include/std/charconv +++ b/libstdc++-v3/include/std/charconv @@ -44,8 +44,9 @@ #include <bits/error_constants.h> // for std::errc #include <ext/numeric_traits.h> -// FIXME: Define when floating point is supported: -// #define __cpp_lib_to_chars 201611L +#if _GLIBCXX_HAVE_USELOCALE +# define __cpp_lib_to_chars 201611L +#endif namespace std _GLIBCXX_VISIBILITY(default) { diff --git a/libstdc++-v3/include/std/latch b/libstdc++-v3/include/std/latch index ef8c301..f00fcf3 100644 --- a/libstdc++-v3/include/std/latch +++ b/libstdc++-v3/include/std/latch @@ -2,7 +2,7 @@ // Copyright (C) 2020-2021 Free Software Foundation, Inc. // -// This file is part of the GNU ISO C++ Library. This library is free +// This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the // terms of the GNU General Public License as published by the // Free Software Foundation; either version 3, or (at your option) @@ -10,7 +10,7 @@ // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // Under Section 7 of GPL version 3, you are granted additional @@ -19,7 +19,7 @@ // You should have received a copy of the GNU General Public License and // a copy of the GCC Runtime Library Exception along with this program; -// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. /** @file include/latch @@ -48,7 +48,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION public: static constexpr ptrdiff_t max() noexcept - { return __gnu_cxx::__int_traits<ptrdiff_t>::__max; } + { return __gnu_cxx::__int_traits<__detail::__platform_wait_t>::__max; } constexpr explicit latch(ptrdiff_t __expected) noexcept : _M_a(__expected) { } @@ -73,8 +73,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _GLIBCXX_ALWAYS_INLINE void wait() const noexcept { - auto const __old = __atomic_impl::load(&_M_a, memory_order::acquire); - std::__atomic_wait(&_M_a, __old, [this] { return this->try_wait(); }); + auto const __pred = [this] { return this->try_wait(); }; + std::__atomic_wait_address(&_M_a, __pred); } _GLIBCXX_ALWAYS_INLINE void @@ -85,7 +85,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } private: - alignas(__alignof__(ptrdiff_t)) ptrdiff_t _M_a; + alignas(__alignof__(__detail::__platform_wait_t)) __detail::__platform_wait_t _M_a; }; _GLIBCXX_END_NAMESPACE_VERSION } // namespace diff --git a/libstdc++-v3/include/std/ranges b/libstdc++-v3/include/std/ranges index baec8c0..74075a2 100644 --- a/libstdc++-v3/include/std/ranges +++ b/libstdc++-v3/include/std/ranges @@ -290,6 +290,13 @@ namespace ranges { __j - __j } -> convertible_to<__iota_diff_t<_It>>; }; + template<typename _Winc> + struct __iota_view_iter_cat + { }; + + template<incrementable _Winc> + struct __iota_view_iter_cat<_Winc> + { using iterator_category = input_iterator_tag; }; } // namespace __detail template<weakly_incrementable _Winc, @@ -301,11 +308,11 @@ namespace ranges private: struct _Sentinel; - struct _Iterator + struct _Iterator : __detail::__iota_view_iter_cat<_Winc> { private: static auto - _S_iter_cat() + _S_iter_concept() { using namespace __detail; if constexpr (__advanceable<_Winc>) @@ -319,7 +326,8 @@ namespace ranges } public: - using iterator_category = decltype(_S_iter_cat()); + using iterator_concept = decltype(_S_iter_concept()); + // iterator_category defined in __iota_view_iter_cat using value_type = _Winc; using difference_type = __detail::__iota_diff_t<_Winc>; @@ -1100,7 +1108,32 @@ namespace views::__adaptor _M_offset = __it - ranges::begin(__r); } }; + } // namespace __detail + + namespace __detail + { + template<typename _Base> + struct __filter_view_iter_cat + { }; + template<forward_range _Base> + struct __filter_view_iter_cat<_Base> + { + private: + static auto + _S_iter_cat() + { + using _Cat = typename iterator_traits<iterator_t<_Base>>::iterator_category; + if constexpr (derived_from<_Cat, bidirectional_iterator_tag>) + return bidirectional_iterator_tag{}; + else if constexpr (derived_from<_Cat, forward_iterator_tag>) + return forward_iterator_tag{}; + else + return _Cat{}; + } + public: + using iterator_category = decltype(_S_iter_cat()); + }; } // namespace __detail template<input_range _Vp, @@ -1111,7 +1144,7 @@ namespace views::__adaptor private: struct _Sentinel; - struct _Iterator + struct _Iterator : __detail::__filter_view_iter_cat<_Vp> { private: static constexpr auto @@ -1125,18 +1158,6 @@ namespace views::__adaptor return input_iterator_tag{}; } - static constexpr auto - _S_iter_cat() - { - using _Cat = typename iterator_traits<_Vp_iter>::iterator_category; - if constexpr (derived_from<_Cat, bidirectional_iterator_tag>) - return bidirectional_iterator_tag{}; - else if constexpr (derived_from<_Cat, forward_iterator_tag>) - return forward_iterator_tag{}; - else - return _Cat{}; - } - friend filter_view; using _Vp_iter = iterator_t<_Vp>; @@ -1146,7 +1167,7 @@ namespace views::__adaptor public: using iterator_concept = decltype(_S_iter_concept()); - using iterator_category = decltype(_S_iter_cat()); + // iterator_category defined in __filter_view_iter_cat using value_type = range_value_t<_Vp>; using difference_type = range_difference_t<_Vp>; @@ -1344,36 +1365,26 @@ namespace views::__adaptor { private: template<bool _Const> - struct _Sentinel; + using _Base = __detail::__maybe_const_t<_Const, _Vp>; template<bool _Const> - struct _Iterator + struct __iter_cat + { }; + + template<bool _Const> + requires forward_range<_Base<_Const>> + struct __iter_cat<_Const> { private: - using _Parent = __detail::__maybe_const_t<_Const, transform_view>; - using _Base = __detail::__maybe_const_t<_Const, _Vp>; - - static constexpr auto - _S_iter_concept() - { - if constexpr (random_access_range<_Vp>) - return random_access_iterator_tag{}; - else if constexpr (bidirectional_range<_Vp>) - return bidirectional_iterator_tag{}; - else if constexpr (forward_range<_Vp>) - return forward_iterator_tag{}; - else - return input_iterator_tag{}; - } - - static constexpr auto + static auto _S_iter_cat() { + using _Base = transform_view::_Base<_Const>; using _Res = invoke_result_t<_Fp&, range_reference_t<_Base>>; if constexpr (is_lvalue_reference_v<_Res>) { using _Cat - = typename iterator_traits<_Base_iter>::iterator_category; + = typename iterator_traits<iterator_t<_Base>>::iterator_category; if constexpr (derived_from<_Cat, contiguous_iterator_tag>) return random_access_iterator_tag{}; else @@ -1382,6 +1393,32 @@ namespace views::__adaptor else return input_iterator_tag{}; } + public: + using iterator_category = decltype(_S_iter_cat()); + }; + + template<bool _Const> + struct _Sentinel; + + template<bool _Const> + struct _Iterator : __iter_cat<_Const> + { + private: + using _Parent = __detail::__maybe_const_t<_Const, transform_view>; + using _Base = transform_view::_Base<_Const>; + + static auto + _S_iter_concept() + { + if constexpr (random_access_range<_Vp>) + return random_access_iterator_tag{}; + else if constexpr (bidirectional_range<_Vp>) + return bidirectional_iterator_tag{}; + else if constexpr (forward_range<_Vp>) + return forward_iterator_tag{}; + else + return input_iterator_tag{}; + } using _Base_iter = iterator_t<_Base>; @@ -1390,7 +1427,7 @@ namespace views::__adaptor public: using iterator_concept = decltype(_S_iter_concept()); - using iterator_category = decltype(_S_iter_cat()); + // iterator_category defined in __transform_view_iter_cat using value_type = remove_cvref_t<invoke_result_t<_Fp&, range_reference_t<_Base>>>; using difference_type = range_difference_t<_Base>; @@ -1556,7 +1593,7 @@ namespace views::__adaptor { private: using _Parent = __detail::__maybe_const_t<_Const, transform_view>; - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = transform_view::_Base<_Const>; template<bool _Const2> constexpr auto @@ -2211,17 +2248,61 @@ namespace views::__adaptor using _InnerRange = range_reference_t<_Vp>; template<bool _Const> + using _Base = __detail::__maybe_const_t<_Const, _Vp>; + + template<bool _Const> + using _Outer_iter = iterator_t<_Base<_Const>>; + + template<bool _Const> + using _Inner_iter = iterator_t<range_reference_t<_Base<_Const>>>; + + template<bool _Const> + static constexpr bool _S_ref_is_glvalue + = is_reference_v<range_reference_t<_Base<_Const>>>; + + template<bool _Const> + struct __iter_cat + { }; + + template<bool _Const> + requires _S_ref_is_glvalue<_Const> + && forward_range<_Base<_Const>> + && forward_range<range_reference_t<_Base<_Const>>> + struct __iter_cat<_Const> + { + private: + static constexpr auto + _S_iter_cat() + { + using _Outer_iter = join_view::_Outer_iter<_Const>; + using _Inner_iter = join_view::_Inner_iter<_Const>; + using _OuterCat = typename iterator_traits<_Outer_iter>::iterator_category; + using _InnerCat = typename iterator_traits<_Inner_iter>::iterator_category; + if constexpr (derived_from<_OuterCat, bidirectional_iterator_tag> + && derived_from<_InnerCat, bidirectional_iterator_tag>) + return bidirectional_iterator_tag{}; + else if constexpr (derived_from<_OuterCat, forward_iterator_tag> + && derived_from<_InnerCat, forward_iterator_tag>) + return forward_iterator_tag{}; + else + return input_iterator_tag{}; + } + public: + using iterator_category = decltype(_S_iter_cat()); + }; + + template<bool _Const> struct _Sentinel; template<bool _Const> - struct _Iterator + struct _Iterator : __iter_cat<_Const> { private: using _Parent = __detail::__maybe_const_t<_Const, join_view>; - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = join_view::_Base<_Const>; static constexpr bool _S_ref_is_glvalue - = is_reference_v<range_reference_t<_Base>>; + = join_view::_S_ref_is_glvalue<_Const>; constexpr void _M_satisfy() @@ -2261,30 +2342,8 @@ namespace views::__adaptor return input_iterator_tag{}; } - static constexpr auto - _S_iter_cat() - { - using _OuterCat - = typename iterator_traits<_Outer_iter>::iterator_category; - using _InnerCat - = typename iterator_traits<_Inner_iter>::iterator_category; - if constexpr (_S_ref_is_glvalue - && derived_from<_OuterCat, bidirectional_iterator_tag> - && derived_from<_InnerCat, bidirectional_iterator_tag>) - return bidirectional_iterator_tag{}; - else if constexpr (_S_ref_is_glvalue - && derived_from<_OuterCat, forward_iterator_tag> - && derived_from<_InnerCat, forward_iterator_tag>) - return forward_iterator_tag{}; - else if constexpr (derived_from<_OuterCat, input_iterator_tag> - && derived_from<_InnerCat, input_iterator_tag>) - return input_iterator_tag{}; - else - return output_iterator_tag{}; - } - - using _Outer_iter = iterator_t<_Base>; - using _Inner_iter = iterator_t<range_reference_t<_Base>>; + using _Outer_iter = join_view::_Outer_iter<_Const>; + using _Inner_iter = join_view::_Inner_iter<_Const>; _Outer_iter _M_outer = _Outer_iter(); _Inner_iter _M_inner = _Inner_iter(); @@ -2292,7 +2351,7 @@ namespace views::__adaptor public: using iterator_concept = decltype(_S_iter_concept()); - using iterator_category = decltype(_S_iter_cat()); + // iterator_category defined in __join_view_iter_cat using value_type = range_value_t<range_reference_t<_Base>>; using difference_type = common_type_t<range_difference_t<_Base>, @@ -2412,7 +2471,7 @@ namespace views::__adaptor { private: using _Parent = __detail::__maybe_const_t<_Const, join_view>; - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = join_view::_Base<_Const>; template<bool _Const2> constexpr bool @@ -2550,6 +2609,35 @@ namespace views::__adaptor && requires { typename __require_constant<remove_reference_t<_Range>::size()>; } && (remove_reference_t<_Range>::size() <= 1); + + template<typename _Base> + struct __split_view_outer_iter_cat + { }; + + template<forward_range _Base> + struct __split_view_outer_iter_cat<_Base> + { using iterator_category = input_iterator_tag; }; + + template<typename _Base> + struct __split_view_inner_iter_cat + { }; + + template<forward_range _Base> + struct __split_view_inner_iter_cat<_Base> + { + private: + static constexpr auto + _S_iter_cat() + { + using _Cat = typename iterator_traits<iterator_t<_Base>>::iterator_category; + if constexpr (derived_from<_Cat, forward_iterator_tag>) + return forward_iterator_tag{}; + else + return _Cat{}; + } + public: + using iterator_category = decltype(_S_iter_cat()); + }; } template<input_range _Vp, forward_range _Pattern> @@ -2561,14 +2649,18 @@ namespace views::__adaptor { private: template<bool _Const> + using _Base = __detail::__maybe_const_t<_Const, _Vp>; + + template<bool _Const> struct _InnerIter; template<bool _Const> struct _OuterIter + : __detail::__split_view_outer_iter_cat<_Base<_Const>> { private: using _Parent = __detail::__maybe_const_t<_Const, split_view>; - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = split_view::_Base<_Const>; constexpr bool __at_end() const @@ -2607,7 +2699,7 @@ namespace views::__adaptor using iterator_concept = conditional_t<forward_range<_Base>, forward_iterator_tag, input_iterator_tag>; - using iterator_category = input_iterator_tag; + // iterator_category defined in __split_view_outer_iter_cat using difference_type = range_difference_t<_Base>; struct value_type : view_interface<value_type> @@ -2723,9 +2815,10 @@ namespace views::__adaptor template<bool _Const> struct _InnerIter + : __detail::__split_view_inner_iter_cat<_Base<_Const>> { private: - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = split_view::_Base<_Const>; constexpr bool __at_end() const @@ -2759,17 +2852,6 @@ namespace views::__adaptor } } - static constexpr auto - _S_iter_cat() - { - using _Cat - = typename iterator_traits<iterator_t<_Base>>::iterator_category; - if constexpr (derived_from<_Cat, forward_iterator_tag>) - return forward_iterator_tag{}; - else - return _Cat{}; - } - constexpr auto& _M_i_current() noexcept { return _M_i.__current(); } @@ -2784,7 +2866,7 @@ namespace views::__adaptor public: using iterator_concept = typename _OuterIter<_Const>::iterator_concept; - using iterator_category = decltype(_S_iter_cat()); + // iterator_category defined in __split_view_inner_iter_cat using value_type = range_value_t<_Base>; using difference_type = range_difference_t<_Base>; @@ -3293,13 +3375,41 @@ namespace views::__adaptor private: template<bool _Const> + using _Base = __detail::__maybe_const_t<_Const, _Vp>; + + template<bool _Const> + struct __iter_cat + { }; + + template<bool _Const> + requires forward_range<_Base<_Const>> + struct __iter_cat<_Const> + { + private: + static auto _S_iter_cat() + { + using _Base = elements_view::_Base<_Const>; + using _Cat = iterator_traits<iterator_t<_Base>>::iterator_category; + using _Res = decltype((std::get<_Nm>(*std::declval<iterator_t<_Base>>()))); + if constexpr (!is_lvalue_reference_v<_Res>) + return input_iterator_tag{}; + else if constexpr (derived_from<_Cat, random_access_iterator_tag>) + return random_access_iterator_tag{}; + else + return _Cat{}; + } + public: + using iterator_category = decltype(_S_iter_cat()); + }; + + template<bool _Const> struct _Sentinel; template<bool _Const> - struct _Iterator + struct _Iterator : __iter_cat<_Const> { private: - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = elements_view::_Base<_Const>; iterator_t<_Base> _M_current = iterator_t<_Base>(); @@ -3315,11 +3425,24 @@ namespace views::__adaptor } } + static auto + _S_iter_concept() + { + if constexpr (random_access_range<_Vp>) + return random_access_iterator_tag{}; + else if constexpr (bidirectional_range<_Vp>) + return bidirectional_iterator_tag{}; + else if constexpr (forward_range<_Vp>) + return forward_iterator_tag{}; + else + return input_iterator_tag{}; + } + friend _Iterator<!_Const>; public: - using iterator_category - = typename iterator_traits<iterator_t<_Base>>::iterator_category; + using iterator_concept = decltype(_S_iter_concept()); + // iterator_category defined in elements_view::__iter_cat using value_type = remove_cvref_t<tuple_element_t<_Nm, range_value_t<_Base>>>; using difference_type = range_difference_t<_Base>; @@ -3471,7 +3594,7 @@ namespace views::__adaptor _M_equal(const _Iterator<_Const>& __x) const { return __x._M_current == _M_end; } - using _Base = __detail::__maybe_const_t<_Const, _Vp>; + using _Base = elements_view::_Base<_Const>; sentinel_t<_Base> _M_end = sentinel_t<_Base>(); public: diff --git a/libstdc++-v3/include/std/semaphore b/libstdc++-v3/include/std/semaphore index 40af41b..a156091 100644 --- a/libstdc++-v3/include/std/semaphore +++ b/libstdc++-v3/include/std/semaphore @@ -2,7 +2,7 @@ // Copyright (C) 2020-2021 Free Software Foundation, Inc. // -// This file is part of the GNU ISO C++ Library. This library is free +// This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the // terms of the GNU General Public License as published by the // Free Software Foundation; either version 3, or (at your option) @@ -10,7 +10,7 @@ // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // Under Section 7 of GPL version 3, you are granted additional @@ -19,7 +19,7 @@ // You should have received a copy of the GNU General Public License and // a copy of the GCC Runtime Library Exception along with this program; -// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. /** @file include/semaphore @@ -33,8 +33,6 @@ #if __cplusplus > 201703L #include <bits/semaphore_base.h> -#if __cpp_lib_atomic_wait -#include <ext/numeric_traits.h> namespace std _GLIBCXX_VISIBILITY(default) { @@ -42,13 +40,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION #define __cpp_lib_semaphore 201907L - template<ptrdiff_t __least_max_value = - __gnu_cxx::__int_traits<ptrdiff_t>::__max> + template<ptrdiff_t __least_max_value = __semaphore_impl::_S_max> class counting_semaphore { static_assert(__least_max_value >= 0); + static_assert(__least_max_value <= __semaphore_impl::_S_max); - __semaphore_impl<__least_max_value> _M_sem; + __semaphore_impl _M_sem; public: explicit counting_semaphore(ptrdiff_t __desired) noexcept @@ -91,6 +89,5 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION _GLIBCXX_END_NAMESPACE_VERSION } // namespace -#endif // __cpp_lib_atomic_wait #endif // C++20 #endif // _GLIBCXX_SEMAPHORE diff --git a/libstdc++-v3/include/std/thread b/libstdc++-v3/include/std/thread index 66738e1..886994c 100644 --- a/libstdc++-v3/include/std/thread +++ b/libstdc++-v3/include/std/thread @@ -35,19 +35,13 @@ # include <bits/c++0x_warning.h> #else -#include <chrono> // std::chrono::* - #if __cplusplus > 201703L # include <compare> // std::strong_ordering # include <stop_token> // std::stop_source, std::stop_token, std::nostopstate #endif #include <bits/std_thread.h> // std::thread, get_id, yield - -#ifdef _GLIBCXX_USE_NANOSLEEP -# include <cerrno> // errno, EINTR -# include <time.h> // nanosleep -#endif +#include <bits/this_thread_sleep.h> // std::this_thread::sleep_for, sleep_until namespace std _GLIBCXX_VISIBILITY(default) { @@ -103,66 +97,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION return __out << __id._M_thread; } - /** @namespace std::this_thread - * @brief ISO C++ 2011 namespace for interacting with the current thread - * - * C++11 30.3.2 [thread.thread.this] Namespace this_thread. - */ - namespace this_thread - { -#ifndef _GLIBCXX_NO_SLEEP - -#ifndef _GLIBCXX_USE_NANOSLEEP - void - __sleep_for(chrono::seconds, chrono::nanoseconds); -#endif - - /// this_thread::sleep_for - template<typename _Rep, typename _Period> - inline void - sleep_for(const chrono::duration<_Rep, _Period>& __rtime) - { - if (__rtime <= __rtime.zero()) - return; - auto __s = chrono::duration_cast<chrono::seconds>(__rtime); - auto __ns = chrono::duration_cast<chrono::nanoseconds>(__rtime - __s); -#ifdef _GLIBCXX_USE_NANOSLEEP - struct ::timespec __ts = - { - static_cast<std::time_t>(__s.count()), - static_cast<long>(__ns.count()) - }; - while (::nanosleep(&__ts, &__ts) == -1 && errno == EINTR) - { } -#else - __sleep_for(__s, __ns); -#endif - } - - /// this_thread::sleep_until - template<typename _Clock, typename _Duration> - inline void - sleep_until(const chrono::time_point<_Clock, _Duration>& __atime) - { -#if __cplusplus > 201703L - static_assert(chrono::is_clock_v<_Clock>); -#endif - auto __now = _Clock::now(); - if (_Clock::is_steady) - { - if (__now < __atime) - sleep_for(__atime - __now); - return; - } - while (__now < __atime) - { - sleep_for(__atime - __now); - __now = _Clock::now(); - } - } - } // namespace this_thread -#endif // ! NO_SLEEP - #ifdef __cpp_lib_jthread /// A thread that can be requested to stop and automatically joined. diff --git a/libstdc++-v3/include/std/version b/libstdc++-v3/include/std/version index cb25148..d9f6a3c 100644 --- a/libstdc++-v3/include/std/version +++ b/libstdc++-v3/include/std/version @@ -161,7 +161,9 @@ #endif #define __cpp_lib_shared_ptr_weak_type 201606 #define __cpp_lib_string_view 201803L -// #define __cpp_lib_to_chars 201611L +#if _GLIBCXX_HAVE_USELOCALE +# define __cpp_lib_to_chars 201611L +#endif #define __cpp_lib_unordered_map_try_emplace 201411 #define __cpp_lib_variant 201606L #endif diff --git a/libstdc++-v3/python/Makefile.am b/libstdc++-v3/python/Makefile.am index 01517a2..0c2b207 100644 --- a/libstdc++-v3/python/Makefile.am +++ b/libstdc++-v3/python/Makefile.am @@ -44,21 +44,9 @@ gdb.py: hook.in Makefile install-data-local: gdb.py @$(mkdir_p) $(DESTDIR)$(toolexeclibdir) ## We want to install gdb.py as SOMETHING-gdb.py. SOMETHING is the -## full name of the final library. We want to ignore symlinks, the -## .la file, and any previous -gdb.py file. This is inherently -## fragile, but there does not seem to be a better option, because -## libtool hides the real names from us. - @here=`pwd`; cd $(DESTDIR)$(toolexeclibdir); \ - for file in libstdc++.*; do \ - case $$file in \ - *-gdb.py) ;; \ - *.la) ;; \ - *) if test -h $$file; then \ - continue; \ - fi; \ - libname=$$file;; \ - esac; \ - done; \ - cd $$here; \ +## full name of the final library. We use the libtool .la file to get +## the correct name. + @libname=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \ + $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \ echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \ $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py diff --git a/libstdc++-v3/python/Makefile.in b/libstdc++-v3/python/Makefile.in index c35dbe5..2efe0b9 100644 --- a/libstdc++-v3/python/Makefile.in +++ b/libstdc++-v3/python/Makefile.in @@ -607,18 +607,8 @@ gdb.py: hook.in Makefile install-data-local: gdb.py @$(mkdir_p) $(DESTDIR)$(toolexeclibdir) - @here=`pwd`; cd $(DESTDIR)$(toolexeclibdir); \ - for file in libstdc++.*; do \ - case $$file in \ - *-gdb.py) ;; \ - *.la) ;; \ - *) if test -h $$file; then \ - continue; \ - fi; \ - libname=$$file;; \ - esac; \ - done; \ - cd $$here; \ + @libname=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \ + $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \ echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \ $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py diff --git a/libstdc++-v3/testsuite/20_util/from_chars/4.cc b/libstdc++-v3/testsuite/20_util/from_chars/4.cc index 1482b5d..7cee4dc 100644 --- a/libstdc++-v3/testsuite/20_util/from_chars/4.cc +++ b/libstdc++-v3/testsuite/20_util/from_chars/4.cc @@ -28,9 +28,7 @@ // Test std::from_chars floating-point conversions. -// As of July 2020 __cpp_lib_to_chars is not defined, but std::from_chars -// works for floating-point types when _GLIBCXX_HAVE_USELOCALE is defined. -#if __cpp_lib_to_chars >= 201611L || _GLIBCXX_HAVE_USELOCALE +#if __cpp_lib_to_chars >= 201611L void test01() { @@ -363,7 +361,7 @@ test06() int main() { -#if __cpp_lib_to_chars >= 201611L || _GLIBCXX_HAVE_USELOCALE +#if __cpp_lib_to_chars >= 201611L test01(); test02(); test03(); diff --git a/libstdc++-v3/testsuite/20_util/from_chars/5.cc b/libstdc++-v3/testsuite/20_util/from_chars/5.cc index dd5f922..fa86ab7 100644 --- a/libstdc++-v3/testsuite/20_util/from_chars/5.cc +++ b/libstdc++-v3/testsuite/20_util/from_chars/5.cc @@ -25,9 +25,7 @@ // Test std::from_chars error handling. -// As of July 2020 __cpp_lib_to_chars is not defined, but std::from_chars -// works for floating-point types when _GLIBCXX_HAVE_USELOCALE is defined. -#if __cpp_lib_to_chars >= 201611L || _GLIBCXX_HAVE_USELOCALE +#if __cpp_lib_to_chars >= 201611L void test01() { @@ -160,7 +158,7 @@ test04() int main() { -#if __cpp_lib_to_chars >= 201611L || _GLIBCXX_HAVE_USELOCALE +#if __cpp_lib_to_chars >= 201611L test01(); test02(); test03(); diff --git a/libstdc++-v3/testsuite/20_util/from_chars/6.cc b/libstdc++-v3/testsuite/20_util/from_chars/6.cc index 58e0f1f..139a181 100644 --- a/libstdc++-v3/testsuite/20_util/from_chars/6.cc +++ b/libstdc++-v3/testsuite/20_util/from_chars/6.cc @@ -27,7 +27,7 @@ void test01() { -#if __cpp_lib_to_chars >= 201611L || _GLIBCXX_HAVE_USELOCALE +#if __cpp_lib_to_chars >= 201611L #if _GLIBCXX_USE_C99_FENV_TR1 double d; std::fesetround(FE_DOWNWARD); diff --git a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc index 22d4206..8cf45ad 100644 --- a/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc +++ b/libstdc++-v3/testsuite/20_util/to_chars/long_double.cc @@ -69,7 +69,7 @@ test01() // Verifies correctness of the hexadecimal form [BEGIN,END) for VALUE by // round-tripping it through from_chars (if available). auto verify_via_from_chars = [] (char *begin, char *end, long double value) { -#if __cpp_lib_to_chars >= 201611L || _GLIBCXX_HAVE_USELOCALE +#if __cpp_lib_to_chars >= 201611L long double roundtrip; auto result = from_chars(begin, end, roundtrip, chars_format::hex); VERIFY( result.ec == errc{} ); diff --git a/libstdc++-v3/testsuite/24_iterators/headers/iterator/synopsis_c++20.cc b/libstdc++-v3/testsuite/24_iterators/headers/iterator/synopsis_c++20.cc index 3ebb1e0..3103094 100644 --- a/libstdc++-v3/testsuite/24_iterators/headers/iterator/synopsis_c++20.cc +++ b/libstdc++-v3/testsuite/24_iterators/headers/iterator/synopsis_c++20.cc @@ -73,6 +73,7 @@ namespace std struct incrementable_traits<counted_iterator<I>>; template<input_iterator I> + requires same_as<__detail::__iter_traits<I>, iterator_traits<I>> struct iterator_traits<counted_iterator<I>>; struct unreachable_sentinel_t; diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/bool.cc b/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/bool.cc index b26ffb5..da25cc7 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/bool.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/bool.cc @@ -23,42 +23,21 @@ #include <atomic> #include <thread> -#include <mutex> -#include <condition_variable> -#include <type_traits> -#include <chrono> #include <testsuite_hooks.h> int main () { - using namespace std::literals::chrono_literals; - - std::mutex m; - std::condition_variable cv; - std::unique_lock<std::mutex> l(m); - - std::atomic<bool> a(false); - std::atomic<bool> b(false); + std::atomic<bool> a{ true }; + VERIFY( a.load() ); + a.wait(false); std::thread t([&] - { - { - // This ensures we block until cv.wait(l) starts. - std::lock_guard<std::mutex> ll(m); - } - cv.notify_one(); - a.wait(false); - if (a.load()) - { - b.store(true); - } - }); - cv.wait(l); - std::this_thread::sleep_for(100ms); - a.store(true); - a.notify_one(); + { + a.store(false); + a.notify_one(); + }); + a.wait(true); t.join(); - VERIFY( b.load() ); return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/generic.cc b/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/generic.cc index e67ab77..fb68b42 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/generic.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/generic.cc @@ -21,12 +21,27 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include "atomic/wait_notify_util.h" +#include <atomic> +#include <thread> + +#include <testsuite_hooks.h> int main () { struct S{ int i; }; - check<S> check_s{S{0},S{42}}; + S aa{ 0 }; + S bb{ 42 }; + + std::atomic<S> a{ aa }; + VERIFY( a.load().i == aa.i ); + a.wait(bb); + std::thread t([&] + { + a.store(bb); + a.notify_one(); + }); + a.wait(aa); + t.join(); return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/pointers.cc b/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/pointers.cc index 0233543..53080bb 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/pointers.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/wait_notify/pointers.cc @@ -23,42 +23,24 @@ #include <atomic> #include <thread> -#include <mutex> -#include <condition_variable> -#include <type_traits> -#include <chrono> #include <testsuite_hooks.h> int main () { - using namespace std::literals::chrono_literals; - - std::mutex m; - std::condition_variable cv; - std::unique_lock<std::mutex> l(m); - long aa; long bb; - - std::atomic<long*> a(nullptr); + std::atomic<long*> a(&aa); + VERIFY( a.load() == &aa ); + a.wait(&bb); std::thread t([&] - { - { - // This ensures we block until cv.wait(l) starts. - std::lock_guard<std::mutex> ll(m); - } - cv.notify_one(); - a.wait(nullptr); - if (a.load() == &aa) - a.store(&bb); - }); - cv.wait(l); - std::this_thread::sleep_for(100ms); - a.store(&aa); - a.notify_one(); + { + a.store(&bb); + a.notify_one(); + }); + a.wait(&aa); t.join(); - VERIFY( a.load() == &bb); + return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/wait_notify/1.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/wait_notify/1.cc index 241251f..9872a56 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/wait_notify/1.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/wait_notify/1.cc @@ -22,10 +22,6 @@ // <http://www.gnu.org/licenses/>. #include <atomic> -#include <chrono> -#include <condition_variable> -#include <concepts> -#include <mutex> #include <thread> #include <testsuite_hooks.h> @@ -33,34 +29,15 @@ int main() { - using namespace std::literals::chrono_literals; - - std::mutex m; - std::condition_variable cv; - std::unique_lock<std::mutex> l(m); - std::atomic_flag a; - std::atomic_flag b; + VERIFY( !a.test() ); + a.wait(true); std::thread t([&] - { - { - // This ensures we block until cv.wait(l) starts. - std::lock_guard<std::mutex> ll(m); - } - cv.notify_one(); - a.wait(false); - b.test_and_set(); - b.notify_one(); - }); - - cv.wait(l); - std::this_thread::sleep_for(100ms); - a.test_and_set(); - a.notify_one(); - b.wait(false); + { + a.test_and_set(); + a.notify_one(); + }); + a.wait(false); t.join(); - - VERIFY( a.test() ); - VERIFY( b.test() ); return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_float/wait_notify.cc b/libstdc++-v3/testsuite/29_atomics/atomic_float/wait_notify.cc index d8ec5fb..01768da 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_float/wait_notify.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_float/wait_notify.cc @@ -21,12 +21,32 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include "atomic/wait_notify_util.h" + +#include <atomic> +#include <thread> + +#include <testsuite_hooks.h> + +template<typename Tp> + void + check() + { + std::atomic<Tp> a{ 1.0 }; + VERIFY( a.load() != 0.0 ); + a.wait( 0.0 ); + std::thread t([&] + { + a.store(0.0); + a.notify_one(); + }); + a.wait(1.0); + t.join(); + } int main () { - check<float> f; - check<double> d; + check<float>(); + check<double>(); return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_integral/wait_notify.cc b/libstdc++-v3/testsuite/29_atomics/atomic_integral/wait_notify.cc index 19c1ec4..d1bf081 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_integral/wait_notify.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_integral/wait_notify.cc @@ -21,46 +21,57 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. -#include "atomic/wait_notify_util.h" -void -test01() -{ - struct S{ int i; }; - std::atomic<S> s; +#include <atomic> +#include <thread> - s.wait(S{42}); -} +#include <testsuite_hooks.h> + +template<typename Tp> + void + check() + { + std::atomic<Tp> a{ Tp(1) }; + VERIFY( a.load() == Tp(1) ); + a.wait( Tp(0) ); + std::thread t([&] + { + a.store(Tp(0)); + a.notify_one(); + }); + a.wait(Tp(1)); + t.join(); + } int main () { // check<bool> bb; - check<char> ch; - check<signed char> sch; - check<unsigned char> uch; - check<short> s; - check<unsigned short> us; - check<int> i; - check<unsigned int> ui; - check<long> l; - check<unsigned long> ul; - check<long long> ll; - check<unsigned long long> ull; + check<char>(); + check<signed char>(); + check<unsigned char>(); + check<short>(); + check<unsigned short>(); + check<int>(); + check<unsigned int>(); + check<long>(); + check<unsigned long>(); + check<long long>(); + check<unsigned long long>(); - check<wchar_t> wch; - check<char8_t> ch8; - check<char16_t> ch16; - check<char32_t> ch32; + check<wchar_t>(); + check<char8_t>(); + check<char16_t>(); + check<char32_t>(); - check<int8_t> i8; - check<int16_t> i16; - check<int32_t> i32; - check<int64_t> i64; + check<int8_t>(); + check<int16_t>(); + check<int32_t>(); + check<int64_t>(); - check<uint8_t> u8; - check<uint16_t> u16; - check<uint32_t> u32; - check<uint64_t> u64; + check<uint8_t>(); + check<uint16_t>(); + check<uint32_t>(); + check<uint64_t>(); return 0; } diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc index a674085..2fd3130 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc @@ -23,73 +23,25 @@ #include <atomic> #include <thread> -#include <mutex> -#include <condition_variable> -#include <chrono> -#include <type_traits> #include <testsuite_hooks.h> -template<typename Tp> -Tp check_wait_notify(Tp val1, Tp val2) +int +main () { - using namespace std::literals::chrono_literals; + struct S{ int i; }; + S aa{ 0 }; + S bb{ 42 }; - std::mutex m; - std::condition_variable cv; - std::unique_lock<std::mutex> l(m); - - Tp aa = val1; - std::atomic_ref<Tp> a(aa); + std::atomic_ref<S> a{ aa }; + VERIFY( a.load().i == aa.i ); + a.wait(bb); std::thread t([&] - { - { - // This ensures we block until cv.wait(l) starts. - std::lock_guard<std::mutex> ll(m); - } - cv.notify_one(); - a.wait(val1); - if (a.load() != val2) - a = val1; - }); - cv.wait(l); - std::this_thread::sleep_for(100ms); - a.store(val2); - a.notify_one(); + { + a.store(bb); + a.notify_one(); + }); + a.wait(aa); t.join(); - return a.load(); -} - -template<typename Tp, - bool = std::is_integral_v<Tp> - || std::is_floating_point_v<Tp>> -struct check; - -template<typename Tp> -struct check<Tp, true> -{ - check() - { - Tp a = 0; - Tp b = 42; - VERIFY(check_wait_notify(a, b) == b); - } -}; - -template<typename Tp> -struct check<Tp, false> -{ - check(Tp b) - { - Tp a; - VERIFY(check_wait_notify(a, b) == b); - } -}; - -int -main () -{ - check<long>(); - check<double>(); return 0; } diff --git a/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_for.cc b/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_for.cc index e7edc9e..248ecb0 100644 --- a/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_for.cc +++ b/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_for.cc @@ -21,6 +21,8 @@ // { dg-require-gthreads "" } // { dg-add-options libatomic } +// { dg-skip-if "FIXME: fails" { ! futex } } + #include <semaphore> #include <chrono> #include <thread> diff --git a/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_until.cc b/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_until.cc index 49ba33b..eb1351c 100644 --- a/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_until.cc +++ b/libstdc++-v3/testsuite/30_threads/semaphore/try_acquire_until.cc @@ -21,6 +21,8 @@ // { dg-additional-options "-pthread" { target pthread } } // { dg-add-options libatomic } +// { dg-skip-if "FIXME: fails" { ! futex } } + #include <semaphore> #include <chrono> #include <thread> diff --git a/libstdc++-v3/testsuite/std/ranges/p2259.cc b/libstdc++-v3/testsuite/std/ranges/p2259.cc new file mode 100644 index 0000000..1b422e4 --- /dev/null +++ b/libstdc++-v3/testsuite/std/ranges/p2259.cc @@ -0,0 +1,91 @@ +// Copyright (C) 2021 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// <http://www.gnu.org/licenses/>. + +// { dg-options "-std=gnu++2a" } +// { dg-do compile { target c++2a } } + +// Verify P2259 changes. + +#include <ranges> +#include <tuple> +#include <vector> + +namespace ranges = std::ranges; +namespace views = std::views; + +using std::__detail::__iter_without_category; + +template<typename _Range> +concept only_cxx20_input_range = ranges::input_range<_Range> + && !ranges::forward_range<_Range> + && __iter_without_category<ranges::iterator_t<_Range>>; + +void +test01() +{ + extern std::vector<int> vec; + only_cxx20_input_range auto v0 + = vec + | views::transform([](int c) { return views::single(c); }) + | views::join; + + // Verify the changes to filter_view. + only_cxx20_input_range auto v1 = v0 | views::filter([](int c) { return c > 0; }); + + // Verify the changes to transform_view. + only_cxx20_input_range auto v2 = v0 | views::transform([](int& c) -> auto& { return c; }); + + // Verify the changes to split_view. + only_cxx20_input_range auto v3 = v0 | views::split(12); + static_assert(only_cxx20_input_range<decltype(*v3.begin())>); + + // Verify the changes to join_view. + only_cxx20_input_range auto v4 = v0 | views::split(12) | views::join; + + // Verify the changes to elements_view. + only_cxx20_input_range auto v5 + = v0 + | views::transform([](int c) { return std::make_tuple(c, c); }) + | views::elements<0>; + + // Verify the changes to common_iterator. + only_cxx20_input_range auto v6 = v0 | views::common; + *(v6.begin()++); + + // Verify the changes to iota_view. + only_cxx20_input_range auto v8 = ranges::iota_view{v0.begin()}; + + // Verify the changes to move_iterator. + __iter_without_category auto i9 = std::make_move_iterator(v0.begin()); + + // Verify the changes to counted_iterator. + extern std::counted_iterator<int*> i10; + static_assert(std::contiguous_iterator<decltype(i10)>); + static_assert(std::same_as<std::iterator_traits<decltype(i10)>::iterator_category, + std::random_access_iterator_tag>); + i10.operator->(); + __iter_without_category auto i11 = std::counted_iterator{v0.begin(), 5}; +} + +void +test02() +{ + // Verify LWG 3291 example. + auto v = views::iota(0); + auto i = std::counted_iterator{v.begin(), 5}; + static_assert(std::random_access_iterator<decltype(i)>); +} diff --git a/libstdc++-v3/testsuite/util/testsuite_abi.cc b/libstdc++-v3/testsuite/util/testsuite_abi.cc index bc7efa7..3af5dc5 100644 --- a/libstdc++-v3/testsuite/util/testsuite_abi.cc +++ b/libstdc++-v3/testsuite/util/testsuite_abi.cc @@ -407,6 +407,15 @@ compare_symbols(const char* baseline_file, const char* test_file, ++li; } + // Similarly for IEEE128 symbols. + bool ieee_version_found(false); + for (li = test.begin(); li != test.end(); ++li) + if (li->second.version_name.find("_IEEE128_") != std::string::npos) + { + ieee_version_found = true; + break; + } + // Sort out names. // Assuming all baseline names and test names are both unique w/ no // duplicates. @@ -440,9 +449,12 @@ compare_symbols(const char* baseline_file, const char* test_file, { // Iff no test long double compatibility symbols at all and the symbol // missing is a baseline long double compatibility symbol, skip. - string version_name(i->second.version_name); + string version_name(i->second.version_name.size() + ? i->second.version_name : i->first); bool base_ld(version_name.find("_LDBL_") != std::string::npos); - if (!base_ld || base_ld && ld_version_found) + bool base_ieee(version_name.find("_IEEE128_") != std::string::npos); + if ((!base_ld || (base_ld && ld_version_found)) + && (!base_ieee || (base_ieee && ieee_version_found))) missing_names.push_back(name); } } diff --git a/lto-plugin/ChangeLog b/lto-plugin/ChangeLog index 35aadca..a2db24d 100644 --- a/lto-plugin/ChangeLog +++ b/lto-plugin/ChangeLog @@ -1,3 +1,7 @@ +2021-04-21 Martin Liska <mliska@suse.cz> + + * lto-plugin.c (exec_lto_wrapper): Make a temp variable. + 2021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org> * configure: Re-generate. diff --git a/lto-plugin/lto-plugin.c b/lto-plugin/lto-plugin.c index 32478f0..4e90ce0 100644 --- a/lto-plugin/lto-plugin.c +++ b/lto-plugin/lto-plugin.c @@ -636,10 +636,10 @@ exec_lto_wrapper (char *argv[]) /* Write argv to a file to avoid a command line that is too long Save the file locally on save-temps. */ + const char *suffix = ".lto_wrapper_args"; + suffix += skip_in_suffix; if (save_temps && link_output_name) - arguments_file_name = concat (link_output_name, - ".lto_wrapper_args" - + skip_in_suffix, NULL); + arguments_file_name = concat (link_output_name, suffix, NULL); else arguments_file_name = make_temp_file (".lto_wrapper_args"); check (arguments_file_name, LDPL_FATAL, diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog index bbee2ae..ab18cfd 100644 --- a/maintainer-scripts/ChangeLog +++ b/maintainer-scripts/ChangeLog @@ -1,3 +1,8 @@ +2021-04-20 Jakub Jelinek <jakub@redhat.com> + + * crontab: Snapshots from trunk are now GCC 12 related. + Add GCC 11 snapshots from the respective branch. + 2021-04-09 Martin Liska <mliska@suse.cz> * branch_changer.py: Generate URL only when emitting diff --git a/maintainer-scripts/crontab b/maintainer-scripts/crontab index 64eda6a..8f2c0d8 100644 --- a/maintainer-scripts/crontab +++ b/maintainer-scripts/crontab @@ -1,7 +1,8 @@ 16 0 * * * sh /home/gccadmin/scripts/update_version_git 50 0 * * * sh /home/gccadmin/scripts/update_web_docs_git 55 0 * * * sh /home/gccadmin/scripts/update_web_docs_libstdcxx_git -32 22 * * 4 sh /home/gccadmin/scripts/gcc_release -s 8:releases/gcc-8 -l -d /sourceware/snapshot-tmp/gcc all -32 22 * * 5 sh /home/gccadmin/scripts/gcc_release -s 9:releases/gcc-9 -l -d /sourceware/snapshot-tmp/gcc all -32 22 * * 6 sh /home/gccadmin/scripts/gcc_release -s 10:releases/gcc-10 -l -d /sourceware/snapshot-tmp/gcc all -32 22 * * 7 sh /home/gccadmin/scripts/gcc_release -s 11:master -l -d /sourceware/snapshot-tmp/gcc all +32 22 * * 3 sh /home/gccadmin/scripts/gcc_release -s 8:releases/gcc-8 -l -d /sourceware/snapshot-tmp/gcc all +32 22 * * 4 sh /home/gccadmin/scripts/gcc_release -s 9:releases/gcc-9 -l -d /sourceware/snapshot-tmp/gcc all +32 22 * * 5 sh /home/gccadmin/scripts/gcc_release -s 10:releases/gcc-10 -l -d /sourceware/snapshot-tmp/gcc all +32 22 * * 6 sh /home/gccadmin/scripts/gcc_release -s 11:releases/gcc-11 -l -d /sourceware/snapshot-tmp/gcc all +32 22 * * 7 sh /home/gccadmin/scripts/gcc_release -s 12:master -l -d /sourceware/snapshot-tmp/gcc all |