diff options
Diffstat (limited to 'gcc')
164 files changed, 12097 insertions, 7765 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4a2a79f..c838fcd 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,100 @@ +2025-04-22 Jan Hubicka <hubicka@ucw.cz> + + * config/i386/i386.cc (ix86_vector_costs::add_stmt_cost): Add special cases + for COND_EXPR; make MIN_EXPR, MAX_EXPR, ABS_EXPR and ABSU_EXPR more realistic. + +2025-04-22 Jakub Jelinek <jakub@redhat.com> + + PR target/119327 + * config/rs6000/rs6000.cc (rs6000_can_inline_p): Ignore also + OPTION_MASK_SAVE_TOC_INDIRECT differences. + +2025-04-22 Richard Sandiford <richard.sandiford@arm.com> + + * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define + __ARM_FEATURE_FAMINMAX. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + * tree-vect-loop.cc (vectorizable_induction): Add target support + checks for vectorized MULT_EXPR and FLOAT_EXPR where necessary for + scalable types. + Prefer target_supports_op_p over directly_supports_p for these tree + codes. + (vectorizable_nonlinear_induction): Fix a doc comment while I'm + here. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + * config/aarch64/aarch64.md: Update cbranch, cstore, fcmp + and fcmpe to use the GPF_F16 iterator for floating-point + modes. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + PR target/117013 + * config/aarch64/aarch64-protos.h (aarch64_expand_fp_spaceship): + Declare optab expander function for floating-point types. + * config/aarch64/aarch64.cc (aarch64_expand_fp_spaceship): + Define optab expansion for floating-point types (new function). + * config/aarch64/aarch64.md (spaceship<mode>4): + Add define_expands for spaceship<mode>4 on integer and + floating-point types. + +2025-04-22 Kyrylo Tkachov <ktkachov@nvidia.com> + + * config/aarch64/aarch64-cores.def (olympus): Add fp8fma, fp8dot4 + explicitly. + +2025-04-22 Yixuan Chen <chenyixuan@iscas.ac.cn> + + * config/riscv/riscv-cores.def (RISCV_TUNE): Add xt-c908, xt-c908v, + xt-c910, xt-c910v2, xt-c920, xt-c920v2. + (RISCV_CORE): Add xt-c908, xt-c908v, xt-c910, xt-c910v2, xt-c920, + xt-c920v2. + * doc/invoke.texi: Add xt-c908, xt-c908v, xt-c910, xt-c910v2, + xt-c920, xt-c920v2. + +2025-04-22 Kyrylo Tkachov <ktkachov@nvidia.com> + + * doc/invoke.texi (lto-partition-locality-frequency-cutoff, + lto-partition-locality-size-cutoff, lto-max-locality-partition): + Document. + +2025-04-22 Alexandre Oliva <oliva@adacore.com> + + PR target/118182 + * config/riscv/vector.md (@pred_broadcast<mode>): Expand to + _zero and _imm variants without vec_duplicate. + +2025-04-21 Jan Hubicka <hubicka@ucw.cz> + + PR target/119879 + * config/i386/i386.cc (fp_conversion_stmt_cost): Inline to ... + (ix86_vector_costs::add_stmt_cost): ... here; fix handling of NOP_EXPR. + +2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * config/mips/mips.cc (mips_option_override): Error out for + -mmicromips -mmsa. + +2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/119507 + * except.cc (switch_to_exception_section): Don't use the cached section if + the current function is in comdat. + +2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> + + * vec.h (array_slice::begin): Assert that the + slice is valid. + (array_slice::end): Likewise. + +2025-04-21 hongtao.liu <hongtao.liu@intel.com> + + * config/i386/i386-expand.cc (ix86_emit_swdivsf): Generate 2 + FMA instructions when TARGET_FMA. + 2025-04-19 Jeff Law <jlaw@ventanamicro.com> PR target/119865 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index f21e9cc..1041049 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20250420 +20250423 diff --git a/gcc/common.opt b/gcc/common.opt index 88d987e..e3fa0da 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -2279,9 +2279,6 @@ Enum Name(lto_partition_model) Type(enum lto_partition_model) UnknownError(unknown LTO partitioning model %qs) EnumValue -Enum(lto_partition_model) String(default) Value(LTO_PARTITION_DEFAULT) - -EnumValue Enum(lto_partition_model) String(none) Value(LTO_PARTITION_NONE) EnumValue @@ -2300,7 +2297,7 @@ EnumValue Enum(lto_partition_model) String(cache) Value(LTO_PARTITION_CACHE) flto-partition= -Common Joined RejectNegative Enum(lto_partition_model) Var(flag_lto_partition) Init(LTO_PARTITION_DEFAULT) +Common Joined RejectNegative Enum(lto_partition_model) Var(flag_lto_partition) Init(LTO_PARTITION_BALANCED) Specify the algorithm to partition symbols and vars at linktime. ; The initial value of -1 comes from Z_DEFAULT_COMPRESSION in zlib.h. diff --git a/gcc/config/aarch64/aarch64-c.cc b/gcc/config/aarch64/aarch64-c.cc index d1e2ab9..98337b7 100644 --- a/gcc/config/aarch64/aarch64-c.cc +++ b/gcc/config/aarch64/aarch64-c.cc @@ -293,6 +293,7 @@ aarch64_update_cpp_builtins (cpp_reader *pfile) aarch64_def_or_undef (TARGET_SME2, "__ARM_FEATURE_SME2", pfile); aarch64_def_or_undef (AARCH64_HAVE_ISA (SME2p1), "__ARM_FEATURE_SME2p1", pfile); + aarch64_def_or_undef (TARGET_FAMINMAX, "__ARM_FEATURE_FAMINMAX", pfile); /* Not for ACLE, but required to keep "float.h" correct if we switch target between implementations that do or do not support ARMv8.2-A diff --git a/gcc/config/aarch64/aarch64-cores.def b/gcc/config/aarch64/aarch64-cores.def index 7f204fd..1209630 100644 --- a/gcc/config/aarch64/aarch64-cores.def +++ b/gcc/config/aarch64/aarch64-cores.def @@ -224,7 +224,7 @@ AARCH64_CORE("neoverse-v3ae", neoversev3ae, cortexa57, V9_2A, (SVE2_BITPERM, RNG AARCH64_CORE("demeter", demeter, cortexa57, V9A, (I8MM, BF16, SVE2_BITPERM, RNG, MEMTAG, PROFILE), neoversev2, 0x41, 0xd4f, -1) /* NVIDIA ('N') cores. */ -AARCH64_CORE("olympus", olympus, cortexa57, V9_2A, (SVE2_BITPERM, RNG, LS64, MEMTAG, PROFILE, FAMINMAX, FP8DOT2, LUT, SVE2_AES, SVE2_SHA3, SVE2_SM4), neoversev3, 0x4e, 0x10, -1) +AARCH64_CORE("olympus", olympus, cortexa57, V9_2A, (SVE2_BITPERM, RNG, LS64, MEMTAG, PROFILE, FAMINMAX, FP8FMA, FP8DOT2, FP8DOT4, LUT, SVE2_AES, SVE2_SHA3, SVE2_SM4), neoversev3, 0x4e, 0x10, -1) /* Generic Architecture Processors. */ AARCH64_CORE("generic", generic, cortexa53, V8A, (), generic, 0x0, 0x0, -1) diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h index 8f44aea..1ca86c9 100644 --- a/gcc/config/aarch64/aarch64-protos.h +++ b/gcc/config/aarch64/aarch64-protos.h @@ -1260,6 +1260,7 @@ void aarch64_restore_za (rtx); void aarch64_expand_crc_using_pmull (scalar_mode, scalar_mode, rtx *); void aarch64_expand_reversed_crc_using_pmull (scalar_mode, scalar_mode, rtx *); +void aarch64_expand_fp_spaceship (rtx, rtx, rtx, rtx); extern bool aarch64_gcs_enabled (); diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc index 433ec97..f7bccf5 100644 --- a/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc @@ -9417,13 +9417,16 @@ aarch64_emit_stack_tie (rtx reg) } /* Allocate POLY_SIZE bytes of stack space using TEMP1 and TEMP2 as scratch - registers. If POLY_SIZE is not large enough to require a probe this function - will only adjust the stack. When allocating the stack space - FRAME_RELATED_P is then used to indicate if the allocation is frame related. - FINAL_ADJUSTMENT_P indicates whether we are allocating the area below - the saved registers. If we are then we ensure that any allocation - larger than the ABI defined buffer needs a probe so that the - invariant of having a 1KB buffer is maintained. + registers, given that the stack pointer is currently BYTES_BELOW_SP bytes + above the bottom of the static frame. + + If POLY_SIZE is not large enough to require a probe this function will only + adjust the stack. When allocating the stack space FRAME_RELATED_P is then + used to indicate if the allocation is frame related. FINAL_ADJUSTMENT_P + indicates whether we are allocating the area below the saved registers. + If we are then we ensure that any allocation larger than the ABI defined + buffer needs a probe so that the invariant of having a 1KB buffer is + maintained. We emit barriers after each stack adjustment to prevent optimizations from breaking the invariant that we never drop the stack more than a page. This @@ -9440,6 +9443,7 @@ aarch64_emit_stack_tie (rtx reg) static void aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2, poly_int64 poly_size, + poly_int64 bytes_below_sp, aarch64_isa_mode force_isa_mode, bool frame_related_p, bool final_adjustment_p) @@ -9503,8 +9507,8 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2, poly_size, temp1, temp2, force_isa_mode, false, true); - rtx_insn *insn = get_last_insn (); - + auto initial_cfa_offset = frame.frame_size - bytes_below_sp; + auto final_cfa_offset = initial_cfa_offset + poly_size; if (frame_related_p) { /* This is done to provide unwinding information for the stack @@ -9514,28 +9518,31 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2, The tie will expand to nothing but the optimizers will not touch the instruction. */ rtx stack_ptr_copy = gen_rtx_REG (Pmode, STACK_CLASH_SVE_CFA_REGNUM); - emit_move_insn (stack_ptr_copy, stack_pointer_rtx); + auto *insn = emit_move_insn (stack_ptr_copy, stack_pointer_rtx); aarch64_emit_stack_tie (stack_ptr_copy); /* We want the CFA independent of the stack pointer for the duration of the loop. */ - add_reg_note (insn, REG_CFA_DEF_CFA, stack_ptr_copy); + add_reg_note (insn, REG_CFA_DEF_CFA, + plus_constant (Pmode, stack_ptr_copy, + initial_cfa_offset)); RTX_FRAME_RELATED_P (insn) = 1; } rtx probe_const = gen_int_mode (min_probe_threshold, Pmode); rtx guard_const = gen_int_mode (guard_size, Pmode); - insn = emit_insn (gen_probe_sve_stack_clash (Pmode, stack_pointer_rtx, - stack_pointer_rtx, temp1, - probe_const, guard_const)); + auto *insn + = emit_insn (gen_probe_sve_stack_clash (Pmode, stack_pointer_rtx, + stack_pointer_rtx, temp1, + probe_const, guard_const)); /* Now reset the CFA register if needed. */ if (frame_related_p) { add_reg_note (insn, REG_CFA_DEF_CFA, - gen_rtx_PLUS (Pmode, stack_pointer_rtx, - gen_int_mode (poly_size, Pmode))); + plus_constant (Pmode, stack_pointer_rtx, + final_cfa_offset)); RTX_FRAME_RELATED_P (insn) = 1; } @@ -9581,12 +9588,13 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2, We can determine which allocation we are doing by looking at the value of FRAME_RELATED_P since the final allocations are not frame related. */ + auto cfa_offset = frame.frame_size - (bytes_below_sp - rounded_size); if (frame_related_p) { /* We want the CFA independent of the stack pointer for the duration of the loop. */ add_reg_note (insn, REG_CFA_DEF_CFA, - plus_constant (Pmode, temp1, rounded_size)); + plus_constant (Pmode, temp1, cfa_offset)); RTX_FRAME_RELATED_P (insn) = 1; } @@ -9608,7 +9616,7 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2, if (frame_related_p) { add_reg_note (insn, REG_CFA_DEF_CFA, - plus_constant (Pmode, stack_pointer_rtx, rounded_size)); + plus_constant (Pmode, stack_pointer_rtx, cfa_offset)); RTX_FRAME_RELATED_P (insn) = 1; } @@ -9916,17 +9924,22 @@ aarch64_expand_prologue (void) code below does not handle it for -fstack-clash-protection. */ gcc_assert (known_eq (initial_adjust, 0) || callee_adjust == 0); + /* The offset of the current SP from the bottom of the static frame. */ + poly_int64 bytes_below_sp = frame_size; + /* Will only probe if the initial adjustment is larger than the guard less the amount of the guard reserved for use by the caller's outgoing args. */ aarch64_allocate_and_probe_stack_space (tmp0_rtx, tmp1_rtx, initial_adjust, - force_isa_mode, true, false); + bytes_below_sp, force_isa_mode, + true, false); + bytes_below_sp -= initial_adjust; if (callee_adjust != 0) - aarch64_push_regs (reg1, reg2, callee_adjust); - - /* The offset of the current SP from the bottom of the static frame. */ - poly_int64 bytes_below_sp = frame_size - initial_adjust - callee_adjust; + { + aarch64_push_regs (reg1, reg2, callee_adjust); + bytes_below_sp -= callee_adjust; + } if (emit_frame_chain) { @@ -9994,7 +10007,7 @@ aarch64_expand_prologue (void) || known_eq (frame.reg_offset[VG_REGNUM], bytes_below_sp)); aarch64_allocate_and_probe_stack_space (tmp1_rtx, tmp0_rtx, sve_callee_adjust, - force_isa_mode, + bytes_below_sp, force_isa_mode, !frame_pointer_needed, false); bytes_below_sp -= sve_callee_adjust; } @@ -10005,10 +10018,11 @@ aarch64_expand_prologue (void) /* We may need to probe the final adjustment if it is larger than the guard that is assumed by the called. */ - gcc_assert (known_eq (bytes_below_sp, final_adjust)); aarch64_allocate_and_probe_stack_space (tmp1_rtx, tmp0_rtx, final_adjust, - force_isa_mode, + bytes_below_sp, force_isa_mode, !frame_pointer_needed, true); + bytes_below_sp -= final_adjust; + gcc_assert (known_eq (bytes_below_sp, 0)); if (emit_frame_chain && maybe_ne (final_adjust, 0)) aarch64_emit_stack_tie (hard_frame_pointer_rtx); @@ -31294,6 +31308,79 @@ aarch64_expand_reversed_crc_using_pmull (scalar_mode crc_mode, } } +/* Expand the spaceship optab for floating-point operands. + + If the result is compared against (-1, 0, 1 , 2), expand into + fcmpe + conditional branch insns. + + Otherwise (the result is just stored as an integer), expand into + fcmpe + a sequence of conditional select/increment/invert insns. */ +void +aarch64_expand_fp_spaceship (rtx dest, rtx op0, rtx op1, rtx hint) +{ + rtx cc_reg = gen_rtx_REG (CCFPEmode, CC_REGNUM); + emit_set_insn (cc_reg, gen_rtx_COMPARE (CCFPEmode, op0, op1)); + + rtx cc_gt = gen_rtx_GT (VOIDmode, cc_reg, const0_rtx); + rtx cc_lt = gen_rtx_LT (VOIDmode, cc_reg, const0_rtx); + rtx cc_un = gen_rtx_UNORDERED (VOIDmode, cc_reg, const0_rtx); + + if (hint == const0_rtx) + { + rtx un_label = gen_label_rtx (); + rtx lt_label = gen_label_rtx (); + rtx gt_label = gen_label_rtx (); + rtx end_label = gen_label_rtx (); + + rtx temp = gen_rtx_IF_THEN_ELSE (VOIDmode, cc_un, + gen_rtx_LABEL_REF (Pmode, un_label), pc_rtx); + aarch64_emit_unlikely_jump (gen_rtx_SET (pc_rtx, temp)); + + temp = gen_rtx_IF_THEN_ELSE (VOIDmode, cc_lt, + gen_rtx_LABEL_REF (Pmode, lt_label), pc_rtx); + emit_jump_insn (gen_rtx_SET (pc_rtx, temp)); + + temp = gen_rtx_IF_THEN_ELSE (VOIDmode, cc_gt, + gen_rtx_LABEL_REF (Pmode, gt_label), pc_rtx); + emit_jump_insn (gen_rtx_SET (pc_rtx, temp)); + + /* Equality. */ + emit_move_insn (dest, const0_rtx); + emit_jump (end_label); + + emit_label (un_label); + emit_move_insn (dest, const2_rtx); + emit_jump (end_label); + + emit_label (gt_label); + emit_move_insn (dest, const1_rtx); + emit_jump (end_label); + + emit_label (lt_label); + emit_move_insn (dest, constm1_rtx); + + emit_label (end_label); + } + else + { + rtx temp0 = gen_reg_rtx (SImode); + rtx temp1 = gen_reg_rtx (SImode); + rtx cc_ungt = gen_rtx_UNGT (VOIDmode, cc_reg, const0_rtx); + + /* The value of hint is stored if the operands are unordered. */ + rtx temp_un = gen_int_mode (UINTVAL (hint) - 1, SImode); + if (!aarch64_reg_zero_or_m1_or_1 (temp_un, SImode)) + temp_un = force_reg (SImode, temp_un); + + emit_set_insn (temp0, gen_rtx_IF_THEN_ELSE (SImode, cc_lt, + constm1_rtx, const0_rtx)); + emit_set_insn (temp1, gen_rtx_IF_THEN_ELSE (SImode, cc_un, + temp_un, const0_rtx)); + emit_set_insn (dest, gen_rtx_IF_THEN_ELSE (SImode, cc_ungt, + gen_rtx_PLUS (SImode, temp1, const1_rtx), temp0)); + } +} + /* Target-specific selftests. */ #if CHECKING_P diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 031e621..c678f7a 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -707,11 +707,12 @@ ) (define_expand "cbranch<mode>4" - [(set (pc) (if_then_else (match_operator 0 "aarch64_comparison_operator" - [(match_operand:GPF 1 "register_operand") - (match_operand:GPF 2 "aarch64_fp_compare_operand")]) - (label_ref (match_operand 3 "" "")) - (pc)))] + [(set (pc) (if_then_else + (match_operator 0 "aarch64_comparison_operator" + [(match_operand:GPF_F16 1 "register_operand") + (match_operand:GPF_F16 2 "aarch64_fp_compare_operand")]) + (label_ref (match_operand 3 "" "")) + (pc)))] "" " operands[1] = aarch64_gen_compare_reg (GET_CODE (operands[0]), operands[1], @@ -4337,26 +4338,28 @@ (define_insn "fcmp<mode>" [(set (reg:CCFP CC_REGNUM) - (compare:CCFP (match_operand:GPF 0 "register_operand") - (match_operand:GPF 1 "aarch64_fp_compare_operand")))] + (compare:CCFP + (match_operand:GPF_F16 0 "register_operand") + (match_operand:GPF_F16 1 "aarch64_fp_compare_operand")))] "TARGET_FLOAT" {@ [ cons: 0 , 1 ] [ w , Y ] fcmp\t%<s>0, #0.0 [ w , w ] fcmp\t%<s>0, %<s>1 } - [(set_attr "type" "fcmp<s>")] + [(set_attr "type" "fcmp<stype>")] ) (define_insn "fcmpe<mode>" [(set (reg:CCFPE CC_REGNUM) - (compare:CCFPE (match_operand:GPF 0 "register_operand") - (match_operand:GPF 1 "aarch64_fp_compare_operand")))] + (compare:CCFPE + (match_operand:GPF_F16 0 "register_operand") + (match_operand:GPF_F16 1 "aarch64_fp_compare_operand")))] "TARGET_FLOAT" {@ [ cons: 0 , 1 ] [ w , Y ] fcmpe\t%<s>0, #0.0 [ w , w ] fcmpe\t%<s>0, %<s>1 } - [(set_attr "type" "fcmp<s>")] + [(set_attr "type" "fcmp<stype>")] ) (define_insn "*cmp_swp_<shift>_reg<mode>" @@ -4392,6 +4395,49 @@ [(set_attr "type" "alus_ext")] ) +;; <=> operator pattern (integer) +;; (a == b) ? 0 : (a < b) ? -1 : 1. +(define_expand "spaceship<mode>4" + [(match_operand:SI 0 "register_operand") + (match_operand:GPI 1 "register_operand") + (match_operand:GPI 2 "register_operand") + (match_operand:SI 3 "const_int_operand")] + "" + { + // 1 indicates unsigned comparison, -1 indicates signed. + gcc_assert (operands[3] == constm1_rtx || operands[3] == const1_rtx); + + rtx cc_reg = aarch64_gen_compare_reg (EQ, operands[1], operands[2]); + RTX_CODE code_gt = operands[3] == const1_rtx ? GTU : GT; + RTX_CODE code_lt = operands[3] == const1_rtx ? LTU : LT; + + rtx cc_gt = gen_rtx_fmt_ee (code_gt, VOIDmode, cc_reg, const0_rtx); + rtx cc_lt = gen_rtx_fmt_ee (code_lt, VOIDmode, cc_reg, const0_rtx); + + rtx temp = gen_reg_rtx (SImode); + emit_insn (gen_rtx_SET (temp, gen_rtx_IF_THEN_ELSE (SImode, cc_gt, + const1_rtx, const0_rtx))); + emit_insn (gen_rtx_SET (operands[0], gen_rtx_IF_THEN_ELSE (SImode, cc_lt, + constm1_rtx, temp))); + DONE; + } +) + +;; <=> operator pattern (floating-point) +;; (a == b) ? 0 : (a < b) ? -1 : (a > b) ? 1 : UNORDERED. +(define_expand "spaceship<mode>4" + [(match_operand:SI 0 "register_operand") + (match_operand:GPF 1 "register_operand") + (match_operand:GPF 2 "register_operand") + (match_operand:SI 3 "const_int_operand")] + "TARGET_FLOAT" + { + aarch64_expand_fp_spaceship (operands[0], operands[1], operands[2], + operands[3]); + DONE; + } +) + ;; ------------------------------------------------------------------- ;; Store-flag and conditional select insns ;; ------------------------------------------------------------------- @@ -4424,8 +4470,8 @@ (define_expand "cstore<mode>4" [(set (match_operand:SI 0 "register_operand") (match_operator:SI 1 "aarch64_comparison_operator_mode" - [(match_operand:GPF 2 "register_operand") - (match_operand:GPF 3 "aarch64_fp_compare_operand")]))] + [(match_operand:GPF_F16 2 "register_operand") + (match_operand:GPF_F16 3 "aarch64_fp_compare_operand")]))] "" " operands[2] = aarch64_gen_compare_reg (GET_CODE (operands[1]), operands[2], diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc index cdfd94d..a314800 100644 --- a/gcc/config/i386/i386-expand.cc +++ b/gcc/config/i386/i386-expand.cc @@ -4138,6 +4138,10 @@ ix86_expand_sse_fp_minmax (rtx dest, enum rtx_code code, rtx cmp_op0, return false; mode = GET_MODE (dest); + if (immediate_operand (if_false, mode)) + if_false = force_reg (mode, if_false); + if (immediate_operand (if_true, mode)) + if_true = force_reg (mode, if_true); /* We want to check HONOR_NANS and HONOR_SIGNED_ZEROS here, but MODE may be a vector mode and thus not appropriate. */ @@ -4687,6 +4691,8 @@ ix86_expand_fp_movcc (rtx operands[]) compare_op = ix86_expand_compare (NE, tmp, const0_rtx); } + operands[2] = force_reg (mode, operands[2]); + operands[3] = force_reg (mode, operands[3]); emit_insn (gen_rtx_SET (operands[0], gen_rtx_IF_THEN_ELSE (mode, compare_op, operands[2], operands[3]))); @@ -19256,8 +19262,6 @@ ix86_emit_swdivsf (rtx res, rtx a, rtx b, machine_mode mode) e1 = gen_reg_rtx (mode); x1 = gen_reg_rtx (mode); - /* a / b = a * ((rcp(b) + rcp(b)) - (b * rcp(b) * rcp (b))) */ - b = force_reg (mode, b); /* x0 = rcp(b) estimate */ @@ -19270,20 +19274,42 @@ ix86_emit_swdivsf (rtx res, rtx a, rtx b, machine_mode mode) emit_insn (gen_rtx_SET (x0, gen_rtx_UNSPEC (mode, gen_rtvec (1, b), UNSPEC_RCP))); - /* e0 = x0 * b */ - emit_insn (gen_rtx_SET (e0, gen_rtx_MULT (mode, x0, b))); + unsigned vector_size = GET_MODE_SIZE (mode); + + /* (a - (rcp(b) * a * b)) * rcp(b) + rcp(b) * a + N-R step with 2 fma implementation. */ + if (TARGET_FMA + || (TARGET_AVX512F && vector_size == 64) + || (TARGET_AVX512VL && (vector_size == 32 || vector_size == 16))) + { + /* e0 = x0 * a */ + emit_insn (gen_rtx_SET (e0, gen_rtx_MULT (mode, x0, a))); + /* e1 = e0 * b - a */ + emit_insn (gen_rtx_SET (e1, gen_rtx_FMA (mode, e0, b, + gen_rtx_NEG (mode, a)))); + /* res = - e1 * x0 + e0 */ + emit_insn (gen_rtx_SET (res, gen_rtx_FMA (mode, + gen_rtx_NEG (mode, e1), + x0, e0))); + } + else + /* a / b = a * ((rcp(b) + rcp(b)) - (b * rcp(b) * rcp (b))) */ + { + /* e0 = x0 * b */ + emit_insn (gen_rtx_SET (e0, gen_rtx_MULT (mode, x0, b))); - /* e0 = x0 * e0 */ - emit_insn (gen_rtx_SET (e0, gen_rtx_MULT (mode, x0, e0))); + /* e1 = x0 + x0 */ + emit_insn (gen_rtx_SET (e1, gen_rtx_PLUS (mode, x0, x0))); - /* e1 = x0 + x0 */ - emit_insn (gen_rtx_SET (e1, gen_rtx_PLUS (mode, x0, x0))); + /* e0 = x0 * e0 */ + emit_insn (gen_rtx_SET (e0, gen_rtx_MULT (mode, x0, e0))); - /* x1 = e1 - e0 */ - emit_insn (gen_rtx_SET (x1, gen_rtx_MINUS (mode, e1, e0))); + /* x1 = e1 - e0 */ + emit_insn (gen_rtx_SET (x1, gen_rtx_MINUS (mode, e1, e0))); - /* res = a * x1 */ - emit_insn (gen_rtx_SET (res, gen_rtx_MULT (mode, a, x1))); + /* res = a * x1 */ + emit_insn (gen_rtx_SET (res, gen_rtx_MULT (mode, a, x1))); + } } /* Output code to perform a Newton-Rhapson approximation of a diff --git a/gcc/config/i386/i386.cc b/gcc/config/i386/i386.cc index 28603c2..78df3d9 100644 --- a/gcc/config/i386/i386.cc +++ b/gcc/config/i386/i386.cc @@ -25257,32 +25257,6 @@ ix86_vectorize_create_costs (vec_info *vinfo, bool costing_for_scalar) return new ix86_vector_costs (vinfo, costing_for_scalar); } -/* Return cost of statement doing FP conversion. */ - -static unsigned -fp_conversion_stmt_cost (machine_mode mode, gimple *stmt, bool scalar_p) -{ - int outer_size - = tree_to_uhwi - (TYPE_SIZE - (TREE_TYPE (gimple_assign_lhs (stmt)))); - int inner_size - = tree_to_uhwi - (TYPE_SIZE - (TREE_TYPE (gimple_assign_rhs1 (stmt)))); - int stmt_cost = vec_fp_conversion_cost - (ix86_tune_cost, GET_MODE_BITSIZE (mode)); - /* VEC_PACK_TRUNC_EXPR: If inner size is greater than outer size we will end - up doing two conversions and packing them. */ - if (!scalar_p && inner_size > outer_size) - { - int n = inner_size / outer_size; - stmt_cost = stmt_cost * n - + (n - 1) * ix86_vec_cost (mode, ix86_cost->sse_op); - } - return stmt_cost; -} - unsigned ix86_vector_costs::add_stmt_cost (int count, vect_cost_for_stmt kind, stmt_vec_info stmt_info, slp_tree node, @@ -25326,7 +25300,7 @@ ix86_vector_costs::add_stmt_cost (int count, vect_cost_for_stmt kind, else if (X87_FLOAT_MODE_P (mode)) stmt_cost = ix86_cost->fadd; else - stmt_cost = ix86_cost->add; + stmt_cost = ix86_cost->add; } else stmt_cost = ix86_vec_cost (mode, fp ? ix86_cost->addss @@ -25381,7 +25355,7 @@ ix86_vector_costs::add_stmt_cost (int count, vect_cost_for_stmt kind, (subcode == RSHIFT_EXPR && !TYPE_UNSIGNED (TREE_TYPE (op1))) ? ASHIFTRT : LSHIFTRT, mode, - TREE_CODE (op2) == INTEGER_CST, + TREE_CODE (op2) == INTEGER_CST, cst_and_fits_in_hwi (op2) ? int_cst_value (op2) : -1, false, false, NULL, NULL); @@ -25390,30 +25364,152 @@ ix86_vector_costs::add_stmt_cost (int count, vect_cost_for_stmt kind, case NOP_EXPR: /* Only sign-conversions are free. */ if (tree_nop_conversion_p - (TREE_TYPE (gimple_assign_lhs (stmt_info->stmt)), + (TREE_TYPE (gimple_assign_lhs (stmt_info->stmt)), TREE_TYPE (gimple_assign_rhs1 (stmt_info->stmt)))) stmt_cost = 0; else if (fp) - stmt_cost = fp_conversion_stmt_cost (mode, stmt_info->stmt, - scalar_p); + stmt_cost = vec_fp_conversion_cost + (ix86_tune_cost, GET_MODE_BITSIZE (mode)); + break; + + case COND_EXPR: + { + /* SSE2 conditinal move sequence is: + pcmpgtd %xmm5, %xmm0 (accounted separately) + pand %xmm0, %xmm2 + pandn %xmm1, %xmm0 + por %xmm2, %xmm0 + while SSE4 uses cmp + blend + and AVX512 masked moves. + + The condition is accounted separately since we usually have + p = a < b + c = p ? x : y + and we will account first statement as setcc. Exception is when + p is loaded from memory as bool and then we will not acocunt + the compare, but there is no way to check for this. */ + + int ninsns = TARGET_SSE4_1 ? 1 : 3; + + /* If one of parameters is 0 or -1 the sequence will be simplified: + (if_true & mask) | (if_false & ~mask) -> if_true & mask */ + if (ninsns > 1 + && (zerop (gimple_assign_rhs2 (stmt_info->stmt)) + || zerop (gimple_assign_rhs3 (stmt_info->stmt)) + || integer_minus_onep + (gimple_assign_rhs2 (stmt_info->stmt)) + || integer_minus_onep + (gimple_assign_rhs3 (stmt_info->stmt)))) + ninsns = 1; + + if (SSE_FLOAT_MODE_SSEMATH_OR_HFBF_P (mode)) + stmt_cost = ninsns * ix86_cost->sse_op; + else if (X87_FLOAT_MODE_P (mode)) + /* x87 requires conditional branch. We don't have cost for + that. */ + ; + else if (VECTOR_MODE_P (mode)) + stmt_cost = ix86_vec_cost (mode, ninsns * ix86_cost->sse_op); + else + /* compare (accounted separately) + cmov. */ + stmt_cost = ix86_cost->add; + } break; - case BIT_IOR_EXPR: - case ABS_EXPR: - case ABSU_EXPR: case MIN_EXPR: case MAX_EXPR: + if (fp) + { + if (X87_FLOAT_MODE_P (mode)) + /* x87 requires conditional branch. We don't have cost for + that. */ + ; + else + /* minss */ + stmt_cost = ix86_vec_cost (mode, ix86_cost->sse_op); + } + else + { + if (VECTOR_MODE_P (mode)) + { + stmt_cost = ix86_vec_cost (mode, ix86_cost->sse_op); + /* vpmin was introduced in SSE3. + SSE2 needs pcmpgtd + pand + pandn + pxor. + If one of parameters is 0 or -1 the sequence is simplified + to pcmpgtd + pand. */ + if (!TARGET_SSSE3) + { + if (zerop (gimple_assign_rhs2 (stmt_info->stmt)) + || integer_minus_onep + (gimple_assign_rhs2 (stmt_info->stmt))) + stmt_cost *= 2; + else + stmt_cost *= 4; + } + } + else + /* cmp + cmov. */ + stmt_cost = ix86_cost->add * 2; + } + break; + + case ABS_EXPR: + case ABSU_EXPR: + if (fp) + { + if (X87_FLOAT_MODE_P (mode)) + /* fabs. */ + stmt_cost = ix86_cost->fabs; + else + /* andss of sign bit. */ + stmt_cost = ix86_vec_cost (mode, ix86_cost->sse_op); + } + else + { + if (VECTOR_MODE_P (mode)) + { + stmt_cost = ix86_vec_cost (mode, ix86_cost->sse_op); + /* vabs was introduced in SSE3. + SSE3 uses psrat + pxor + psub. */ + if (!TARGET_SSSE3) + stmt_cost *= 3; + } + else + /* neg + cmov. */ + stmt_cost = ix86_cost->add * 2; + } + break; + + case BIT_IOR_EXPR: case BIT_XOR_EXPR: case BIT_AND_EXPR: case BIT_NOT_EXPR: - if (SSE_FLOAT_MODE_SSEMATH_OR_HFBF_P (mode)) - stmt_cost = ix86_cost->sse_op; - else if (VECTOR_MODE_P (mode)) + gcc_assert (!SSE_FLOAT_MODE_SSEMATH_OR_HFBF_P (mode) + && !X87_FLOAT_MODE_P (mode)); + if (VECTOR_MODE_P (mode)) stmt_cost = ix86_vec_cost (mode, ix86_cost->sse_op); else stmt_cost = ix86_cost->add; break; + default: + if (truth_value_p (subcode)) + { + if (SSE_FLOAT_MODE_SSEMATH_OR_HFBF_P (mode)) + /* CMPccS? insructions are cheap, so use sse_op. While they + produce a mask which may need to be turned to 0/1 by and, + expect that this will be optimized away in a common case. */ + stmt_cost = ix86_cost->sse_op; + else if (X87_FLOAT_MODE_P (mode)) + /* fcmp + setcc. */ + stmt_cost = ix86_cost->fadd + ix86_cost->add; + else if (VECTOR_MODE_P (mode)) + stmt_cost = ix86_vec_cost (mode, ix86_cost->sse_op); + else + /* setcc. */ + stmt_cost = ix86_cost->add; + break; + } break; } } @@ -25439,7 +25535,26 @@ ix86_vector_costs::add_stmt_cost (int count, vect_cost_for_stmt kind, if (kind == vec_promote_demote && fp && FLOAT_TYPE_P (TREE_TYPE (gimple_assign_rhs1 (stmt_info->stmt)))) - stmt_cost = fp_conversion_stmt_cost (mode, stmt_info->stmt, scalar_p); + { + int outer_size + = tree_to_uhwi + (TYPE_SIZE + (TREE_TYPE (gimple_assign_lhs (stmt_info->stmt)))); + int inner_size + = tree_to_uhwi + (TYPE_SIZE + (TREE_TYPE (gimple_assign_rhs1 (stmt_info->stmt)))); + int stmt_cost = vec_fp_conversion_cost + (ix86_tune_cost, GET_MODE_BITSIZE (mode)); + /* VEC_PACK_TRUNC_EXPR: If inner size is greater than outer size we will end + up doing two conversions and packing them. */ + if (inner_size > outer_size) + { + int n = inner_size / outer_size; + stmt_cost = stmt_cost * n + + (n - 1) * ix86_vec_cost (mode, ix86_cost->sse_op); + } + } /* If we do elementwise loads into a vector then we are bound by latency and execution resources for the many scalar loads diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index d6b2f29..e170da3 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -26592,8 +26592,8 @@ [(set (match_operand:X87MODEF 0 "register_operand") (if_then_else:X87MODEF (match_operand 1 "comparison_operator") - (match_operand:X87MODEF 2 "register_operand") - (match_operand:X87MODEF 3 "register_operand")))] + (match_operand:X87MODEF 2 "nonimm_or_0_or_1s_operand") + (match_operand:X87MODEF 3 "nonimm_or_0_operand")))] "(TARGET_80387 && TARGET_CMOVE) || (SSE_FLOAT_MODE_P (<MODE>mode) && TARGET_SSE_MATH)" "if (ix86_expand_fp_movcc (operands)) DONE; else FAIL;") diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md index 3d3848c..4b23e18 100644 --- a/gcc/config/i386/predicates.md +++ b/gcc/config/i386/predicates.md @@ -1267,6 +1267,14 @@ (match_operand 0 "vector_memory_operand") (match_code "const_vector"))) +; Return true when OP is register_operand, vector_memory_operand, +; const_vector zero or const_vector all ones. +(define_predicate "vector_or_0_or_1s_operand" + (ior (match_operand 0 "register_operand") + (match_operand 0 "vector_memory_operand") + (match_operand 0 "const0_operand") + (match_operand 0 "int_float_vector_all_ones_operand"))) + (define_predicate "bcst_mem_operand" (and (match_code "vec_duplicate") (and (match_test "TARGET_AVX512F") @@ -1333,6 +1341,12 @@ (ior (match_operand 0 "nonimmediate_operand") (match_operand 0 "const0_operand"))) +; Return true when OP is a nonimmediate or zero or all ones. +(define_predicate "nonimm_or_0_or_1s_operand" + (ior (match_operand 0 "nonimmediate_operand") + (match_operand 0 "const0_operand") + (match_operand 0 "int_float_vector_all_ones_operand"))) + ;; Return true for RTX codes that force SImode address. (define_predicate "SImode_address_operand" (match_code "subreg,zero_extend,and")) diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index b280676..2ed348c 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -527,6 +527,16 @@ (V16SF "TARGET_EVEX512") (V8SF "TARGET_AVX512VL") (V4SF "TARGET_AVX512VL") (V8DF "TARGET_EVEX512") (V4DF "TARGET_AVX512VL") (V2DF "TARGET_AVX512VL")]) +(define_mode_iterator V48_AVX512VL_4 + [(V4SF "TARGET_AVX512VL") (V4DF "TARGET_AVX512VL") + (V4SI "TARGET_AVX512VL") (V4DI "TARGET_AVX512VL")]) + +(define_mode_iterator VI48_AVX512VL_4 + [(V4SI "TARGET_AVX512VL") (V4DI "TARGET_AVX512VL")]) + +(define_mode_iterator V8_AVX512VL_2 + [(V2DF "TARGET_AVX512VL") (V2DI "TARGET_AVX512VL")]) + (define_mode_iterator VFH_AVX10_2 [(V32HF "TARGET_AVX10_2") V16HF V8HF (V16SF "TARGET_AVX10_2") V8SF V4SF @@ -4410,7 +4420,7 @@ (unspec:<V48H_AVX512VL:avx512fmaskmode> [(match_operand:V48H_AVX512VL 1 "nonimmediate_operand" "v") (match_operand:V48H_AVX512VL 2 "nonimmediate_operand" "vm") - (match_operand:SI 3 "const_0_to_7_operand" "n")] + (match_operand:SI 3 "<cmp_imm_predicate>" "n")] UNSPEC_PCMP)))] "TARGET_AVX512F && (!VALID_MASK_AVX512BW_MODE (<SWI248x:MODE>mode) || TARGET_AVX512BW) @@ -4428,7 +4438,7 @@ (unspec:<V48H_AVX512VL:avx512fmaskmode> [(match_operand:V48H_AVX512VL 1 "nonimmediate_operand") (match_operand:V48H_AVX512VL 2 "nonimmediate_operand") - (match_operand:SI 3 "const_0_to_7_operand")] + (match_operand:SI 3 "<cmp_imm_predicate>")] UNSPEC_PCMP))) (set (match_operand:<V48H_AVX512VL:avx512fmaskmode> 4 "register_operand") (unspec:<V48H_AVX512VL:avx512fmaskmode> @@ -4469,7 +4479,8 @@ (match_operand:V48H_AVX512VL 2 "nonimmediate_operand") (match_operand:SI 3 "<cmp_imm_predicate>" "n")] UNSPEC_PCMP)))] - "TARGET_AVX512F && ix86_pre_reload_split ()" + "TARGET_AVX512F && GET_MODE_NUNITS (<MODE>mode) >= 8 + && ix86_pre_reload_split ()" "#" "&& 1" [(set (match_dup 0) @@ -4480,6 +4491,70 @@ UNSPEC_PCMP))] "operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);") +(define_insn "*<avx512>_cmp<mode>3_and15" + [(set (match_operand:QI 0 "register_operand" "=k") + (and:QI + (unspec:QI + [(match_operand:V48_AVX512VL_4 1 "nonimmediate_operand" "v") + (match_operand:V48_AVX512VL_4 2 "nonimmediate_operand" "vm") + (match_operand:SI 3 "<cmp_imm_predicate>" "n")] + UNSPEC_PCMP) + (const_int 15)))] + "TARGET_AVX512F" + "v<ssecmpintprefix>cmp<ssemodesuffix>\t{%3, %2, %1, %0|%0, %1, %2, %3}" + [(set_attr "type" "ssecmp") + (set_attr "length_immediate" "1") + (set_attr "prefix" "evex") + (set_attr "mode" "<sseinsnmode>")]) + +(define_insn "*<avx512>_ucmp<mode>3_and15" + [(set (match_operand:QI 0 "register_operand" "=k") + (and:QI + (unspec:QI + [(match_operand:VI48_AVX512VL_4 1 "nonimmediate_operand" "v") + (match_operand:VI48_AVX512VL_4 2 "nonimmediate_operand" "vm") + (match_operand:SI 3 "const_0_to_7_operand" "n")] + UNSPEC_UNSIGNED_PCMP) + (const_int 15)))] + "TARGET_AVX512F" + "vpcmpu<ssemodesuffix>\t{%3, %2, %1, %0|%0, %1, %2, %3}" + [(set_attr "type" "ssecmp") + (set_attr "length_immediate" "1") + (set_attr "prefix" "evex") + (set_attr "mode" "<sseinsnmode>")]) + +(define_insn "*<avx512>_cmp<mode>3_and3" + [(set (match_operand:QI 0 "register_operand" "=k") + (and:QI + (unspec:QI + [(match_operand:V8_AVX512VL_2 1 "nonimmediate_operand" "v") + (match_operand:V8_AVX512VL_2 2 "nonimmediate_operand" "vm") + (match_operand:SI 3 "<cmp_imm_predicate>" "n")] + UNSPEC_PCMP) + (const_int 3)))] + "TARGET_AVX512F" + "v<ssecmpintprefix>cmp<ssemodesuffix>\t{%3, %2, %1, %0|%0, %1, %2, %3}" + [(set_attr "type" "ssecmp") + (set_attr "length_immediate" "1") + (set_attr "prefix" "evex") + (set_attr "mode" "<sseinsnmode>")]) + +(define_insn "*avx512vl_ucmpv2di3_and3" + [(set (match_operand:QI 0 "register_operand" "=k") + (and:QI + (unspec:QI + [(match_operand:V2DI 1 "nonimmediate_operand" "v") + (match_operand:V2DI 2 "nonimmediate_operand" "vm") + (match_operand:SI 3 "const_0_to_7_operand" "n")] + UNSPEC_UNSIGNED_PCMP) + (const_int 3)))] + "TARGET_AVX512F" + "vpcmpuq\t{%3, %2, %1, %0|%0, %1, %2, %3}" + [(set_attr "type" "ssecmp") + (set_attr "length_immediate" "1") + (set_attr "prefix" "evex") + (set_attr "mode" "TI")]) + (define_insn "<avx512>_cmp<mode>3<mask_scalar_merge_name>" [(set (match_operand:<avx512fmaskmode> 0 "register_operand" "=k") (unspec:<avx512fmaskmode> @@ -4762,7 +4837,8 @@ (match_operand:VI48_AVX512VL 2 "nonimmediate_operand") (match_operand:SI 3 "const_0_to_7_operand")] UNSPEC_UNSIGNED_PCMP)))] - "TARGET_AVX512F && ix86_pre_reload_split ()" + "TARGET_AVX512F && ix86_pre_reload_split () + && GET_MODE_NUNITS (<MODE>mode) >= 8" "#" "&& 1" [(set (match_dup 0) @@ -5142,7 +5218,7 @@ (define_expand "vcond_mask_<mode><sseintvecmodelower>" [(set (match_operand:VI_256_AVX2 0 "register_operand") (vec_merge:VI_256_AVX2 - (match_operand:VI_256_AVX2 1 "nonimmediate_operand") + (match_operand:VI_256_AVX2 1 "nonimm_or_0_or_1s_operand") (match_operand:VI_256_AVX2 2 "nonimm_or_0_operand") (match_operand:<sseintvecmode> 3 "register_operand")))] "TARGET_AVX" @@ -5155,7 +5231,7 @@ (define_expand "vcond_mask_<mode><sseintvecmodelower>" [(set (match_operand:VI_128 0 "register_operand") (vec_merge:VI_128 - (match_operand:VI_128 1 "vector_operand") + (match_operand:VI_128 1 "vector_or_0_or_1s_operand") (match_operand:VI_128 2 "nonimm_or_0_operand") (match_operand:<sseintvecmode> 3 "register_operand")))] "TARGET_SSE2" @@ -5168,7 +5244,7 @@ (define_expand "vcond_mask_v1tiv1ti" [(set (match_operand:V1TI 0 "register_operand") (vec_merge:V1TI - (match_operand:V1TI 1 "vector_operand") + (match_operand:V1TI 1 "vector_or_0_or_1s_operand") (match_operand:V1TI 2 "nonimm_or_0_operand") (match_operand:V1TI 3 "register_operand")))] "TARGET_SSE2" @@ -5181,7 +5257,7 @@ (define_expand "vcond_mask_<mode><sseintvecmodelower>" [(set (match_operand:VF_256 0 "register_operand") (vec_merge:VF_256 - (match_operand:VF_256 1 "nonimmediate_operand") + (match_operand:VF_256 1 "nonimm_or_0_or_1s_operand") (match_operand:VF_256 2 "nonimm_or_0_operand") (match_operand:<sseintvecmode> 3 "register_operand")))] "TARGET_AVX" @@ -5194,7 +5270,7 @@ (define_expand "vcond_mask_<mode><sseintvecmodelower>" [(set (match_operand:VF_128 0 "register_operand") (vec_merge:VF_128 - (match_operand:VF_128 1 "vector_operand") + (match_operand:VF_128 1 "vector_or_0_or_1s_operand") (match_operand:VF_128 2 "nonimm_or_0_operand") (match_operand:<sseintvecmode> 3 "register_operand")))] "TARGET_SSE" diff --git a/gcc/config/mips/mips.cc b/gcc/config/mips/mips.cc index 24a28dc..0d3d026 100644 --- a/gcc/config/mips/mips.cc +++ b/gcc/config/mips/mips.cc @@ -20678,6 +20678,9 @@ mips_option_override (void) "-mcompact-branches=never"); } + if (is_micromips && TARGET_MSA) + error ("unsupported combination: %s", "-mmicromips -mmsa"); + /* Require explicit relocs for MIPS R6 onwards. This enables simplification of the compact branch and jump support through the backend. */ if (!TARGET_EXPLICIT_RELOCS && mips_isa_rev >= 6) diff --git a/gcc/config/riscv/riscv-cores.def b/gcc/config/riscv/riscv-cores.def index 2918496..e31afc3 100644 --- a/gcc/config/riscv/riscv-cores.def +++ b/gcc/config/riscv/riscv-cores.def @@ -41,6 +41,12 @@ RISCV_TUNE("sifive-p400-series", sifive_p400, sifive_p400_tune_info) RISCV_TUNE("sifive-p600-series", sifive_p600, sifive_p600_tune_info) RISCV_TUNE("tt-ascalon-d8", generic_ooo, tt_ascalon_d8_tune_info) RISCV_TUNE("thead-c906", generic, thead_c906_tune_info) +RISCV_TUNE("xt-c908", generic, generic_ooo_tune_info) +RISCV_TUNE("xt-c908v", generic, generic_ooo_tune_info) +RISCV_TUNE("xt-c910", generic, generic_ooo_tune_info) +RISCV_TUNE("xt-c910v2", generic, generic_ooo_tune_info) +RISCV_TUNE("xt-c920", generic, generic_ooo_tune_info) +RISCV_TUNE("xt-c920v2", generic, generic_ooo_tune_info) RISCV_TUNE("xiangshan-nanhu", xiangshan, xiangshan_nanhu_tune_info) RISCV_TUNE("generic-ooo", generic_ooo, generic_ooo_tune_info) RISCV_TUNE("size", generic, optimize_size_tune_info) @@ -93,6 +99,48 @@ RISCV_CORE("thead-c906", "rv64imafdc_xtheadba_xtheadbb_xtheadbs_xtheadcmo_" "xtheadmemidx_xtheadmempair_xtheadsync", "thead-c906") +RISCV_CORE("xt-c908", "rv64imafdc_zicbom_zicbop_zicboz_zicntr_zicsr_" + "zifencei_zihintpause_zihpm_zfh_zba_zbb_zbc_zbs_" + "sstc_svinval_svnapot_svpbmt_xtheadba_xtheadbb_" + "xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_" + "xtheadmac_xtheadmemidx_xtheadmempair_xtheadsync", + "xt-c908") +RISCV_CORE("xt-c908v", "rv64imafdcv_zicbom_zicbop_zicboz_zicntr_zicsr_" + "zifencei_zihintpause_zihpm_zfh_zba_zbb_zbc_zbs_" + "zvfh_sstc_svinval_svnapot_svpbmt__xtheadba_" + "xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_" + "xtheadfmemidx_xtheadmac_xtheadmemidx_" + "xtheadmempair_xtheadsync_xtheadvdot", + "xt-c908") +RISCV_CORE("xt-c910", "rv64imafdc_zicntr_zicsr_zifencei_zihpm_zfh_" + "xtheadba_xtheadbb_xtheadbs_xtheadcmo_" + "xtheadcondmov_xtheadfmemidx_xtheadmac_" + "xtheadmemidx_xtheadmempair_xtheadsync", + "xt-c910") +RISCV_CORE("xt-c910v2", "rv64imafdc_zicbom_zicbop_zicboz_zicntr_zicond_" + "zicsr_zifencei _zihintntl_zihintpause_zihpm_" + "zawrs_zfa_zfbfmin_zfh_zca_zcb_zcd_zba_zbb_zbc_" + "zbs_sscofpmf_sstc_svinval_svnapot_svpbmt_" + "xtheadba_xtheadbb_xtheadbs_xtheadcmo_" + "xtheadcondmov_xtheadfmemidx_xtheadmac_" + "xtheadmemidx_xtheadmempair_xtheadsync", + "xt-c910v2") +RISCV_CORE("xt-c920", "rv64imafdc_zicntr_zicsr_zifencei_zihpm_zfh_" + "xtheadba_xtheadbb_xtheadbs_xtheadcmo_" + "xtheadcondmov_xtheadfmemidx_xtheadmac_" + "xtheadmemidx_xtheadmempair_xtheadsync_" + "xtheadvector", + "xt-c910") +RISCV_CORE("xt-c920v2", "rv64imafdcv_zicbom_zicbop_zicboz_zicntr_zicond_" + "zicsr_zifencei _zihintntl_zihintpause_zihpm_" + "zawrs_zfa_zfbfmin_zfh_zca_zcb_zcd_zba_zbb_zbc_" + "zbs_zvfbfmin_zvfbfwma_zvfh_sscofpmf_sstc_" + "svinval_svnapot_svpbmt_xtheadba_xtheadbb_" + "xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_" + "xtheadmac_xtheadmemidx_xtheadmempair_" + "xtheadsync_xtheadvdot", + "xt-c920v2") + RISCV_CORE("tt-ascalon-d8", "rv64imafdcv_zic64b_zicbom_zicbop_zicboz_" "ziccamoa_ziccif_zicclsm_ziccrse_zicond_zicsr_" "zifencei_zihintntl_zihintpause_zimop_za64rs_" diff --git a/gcc/config/riscv/vector.md b/gcc/config/riscv/vector.md index 51eb64f..3ab4d76 100644 --- a/gcc/config/riscv/vector.md +++ b/gcc/config/riscv/vector.md @@ -2136,18 +2136,34 @@ (match_operand 7 "const_int_operand") (reg:SI VL_REGNUM) (reg:SI VTYPE_REGNUM)] UNSPEC_VPREDICATE) - (vec_duplicate:V_VLS - (match_operand:<VEL> 3 "direct_broadcast_operand")) + ;; (vec_duplicate:V_VLS ;; wrapper activated by wrap_vec_dup below. + (match_operand:<VEL> 3 "direct_broadcast_operand") ;; ) (match_operand:V_VLS 2 "vector_merge_operand")))] "TARGET_VECTOR" { /* Transform vmv.v.x/vfmv.v.f (avl = 1) into vmv.s.x since vmv.s.x/vfmv.s.f has better chances to do vsetvl fusion in vsetvl pass. */ + bool wrap_vec_dup = true; + rtx vec_cst = NULL_RTX; if (riscv_vector::splat_to_scalar_move_p (operands)) { operands[1] = riscv_vector::gen_scalar_move_mask (<VM>mode); operands[3] = force_reg (<VEL>mode, operands[3]); } + else if (immediate_operand (operands[3], <VEL>mode) + && (vec_cst = gen_const_vec_duplicate (<MODE>mode, operands[3])) + && (/* -> pred_broadcast<mode>_zero */ + (vector_least_significant_set_mask_operand (operands[1], + <VM>mode) + && vector_const_0_operand (vec_cst, <MODE>mode)) + || (/* pred_broadcast<mode>_imm */ + vector_all_trues_mask_operand (operands[1], <VM>mode) + && vector_const_int_or_double_0_operand (vec_cst, + <MODE>mode)))) + { + operands[3] = vec_cst; + wrap_vec_dup = false; + } /* Handle vmv.s.x instruction (Wb1 mask) which has memory scalar. */ else if (satisfies_constraint_Wdm (operands[3])) { @@ -2191,6 +2207,8 @@ ; else operands[3] = force_reg (<VEL>mode, operands[3]); + if (wrap_vec_dup) + operands[3] = gen_rtx_VEC_DUPLICATE (<MODE>mode, operands[3]); }) (define_insn_and_split "*pred_broadcast<mode>" diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc index 737c3d6..12dbde2 100644 --- a/gcc/config/rs6000/rs6000.cc +++ b/gcc/config/rs6000/rs6000.cc @@ -25765,10 +25765,13 @@ rs6000_can_inline_p (tree caller, tree callee) } } - /* Ignore -mpower8-fusion and -mpower10-fusion options for inlining - purposes. */ - callee_isa &= ~(OPTION_MASK_P8_FUSION | OPTION_MASK_P10_FUSION); - explicit_isa &= ~(OPTION_MASK_P8_FUSION | OPTION_MASK_P10_FUSION); + /* Ignore -mpower8-fusion, -mpower10-fusion and -msave-toc-indirect options + for inlining purposes. */ + HOST_WIDE_INT ignored_isas = (OPTION_MASK_P8_FUSION + | OPTION_MASK_P10_FUSION + | OPTION_MASK_SAVE_TOC_INDIRECT); + callee_isa &= ~ignored_isas; + explicit_isa &= ~ignored_isas; /* The callee's options must be a subset of the caller's options, i.e. a vsx function may inline an altivec function, but a no-vsx function diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 6975efb..d9f0298 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,35 @@ +2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> + + * name-lookup.cc (lookup_imported_hidden_friend): Remove + unnecessary lazy_load_pendings. + +2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119863 + * name-lookup.cc (get_mergeable_namespace_binding): Remove + no-longer-used function. + (lookup_imported_hidden_friend): Also look for hidden imported + decls in an attached decl's module. + +2025-04-21 Jason Merrill <jason@redhat.com> + + * constexpr.cc (cxx_eval_outermost_constant_expr): Move + verify_constant later. + +2025-04-21 Jason Merrill <jason@redhat.com> + + PR c++/118775 + * constexpr.cc (cxx_eval_call_expression): Add assert. + (fold_to_constant): Handle processing_template_decl. + * init.cc (build_new_1): Use fold_to_constant. + +2025-04-21 Jason Merrill <jason@redhat.com> + + PR c++/99456 + * constexpr.cc (cxx_eval_constant_expression): Check strict + instead of manifestly_const_eval. + (maybe_constant_init_1): Be strict for static constexpr vars. + 2025-04-19 Jason Merrill <jason@redhat.com> * coroutines.cc (coro_build_expr_stmt) diff --git a/gcc/cp/constexpr.cc b/gcc/cp/constexpr.cc index f56c5c4..8a11e62 100644 --- a/gcc/cp/constexpr.cc +++ b/gcc/cp/constexpr.cc @@ -2956,12 +2956,11 @@ cxx_eval_call_expression (const constexpr_ctx *ctx, tree t, gcc_assert (arg0); if (new_op_p) { - /* FIXME: We should not get here; the VERIFY_CONSTANT above - should have already caught it. But currently a conversion - from pointer type to arithmetic type is only considered - non-constant for CONVERT_EXPRs, not NOP_EXPRs. */ if (!tree_fits_uhwi_p (arg0)) { + /* We should not get here; the VERIFY_CONSTANT above + should have already caught it. */ + gcc_checking_assert (false); if (!ctx->quiet) error_at (loc, "cannot allocate array: size not constant"); *non_constant_p = true; @@ -8479,7 +8478,7 @@ cxx_eval_constant_expression (const constexpr_ctx *ctx, tree t, if (TREE_CODE (t) == CONVERT_EXPR && ARITHMETIC_TYPE_P (type) && INDIRECT_TYPE_P (TREE_TYPE (op)) - && ctx->manifestly_const_eval == mce_true) + && ctx->strict) { if (!ctx->quiet) error_at (loc, @@ -9228,11 +9227,6 @@ cxx_eval_outermost_constant_expr (tree t, bool allow_non_constant, if (r == void_node && !constexpr_dtor && ctx.ctor) r = ctx.ctor; - if (!constexpr_dtor) - verify_constant (r, allow_non_constant, &non_constant_p, &overflow_p); - else - DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P (object) = true; - unsigned int i; tree cleanup; /* Evaluate the cleanups. */ @@ -9251,15 +9245,6 @@ cxx_eval_outermost_constant_expr (tree t, bool allow_non_constant, non_constant_p = true; } - if (TREE_CODE (r) == CONSTRUCTOR && CONSTRUCTOR_NO_CLEARING (r)) - { - if (!allow_non_constant) - error ("%qE is not a constant expression because it refers to " - "an incompletely initialized variable", t); - TREE_CONSTANT (r) = false; - non_constant_p = true; - } - if (!non_constant_p && cxx_dialect >= cxx20 && !global_ctx.heap_vars.is_empty ()) { @@ -9316,6 +9301,21 @@ cxx_eval_outermost_constant_expr (tree t, bool allow_non_constant, non_constant_p = true; } + if (!non_constant_p && !constexpr_dtor) + verify_constant (r, allow_non_constant, &non_constant_p, &overflow_p); + + /* After verify_constant because reduced_constant_expression_p can unset + CONSTRUCTOR_NO_CLEARING. */ + if (!non_constant_p + && TREE_CODE (r) == CONSTRUCTOR && CONSTRUCTOR_NO_CLEARING (r)) + { + if (!allow_non_constant) + error ("%qE is not a constant expression because it refers to " + "an incompletely initialized variable", t); + TREE_CONSTANT (r) = false; + non_constant_p = true; + } + if (non_constant_p) /* If we saw something bad, go back to our argument. The wrapping below is only for the cases of TREE_CONSTANT argument or overflow. */ @@ -9332,13 +9332,17 @@ cxx_eval_outermost_constant_expr (tree t, bool allow_non_constant, if (non_constant_p && !allow_non_constant) return error_mark_node; - else if (constexpr_dtor) - return r; else if (non_constant_p && TREE_CONSTANT (r)) r = mark_non_constant (r); else if (non_constant_p) return t; + if (constexpr_dtor) + { + DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P (object) = true; + return r; + } + /* Check we are not trying to return the wrong type. */ if (!same_type_ignoring_top_level_qualifiers_p (type, TREE_TYPE (r))) { @@ -9490,6 +9494,9 @@ fold_simple (tree t) tree fold_to_constant (tree t) { + if (processing_template_decl) + return t; + tree r = fold (t); if (CONSTANT_CLASS_P (r) && !TREE_OVERFLOW (r)) return r; @@ -9747,16 +9754,26 @@ maybe_constant_init_1 (tree t, tree decl, bool allow_non_constant, { /* [basic.start.static] allows constant-initialization of variables with static or thread storage duration even if it isn't required, but we - shouldn't bend the rules the same way for automatic variables. */ + shouldn't bend the rules the same way for automatic variables. + + But still enforce the requirements of constexpr/constinit. + [dcl.constinit] "If a variable declared with the constinit specifier + has dynamic initialization, the program is ill-formed, even if the + implementation would perform that initialization as a static + initialization." */ bool is_static = (decl && DECL_P (decl) && (TREE_STATIC (decl) || DECL_EXTERNAL (decl))); + bool strict = (!is_static + || (decl && DECL_P (decl) + && (DECL_DECLARED_CONSTEXPR_P (decl) + || DECL_DECLARED_CONSTINIT_P (decl)))); if (is_static) manifestly_const_eval = mce_true; if (cp_unevaluated_operand && manifestly_const_eval != mce_true) return fold_to_constant (t); - t = cxx_eval_outermost_constant_expr (t, allow_non_constant, !is_static, + t = cxx_eval_outermost_constant_expr (t, allow_non_constant, strict, manifestly_const_eval, false, decl); } diff --git a/gcc/cp/contracts.cc b/gcc/cp/contracts.cc index 3ca2102..d0cfd2e 100644 --- a/gcc/cp/contracts.cc +++ b/gcc/cp/contracts.cc @@ -860,6 +860,9 @@ cp_contract_assertion_p (const_tree attr) void remove_contract_attributes (tree fndecl) { + if (!flag_contracts) + return; + tree list = NULL_TREE; for (tree p = DECL_ATTRIBUTES (fndecl); p; p = TREE_CHAIN (p)) if (!cxx_contract_attribute_p (p)) diff --git a/gcc/cp/init.cc b/gcc/cp/init.cc index e589e45..062a493 100644 --- a/gcc/cp/init.cc +++ b/gcc/cp/init.cc @@ -3405,7 +3405,7 @@ build_new_1 (vec<tree, va_gc> **placement, tree type, tree nelts, errval = throw_bad_array_new_length (); if (outer_nelts_check != NULL_TREE) size = build3 (COND_EXPR, sizetype, outer_nelts_check, size, errval); - size = cp_fully_fold (size); + size = fold_to_constant (size); /* Create the argument list. */ vec_safe_insert (*placement, 0, size); /* Do name-lookup to find the appropriate operator. */ @@ -3462,7 +3462,7 @@ build_new_1 (vec<tree, va_gc> **placement, tree type, tree nelts, outer_nelts_check = NULL_TREE; } - size = cp_fully_fold (size); + size = fold_to_constant (size); /* If size is zero e.g. due to type having zero size, try to preserve outer_nelts for constant expression evaluation purposes. */ diff --git a/gcc/cp/name-lookup.cc b/gcc/cp/name-lookup.cc index 498126a..aa2dc0e 100644 --- a/gcc/cp/name-lookup.cc +++ b/gcc/cp/name-lookup.cc @@ -4178,22 +4178,6 @@ mergeable_namespace_slots (tree ns, tree name, bool is_attached, tree *vec) return vslot; } -/* Retrieve the bindings for an existing mergeable entity in namespace - NS slot NAME. Returns NULL if no such bindings exists. */ - -static tree -get_mergeable_namespace_binding (tree ns, tree name, bool is_attached) -{ - tree *mslot = find_namespace_slot (ns, name, false); - if (!mslot || !*mslot || TREE_CODE (*mslot) != BINDING_VECTOR) - return NULL_TREE; - - tree *vslot = get_fixed_binding_slot - (mslot, name, is_attached ? BINDING_SLOT_PARTITION : BINDING_SLOT_GLOBAL, - false); - return vslot ? *vslot : NULL_TREE; -} - /* DECL is a new mergeable namespace-scope decl. Add it to the mergeable entities on GSLOT. */ @@ -4572,11 +4556,9 @@ lookup_imported_hidden_friend (tree friend_tmpl) || !DECL_MODULE_ENTITY_P (inner)) return NULL_TREE; - lazy_load_pendings (friend_tmpl); - - tree bind = get_mergeable_namespace_binding - (current_namespace, DECL_NAME (inner), DECL_MODULE_ATTACH_P (inner)); - if (!bind) + tree name = DECL_NAME (inner); + tree *slot = find_namespace_slot (current_namespace, name, false); + if (!slot || !*slot || TREE_CODE (*slot) != BINDING_VECTOR) return NULL_TREE; /* We're only interested in declarations attached to the same module @@ -4584,9 +4566,28 @@ lookup_imported_hidden_friend (tree friend_tmpl) int m = get_originating_module (friend_tmpl, /*global=-1*/true); gcc_assert (m != 0); + /* First check whether there's a reachable declaration attached to the module + we're looking for. */ + if (m > 0) + if (binding_slot *mslot = search_imported_binding_slot (slot, m)) + { + if (mslot->is_lazy ()) + lazy_load_binding (m, current_namespace, name, mslot); + for (ovl_iterator iter (*mslot); iter; ++iter) + if (DECL_CLASS_TEMPLATE_P (*iter)) + return *iter; + } + + /* Otherwise, look in the mergeable slots for this name, in case an importer + has already instantiated this declaration. */ + tree *vslot = get_fixed_binding_slot + (slot, name, m > 0 ? BINDING_SLOT_PARTITION : BINDING_SLOT_GLOBAL, false); + if (!vslot || !*vslot) + return NULL_TREE; + /* There should be at most one class template from the module we're looking for, return it. */ - for (ovl_iterator iter (bind); iter; ++iter) + for (ovl_iterator iter (*vslot); iter; ++iter) if (DECL_CLASS_TEMPLATE_P (*iter) && get_originating_module (*iter, true) == m) return *iter; diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 020442a..a0f60e7 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -16897,11 +16897,6 @@ Maximum depth of recursive cloning for self-recursive function. Recursive cloning only when the probability of call being executed exceeds the parameter. -@item ipa-cp-profile-count-base -When using @option{-fprofile-use} option, IPA-CP will consider the measured -execution count of a call graph edge at this percentage position in their -histogram as the basis for its heuristics calculation. - @item ipa-cp-recursive-freq-factor The number of times interprocedural copy propagation expects recursive functions to call themselves. @@ -16963,6 +16958,19 @@ Size of max partition for WHOPR (in estimated instructions). to provide an upper bound for individual size of partition. Meant to be used only with balanced partitioning. +@item lto-partition-locality-frequency-cutoff +The denominator n of fraction 1/n of the execution frequency of callee to be +cloned for a particular caller. Special value of 0 dictates to always clone +without a cut-off. + +@item lto-partition-locality-size-cutoff +Size cut-off for callee including inlined calls to be cloned for a particular +caller. + +@item lto-max-locality-partition +Maximal size of a locality partition for LTO (in estimated instructions). +Value of 0 results in default value being used. + @item lto-max-streaming-parallelism Maximal number of parallel processes used for LTO streaming. @@ -31504,8 +31512,9 @@ Permissible values for this option are: @samp{sifive-e20}, @samp{sifive-e21}, @samp{sifive-e24}, @samp{sifive-e31}, @samp{sifive-e34}, @samp{sifive-e76}, @samp{sifive-s21}, @samp{sifive-s51}, @samp{sifive-s54}, @samp{sifive-s76}, @samp{sifive-u54}, @samp{sifive-u74}, @samp{sifive-x280}, @samp{sifive-xp450}, -@samp{sifive-x670}, @samp{thead-c906}, @samp{tt-ascalon-d8}, -@samp{xiangshan-nanhu}. +@samp{sifive-x670}, @samp{thead-c906}, @samp{tt-ascalon-d8}, @samp{xiangshan-nanhu}, +@samp{xt-c908}, @samp{xt-c908v}, @samp{xt-c910}, @samp{xt-c910v2}, +@samp{xt-c920}, @samp{xt-c920v2}. Note that @option{-mcpu} does not override @option{-march} or @option{-mtune}. diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc index 69e9d77..34ffeed 100644 --- a/gcc/dwarf2out.cc +++ b/gcc/dwarf2out.cc @@ -1536,7 +1536,7 @@ loc_descr_equal_p_1 (dw_loc_descr_ref a, dw_loc_descr_ref b) /* ??? This is only ever set for DW_OP_constNu, for N equal to the address size, but since we always allocate cleared storage it should be zero for other types of locations. */ - if (a->dtprel != b->dtprel) + if (a->dw_loc_dtprel != b->dw_loc_dtprel) return false; return (dw_val_equal_p (&a->dw_loc_oprnd1, &b->dw_loc_oprnd1) @@ -2115,7 +2115,7 @@ output_loc_operands (dw_loc_descr_ref loc, int for_eh_or_skip) dw2_asm_output_data (2, val1->v.val_int, NULL); break; case DW_OP_const4u: - if (loc->dtprel) + if (loc->dw_loc_dtprel) { gcc_assert (targetm.asm_out.output_dwarf_dtprel); targetm.asm_out.output_dwarf_dtprel (asm_out_file, 4, @@ -2128,7 +2128,7 @@ output_loc_operands (dw_loc_descr_ref loc, int for_eh_or_skip) dw2_asm_output_data (4, val1->v.val_int, NULL); break; case DW_OP_const8u: - if (loc->dtprel) + if (loc->dw_loc_dtprel) { gcc_assert (targetm.asm_out.output_dwarf_dtprel); targetm.asm_out.output_dwarf_dtprel (asm_out_file, 8, @@ -2323,7 +2323,7 @@ output_loc_operands (dw_loc_descr_ref loc, int for_eh_or_skip) break; case DW_OP_addr: - if (loc->dtprel) + if (loc->dw_loc_dtprel) { if (targetm.asm_out.output_dwarf_dtprel) { @@ -4028,7 +4028,7 @@ new_addr_loc_descr (rtx addr, enum dtprel_bool dtprel) ref->dw_loc_oprnd1.val_class = dw_val_class_addr; ref->dw_loc_oprnd1.v.val_addr = addr; - ref->dtprel = dtprel; + ref->dw_loc_dtprel = dtprel; if (dwarf_split_debug_info) ref->dw_loc_oprnd1.val_entry = add_addr_table_entry (addr, @@ -7036,7 +7036,7 @@ loc_checksum (dw_loc_descr_ref loc, struct md5_ctx *ctx) inchash::hash hstate; hashval_t hash; - tem = (loc->dtprel << 8) | ((unsigned int) loc->dw_loc_opc); + tem = (loc->dw_loc_dtprel << 8) | ((unsigned int) loc->dw_loc_opc); CHECKSUM (tem); hash_loc_operands (loc, hstate); hash = hstate.end(); @@ -7259,7 +7259,7 @@ loc_checksum_ordered (dw_loc_descr_ref loc, struct md5_ctx *ctx) inchash::hash hstate; hashval_t hash; - CHECKSUM_ULEB128 (loc->dtprel); + CHECKSUM_ULEB128 (loc->dw_loc_dtprel); CHECKSUM_ULEB128 (loc->dw_loc_opc); hash_loc_operands (loc, hstate); hash = hstate.end (); @@ -18310,7 +18310,7 @@ resolve_args_picking_1 (dw_loc_descr_ref loc, unsigned initial_frame_offset, /* If needed, relocate the picking offset with respect to the frame offset. */ - if (l->frame_offset_rel) + if (l->dw_loc_frame_offset_rel) { unsigned HOST_WIDE_INT off; switch (l->dw_loc_opc) @@ -18826,7 +18826,7 @@ loc_list_from_tree_1 (tree loc, int want_address, && want_address == 0) { ret = new_loc_descr (DW_OP_pick, 0, 0); - ret->frame_offset_rel = 1; + ret->dw_loc_frame_offset_rel = 1; context->placeholder_seen = true; break; } @@ -18993,7 +18993,7 @@ loc_list_from_tree_1 (tree loc, int want_address, gcc_assert (cursor != NULL_TREE); ret = new_loc_descr (DW_OP_pick, i, 0); - ret->frame_offset_rel = 1; + ret->dw_loc_frame_offset_rel = 1; break; } /* FALLTHRU */ @@ -31061,7 +31061,7 @@ resolve_addr_in_expr (dw_attr_node *a, dw_loc_descr_ref loc) || loc->dw_loc_opc == DW_OP_addrx) || ((loc->dw_loc_opc == DW_OP_GNU_const_index || loc->dw_loc_opc == DW_OP_constx) - && loc->dtprel)) + && loc->dw_loc_dtprel)) { rtx rtl = loc->dw_loc_oprnd1.val_entry->addr.rtl; if (!resolve_one_addr (&rtl)) @@ -31073,7 +31073,7 @@ resolve_addr_in_expr (dw_attr_node *a, dw_loc_descr_ref loc) break; case DW_OP_const4u: case DW_OP_const8u: - if (loc->dtprel + if (loc->dw_loc_dtprel && !resolve_one_addr (&loc->dw_loc_oprnd1.v.val_addr)) return false; break; @@ -31359,8 +31359,12 @@ copy_deref_exprloc (dw_loc_descr_ref expr) while (expr != l) { *p = new_loc_descr (expr->dw_loc_opc, 0, 0); - (*p)->dw_loc_oprnd1 = expr->dw_loc_oprnd1; - (*p)->dw_loc_oprnd2 = expr->dw_loc_oprnd2; + (*p)->dw_loc_oprnd1.val_class = expr->dw_loc_oprnd1.val_class; + (*p)->dw_loc_oprnd1.val_entry = expr->dw_loc_oprnd1.val_entry; + (*p)->dw_loc_oprnd1.v = expr->dw_loc_oprnd1.v; + (*p)->dw_loc_oprnd2.val_class = expr->dw_loc_oprnd2.val_class; + (*p)->dw_loc_oprnd2.val_entry = expr->dw_loc_oprnd2.val_entry; + (*p)->dw_loc_oprnd2.v = expr->dw_loc_oprnd2.v; p = &(*p)->dw_loc_next; expr = expr->dw_loc_next; } @@ -31451,7 +31455,9 @@ optimize_string_length (dw_attr_node *a) copy over the DW_AT_location attribute from die to a. */ if (l->dw_loc_next != NULL) { - a->dw_attr_val = av->dw_attr_val; + a->dw_attr_val.val_class = av->dw_attr_val.val_class; + a->dw_attr_val.val_entry = av->dw_attr_val.val_entry; + a->dw_attr_val.v = av->dw_attr_val.v; return 1; } @@ -31737,7 +31743,7 @@ hash_loc_operands (dw_loc_descr_ref loc, inchash::hash &hstate) { case DW_OP_const4u: case DW_OP_const8u: - if (loc->dtprel) + if (loc->dw_loc_dtprel) goto hash_addr; /* FALLTHRU */ case DW_OP_const1u: @@ -31839,7 +31845,7 @@ hash_loc_operands (dw_loc_descr_ref loc, inchash::hash &hstate) break; case DW_OP_addr: hash_addr: - if (loc->dtprel) + if (loc->dw_loc_dtprel) { unsigned char dtprel = 0xd1; hstate.add_object (dtprel); @@ -31851,7 +31857,7 @@ hash_loc_operands (dw_loc_descr_ref loc, inchash::hash &hstate) case DW_OP_GNU_const_index: case DW_OP_constx: { - if (loc->dtprel) + if (loc->dw_loc_dtprel) { unsigned char dtprel = 0xd1; hstate.add_object (dtprel); @@ -31998,7 +32004,7 @@ compare_loc_operands (dw_loc_descr_ref x, dw_loc_descr_ref y) { case DW_OP_const4u: case DW_OP_const8u: - if (x->dtprel) + if (x->dw_loc_dtprel) goto hash_addr; /* FALLTHRU */ case DW_OP_const1u: @@ -32162,7 +32168,7 @@ compare_locs (dw_loc_descr_ref x, dw_loc_descr_ref y) { for (; x != NULL && y != NULL; x = x->dw_loc_next, y = y->dw_loc_next) if (x->dw_loc_opc != y->dw_loc_opc - || x->dtprel != y->dtprel + || x->dw_loc_dtprel != y->dw_loc_dtprel || !compare_loc_operands (x, y)) break; return x == NULL && y == NULL; diff --git a/gcc/dwarf2out.h b/gcc/dwarf2out.h index fe50956..a0b0fa4 100644 --- a/gcc/dwarf2out.h +++ b/gcc/dwarf2out.h @@ -276,6 +276,25 @@ typedef struct GTY(()) dw_loc_list_struct { struct GTY(()) dw_val_node { enum dw_val_class val_class; + /* On 64-bit host, there are 4 bytes of padding between val_class + and val_entry. Reuse the padding for other content of + dw_loc_descr_node and dw_attr_struct. */ + union dw_val_node_parent + { + struct dw_val_loc_descr_node + { + ENUM_BITFIELD (dwarf_location_atom) dw_loc_opc_v : 8; + /* Used to distinguish DW_OP_addr with a direct symbol relocation + from DW_OP_addr with a dtp-relative symbol relocation. */ + unsigned int dw_loc_dtprel_v : 1; + /* For DW_OP_pick, DW_OP_dup and DW_OP_over operations: true iff. + it targets a DWARF prodecure argument. In this case, it needs to be + relocated according to the current frame offset. */ + unsigned int dw_loc_frame_offset_rel_v : 1; + } u1; + int u2; + enum dwarf_attribute u3; + } GTY((skip)) u; struct addr_table_entry * GTY(()) val_entry; union dw_val_struct_union { @@ -321,15 +340,15 @@ struct GTY(()) dw_val_node { struct GTY((chain_next ("%h.dw_loc_next"))) dw_loc_descr_node { dw_loc_descr_ref dw_loc_next; - ENUM_BITFIELD (dwarf_location_atom) dw_loc_opc : 8; +#define dw_loc_opc dw_loc_oprnd1.u.u1.dw_loc_opc_v /* Used to distinguish DW_OP_addr with a direct symbol relocation from DW_OP_addr with a dtp-relative symbol relocation. */ - unsigned int dtprel : 1; +#define dw_loc_dtprel dw_loc_oprnd1.u.u1.dw_loc_dtprel_v /* For DW_OP_pick, DW_OP_dup and DW_OP_over operations: true iff. it targets a DWARF prodecure argument. In this case, it needs to be relocated according to the current frame offset. */ - unsigned int frame_offset_rel : 1; - int dw_loc_addr; +#define dw_loc_frame_offset_rel dw_loc_oprnd1.u.u1.dw_loc_frame_offset_rel_v +#define dw_loc_addr dw_loc_oprnd2.u.u2 dw_val_node dw_loc_oprnd1; dw_val_node dw_loc_oprnd2; }; @@ -493,7 +512,7 @@ void dwarf2out_cc_finalize (void); Attributes are typically linked below the DIE they modify. */ typedef struct GTY(()) dw_attr_struct { - enum dwarf_attribute dw_attr; +#define dw_attr dw_attr_val.u.u3 dw_val_node dw_attr_val; } dw_attr_node; diff --git a/gcc/except.cc b/gcc/except.cc index 205811c..0fe1e09 100644 --- a/gcc/except.cc +++ b/gcc/except.cc @@ -2949,7 +2949,14 @@ switch_to_exception_section (const char * ARG_UNUSED (fnname)) { section *s; - if (exception_section) + if (exception_section + /* Don't use the cached section for comdat if it will be different. */ +#ifdef HAVE_LD_EH_GC_SECTIONS + && !(targetm_common.have_named_sections + && DECL_COMDAT_GROUP (current_function_decl) + && HAVE_COMDAT_GROUP) +#endif + ) s = exception_section; else { diff --git a/gcc/flag-types.h b/gcc/flag-types.h index db57376..9a3cc4a 100644 --- a/gcc/flag-types.h +++ b/gcc/flag-types.h @@ -404,8 +404,7 @@ enum lto_partition_model { LTO_PARTITION_BALANCED = 2, LTO_PARTITION_1TO1 = 3, LTO_PARTITION_MAX = 4, - LTO_PARTITION_CACHE = 5, - LTO_PARTITION_DEFAULT= 6 + LTO_PARTITION_CACHE = 5 }; /* flag_lto_locality_cloning initialization values. */ diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 56325a9..bda22d1 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,210 @@ +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * match.cc (match_exit_cycle): Allow to exit team block. + (gfc_match_end_team): Create end_team node also without + parameter list. + * trans-intrinsic.cc (conv_stat_and_team): Team and team_number + only need to be a single pointer. + * trans-stmt.cc (trans_associate_var): Create a mapping coarray + token for coarray associations or it is not addressed correctly. + * trans.h (enum gfc_coarray_regtype): Add mapping mode to + coarray register. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * check.cc (gfc_check_image_index): Check for team or + team_number correctnes. + (gfc_check_num_images): Same. + * gfortran.texi: Update documentation on num_images' API + function. + * intrinsic.cc (add_functions): Update signature of image_index + and num_images. Both can take either a team handle or number. + * intrinsic.h (gfc_check_num_images): Update signature to take + either team or team_number. + (gfc_check_image_index): Can take coarray, subscripts and team + or team number now. + (gfc_simplify_image_index): Same. + (gfc_simplify_num_images): Same. + (gfc_resolve_image_index): Same. + * intrinsic.texi: Update documentation of num_images() Fortran + function. + * iresolve.cc (gfc_resolve_image_index): Update signature. + * simplify.cc (gfc_simplify_num_images): Update signature and + remove undocumented failed argument. + (gfc_simplify_image_index): Add team or team number argument. + * trans-intrinsic.cc (conv_stat_and_team): Because being + optional teams need to be a pointer to the opaque pointer. + (conv_caf_sendget): Correct call; was two arguments short. + (trans_image_index): Support team or team_number. + (trans_num_images): Same. + (conv_intrinsic_cobound): Adapt to changed signature of + num_images in call. + * trans-stmt.cc (gfc_trans_sync): Same. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + * check.cc (gfc_check_this_image): Check the three different + parameter lists possible for this_image and sort them correctly. + * gfortran.texi: Update documentation on this_image's API. + * intrinsic.cc (add_functions): Update this_image's signature. + (check_specific): Add specific check for this_image. + * intrinsic.h (gfc_check_this_image): Change to flexible + argument list. + * intrinsic.texi: Update documentation on this_image(). + * iresolve.cc (gfc_resolve_this_image): Resolve the different + arguments. + * simplify.cc (gfc_simplify_this_image): Simplify the simplify + routine. + * trans-decl.cc (gfc_build_builtin_function_decls): Update + signature of this_image. + * trans-expr.cc (gfc_caf_get_image_index): Use correct signature + of this_image. + * trans-intrinsic.cc (trans_this_image): Adapt to correct + signature. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/88154 + PR fortran/88960 + PR fortran/97210 + PR fortran/103001 + * check.cc (team_type_check): Check a type for being team_type + from the iso_fortran_env module. + (gfc_check_image_status): Use team_type check. + (gfc_check_get_team): Check for level argument. + (gfc_check_team_number): Use team_type check. + * expr.cc (gfc_check_assign): Add treatment for returning + team_type in caf-single mode. + * gfortran.texi: Add/Update documentation for get_team and + team_number API functions. + * intrinsic.cc (add_functions): Update get_team signature. + * intrinsic.h (gfc_resolve_get_team): Add prototype. + * intrinsic.texi: Add/Update documentation for get_team and + team_number Fortran functions. + * iresolve.cc (gfc_resolve_get_team): Resolve return type to be + of type team_type. + * iso-fortran-env.def: Update STAT_LOCK constants. They have + nothing to do with files. Add level constants for get_team. + * libgfortran.h: Add level and unlock_stat constants. + * simplify.cc (gfc_simplify_get_team): Simply to correct return + type team_type. + * trans-decl.cc (gfc_build_builtin_function_decls): Update + get_team and image_status API prototypes to correct signatures. + * trans-intrinsic.cc (conv_intrinsic_image_status): Translate + second parameter correctly. + (conv_intrinsic_team_number): Translate optional single team + argument correctly. + (gfc_conv_intrinsic_function): Add translation of get_team. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + PR fortran/87556 + PR fortran/88254 + PR fortran/103796 + * coarray.cc (split_expr_at_caf_ref): Treat polymorphic types + correctly. Ensure resolve of expression after coindex. + (create_allocated_callback): Fix parameter of allocated function + for coarrays. + (coindexed_expr_callback): Improve detection of coarrays in + allocated function. + * decl.cc (gfc_match_end): Add team block matching. + * dump-parse-tree.cc (show_code_node): Dump change team block as + such. + * frontend-passes.cc (gfc_code_walker): Recognice team block. + * gfortran.texi: Add documentation for team api functions. + * intrinsic.texi: Add documentation about team_type in + iso_fortran_env module. + * iso-fortran-env.def (team_type): Use helper to get pointer + kind. + * match.cc (gfc_match_associate): Factor out matching of + association list, because it is used in change team as well. + (check_coarray_assoc): Ensure, that the association is to a + coarray. + (match_association_list): Match a list of association either in + associate or in change team. + (gfc_match_form_team): Match form team correctly include + new_index. + (gfc_match_change_team): Match change team with association + list. + (gfc_match_end_team): Match end team including stat and errmsg. + (gfc_match_return): Prevent return from team block. + * parse.cc (decode_statement): Sort team block. + (next_statement): Same. + (check_statement_label): Same. + (accept_statement): Same. + (verify_st_order): Same. + (parse_associate): Renamed to move_associates_to_block... + (move_associates_to_block): ... to enable reuse for change team. + (parse_change_team): Parse it as block. + (parse_executable): Same. + * parse.h (enum gfc_compile_state): Add team block as compiler + state. + * resolve.cc (resolve_scalar_argument): New function to resolve + an argument to a statement as a scalar. + (resolve_form_team): Resolve its members. + (resolve_change_team): Same. + (resolve_branch): Prevent branch from jumping out of team block. + (check_team): Removed. + * trans-decl.cc (gfc_build_builtin_function_decls): Add stat and + errmsg to team API functions and update their arguments. + * trans-expr.cc (gfc_trans_subcomponent_assign): Also null the + token when moving memory or an allocated() will not detect a + free. + * trans-intrinsic.cc (gfc_conv_intrinsic_caf_is_present_remote): + Adapt to signature change no longer a pointer-pointer. + * trans-stmt.cc (gfc_trans_form_team): Translate a form team + including new_index. + (gfc_trans_change_team): Translate a change team as a block. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87939 + * check.cc (gfc_check_move_alloc): Add stat and errmsg to + move_alloc. + * dump-parse-tree.cc (show_sync_stat): New helper function. + (show_code_node): Use show_sync_stat to print stat and errmsg. + * gfortran.h (struct sync_stat): New struct to unify stat and + errmsg handling. + * intrinsic.cc (add_subroutines): Correct signature of + move_alloc. + * intrinsic.h (gfc_check_move_alloc): Correct signature of + check_move_alloc. + * match.cc (match_named_arg): Match an optional argument to a + statement. + (match_stat_errmsg): Match a stat= or errmsg= named argument. + (gfc_match_critical): Use match_stat_errmsg to match the named + arguments. + (gfc_match_sync_team): Same. + * resolve.cc (resolve_team_argument): Resolve an expr to have + type TEAM_TYPE from iso_fortran_env. + (resolve_scalar_variable_as_arg): Resolve an argument as a + scalar type. + (resolve_sync_stat): Resolve stat and errmsg expressions. + (resolve_sync_team): Resolve a sync team statement using + sync_stat helper. + (resolve_end_team): Same. + (resolve_critical): Same. + * trans-decl.cc (gfc_build_builtin_function_decls): Correct + sync_team signature. + * trans-intrinsic.cc (conv_intrinsic_move_alloc): Store stat + an errmsg optional arguments in helper struct and use helper + to translate. + * trans-stmt.cc (trans_exit): Implement DRY pattern for + generating an _exit(). + (gfc_trans_sync_stat): Translate stat and errmsg contents. + (gfc_trans_end_team): Use helper to translate stat and errmsg. + (gfc_trans_sync_team): Same. + (gfc_trans_critical): Same. + * trans-stmt.h (gfc_trans_sync_stat): New function. + * trans.cc (gfc_deallocate_with_status): Parameterize check at + runtime to allow unallocated (co-)array when freeing a + structure. + (gfc_deallocate_scalar_with_status): Same and also add errmsg. + * trans.h (gfc_deallocate_with_status): Signature changes. + (gfc_deallocate_scalar_with_status): Same. + 2025-04-19 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/119836 diff --git a/gcc/fortran/check.cc b/gcc/fortran/check.cc index 9c66c25..299c216 100644 --- a/gcc/fortran/check.cc +++ b/gcc/fortran/check.cc @@ -1809,6 +1809,23 @@ gfc_check_atomic_ref (gfc_expr *value, gfc_expr *atom, gfc_expr *stat) return gfc_check_atomic (atom, 1, value, 0, stat, 2); } +bool +team_type_check (gfc_expr *e, int n) +{ + if (e->ts.type != BT_DERIVED || !e->ts.u.derived + || e->ts.u.derived->from_intmod != INTMOD_ISO_FORTRAN_ENV + || e->ts.u.derived->intmod_sym_id != ISOFORTRAN_TEAM_TYPE) + { + gfc_error ("%qs argument of %qs intrinsic at %L shall be of type " + "%<team_type%> from the intrinsic module " + "%<ISO_FORTRAN_ENV%>", + gfc_current_intrinsic_arg[n]->name, gfc_current_intrinsic, + &e->where); + return false; + } + + return true; +} bool gfc_check_image_status (gfc_expr *image, gfc_expr *team) @@ -1818,14 +1835,7 @@ gfc_check_image_status (gfc_expr *image, gfc_expr *team) || !positive_check (0, image)) return false; - if (team) - { - gfc_error ("%qs argument of %qs intrinsic at %L not yet supported", - gfc_current_intrinsic_arg[1]->name, gfc_current_intrinsic, - &team->where); - return false; - } - return true; + return !team || (scalar_check (team, 0) && team_type_check (team, 0)); } @@ -1905,10 +1915,25 @@ gfc_check_get_team (gfc_expr *level) { if (level) { - gfc_error ("%qs argument of %qs intrinsic at %L not yet supported", - gfc_current_intrinsic_arg[0]->name, gfc_current_intrinsic, - &level->where); - return false; + int l; + + if (!type_check (level, 0, BT_INTEGER) || !scalar_check (level, 0)) + return false; + + /* When level is a constant, try to extract it. If not, the runtime has + to check. */ + if (gfc_extract_int (level, &l, 0)) + return true; + + if (l < GFC_CAF_INITIAL_TEAM || l > GFC_CAF_CURRENT_TEAM) + { + gfc_error ("%qs argument of %qs intrinsic at %L shall specify one of " + "the INITIAL_TEAM, PARENT_TEAM or CURRENT_TEAM constants " + "from the intrinsic module ISO_FORTRAN_ENV", + gfc_current_intrinsic_arg[0]->name, gfc_current_intrinsic, + &level->where); + return false; + } } return true; } @@ -3810,7 +3835,8 @@ gfc_check_lcobound (gfc_expr *coarray, gfc_expr *dim, gfc_expr *kind) { if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to enable"); + gfc_fatal_error ("Coarrays disabled at %L, use %<-fcoarray=%> to enable", + gfc_current_intrinsic_where); return false; } @@ -4683,8 +4709,18 @@ gfc_check_merge_bits (gfc_expr *i, gfc_expr *j, gfc_expr *mask) bool -gfc_check_move_alloc (gfc_expr *from, gfc_expr *to) +gfc_check_move_alloc (gfc_expr *from, gfc_expr *to, gfc_expr *stat, + gfc_expr *errmsg) { + struct sync_stat sync_stat = {stat, errmsg}; + + if ((stat || errmsg) + && !gfc_notify_std (GFC_STD_F2008, "STAT= or ERRMSG= at %L not supported", + &to->where)) + return false; + + gfc_resolve_sync_stat (&sync_stat); + if (!variable_check (from, 0, false)) return false; if (!allocatable_check (from, 0)) @@ -6530,13 +6566,15 @@ gfc_check_stat_sub (gfc_expr *name, gfc_expr *array, gfc_expr *status) bool -gfc_check_image_index (gfc_expr *coarray, gfc_expr *sub) +gfc_check_image_index (gfc_expr *coarray, gfc_expr *sub, + gfc_expr *team_or_team_number) { mpz_t nelems; if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to enable"); + gfc_fatal_error ("Coarrays disabled at %L, use %<-fcoarray=%> to enable", + gfc_current_intrinsic_where); return false; } @@ -6550,12 +6588,8 @@ gfc_check_image_index (gfc_expr *coarray, gfc_expr *sub) return false; } - if (sub->ts.type != BT_INTEGER) - { - gfc_error ("Type of %s argument of IMAGE_INDEX at %L shall be INTEGER", - gfc_current_intrinsic_arg[1]->name, &sub->where); - return false; - } + if (!type_check (sub, 1, BT_INTEGER)) + return false; if (gfc_array_size (sub, &nelems)) { @@ -6570,47 +6604,46 @@ gfc_check_image_index (gfc_expr *coarray, gfc_expr *sub) mpz_clear (nelems); } + if (team_or_team_number) + { + if (!type_check2 (team_or_team_number, 2, BT_DERIVED, BT_INTEGER) + || !scalar_check (team_or_team_number, 2)) + return false; + + /* Check team is of team_type. */ + if (team_or_team_number->ts.type == BT_DERIVED + && !team_type_check (team_or_team_number, 2)) + return false; + } + return true; } - bool -gfc_check_num_images (gfc_expr *distance, gfc_expr *failed) +gfc_check_num_images (gfc_expr *team_or_team_number) { if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to enable"); + gfc_fatal_error ("Coarrays disabled at %L, use %<-fcoarray=%> to enable", + gfc_current_intrinsic_where); return false; } - if (distance) - { - if (!type_check (distance, 0, BT_INTEGER)) - return false; - - if (!nonnegative_check ("DISTANCE", distance)) - return false; - - if (!scalar_check (distance, 0)) - return false; - - if (!gfc_notify_std (GFC_STD_F2018, "DISTANCE= argument to " - "NUM_IMAGES at %L", &distance->where)) - return false; - } + if (!team_or_team_number) + return true; - if (failed) - { - if (!type_check (failed, 1, BT_LOGICAL)) - return false; + if (!gfc_notify_std (GFC_STD_F2008, + "%<team%> or %<team_number%> argument to %qs at %L", + gfc_current_intrinsic, &team_or_team_number->where)) + return false; - if (!scalar_check (failed, 1)) - return false; + if (!type_check2 (team_or_team_number, 0, BT_DERIVED, BT_INTEGER) + || !scalar_check (team_or_team_number, 0)) + return false; - if (!gfc_notify_std (GFC_STD_F2018, "FAILED= argument to " - "NUM_IMAGES at %L", &failed->where)) - return false; - } + if (team_or_team_number->ts.type == BT_DERIVED + && !team_type_check (team_or_team_number, 0)) + return false; return true; } @@ -6621,98 +6654,126 @@ gfc_check_team_number (gfc_expr *team) { if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to enable"); + gfc_fatal_error ("Coarrays disabled at %L, use %<-fcoarray=%> to enable", + gfc_current_intrinsic_where); return false; } - if (team) - { - if (team->ts.type != BT_DERIVED - || team->ts.u.derived->from_intmod != INTMOD_ISO_FORTRAN_ENV - || team->ts.u.derived->intmod_sym_id != ISOFORTRAN_TEAM_TYPE) - { - gfc_error ("TEAM argument at %L to the intrinsic TEAM_NUMBER " - "shall be of type TEAM_TYPE", &team->where); - return false; - } - } - else - return true; - - return true; + return !team || (scalar_check (team, 0) && team_type_check (team, 0)); } bool -gfc_check_this_image (gfc_expr *coarray, gfc_expr *dim, gfc_expr *distance) +gfc_check_this_image (gfc_actual_arglist *args) { + gfc_expr *coarray, *dim, *team, *cur; + + coarray = dim = team = NULL; + if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to enable"); + gfc_fatal_error ("Coarrays disabled at %L, use %<-fcoarray=%> to enable", + gfc_current_intrinsic_where); return false; } - if (coarray == NULL && dim == NULL && distance == NULL) + /* Shortcut when no arguments are given. */ + if (!args->expr && !args->next->expr && !args->next->next->expr) return true; - if (dim != NULL && coarray == NULL) - { - gfc_error ("DIM argument without COARRAY argument not allowed for " - "THIS_IMAGE intrinsic at %L", &dim->where); - return false; - } + cur = args->expr; - if (distance && (coarray || dim)) + if (cur) { - gfc_error ("The DISTANCE argument may not be specified together with the " - "COARRAY or DIM argument in intrinsic at %L", - &distance->where); - return false; + gfc_push_suppress_errors (); + if (coarray_check (cur, 0)) + coarray = cur; + else if (scalar_check (cur, 2) && team_type_check (cur, 2)) + team = cur; + else + { + gfc_pop_suppress_errors (); + gfc_error ("First argument of %<this_image%> intrinsic at %L must be " + "a coarray " + "variable or an object of type %<team_type%> from the " + "intrinsic module " + "%<ISO_FORTRAN_ENV%>", + &cur->where); + return false; + } + gfc_pop_suppress_errors (); } - /* Assume that we have "this_image (distance)". */ - if (coarray && !gfc_is_coarray (coarray) && coarray->ts.type == BT_INTEGER) + cur = args->next->expr; + if (cur) { - if (dim) + gfc_push_suppress_errors (); + if (dim_check (cur, 1, true) && cur->corank == 0) + dim = cur; + else if (scalar_check (cur, 2) && team_type_check (cur, 2)) { - gfc_error ("Unexpected DIM argument with noncoarray argument at %L", - &coarray->where); + if (team) + { + gfc_pop_suppress_errors (); + goto team_type_error; + } + team = cur; + } + else + { + gfc_pop_suppress_errors (); + gfc_error ("Second argument of %<this_image%> intrinsic at %L must " + "be an %<INTEGER%> " + "typed scalar or an object of type %<team_type%> from the " + "intrinsic " + "module %<ISO_FORTRAN_ENV%>", + &cur->where); return false; } - distance = coarray; + gfc_pop_suppress_errors (); } - if (distance) + cur = args->next->next->expr; + if (cur) { - if (!type_check (distance, 2, BT_INTEGER)) - return false; - - if (!nonnegative_check ("DISTANCE", distance)) - return false; - - if (!scalar_check (distance, 2)) - return false; - - if (!gfc_notify_std (GFC_STD_F2018, "DISTANCE= argument to " - "THIS_IMAGE at %L", &distance->where)) + if (team_type_check (cur, 2) && scalar_check (cur, 2)) + { + if (team) + goto team_type_error; + team = cur; + } + else return false; + } - return true; + if (dim != NULL && coarray == NULL) + { + gfc_error ("%<dim%> argument without %<coarray%> argument not allowed " + "for %<this_image%> intrinsic at %L", + &dim->where); + return false; } - if (!coarray_check (coarray, 0)) + if (dim && !dim_corank_check (dim, coarray)) return false; - if (dim != NULL) - { - if (!dim_check (dim, 1, false)) - return false; - - if (!dim_corank_check (dim, coarray)) - return false; - } + if (team + && !gfc_notify_std (GFC_STD_F2018, + "%<team%> argument to %<this_image%> at %L", + &team->where)) + return false; + args->expr = coarray; + args->next->expr = dim; + args->next->next->expr = team; return true; + +team_type_error: + gfc_error ( + "At most one argument of type %<team_type%> from the intrinsic module " + "%<ISO_FORTRAN_ENV%> to %<this_image%> at %L allowed", + &cur->where); + return false; } /* Calculate the sizes for transfer, used by gfc_check_transfer and also @@ -6911,7 +6972,8 @@ gfc_check_ucobound (gfc_expr *coarray, gfc_expr *dim, gfc_expr *kind) { if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to enable"); + gfc_fatal_error ("Coarrays disabled at %L, use %<-fcoarray=%> to enable", + gfc_current_intrinsic_where); return false; } diff --git a/gcc/fortran/coarray.cc b/gcc/fortran/coarray.cc index 7058325..2f067f8 100644 --- a/gcc/fortran/coarray.cc +++ b/gcc/fortran/coarray.cc @@ -357,7 +357,9 @@ split_expr_at_caf_ref (gfc_expr *expr, gfc_namespace *ns, gcc_assert (expr->expr_type == EXPR_VARIABLE); caf_ts = &expr->symtree->n.sym->ts; - if (!expr->symtree->n.sym->attr.codimension) + if (!(expr->symtree->n.sym->ts.type == BT_CLASS + ? CLASS_DATA (expr->symtree->n.sym)->attr.codimension + : expr->symtree->n.sym->attr.codimension)) { /* The coarray is in some component. Find it. */ caf_ref = expr->ref; @@ -432,6 +434,9 @@ split_expr_at_caf_ref (gfc_expr *expr, gfc_namespace *ns, else if (base->ts.type == BT_CLASS) convert_coarray_class_to_derived_type (base, ns); + memset (&(*post_caf_ref_expr)->ts, 0, sizeof (gfc_typespec)); + gfc_resolve_expr (*post_caf_ref_expr); + (*post_caf_ref_expr)->corank = 0; gfc_expression_rank (*post_caf_ref_expr); if (for_send) gfc_expression_rank (expr); @@ -1130,8 +1135,8 @@ create_allocated_callback (gfc_expr *expr) // ADD_ARG (expr->symtree->name, base, BT_VOID, INTENT_IN); base = post_caf_ref_expr->symtree->n.sym; + base->attr.pointer = !base->attr.dimension; gfc_set_sym_referenced (base); - gfc_commit_symbol (base); *argptr = gfc_get_formal_arglist (); (*argptr)->sym = base; argptr = &(*argptr)->next; @@ -1420,7 +1425,8 @@ coindexed_expr_callback (gfc_expr **e, int *walk_subtrees, { case GFC_ISYM_ALLOCATED: if ((*e)->value.function.actual->expr - && gfc_is_coindexed ((*e)->value.function.actual->expr)) + && (gfc_is_coarray ((*e)->value.function.actual->expr) + || gfc_is_coindexed ((*e)->value.function.actual->expr))) { rewrite_caf_allocated (e); *walk_subtrees = 0; diff --git a/gcc/fortran/decl.cc b/gcc/fortran/decl.cc index feb454e..69acd2d 100644 --- a/gcc/fortran/decl.cc +++ b/gcc/fortran/decl.cc @@ -8459,6 +8459,7 @@ gfc_match_end (gfc_statement *st) { case COMP_ASSOCIATE: case COMP_BLOCK: + case COMP_CHANGE_TEAM: if (startswith (block_name, "block@")) block_name = NULL; break; @@ -8515,7 +8516,7 @@ gfc_match_end (gfc_statement *st) case COMP_SUBROUTINE: *st = ST_END_SUBROUTINE; if (!abbreviated_modproc_decl) - target = " subroutine"; + target = " subroutine"; else target = " procedure"; eos_ok = !contained_procedure (); @@ -8524,7 +8525,7 @@ gfc_match_end (gfc_statement *st) case COMP_FUNCTION: *st = ST_END_FUNCTION; if (!abbreviated_modproc_decl) - target = " function"; + target = " function"; else target = " procedure"; eos_ok = !contained_procedure (); @@ -8646,6 +8647,12 @@ gfc_match_end (gfc_statement *st) eos_ok = 0; break; + case COMP_CHANGE_TEAM: + *st = ST_END_TEAM; + target = " team"; + eos_ok = 0; + break; + default: gfc_error ("Unexpected END statement at %C"); goto cleanup; @@ -8683,14 +8690,19 @@ gfc_match_end (gfc_statement *st) else got_matching_end = true; + if (*st == ST_END_TEAM && gfc_match_end_team () == MATCH_ERROR) + /* Emit errors of stat and errmsg parsing now to finish the block and + continue analysis of compilation unit. */ + gfc_error_check (); + old_loc = gfc_current_locus; /* If we're at the end, make sure a block name wasn't required. */ if (gfc_match_eos () == MATCH_YES) { - if (*st != ST_ENDDO && *st != ST_ENDIF && *st != ST_END_SELECT && *st != ST_END_FORALL && *st != ST_END_WHERE && *st != ST_END_BLOCK - && *st != ST_END_ASSOCIATE && *st != ST_END_CRITICAL) + && *st != ST_END_ASSOCIATE && *st != ST_END_CRITICAL + && *st != ST_END_TEAM) return MATCH_YES; if (!block_name) diff --git a/gcc/fortran/dump-parse-tree.cc b/gcc/fortran/dump-parse-tree.cc index 9501bcc..dd920f3 100644 --- a/gcc/fortran/dump-parse-tree.cc +++ b/gcc/fortran/dump-parse-tree.cc @@ -2607,6 +2607,20 @@ show_omp_node (int level, gfc_code *c) fprintf (dumpfile, " (%s)", c->ext.omp_clauses->critical_name); } +static void +show_sync_stat (struct sync_stat *sync_stat) +{ + if (sync_stat->stat) + { + fputs (" stat=", dumpfile); + show_expr (sync_stat->stat); + } + if (sync_stat->errmsg) + { + fputs (" errmsg=", dumpfile); + show_expr (sync_stat->errmsg); + } +} /* Show a single code node and everything underneath it if necessary. */ @@ -2755,20 +2769,27 @@ show_code_node (int level, gfc_code *c) fputs ("FAIL IMAGE ", dumpfile); break; - case EXEC_CHANGE_TEAM: - fputs ("CHANGE TEAM", dumpfile); - break; - case EXEC_END_TEAM: fputs ("END TEAM", dumpfile); + show_sync_stat (&c->ext.sync_stat); break; case EXEC_FORM_TEAM: - fputs ("FORM TEAM", dumpfile); + fputs ("FORM TEAM ", dumpfile); + show_expr (c->expr1); + show_expr (c->expr2); + if (c->expr3) + { + fputs (" NEW_INDEX", dumpfile); + show_expr (c->expr3); + } + show_sync_stat (&c->ext.sync_stat); break; case EXEC_SYNC_TEAM: - fputs ("SYNC TEAM", dumpfile); + fputs ("SYNC TEAM ", dumpfile); + show_expr (c->expr1); + show_sync_stat (&c->ext.sync_stat); break; case EXEC_SYNC_ALL: @@ -2913,6 +2934,7 @@ show_code_node (int level, gfc_code *c) fputs ("ENDIF", dumpfile); break; + case EXEC_CHANGE_TEAM: case EXEC_BLOCK: { const char *blocktype, *sname = NULL; @@ -2928,17 +2950,23 @@ show_code_node (int level, gfc_code *c) if (fcn && fcn->expr_type == EXPR_FUNCTION) sname = fcn->value.function.actual->expr->symtree->n.sym->name; } + else if (c->op == EXEC_CHANGE_TEAM) + blocktype = "CHANGE TEAM"; else if (c->ext.block.assoc) blocktype = "ASSOCIATE"; else blocktype = "BLOCK"; show_indent (); fprintf (dumpfile, "%s ", blocktype); + if (c->op == EXEC_CHANGE_TEAM) + show_expr (c->expr1); for (alist = c->ext.block.assoc; alist; alist = alist->next) { fprintf (dumpfile, " %s = ", sname ? sname : alist->name); show_expr (alist->target); } + if (c->op == EXEC_CHANGE_TEAM) + show_sync_stat (&c->ext.block.sync_stat); ++show_level; ns = c->ext.block.ns; @@ -2948,8 +2976,13 @@ show_code_node (int level, gfc_code *c) gfc_current_ns = saved_ns; show_code (show_level, ns->code); --show_level; - show_indent (); - fprintf (dumpfile, "END %s ", blocktype); + if (c->op != EXEC_CHANGE_TEAM) + { + /* A CHANGE_TEAM is terminated by a END_TEAM, which have its own + stat and errmsg. Therefore, let it print itself. */ + show_indent (); + fprintf (dumpfile, "END %s ", blocktype); + } break; } @@ -3048,7 +3081,9 @@ show_code_node (int level, gfc_code *c) break; case EXEC_CRITICAL: - fputs ("CRITICAL\n", dumpfile); + fputs ("CRITICAL", dumpfile); + show_sync_stat (&c->ext.sync_stat); + fputc ('\n', dumpfile); show_code (level + 1, c->block->next); code_indent (level, 0); fputs ("END CRITICAL", dumpfile); diff --git a/gcc/fortran/expr.cc b/gcc/fortran/expr.cc index 0753667..07e9bac 100644 --- a/gcc/fortran/expr.cc +++ b/gcc/fortran/expr.cc @@ -3836,7 +3836,13 @@ gfc_check_assign (gfc_expr *lvalue, gfc_expr *rvalue, int conform, if (has_pointer && (ref == NULL || ref->next == NULL) && lvalue->symtree->n.sym->attr.data) return true; - else + /* Prevent the following error message for caf-single mode, because there + are no teams in single mode and the simplify returns a null then. */ + else if (!(flag_coarray == GFC_FCOARRAY_SINGLE + && rvalue->ts.type == BT_DERIVED + && rvalue->ts.u.derived->from_intmod == INTMOD_ISO_FORTRAN_ENV + && rvalue->ts.u.derived->intmod_sym_id + == ISOFORTRAN_TEAM_TYPE)) { gfc_error ("NULL appears on right-hand side in assignment at %L", &rvalue->where); diff --git a/gcc/fortran/frontend-passes.cc b/gcc/fortran/frontend-passes.cc index ef9c801..02a0a23 100644 --- a/gcc/fortran/frontend-passes.cc +++ b/gcc/fortran/frontend-passes.cc @@ -5340,6 +5340,7 @@ gfc_code_walker (gfc_code **c, walk_code_fn_t codefn, walk_expr_fn_t exprfn, { case EXEC_BLOCK: + case EXEC_CHANGE_TEAM: WALK_SUBCODE (co->ext.block.ns->code); if (co->ext.block.assoc) { diff --git a/gcc/fortran/gfortran.h b/gcc/fortran/gfortran.h index 5ef7037..46310a0 100644 --- a/gcc/fortran/gfortran.h +++ b/gcc/fortran/gfortran.h @@ -3162,6 +3162,11 @@ enum locality_type LOCALITY_NUM }; +struct sync_stat +{ + gfc_expr *stat, *errmsg; +}; + typedef struct gfc_code { gfc_exec_op op; @@ -3197,6 +3202,7 @@ typedef struct gfc_code gfc_omp_variant *omp_variants; bool omp_bool; int stop_code; + struct sync_stat sync_stat; struct { @@ -3207,6 +3213,7 @@ typedef struct gfc_code unsigned arr_spec_from_expr3:1; /* expr3 is not explicit */ unsigned expr3_not_explicit:1; + struct sync_stat sync_stat; } alloc; @@ -3215,6 +3222,7 @@ typedef struct gfc_code gfc_namespace *ns; gfc_association_list *assoc; gfc_case *case_list; + struct sync_stat sync_stat; } block; @@ -3985,6 +3993,7 @@ bool gfc_resolve_index (gfc_expr *, int); bool gfc_resolve_dim_arg (gfc_expr *); bool gfc_resolve_substring (gfc_ref *, bool *); void gfc_resolve_substring_charlen (gfc_expr *); +void gfc_resolve_sync_stat (struct sync_stat *); gfc_expr *gfc_expr_to_initialize (gfc_expr *); bool gfc_type_is_extensible (gfc_symbol *); bool gfc_resolve_intrinsic (gfc_symbol *, locus *); diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi index 9632161..841f613 100644 --- a/gcc/fortran/gfortran.texi +++ b/gcc/fortran/gfortran.texi @@ -4230,6 +4230,12 @@ future implementation of teams. It is about to change without further notice. * _gfortran_caf_co_min:: Collective minimum reduction * _gfortran_caf_co_sum:: Collective summing reduction * _gfortran_caf_co_reduce:: Generic collective reduction +* _gfortran_caf_form_team:: Team creation function +* _gfortran_caf_change_team:: Team activation function +* _gfortran_caf_end_team:: Team termination function +* _gfortran_caf_sync_team:: Synchronize all images of a given team +* _gfortran_caf_get_team:: Get the opaque handle of the specified team +* _gfortran_caf_team_number:: Get the unique id of the given team @end menu @@ -4294,21 +4300,23 @@ using the STOP and ERROR STOP statements; those use different library calls. @table @asis @item @emph{Synopsis}: -@code{int _gfortran_caf_this_image (int distance)} +@code{int _gfortran_caf_this_image (caf_team_t team)} @item @emph{Description}: -This function returns the current image number, which is a positive number. +Return the current image number in the @var{team}, or in the current team, if +no @var{team} is given. @item @emph{Arguments}: @multitable @columnfractions .15 .70 -@item @var{distance} @tab As specified for the @code{this_image} intrinsic -in TS18508. Shall be a nonnegative number. +@item @var{team} @tab intent(in), optional; The team this image's number is +requested for. If null, the image number in the current team is returned. @end multitable @item @emph{Notes}: -If the Fortran intrinsic @code{this_image} is invoked without an argument, which -is the only permitted form in Fortran 2008, GCC passes @code{0} as -first argument. +Available since Fortran 2008 without argument; Since Fortran 2018 with optional +team argument. Fortran 2008 uses 0 as argument for team, which is permissible, +because a team handle is always an opaque pointer, which as a special case can +be null here. @end table @@ -4318,25 +4326,29 @@ first argument. @table @asis @item @emph{Synopsis}: -@code{int _gfortran_caf_num_images(int distance, int failed)} +@code{int _gfortran_caf_num_images (caf_team_t team, int32_t *team_number)} @item @emph{Description}: -This function returns the number of images in the current team, if -@var{distance} is 0 or the number of images in the parent team at the specified -distance. If @var{failed} is -1, the function returns the number of all images at -the specified distance; if it is 0, the function returns the number of -nonfailed images, and if it is 1, it returns the number of failed images. +This function returns the number of images in the team given by @var{team} or +@var{team_number}, if either one is present. If both are null, then the number +of images in the current team is returned. @item @emph{Arguments}: @multitable @columnfractions .15 .70 -@item @var{distance} @tab the distance from this image to the ancestor. -Shall be positive. -@item @var{failed} @tab shall be -1, 0, or 1 +@item @var{team} @tab intent(in), optional; The team the number of images is +requested for. If null, the number of images in the current team is returned. +@item @var{team_number} @tab intent(in), optional; The team id for which the +number of teams is requested; if unset, then number of images in the current +team is returned. @end multitable @item @emph{Notes}: -This function follows TS18508. If the num_image intrinsic has no arguments, -then the compiler passes @code{distance=0} and @code{failed=-1} to the function. +When both argument are given, then it is caf-library dependent which argument +is examined first. Current implementations prioritize the @var{team} argument, +because it is easier to retrive the number of images from it. + +Fortran 2008 or later, with no arguments; Fortran 2018 or later with two +arguments. @end table @@ -4705,9 +4717,9 @@ structure. operation, i.e., zero on success and non-zero on error. When @code{NULL} and an error occurs, then an error message is printed and the program is terminated. @item @var{team} @tab intent(in) The opaque team handle as returned by -@code{FORM TEAM}. Unused at the moment. +@code{FORM TEAM}. @item @var{team_number} @tab intent(in) The number of the team this access is -to be part of. Unused at the moment. +to be part of. @end multitable @item @emph{Notes}: @@ -4806,9 +4818,9 @@ structure. operation, i.e., zero on success and non-zero on error. When @code{NULL} and an error occurs, then an error message is printed and the program is terminated. @item @var{team} @tab intent(in) The opaque team handle as returned by -@code{FORM TEAM}. Unused at the moment. +@code{FORM TEAM}. @item @var{team_number} @tab intent(in) The number of the team this access is -to be part of. Unused at the moment. +to be part of. @end multitable @item @emph{Notes}: @@ -4906,13 +4918,13 @@ the operation on the sending side, i.e., zero on success and non-zero on error. When @code{NULL} and an error occurs, then an error message is printed and the program is terminated. @item @var{dst_team} @tab intent(in) The opaque team handle as returned by -@code{FORM TEAM}. Unused at the moment. +@code{FORM TEAM}. @item @var{dst_team_number} @tab intent(in) The number of the team this access -is to be part of. Unused at the moment. +is to be part of. @item @var{src_team} @tab intent(in) The opaque team handle as returned by -@code{FORM TEAM}. Unused at the moment. +@code{FORM TEAM}. @item @var{src_team_number} @tab intent(in) The number of the team this access -is to be part of. Unused at the moment. +is to be part of. @end multitable @item @emph{Notes}: @@ -5656,6 +5668,180 @@ or an array descriptor. @end table + +@node _gfortran_caf_form_team +@subsection @code{_gfortran_caf_form_team} --- Team creation function +@cindex Coarray, _gfortran_caf_form_team + +@table @asis +@item @emph{Synopsis}: +@code{void _gfortran_caf_form_team (int team_id, caf_team_t *team, +int *new_index, int *stat, char *errmsg, size_t errmsg_len)} + +@item @emph{Description}: +Create a team. All images giving the same @var{team_id} in a call to +@code{FORM TEAM} will form a new team addressable by the opaque handle +@var{team} which is of type @code{team_type} from the intrinsic module +@ref{ISO_FORTRAN_ENV}. In the team the image gets the image index given by +@var{new_index} if present. If @var{new_index} is absent, then an +implementation specific index is assigned. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{team_id} @tab intent(in) A unique id for each team to form. Images +giving the same @var{team_id} in a call to @code{FORM TEAM} belong to the same +team. +@item @var{team} @tab intent(out) The opaque pointer to the newly formed team +@item @var{new_index} @tab intent(in) If non-null gives the unique index of +this image in the newly formed team. When no @var{new_index} is given, the +caf-library is free to choose a unique index. +@item @var{stat} @tab intent(out) Stores the status STAT= and may be NULL. +@item @var{errmsg} @tab intent(out) When an error occurs, this is set to +an error message; may be NULL. +@item @var{errmsg_len} @tab intent(in) the buffer size of errmsg +@end multitable + +@item @emph{Notes}: +The id given in @var{team_id} has to be unique in all subsequent calls to +@code{FORM TEAM} on the same image. That id is the same used in +@code{TEAM_NUMBER=} of coarray indexes, which motivates the uniqueness. + +The index given in @var{new_index} needs to be unique among all members of +team to create. Failing uniqueness may lead to misbehaviour, which depends +on the caf-library's implementation. The library is free to implement +checks for this, which imposes overhead and therefore may be avoided. +@end table + + + +@node _gfortran_caf_change_team +@subsection @code{_gfortran_caf_change_team} --- Team activation function +@cindex Coarray, _gfortran_caf_change_team + +@table @asis +@item @emph{Synopsis}: +@code{void _gfortran_caf_change_team (caf_team_t team, int *stat, char *errmsg, +size_t errmsg_len)} + +@item @emph{Description}: +Actives the team given by @var{team}, which must be formed but not active +yet. This routine starts a new epoch on the coarray memory pool. All +coarrays registered from now on, will be freeed once the team is terminated. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{team} @tab intent(inout) The opaque pointer to an already formed +team +@item @var{stat} @tab intent(out) Stores the status STAT= and may be NULL. +@item @var{errmsg} @tab intent(out) When an error occurs, this is set to +an error message; may be NULL. +@item @var{errmsg_len} @tab intent(in) the buffer size of errmsg +@end multitable + +@item @emph{Notes}: +When an error occurs and @var{stat} is non-null, it will be set. Nevertheless +will the Fortran program continue with the first statement in the change team +block. +@end table + + + +@node _gfortran_caf_end_team +@subsection @code{_gfortran_caf_end_team} --- Team termination function +@cindex Coarray, _gfortran_caf_end_team + +@table @asis +@item @emph{Synopsis}: +@code{void _gfortran_caf_end_team (int *stat, char *errmsg, size_t errmsg_len)} + +@item @emph{Description}: +Terminates the last team changed to. The coarray memory epoch is +terminated and all coarrays allocated since the execution of @code{CHANGE TEAM} +are freeed. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{stat} @tab intent(out) Stores the status STAT= and may be NULL. +@item @var{errmsg} @tab intent(out) When an error occurs, this is set to +an error message; may be NULL. +@item @var{errmsg_len} @tab intent(in) the buffer size of errmsg +@end multitable +@end table + + + +@node _gfortran_caf_sync_team +@subsection @code{_gfortran_caf_sync_team} --- Synchronize all images of a given team +@cindex Coarray, _gfortran_caf_sync_team + +@table @asis +@item @emph{Synopsis}: +@code{void _gfortran_caf_sync_team (caf_team_t team, int *stat, char *errmsg, +size_t errmsg_len)} + +@item @emph{Description}: +Blocks execution of the image calling @code{SYNC TEAM} until all images of the +team given by @var{team} have joined the synchronisation call. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{team} @tab intent(in) The opaque pointer to an active team +@item @var{stat} @tab intent(out) Stores the status STAT= and may be NULL. +@item @var{errmsg} @tab intent(out) When an error occurs, this is set to +an error message; may be NULL. +@item @var{errmsg_len} @tab intent(in) the buffer size of errmsg +@end multitable +@end table + + + +@node _gfortran_caf_get_team +@subsection @code{_gfortran_caf_get_team} --- Get the opaque handle of the specified team +@cindex Coarray, _gfortran_caf_get_team + +@table @asis +@item @emph{Synopsis}: +@code{caf_team_t _gfortran_caf_get_team (int32_t *level)} + +@item @emph{Description}: +Get the current team, when @var{level} is null, or the team specified by +@var{level} set to @code{INITIAL_TEAM}, @code{PARENT_TEAM} or +@code{CURRENT_TEAM} from the @code{ISO_FORTRAN_ENV} intrinsic module. When +being on the @code{INITIAL_TEAM} and requesting its @code{PARENT_TEAM}, then +the initial team is returned. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{level} @tab intent(in) If set to one of the levels specified in +the @code{ISO_FORTRAN_ENV} module, the function returns the handle of the given +team. Values different from the allowed ones lead to a runtime error. +@end multitable +@end table + + + +@node _gfortran_caf_team_number +@subsection @code{_gfortran_caf_team_number} --- Get the unique id of the given team +@cindex Coarray, _gfortran_caf_team_number + +@table @asis +@item @emph{Synopsis}: +@code{int _gfortran_caf_team_number (caf_team_t team)} + +@item @emph{Description}: +The team id given when forming the team @ref{_gfortran_caf_form_team} of the +team specified by @var{team}, if given, or of the current team, if @var{team} +is absent. It is a runtime error to specify a non-existing team. +The team has to be formed, i.e., it is not necessary that it is changed +into to get the team number. The initial team has the team number @code{-1}. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{team} @tab intent(in) The team for which the team id is desired. +@end multitable +@end table + + @c Intrinsic Procedures @c --------------------------------------------------------------------- diff --git a/gcc/fortran/intrinsic.cc b/gcc/fortran/intrinsic.cc index d2ce74f..2eba209 100644 --- a/gcc/fortran/intrinsic.cc +++ b/gcc/fortran/intrinsic.cc @@ -1395,26 +1395,24 @@ add_functions (void) { /* Argument names. These are used as argument keywords and so need to match the documentation. Please keep this list in sorted order. */ - const char - *a = "a", *a1 = "a1", *a2 = "a2", *ar = "array", *b = "b", - *bck = "back", *bd = "boundary", *c = "c", *c_ptr_1 = "c_ptr_1", - *c_ptr_2 = "c_ptr_2", *ca = "coarray", *com = "command", - *dist = "distance", *dm = "dim", *f = "field", *failed="failed", - *fs = "fsource", *han = "handler", *i = "i", - *idy = "identity", *image = "image", *j = "j", *kind = "kind", - *l = "l", *ln = "len", *level = "level", *m = "matrix", *ma = "matrix_a", - *mb = "matrix_b", *md = "mode", *mo = "mold", *msk = "mask", - *n = "n", *ncopies= "ncopies", *nm = "name", *num = "number", - *op = "operation", *ord = "order", *odd = "ordered", *p = "p", - *p1 = "path1", *p2 = "path2", *pad = "pad", *pid = "pid", *pos = "pos", - *pt = "pointer", *r = "r", *rd = "round", - *s = "s", *set = "set", *sh = "shift", *shp = "shape", - *sig = "sig", *src = "source", *ssg = "substring", - *sta = "string_a", *stb = "string_b", *stg = "string", - *sub = "sub", *sz = "size", *tg = "target", *team = "team", *tm = "time", - *ts = "tsource", *ut = "unit", *v = "vector", *va = "vector_a", - *vb = "vector_b", *vl = "values", *val = "value", *x = "x", *y = "y", - *z = "z"; + const char *a + = "a", + *a1 = "a1", *a2 = "a2", *ar = "array", *b = "b", *bck = "back", + *bd = "boundary", *c = "c", *c_ptr_1 = "c_ptr_1", *c_ptr_2 = "c_ptr_2", + *ca = "coarray", *com = "command", *dm = "dim", *f = "field", + *fs = "fsource", *han = "handler", *i = "i", *idy = "identity", + *image = "image", *j = "j", *kind = "kind", *l = "l", *ln = "len", + *level = "level", *m = "matrix", *ma = "matrix_a", *mb = "matrix_b", + *md = "mode", *mo = "mold", *msk = "mask", *n = "n", *ncopies = "ncopies", + *nm = "name", *num = "number", *op = "operation", *ord = "order", + *odd = "ordered", *p = "p", *p1 = "path1", *p2 = "path2", *pad = "pad", + *pid = "pid", *pos = "pos", *pt = "pointer", *r = "r", *rd = "round", + *s = "s", *set = "set", *sh = "shift", *shp = "shape", *sig = "sig", + *src = "source", *ssg = "substring", *sta = "string_a", *stb = "string_b", + *stg = "string", *sub = "sub", *sz = "size", *tg = "target", *team = "team", + *team_or_team_number = "team/team_number", *tm = "time", *ts = "tsource", + *ut = "unit", *v = "vector", *va = "vector_a", *vb = "vector_b", + *vl = "values", *val = "value", *x = "x", *y = "y", *z = "z"; int di, dr, dd, dl, dc, dz, ii; @@ -2112,10 +2110,10 @@ add_functions (void) make_generic ("getpid", GFC_ISYM_GETPID, GFC_STD_GNU); - add_sym_1 ("get_team", GFC_ISYM_GET_TEAM, CLASS_TRANSFORMATIONAL, - ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2018, - gfc_check_get_team, NULL, gfc_resolve_get_team, - level, BT_INTEGER, di, OPTIONAL); + add_sym_1 ("get_team", GFC_ISYM_GET_TEAM, CLASS_TRANSFORMATIONAL, ACTUAL_NO, + BT_DERIVED, di, GFC_STD_F2018, gfc_check_get_team, + gfc_simplify_get_team, gfc_resolve_get_team, level, BT_INTEGER, di, + OPTIONAL); add_sym_0 ("getuid", GFC_ISYM_GETUID, CLASS_IMPURE, ACTUAL_NO, BT_INTEGER, di, GFC_STD_GNU, NULL, NULL, gfc_resolve_getuid); @@ -2265,9 +2263,11 @@ add_functions (void) make_generic ("ierrno", GFC_ISYM_IERRNO, GFC_STD_GNU); - add_sym_2 ("image_index", GFC_ISYM_IMAGE_INDEX, CLASS_INQUIRY, ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2008, - gfc_check_image_index, gfc_simplify_image_index, gfc_resolve_image_index, - ca, BT_REAL, dr, REQUIRED, sub, BT_INTEGER, ii, REQUIRED); + add_sym_3 ("image_index", GFC_ISYM_IMAGE_INDEX, CLASS_TRANSFORMATIONAL, + ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2008, gfc_check_image_index, + gfc_simplify_image_index, gfc_resolve_image_index, ca, BT_REAL, dr, + REQUIRED, sub, BT_INTEGER, ii, REQUIRED, team_or_team_number, + BT_VOID, di, OPTIONAL); add_sym_2 ("image_status", GFC_ISYM_IMAGE_STATUS, CLASS_ELEMENTAL, ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2018, gfc_check_image_status, @@ -2848,11 +2848,10 @@ add_functions (void) make_generic ("null", GFC_ISYM_NULL, GFC_STD_F95); - add_sym_2 ("num_images", GFC_ISYM_NUM_IMAGES, CLASS_TRANSFORMATIONAL, - ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2008, - gfc_check_num_images, gfc_simplify_num_images, NULL, - dist, BT_INTEGER, di, OPTIONAL, - failed, BT_LOGICAL, dl, OPTIONAL); + add_sym_1 ("num_images", GFC_ISYM_NUM_IMAGES, CLASS_TRANSFORMATIONAL, + ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2008, gfc_check_num_images, + gfc_simplify_num_images, NULL, team_or_team_number, BT_VOID, di, + OPTIONAL); add_sym_3 ("out_of_range", GFC_ISYM_OUT_OF_RANGE, CLASS_ELEMENTAL, ACTUAL_NO, BT_LOGICAL, dl, GFC_STD_F2018, @@ -3338,10 +3337,11 @@ add_functions (void) gfc_check_team_number, NULL, gfc_resolve_team_number, team, BT_DERIVED, di, OPTIONAL); - add_sym_3 ("this_image", GFC_ISYM_THIS_IMAGE, CLASS_INQUIRY, ACTUAL_NO, BT_INTEGER, di, GFC_STD_F2008, - gfc_check_this_image, gfc_simplify_this_image, gfc_resolve_this_image, - ca, BT_REAL, dr, OPTIONAL, dm, BT_INTEGER, ii, OPTIONAL, - dist, BT_INTEGER, di, OPTIONAL); + add_sym_3red ("this_image", GFC_ISYM_THIS_IMAGE, CLASS_INQUIRY, ACTUAL_NO, + BT_INTEGER, di, GFC_STD_F2008, gfc_check_this_image, + gfc_simplify_this_image, gfc_resolve_this_image, ca, BT_REAL, + dr, OPTIONAL, dm, BT_INTEGER, ii, OPTIONAL, team, BT_DERIVED, + di, OPTIONAL); add_sym_0 ("time", GFC_ISYM_TIME, CLASS_IMPURE, ACTUAL_NO, BT_INTEGER, di, GFC_STD_GNU, NULL, NULL, gfc_resolve_time); @@ -3835,11 +3835,11 @@ add_subroutines (void) st, BT_INTEGER, di, OPTIONAL, INTENT_OUT, trim_name, BT_LOGICAL, dl, OPTIONAL, INTENT_IN); - add_sym_2s ("move_alloc", GFC_ISYM_MOVE_ALLOC, CLASS_PURE, BT_UNKNOWN, 0, - GFC_STD_F2003, - gfc_check_move_alloc, NULL, NULL, - f, BT_UNKNOWN, 0, REQUIRED, INTENT_INOUT, - t, BT_UNKNOWN, 0, REQUIRED, INTENT_OUT); + add_sym_4s ("move_alloc", GFC_ISYM_MOVE_ALLOC, CLASS_PURE, BT_UNKNOWN, 0, + GFC_STD_F2003, gfc_check_move_alloc, NULL, NULL, f, BT_UNKNOWN, 0, + REQUIRED, INTENT_INOUT, t, BT_UNKNOWN, 0, REQUIRED, INTENT_OUT, + stat, BT_INTEGER, di, OPTIONAL, INTENT_OUT, errmsg, BT_CHARACTER, + dc, OPTIONAL, INTENT_INOUT); add_sym_5s ("mvbits", GFC_ISYM_MVBITS, CLASS_ELEMENTAL, BT_UNKNOWN, 0, GFC_STD_F95, gfc_check_mvbits, NULL, gfc_resolve_mvbits, @@ -4956,6 +4956,9 @@ check_specific (gfc_intrinsic_sym *specific, gfc_expr *expr, int error_flag) else if (specific->check.f3red == gfc_check_transf_bit_intrins) /* Same as for PRODUCT and SUM, but different checks. */ t = gfc_check_transf_bit_intrins (*ap); + else if (specific->check.f3red == gfc_check_this_image) + /* May need to reassign arguments. */ + t = gfc_check_this_image (*ap); else { if (specific->check.f1 == NULL) diff --git a/gcc/fortran/intrinsic.h b/gcc/fortran/intrinsic.h index fec1c24..767792c 100644 --- a/gcc/fortran/intrinsic.h +++ b/gcc/fortran/intrinsic.h @@ -132,7 +132,7 @@ bool gfc_check_nearest (gfc_expr *, gfc_expr *); bool gfc_check_new_line (gfc_expr *); bool gfc_check_norm2 (gfc_expr *, gfc_expr *); bool gfc_check_null (gfc_expr *); -bool gfc_check_num_images (gfc_expr *, gfc_expr *); +bool gfc_check_num_images (gfc_expr *); bool gfc_check_out_of_range (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_pack (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_parity (gfc_expr *, gfc_expr *); @@ -208,7 +208,8 @@ bool gfc_check_fstat_sub (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_gerror (gfc_expr *); bool gfc_check_getarg (gfc_expr *, gfc_expr *); bool gfc_check_getlog (gfc_expr *); -bool gfc_check_move_alloc (gfc_expr *, gfc_expr *); +bool gfc_check_move_alloc (gfc_expr *, gfc_expr *, gfc_expr *stat, + gfc_expr *errmsg); bool gfc_check_mvbits (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_random_init (gfc_expr *, gfc_expr *); @@ -221,7 +222,7 @@ bool gfc_check_fseek_sub (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_ftell_sub (gfc_expr *, gfc_expr *); bool gfc_check_getcwd_sub (gfc_expr *, gfc_expr *); bool gfc_check_hostnm_sub (gfc_expr *, gfc_expr *); -bool gfc_check_image_index (gfc_expr *, gfc_expr *); +bool gfc_check_image_index (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_itime_idate (gfc_expr *); bool gfc_check_kill_sub (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_ltime_gmtime (gfc_expr *, gfc_expr *); @@ -233,7 +234,7 @@ bool gfc_check_signal_sub (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_sleep_sub (gfc_expr *); bool gfc_check_stat_sub (gfc_expr *, gfc_expr *, gfc_expr *); bool gfc_check_system_sub (gfc_expr *, gfc_expr *); -bool gfc_check_this_image (gfc_expr *, gfc_expr *, gfc_expr *); +bool gfc_check_this_image (gfc_actual_arglist *); bool gfc_check_ttynam_sub (gfc_expr *, gfc_expr *); bool gfc_check_umask_sub (gfc_expr *, gfc_expr *); bool gfc_check_unlink_sub (gfc_expr *, gfc_expr *); @@ -327,7 +328,7 @@ gfc_expr *gfc_simplify_ibits (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_ibset (gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_ichar (gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_ieor (gfc_expr *, gfc_expr *); -gfc_expr *gfc_simplify_image_index (gfc_expr *, gfc_expr *); +gfc_expr *gfc_simplify_image_index (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_image_status (gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_index (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_int (gfc_expr *, gfc_expr *); @@ -382,7 +383,7 @@ gfc_expr *gfc_simplify_new_line (gfc_expr *); gfc_expr *gfc_simplify_nint (gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_norm2 (gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_null (gfc_expr *); -gfc_expr *gfc_simplify_num_images (gfc_expr *, gfc_expr *); +gfc_expr *gfc_simplify_num_images (gfc_expr *); gfc_expr *gfc_simplify_idnint (gfc_expr *); gfc_expr *gfc_simplify_not (gfc_expr *); gfc_expr *gfc_simplify_or (gfc_expr *, gfc_expr *); @@ -478,6 +479,7 @@ void gfc_resolve_bessel_n2 (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *a); void gfc_resolve_btest (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_c_loc (gfc_expr *, gfc_expr *); void gfc_resolve_c_funloc (gfc_expr *, gfc_expr *); +void gfc_resolve_get_team (gfc_expr *, gfc_expr *); void gfc_resolve_ceiling (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_char (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_chdir (gfc_expr *, gfc_expr *); @@ -522,7 +524,6 @@ void gfc_resolve_gamma (gfc_expr *, gfc_expr *); void gfc_resolve_getcwd (gfc_expr *, gfc_expr *); void gfc_resolve_getgid (gfc_expr *); void gfc_resolve_getpid (gfc_expr *); -void gfc_resolve_get_team (gfc_expr *, gfc_expr *); void gfc_resolve_getuid (gfc_expr *); void gfc_resolve_hostnm (gfc_expr *, gfc_expr *); void gfc_resolve_hypot (gfc_expr *, gfc_expr *, gfc_expr *); @@ -530,7 +531,7 @@ void gfc_resolve_iand (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_ibclr (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_ibits (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_ibset (gfc_expr *, gfc_expr *, gfc_expr *); -void gfc_resolve_image_index (gfc_expr *, gfc_expr *, gfc_expr *); +void gfc_resolve_image_index (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_image_status (gfc_expr *, gfc_expr *, gfc_expr *); void gfc_resolve_index_func (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi index 8c160e5..3a105bc 100644 --- a/gcc/fortran/intrinsic.texi +++ b/gcc/fortran/intrinsic.texi @@ -170,6 +170,7 @@ Some basic guidelines for editing this document: * @code{GETGID}: GETGID, Group ID function * @code{GETLOG}: GETLOG, Get login name * @code{GETPID}: GETPID, Process ID function +* @code{GET_TEAM}: GET_TEAM, Get the handle of a team * @code{GETUID}: GETUID, User ID function * @code{GMTIME}: GMTIME, Convert time to GMT info * @code{HOSTNM}: HOSTNM, Get system host name @@ -311,6 +312,7 @@ Some basic guidelines for editing this document: * @code{TAN}: TAN, Tangent function * @code{TAND}: TAND, Tangent function, degrees * @code{TANH}: TANH, Hyperbolic tangent function +* @code{TEAM_NUMBER}: TEAM_NUMBER, Retrieve team id of given team * @code{THIS_IMAGE}: THIS_IMAGE, Cosubscript index of this image * @code{TIME}: TIME, Time function * @code{TIME8}: TIME8, Time function (64-bit) @@ -7336,6 +7338,59 @@ GNU extension +@node GET_TEAM +@section @code{GET_TEAM} --- Get the handle of a team +@fnindex GET_TEAM +@cindex coarray, @code{GET_TEAM} +@cindex images, get a handle to a team + +@table @asis +@item @emph{Synopsis}: +@code{RESULT = GET_TEAM([LEVEL])} + +@item @emph{Description}: +Returns the handle of the current team, if @var{LEVEL} is not given. Or the +team specified by @var{LEVEL}, where @var{LEVEL} is one of the constants +@code{INITIAL_TEAM}, @code{PARENT_TEAM} or @code{CURRENT_TEAM} from the +intrinsic module @code{ISO_FORTRAN_ENV}. Calling the function with +@code{PARENT_TEAM} while being on the initial team, returns a handle to the +initial team. This ensures that always a valid team is returned, given that +team handles can neither be checked for validity nor compared with each other +or null. + +@item @emph{Class}: +Transformational function + +@item @emph{Return value}: +An opaque handle of @code{TEAM_TYPE} from the intrinsic module +@code{ISO_FORTRAN_ENV}. + +@item @emph{Example}: +@smallexample +program info + use, intrinsic :: iso_fortran_env + type(team_type) :: init, curr, par, nt + + init = get_team() + curr = get_team(current_team) ! init equals curr here + form team(1, nt) + change team(nt) + curr = get_team() ! or get_team(current_team) + par = get_team(parent_team) ! par equals init here + end team +end program info +@end smallexample + +@item @emph{Standard}: +Fortran 2018 or later + +@item @emph{See also}: +@ref{THIS_IMAGE}, @* +@ref{ISO_FORTRAN_ENV} +@end table + + + @node GETUID @section @code{GETUID} --- User ID function @fnindex GETUID @@ -11372,47 +11427,48 @@ Fortran 95 and later @table @asis @item @emph{Synopsis}: -@code{RESULT = NUM_IMAGES(DISTANCE, FAILED)} +@multitable @columnfractions .80 +@item @code{RESULT = NUM_IMAGES([TEAM])} +@item @code{RESULT = NUM_IMAGES(TEAM_NUMBER)} +@end multitable @item @emph{Description}: -Returns the number of images. +Returns the number of images in the current team or the given team. @item @emph{Class}: Transformational function @item @emph{Arguments}: @multitable @columnfractions .15 .70 -@item @var{DISTANCE} @tab (optional, intent(in)) Nonnegative scalar integer -@item @var{FAILED} @tab (optional, intent(in)) Scalar logical expression +@item @var{TEAM} @tab (optional, intent(in)) If present, return the number of +images in the given team; if absent, return the number of images in the +current team. +@item @var{TEAM_NUMBER} @tab (intent(in)) The number as given in the +@code{FORM TEAM} statement. @end multitable @item @emph{Return value}: -Scalar default-kind integer. If @var{DISTANCE} is not present or has value 0, -the number of images in the current team is returned. For values smaller or -equal distance to the initial team, it returns the number of images index -on the ancestor team that has a distance of @var{DISTANCE} from the invoking -team. If @var{DISTANCE} is larger than the distance to the initial team, the -number of images of the initial team is returned. If @var{FAILED} is not present -the total number of images is returned; if it has the value @code{.TRUE.}, -the number of failed images is returned, otherwise, the number of images that -do have not the failed status. +Scalar default-kind integer. Can be called without any arguments or a team +type argument or a team_number argument. @item @emph{Example}: @smallexample +use, intrinsic :: iso_fortran_env INTEGER :: value[*] INTEGER :: i -value = THIS_IMAGE() -SYNC ALL -IF (THIS_IMAGE() == 1) THEN - DO i = 1, NUM_IMAGES() - WRITE(*,'(2(a,i0))') 'value[', i, '] is ', value[i] - END DO -END IF +type(team_type) :: t + +! When running with 4 images +print *, num_images() ! 4 + +form team (mod(this_image(), 2), t) +print *, num_images(t) ! 2 +print *, num_images(-1) ! 4 @end smallexample @item @emph{Standard}: -Fortran 2008 and later. With @var{DISTANCE} or @var{FAILED} argument, -Technical Specification (TS) 18508 or later +Fortran 2008 and later. With @var{TEAM} or @var{TEAM_NUMBER} argument, +Fortran 2018 and later. @item @emph{See also}: @ref{THIS_IMAGE}, @* @@ -14467,6 +14523,54 @@ Fortran 77 and later, for a complex argument Fortran 2008 or later +@node TEAM_NUMBER +@section @code{TEAM_NUMBER} --- Retrieve team id of given team +@fnindex TEAM_NUMBER +@cindex coarray, @code{TEAM_NUMBER} +@cindex teams, index of given team + +@table @asis +@item @emph{Synopsis}: +@item @code{RESULT = TEAM_NUMBER([TEAM])} + +@item @emph{Description}: +Returns the team id for the given @var{TEAM} as assigned by @code{FORM TEAM}. +If @var{TEAM} is absent, returns the team number of the current team. + +@item @emph{Class}: +Transformational function + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{TEAM} @tab (optional, intent(in)) The handle of the team for which +the number, aka id, is desired. +@end multitable + +@item @emph{Return value}: +Default integer. The id as given in a call @code{FORM TEAM}. Applying +@code{TEAM_NUMBER} to the initial team will result in @code{-1} to be returned. +Returns the id of the current team, if @var{TEAM} is null. + +@item @emph{Example}: +@smallexample +use, intrinsic :: iso_fortran_env +type(team_type) :: t + +print *, team_number() ! -1 +form team (99, t) +print *, team_number(t) ! 99 +@end smallexample + +@item @emph{Standard}: +Fortran 2018 and later. + +@item @emph{See also}: +@ref{GET_TEAM}, @* +@ref{TEAM_NUMBER} +@end table + + + @node THIS_IMAGE @section @code{THIS_IMAGE} --- Function that returns the cosubscript index of this image @fnindex THIS_IMAGE @@ -14476,9 +14580,8 @@ Fortran 77 and later, for a complex argument Fortran 2008 or later @table @asis @item @emph{Synopsis}: @multitable @columnfractions .80 -@item @code{RESULT = THIS_IMAGE()} -@item @code{RESULT = THIS_IMAGE(DISTANCE)} -@item @code{RESULT = THIS_IMAGE(COARRAY [, DIM])} +@item @code{RESULT = THIS_IMAGE([TEAM])} +@item @code{RESULT = THIS_IMAGE(COARRAY [, DIM][, TEAM])} @end multitable @item @emph{Description}: @@ -14489,8 +14592,8 @@ Transformational function @item @emph{Arguments}: @multitable @columnfractions .15 .70 -@item @var{DISTANCE} @tab (optional, intent(in)) Nonnegative scalar integer -(not permitted together with @var{COARRAY}). +@item @var{TEAM} @tab (optional, intent(in)) The team for which the index of +this image is desired. The current team is used, when no team is given. @item @var{COARRAY} @tab Coarray of any type (optional; if @var{DIM} present, required). @item @var{DIM} @tab default integer scalar (optional). If present, @@ -14499,16 +14602,16 @@ present, required). @item @emph{Return value}: Default integer. If @var{COARRAY} is not present, it is scalar; if -@var{DISTANCE} is not present or has value 0, its value is the image index on -the invoking image for the current team, for values smaller or equal -distance to the initial team, it returns the image index on the ancestor team -that has a distance of @var{DISTANCE} from the invoking team. If -@var{DISTANCE} is larger than the distance to the initial team, the image -index of the initial team is returned. Otherwise when the @var{COARRAY} is +@var{TEAM} is not present, its value is the image index on the invoking image +for the current team; if @var{TEAM} is present, returns the image index of +the invoking image as given to the @code{FORM TEAM (..., NEW_INDEX=..)} call, +or a implementation specific unique number, when @code{NEW_INDEX=} was absent +from @code{FORM TEAM}. Otherwise when the @var{COARRAY} is present, if @var{DIM} is not present, a rank-1 array with corank elements is returned, containing the cosubscripts for @var{COARRAY} specifying the invoking -image. If @var{DIM} is present, a scalar is returned, with the value of -the @var{DIM} element of @code{THIS_IMAGE(COARRAY)}. +image (in the team when @var{TEAM} is present). If @var{DIM} is present, a +scalar is returned, with the value of the @var{DIM} element of +@code{THIS_IMAGE(COARRAY)}. @item @emph{Example}: @smallexample @@ -14523,13 +14626,12 @@ IF (THIS_IMAGE() == 1) THEN END IF ! Check whether the current image is the initial image -IF (THIS_IMAGE(HUGE(1)) /= THIS_IMAGE()) +IF (THIS_IMAGE(GET_TEAM(INITIAL_TEAM)) /= THIS_IMAGE()) error stop "something is rotten here" @end smallexample @item @emph{Standard}: -Fortran 2008 and later. With @var{DISTANCE} argument, -Technical Specification (TS) 18508 or later +Fortran 2008 and later. With @var{TEAM} argument, Fortran 2018 or later @item @emph{See also}: @ref{NUM_IMAGES}, @* @@ -15354,12 +15456,18 @@ parameters of the @code{CHARACTER} type. (Fortran 2008 or later.) @item @code{CHARACTER_STORAGE_SIZE}: Size in bits of the character storage unit. +@item @code{CURRENT_TEAM}: +The argument to @ref{GET_TEAM} to retrieve a handle of the current team. + @item @code{ERROR_UNIT}: Identifies the preconnected unit used for error reporting. @item @code{FILE_STORAGE_SIZE}: Size in bits of the file-storage unit. +@item @code{INTIAL_TEAM}: +Argument to @ref{GET_TEAM} to retrieve a handle of the initial team. + @item @code{INPUT_UNIT}: Identifies the preconnected unit identified by the asterisk (@code{*}) in @code{READ} statement. @@ -15397,6 +15505,9 @@ parameters of the @code{LOGICAL} type. (Fortran 2008 or later.) Identifies the preconnected unit identified by the asterisk (@code{*}) in @code{WRITE} statement. +@item @code{PARENT_TEAM}: +Argument to @ref{GET_TEAM} to retrieve a handle to the parent team. + @item @code{REAL32}, @code{REAL64}, @code{REAL128}: Kind type parameters to specify a REAL type with a storage size of 32, 64, and 128 bits. It is negative if a target platform @@ -15445,6 +15556,10 @@ Derived type with private components to be use with the @code{LOCK} and @code{UNLOCK} statement. A variable of its type has to be always declared as coarray and may not appear in a variable-definition context. (Fortran 2008 or later.) +@item @code{TEAM_TYPE}: +An opaque type for handling teams. Note that a variable of type +@code{TEAM_TYPE} is not comparable with other variables of the same or other +types nor with null. @end table The module also provides the following intrinsic procedures: diff --git a/gcc/fortran/iresolve.cc b/gcc/fortran/iresolve.cc index 858ffb1..6930e2c 100644 --- a/gcc/fortran/iresolve.cc +++ b/gcc/fortran/iresolve.cc @@ -3209,17 +3209,28 @@ gfc_resolve_get_team (gfc_expr *f, gfc_expr *level ATTRIBUTE_UNUSED) { static char get_team[] = "_gfortran_caf_get_team"; f->rank = 0; - f->ts.type = BT_INTEGER; - f->ts.kind = gfc_default_integer_kind; + f->ts.type = BT_DERIVED; + gfc_find_symbol ("team_type", gfc_current_ns, 1, &f->ts.u.derived); + if (!f->ts.u.derived + || f->ts.u.derived->from_intmod != INTMOD_ISO_FORTRAN_ENV) + { + gfc_error ( + "GET_TEAM at %L needs USE of the intrinsic module ISO_FORTRAN_ENV " + "to define its result type TEAM_TYPE", + &f->where); + f->ts.type = BT_UNKNOWN; + } f->value.function.name = get_team; -} + /* No requirements to resolve for level argument now. */ +} /* Resolve image_index (...). */ void gfc_resolve_image_index (gfc_expr *f, gfc_expr *array ATTRIBUTE_UNUSED, - gfc_expr *sub ATTRIBUTE_UNUSED) + gfc_expr *sub ATTRIBUTE_UNUSED, + gfc_expr *team_or_team_number ATTRIBUTE_UNUSED) { static char image_index[] = "__image_index"; f->ts.type = BT_INTEGER; @@ -3248,31 +3259,46 @@ gfc_resolve_stopped_images (gfc_expr *f, gfc_expr *team ATTRIBUTE_UNUSED, /* Resolve team_number (team). */ void -gfc_resolve_team_number (gfc_expr *f, gfc_expr *team ATTRIBUTE_UNUSED) +gfc_resolve_team_number (gfc_expr *f, gfc_expr *team) { static char team_number[] = "_gfortran_caf_team_number"; f->rank = 0; f->ts.type = BT_INTEGER; f->ts.kind = gfc_default_integer_kind; f->value.function.name = team_number; -} + if (team) + gfc_resolve_expr (team); +} void -gfc_resolve_this_image (gfc_expr *f, gfc_expr *array, gfc_expr *dim, - gfc_expr *distance ATTRIBUTE_UNUSED) +gfc_resolve_this_image (gfc_expr *f, gfc_expr *coarray, gfc_expr *dim, + gfc_expr *team) { static char this_image[] = "__this_image"; - if (array && gfc_is_coarray (array)) - resolve_bound (f, array, dim, NULL, "__this_image", true); + if (coarray && dim) + resolve_bound (f, coarray, dim, NULL, this_image, true); + else if (coarray) + { + f->ts.type = BT_INTEGER; + f->ts.kind = gfc_default_integer_kind; + f->value.function.name = this_image; + if (f->shape && f->rank != 1) + gfc_free_shape (&f->shape, f->rank); + f->rank = 1; + f->shape = gfc_get_shape (1); + mpz_init_set_ui (f->shape[0], coarray->corank); + } else { f->ts.type = BT_INTEGER; f->ts.kind = gfc_default_integer_kind; f->value.function.name = this_image; } -} + if (team) + gfc_resolve_expr (team); +} void gfc_resolve_time (gfc_expr *f) diff --git a/gcc/fortran/iso-fortran-env.def b/gcc/fortran/iso-fortran-env.def index b8926f4..250a730 100644 --- a/gcc/fortran/iso-fortran-env.def +++ b/gcc/fortran/iso-fortran-env.def @@ -83,17 +83,23 @@ NAMED_INTCST (ISOFORTRANENV_REAL64, "real64", \ gfc_get_real_kind_from_width_isofortranenv (64), GFC_STD_F2008) NAMED_INTCST (ISOFORTRANENV_REAL128, "real128", \ gfc_get_real_kind_from_width_isofortranenv (128), GFC_STD_F2008) -NAMED_INTCST (ISOFORTRANENV_FILE_STAT_LOCKED, "stat_locked", \ +NAMED_INTCST (ISOFORTRANENV_STAT_LOCKED, "stat_locked", \ GFC_STAT_LOCKED, GFC_STD_F2008) -NAMED_INTCST (ISOFORTRANENV_FILE_STAT_LOCKED_OTHER_IMAGE, \ +NAMED_INTCST (ISOFORTRANENV_STAT_LOCKED_OTHER_IMAGE, \ "stat_locked_other_image", \ GFC_STAT_LOCKED_OTHER_IMAGE, GFC_STD_F2008) -NAMED_INTCST (ISOFORTRANENV_FILE_STAT_STOPPED_IMAGE, "stat_stopped_image", \ - GFC_STAT_STOPPED_IMAGE, GFC_STD_F2008) -NAMED_INTCST (ISOFORTRANENV_FILE_STAT_FAILED_IMAGE, "stat_failed_image", \ - GFC_STAT_FAILED_IMAGE, GFC_STD_F2018) -NAMED_INTCST (ISOFORTRANENV_FILE_STAT_UNLOCKED, "stat_unlocked", \ - GFC_STAT_UNLOCKED, GFC_STD_F2008) +NAMED_INTCST (ISOFORTRANENV_STAT_STOPPED_IMAGE, "stat_stopped_image", \ + GFC_STAT_STOPPED_IMAGE, GFC_STD_F2008) +NAMED_INTCST (ISOFORTRANENV_STAT_FAILED_IMAGE, "stat_failed_image", \ + GFC_STAT_FAILED_IMAGE, GFC_STD_F2018) +NAMED_INTCST (ISOFORTRANENV_STAT_UNLOCKED, "stat_unlocked", \ + GFC_STAT_UNLOCKED, GFC_STD_F2008) +NAMED_INTCST (ISOFORTRANENV_INITIAL_TEAM, "initial_team", \ + GFC_CAF_INITIAL_TEAM, GFC_STD_F2018) +NAMED_INTCST (ISOFORTRANENV_PARENT_TEAM, "parent_team", \ + GFC_CAF_PARENT_TEAM, GFC_STD_F2018) +NAMED_INTCST (ISOFORTRANENV_CURRENT_TEAM, "current_team", \ + GFC_CAF_CURRENT_TEAM, GFC_STD_F2018) /* The arguments to NAMED_KINDARRAY are: @@ -134,9 +140,7 @@ NAMED_DERIVED_TYPE (ISOFORTRAN_EVENT_TYPE, "event_type", \ : gfc_default_integer_kind, GFC_STD_F2018) NAMED_DERIVED_TYPE (ISOFORTRAN_TEAM_TYPE, "team_type", \ - flag_coarray == GFC_FCOARRAY_LIB - ? get_int_kind_from_node (ptr_type_node) - : gfc_default_integer_kind, GFC_STD_F2018) + get_int_kind_from_node (ptr_type_node), GFC_STD_F2018) NAMED_INTCST (ISOFORTRANENV_LOGICAL8, "logical8", \ gfc_get_int_kind_from_width_isofortranenv (8), GFC_STD_F2023) diff --git a/gcc/fortran/libgfortran.h b/gcc/fortran/libgfortran.h index 9565365..9de5afb 100644 --- a/gcc/fortran/libgfortran.h +++ b/gcc/fortran/libgfortran.h @@ -154,12 +154,20 @@ typedef enum GFC_STAT_LOCKED, GFC_STAT_LOCKED_OTHER_IMAGE, GFC_STAT_STOPPED_IMAGE = 6000, /* See LIBERROR_INQUIRE_INTERNAL_UNIT above. */ - GFC_STAT_FAILED_IMAGE = 6001 + GFC_STAT_FAILED_IMAGE = 6001, + GFC_STAT_UNLOCKED_FAILED_IMAGE = 6002 } libgfortran_stat_codes; typedef enum { + GFC_CAF_INITIAL_TEAM = 0, + GFC_CAF_PARENT_TEAM, + GFC_CAF_CURRENT_TEAM +} libgfortran_team_levels; + +typedef enum +{ GFC_CAF_ATOMIC_ADD = 1, GFC_CAF_ATOMIC_AND, GFC_CAF_ATOMIC_OR, diff --git a/gcc/fortran/match.cc b/gcc/fortran/match.cc index ec9e587..474ba81 100644 --- a/gcc/fortran/match.cc +++ b/gcc/fortran/match.cc @@ -1814,12 +1814,53 @@ gfc_free_iterator (gfc_iterator *iter, int flag) free (iter); } +static match +match_named_arg (const char *pat, const char *name, gfc_expr **e, + gfc_statement st_code) +{ + match m; + gfc_expr *tmp; + + m = gfc_match (pat, &tmp); + if (m == MATCH_ERROR) + { + gfc_syntax_error (st_code); + return m; + } + if (m == MATCH_YES) + { + if (*e) + { + gfc_error ("Duplicate %s attribute in %C", name); + gfc_free_expr (tmp); + return MATCH_ERROR; + } + *e = tmp; + + return MATCH_YES; + } + return MATCH_NO; +} + +static match +match_stat_errmsg (struct sync_stat *sync_stat, gfc_statement st_code) +{ + match m; + + m = match_named_arg (" stat = %v", "STAT", &sync_stat->stat, st_code); + if (m != MATCH_NO) + return m; + + m = match_named_arg (" errmsg = %v", "ERRMSG", &sync_stat->errmsg, st_code); + return m; +} /* Match a CRITICAL statement. */ match gfc_match_critical (void) { gfc_st_label *label = NULL; + match m; if (gfc_match_label () == MATCH_ERROR) return MATCH_ERROR; @@ -1830,12 +1871,29 @@ gfc_match_critical (void) if (gfc_match_st_label (&label) == MATCH_ERROR) return MATCH_ERROR; - if (gfc_match_eos () != MATCH_YES) + if (gfc_match_eos () == MATCH_YES) + goto done; + + if (gfc_match_char ('(') != MATCH_YES) + goto syntax; + + for (;;) { - gfc_syntax_error (ST_CRITICAL); - return MATCH_ERROR; + m = match_stat_errmsg (&new_st.ext.sync_stat, ST_CRITICAL); + if (m == MATCH_ERROR) + goto cleanup; + + if (gfc_match_char (',') == MATCH_YES) + continue; + + break; } + if (gfc_match (" )%t") != MATCH_YES) + goto syntax; + +done: + if (gfc_pure (NULL)) { gfc_error ("Image control statement CRITICAL at %C in PURE procedure"); @@ -1856,9 +1914,9 @@ gfc_match_critical (void) if (flag_coarray == GFC_FCOARRAY_NONE) { - gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to " - "enable"); - return MATCH_ERROR; + gfc_fatal_error ("Coarrays disabled at %C, use %<-fcoarray=%> to " + "enable"); + return MATCH_ERROR; } if (gfc_find_state (COMP_CRITICAL)) @@ -1869,13 +1927,21 @@ gfc_match_critical (void) new_st.op = EXEC_CRITICAL; - if (label != NULL - && !gfc_reference_st_label (label, ST_LABEL_TARGET)) - return MATCH_ERROR; + if (label != NULL && !gfc_reference_st_label (label, ST_LABEL_TARGET)) + goto cleanup; return MATCH_YES; -} +syntax: + gfc_syntax_error (ST_CRITICAL); + +cleanup: + gfc_free_expr (new_st.ext.sync_stat.stat); + gfc_free_expr (new_st.ext.sync_stat.errmsg); + new_st.ext.sync_stat = {NULL, NULL}; + + return MATCH_ERROR; +} /* Match a BLOCK statement. */ @@ -1900,29 +1966,29 @@ gfc_match_block (void) return MATCH_YES; } - -/* Match an ASSOCIATE statement. */ - -match -gfc_match_associate (void) +bool +check_coarray_assoc (const char *name, gfc_association_list *assoc) { - if (gfc_match_label () == MATCH_ERROR) - return MATCH_ERROR; - - if (gfc_match (" associate") != MATCH_YES) - return MATCH_NO; - - /* Match the association list. */ - if (gfc_match_char ('(') != MATCH_YES) + if (assoc->target->expr_type == EXPR_VARIABLE + && !strcmp (assoc->target->symtree->name, name)) { - gfc_error ("Expected association list at %C"); - return MATCH_ERROR; + gfc_error ("Codimension decl name %qs in association at %L " + "must not be the same as a selector", + name, &assoc->where); + return false; } + return true; +} + +match +match_association_list (bool for_change_team = false) +{ new_st.ext.block.assoc = NULL; while (true) { - gfc_association_list* newAssoc = gfc_get_association_list (); - gfc_association_list* a; + gfc_association_list *newAssoc = gfc_get_association_list (); + gfc_association_list *a; + locus pre_name = gfc_current_locus; /* Match the next association. */ if (gfc_match (" %n ", newAssoc->name) != MATCH_YES) @@ -1932,7 +1998,7 @@ gfc_match_associate (void) } /* Required for an assumed rank target. */ - if (gfc_peek_char () == '(') + if (!for_change_team && gfc_peek_char () == '(') { newAssoc->ar = gfc_get_array_ref (); if (gfc_match_array_ref (newAssoc->ar, NULL, 0, 0) != MATCH_YES) @@ -1946,26 +2012,53 @@ gfc_match_associate (void) gfc_error_now ("The bounds remapping list at %C is an experimental " "F202y feature. Use std=f202y to enable"); + if (for_change_team && gfc_peek_char () == '[') + { + if (!newAssoc->ar) + newAssoc->ar = gfc_get_array_ref (); + if (gfc_match_array_spec (&newAssoc->ar->as, false, true) + == MATCH_ERROR) + goto assocListError; + } + /* Match the next association. */ if (gfc_match (" =>", newAssoc->name) != MATCH_YES) { - gfc_error ("Expected association at %C"); - goto assocListError; + if (for_change_team) + gfc_current_locus = pre_name; + + free (newAssoc); + return MATCH_NO; } - if (gfc_match (" %e", &newAssoc->target) != MATCH_YES) + if (!for_change_team) { - /* Have another go, allowing for procedure pointer selectors. */ - gfc_matching_procptr_assignment = 1; if (gfc_match (" %e", &newAssoc->target) != MATCH_YES) { + /* Have another go, allowing for procedure pointer selectors. */ + gfc_matching_procptr_assignment = 1; + if (gfc_match (" %e", &newAssoc->target) != MATCH_YES) + { + gfc_matching_procptr_assignment = 0; + gfc_error ("Invalid association target at %C"); + goto assocListError; + } gfc_matching_procptr_assignment = 0; - gfc_error ("Invalid association target at %C"); + } + newAssoc->where = gfc_current_locus; + } + else + { + newAssoc->where = gfc_current_locus; + /* F2018, C1116: A selector in a coarray-association shall be a named + coarray. */ + if (gfc_match (" %v", &newAssoc->target) != MATCH_YES) + { + gfc_error ("Selector in coarray association as %C shall be a " + "named coarray"); goto assocListError; } - gfc_matching_procptr_assignment = 0; } - newAssoc->where = gfc_current_locus; /* Check that the current name is not yet in the list. */ for (a = new_st.ext.block.assoc; a; a = a->next) @@ -1976,6 +2069,35 @@ gfc_match_associate (void) goto assocListError; } + if (for_change_team) + { + /* F2018, C1113: In a change-team-stmt, a coarray-name in a + codimension-decl shall not be the same as a selector, or another + coarray-name, in that statement. + The latter is already checked for above. So check only the + former. + */ + if (!check_coarray_assoc (newAssoc->name, newAssoc)) + goto assocListError; + + for (a = new_st.ext.block.assoc; a; a = a->next) + { + if (!check_coarray_assoc (newAssoc->name, a) + || !check_coarray_assoc (a->name, newAssoc)) + goto assocListError; + + /* F2018, C1115: No selector shall appear more than once in a + * given change-team-stmt. */ + if (!strcmp (newAssoc->target->symtree->name, + a->target->symtree->name)) + { + gfc_error ("Selector at %L duplicates selector at %L", + &newAssoc->target->where, &a->target->where); + goto assocListError; + } + } + } + /* The target expression must not be coindexed. */ if (gfc_is_coindexed (newAssoc->target)) { @@ -2042,8 +2164,40 @@ gfc_match_associate (void) assocListError: free (newAssoc); + return MATCH_ERROR; + } + + return MATCH_YES; +} + +/* Match an ASSOCIATE statement. */ + +match +gfc_match_associate (void) +{ + match m; + if (gfc_match_label () == MATCH_ERROR) + return MATCH_ERROR; + + if (gfc_match (" associate") != MATCH_YES) + return MATCH_NO; + + /* Match the association list. */ + if (gfc_match_char ('(') != MATCH_YES) + { + gfc_error ("Expected association list at %C"); + return MATCH_ERROR; + } + + m = match_association_list (); + if (m == MATCH_ERROR) + goto error; + else if (m == MATCH_NO) + { + gfc_error ("Expected association at %C"); goto error; } + if (gfc_match_char (')') != MATCH_YES) { /* This should never happen as we peek above. */ @@ -3171,6 +3325,7 @@ match_exit_cycle (gfc_statement st, gfc_exec_op op) case COMP_ASSOCIATE: case COMP_BLOCK: + case COMP_CHANGE_TEAM: case COMP_IF: case COMP_SELECT: case COMP_SELECT_TYPE: @@ -3848,7 +4003,9 @@ match gfc_match_form_team (void) { match m; - gfc_expr *teamid,*team; + gfc_expr *teamid, *team, *new_index; + + teamid = team = new_index = NULL; if (!gfc_notify_std (GFC_STD_F2018, "FORM TEAM statement at %C")) return MATCH_ERROR; @@ -3866,18 +4023,61 @@ gfc_match_form_team (void) if (gfc_match ("%e", &team) != MATCH_YES) goto syntax; - m = gfc_match_char (')'); + m = gfc_match_char (','); + if (m == MATCH_ERROR) + goto syntax; if (m == MATCH_NO) + { + m = gfc_match_char (')'); + if (m == MATCH_YES) + goto done; + goto syntax; + } + + for (;;) + { + m = match_stat_errmsg (&new_st.ext.sync_stat, ST_FORM_TEAM); + if (m == MATCH_ERROR) + goto cleanup; + + m = match_named_arg (" new_index = %e", "NEW_INDEX", &new_index, + ST_FORM_TEAM); + if (m == MATCH_ERROR) + goto cleanup; + + m = gfc_match_char (','); + if (m == MATCH_YES) + continue; + + break; + } + + if (m == MATCH_ERROR) + goto syntax; + + if (gfc_match (" )%t") != MATCH_YES) goto syntax; +done: + new_st.expr1 = teamid; new_st.expr2 = team; + new_st.expr3 = new_index; return MATCH_YES; syntax: gfc_syntax_error (ST_FORM_TEAM); +cleanup: + gfc_free_expr (new_index); + gfc_free_expr (new_st.ext.sync_stat.stat); + gfc_free_expr (new_st.ext.sync_stat.errmsg); + new_st.ext.sync_stat = {NULL, NULL}; + + gfc_free_expr (team); + gfc_free_expr (teamid); + return MATCH_ERROR; } @@ -3887,7 +4087,13 @@ match gfc_match_change_team (void) { match m; - gfc_expr *team; + gfc_expr *team = NULL; + + if (gfc_match_label () == MATCH_ERROR) + return MATCH_ERROR; + + if (gfc_match (" change% team") != MATCH_YES) + return MATCH_NO; if (!gfc_notify_std (GFC_STD_F2018, "CHANGE TEAM statement at %C")) return MATCH_ERROR; @@ -3895,15 +4101,41 @@ gfc_match_change_team (void) if (gfc_match_char ('(') == MATCH_NO) goto syntax; - new_st.op = EXEC_CHANGE_TEAM; - if (gfc_match ("%e", &team) != MATCH_YES) goto syntax; - m = gfc_match_char (')'); + m = gfc_match_char (','); + if (m == MATCH_ERROR) + goto syntax; if (m == MATCH_NO) + { + m = gfc_match_char (')'); + if (m == MATCH_YES) + goto done; + goto syntax; + } + + m = match_association_list (true); + if (m == MATCH_ERROR) + goto cleanup; + else if (m == MATCH_NO) + for (;;) + { + m = match_stat_errmsg (&new_st.ext.block.sync_stat, ST_CHANGE_TEAM); + if (m == MATCH_ERROR) + goto cleanup; + + if (gfc_match_char (',') == MATCH_YES) + continue; + + break; + } + + if (gfc_match (" )%t") != MATCH_YES) goto syntax; +done: + new_st.expr1 = team; return MATCH_YES; @@ -3911,20 +4143,49 @@ gfc_match_change_team (void) syntax: gfc_syntax_error (ST_CHANGE_TEAM); +cleanup: + gfc_free_expr (new_st.ext.block.sync_stat.stat); + gfc_free_expr (new_st.ext.block.sync_stat.errmsg); + new_st.ext.block.sync_stat = {NULL, NULL}; + gfc_free_association_list (new_st.ext.block.assoc); + new_st.ext.block.assoc = NULL; + gfc_free_expr (team); + return MATCH_ERROR; } -/* Match a END TEAM statement. */ +/* Match an END TEAM statement. */ match gfc_match_end_team (void) { - if (!gfc_notify_std (GFC_STD_F2018, "END TEAM statement at %C")) - return MATCH_ERROR; + if (gfc_match_eos () == MATCH_YES) + goto done; - if (gfc_match_char ('(') == MATCH_YES) + if (gfc_match_char ('(') != MATCH_YES) + { + /* There could be a team-construct-name following. Let caller decide + about error. */ + new_st.op = EXEC_END_TEAM; + return MATCH_NO; + } + + for (;;) + { + if (match_stat_errmsg (&new_st.ext.sync_stat, ST_END_TEAM) == MATCH_ERROR) + goto cleanup; + + if (gfc_match_char (',') == MATCH_YES) + continue; + + break; + } + + if (gfc_match_char (')') != MATCH_YES) goto syntax; +done: + new_st.op = EXEC_END_TEAM; return MATCH_YES; @@ -3932,6 +4193,14 @@ gfc_match_end_team (void) syntax: gfc_syntax_error (ST_END_TEAM); +cleanup: + gfc_free_expr (new_st.ext.sync_stat.stat); + gfc_free_expr (new_st.ext.sync_stat.errmsg); + new_st.ext.sync_stat = {NULL, NULL}; + + /* Try to match the closing bracket to allow error recovery. */ + gfc_match_char (')'); + return MATCH_ERROR; } @@ -3941,7 +4210,7 @@ match gfc_match_sync_team (void) { match m; - gfc_expr *team; + gfc_expr *team = NULL; if (!gfc_notify_std (GFC_STD_F2018, "SYNC TEAM statement at %C")) return MATCH_ERROR; @@ -3954,10 +4223,34 @@ gfc_match_sync_team (void) if (gfc_match ("%e", &team) != MATCH_YES) goto syntax; - m = gfc_match_char (')'); + m = gfc_match_char (','); + if (m == MATCH_ERROR) + goto syntax; if (m == MATCH_NO) + { + m = gfc_match_char (')'); + if (m == MATCH_YES) + goto done; + goto syntax; + } + + for (;;) + { + m = match_stat_errmsg (&new_st.ext.sync_stat, ST_SYNC_TEAM); + if (m == MATCH_ERROR) + goto cleanup; + + if (gfc_match_char (',') == MATCH_YES) + continue; + + break; + } + + if (gfc_match (" )%t") != MATCH_YES) goto syntax; +done: + new_st.expr1 = team; return MATCH_YES; @@ -3965,6 +4258,13 @@ gfc_match_sync_team (void) syntax: gfc_syntax_error (ST_SYNC_TEAM); +cleanup: + gfc_free_expr (new_st.ext.sync_stat.stat); + gfc_free_expr (new_st.ext.sync_stat.errmsg); + new_st.ext.sync_stat = {NULL, NULL}; + + gfc_free_expr (team); + return MATCH_ERROR; } @@ -5261,6 +5561,15 @@ gfc_match_return (void) return MATCH_ERROR; } + if (gfc_find_state (COMP_CHANGE_TEAM)) + { + /* F2018, C1111: A RETURN statement shall not appear within a CHANGE TEAM + construct. */ + gfc_error ( + "Image control statement RETURN at %C in CHANGE TEAM-END TEAM block"); + return MATCH_ERROR; + } + if (gfc_match_eos () == MATCH_YES) goto done; diff --git a/gcc/fortran/parse.cc b/gcc/fortran/parse.cc index a95bb62..538eb65 100644 --- a/gcc/fortran/parse.cc +++ b/gcc/fortran/parse.cc @@ -488,6 +488,7 @@ decode_statement (void) match (NULL, gfc_match_do, ST_DO); match (NULL, gfc_match_block, ST_BLOCK); match (NULL, gfc_match_associate, ST_ASSOCIATE); + match (NULL, gfc_match_change_team, ST_CHANGE_TEAM); match (NULL, gfc_match_critical, ST_CRITICAL); match (NULL, gfc_match_select, ST_SELECT_CASE); match (NULL, gfc_match_select_type, ST_SELECT_TYPE); @@ -517,7 +518,6 @@ decode_statement (void) case 'c': match ("call", gfc_match_call, ST_CALL); - match ("change% team", gfc_match_change_team, ST_CHANGE_TEAM); match ("close", gfc_match_close, ST_CLOSE); match ("continue", gfc_match_continue, ST_CONTINUE); match ("contiguous", gfc_match_contiguous, ST_ATTR_DECL); @@ -537,7 +537,6 @@ decode_statement (void) case 'e': match ("end file", gfc_match_endfile, ST_END_FILE); - match ("end team", gfc_match_end_team, ST_END_TEAM); match ("exit", gfc_match_exit, ST_EXIT); match ("else", gfc_match_else, ST_ELSE); match ("else where", gfc_match_elsewhere, ST_ELSEWHERE); @@ -1927,8 +1926,7 @@ next_statement (void) case ST_OMP_INTEROP: \ case ST_ERROR_STOP: case ST_OMP_SCAN: case ST_SYNC_ALL: \ case ST_SYNC_IMAGES: case ST_SYNC_MEMORY: case ST_LOCK: case ST_UNLOCK: \ - case ST_FORM_TEAM: case ST_CHANGE_TEAM: \ - case ST_END_TEAM: case ST_SYNC_TEAM: \ + case ST_FORM_TEAM: case ST_SYNC_TEAM: \ case ST_EVENT_POST: case ST_EVENT_WAIT: case ST_FAIL_IMAGE: \ case ST_OACC_UPDATE: case ST_OACC_WAIT: case ST_OACC_CACHE: \ case ST_OACC_ENTER_DATA: case ST_OACC_EXIT_DATA @@ -2032,7 +2030,8 @@ next_statement (void) #define case_end case ST_END_BLOCK_DATA: case ST_END_FUNCTION: \ case ST_END_PROGRAM: case ST_END_SUBROUTINE: \ - case ST_END_BLOCK: case ST_END_ASSOCIATE + case ST_END_BLOCK: case ST_END_ASSOCIATE: \ + case ST_END_TEAM /* Push a new state onto the stack. */ @@ -2164,6 +2163,7 @@ check_statement_label (gfc_statement st) case ST_END_CRITICAL: case ST_END_BLOCK: case ST_END_ASSOCIATE: + case ST_END_TEAM: case_executable: case_exec_markers: if (st == ST_ENDDO || st == ST_CONTINUE) @@ -3199,6 +3199,8 @@ accept_statement (gfc_statement st) case ST_ENTRY: case ST_OMP_METADIRECTIVE: case ST_OMP_BEGIN_METADIRECTIVE: + case ST_CHANGE_TEAM: + case ST_END_TEAM: case_executable: case_exec_markers: add_statement (); @@ -3383,6 +3385,8 @@ verify_st_order (st_state *p, gfc_statement st, bool silent) goto order; break; + case ST_CHANGE_TEAM: + case ST_END_TEAM: case_executable: case_exec_markers: if (p->state < ORDER_EXEC) @@ -5238,30 +5242,12 @@ parse_block_construct (void) pop_state (); } - -/* Parse an ASSOCIATE construct. This is essentially a BLOCK construct - behind the scenes with compiler-generated variables. */ - static void -parse_associate (void) +move_associates_to_block () { - gfc_namespace* my_ns; - gfc_state_data s; - gfc_statement st; - gfc_association_list* a; + gfc_association_list *a; gfc_array_spec *as; - gfc_notify_std (GFC_STD_F2003, "ASSOCIATE construct at %C"); - - my_ns = gfc_build_block_ns (gfc_current_ns); - - new_st.op = EXEC_BLOCK; - new_st.ext.block.ns = my_ns; - gcc_assert (new_st.ext.block.assoc); - - /* Add all associate-names as BLOCK variables. Creating them is enough - for now, they'll get their values during trans-* phase. */ - gfc_current_ns = my_ns; for (a = new_st.ext.block.assoc; a; a = a->next) { gfc_symbol *sym, *tsym; @@ -5298,26 +5284,23 @@ parse_associate (void) /* Don’t share the character length information between associate variable and target if the length is not a compile-time constant, - as we don’t want to touch some other character length variable when - we try to initialize the associate variable’s character length - variable. - We do it here rather than later so that expressions referencing the - associate variable will automatically have the correctly setup length - information. If we did it at resolution stage the expressions would - use the original length information, and the variable a new different - one, but only the latter one would be correctly initialized at - translation stage, and the former one would need some additional setup - there. */ - if (sym->ts.type == BT_CHARACTER - && sym->ts.u.cl + as we don’t want to touch some other character length variable + when we try to initialize the associate variable’s character + length variable. We do it here rather than later so that expressions + referencing the associate variable will automatically have the + correctly setup length information. If we did it at resolution stage + the expressions would use the original length information, and the + variable a new different one, but only the latter one would be + correctly initialized at translation stage, and the former one would + need some additional setup there. */ + if (sym->ts.type == BT_CHARACTER && sym->ts.u.cl && !(sym->ts.u.cl->length && sym->ts.u.cl->length->expr_type == EXPR_CONSTANT)) sym->ts.u.cl = gfc_new_charlen (gfc_current_ns, NULL); /* If the function has been parsed, go straight to the result to obtain the expression rank. */ - if (target->expr_type == EXPR_FUNCTION - && target->symtree + if (target->expr_type == EXPR_FUNCTION && target->symtree && target->symtree->n.sym) { tsym = target->symtree->n.sym; @@ -5344,8 +5327,7 @@ parse_associate (void) by calling gfc_resolve_expr because the context is unavailable. However, the references can be resolved and the rank of the target expression set. */ - if (!sym->assoc->inferred_type - && target->ref && gfc_resolve_ref (target) + if (!sym->assoc->inferred_type && target->ref && gfc_resolve_ref (target) && target->expr_type != EXPR_ARRAY && target->expr_type != EXPR_COMPCALL) gfc_expression_rank (target); @@ -5353,13 +5335,12 @@ parse_associate (void) /* Determine whether or not function expressions with unknown type are structure constructors. If so, the function result can be converted to be a derived type. */ - if (target->expr_type == EXPR_FUNCTION - && target->ts.type == BT_UNKNOWN) + if (target->expr_type == EXPR_FUNCTION && target->ts.type == BT_UNKNOWN) { gfc_symbol *derived; /* The derived type has a leading uppercase character. */ gfc_find_symbol (gfc_dt_upper_string (target->symtree->name), - my_ns->parent, 1, &derived); + gfc_current_ns->parent, 1, &derived); if (derived && derived->attr.flavor == FL_DERIVED) { sym->ts.type = BT_DERIVED; @@ -5394,7 +5375,7 @@ parse_associate (void) attr.codimension = as->corank ? 1 : 0; sym->assoc->variable = true; } - else if (rank || corank) + else if (rank || corank) { as = gfc_get_array_spec (); as->type = AS_DEFERRED; @@ -5449,6 +5430,30 @@ parse_associate (void) } gfc_commit_symbols (); } +} + +/* Parse an ASSOCIATE construct. This is essentially a BLOCK construct + behind the scenes with compiler-generated variables. */ + +static void +parse_associate (void) +{ + gfc_namespace* my_ns; + gfc_state_data s; + gfc_statement st; + + gfc_notify_std (GFC_STD_F2003, "ASSOCIATE construct at %C"); + + my_ns = gfc_build_block_ns (gfc_current_ns); + + new_st.op = EXEC_BLOCK; + new_st.ext.block.ns = my_ns; + gcc_assert (new_st.ext.block.assoc); + + /* Add all associate-names as BLOCK variables. Creating them is enough + for now, they'll get their values during trans-* phase. */ + gfc_current_ns = my_ns; + move_associates_to_block (); accept_statement (ST_ASSOCIATE); push_state (&s, COMP_ASSOCIATE, my_ns->proc_name); @@ -5474,6 +5479,49 @@ loop: pop_state (); } +static void +parse_change_team (void) +{ + gfc_namespace *my_ns; + gfc_state_data s; + gfc_statement st; + + gfc_notify_std (GFC_STD_F2018, "CHANGE TEAM construct at %C"); + + my_ns = gfc_build_block_ns (gfc_current_ns); + + new_st.op = EXEC_CHANGE_TEAM; + new_st.ext.block.ns = my_ns; + + /* Add all associate-names as BLOCK variables. Creating them is enough + for now, they'll get their values during trans-* phase. */ + gfc_current_ns = my_ns; + if (new_st.ext.block.assoc) + move_associates_to_block (); + + accept_statement (ST_CHANGE_TEAM); + push_state (&s, COMP_CHANGE_TEAM, my_ns->proc_name); + +loop: + st = parse_executable (ST_NONE); + switch (st) + { + case ST_NONE: + unexpected_eof (); + + case_end: + accept_statement (st); + my_ns->code = gfc_state_stack->head; + break; + + default: + unexpected_statement (st); + goto loop; + } + + gfc_current_ns = gfc_current_ns->parent; + pop_state (); +} /* Parse a DO loop. Note that the ST_CYCLE and ST_EXIT statements are handled inside of parse_executable(), because they aren't really @@ -6576,6 +6624,7 @@ parse_executable (gfc_statement st) case ST_STOP: case ST_ERROR_STOP: case ST_END_SUBROUTINE: + case ST_END_TEAM: case ST_DO: case ST_FORALL: @@ -6615,6 +6664,10 @@ parse_executable (gfc_statement st) parse_associate (); break; + case ST_CHANGE_TEAM: + parse_change_team (); + break; + case ST_IF_BLOCK: parse_if_block (); break; diff --git a/gcc/fortran/parse.h b/gcc/fortran/parse.h index 722e94c..7bf0fa4 100644 --- a/gcc/fortran/parse.h +++ b/gcc/fortran/parse.h @@ -32,7 +32,7 @@ enum gfc_compile_state COMP_DO, COMP_SELECT, COMP_FORALL, COMP_WHERE, COMP_CONTAINS, COMP_ENUM, COMP_SELECT_TYPE, COMP_SELECT_RANK, COMP_OMP_STRUCTURED_BLOCK, COMP_CRITICAL, COMP_DO_CONCURRENT, COMP_OMP_STRICTLY_STRUCTURED_BLOCK, - COMP_OMP_METADIRECTIVE, COMP_OMP_BEGIN_METADIRECTIVE + COMP_OMP_METADIRECTIVE, COMP_OMP_BEGIN_METADIRECTIVE, COMP_CHANGE_TEAM }; /* Stack element for the current compilation state. These structures diff --git a/gcc/fortran/resolve.cc b/gcc/fortran/resolve.cc index f03708e..e51f83b 100644 --- a/gcc/fortran/resolve.cc +++ b/gcc/fortran/resolve.cc @@ -11484,6 +11484,109 @@ resolve_lock_unlock_event (gfc_code *code) } } +static void +resolve_team_argument (gfc_expr *team) +{ + gfc_resolve_expr (team); + if (team->rank != 0 || team->ts.type != BT_DERIVED + || team->ts.u.derived->from_intmod != INTMOD_ISO_FORTRAN_ENV + || team->ts.u.derived->intmod_sym_id != ISOFORTRAN_TEAM_TYPE) + { + gfc_error ("TEAM argument at %L must be a scalar expression " + "of type TEAM_TYPE from the intrinsic module ISO_FORTRAN_ENV", + &team->where); + } +} + +static void +resolve_scalar_variable_as_arg (const char *name, bt exp_type, int exp_kind, + gfc_expr *e) +{ + gfc_resolve_expr (e); + if (e + && (e->ts.type != exp_type || e->ts.kind < exp_kind || e->rank != 0 + || e->expr_type != EXPR_VARIABLE)) + gfc_error ("%s argument at %L must be a scalar %s variable of at least " + "kind %d", name, &e->where, gfc_basic_typename (exp_type), + exp_kind); +} + +void +gfc_resolve_sync_stat (struct sync_stat *sync_stat) +{ + resolve_scalar_variable_as_arg ("STAT=", BT_INTEGER, 2, sync_stat->stat); + resolve_scalar_variable_as_arg ("ERRMSG=", BT_CHARACTER, + gfc_default_character_kind, + sync_stat->errmsg); +} + +static void +resolve_scalar_argument (const char *name, bt exp_type, int exp_kind, + gfc_expr *e) +{ + gfc_resolve_expr (e); + if (e + && (e->ts.type != exp_type || e->ts.kind < exp_kind || e->rank != 0)) + gfc_error ("%s argument at %L must be a scalar %s of at least kind %d", + name, &e->where, gfc_basic_typename (exp_type), exp_kind); +} + +static void +resolve_form_team (gfc_code *code) +{ + resolve_scalar_argument ("TEAM NUMBER", BT_INTEGER, gfc_default_integer_kind, + code->expr1); + resolve_team_argument (code->expr2); + resolve_scalar_argument ("NEW_INDEX=", BT_INTEGER, gfc_default_integer_kind, + code->expr3); + gfc_resolve_sync_stat (&code->ext.sync_stat); +} + +static void resolve_block_construct (gfc_code *); + +static void +resolve_change_team (gfc_code *code) +{ + resolve_team_argument (code->expr1); + gfc_resolve_sync_stat (&code->ext.block.sync_stat); + resolve_block_construct (code); + /* Map the coarray bounds as selected. */ + for (gfc_association_list *a = code->ext.block.assoc; a; a = a->next) + if (a->ar) + { + gfc_array_spec *src = a->ar->as, *dst; + if (a->st->n.sym->ts.type == BT_CLASS) + dst = CLASS_DATA (a->st->n.sym)->as; + else + dst = a->st->n.sym->as; + dst->corank = src->corank; + dst->cotype = src->cotype; + for (int i = 0; i < src->corank; ++i) + { + dst->lower[dst->rank + i] = src->lower[i]; + dst->upper[dst->rank + i] = src->upper[i]; + src->lower[i] = src->upper[i] = nullptr; + } + gfc_free_array_spec (src); + free (a->ar); + a->ar = nullptr; + dst->resolved = false; + gfc_resolve_array_spec (dst, 0); + } +} + +static void +resolve_sync_team (gfc_code *code) +{ + resolve_team_argument (code->expr1); + gfc_resolve_sync_stat (&code->ext.sync_stat); +} + +static void +resolve_end_team (gfc_code *code) +{ + gfc_resolve_sync_stat (&code->ext.sync_stat); +} static void resolve_critical (gfc_code *code) @@ -11493,6 +11596,8 @@ resolve_critical (gfc_code *code) char name[GFC_MAX_SYMBOL_LEN]; static int serial = 0; + gfc_resolve_sync_stat (&code->ext.sync_stat); + if (flag_coarray != GFC_FCOARRAY_LIB) return; @@ -11616,8 +11721,8 @@ resolve_branch (gfc_st_label *label, gfc_code *code) if (code->here == label) { - gfc_warning (0, - "Branch at %L may result in an infinite loop", &code->loc); + gfc_warning (0, "Branch at %L may result in an infinite loop", + &code->loc); return; } @@ -11640,6 +11745,10 @@ resolve_branch (gfc_st_label *label, gfc_code *code) && bitmap_bit_p (stack->reachable_labels, label->value)) gfc_error ("GOTO statement at %L leaves DO CONCURRENT construct " "for label at %L", &code->loc, &label->where); + else if (stack->current->op == EXEC_CHANGE_TEAM + && bitmap_bit_p (stack->reachable_labels, label->value)) + gfc_error ("GOTO statement at %L leaves CHANGE TEAM construct " + "for label at %L", &code->loc, &label->where); } return; @@ -13276,23 +13385,6 @@ deferred_op_assign (gfc_code **code, gfc_namespace *ns) } -static bool -check_team (gfc_expr *team, const char *intrinsic) -{ - if (team->rank != 0 - || team->ts.type != BT_DERIVED - || team->ts.u.derived->from_intmod != INTMOD_ISO_FORTRAN_ENV - || team->ts.u.derived->intmod_sym_id != ISOFORTRAN_TEAM_TYPE) - { - gfc_error ("TEAM argument to %qs at %L must be a scalar expression " - "of type TEAM_TYPE", intrinsic, &team->where); - return false; - } - - return true; -} - - /* Given a block of code, recursively resolve everything pointed to by this code block. */ @@ -13481,22 +13573,19 @@ start: break; case EXEC_FORM_TEAM: - if (code->expr1 != NULL - && (code->expr1->ts.type != BT_INTEGER || code->expr1->rank)) - gfc_error ("TEAM NUMBER argument to FORM TEAM at %L must be " - "a scalar INTEGER", &code->expr1->where); - check_team (code->expr2, "FORM TEAM"); + resolve_form_team (code); break; case EXEC_CHANGE_TEAM: - check_team (code->expr1, "CHANGE TEAM"); + resolve_change_team (code); break; case EXEC_END_TEAM: + resolve_end_team (code); break; case EXEC_SYNC_TEAM: - check_team (code->expr1, "SYNC TEAM"); + resolve_sync_team (code); break; case EXEC_ENTRY: diff --git a/gcc/fortran/simplify.cc b/gcc/fortran/simplify.cc index 92ab17b..208251b 100644 --- a/gcc/fortran/simplify.cc +++ b/gcc/fortran/simplify.cc @@ -3133,8 +3133,10 @@ gfc_simplify_get_team (gfc_expr *level ATTRIBUTE_UNUSED) if (flag_coarray == GFC_FCOARRAY_SINGLE) { gfc_expr *result; - result = gfc_get_array_expr (BT_INTEGER, gfc_default_integer_kind, &gfc_current_locus); - result->rank = 0; + result = gfc_get_null_expr (&gfc_current_locus); + result->ts.type = BT_DERIVED; + gfc_find_symbol ("team_type", gfc_current_ns, 1, &result->ts.u.derived); + return result; } @@ -6727,7 +6729,7 @@ gfc_simplify_null (gfc_expr *mold) gfc_expr * -gfc_simplify_num_images (gfc_expr *distance ATTRIBUTE_UNUSED, gfc_expr *failed) +gfc_simplify_num_images (gfc_expr *team_or_team_number ATTRIBUTE_UNUSED) { gfc_expr *result; @@ -6740,16 +6742,9 @@ gfc_simplify_num_images (gfc_expr *distance ATTRIBUTE_UNUSED, gfc_expr *failed) if (flag_coarray != GFC_FCOARRAY_SINGLE) return NULL; - if (failed && failed->expr_type != EXPR_CONSTANT) - return NULL; - /* FIXME: gfc_current_locus is wrong. */ result = gfc_get_constant_expr (BT_INTEGER, gfc_default_integer_kind, &gfc_current_locus); - - if (failed && failed->value.logical != 0) - mpz_set_si (result->value.integer, 0); - else mpz_set_si (result->value.integer, 1); return result; @@ -8925,7 +8920,8 @@ gfc_simplify_trim (gfc_expr *e) gfc_expr * -gfc_simplify_image_index (gfc_expr *coarray, gfc_expr *sub) +gfc_simplify_image_index (gfc_expr *coarray, gfc_expr *sub, + gfc_expr *team_or_team_number ATTRIBUTE_UNUSED) { gfc_expr *result; gfc_ref *ref; @@ -9067,14 +9063,13 @@ gfc_simplify_image_status (gfc_expr *image, gfc_expr *team ATTRIBUTE_UNUSED) gfc_expr * gfc_simplify_this_image (gfc_expr *coarray, gfc_expr *dim, - gfc_expr *distance ATTRIBUTE_UNUSED) + gfc_expr *team ATTRIBUTE_UNUSED) { if (flag_coarray != GFC_FCOARRAY_SINGLE) return NULL; - /* If no coarray argument has been passed or when the first argument - is actually a distance argument. */ - if (coarray == NULL || !gfc_is_coarray (coarray)) + /* If no coarray argument has been passed. */ + if (coarray == NULL) { gfc_expr *result; /* FIXME: gfc_current_locus is wrong. */ diff --git a/gcc/fortran/trans-decl.cc b/gcc/fortran/trans-decl.cc index ddc4960..ee48a82 100644 --- a/gcc/fortran/trans-decl.cc +++ b/gcc/fortran/trans-decl.cc @@ -4043,9 +4043,9 @@ gfc_build_builtin_function_decls (void) gfor_fndecl_caf_finalize = gfc_build_library_function_decl ( get_identifier (PREFIX("caf_finalize")), void_type_node, 0); - gfor_fndecl_caf_this_image = gfc_build_library_function_decl ( - get_identifier (PREFIX("caf_this_image")), integer_type_node, - 1, integer_type_node); + gfor_fndecl_caf_this_image = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_this_image")), ". r ", integer_type_node, + 1, pvoid_type_node); gfor_fndecl_caf_num_images = gfc_build_library_function_decl ( get_identifier (PREFIX("caf_num_images")), integer_type_node, @@ -4201,42 +4201,36 @@ gfc_build_builtin_function_decls (void) void_type_node, 3, pvoid_type_node, ppvoid_type_node, integer_type_node); - gfor_fndecl_caf_form_team - = gfc_build_library_function_decl_with_spec ( - get_identifier (PREFIX("caf_form_team")), ". . W . ", - void_type_node, 3, integer_type_node, ppvoid_type_node, - integer_type_node); + gfor_fndecl_caf_form_team = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_form_team")), ". r w r w w w ", + void_type_node, 6, integer_type_node, ppvoid_type_node, pint_type, + pint_type, pchar_type_node, size_type_node); - gfor_fndecl_caf_change_team - = gfc_build_library_function_decl_with_spec ( - get_identifier (PREFIX("caf_change_team")), ". w . ", - void_type_node, 2, ppvoid_type_node, - integer_type_node); + gfor_fndecl_caf_change_team = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_change_team")), ". r w w w ", + void_type_node, 4, pvoid_type_node, pint_type, pchar_type_node, + size_type_node); - gfor_fndecl_caf_end_team - = gfc_build_library_function_decl ( - get_identifier (PREFIX("caf_end_team")), void_type_node, 0); + gfor_fndecl_caf_end_team = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_end_team")), ". w w w ", void_type_node, 3, + pint_type, pchar_type_node, size_type_node); - gfor_fndecl_caf_get_team - = gfc_build_library_function_decl ( - get_identifier (PREFIX("caf_get_team")), - void_type_node, 1, integer_type_node); + gfor_fndecl_caf_get_team = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_get_team")), ". r ", pvoid_type_node, 1, + pint_type); - gfor_fndecl_caf_sync_team - = gfc_build_library_function_decl_with_spec ( - get_identifier (PREFIX("caf_sync_team")), ". r . ", - void_type_node, 2, ppvoid_type_node, - integer_type_node); + gfor_fndecl_caf_sync_team = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_sync_team")), ". r w w w ", void_type_node, + 4, pvoid_type_node, pint_type, pchar_type_node, size_type_node); gfor_fndecl_caf_team_number = gfc_build_library_function_decl_with_spec ( get_identifier (PREFIX("caf_team_number")), ". r ", integer_type_node, 1, integer_type_node); - gfor_fndecl_caf_image_status - = gfc_build_library_function_decl_with_spec ( - get_identifier (PREFIX("caf_image_status")), ". . r ", - integer_type_node, 2, integer_type_node, ppvoid_type_node); + gfor_fndecl_caf_image_status = gfc_build_library_function_decl_with_spec ( + get_identifier (PREFIX ("caf_image_status")), ". r r ", + integer_type_node, 2, integer_type_node, ppvoid_type_node); gfor_fndecl_caf_stopped_images = gfc_build_library_function_decl_with_spec ( diff --git a/gcc/fortran/trans-expr.cc b/gcc/fortran/trans-expr.cc index 62dd38d..19e5669b 100644 --- a/gcc/fortran/trans-expr.cc +++ b/gcc/fortran/trans-expr.cc @@ -2579,10 +2579,8 @@ gfc_caf_get_image_index (stmtblock_t *block, gfc_expr *e, tree desc) gcc_assert (ref != NULL); if (ref->u.ar.dimen_type[ref->u.ar.dimen] == DIMEN_THIS_IMAGE) - { - return build_call_expr_loc (input_location, gfor_fndecl_caf_this_image, 1, - integer_zero_node); - } + return build_call_expr_loc (input_location, gfor_fndecl_caf_this_image, 1, + null_pointer_node); img_idx = build_zero_cst (gfc_array_index_type); extent = build_one_cst (gfc_array_index_type); @@ -9836,7 +9834,12 @@ gfc_trans_subcomponent_assign (tree dest, gfc_component * cm, && !cm->attr.proc_pointer) { if (cm->attr.allocatable && expr->expr_type == EXPR_NULL) - gfc_conv_descriptor_data_set (&block, dest, null_pointer_node); + { + gfc_conv_descriptor_data_set (&block, dest, null_pointer_node); + if (cm->attr.codimension && flag_coarray == GFC_FCOARRAY_LIB) + gfc_add_modify (&block, gfc_conv_descriptor_token (dest), + null_pointer_node); + } else if (cm->attr.allocatable || cm->attr.pdt_array) { tmp = gfc_trans_alloc_subarray_assign (dest, cm, expr); diff --git a/gcc/fortran/trans-intrinsic.cc b/gcc/fortran/trans-intrinsic.cc index 6ffc3e0..440cbdd 100644 --- a/gcc/fortran/trans-intrinsic.cc +++ b/gcc/fortran/trans-intrinsic.cc @@ -1183,8 +1183,10 @@ conv_stat_and_team (stmtblock_t *block, gfc_expr *expr, tree *stat, tree *team, { gfc_se team_se; gfc_init_se (&team_se, NULL); - gfc_conv_expr_reference (&team_se, team_e); - *team = team_se.expr; + gfc_conv_expr (&team_se, team_e); + *team + = gfc_build_addr_expr (NULL_TREE, gfc_trans_force_lval (&team_se.pre, + team_se.expr)); gfc_add_block_to_block (block, &team_se.pre); gfc_add_block_to_block (block, &team_se.post); } @@ -1196,8 +1198,11 @@ conv_stat_and_team (stmtblock_t *block, gfc_expr *expr, tree *stat, tree *team, { gfc_se team_se; gfc_init_se (&team_se, NULL); - gfc_conv_expr_reference (&team_se, team_e); - *team_no = team_se.expr; + gfc_conv_expr (&team_se, team_e); + *team_no = gfc_build_addr_expr ( + NULL_TREE, + gfc_trans_force_lval (&team_se.pre, + fold_convert (integer_type_node, team_se.expr))); gfc_add_block_to_block (block, &team_se.pre); gfc_add_block_to_block (block, &team_se.post); } @@ -1379,9 +1384,9 @@ gfc_conv_intrinsic_caf_is_present_remote (gfc_se *se, gfc_expr *e) present_fn = e->value.function.actual->next->next->expr; add_data_sym = present_fn->symtree->n.sym->formal->sym; - fn_index = conv_caf_func_index (&se->pre, gfc_current_ns, + fn_index = conv_caf_func_index (&se->pre, e->symtree->n.sym->ns, "__caf_present_on_remote_fn_index_%d", hash); - add_data_tree = conv_caf_add_call_data (&se->pre, gfc_current_ns, + add_data_tree = conv_caf_add_call_data (&se->pre, e->symtree->n.sym->ns, "__caf_present_on_remote_add_data_%d", add_data_sym, &add_data_size); ++caf_call_cnt; @@ -1790,13 +1795,13 @@ conv_caf_sendget (gfc_code *code) ++caf_call_cnt; tmp = build_call_expr_loc ( - input_location, gfor_fndecl_caf_transfer_between_remotes, 20, lhs_token, + input_location, gfor_fndecl_caf_transfer_between_remotes, 22, lhs_token, opt_lhs_desc, opt_lhs_charlen, lhs_image_index, receiver_fn_index_tree, lhs_add_data_tree, lhs_add_data_size, rhs_token, opt_rhs_desc, opt_rhs_charlen, rhs_image_index, sender_fn_index_tree, rhs_add_data_tree, rhs_add_data_size, rhs_size, transfer_rank == 0 ? boolean_true_node : boolean_false_node, lhs_stat, - lhs_team, lhs_team_no, rhs_stat, rhs_team, rhs_team_no); + rhs_stat, lhs_team, lhs_team_no, rhs_team, rhs_team_no); gfc_add_expr_to_block (&block, tmp); gfc_add_block_to_block (&block, &lhs_se.post); @@ -1818,34 +1823,31 @@ static void trans_this_image (gfc_se * se, gfc_expr *expr) { stmtblock_t loop; - tree type, desc, dim_arg, cond, tmp, m, loop_var, exit_label, min_var, - lbound, ubound, extent, ml; + tree type, desc, dim_arg, cond, tmp, m, loop_var, exit_label, min_var, lbound, + ubound, extent, ml, team; gfc_se argse; int rank, corank; - gfc_expr *distance = expr->value.function.actual->next->next->expr; - - if (expr->value.function.actual->expr - && !gfc_is_coarray (expr->value.function.actual->expr)) - distance = expr->value.function.actual->expr; /* The case -fcoarray=single is handled elsewhere. */ gcc_assert (flag_coarray != GFC_FCOARRAY_SINGLE); + /* Translate team, if present. */ + if (expr->value.function.actual->next->next->expr) + { + gfc_init_se (&argse, NULL); + gfc_conv_expr_val (&argse, expr->value.function.actual->next->next->expr); + gfc_add_block_to_block (&se->pre, &argse.pre); + gfc_add_block_to_block (&se->post, &argse.post); + team = fold_convert (pvoid_type_node, argse.expr); + } + else + team = null_pointer_node; + /* Argument-free version: THIS_IMAGE(). */ - if (distance || expr->value.function.actual->expr == NULL) + if (expr->value.function.actual->expr == NULL) { - if (distance) - { - gfc_init_se (&argse, NULL); - gfc_conv_expr_val (&argse, distance); - gfc_add_block_to_block (&se->pre, &argse.pre); - gfc_add_block_to_block (&se->post, &argse.post); - tmp = fold_convert (integer_type_node, argse.expr); - } - else - tmp = integer_zero_node; tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_this_image, 1, - tmp); + team); se->expr = fold_convert (gfc_get_int_type (gfc_default_integer_kind), tmp); return; @@ -1940,8 +1942,8 @@ trans_this_image (gfc_se * se, gfc_expr *expr) */ /* this_image () - 1. */ - tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_this_image, 1, - integer_zero_node); + tmp + = build_call_expr_loc (input_location, gfor_fndecl_caf_this_image, 1, team); tmp = fold_build2_loc (input_location, MINUS_EXPR, type, fold_convert (type, tmp), build_int_cst (type, 1)); if (corank == 1) @@ -2072,7 +2074,8 @@ conv_intrinsic_image_status (gfc_se *se, gfc_expr *expr) } else if (flag_coarray == GFC_FCOARRAY_LIB) tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_image_status, 2, - args[0], build_int_cst (integer_type_node, -1)); + args[0], + num_args < 2 ? null_pointer_node : args[1]); else gcc_unreachable (); @@ -2092,18 +2095,7 @@ conv_intrinsic_team_number (gfc_se *se, gfc_expr *expr) if (flag_coarray == GFC_FCOARRAY_SINGLE && expr->value.function.actual->expr) - { - tree arg; - - arg = gfc_evaluate_now (args[0], &se->pre); - tmp = fold_build2_loc (input_location, EQ_EXPR, logical_type_node, - fold_convert (integer_type_node, arg), - integer_one_node); - tmp = fold_build3_loc (input_location, COND_EXPR, integer_type_node, - tmp, integer_zero_node, - build_int_cst (integer_type_node, - GFC_STAT_STOPPED_IMAGE)); - } + tmp = gfc_evaluate_now (args[0], &se->pre); else if (flag_coarray == GFC_FCOARRAY_SINGLE) { // the value -1 represents that no team has been created yet @@ -2111,10 +2103,10 @@ conv_intrinsic_team_number (gfc_se *se, gfc_expr *expr) } else if (flag_coarray == GFC_FCOARRAY_LIB && expr->value.function.actual->expr) tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_team_number, 1, - args[0], build_int_cst (integer_type_node, -1)); + args[0]); else if (flag_coarray == GFC_FCOARRAY_LIB) tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_team_number, 1, - integer_zero_node, build_int_cst (integer_type_node, -1)); + null_pointer_node); else gcc_unreachable (); @@ -2125,8 +2117,8 @@ conv_intrinsic_team_number (gfc_se *se, gfc_expr *expr) static void trans_image_index (gfc_se * se, gfc_expr *expr) { - tree num_images, cond, coindex, type, lbound, ubound, desc, subdesc, - tmp, invalid_bound; + tree num_images, cond, coindex, type, lbound, ubound, desc, subdesc, tmp, + invalid_bound, team = null_pointer_node, team_number = null_pointer_node; gfc_se argse, subse; int rank, corank, codim; @@ -2150,6 +2142,22 @@ trans_image_index (gfc_se * se, gfc_expr *expr) subdesc = build_fold_indirect_ref_loc (input_location, gfc_conv_descriptor_data_get (subse.expr)); + if (expr->value.function.actual->next->next->expr) + { + gfc_init_se (&argse, NULL); + gfc_conv_expr_descriptor (&argse, + expr->value.function.actual->next->next->expr); + if (expr->value.function.actual->next->next->expr->ts.type == BT_DERIVED) + team = argse.expr; + else + team_number = gfc_build_addr_expr ( + NULL_TREE, + gfc_trans_force_lval (&argse.pre, + fold_convert (integer_type_node, argse.expr))); + gfc_add_block_to_block (&se->pre, &argse.pre); + gfc_add_block_to_block (&se->post, &argse.post); + } + /* Fortran 2008 does not require that the values remain in the cobounds, thus we need explicitly check this - and return 0 if they are exceeded. */ @@ -2225,8 +2233,7 @@ trans_image_index (gfc_se * se, gfc_expr *expr) else { tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_num_images, 2, - integer_zero_node, - build_int_cst (integer_type_node, -1)); + team, team_number); num_images = fold_convert (type, tmp); } @@ -2245,32 +2252,26 @@ trans_image_index (gfc_se * se, gfc_expr *expr) static void trans_num_images (gfc_se * se, gfc_expr *expr) { - tree tmp, distance, failed; + tree tmp, team = null_pointer_node, team_number = null_pointer_node; gfc_se argse; if (expr->value.function.actual->expr) { gfc_init_se (&argse, NULL); gfc_conv_expr_val (&argse, expr->value.function.actual->expr); + if (expr->value.function.actual->expr->ts.type == BT_DERIVED) + team = argse.expr; + else + team_number = gfc_build_addr_expr ( + NULL_TREE, + gfc_trans_force_lval (&se->pre, + fold_convert (integer_type_node, argse.expr))); gfc_add_block_to_block (&se->pre, &argse.pre); gfc_add_block_to_block (&se->post, &argse.post); - distance = fold_convert (integer_type_node, argse.expr); } - else - distance = integer_zero_node; - if (expr->value.function.actual->next->expr) - { - gfc_init_se (&argse, NULL); - gfc_conv_expr_val (&argse, expr->value.function.actual->next->expr); - gfc_add_block_to_block (&se->pre, &argse.pre); - gfc_add_block_to_block (&se->post, &argse.post); - failed = fold_convert (integer_type_node, argse.expr); - } - else - failed = build_int_cst (integer_type_node, -1); tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_num_images, 2, - distance, failed); + team, team_number); se->expr = fold_convert (gfc_get_int_type (gfc_default_integer_kind), tmp); } @@ -2700,8 +2701,7 @@ conv_intrinsic_cobound (gfc_se * se, gfc_expr * expr) cosize = gfc_conv_descriptor_cosize (desc, arg->expr->rank, corank); tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_num_images, - 2, integer_zero_node, - build_int_cst (integer_type_node, -1)); + 2, null_pointer_node, null_pointer_node); tmp = fold_build2_loc (input_location, MINUS_EXPR, gfc_array_index_type, fold_convert (gfc_array_index_type, tmp), @@ -2716,8 +2716,7 @@ conv_intrinsic_cobound (gfc_se * se, gfc_expr * expr) { /* ubound = lbound + num_images() - 1. */ tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_num_images, - 2, integer_zero_node, - build_int_cst (integer_type_node, -1)); + 2, null_pointer_node, null_pointer_node); tmp = fold_build2_loc (input_location, MINUS_EXPR, gfc_array_index_type, fold_convert (gfc_array_index_type, tmp), @@ -11475,6 +11474,7 @@ gfc_conv_intrinsic_function (gfc_se * se, gfc_expr * expr) case GFC_ISYM_GETGID: case GFC_ISYM_GETPID: case GFC_ISYM_GETUID: + case GFC_ISYM_GET_TEAM: case GFC_ISYM_HOSTNM: case GFC_ISYM_IERRNO: case GFC_ISYM_IRAND: @@ -12970,6 +12970,9 @@ gfc_conv_intrinsic_mvbits (gfc_se *se, gfc_actual_arglist *actual_args, void_type_node, to, se->expr); } +/* Comes from trans-stmt.cc, but we don't want the whole header included. */ +extern void gfc_trans_sync_stat (struct sync_stat *sync_stat, gfc_se *se, + tree *stat, tree *errmsg, tree *errmsg_len); static tree conv_intrinsic_move_alloc (gfc_code *code) @@ -12977,17 +12980,37 @@ conv_intrinsic_move_alloc (gfc_code *code) stmtblock_t block; gfc_expr *from_expr, *to_expr; gfc_se from_se, to_se; - tree tmp, to_tree, from_tree; + tree tmp, to_tree, from_tree, stat, errmsg, errmsg_len, fin_label = NULL_TREE; bool coarray, from_is_class, from_is_scalar; + gfc_actual_arglist *arg = code->ext.actual; + sync_stat tmp_sync_stat = {nullptr, nullptr}; gfc_start_block (&block); - from_expr = code->ext.actual->expr; - to_expr = code->ext.actual->next->expr; + from_expr = arg->expr; + arg = arg->next; + to_expr = arg->expr; + arg = arg->next; + + while (arg) + { + if (arg->expr) + { + if (!strcmp ("stat", arg->name)) + tmp_sync_stat.stat = arg->expr; + else if (!strcmp ("errmsg", arg->name)) + tmp_sync_stat.errmsg = arg->expr; + } + arg = arg->next; + } gfc_init_se (&from_se, NULL); gfc_init_se (&to_se, NULL); + gfc_trans_sync_stat (&tmp_sync_stat, &from_se, &stat, &errmsg, &errmsg_len); + if (stat != null_pointer_node) + fin_label = gfc_build_label_decl (NULL_TREE); + gcc_assert (from_expr->ts.type != BT_CLASS || to_expr->ts.type == BT_CLASS); coarray = from_expr->corank != 0; @@ -13030,9 +13053,10 @@ conv_intrinsic_move_alloc (gfc_code *code) /* Deallocate "to". */ if (to_expr->rank == 0) { - tmp - = gfc_deallocate_scalar_with_status (to_tree, NULL_TREE, NULL_TREE, - true, to_expr, to_expr->ts); + tmp = gfc_deallocate_scalar_with_status (to_tree, stat, fin_label, + true, to_expr, to_expr->ts, + NULL_TREE, false, true, + errmsg, errmsg_len); gfc_add_expr_to_block (&block, tmp); } @@ -13105,9 +13129,12 @@ conv_intrinsic_move_alloc (gfc_code *code) { tree cond; - tmp = gfc_deallocate_with_status (to_se.expr, NULL_TREE, NULL_TREE, - NULL_TREE, NULL_TREE, true, to_expr, - GFC_CAF_COARRAY_DEALLOCATE_ONLY); + tmp = gfc_deallocate_with_status (to_se.expr, stat, errmsg, errmsg_len, + fin_label, true, to_expr, + GFC_CAF_COARRAY_DEALLOCATE_ONLY, + NULL_TREE, NULL_TREE, + gfc_conv_descriptor_token (to_se.expr), + true); gfc_add_expr_to_block (&block, tmp); tmp = gfc_conv_descriptor_data_get (to_se.expr); @@ -13133,9 +13160,10 @@ conv_intrinsic_move_alloc (gfc_code *code) gfc_add_expr_to_block (&block, tmp); } - tmp = gfc_deallocate_with_status (to_se.expr, NULL_TREE, NULL_TREE, - NULL_TREE, NULL_TREE, true, to_expr, - GFC_CAF_COARRAY_NOCOARRAY); + tmp = gfc_deallocate_with_status (to_se.expr, stat, errmsg, errmsg_len, + fin_label, true, to_expr, + GFC_CAF_COARRAY_NOCOARRAY, NULL_TREE, + NULL_TREE, NULL_TREE, true); gfc_add_expr_to_block (&block, tmp); } @@ -13147,6 +13175,13 @@ conv_intrinsic_move_alloc (gfc_code *code) gfc_add_modify_loc (input_location, &block, tmp, fold_convert (TREE_TYPE (tmp), null_pointer_node)); + if (coarray && flag_coarray == GFC_FCOARRAY_LIB) + { + /* Copy the array descriptor data has overwritten the to-token and cleared + from.data. Now also clear the from.token. */ + gfc_add_modify (&block, gfc_conv_descriptor_token (from_se.expr), + null_pointer_node); + } if (to_expr->ts.type == BT_CHARACTER && to_expr->ts.deferred) { @@ -13157,6 +13192,8 @@ conv_intrinsic_move_alloc (gfc_code *code) gfc_add_modify_loc (input_location, &block, from_se.string_length, build_int_cst (TREE_TYPE (from_se.string_length), 0)); } + if (fin_label) + gfc_add_expr_to_block (&block, build1_v (LABEL_EXPR, fin_label)); return gfc_finish_block (&block); } diff --git a/gcc/fortran/trans-stmt.cc b/gcc/fortran/trans-stmt.cc index 37f8aca..487b768 100644 --- a/gcc/fortran/trans-stmt.cc +++ b/gcc/fortran/trans-stmt.cc @@ -721,6 +721,15 @@ gfc_trans_stop (gfc_code *code, bool error_stop) return gfc_finish_block (&se.pre); } +tree +trans_exit () +{ + const char *name = gfc_get_string (PREFIX ("exit_i%d"), 4); + gfc_symbol *exsym = gfc_get_intrinsic_sub_symbol (name); + tree tmp = gfc_get_symbol_decl (exsym); + return build_call_expr_loc (input_location, tmp, 1, integer_zero_node); +} + /* Translate the FAIL IMAGE statement. */ tree @@ -730,11 +739,49 @@ gfc_trans_fail_image (gfc_code *code ATTRIBUTE_UNUSED) return build_call_expr_loc (input_location, gfor_fndecl_caf_fail_image, 0); else + return trans_exit (); +} + +void +gfc_trans_sync_stat (struct sync_stat *sync_stat, gfc_se *se, tree *stat, + tree *errmsg, tree *errmsg_len) +{ + gfc_se argse; + + if (sync_stat->stat) { - const char *name = gfc_get_string (PREFIX ("exit_i%d"), 4); - gfc_symbol *exsym = gfc_get_intrinsic_sub_symbol (name); - tree tmp = gfc_get_symbol_decl (exsym); - return build_call_expr_loc (input_location, tmp, 1, integer_zero_node); + gfc_init_se (&argse, NULL); + gfc_conv_expr (&argse, sync_stat->stat); + gfc_add_block_to_block (&se->pre, &argse.pre); + + if (TREE_TYPE (argse.expr) != integer_type_node) + { + tree tstat = gfc_create_var (integer_type_node, "stat"); + TREE_THIS_VOLATILE (tstat) = 1; + gfc_add_modify (&se->pre, tstat, + fold_convert (integer_type_node, argse.expr)); + gfc_add_modify (&se->post, argse.expr, + fold_convert (TREE_TYPE (argse.expr), tstat)); + *stat = build_fold_addr_expr (tstat); + } + else + *stat = build_fold_addr_expr (argse.expr); + } + else + *stat = null_pointer_node; + + if (sync_stat->errmsg) + { + gfc_init_se (&argse, NULL); + gfc_conv_expr_reference (&argse, sync_stat->errmsg); + gfc_add_block_to_block (&se->pre, &argse.pre); + *errmsg = argse.expr; + *errmsg_len = fold_convert (size_type_node, argse.string_length); + } + else + { + *errmsg = null_pointer_node; + *errmsg_len = build_zero_cst (size_type_node); } } @@ -745,38 +792,42 @@ gfc_trans_form_team (gfc_code *code) { if (flag_coarray == GFC_FCOARRAY_LIB) { - gfc_se se; - gfc_se argse1, argse2; - tree team_id, team_type, tmp; + gfc_se se, argse; + tree team_id, team_type, new_index, stat, errmsg, errmsg_len, tmp; gfc_init_se (&se, NULL); - gfc_init_se (&argse1, NULL); - gfc_init_se (&argse2, NULL); - gfc_start_block (&se.pre); + gfc_init_se (&argse, NULL); - gfc_conv_expr_val (&argse1, code->expr1); - gfc_conv_expr_val (&argse2, code->expr2); - team_id = fold_convert (integer_type_node, argse1.expr); - team_type = gfc_build_addr_expr (ppvoid_type_node, argse2.expr); + gfc_conv_expr_val (&argse, code->expr1); + team_id = fold_convert (integer_type_node, argse.expr); + gfc_conv_expr_reference (&argse, code->expr2); + team_type = argse.expr; - gfc_add_block_to_block (&se.pre, &argse1.pre); - gfc_add_block_to_block (&se.pre, &argse2.pre); - tmp = build_call_expr_loc (input_location, - gfor_fndecl_caf_form_team, 3, - team_id, team_type, - integer_zero_node); + /* NEW_INDEX=. */ + if (code->expr3) + { + gfc_conv_expr_reference (&argse, code->expr3); + new_index = argse.expr; + } + else + new_index = null_pointer_node; + + gfc_add_block_to_block (&se.post, &argse.post); + + gfc_trans_sync_stat (&code->ext.sync_stat, &se, &stat, &errmsg, + &errmsg_len); + + gfc_add_block_to_block (&se.pre, &argse.pre); + + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_form_team, 6, + team_id, team_type, new_index, stat, errmsg, + errmsg_len); gfc_add_expr_to_block (&se.pre, tmp); - gfc_add_block_to_block (&se.pre, &argse1.post); - gfc_add_block_to_block (&se.pre, &argse2.post); + gfc_add_block_to_block (&se.pre, &se.post); return gfc_finish_block (&se.pre); - } + } else - { - const char *name = gfc_get_string (PREFIX ("exit_i%d"), 4); - gfc_symbol *exsym = gfc_get_intrinsic_sub_symbol (name); - tree tmp = gfc_get_symbol_decl (exsym); - return build_call_expr_loc (input_location, tmp, 1, integer_zero_node); - } + return trans_exit (); } /* Translate the CHANGE TEAM statement. */ @@ -786,47 +837,56 @@ gfc_trans_change_team (gfc_code *code) { if (flag_coarray == GFC_FCOARRAY_LIB) { - gfc_se argse; - tree team_type, tmp; + stmtblock_t block; + gfc_se se; + tree team_type, stat, errmsg, errmsg_len, tmp; - gfc_init_se (&argse, NULL); - gfc_conv_expr_val (&argse, code->expr1); - team_type = gfc_build_addr_expr (ppvoid_type_node, argse.expr); + gfc_init_se (&se, NULL); + gfc_start_block (&block); - tmp = build_call_expr_loc (input_location, - gfor_fndecl_caf_change_team, 2, team_type, - integer_zero_node); - gfc_add_expr_to_block (&argse.pre, tmp); - gfc_add_block_to_block (&argse.pre, &argse.post); - return gfc_finish_block (&argse.pre); + gfc_conv_expr_val (&se, code->expr1); + team_type = se.expr; + + gfc_trans_sync_stat (&code->ext.block.sync_stat, &se, &stat, &errmsg, + &errmsg_len); + + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_change_team, 4, + team_type, stat, errmsg, errmsg_len); + + gfc_add_expr_to_block (&se.pre, tmp); + gfc_add_block_to_block (&se.pre, &se.post); + gfc_add_block_to_block (&block, &se.pre); + gfc_add_expr_to_block (&block, gfc_trans_block_construct (code)); + return gfc_finish_block (&block); } else - { - const char *name = gfc_get_string (PREFIX ("exit_i%d"), 4); - gfc_symbol *exsym = gfc_get_intrinsic_sub_symbol (name); - tree tmp = gfc_get_symbol_decl (exsym); - return build_call_expr_loc (input_location, tmp, 1, integer_zero_node); - } + return trans_exit (); } /* Translate the END TEAM statement. */ tree -gfc_trans_end_team (gfc_code *code ATTRIBUTE_UNUSED) +gfc_trans_end_team (gfc_code *code) { if (flag_coarray == GFC_FCOARRAY_LIB) { - return build_call_expr_loc (input_location, - gfor_fndecl_caf_end_team, 1, - build_int_cst (pchar_type_node, 0)); + gfc_se se; + tree stat, errmsg, errmsg_len, tmp; + + gfc_init_se (&se, NULL); + gfc_start_block (&se.pre); + + gfc_trans_sync_stat (&code->ext.sync_stat, &se, &stat, &errmsg, + &errmsg_len); + + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_end_team, 3, + stat, errmsg, errmsg_len); + gfc_add_expr_to_block (&se.pre, tmp); + gfc_add_block_to_block (&se.pre, &se.post); + return gfc_finish_block (&se.pre); } else - { - const char *name = gfc_get_string (PREFIX ("exit_i%d"), 4); - gfc_symbol *exsym = gfc_get_intrinsic_sub_symbol (name); - tree tmp = gfc_get_symbol_decl (exsym); - return build_call_expr_loc (input_location, tmp, 1, integer_zero_node); - } + return trans_exit (); } /* Translate the SYNC TEAM statement. */ @@ -836,28 +896,25 @@ gfc_trans_sync_team (gfc_code *code) { if (flag_coarray == GFC_FCOARRAY_LIB) { - gfc_se argse; - tree team_type, tmp; + gfc_se se; + tree team_type, stat, errmsg, errmsg_len, tmp; - gfc_init_se (&argse, NULL); - gfc_conv_expr_val (&argse, code->expr1); - team_type = gfc_build_addr_expr (ppvoid_type_node, argse.expr); + gfc_init_se (&se, NULL); - tmp = build_call_expr_loc (input_location, - gfor_fndecl_caf_sync_team, 2, - team_type, - integer_zero_node); - gfc_add_expr_to_block (&argse.pre, tmp); - gfc_add_block_to_block (&argse.pre, &argse.post); - return gfc_finish_block (&argse.pre); + gfc_conv_expr_val (&se, code->expr1); + team_type = se.expr; + + gfc_trans_sync_stat (&code->ext.sync_stat, &se, &stat, &errmsg, + &errmsg_len); + + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_sync_team, 4, + team_type, stat, errmsg, errmsg_len); + gfc_add_expr_to_block (&se.pre, tmp); + gfc_add_block_to_block (&se.pre, &se.post); + return gfc_finish_block (&se.pre); } else - { - const char *name = gfc_get_string (PREFIX ("exit_i%d"), 4); - gfc_symbol *exsym = gfc_get_intrinsic_sub_symbol (name); - tree tmp = gfc_get_symbol_decl (exsym); - return build_call_expr_loc (input_location, tmp, 1, integer_zero_node); - } + return trans_exit (); } tree @@ -1280,8 +1337,7 @@ gfc_trans_sync (gfc_code *code, gfc_exec_op type) { tree cond2; tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_num_images, - 2, integer_zero_node, - build_int_cst (integer_type_node, -1)); + 2, null_pointer_node, null_pointer_node); cond = fold_build2_loc (input_location, GT_EXPR, logical_type_node, images2, tmp); cond2 = fold_build2_loc (input_location, LT_EXPR, logical_type_node, @@ -1609,35 +1665,41 @@ gfc_trans_arithmetic_if (gfc_code * code) /* Translate a CRITICAL block. */ + tree gfc_trans_critical (gfc_code *code) -{ - stmtblock_t block; - tree tmp, token = NULL_TREE; + { + stmtblock_t block; + tree tmp, token = NULL_TREE; + tree stat = NULL_TREE, errmsg, errmsg_len; - gfc_start_block (&block); + gfc_start_block (&block); - if (flag_coarray == GFC_FCOARRAY_LIB) - { - tree zero_size = build_zero_cst (size_type_node); - token = gfc_get_symbol_decl (code->resolved_sym); - token = GFC_TYPE_ARRAY_CAF_TOKEN (TREE_TYPE (token)); - tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_lock, 7, - token, zero_size, integer_one_node, - null_pointer_node, null_pointer_node, - null_pointer_node, zero_size); - gfc_add_expr_to_block (&block, tmp); + if (flag_coarray == GFC_FCOARRAY_LIB) + { + gfc_se se; - /* It guarantees memory consistency within the same segment */ - tmp = gfc_build_string_const (strlen ("memory")+1, "memory"), - tmp = build5_loc (input_location, ASM_EXPR, void_type_node, - gfc_build_string_const (1, ""), - NULL_TREE, NULL_TREE, - tree_cons (NULL_TREE, tmp, NULL_TREE), - NULL_TREE); - ASM_VOLATILE_P (tmp) = 1; + gfc_init_se (&se, NULL); + gfc_trans_sync_stat (&code->ext.sync_stat, &se, &stat, &errmsg, + &errmsg_len); + gfc_add_block_to_block (&block, &se.pre); - gfc_add_expr_to_block (&block, tmp); + token = gfc_get_symbol_decl (code->resolved_sym); + token = GFC_TYPE_ARRAY_CAF_TOKEN (TREE_TYPE (token)); + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_lock, 7, + token, integer_zero_node, integer_one_node, + null_pointer_node, stat, errmsg, errmsg_len); + gfc_add_expr_to_block (&block, tmp); + gfc_add_block_to_block (&block, &se.post); + + /* It guarantees memory consistency within the same segment. */ + tmp = gfc_build_string_const (strlen ("memory") + 1, "memory"), + tmp = build5_loc (input_location, ASM_EXPR, void_type_node, + gfc_build_string_const (1, ""), NULL_TREE, NULL_TREE, + tree_cons (NULL_TREE, tmp, NULL_TREE), NULL_TREE); + ASM_VOLATILE_P (tmp) = 1; + + gfc_add_expr_to_block (&block, tmp); } tmp = gfc_trans_code (code->block->next); @@ -1645,11 +1707,19 @@ gfc_trans_critical (gfc_code *code) if (flag_coarray == GFC_FCOARRAY_LIB) { - tree zero_size = build_zero_cst (size_type_node); - tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_unlock, 6, - token, zero_size, integer_one_node, - null_pointer_node, null_pointer_node, - zero_size); + /* END CRITICAL does not accept STAT or ERRMSG arguments. + * If STAT= is specified for CRITICAL, pass a stat argument to + * _gfortran_caf_lock_unlock to prevent termination in the event of an + * error, but ignore any value assigned to it. + */ + tmp = build_call_expr_loc ( + input_location, gfor_fndecl_caf_unlock, 6, token, integer_zero_node, + integer_one_node, + stat != NULL_TREE + ? gfc_build_addr_expr (NULL, + gfc_create_var (integer_type_node, "stat")) + : null_pointer_node, + null_pointer_node, integer_zero_node); gfc_add_expr_to_block (&block, tmp); /* It guarantees memory consistency within the same segment */ @@ -1981,11 +2051,35 @@ trans_associate_var (gfc_symbol *sym, gfc_wrapped_block *block) GFC_DECL_PTR_ARRAY_P (sym->backend_decl) = 1; } - if (sym->attr.codimension && !sym->attr.dimension) + if (sym->attr.codimension) se.want_coarray = 1; gfc_conv_expr_descriptor (&se, e); + if (flag_coarray == GFC_FCOARRAY_LIB && sym->attr.codimension) + { + tree token = gfc_conv_descriptor_token (se.expr), + size + = sym->attr.dimension + ? fold_build2 (MULT_EXPR, gfc_array_index_type, + gfc_conv_descriptor_size (se.expr, e->rank), + gfc_conv_descriptor_span_get (se.expr)) + : gfc_conv_descriptor_span_get (se.expr); + /* Create a new token, because in the token the modified descriptor + is stored. The modified descriptor is needed for accesses on the + remote image. In the scalar case, the base address needs to be + associated correctly, which also needs a new token. + The token is freed automatically be the end team statement. */ + gfc_add_expr_to_block ( + &se.pre, + build_call_expr_loc ( + input_location, gfor_fndecl_caf_register, 7, size, + build_int_cst (integer_type_node, GFC_CAF_COARRAY_MAP_EXISTING), + gfc_build_addr_expr (pvoid_type_node, token), + gfc_build_addr_expr (NULL_TREE, se.expr), null_pointer_node, + null_pointer_node, integer_zero_node)); + } + if (sym->ts.type == BT_CHARACTER && !sym->attr.select_type_temporary && sym->ts.u.cl->backend_decl diff --git a/gcc/fortran/trans-stmt.h b/gcc/fortran/trans-stmt.h index 67b1970..8fbcdcb 100644 --- a/gcc/fortran/trans-stmt.h +++ b/gcc/fortran/trans-stmt.h @@ -58,6 +58,7 @@ tree gfc_trans_sync (gfc_code *, gfc_exec_op); tree gfc_trans_lock_unlock (gfc_code *, gfc_exec_op); tree gfc_trans_event_post_wait (gfc_code *, gfc_exec_op); tree gfc_trans_fail_image (gfc_code *); +void gfc_trans_sync_stat (struct sync_stat *, gfc_se *, tree *, tree *, tree *); tree gfc_trans_forall (gfc_code *); tree gfc_trans_form_team (gfc_code *); tree gfc_trans_change_team (gfc_code *); diff --git a/gcc/fortran/trans.cc b/gcc/fortran/trans.cc index b03dcc1..fdeb1e8 100644 --- a/gcc/fortran/trans.cc +++ b/gcc/fortran/trans.cc @@ -1795,11 +1795,11 @@ gfc_finalize_tree_expr (gfc_se *se, gfc_symbol *derived, analyzed and set by this routine, and -2 to indicate that a non-coarray is to be deallocated. */ tree -gfc_deallocate_with_status (tree pointer, tree status, tree errmsg, - tree errlen, tree label_finish, - bool can_fail, gfc_expr* expr, +gfc_deallocate_with_status (tree pointer, tree status, tree errmsg, tree errlen, + tree label_finish, bool can_fail, gfc_expr *expr, int coarray_dealloc_mode, tree class_container, - tree add_when_allocated, tree caf_token) + tree add_when_allocated, tree caf_token, + bool unalloc_ok) { stmtblock_t null, non_null; tree cond, tmp, error; @@ -1891,7 +1891,7 @@ gfc_deallocate_with_status (tree pointer, tree status, tree errmsg, tmp = fold_build2_loc (input_location, MODIFY_EXPR, status_type, fold_build1_loc (input_location, INDIRECT_REF, status_type, status), - build_int_cst (status_type, 1)); + build_int_cst (status_type, unalloc_ok ? 0 : 1)); error = fold_build3_loc (input_location, COND_EXPR, void_type_node, cond2, tmp, error); } @@ -1975,10 +1975,10 @@ gfc_deallocate_with_status (tree pointer, tree status, tree errmsg, token = gfc_build_addr_expr (NULL_TREE, token); gcc_assert (caf_dereg_type > GFC_CAF_COARRAY_ANALYZE); - tmp = build_call_expr_loc (input_location, - gfor_fndecl_caf_deregister, 5, - token, build_int_cst (integer_type_node, - caf_dereg_type), + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_deregister, 5, + token, + build_int_cst (integer_type_node, + caf_dereg_type), pstat, errmsg, errlen); gfc_add_expr_to_block (&non_null, tmp); @@ -1990,7 +1990,7 @@ gfc_deallocate_with_status (tree pointer, tree status, tree errmsg, ASM_VOLATILE_P (tmp) = 1; gfc_add_expr_to_block (&non_null, tmp); - if (status != NULL_TREE) + if (status != NULL_TREE && !integer_zerop (status)) { tree stat = build_fold_indirect_ref_loc (input_location, status); tree nullify = fold_build2_loc (input_location, MODIFY_EXPR, @@ -2024,9 +2024,10 @@ gfc_deallocate_with_status (tree pointer, tree status, tree errmsg, tree gfc_deallocate_scalar_with_status (tree pointer, tree status, tree label_finish, - bool can_fail, gfc_expr* expr, + bool can_fail, gfc_expr *expr, gfc_typespec ts, tree class_container, - bool coarray) + bool coarray, bool unalloc_ok, tree errmsg, + tree errmsg_len) { stmtblock_t null, non_null; tree cond, tmp, error; @@ -2069,7 +2070,7 @@ gfc_deallocate_scalar_with_status (tree pointer, tree status, tree label_finish, tmp = fold_build2_loc (input_location, MODIFY_EXPR, status_type, fold_build1_loc (input_location, INDIRECT_REF, status_type, status), - build_int_cst (status_type, 1)); + build_int_cst (status_type, unalloc_ok ? 0 : 1)); error = fold_build3_loc (input_location, COND_EXPR, void_type_node, cond2, tmp, error); } @@ -2134,7 +2135,8 @@ gfc_deallocate_scalar_with_status (tree pointer, tree status, tree label_finish, else { tree token; - tree pstat = null_pointer_node; + tree pstat = null_pointer_node, perrmsg = null_pointer_node, + perrlen = size_zero_node; gfc_se se; gfc_init_se (&se, NULL); @@ -2147,11 +2149,17 @@ gfc_deallocate_scalar_with_status (tree pointer, tree status, tree label_finish, pstat = status; } - tmp = build_call_expr_loc (input_location, - gfor_fndecl_caf_deregister, 5, - token, build_int_cst (integer_type_node, - caf_dereg_type), - pstat, null_pointer_node, integer_zero_node); + if (errmsg != NULL_TREE) + { + perrmsg = errmsg; + perrlen = errmsg_len; + } + + tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_deregister, 5, + token, + build_int_cst (integer_type_node, + caf_dereg_type), + pstat, perrmsg, perrlen); gfc_add_expr_to_block (&non_null, tmp); /* It guarantees memory consistency within the same segment. */ diff --git a/gcc/fortran/trans.h b/gcc/fortran/trans.h index ae7be9f..461b0cd 100644 --- a/gcc/fortran/trans.h +++ b/gcc/fortran/trans.h @@ -139,10 +139,10 @@ enum gfc_coarray_regtype GFC_CAF_EVENT_STATIC, GFC_CAF_EVENT_ALLOC, GFC_CAF_COARRAY_ALLOC_REGISTER_ONLY, - GFC_CAF_COARRAY_ALLOC_ALLOCATE_ONLY + GFC_CAF_COARRAY_ALLOC_ALLOCATE_ONLY, + GFC_CAF_COARRAY_MAP_EXISTING }; - /* Describes the action to take on _caf_deregister. Keep in sync with gcc/fortran/trans.h. The negative values are not valid for the library and are used by the drivers for building the correct call. */ @@ -774,12 +774,13 @@ void gfc_allocate_using_malloc (stmtblock_t *, tree, tree, tree, tree = NULL_TREE); /* Generate code to deallocate an array. */ -tree gfc_deallocate_with_status (tree, tree, tree, tree, tree, bool, - gfc_expr *, int, tree = NULL_TREE, - tree a = NULL_TREE, tree c = NULL_TREE); -tree gfc_deallocate_scalar_with_status (tree, tree, tree, bool, gfc_expr*, +tree gfc_deallocate_with_status (tree, tree, tree, tree, tree, bool, gfc_expr *, + int, tree = NULL_TREE, tree a = NULL_TREE, + tree c = NULL_TREE, bool u = false); +tree gfc_deallocate_scalar_with_status (tree, tree, tree, bool, gfc_expr *, gfc_typespec, tree = NULL_TREE, - bool c = false); + bool c = false, bool u = false, + tree = NULL_TREE, tree = NULL_TREE); /* Generate code to call realloc(). */ tree gfc_call_realloc (stmtblock_t *, tree, tree); diff --git a/gcc/ipa-cp.cc b/gcc/ipa-cp.cc index 806c2bd..b4b9699 100644 --- a/gcc/ipa-cp.cc +++ b/gcc/ipa-cp.cc @@ -147,10 +147,6 @@ object_allocator<ipcp_value_source<tree> > ipcp_sources_pool object_allocator<ipcp_agg_lattice> ipcp_agg_lattice_pool ("IPA_CP aggregate lattices"); -/* Base count to use in heuristics when using profile feedback. */ - -static profile_count base_count; - /* Original overall size of the program. */ static long overall_size, orig_overall_size; @@ -505,14 +501,16 @@ struct caller_statistics profile_count count_sum; /* Sum of all frequencies for all calls. */ sreal freq_sum; - /* Number of calls and hot calls respectively. */ - int n_calls, n_hot_calls; + /* Number of calls and calls considered interesting respectively. */ + int n_calls, n_interesting_calls; /* If itself is set up, also count the number of non-self-recursive calls. */ int n_nonrec_calls; /* If non-NULL, this is the node itself and calls from it should have their counts included in rec_count_sum and not count_sum. */ cgraph_node *itself; + /* True if there is a caller that has no IPA profile. */ + bool called_without_ipa_profile; }; /* Initialize fields of STAT to zeroes and optionally set it up so that edges @@ -524,10 +522,39 @@ init_caller_stats (caller_statistics *stats, cgraph_node *itself = NULL) stats->rec_count_sum = profile_count::zero (); stats->count_sum = profile_count::zero (); stats->n_calls = 0; - stats->n_hot_calls = 0; + stats->n_interesting_calls = 0; stats->n_nonrec_calls = 0; stats->freq_sum = 0; stats->itself = itself; + stats->called_without_ipa_profile = false; +} + +/* We want to propagate across edges that may be executed, however + we do not want to check maybe_hot, since call itself may be cold + while calee contains some heavy loop which makes propagation still + relevant. + + In particular, even edge called once may lead to significant + improvement. */ + +static bool +cs_interesting_for_ipcp_p (cgraph_edge *e) +{ + /* If profile says the edge is executed, we want to optimize. */ + if (e->count.ipa ().nonzero_p ()) + return true; + /* If local (possibly guseed or adjusted 0 profile) claims edge is + not executed, do not propagate. */ + if (!e->count.nonzero_p ()) + return false; + /* If IPA profile says edge is executed zero times, but zero + is quality is ADJUSTED, still consider it for cloning in + case we have partial training. */ + if (e->count.ipa ().initialized_p () + && opt_for_fn (e->callee->decl,flag_profile_partial_training) + && e->count.nonzero_p ()) + return false; + return true; } /* Worker callback of cgraph_for_node_and_aliases accumulating statistics of @@ -553,13 +580,18 @@ gather_caller_stats (struct cgraph_node *node, void *data) else stats->count_sum += cs->count.ipa (); } + else + stats->called_without_ipa_profile = true; stats->freq_sum += cs->sreal_frequency (); stats->n_calls++; if (stats->itself && stats->itself != cs->caller) stats->n_nonrec_calls++; - if (cs->maybe_hot_p ()) - stats->n_hot_calls ++; + /* If profile known to be zero, we do not want to clone for performance. + However if call is cold, the called function may still contain + important hot loops. */ + if (cs_interesting_for_ipcp_p (cs)) + stats->n_interesting_calls++; } return false; @@ -602,26 +634,11 @@ ipcp_cloning_candidate_p (struct cgraph_node *node) node->dump_name ()); return true; } - - /* When profile is available and function is hot, propagate into it even if - calls seems cold; constant propagation can improve function's speed - significantly. */ - if (stats.count_sum > profile_count::zero () - && node->count.ipa ().initialized_p ()) - { - if (stats.count_sum > node->count.ipa ().apply_scale (90, 100)) - { - if (dump_file) - fprintf (dump_file, "Considering %s for cloning; " - "usually called directly.\n", - node->dump_name ()); - return true; - } - } - if (!stats.n_hot_calls) + if (!stats.n_interesting_calls) { if (dump_file) - fprintf (dump_file, "Not considering %s for cloning; no hot calls.\n", + fprintf (dump_file, "Not considering %s for cloning; " + "no calls considered interesting by profile.\n", node->dump_name ()); return false; } @@ -3369,24 +3386,29 @@ incorporate_penalties (cgraph_node *node, ipa_node_params *info, static bool good_cloning_opportunity_p (struct cgraph_node *node, sreal time_benefit, sreal freq_sum, profile_count count_sum, - int size_cost) + int size_cost, bool called_without_ipa_profile) { + gcc_assert (count_sum.ipa () == count_sum); if (time_benefit == 0 || !opt_for_fn (node->decl, flag_ipa_cp_clone) - || node->optimize_for_size_p ()) + || node->optimize_for_size_p () + /* If there is no call which was executed in profiling or where + profile is missing, we do not want to clone. */ + || (!called_without_ipa_profile && !count_sum.nonzero_p ())) return false; gcc_assert (size_cost > 0); ipa_node_params *info = ipa_node_params_sum->get (node); int eval_threshold = opt_for_fn (node->decl, param_ipa_cp_eval_threshold); + /* If we know the execution IPA execution counts, we can estimate overall + speedup of the program. */ if (count_sum.nonzero_p ()) { - gcc_assert (base_count.nonzero_p ()); - sreal factor = count_sum.probability_in (base_count).to_sreal (); - sreal evaluation = (time_benefit * factor) / size_cost; + profile_count saved_time = count_sum * time_benefit; + sreal evaluation = saved_time.to_sreal_scale (profile_count::one ()) + / size_cost; evaluation = incorporate_penalties (node, info, evaluation); - evaluation *= 1000; if (dump_file && (dump_flags & TDF_DETAILS)) { @@ -3394,33 +3416,46 @@ good_cloning_opportunity_p (struct cgraph_node *node, sreal time_benefit, "size: %i, count_sum: ", time_benefit.to_double (), size_cost); count_sum.dump (dump_file); + fprintf (dump_file, ", overall time saved: "); + saved_time.dump (dump_file); fprintf (dump_file, "%s%s) -> evaluation: %.2f, threshold: %i\n", info->node_within_scc ? (info->node_is_self_scc ? ", self_scc" : ", scc") : "", info->node_calling_single_call ? ", single_call" : "", evaluation.to_double (), eval_threshold); } - - return evaluation.to_int () >= eval_threshold; + gcc_checking_assert (saved_time == saved_time.ipa ()); + if (!maybe_hot_count_p (NULL, saved_time)) + { + if (dump_file && (dump_flags & TDF_DETAILS)) + fprintf (dump_file, " not cloning: time saved is not hot\n"); + } + /* Evaulation approximately corresponds to time saved per instruction + introduced. This is likely almost always going to be true, since we + already checked that time saved is large enough to be considered + hot. */ + else if (evaluation.to_int () >= eval_threshold) + return true; + /* If all call sites have profile known; we know we do not want t clone. + If there are calls with unknown profile; try local heuristics. */ + if (!called_without_ipa_profile) + return false; } - else - { - sreal evaluation = (time_benefit * freq_sum) / size_cost; - evaluation = incorporate_penalties (node, info, evaluation); - evaluation *= 1000; + sreal evaluation = (time_benefit * freq_sum) / size_cost; + evaluation = incorporate_penalties (node, info, evaluation); + evaluation *= 1000; - if (dump_file && (dump_flags & TDF_DETAILS)) - fprintf (dump_file, " good_cloning_opportunity_p (time: %g, " - "size: %i, freq_sum: %g%s%s) -> evaluation: %.2f, " - "threshold: %i\n", - time_benefit.to_double (), size_cost, freq_sum.to_double (), - info->node_within_scc - ? (info->node_is_self_scc ? ", self_scc" : ", scc") : "", - info->node_calling_single_call ? ", single_call" : "", - evaluation.to_double (), eval_threshold); + if (dump_file && (dump_flags & TDF_DETAILS)) + fprintf (dump_file, " good_cloning_opportunity_p (time: %g, " + "size: %i, freq_sum: %g%s%s) -> evaluation: %.2f, " + "threshold: %i\n", + time_benefit.to_double (), size_cost, freq_sum.to_double (), + info->node_within_scc + ? (info->node_is_self_scc ? ", self_scc" : ", scc") : "", + info->node_calling_single_call ? ", single_call" : "", + evaluation.to_double (), eval_threshold); - return evaluation.to_int () >= eval_threshold; - } + return evaluation.to_int () >= eval_threshold; } /* Grow vectors in AVALS and fill them with information about values of @@ -3613,7 +3648,8 @@ estimate_local_effects (struct cgraph_node *node) "known contexts, code not going to grow.\n"); } else if (good_cloning_opportunity_p (node, time, stats.freq_sum, - stats.count_sum, size)) + stats.count_sum, size, + stats.called_without_ipa_profile)) { if (size + overall_size <= get_max_overall_size (node)) { @@ -3979,7 +4015,7 @@ value_topo_info<valtype>::propagate_effects () processed_srcvals.empty (); for (src = val->sources; src; src = src->next) if (src->val - && src->cs->maybe_hot_p ()) + && cs_interesting_for_ipcp_p (src->cs)) { if (!processed_srcvals.add (src->val)) { @@ -4024,21 +4060,6 @@ value_topo_info<valtype>::propagate_effects () } } -/* Callback for qsort to sort counts of all edges. */ - -static int -compare_edge_profile_counts (const void *a, const void *b) -{ - const profile_count *cnt1 = (const profile_count *) a; - const profile_count *cnt2 = (const profile_count *) b; - - if (*cnt1 < *cnt2) - return 1; - if (*cnt1 > *cnt2) - return -1; - return 0; -} - /* Propagate constants, polymorphic contexts and their effects from the summaries interprocedurally. */ @@ -4051,10 +4072,6 @@ ipcp_propagate_stage (class ipa_topo_info *topo) if (dump_file) fprintf (dump_file, "\n Propagating constants:\n\n"); - base_count = profile_count::uninitialized (); - - bool compute_count_base = false; - unsigned base_count_pos_percent = 0; FOR_EACH_DEFINED_FUNCTION (node) { if (node->has_gimple_body_p () @@ -4071,57 +4088,8 @@ ipcp_propagate_stage (class ipa_topo_info *topo) ipa_size_summary *s = ipa_size_summaries->get (node); if (node->definition && !node->alias && s != NULL) overall_size += s->self_size; - if (node->count.ipa ().initialized_p ()) - { - compute_count_base = true; - unsigned pos_percent = opt_for_fn (node->decl, - param_ipa_cp_profile_count_base); - base_count_pos_percent = MAX (base_count_pos_percent, pos_percent); - } } - if (compute_count_base) - { - auto_vec<profile_count> all_edge_counts; - all_edge_counts.reserve_exact (symtab->edges_count); - FOR_EACH_DEFINED_FUNCTION (node) - for (cgraph_edge *cs = node->callees; cs; cs = cs->next_callee) - { - profile_count count = cs->count.ipa (); - if (!count.nonzero_p ()) - continue; - - enum availability avail; - cgraph_node *tgt - = cs->callee->function_or_virtual_thunk_symbol (&avail); - ipa_node_params *info = ipa_node_params_sum->get (tgt); - if (info && info->versionable) - all_edge_counts.quick_push (count); - } - - if (!all_edge_counts.is_empty ()) - { - gcc_assert (base_count_pos_percent <= 100); - all_edge_counts.qsort (compare_edge_profile_counts); - - unsigned base_count_pos - = ((all_edge_counts.length () * (base_count_pos_percent)) / 100); - base_count = all_edge_counts[base_count_pos]; - - if (dump_file) - { - fprintf (dump_file, "\nSelected base_count from %u edges at " - "position %u, arriving at: ", all_edge_counts.length (), - base_count_pos); - base_count.dump (dump_file); - fprintf (dump_file, "\n"); - } - } - else if (dump_file) - fprintf (dump_file, "\nNo candidates with non-zero call count found, " - "continuing as if without profile feedback.\n"); - } - orig_overall_size = overall_size; if (dump_file) @@ -4383,15 +4351,17 @@ static bool get_info_about_necessary_edges (ipcp_value<valtype> *val, cgraph_node *dest, sreal *freq_sum, int *caller_count, profile_count *rec_count_sum, - profile_count *nonrec_count_sum) + profile_count *nonrec_count_sum, + bool *called_without_ipa_profile) { ipcp_value_source<valtype> *src; sreal freq = 0; int count = 0; profile_count rec_cnt = profile_count::zero (); profile_count nonrec_cnt = profile_count::zero (); - bool hot = false; + bool interesting = false; bool non_self_recursive = false; + *called_without_ipa_profile = false; for (src = val->sources; src; src = src->next) { @@ -4402,15 +4372,19 @@ get_info_about_necessary_edges (ipcp_value<valtype> *val, cgraph_node *dest, { count++; freq += cs->sreal_frequency (); - hot |= cs->maybe_hot_p (); + interesting |= cs_interesting_for_ipcp_p (cs); if (cs->caller != dest) { non_self_recursive = true; if (cs->count.ipa ().initialized_p ()) rec_cnt += cs->count.ipa (); + else + *called_without_ipa_profile = true; } else if (cs->count.ipa ().initialized_p ()) nonrec_cnt += cs->count.ipa (); + else + *called_without_ipa_profile = true; } cs = get_next_cgraph_edge_clone (cs); } @@ -4426,19 +4400,7 @@ get_info_about_necessary_edges (ipcp_value<valtype> *val, cgraph_node *dest, *rec_count_sum = rec_cnt; *nonrec_count_sum = nonrec_cnt; - if (!hot && ipa_node_params_sum->get (dest)->node_within_scc) - { - struct cgraph_edge *cs; - - /* Cold non-SCC source edge could trigger hot recursive execution of - function. Consider the case as hot and rely on following cost model - computation to further select right one. */ - for (cs = dest->callers; cs; cs = cs->next_caller) - if (cs->caller == dest && cs->maybe_hot_p ()) - return true; - } - - return hot; + return interesting; } /* Given a NODE, and a set of its CALLERS, try to adjust order of the callers @@ -4677,7 +4639,7 @@ update_counts_for_self_gen_clones (cgraph_node *orig_node, const vec<cgraph_node *> &self_gen_clones) { profile_count redist_sum = orig_node->count.ipa (); - if (!(redist_sum > profile_count::zero ())) + if (!redist_sum.nonzero_p ()) return; if (dump_file) @@ -4748,7 +4710,7 @@ update_counts_for_self_gen_clones (cgraph_node *orig_node, it. */ for (cgraph_node *n : self_gen_clones) { - if (!(n->count.ipa () > profile_count::zero ())) + if (!n->count.ipa ().nonzero_p ()) continue; desc_incoming_count_struct desc; @@ -4794,7 +4756,7 @@ update_profiling_info (struct cgraph_node *orig_node, profile_count new_sum; profile_count remainder, orig_node_count = orig_node->count.ipa (); - if (!(orig_node_count > profile_count::zero ())) + if (!orig_node_count.nonzero_p ()) return; if (dump_file) @@ -4958,7 +4920,7 @@ update_specialized_profile (struct cgraph_node *new_node, orig_node_count.dump (dump_file); fprintf (dump_file, "\n"); } - if (!(orig_node_count > profile_count::zero ())) + if (!orig_node_count.nonzero_p ()) return; new_node_count = new_node->count; @@ -5928,6 +5890,7 @@ decide_about_value (struct cgraph_node *node, int index, HOST_WIDE_INT offset, sreal freq_sum; profile_count count_sum, rec_count_sum; vec<cgraph_edge *> callers; + bool called_without_ipa_profile; if (val->spec_node) { @@ -5943,7 +5906,8 @@ decide_about_value (struct cgraph_node *node, int index, HOST_WIDE_INT offset, return false; } else if (!get_info_about_necessary_edges (val, node, &freq_sum, &caller_count, - &rec_count_sum, &count_sum)) + &rec_count_sum, &count_sum, + &called_without_ipa_profile)) return false; if (!dbg_cnt (ipa_cp_values)) @@ -5980,9 +5944,11 @@ decide_about_value (struct cgraph_node *node, int index, HOST_WIDE_INT offset, if (!good_cloning_opportunity_p (node, val->local_time_benefit, freq_sum, count_sum, - val->local_size_cost) + val->local_size_cost, + called_without_ipa_profile) && !good_cloning_opportunity_p (node, val->prop_time_benefit, - freq_sum, count_sum, val->prop_size_cost)) + freq_sum, count_sum, val->prop_size_cost, + called_without_ipa_profile)) return false; if (dump_file) @@ -6564,7 +6530,6 @@ make_pass_ipa_cp (gcc::context *ctxt) void ipa_cp_cc_finalize (void) { - base_count = profile_count::uninitialized (); overall_size = 0; orig_overall_size = 0; ipcp_free_transformation_sum (); diff --git a/gcc/m2/gm2-compiler/M2Check.mod b/gcc/m2/gm2-compiler/M2Check.mod index 528c51d..d86ef8e 100644 --- a/gcc/m2/gm2-compiler/M2Check.mod +++ b/gcc/m2/gm2-compiler/M2Check.mod @@ -803,7 +803,12 @@ BEGIN THEN typeRight := GetDType (right) ; typeLeft := GetDType (left) ; - RETURN doCheckPair (result, tinfo, typeLeft, typeRight) + IF IsZRCType (typeLeft) AND IsUnbounded (typeRight) + THEN + RETURN false + ELSE + RETURN doCheckPair (result, tinfo, typeLeft, typeRight) + END END ; RETURN result END checkConstMeta ; @@ -868,7 +873,19 @@ END checkSubrangeTypeEquivalence ; (* - isZRC - + IsZRCType - return TRUE if type is a ZType, RType or a CType. +*) + +PROCEDURE IsZRCType (type: CARDINAL) : BOOLEAN ; +BEGIN + RETURN (type = CType) OR (type = ZType) OR (type = RType) +END IsZRCType ; + + +(* + isZRC - return TRUE if zrc is a ZType, RType or a CType + and sym is either a complex type when zrc = CType + or is not a composite type when zrc is a RType or ZType. *) PROCEDURE isZRC (zrc, sym: CARDINAL) : BOOLEAN ; diff --git a/gcc/m2/gm2-compiler/M2Quads.mod b/gcc/m2/gm2-compiler/M2Quads.mod index 9bb8c4d..4022657 100644 --- a/gcc/m2/gm2-compiler/M2Quads.mod +++ b/gcc/m2/gm2-compiler/M2Quads.mod @@ -69,6 +69,7 @@ FROM SymbolTable IMPORT ModeOfAddr, GetMode, PutMode, GetSymName, IsUnknown, GetArraySubscript, GetDimension, GetParam, GetNth, GetNthParamAny, + GetNthParamAnyClosest, GetFirstUsed, GetDeclaredMod, GetQuads, GetReadQuads, GetWriteQuads, GetWriteLimitQuads, GetReadLimitQuads, @@ -5676,7 +5677,8 @@ BEGIN WHILE i<=ParamTotal DO IF i <= NoOfParamAny (Proc) THEN - FormalI := GetParam(Proc, i) ; + (* FormalI := GetParam(Proc, i) ; *) + FormalI := GetNthParamAnyClosest (Proc, i, GetCurrentModule ()) ; IF CompilerDebugging THEN n1 := GetSymName(FormalI) ; @@ -5801,7 +5803,7 @@ BEGIN MetaError3 ('parameter {%3n} in {%1dD} causes a mismatch it was declared as a {%2d}', call, GetNth (call, i), i) END ; BuildRange (InitTypesParameterCheck (tokno, CheckedProcedure, i, - GetParam (CheckedProcedure, i), + GetNthParamAnyClosest (CheckedProcedure, i, GetCurrentModule ()), GetParam (ProcType, i), ParamCheckId)) ; INC(i) END @@ -6150,7 +6152,7 @@ BEGIN MetaErrorStringT2 (tokpos, Msg, ProcedureSym, ParameterNo) ; IF NoOfParamAny (ProcedureSym) >= ParameterNo THEN - FormalParam := GetNthParamAny (ProcedureSym, ParameterNo) ; + FormalParam := GetNthParamAnyClosest (ProcedureSym, ParameterNo, GetCurrentModule ()) ; IF IsUnboundedParamAny (ProcedureSym, ParameterNo) THEN MetaErrorT2 (GetVarDeclFullTok (FormalParam), 'formal parameter {%1ad} has an open array type {%2tad}', @@ -6205,7 +6207,7 @@ BEGIN MetaErrorStringT2 (tokpos, Msg, ProcedureSym, ParameterNo) ; IF NoOfParamAny (ProcedureSym) >= ParameterNo THEN - FormalParam := GetNthParamAny (ProcedureSym, ParameterNo) ; + FormalParam := GetNthParamAnyClosest (ProcedureSym, ParameterNo, GetCurrentModule ()) ; IF IsUnboundedParamAny (ProcedureSym, ParameterNo) THEN MetaErrorT2 (GetVarDeclFullTok (FormalParam), '{%W}formal parameter {%1ad} has an open array type {%2tad}', diff --git a/gcc/m2/gm2-compiler/M2Range.mod b/gcc/m2/gm2-compiler/M2Range.mod index 2a5bfab..8e3943a 100644 --- a/gcc/m2/gm2-compiler/M2Range.mod +++ b/gcc/m2/gm2-compiler/M2Range.mod @@ -154,6 +154,34 @@ TYPE VAR TopOfRange: CARDINAL ; RangeIndex: Index ; + BreakRange: CARDINAL ; + + +PROCEDURE gdbhook ; +END gdbhook ; + + +(* + BreakWhenRangeCreated - to be called interactively by gdb. +*) + +PROCEDURE BreakWhenRangeCreated (r: CARDINAL) ; +BEGIN + BreakRange := r +END BreakWhenRangeCreated ; + + +(* + CheckBreak - if sym = BreakRange then call gdbhook. +*) + +PROCEDURE CheckBreak (r: CARDINAL) ; +BEGIN + IF BreakRange = r + THEN + gdbhook + END +END CheckBreak ; (* @@ -302,6 +330,7 @@ BEGIN THEN InternalError ('out of memory error') ELSE + CheckBreak (r) ; WITH p^ DO type := none ; des := NulSym ; @@ -3746,7 +3775,19 @@ END WriteRangeCheck ; PROCEDURE Init ; BEGIN TopOfRange := 0 ; - RangeIndex := InitIndex(1) + RangeIndex := InitIndex(1) ; + BreakWhenRangeCreated (0) ; (* Disable the intereactive range watch. *) + (* To examine the range when it is created run cc1gm2 from gdb + and set a break point on gdbhook. + (gdb) break gdbhook + (gdb) run + Now below interactively call BreakWhenRangeCreated with the symbol + under investigation. *) + gdbhook ; + (* Now is the time to interactively call gdb, for example: + (gdb) print BreakWhenRangeCreated (1234) + (gdb) cont + and you will arrive at gdbhook when this symbol is created. *) END Init ; diff --git a/gcc/m2/gm2-compiler/SymbolTable.def b/gcc/m2/gm2-compiler/SymbolTable.def index 85a3672..2a9865a 100644 --- a/gcc/m2/gm2-compiler/SymbolTable.def +++ b/gcc/m2/gm2-compiler/SymbolTable.def @@ -3478,4 +3478,20 @@ PROCEDURE UsesOptArgAny (Sym: CARDINAL) : BOOLEAN ; PROCEDURE GetProcedureKindDesc (kind: ProcedureKind) : String ; +(* + GetNthParamAnyClosest - returns the nth parameter from the order + proper procedure, forward declaration + or definition module procedure. + It chooses the parameter which is closest + in source terms to currentmodule. + The same module will return using the order + proper procedure, forward procedure, definition module. + Whereas an imported procedure will choose from + DefProcedure, ProperProcedure, ForwardProcedure. +*) + +PROCEDURE GetNthParamAnyClosest (sym: CARDINAL; ParamNo: CARDINAL; + currentmodule: CARDINAL) : CARDINAL ; + + END SymbolTable. diff --git a/gcc/m2/gm2-compiler/SymbolTable.mod b/gcc/m2/gm2-compiler/SymbolTable.mod index 826d2d3..551bbec 100644 --- a/gcc/m2/gm2-compiler/SymbolTable.mod +++ b/gcc/m2/gm2-compiler/SymbolTable.mod @@ -122,8 +122,6 @@ CONST UnboundedAddressName = "_m2_contents" ; UnboundedHighName = "_m2_high_%d" ; - BreakSym = 203 ; - TYPE ProcAnyBoolean = PROCEDURE (CARDINAL, ProcedureKind) : BOOLEAN ; ProcAnyCardinal = PROCEDURE (CARDINAL, ProcedureKind) : CARDINAL ; @@ -930,6 +928,7 @@ VAR (* passes and reduce duplicate *) (* errors. *) ConstLitArray : Indexing.Index ; + BreakSym : CARDINAL ; (* Allows interactive debugging. *) (* @@ -1032,11 +1031,34 @@ END FinalSymbol ; (* - stop - a debugger convenience hook. + gdbhook - a debugger convenience hook. +*) + +PROCEDURE gdbhook ; +END gdbhook ; + + +(* + BreakWhenSymCreated - to be called interactively by gdb. *) -PROCEDURE stop ; -END stop ; +PROCEDURE BreakWhenSymCreated (sym: CARDINAL) ; +BEGIN + BreakSym := sym +END BreakWhenSymCreated ; + + +(* + CheckBreak - if sym = BreakSym then call gdbhook. +*) + +PROCEDURE CheckBreak (sym: CARDINAL) ; +BEGIN + IF sym = BreakSym + THEN + gdbhook + END +END CheckBreak ; (* @@ -1053,10 +1075,7 @@ BEGIN SymbolType := DummySym END ; PutIndice(Symbols, sym, pSym) ; - IF sym = BreakSym - THEN - stop - END ; + CheckBreak (sym) ; INC(FreeSymbol) END NewSym ; @@ -1660,6 +1679,18 @@ PROCEDURE Init ; VAR pCall: PtrToCallFrame ; BEGIN + BreakWhenSymCreated (NulSym) ; (* Disable the intereactive sym watch. *) + (* To examine the symbol table when a symbol is created run cc1gm2 from gdb + and set a break point on gdbhook. + (gdb) break gdbhook + (gdb) run + Now below interactively call BreakWhenSymCreated with the symbol + under investigation. *) + gdbhook ; + (* Now is the time to interactively call gdb, for example: + (gdb) print BreakWhenSymCreated (1234) + (gdb) cont + and you will arrive at gdbhook when this symbol is created. *) AnonymousName := 0 ; CurrentError := NIL ; InitTree (ConstLitPoolTree) ; @@ -3959,10 +3990,7 @@ VAR BEGIN tok := CheckTok (tok, 'procedure') ; Sym := DeclareSym(tok, ProcedureName) ; - IF Sym = BreakSym - THEN - stop - END ; + CheckBreak (Sym) ; IF NOT IsError(Sym) THEN pSym := GetPsym(Sym) ; @@ -6926,6 +6954,89 @@ END GetNthParamAny ; (* + GetNthParamChoice - returns the parameter definition from + sym:ParamNo:kind or NulSym. +*) + +PROCEDURE GetNthParamChoice (sym: CARDINAL; ParamNo: CARDINAL; + kind: ProcedureKind) : CARDINAL ; +BEGIN + IF GetProcedureParametersDefined (sym, kind) + THEN + RETURN GetNthParam (sym, kind, ParamNo) + ELSE + RETURN NulSym + END +END GetNthParamChoice ; + + +(* + GetNthParamOrdered - returns the parameter definition from list {a, b, c} + in order. + sym:ParamNo:{a,b,c} or NulSym. +*) + +PROCEDURE GetNthParamOrdered (sym: CARDINAL; ParamNo: CARDINAL; + a, b, c: ProcedureKind) : CARDINAL ; +VAR + param: CARDINAL ; +BEGIN + param := GetNthParamChoice (sym, ParamNo, a) ; + IF param = NulSym + THEN + param := GetNthParamChoice (sym, ParamNo, b) ; + IF param = NulSym + THEN + param := GetNthParamChoice (sym, ParamNo, c) + END + END ; + RETURN param +END GetNthParamOrdered ; + + +(* + GetNthParamAnyClosest - returns the nth parameter from the order + proper procedure, forward declaration + or definition module procedure. + It chooses the parameter which is closest + in source terms to currentmodule. + The same module will return using the order + proper procedure, forward procedure, definition module. + Whereas an imported procedure will choose from + DefProcedure, ProperProcedure, ForwardProcedure. +*) + +PROCEDURE GetNthParamAnyClosest (sym: CARDINAL; ParamNo: CARDINAL; + currentmodule: CARDINAL) : CARDINAL ; +BEGIN + IF GetOuterModuleScope (currentmodule) = GetOuterModuleScope (sym) + THEN + (* Same module. *) + RETURN GetNthParamOrdered (sym, ParamNo, + ProperProcedure, ForwardProcedure, DefProcedure) + ELSE + (* Procedure is imported. *) + RETURN GetNthParamOrdered (sym, ParamNo, + DefProcedure, ProperProcedure, ForwardProcedure) + END +END GetNthParamAnyClosest ; + + +(* + GetOuterModuleScope - returns the outer module symbol scope for sym. +*) + +PROCEDURE GetOuterModuleScope (sym: CARDINAL) : CARDINAL ; +BEGIN + WHILE NOT (IsDefImp (sym) OR + (IsModule (sym) AND (GetScope (sym) = NulSym))) DO + sym := GetScope (sym) + END ; + RETURN sym +END GetOuterModuleScope ; + + +(* The Following procedures fill in the symbol table with the symbol entities. *) diff --git a/gcc/m2/gm2-libs/FormatStrings.mod b/gcc/m2/gm2-libs/FormatStrings.mod index ec2985b..aea8da9 100644 --- a/gcc/m2/gm2-libs/FormatStrings.mod +++ b/gcc/m2/gm2-libs/FormatStrings.mod @@ -378,7 +378,7 @@ BEGIN THEN INC (afterperc) ; Cast (u, w) ; - in := ConCat (in, Slice (fmt, startpos, nextperc)) ; + in := Copy (fmt, in, startpos, nextperc) ; in := ConCat (in, CardinalToString (u, width, leader, 16, TRUE)) ; startpos := afterperc ; DSdbExit (NIL) ; @@ -387,7 +387,7 @@ BEGIN THEN INC (afterperc) ; Cast (u, w) ; - in := ConCat (in, Slice (fmt, startpos, nextperc)) ; + in := Copy (fmt, in, startpos, nextperc) ; in := ConCat (in, CardinalToString (u, width, leader, 10, FALSE)) ; startpos := afterperc ; DSdbExit (NIL) ; diff --git a/gcc/opts.cc b/gcc/opts.cc index 5e7b77d..ffcbdfe 100644 --- a/gcc/opts.cc +++ b/gcc/opts.cc @@ -1047,9 +1047,9 @@ validate_ipa_reorder_locality_lto_partition (struct gcc_options *opts, { static bool validated_p = false; - if (opts->x_flag_lto_partition != LTO_PARTITION_DEFAULT) + if (opts_set->x_flag_lto_partition) { - if (opts_set->x_flag_ipa_reorder_for_locality && !validated_p) + if (opts->x_flag_ipa_reorder_for_locality && !validated_p) error ("%<-fipa-reorder-for-locality%> is incompatible with" " an explicit %qs option", "-flto-partition"); } @@ -1269,8 +1269,6 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set, SET_OPTION_IF_UNSET (opts, opts_set, flag_reorder_functions, 1); validate_ipa_reorder_locality_lto_partition (opts, opts_set); - if (opts_set->x_flag_lto_partition != LTO_PARTITION_DEFAULT) - opts_set->x_flag_lto_partition = opts->x_flag_lto_partition = LTO_PARTITION_BALANCED; /* The -gsplit-dwarf option requires -ggnu-pubnames. */ if (opts->x_dwarf_split_debug_info) diff --git a/gcc/params.opt b/gcc/params.opt index a2b606f..ef19051 100644 --- a/gcc/params.opt +++ b/gcc/params.opt @@ -273,10 +273,6 @@ The size of translation unit that IPA-CP pass considers large. Common Joined UInteger Var(param_ipa_cp_value_list_size) Init(8) Param Optimization Maximum size of a list of values associated with each parameter for interprocedural constant propagation. --param=ipa-cp-profile-count-base= -Common Joined UInteger Var(param_ipa_cp_profile_count_base) Init(10) IntegerRange(0, 100) Param Optimization -When using profile feedback, use the edge at this percentage position in frequency histogram as the bases for IPA-CP heuristics. - -param=ipa-jump-function-lookups= Common Joined UInteger Var(param_ipa_jump_function_lookups) Init(8) Param Optimization Maximum number of statements visited during jump function offset discovery. diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot index 2eea928..16ab924 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: 2025-04-04 20:42+0000\n" +"POT-Creation-Date: 2025-04-23 19:24+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" @@ -241,47 +241,47 @@ msgstr "" msgid "error" msgstr "" -#: gcc.cc:856 gcc.cc:913 +#: gcc.cc:859 gcc.cc:916 msgid "-gz is not supported in this configuration" msgstr "" -#: gcc.cc:862 +#: gcc.cc:865 msgid "-gz=zstd is not supported in this configuration" msgstr "" -#: gcc.cc:1096 +#: gcc.cc:1099 msgid "-fuse-linker-plugin is not supported in this configuration" msgstr "" -#: gcc.cc:1112 +#: gcc.cc:1115 msgid "cannot specify -static with -fsanitize=address" msgstr "" -#: gcc.cc:1114 +#: gcc.cc:1117 msgid "cannot specify -static with -fsanitize=hwaddress" msgstr "" -#: gcc.cc:1116 +#: gcc.cc:1119 msgid "cannot specify -static with -fsanitize=thread" msgstr "" -#: gcc.cc:1138 +#: gcc.cc:1141 msgid "-fvtable-verify=std is not supported in this configuration" msgstr "" -#: gcc.cc:1140 +#: gcc.cc:1143 msgid "-fvtable-verify=preinit is not supported in this configuration" msgstr "" -#: gcc.cc:1283 ada/gcc-interface/lang-specs.h:37 +#: gcc.cc:1286 ada/gcc-interface/lang-specs.h:37 msgid "-pg and -fomit-frame-pointer are incompatible" msgstr "" -#: gcc.cc:1458 +#: gcc.cc:1461 msgid "GNU C no longer supports -traditional without -E" msgstr "" -#: gcc.cc:1467 +#: gcc.cc:1470 msgid "-E or -x required when input is from standard input" msgstr "" @@ -329,7 +329,7 @@ msgstr "" msgid "-force_flat_namespace not allowed with -dynamiclib" msgstr "" -#: config/darwin.h:216 config/darwin.h:671 +#: config/darwin.h:216 config/darwin.h:672 msgid "gsplit-dwarf is not supported on this platform" msgstr "" @@ -539,11 +539,11 @@ msgstr "" msgid "Warn about creation of array temporaries." msgstr "" -#: fortran/lang.opt:214 fortran/lang.opt:547 c-family/c.opt:1691 +#: fortran/lang.opt:214 fortran/lang.opt:547 c-family/c.opt:1692 #: config/alpha/alpha.opt:31 common.opt:691 common.opt:849 common.opt:1112 #: common.opt:1116 common.opt:1120 common.opt:1124 common.opt:1876 -#: common.opt:1979 common.opt:2156 common.opt:2160 common.opt:2471 -#: common.opt:2697 common.opt:3464 +#: common.opt:1979 common.opt:2161 common.opt:2165 common.opt:2479 +#: common.opt:2705 common.opt:3472 #, no-c-format msgid "Does nothing. Preserved for backward compatibility." msgstr "" @@ -938,7 +938,7 @@ msgstr "" msgid "-ffpe-summary=[...]\tPrint summary of floating point exceptions." msgstr "" -#: fortran/lang.opt:615 cobol/lang.opt:86 +#: fortran/lang.opt:615 cobol/lang.opt:82 #, no-c-format msgid "Assume that the source file is free form." msgstr "" @@ -1176,19 +1176,19 @@ msgstr "" msgid "Append underscores to externally visible names." msgstr "" -#: fortran/lang.opt:871 c-family/c.opt:1830 c-family/c.opt:1907 -#: c-family/c.opt:1915 c-family/c.opt:2246 config/xtensa/xtensa.opt:42 +#: fortran/lang.opt:871 c-family/c.opt:1831 c-family/c.opt:1908 +#: c-family/c.opt:1916 c-family/c.opt:2247 config/xtensa/xtensa.opt:42 #: config/pa/pa.opt:46 config/pa/pa.opt:78 config/arc/arc.opt:140 #: config/arc/arc.opt:296 config/arc/arc.opt:304 config/arc/arc.opt:308 #: config/arc/arc.opt:312 config/arc/arc.opt:317 config/arc/arc.opt:326 #: config/arc/arc.opt:405 common.opt:649 common.opt:1210 common.opt:1214 #: common.opt:1218 common.opt:1313 common.opt:1658 common.opt:1740 -#: common.opt:1839 common.opt:2108 common.opt:2251 common.opt:2305 -#: common.opt:2775 common.opt:2811 common.opt:2904 common.opt:2908 -#: common.opt:3017 common.opt:3152 common.opt:3160 common.opt:3168 -#: common.opt:3176 common.opt:3277 common.opt:3337 common.opt:3425 -#: common.opt:3605 common.opt:3609 common.opt:3613 common.opt:3617 -#: common.opt:3691 common.opt:3695 common.opt:3726 common.opt:3730 +#: common.opt:1839 common.opt:2109 common.opt:2256 common.opt:2313 +#: common.opt:2783 common.opt:2819 common.opt:2912 common.opt:2916 +#: common.opt:3025 common.opt:3160 common.opt:3168 common.opt:3176 +#: common.opt:3184 common.opt:3285 common.opt:3345 common.opt:3433 +#: common.opt:3613 common.opt:3617 common.opt:3621 common.opt:3625 +#: common.opt:3699 common.opt:3703 common.opt:3734 common.opt:3738 #, no-c-format msgid "Does nothing. Preserved for backward compatibility." msgstr "" @@ -1248,19 +1248,19 @@ msgstr "" msgid "Accept extensions to support legacy code." msgstr "" -#: rust/lang.opt:47 rust/lang.opt:51 c-family/c.opt:1562 c-family/c.opt:1566 +#: rust/lang.opt:47 rust/lang.opt:51 c-family/c.opt:1563 c-family/c.opt:1567 #, no-c-format msgid "Warn when a const variable is unused." msgstr "" -#: rust/lang.opt:55 c-family/c.opt:1578 +#: rust/lang.opt:55 c-family/c.opt:1579 #, no-c-format msgid "" "Warn if a caller of a function, marked with attribute warn_unused_result, " "does not use its return value." msgstr "" -#: rust/lang.opt:59 c-family/c.opt:892 common.opt:660 +#: rust/lang.opt:59 c-family/c.opt:893 common.opt:660 #, no-c-format msgid "Warn for infinitely recursive calls." msgstr "" @@ -1516,1292 +1516,1297 @@ msgid "" "does not have." msgstr "" -#: c-family/c.opt:310 +#: c-family/c.opt:307 +#, no-c-format +msgid "Warn about code affected by incompatible psABI changes." +msgstr "" + +#: c-family/c.opt:311 #, no-c-format msgid "" "Warn on suspicious calls of standard functions computing absolute values." msgstr "" -#: c-family/c.opt:314 +#: c-family/c.opt:315 #, no-c-format msgid "Warn about suspicious uses of memory addresses." msgstr "" -#: c-family/c.opt:318 +#: c-family/c.opt:319 #, no-c-format msgid "Warn when the address of packed member of struct or union is taken." msgstr "" -#: c-family/c.opt:334 +#: c-family/c.opt:335 #, no-c-format msgid "Warn about 'new' of type with extended alignment without -faligned-new." msgstr "" -#: c-family/c.opt:338 +#: c-family/c.opt:339 #, no-c-format msgid "" "-Waligned-new=[none|global|all]\tWarn even if 'new' uses a class member " "allocation function." msgstr "" -#: c-family/c.opt:342 ada/gcc-interface/lang.opt:57 +#: c-family/c.opt:343 ada/gcc-interface/lang.opt:57 #, no-c-format msgid "Enable most warning messages." msgstr "" -#: c-family/c.opt:346 +#: c-family/c.opt:347 #, no-c-format msgid "Warn on any use of alloca." msgstr "" -#: c-family/c.opt:350 +#: c-family/c.opt:351 #, no-c-format msgid "" "Warn when allocating insufficient storage for the target type of the " "assigned pointer." msgstr "" -#: c-family/c.opt:354 +#: c-family/c.opt:355 #, no-c-format msgid "" "-Walloc-size-larger-than=<bytes>\tWarn for calls to allocation functions " "that attempt to allocate objects larger than the specified number of bytes." msgstr "" -#: c-family/c.opt:359 +#: c-family/c.opt:360 #, no-c-format msgid "" "Disable Walloc-size-larger-than= warning. Equivalent to Walloc-size-larger-" "than=<SIZE_MAX> or larger." msgstr "" -#: c-family/c.opt:363 +#: c-family/c.opt:364 #, no-c-format msgid "Warn for calls to allocation functions that specify zero bytes." msgstr "" -#: c-family/c.opt:367 +#: c-family/c.opt:368 #, no-c-format msgid "" "-Walloca-larger-than=<number>\tWarn on unbounded uses of alloca, and on " "bounded uses of alloca whose bound can be larger than <number> bytes." msgstr "" -#: c-family/c.opt:373 +#: c-family/c.opt:374 #, no-c-format msgid "" "Disable Walloca-larger-than= warning. Equivalent to Walloca-larger-" "than=<SIZE_MAX> or larger." msgstr "" -#: c-family/c.opt:377 +#: c-family/c.opt:378 #, no-c-format msgid "" "Warn if conversion of the result of arithmetic might change the value even " "though converting the operands cannot." msgstr "" -#: c-family/c.opt:385 +#: c-family/c.opt:386 #, no-c-format msgid "Warn about comparisons between two operands of array type." msgstr "" -#: c-family/c.opt:389 c-family/c.opt:393 +#: c-family/c.opt:390 c-family/c.opt:394 #, no-c-format msgid "" "Warn about mismatched declarations of array parameters and unsafe accesses " "to them." msgstr "" -#: c-family/c.opt:397 +#: c-family/c.opt:398 #, no-c-format msgid "" "Warn whenever an Objective-C assignment is being intercepted by the garbage " "collector." msgstr "" -#: c-family/c.opt:401 +#: c-family/c.opt:402 #, no-c-format msgid "Warn about casting functions to incompatible types." msgstr "" -#: c-family/c.opt:409 +#: c-family/c.opt:410 #, no-c-format msgid "" "-Wbidi-chars=[none|unpaired|any|ucn] Warn about UTF-8 bidirectional control " "characters." msgstr "" -#: c-family/c.opt:432 +#: c-family/c.opt:433 #, no-c-format msgid "" "Warn about boolean expression compared with an integer value different from " "true/false." msgstr "" -#: c-family/c.opt:436 +#: c-family/c.opt:437 #, no-c-format msgid "Warn about certain operations on boolean expressions." msgstr "" -#: c-family/c.opt:440 +#: c-family/c.opt:441 #, no-c-format msgid "Warn when a built-in function is declared with the wrong signature." msgstr "" -#: c-family/c.opt:444 +#: c-family/c.opt:445 #, no-c-format msgid "Warn when a built-in preprocessor macro is undefined or redefined." msgstr "" -#: c-family/c.opt:448 +#: c-family/c.opt:449 #, no-c-format msgid "Warn about features not present in ISO C11, but present in ISO C23." msgstr "" -#: c-family/c.opt:452 +#: c-family/c.opt:453 #, no-c-format msgid "Deprecated in favor of -Wc11-c23-compat." msgstr "" -#: c-family/c.opt:456 +#: c-family/c.opt:457 #, no-c-format msgid "Warn about features not present in ISO C23, but present in ISO C2Y." msgstr "" -#: c-family/c.opt:460 +#: c-family/c.opt:461 #, no-c-format msgid "Warn about features not present in ISO C90, but present in ISO C99." msgstr "" -#: c-family/c.opt:464 +#: c-family/c.opt:465 #, no-c-format msgid "Warn about features not present in ISO C99, but present in ISO C11." msgstr "" -#: c-family/c.opt:468 +#: c-family/c.opt:469 #, no-c-format msgid "Warn about C constructs that are not in the common subset of C and C++." msgstr "" -#: c-family/c.opt:475 +#: c-family/c.opt:476 #, no-c-format msgid "" "Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO " "C++ 2011." msgstr "" -#: c-family/c.opt:479 +#: c-family/c.opt:480 #, no-c-format msgid "" "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO " "C++ 2014." msgstr "" -#: c-family/c.opt:486 +#: c-family/c.opt:487 #, no-c-format msgid "" "Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO " "C++ 2017." msgstr "" -#: c-family/c.opt:493 +#: c-family/c.opt:494 #, no-c-format msgid "" "Warn about C++ constructs whose meaning differs between ISO C++ 2017 and ISO " "C++ 2020." msgstr "" -#: c-family/c.opt:497 +#: c-family/c.opt:498 #, no-c-format msgid "Warn about C++11 constructs in code compiled with an older standard." msgstr "" -#: c-family/c.opt:501 +#: c-family/c.opt:502 #, no-c-format msgid "Warn about C++14 constructs in code compiled with an older standard." msgstr "" -#: c-family/c.opt:505 +#: c-family/c.opt:506 #, no-c-format msgid "Warn about C++17 constructs in code compiled with an older standard." msgstr "" -#: c-family/c.opt:509 +#: c-family/c.opt:510 #, no-c-format msgid "Warn about C++20 constructs in code compiled with an older standard." msgstr "" -#: c-family/c.opt:513 +#: c-family/c.opt:514 #, no-c-format msgid "Warn about C++23 constructs in code compiled with an older standard." msgstr "" -#: c-family/c.opt:517 +#: c-family/c.opt:518 #, no-c-format msgid "Warn about C++26 constructs in code compiled with an older standard." msgstr "" -#: c-family/c.opt:521 +#: c-family/c.opt:522 #, no-c-format msgid "" "Warn about suspicious calls to calloc-like functions where sizeof expression " "is the earlier size argument and not the latter." msgstr "" -#: c-family/c.opt:525 +#: c-family/c.opt:526 #, no-c-format msgid "Warn about casts between incompatible function types." msgstr "" -#: c-family/c.opt:529 +#: c-family/c.opt:530 #, no-c-format msgid "Warn about casts which discard qualifiers." msgstr "" -#: c-family/c.opt:533 +#: c-family/c.opt:534 #, no-c-format msgid "" "Warn about a cast to reference type that does not use a related user-defined " "conversion function." msgstr "" -#: c-family/c.opt:537 c-family/c.opt:541 +#: c-family/c.opt:538 c-family/c.opt:542 #, no-c-format msgid "Warn about catch handlers of non-reference type." msgstr "" -#: c-family/c.opt:545 +#: c-family/c.opt:546 #, no-c-format msgid "" "Complain about a name being declared as a class member after a previous use " "of the same name." msgstr "" -#: c-family/c.opt:549 +#: c-family/c.opt:550 #, no-c-format msgid "Warn about subscripts whose type is \"char\"." msgstr "" -#: c-family/c.opt:553 c-family/c.opt:1727 c-family/c.opt:1731 -#: c-family/c.opt:1735 c-family/c.opt:1739 c-family/c.opt:1743 -#: c-family/c.opt:1747 c-family/c.opt:1751 c-family/c.opt:1758 -#: c-family/c.opt:1762 c-family/c.opt:1766 c-family/c.opt:1770 -#: c-family/c.opt:1774 c-family/c.opt:1778 c-family/c.opt:1782 -#: c-family/c.opt:1786 c-family/c.opt:1790 c-family/c.opt:1794 -#: c-family/c.opt:1798 c-family/c.opt:1802 c-family/c.opt:1806 +#: c-family/c.opt:554 c-family/c.opt:1728 c-family/c.opt:1732 +#: c-family/c.opt:1736 c-family/c.opt:1740 c-family/c.opt:1744 +#: c-family/c.opt:1748 c-family/c.opt:1752 c-family/c.opt:1759 +#: c-family/c.opt:1763 c-family/c.opt:1767 c-family/c.opt:1771 +#: c-family/c.opt:1775 c-family/c.opt:1779 c-family/c.opt:1783 +#: c-family/c.opt:1787 c-family/c.opt:1791 c-family/c.opt:1795 +#: c-family/c.opt:1799 c-family/c.opt:1803 c-family/c.opt:1807 #: config/i386/i386.opt:1005 #, no-c-format msgid "Removed in GCC 9. This switch has no effect." msgstr "" -#: c-family/c.opt:557 +#: c-family/c.opt:558 #, no-c-format msgid "" "Warn when a conversion function will never be called due to the type it " "converts to." msgstr "" -#: c-family/c.opt:561 +#: c-family/c.opt:562 #, no-c-format msgid "Warn for unsafe raw memory writes to objects of class types." msgstr "" -#: c-family/c.opt:565 +#: c-family/c.opt:566 #, no-c-format msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"." msgstr "" -#: c-family/c.opt:569 +#: c-family/c.opt:570 #, no-c-format msgid "Warn about uses of a comma operator within a subscripting expression." msgstr "" -#: c-family/c.opt:573 +#: c-family/c.opt:574 #, no-c-format msgid "" "Warn about possibly nested block comments, and C++ comments spanning more " "than one physical line." msgstr "" -#: c-family/c.opt:577 +#: c-family/c.opt:578 #, no-c-format msgid "Synonym for -Wcomment." msgstr "" -#: c-family/c.opt:581 +#: c-family/c.opt:582 #, no-c-format msgid "Warn for conditionally-supported constructs." msgstr "" -#: c-family/c.opt:585 +#: c-family/c.opt:586 #, no-c-format msgid "Warn for implicit type conversions that may change a value." msgstr "" -#: c-family/c.opt:589 +#: c-family/c.opt:590 #, no-c-format msgid "Warn for converting NULL from/to a non-pointer type." msgstr "" -#: c-family/c.opt:597 +#: c-family/c.opt:598 #, no-c-format msgid "" "Warn when performing class template argument deduction on a type with no " "deduction guides." msgstr "" -#: c-family/c.opt:602 +#: c-family/c.opt:603 #, no-c-format msgid "Warn when all constructors and destructors are private." msgstr "" -#: c-family/c.opt:606 +#: c-family/c.opt:607 #, no-c-format msgid "Warn about dangling else." msgstr "" -#: c-family/c.opt:610 c-family/c.opt:614 +#: c-family/c.opt:611 c-family/c.opt:615 #, no-c-format msgid "Warn for uses of pointers to auto variables whose lifetime has ended." msgstr "" -#: c-family/c.opt:618 +#: c-family/c.opt:619 #, no-c-format msgid "Warn when a reference is bound to a temporary whose lifetime has ended." msgstr "" -#: c-family/c.opt:622 +#: c-family/c.opt:623 #, no-c-format msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage." msgstr "" -#: c-family/c.opt:626 +#: c-family/c.opt:627 #, no-c-format msgid "Warn when a declaration is found after a statement." msgstr "" -#: c-family/c.opt:630 +#: c-family/c.opt:631 #, no-c-format msgid "Warn for missing parameter types in function declarations." msgstr "" -#: c-family/c.opt:634 +#: c-family/c.opt:635 #, no-c-format msgid "Warn when an explicitly defaulted function is deleted." msgstr "" -#: c-family/c.opt:638 +#: c-family/c.opt:639 #, no-c-format msgid "Warn when deleting a pointer to incomplete type." msgstr "" -#: c-family/c.opt:642 +#: c-family/c.opt:643 #, no-c-format msgid "Warn about deleting polymorphic objects with non-virtual destructors." msgstr "" -#: c-family/c.opt:650 +#: c-family/c.opt:651 #, no-c-format msgid "" "Mark implicitly-declared copy operations as deprecated if the class has a " "user-provided copy operation." msgstr "" -#: c-family/c.opt:655 +#: c-family/c.opt:656 #, no-c-format msgid "" "Mark implicitly-declared copy operations as deprecated if the class has a " "user-provided copy operation or destructor." msgstr "" -#: c-family/c.opt:660 +#: c-family/c.opt:661 #, no-c-format msgid "" "Warn about deprecated arithmetic conversions on operands of enumeration " "types." msgstr "" -#: c-family/c.opt:664 +#: c-family/c.opt:665 #, no-c-format msgid "" "Warn about deprecated arithmetic conversions on operands where one is of " "enumeration type and the other is of a floating-point type." msgstr "" -#: c-family/c.opt:669 +#: c-family/c.opt:670 #, no-c-format msgid "" "Warn about deprecated space between \"\" and suffix in a user-defined " "literal operator." msgstr "" -#: c-family/c.opt:673 +#: c-family/c.opt:674 #, no-c-format msgid "" "Warn about calls with arguments to functions declared without parameters." msgstr "" -#: c-family/c.opt:677 +#: c-family/c.opt:678 #, no-c-format msgid "" "Warn about deprecated omission of comma before ... in varargs function " "declaration." msgstr "" -#: c-family/c.opt:681 +#: c-family/c.opt:682 #, no-c-format msgid "" "Warn about positional initialization of structs requiring designated " "initializers." msgstr "" -#: c-family/c.opt:685 +#: c-family/c.opt:686 #, no-c-format msgid "Warn if qualifiers on arrays which are pointer targets are discarded." msgstr "" -#: c-family/c.opt:689 +#: c-family/c.opt:690 #, no-c-format msgid "Warn if type qualifiers on pointers are discarded." msgstr "" -#: c-family/c.opt:693 +#: c-family/c.opt:694 #, no-c-format msgid "Warn about compile-time integer division by zero." msgstr "" -#: c-family/c.opt:697 +#: c-family/c.opt:698 #, no-c-format msgid "Warn about implicit conversions from \"float\" to \"double\"." msgstr "" -#: c-family/c.opt:701 +#: c-family/c.opt:702 #, no-c-format msgid "" "Warn when a declaration has duplicate const, volatile, restrict or _Atomic " "specifier." msgstr "" -#: c-family/c.opt:705 +#: c-family/c.opt:706 #, no-c-format msgid "Warn about duplicated branches in if-else statements." msgstr "" -#: c-family/c.opt:709 +#: c-family/c.opt:710 #, no-c-format msgid "Warn about duplicated conditions in an if-else-if chain." msgstr "" -#: c-family/c.opt:713 +#: c-family/c.opt:714 #, no-c-format msgid "Warn about violations of Effective C++ style rules." msgstr "" -#: c-family/c.opt:717 +#: c-family/c.opt:718 #, no-c-format msgid "" "Warn if an additional enum-base is used in an elaborated-type-specifier." msgstr "" -#: c-family/c.opt:721 +#: c-family/c.opt:722 #, no-c-format msgid "Warn about an empty body in an if or else statement." msgstr "" -#: c-family/c.opt:725 +#: c-family/c.opt:726 #, no-c-format msgid "Warn about stray tokens after #else and #endif." msgstr "" -#: c-family/c.opt:729 +#: c-family/c.opt:730 #, no-c-format msgid "Warn about comparison of different enum types." msgstr "" -#: c-family/c.opt:733 +#: c-family/c.opt:734 #, no-c-format msgid "Warn about implicit conversion of enum types." msgstr "" -#: c-family/c.opt:737 +#: c-family/c.opt:738 #, no-c-format msgid "Warn about enum/integer type mismatches." msgstr "" -#: c-family/c.opt:745 +#: c-family/c.opt:746 #, no-c-format msgid "" "This switch is deprecated; use -Werror=implicit-function-declaration instead." msgstr "" -#: c-family/c.opt:749 +#: c-family/c.opt:750 #, no-c-format msgid "Warn when an exception handler is shadowed by another handler." msgstr "" -#: c-family/c.opt:753 +#: c-family/c.opt:754 #, no-c-format msgid "Warn if \"defined\" is used outside #if." msgstr "" -#: c-family/c.opt:761 +#: c-family/c.opt:762 #, no-c-format msgid "Warn about semicolon after in-class function definition." msgstr "" -#: c-family/c.opt:765 +#: c-family/c.opt:766 #, no-c-format msgid "" "Warn when a structure containing a C99 flexible array member as the last " "field is not at the end of another structure." msgstr "" -#: c-family/c.opt:770 +#: c-family/c.opt:771 #, no-c-format msgid "" "Warn for implicit type conversions that cause loss of floating point " "precision." msgstr "" -#: c-family/c.opt:774 +#: c-family/c.opt:775 #, no-c-format msgid "Warn if testing floating point numbers for equality." msgstr "" -#: c-family/c.opt:778 c-family/c.opt:833 +#: c-family/c.opt:779 c-family/c.opt:834 #, no-c-format msgid "Warn about printf/scanf/strftime/strfmon format string anomalies." msgstr "" -#: c-family/c.opt:782 +#: c-family/c.opt:783 #, no-c-format msgid "Warn about format strings that contain NUL bytes." msgstr "" -#: c-family/c.opt:786 +#: c-family/c.opt:787 #, no-c-format msgid "Warn about GCC format strings with strings unsuitable for diagnostics." msgstr "" -#: c-family/c.opt:790 +#: c-family/c.opt:791 #, no-c-format msgid "Warn if passing too many arguments to a function for its format string." msgstr "" -#: c-family/c.opt:794 +#: c-family/c.opt:795 #, no-c-format msgid "Warn about format strings that are not literals." msgstr "" -#: c-family/c.opt:798 +#: c-family/c.opt:799 #, no-c-format msgid "" "Warn about function calls with format strings that write past the end of the " "destination region. Same as -Wformat-overflow=1." msgstr "" -#: c-family/c.opt:803 +#: c-family/c.opt:804 #, no-c-format msgid "" "Warn about function calls with format strings that write past the end of the " "destination region." msgstr "" -#: c-family/c.opt:808 +#: c-family/c.opt:809 #, no-c-format msgid "Warn about possible security problems with format functions." msgstr "" -#: c-family/c.opt:812 +#: c-family/c.opt:813 #, no-c-format msgid "Warn about sign differences with format functions." msgstr "" -#: c-family/c.opt:816 +#: c-family/c.opt:817 #, no-c-format msgid "" "Warn about calls to snprintf and similar functions that truncate output. " "Same as -Wformat-truncation=1." msgstr "" -#: c-family/c.opt:821 +#: c-family/c.opt:822 #, no-c-format msgid "" "Warn about calls to snprintf and similar functions that truncate output." msgstr "" -#: c-family/c.opt:825 +#: c-family/c.opt:826 #, no-c-format msgid "Warn about strftime formats yielding 2-digit years." msgstr "" -#: c-family/c.opt:829 +#: c-family/c.opt:830 #, no-c-format msgid "Warn about zero-length formats." msgstr "" -#: c-family/c.opt:837 +#: c-family/c.opt:838 #, no-c-format msgid "" "Warn when __builtin_frame_address or __builtin_return_address is used " "unsafely." msgstr "" -#: c-family/c.opt:841 +#: c-family/c.opt:842 #, no-c-format msgid "" "Warn about labels on declarations and at the end of compound statements." msgstr "" -#: c-family/c.opt:845 +#: c-family/c.opt:846 #, no-c-format msgid "" "Warn about the global module fragment not containing only preprocessing " "directives." msgstr "" -#: c-family/c.opt:849 +#: c-family/c.opt:850 #, no-c-format msgid "" "Warn when #ifndef of a header guard is followed by #define of a different " "macro with the header guard macro not defined at the end of header." msgstr "" -#: c-family/c.opt:853 +#: c-family/c.opt:854 #, no-c-format msgid "Warn when the field in a struct is not aligned." msgstr "" -#: c-family/c.opt:857 +#: c-family/c.opt:858 #, no-c-format msgid "Warn whenever type qualifiers are ignored." msgstr "" -#: c-family/c.opt:861 +#: c-family/c.opt:862 #, no-c-format msgid "Warn whenever attributes are ignored." msgstr "" -#: c-family/c.opt:865 +#: c-family/c.opt:866 #, no-c-format msgid "Warn about implicit declarations." msgstr "" -#: c-family/c.opt:873 +#: c-family/c.opt:874 #, no-c-format msgid "Warn about implicit function declarations." msgstr "" -#: c-family/c.opt:877 +#: c-family/c.opt:878 #, no-c-format msgid "Warn when a declaration does not specify a type." msgstr "" -#: c-family/c.opt:884 +#: c-family/c.opt:885 #, no-c-format msgid "Warn when a base is inaccessible in derived due to ambiguity." msgstr "" -#: c-family/c.opt:888 +#: c-family/c.opt:889 #, no-c-format msgid "" "Warn when there is a conversion between pointers that have incompatible " "types." msgstr "" -#: c-family/c.opt:896 +#: c-family/c.opt:897 #, no-c-format msgid "Warn about variables which are initialized to themselves." msgstr "" -#: c-family/c.opt:900 +#: c-family/c.opt:901 #, no-c-format msgid "" "Warn about uses of std::initializer_list that can result in dangling " "pointers." msgstr "" -#: c-family/c.opt:904 +#: c-family/c.opt:905 #, no-c-format msgid "" "Warn about nonsensical values of --param destructive-interference-size or " "constructive-interference-size." msgstr "" -#: c-family/c.opt:909 +#: c-family/c.opt:910 #, no-c-format msgid "" "Warn about C++11 inheriting constructors when the base has a variadic " "constructor." msgstr "" -#: c-family/c.opt:913 +#: c-family/c.opt:914 #, no-c-format msgid "" "Warn about incompatible integer to pointer and pointer to integer " "conversions." msgstr "" -#: c-family/c.opt:917 +#: c-family/c.opt:918 #, no-c-format msgid "Warn for suspicious integer expressions in boolean context." msgstr "" -#: c-family/c.opt:921 +#: c-family/c.opt:922 #, no-c-format msgid "" "Warn when there is a cast to a pointer from an integer of a different size." msgstr "" -#: c-family/c.opt:925 +#: c-family/c.opt:926 #, no-c-format msgid "Warn when a function never produces a constant expression." msgstr "" -#: c-family/c.opt:929 +#: c-family/c.opt:930 #, no-c-format msgid "Warn about invalid uses of the \"offsetof\" macro." msgstr "" -#: c-family/c.opt:933 +#: c-family/c.opt:934 #, no-c-format msgid "Warn about PCH files that are found but not used." msgstr "" -#: c-family/c.opt:937 +#: c-family/c.opt:938 #, no-c-format msgid "Warn about invalid UTF-8 characters." msgstr "" -#: c-family/c.opt:941 +#: c-family/c.opt:942 #, no-c-format msgid "Warn when a jump misses a variable initialization." msgstr "" -#: c-family/c.opt:960 +#: c-family/c.opt:961 #, no-c-format msgid "" "Warn about leading whitespace style issues on lines except when in raw " "string literals." msgstr "" -#: c-family/c.opt:964 +#: c-family/c.opt:965 #, no-c-format msgid "" "Warn when a string or character literal is followed by a ud-suffix which " "does not begin with an underscore." msgstr "" -#: c-family/c.opt:968 +#: c-family/c.opt:969 #, no-c-format msgid "" "Warn when logical not is used on the left hand side operand of a comparison." msgstr "" -#: c-family/c.opt:972 +#: c-family/c.opt:973 #, no-c-format msgid "" "Warn when a logical operator is suspiciously always evaluating to true or " "false." msgstr "" -#: c-family/c.opt:976 +#: c-family/c.opt:977 #, no-c-format msgid "Do not warn about using \"long long\" when -pedantic." msgstr "" -#: c-family/c.opt:980 +#: c-family/c.opt:981 #, no-c-format msgid "Warn about suspicious declarations of \"main\"." msgstr "" -#: c-family/c.opt:992 +#: c-family/c.opt:993 #, no-c-format msgid "" "Warn about suspicious calls to memset where the third argument contains the " "number of elements not multiplied by the element size." msgstr "" -#: c-family/c.opt:996 +#: c-family/c.opt:997 #, no-c-format msgid "" "Warn about suspicious calls to memset where the third argument is constant " "literal zero and the second is not." msgstr "" -#: c-family/c.opt:1000 +#: c-family/c.opt:1001 #, no-c-format msgid "" "Warn when the indentation of the code does not reflect the block structure." msgstr "" -#: c-family/c.opt:1004 +#: c-family/c.opt:1005 #, no-c-format msgid "" "Warn for deallocation calls with arguments returned from mismatched " "allocation functions." msgstr "" -#: c-family/c.opt:1009 +#: c-family/c.opt:1010 #, no-c-format msgid "" "Warn for mismatches between calls to operator new or delete and the " "corresponding call to the allocation or deallocation function." msgstr "" -#: c-family/c.opt:1014 +#: c-family/c.opt:1015 #, no-c-format msgid "" "Warn when a class is redeclared or referenced using a mismatched class-key." msgstr "" -#: c-family/c.opt:1018 +#: c-family/c.opt:1019 #, no-c-format msgid "" "Warn about declarations of entities that may be missing attributes that " "related entities have been declared with." msgstr "" -#: c-family/c.opt:1023 +#: c-family/c.opt:1024 #, no-c-format msgid "Warn about possibly missing braces around initializers." msgstr "" -#: c-family/c.opt:1027 +#: c-family/c.opt:1028 #, no-c-format msgid "Warn about global functions without previous declarations." msgstr "" -#: c-family/c.opt:1031 +#: c-family/c.opt:1032 #, no-c-format msgid "Warn about missing fields in struct initializers." msgstr "" -#: c-family/c.opt:1039 +#: c-family/c.opt:1040 #, no-c-format msgid "Warn about user-specified include directories that do not exist." msgstr "" -#: c-family/c.opt:1043 +#: c-family/c.opt:1044 #, no-c-format msgid "Warn about function definitions omitting parameter names." msgstr "" -#: c-family/c.opt:1047 +#: c-family/c.opt:1048 #, no-c-format msgid "" "Warn about function parameters declared without a type specifier in K&R-" "style functions." msgstr "" -#: c-family/c.opt:1051 +#: c-family/c.opt:1052 #, no-c-format msgid "Warn about global functions without prototypes." msgstr "" -#: c-family/c.opt:1055 +#: c-family/c.opt:1056 #, no-c-format msgid "Warn about likely missing requires keyword." msgstr "" -#: c-family/c.opt:1059 +#: c-family/c.opt:1060 #, no-c-format msgid "" "Warn when the template keyword is missing after a member access token in a " "dependent member access expression if that member is a template." msgstr "" -#: c-family/c.opt:1063 +#: c-family/c.opt:1064 #, no-c-format msgid "Warn about global variables without previous declarations." msgstr "" -#: c-family/c.opt:1070 +#: c-family/c.opt:1071 #, no-c-format msgid "Warn about use of multi-character character constants." msgstr "" -#: c-family/c.opt:1074 +#: c-family/c.opt:1075 #, no-c-format msgid "Warn on direct multiple inheritance." msgstr "" -#: c-family/c.opt:1078 +#: c-family/c.opt:1079 #, no-c-format msgid "" "Warn about unsafe macros expanding to multiple statements used as a body of " "a clause such as if, else, while, switch, or for." msgstr "" -#: c-family/c.opt:1082 +#: c-family/c.opt:1083 #, no-c-format msgid "Warn on namespace definition." msgstr "" -#: c-family/c.opt:1086 +#: c-family/c.opt:1087 #, no-c-format msgid "" "Warn about narrowing conversions within { } that are ill-formed in C++11." msgstr "" -#: c-family/c.opt:1090 +#: c-family/c.opt:1091 #, no-c-format msgid "Warn about \"extern\" declarations not at file scope." msgstr "" -#: c-family/c.opt:1094 +#: c-family/c.opt:1095 #, no-c-format msgid "" "Warn when a noexcept expression evaluates to false even though the " "expression can't actually throw." msgstr "" -#: c-family/c.opt:1098 +#: c-family/c.opt:1099 #, no-c-format msgid "" "Warn if C++17 noexcept function type will change the mangled name of a " "symbol." msgstr "" -#: c-family/c.opt:1102 +#: c-family/c.opt:1103 #, no-c-format msgid "" "Warn when non-templatized friend functions are declared within a template." msgstr "" -#: c-family/c.opt:1106 +#: c-family/c.opt:1107 #, no-c-format msgid "Warn about non-virtual destructors." msgstr "" -#: c-family/c.opt:1110 +#: c-family/c.opt:1111 #, no-c-format msgid "" "Warn about NULL being passed to argument slots marked as requiring non-NULL." msgstr "" -#: c-family/c.opt:1126 +#: c-family/c.opt:1127 #, no-c-format msgid "" "-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings." msgstr "" -#: c-family/c.opt:1149 +#: c-family/c.opt:1150 #, no-c-format msgid "" "Warn if a class interface has no superclass. Root classes may use an " "attribute to suppress this warning." msgstr "" -#: c-family/c.opt:1154 +#: c-family/c.opt:1155 #, no-c-format msgid "Warn if a C-style cast is used in a program." msgstr "" -#: c-family/c.opt:1158 +#: c-family/c.opt:1159 #, no-c-format msgid "Warn for obsolescent usage in a declaration." msgstr "" -#: c-family/c.opt:1162 +#: c-family/c.opt:1163 #, no-c-format msgid "Warn if an old-style parameter definition is used." msgstr "" -#: c-family/c.opt:1166 +#: c-family/c.opt:1167 #, no-c-format msgid "" "Warn about potentially suboptimal choices related to OpenACC parallelism." msgstr "" -#: c-family/c.opt:1170 +#: c-family/c.opt:1171 #, no-c-format msgid "Warn about suspicious OpenMP code." msgstr "" -#: c-family/c.opt:1174 +#: c-family/c.opt:1175 #, no-c-format msgid "Warn if a simd directive is overridden by the vectorizer cost model." msgstr "" -#: c-family/c.opt:1178 +#: c-family/c.opt:1179 #, no-c-format msgid "" "Warn if a string is longer than the maximum portable length specified by the " "standard." msgstr "" -#: c-family/c.opt:1182 c-family/c.opt:1186 +#: c-family/c.opt:1183 c-family/c.opt:1187 #, no-c-format msgid "Warn about overloaded virtual function names." msgstr "" -#: c-family/c.opt:1190 +#: c-family/c.opt:1191 #, no-c-format msgid "Warn about overriding initializers without side effects." msgstr "" -#: c-family/c.opt:1194 +#: c-family/c.opt:1195 #, no-c-format msgid "Warn about overriding initializers with side effects." msgstr "" -#: c-family/c.opt:1198 +#: c-family/c.opt:1199 #, no-c-format msgid "" "Warn if the named return value optimization is not performed although it is " "allowed." msgstr "" -#: c-family/c.opt:1202 +#: c-family/c.opt:1203 #, no-c-format msgid "Warn about packed bit-fields whose offset changed in GCC 4.4." msgstr "" -#: c-family/c.opt:1206 +#: c-family/c.opt:1207 #, no-c-format msgid "Warn when fields in a struct with the packed attribute are misaligned." msgstr "" -#: c-family/c.opt:1210 +#: c-family/c.opt:1211 #, no-c-format msgid "Warn about possibly missing parentheses." msgstr "" -#: c-family/c.opt:1218 +#: c-family/c.opt:1219 #, no-c-format msgid "" "Warn about calling std::move on a local object in a return statement " "preventing copy elision." msgstr "" -#: c-family/c.opt:1222 c-family/c.opt:1226 +#: c-family/c.opt:1223 c-family/c.opt:1227 #, no-c-format msgid "Warn for placement new expressions with undefined behavior." msgstr "" -#: c-family/c.opt:1230 +#: c-family/c.opt:1231 #, no-c-format msgid "Warn when converting the type of pointers to member functions." msgstr "" -#: c-family/c.opt:1234 +#: c-family/c.opt:1235 #, no-c-format msgid "Warn about function pointer arithmetic." msgstr "" -#: c-family/c.opt:1238 +#: c-family/c.opt:1239 #, no-c-format msgid "Warn when a pointer differs in signedness in an assignment." msgstr "" -#: c-family/c.opt:1242 +#: c-family/c.opt:1243 #, no-c-format msgid "Warn when a pointer is compared with a zero character constant." msgstr "" -#: c-family/c.opt:1246 +#: c-family/c.opt:1247 #, no-c-format msgid "Warn when a pointer is cast to an integer of a different size." msgstr "" -#: c-family/c.opt:1250 +#: c-family/c.opt:1251 #, no-c-format msgid "Warn about misuses of pragmas." msgstr "" -#: c-family/c.opt:1254 +#: c-family/c.opt:1255 #, no-c-format msgid "Warn about #pragma once outside of a header." msgstr "" -#: c-family/c.opt:1258 +#: c-family/c.opt:1259 #, no-c-format msgid "" "Warn if constructor or destructors with priorities from 0 to 100 are used." msgstr "" -#: c-family/c.opt:1262 +#: c-family/c.opt:1263 #, no-c-format msgid "" "Warn if a property for an Objective-C object has no assign semantics " "specified." msgstr "" -#: c-family/c.opt:1266 +#: c-family/c.opt:1267 #, no-c-format msgid "Warn if inherited methods are unimplemented." msgstr "" -#: c-family/c.opt:1270 +#: c-family/c.opt:1271 #, no-c-format msgid "Warn when a range-based for-loop is creating unnecessary copies." msgstr "" -#: c-family/c.opt:1274 +#: c-family/c.opt:1275 #, no-c-format msgid "Warn about multiple declarations of the same object." msgstr "" -#: c-family/c.opt:1278 +#: c-family/c.opt:1279 #, no-c-format msgid "Warn about redundant calls to std::move." msgstr "" -#: c-family/c.opt:1282 +#: c-family/c.opt:1283 #, no-c-format msgid "" "Warn when a class or enumerated type is referenced using a redundant class-" "key." msgstr "" -#: c-family/c.opt:1286 +#: c-family/c.opt:1287 #, no-c-format msgid "Warn about uses of register storage specifier." msgstr "" -#: c-family/c.opt:1290 +#: c-family/c.opt:1291 #, no-c-format msgid "Warn when the compiler reorders code." msgstr "" -#: c-family/c.opt:1294 +#: c-family/c.opt:1295 #, no-c-format msgid "" "Warn when an argument passed to a restrict-qualified parameter aliases with " "another argument." msgstr "" -#: c-family/c.opt:1299 +#: c-family/c.opt:1300 #, no-c-format msgid "" "Warn whenever void-returning functions return a non-void expressions, or a " "return expression is missing in a function not returning void." msgstr "" -#: c-family/c.opt:1303 +#: c-family/c.opt:1304 #, no-c-format msgid "" "Warn whenever a function's return type defaults to \"int\" (C), or about " "inconsistent return types (C++)." msgstr "" -#: c-family/c.opt:1307 +#: c-family/c.opt:1308 #, no-c-format msgid "Warn on suspicious constructs involving reverse scalar storage order." msgstr "" -#: c-family/c.opt:1311 +#: c-family/c.opt:1312 #, no-c-format msgid "Warn if a selector has multiple methods." msgstr "" -#: c-family/c.opt:1315 +#: c-family/c.opt:1316 #, no-c-format msgid "Warn when a value is moved to itself with std::move." msgstr "" -#: c-family/c.opt:1319 +#: c-family/c.opt:1320 #, no-c-format msgid "Warn about possible violations of sequence point rules." msgstr "" -#: c-family/c.opt:1323 +#: c-family/c.opt:1324 #, no-c-format msgid "Warn if a local declaration hides an instance variable." msgstr "" -#: c-family/c.opt:1327 c-family/c.opt:1331 +#: c-family/c.opt:1328 c-family/c.opt:1332 #, no-c-format msgid "Warn if left shift of a signed value overflows." msgstr "" -#: c-family/c.opt:1335 +#: c-family/c.opt:1336 #, no-c-format msgid "Warn if shift count is negative." msgstr "" -#: c-family/c.opt:1339 +#: c-family/c.opt:1340 #, no-c-format msgid "Warn if shift count >= width of type." msgstr "" -#: c-family/c.opt:1343 +#: c-family/c.opt:1344 #, no-c-format msgid "Warn if left shifting a negative value." msgstr "" -#: c-family/c.opt:1347 +#: c-family/c.opt:1348 #, no-c-format msgid "Warn about signed-unsigned comparisons." msgstr "" -#: c-family/c.opt:1355 +#: c-family/c.opt:1356 #, no-c-format msgid "" "Warn for implicit type conversions between signed and unsigned integers." msgstr "" -#: c-family/c.opt:1359 +#: c-family/c.opt:1360 #, no-c-format msgid "Warn when overload promotes from unsigned to signed." msgstr "" -#: c-family/c.opt:1363 +#: c-family/c.opt:1364 #, no-c-format msgid "Warn about missing sized deallocation functions." msgstr "" -#: c-family/c.opt:1367 +#: c-family/c.opt:1368 #, no-c-format msgid "" "Warn about divisions of two sizeof operators when the first one is applied " "to an array and the divisor does not equal the size of the array element." msgstr "" -#: c-family/c.opt:1372 +#: c-family/c.opt:1373 #, no-c-format msgid "Warn when sizeof is applied on a parameter declared as an array." msgstr "" -#: c-family/c.opt:1376 +#: c-family/c.opt:1377 #, no-c-format msgid "" "Warn about suspicious divisions of two sizeof expressions that don't work " "correctly with pointers." msgstr "" -#: c-family/c.opt:1380 +#: c-family/c.opt:1381 #, no-c-format msgid "" "Warn about suspicious length parameters to certain string functions if the " "argument uses sizeof." msgstr "" -#: c-family/c.opt:1388 +#: c-family/c.opt:1389 #, no-c-format msgid "" "Warn about improper usages of flexible array members according to the level " "of -fstrict-flex-arrays." msgstr "" -#: c-family/c.opt:1393 +#: c-family/c.opt:1394 #, no-c-format msgid "Warn about uncasted NULL used as sentinel." msgstr "" -#: c-family/c.opt:1401 +#: c-family/c.opt:1402 #, no-c-format msgid "Warn about unprototyped function declarations." msgstr "" -#: c-family/c.opt:1405 +#: c-family/c.opt:1406 #, no-c-format msgid "Warn if type signatures of candidate methods do not match exactly." msgstr "" -#: c-family/c.opt:1409 +#: c-family/c.opt:1410 #, no-c-format msgid "" "Warn about calls to strcmp and strncmp used in equality expressions that are " @@ -2809,134 +2814,134 @@ msgid "" "argument." msgstr "" -#: c-family/c.opt:1415 +#: c-family/c.opt:1416 #, no-c-format msgid "" "Warn about buffer overflow in string manipulation functions like memcpy and " "strcpy." msgstr "" -#: c-family/c.opt:1420 +#: c-family/c.opt:1421 #, no-c-format msgid "" "Under the control of Object Size type, warn about buffer overflow in string " "manipulation functions like memcpy and strcpy." msgstr "" -#: c-family/c.opt:1425 +#: c-family/c.opt:1426 #, no-c-format msgid "" "Warn about reading past the end of a source array in string manipulation " "functions like memchr and memcpy." msgstr "" -#: c-family/c.opt:1429 +#: c-family/c.opt:1430 #, no-c-format msgid "" "Warn about truncation in string manipulation functions like strncat and " "strncpy." msgstr "" -#: c-family/c.opt:1433 +#: c-family/c.opt:1434 #, no-c-format msgid "" "Warn if a class type has a base or a field whose type uses the anonymous " "namespace or depends on a type with no linkage." msgstr "" -#: c-family/c.opt:1437 +#: c-family/c.opt:1438 #, no-c-format msgid "Warn about functions which might be candidates for format attributes." msgstr "" -#: c-family/c.opt:1441 +#: c-family/c.opt:1442 #, no-c-format msgid "" "Suggest that the override keyword be used when the declaration of a virtual " "function overrides another." msgstr "" -#: c-family/c.opt:1446 +#: c-family/c.opt:1447 #, no-c-format msgid "Warn about enumerated switches, with no default, missing a case." msgstr "" -#: c-family/c.opt:1450 +#: c-family/c.opt:1451 #, no-c-format msgid "Warn about enumerated switches missing a \"default:\" statement." msgstr "" -#: c-family/c.opt:1454 +#: c-family/c.opt:1455 #, no-c-format msgid "Warn about all enumerated switches missing a specific case." msgstr "" -#: c-family/c.opt:1458 +#: c-family/c.opt:1459 #, no-c-format msgid "Warn about switches with boolean controlling expression." msgstr "" -#: c-family/c.opt:1462 +#: c-family/c.opt:1463 #, no-c-format msgid "Warn about switch values that are outside of the switch's type range." msgstr "" -#: c-family/c.opt:1466 +#: c-family/c.opt:1467 #, no-c-format msgid "" "Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions " "are used." msgstr "" -#: c-family/c.opt:1470 +#: c-family/c.opt:1471 #, no-c-format msgid "Deprecated. This switch has no effect." msgstr "" -#: c-family/c.opt:1478 +#: c-family/c.opt:1479 #, no-c-format msgid "Warn on primary template declaration." msgstr "" -#: c-family/c.opt:1482 +#: c-family/c.opt:1483 #, no-c-format msgid "Diagnose errors when parsing a template." msgstr "" -#: c-family/c.opt:1486 +#: c-family/c.opt:1487 #, no-c-format msgid "Warn about simple-template-id in a constructor or destructor." msgstr "" -#: c-family/c.opt:1490 +#: c-family/c.opt:1491 #, no-c-format msgid "Warn about templates naming TU-local entities in a module." msgstr "" -#: c-family/c.opt:1494 +#: c-family/c.opt:1495 #, no-c-format msgid "Warn if a throw expression will always result in a call to terminate()." msgstr "" -#: c-family/c.opt:1498 +#: c-family/c.opt:1499 #, no-c-format msgid "Warn about features not present in traditional C." msgstr "" -#: c-family/c.opt:1502 +#: c-family/c.opt:1503 #, no-c-format msgid "" "Warn of prototypes causing type conversions different from what would happen " "in the absence of prototype." msgstr "" -#: c-family/c.opt:1518 +#: c-family/c.opt:1519 #, no-c-format msgid "" "Warn about trailing whitespace on lines except when in raw string literals." msgstr "" -#: c-family/c.opt:1522 +#: c-family/c.opt:1523 #, no-c-format msgid "" "Warn about trailing whitespace on lines except when in raw string " @@ -2944,88 +2949,88 @@ msgid "" "Wtrailing-whitespace=none when disabled." msgstr "" -#: c-family/c.opt:1526 +#: c-family/c.opt:1527 #, no-c-format msgid "" "Warn if trigraphs are encountered that might affect the meaning of the " "program." msgstr "" -#: c-family/c.opt:1530 +#: c-family/c.opt:1531 #, no-c-format msgid "Warn about @selector()s without previously declared methods." msgstr "" -#: c-family/c.opt:1534 +#: c-family/c.opt:1535 #, no-c-format msgid "Warn if an undefined macro is used in an #if directive." msgstr "" -#: c-family/c.opt:1538 +#: c-family/c.opt:1539 #, no-c-format msgid "Warn about invalid forms of delimited or named escape sequences." msgstr "" -#: c-family/c.opt:1546 +#: c-family/c.opt:1547 #, no-c-format msgid "Warn about unrecognized pragmas." msgstr "" -#: c-family/c.opt:1550 +#: c-family/c.opt:1551 #, no-c-format msgid "Warn about unsuffixed float constants." msgstr "" -#: c-family/c.opt:1554 +#: c-family/c.opt:1555 #, no-c-format msgid "" "Warn about character arrays initialized as unterminated character sequences " "with a string literal." msgstr "" -#: c-family/c.opt:1570 +#: c-family/c.opt:1571 #, no-c-format msgid "Warn when typedefs locally defined in a function are not used." msgstr "" -#: c-family/c.opt:1574 +#: c-family/c.opt:1575 #, no-c-format msgid "Warn about macros defined in the main file that are not used." msgstr "" -#: c-family/c.opt:1594 +#: c-family/c.opt:1595 #, no-c-format msgid "Warn about useless casts." msgstr "" -#: c-family/c.opt:1598 +#: c-family/c.opt:1599 #, no-c-format msgid "Warn about using variadic macros." msgstr "" -#: c-family/c.opt:1602 +#: c-family/c.opt:1603 #, no-c-format msgid "" "Warn about questionable usage of the macros used to retrieve variable " "arguments." msgstr "" -#: c-family/c.opt:1606 +#: c-family/c.opt:1607 #, no-c-format msgid "Warn about the most vexing parse syntactic ambiguity." msgstr "" -#: c-family/c.opt:1610 +#: c-family/c.opt:1611 #, no-c-format msgid "Warn if a virtual base has a non-trivial move assignment operator." msgstr "" -#: c-family/c.opt:1614 +#: c-family/c.opt:1615 #, no-c-format msgid "Warn if a variable length array is used." msgstr "" -#: c-family/c.opt:1618 +#: c-family/c.opt:1619 #, no-c-format msgid "" "-Wvla-larger-than=<number>\tWarn on unbounded uses of variable-length " @@ -3033,34 +3038,34 @@ msgid "" "larger than <number> bytes." msgstr "" -#: c-family/c.opt:1624 +#: c-family/c.opt:1625 #, no-c-format msgid "" "Disable Wvla-larger-than= warning. Equivalent to Wvla-larger-" "than=<SIZE_MAX> or larger." msgstr "" -#: c-family/c.opt:1628 +#: c-family/c.opt:1629 #, no-c-format msgid "Warn about mismatched declarations of VLA parameters." msgstr "" -#: c-family/c.opt:1632 +#: c-family/c.opt:1633 #, no-c-format msgid "Warn about deprecated uses of volatile qualifier." msgstr "" -#: c-family/c.opt:1636 +#: c-family/c.opt:1637 #, no-c-format msgid "Warn when a register variable is declared volatile." msgstr "" -#: c-family/c.opt:1640 +#: c-family/c.opt:1641 #, no-c-format msgid "Warn on direct virtual inheritance." msgstr "" -#: c-family/c.opt:1644 +#: c-family/c.opt:1645 #, no-c-format msgid "" "In C++, nonzero means warn about deprecated conversion from string literals " @@ -3068,195 +3073,195 @@ msgid "" "not deprecated by the ISO C standard." msgstr "" -#: c-family/c.opt:1648 +#: c-family/c.opt:1649 #, no-c-format msgid "" "Warn about xor operators where it appears the user meant exponentiation." msgstr "" -#: c-family/c.opt:1652 +#: c-family/c.opt:1653 #, no-c-format msgid "Warn when a literal '0' is used as null pointer." msgstr "" -#: c-family/c.opt:1656 +#: c-family/c.opt:1657 #, no-c-format msgid "Warn about accesses to interior zero-length array members." msgstr "" -#: c-family/c.opt:1660 +#: c-family/c.opt:1661 #, no-c-format msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)." msgstr "" -#: c-family/c.opt:1668 +#: c-family/c.opt:1669 #, no-c-format msgid "" "The version of the C++ ABI used for -Wabi warnings and link compatibility " "aliases." msgstr "" -#: c-family/c.opt:1672 +#: c-family/c.opt:1673 #, no-c-format msgid "Enforce class member access control semantics." msgstr "" -#: c-family/c.opt:1676 +#: c-family/c.opt:1677 #, no-c-format msgid "-fada-spec-parent=unit\tDump Ada specs as child units of given parent." msgstr "" -#: c-family/c.opt:1680 +#: c-family/c.opt:1681 #, no-c-format msgid "Support C++17 allocation of over-aligned types." msgstr "" -#: c-family/c.opt:1684 +#: c-family/c.opt:1685 #, no-c-format msgid "" "-faligned-new=<N>\tUse C++17 over-aligned type allocation for alignments " "greater than N." msgstr "" -#: c-family/c.opt:1695 c-family/c.opt:2016 c-family/c.opt:2429 -#: c-family/c.opt:2433 c-family/c.opt:2449 +#: c-family/c.opt:1696 c-family/c.opt:2017 c-family/c.opt:2430 +#: c-family/c.opt:2434 c-family/c.opt:2450 #, no-c-format msgid "No longer supported." msgstr "" -#: c-family/c.opt:1699 +#: c-family/c.opt:1700 #, no-c-format msgid "Recognize the \"asm\" keyword." msgstr "" -#: c-family/c.opt:1703 +#: c-family/c.opt:1704 #, no-c-format msgid "" "Assume C++ replaceable global operators new, new[], delete, delete[] don't " "read or write visible global state." msgstr "" -#: c-family/c.opt:1711 +#: c-family/c.opt:1712 #, no-c-format msgid "Recognize built-in functions." msgstr "" -#: c-family/c.opt:1718 +#: c-family/c.opt:1719 #, no-c-format msgid "Where shorter, use canonicalized paths to systems headers." msgstr "" -#: c-family/c.opt:1722 +#: c-family/c.opt:1723 #, no-c-format msgid "" "Enable the char8_t fundamental type and use it as the type for UTF-8 string " "and character literals." msgstr "" -#: c-family/c.opt:1810 +#: c-family/c.opt:1811 #, no-c-format msgid "Removed in GCC 8. This switch has no effect." msgstr "" -#: c-family/c.opt:1814 +#: c-family/c.opt:1815 #, no-c-format msgid "Enable support for C++ concepts." msgstr "" -#: c-family/c.opt:1818 +#: c-family/c.opt:1819 #, no-c-format msgid "Removed in GCC 15. This switch has no effect." msgstr "" -#: c-family/c.opt:1822 +#: c-family/c.opt:1823 #, no-c-format msgid "" "Specify maximum error replay depth during recursive diagnosis of a " "constraint satisfaction failure." msgstr "" -#: c-family/c.opt:1826 +#: c-family/c.opt:1827 #, no-c-format msgid "Allow the arguments of the '?' operator to have different types." msgstr "" -#: c-family/c.opt:1834 +#: c-family/c.opt:1835 #, no-c-format msgid "-fconst-string-class=<name>\tUse class <name> for constant strings." msgstr "" -#: c-family/c.opt:1838 +#: c-family/c.opt:1839 #, no-c-format msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth." msgstr "" -#: c-family/c.opt:1842 +#: c-family/c.opt:1843 #, no-c-format msgid "" "-fconstexpr-cache-depth=<number>\tSpecify maximum constexpr recursion cache " "depth." msgstr "" -#: c-family/c.opt:1846 +#: c-family/c.opt:1847 #, no-c-format msgid "Allow IEC559 floating point exceptions in constant expressions." msgstr "" -#: c-family/c.opt:1850 +#: c-family/c.opt:1851 #, no-c-format msgid "" "-fconstexpr-loop-limit=<number>\tSpecify maximum constexpr loop iteration " "count." msgstr "" -#: c-family/c.opt:1854 +#: c-family/c.opt:1855 #, no-c-format msgid "" "-fconstexpr-ops-limit=<number>\tSpecify maximum number of constexpr " "operations during a single constexpr evaluation." msgstr "" -#: c-family/c.opt:1858 +#: c-family/c.opt:1859 #, no-c-format msgid "Enable certain features present in drafts of C++ Contracts." msgstr "" -#: c-family/c.opt:1871 +#: c-family/c.opt:1872 #, no-c-format msgid "" "-fcontract-assumption-mode=[on|off]\tEnable or disable treating axiom level " "contracts as assumptions (default on)." msgstr "" -#: c-family/c.opt:1875 +#: c-family/c.opt:1876 #, no-c-format msgid "" "-fcontract-build-level=[off|default|audit]\tSpecify max contract level to " "generate runtime checks for." msgstr "" -#: c-family/c.opt:1879 +#: c-family/c.opt:1880 #, no-c-format msgid "" "-fcontract-strict-declarations=[on|off]\tEnable or disable warnings on " "generalized redeclaration of functions with contracts (default off)." msgstr "" -#: c-family/c.opt:1883 +#: c-family/c.opt:1884 #, no-c-format msgid "" "-fcontract-mode=[on|off]\tEnable or disable all contract facilities (default " "on)." msgstr "" -#: c-family/c.opt:1887 +#: c-family/c.opt:1888 #, no-c-format msgid "" "-fcontract-continuation-mode=[on|off]\tEnable or disable contract " "continuation mode (default off)." msgstr "" -#: c-family/c.opt:1891 +#: c-family/c.opt:1892 #, no-c-format msgid "" "-fcontract-role=<name>:<semantics>\tSpecify the semantics for all levels in " @@ -3264,451 +3269,451 @@ msgid "" "(ex: opt:assume,assume,assume)." msgstr "" -#: c-family/c.opt:1895 +#: c-family/c.opt:1896 #, no-c-format msgid "" "-fcontract-semantic=<level>:<semantic>\tSpecify the concrete semantics for " "level." msgstr "" -#: c-family/c.opt:1899 +#: c-family/c.opt:1900 #, no-c-format msgid "Enable C++ coroutines (experimental)." msgstr "" -#: c-family/c.opt:1903 +#: c-family/c.opt:1904 #, no-c-format msgid "Emit debug annotations during preprocessing." msgstr "" -#: c-family/c.opt:1911 +#: c-family/c.opt:1912 #, no-c-format msgid "Factor complex constructors and destructors to favor space over speed." msgstr "" -#: c-family/c.opt:1919 +#: c-family/c.opt:1920 #, no-c-format msgid "Print hierarchical comparisons when template types are mismatched." msgstr "" -#: c-family/c.opt:1923 +#: c-family/c.opt:1924 #, no-c-format msgid "Note all candidates during overload resolution failure." msgstr "" -#: c-family/c.opt:1927 +#: c-family/c.opt:1928 #, no-c-format msgid "Preprocess directives only." msgstr "" -#: c-family/c.opt:1931 +#: c-family/c.opt:1932 #, no-c-format msgid "Permit '$' as an identifier character." msgstr "" -#: c-family/c.opt:1935 +#: c-family/c.opt:1936 #, no-c-format msgid "" "-fmacro-prefix-map=<old>=<new>\tMap one directory name to another in " "__FILE__, __BASE_FILE__, and __builtin_FILE()." msgstr "" -#: c-family/c.opt:1939 +#: c-family/c.opt:1940 #, no-c-format msgid "Write all declarations as Ada code transitively." msgstr "" -#: c-family/c.opt:1943 +#: c-family/c.opt:1944 #, no-c-format msgid "Write all declarations as Ada code for the given file only." msgstr "" -#: c-family/c.opt:1950 +#: c-family/c.opt:1951 #, no-c-format msgid "Do not elide common elements in template comparisons." msgstr "" -#: c-family/c.opt:1954 +#: c-family/c.opt:1955 #, no-c-format msgid "Generate code to check exception specifications." msgstr "" -#: c-family/c.opt:1961 +#: c-family/c.opt:1962 #, no-c-format msgid "" "-fexec-charset=<cset>\tConvert all strings and character constants to " "character set <cset>." msgstr "" -#: c-family/c.opt:1965 +#: c-family/c.opt:1966 #, no-c-format msgid "Permit universal character names (\\u and \\U) in identifiers." msgstr "" -#: c-family/c.opt:1969 +#: c-family/c.opt:1970 #, no-c-format msgid "" "-finput-charset=<cset>\tSpecify the default character set for source files." msgstr "" -#: c-family/c.opt:1973 +#: c-family/c.opt:1974 #, no-c-format msgid "" "Support dynamic initialization of thread-local variables in a different " "translation unit." msgstr "" -#: c-family/c.opt:1980 +#: c-family/c.opt:1981 #, no-c-format msgid "Fold calls to simple inline functions." msgstr "" -#: c-family/c.opt:1987 +#: c-family/c.opt:1988 #, no-c-format msgid "Do not assume that standard C libraries and \"main\" exist." msgstr "" -#: c-family/c.opt:1991 +#: c-family/c.opt:1992 #, no-c-format msgid "Recognize GNU-defined keywords." msgstr "" -#: c-family/c.opt:1995 +#: c-family/c.opt:1996 #, no-c-format msgid "Generate code for GNU runtime environment." msgstr "" -#: c-family/c.opt:1999 +#: c-family/c.opt:2000 #, no-c-format msgid "Use traditional GNU semantics for inline functions." msgstr "" -#: c-family/c.opt:2012 +#: c-family/c.opt:2013 #, no-c-format msgid "Assume normal C execution environment." msgstr "" -#: c-family/c.opt:2020 +#: c-family/c.opt:2021 #, no-c-format msgid "Implement P2564 for consteval propagation." msgstr "" -#: c-family/c.opt:2024 +#: c-family/c.opt:2025 #, no-c-format msgid "Export functions even if they can be inlined." msgstr "" -#: c-family/c.opt:2028 +#: c-family/c.opt:2029 #, no-c-format msgid "Make inline functions constexpr by default." msgstr "" -#: c-family/c.opt:2032 +#: c-family/c.opt:2033 #, no-c-format msgid "Emit implicit instantiations of inline templates." msgstr "" -#: c-family/c.opt:2036 +#: c-family/c.opt:2037 #, no-c-format msgid "Emit implicit instantiations of templates." msgstr "" -#: c-family/c.opt:2040 +#: c-family/c.opt:2041 #, no-c-format msgid "Implement C++17 inheriting constructor semantics." msgstr "" -#: c-family/c.opt:2047 +#: c-family/c.opt:2048 #, no-c-format msgid "Don't emit dllexported inline functions unless needed." msgstr "" -#: c-family/c.opt:2054 +#: c-family/c.opt:2055 #, no-c-format msgid "" "Allow implicit conversions between vectors with differing numbers of " "subparts and/or differing element types." msgstr "" -#: c-family/c.opt:2058 +#: c-family/c.opt:2059 #, no-c-format msgid "Enable C++20 Modules (experimental)." msgstr "" -#: c-family/c.opt:2066 +#: c-family/c.opt:2067 #, no-c-format msgid "Enable C++ header module (experimental)." msgstr "" -#: c-family/c.opt:2073 +#: c-family/c.opt:2074 #, no-c-format msgid "" "Member functions defined within their class are inline in module purview." msgstr "" -#: c-family/c.opt:2077 +#: c-family/c.opt:2078 #, no-c-format msgid "Only emit Compiled Module Interface." msgstr "" -#: c-family/c.opt:2081 +#: c-family/c.opt:2082 #, no-c-format msgid "Mapper for module to CMI files." msgstr "" -#: c-family/c.opt:2085 +#: c-family/c.opt:2086 #, no-c-format msgid "Enable lazy module importing." msgstr "" -#: c-family/c.opt:2093 +#: c-family/c.opt:2094 #, no-c-format msgid "Warn about macros that have conflicting header units definitions." msgstr "" -#: c-family/c.opt:2097 +#: c-family/c.opt:2098 #, no-c-format msgid "Warn if pointers of distinct types are compared without a cast." msgstr "" -#: c-family/c.opt:2101 +#: c-family/c.opt:2102 #, no-c-format msgid "Note #include directives translated to import declarations." msgstr "" -#: c-family/c.opt:2105 +#: c-family/c.opt:2106 #, no-c-format msgid "" "Note #include directives not translated to import declarations, and not " "known to be textual." msgstr "" -#: c-family/c.opt:2109 +#: c-family/c.opt:2110 #, no-c-format msgid "Note a #include translation of a specific header." msgstr "" -#: c-family/c.opt:2113 +#: c-family/c.opt:2114 #, no-c-format msgid "Note Compiled Module Interface pathnames." msgstr "" -#: c-family/c.opt:2117 +#: c-family/c.opt:2118 #, no-c-format msgid "" "Note Compiled Module Interface pathname of a specific module or header-unit." msgstr "" -#: c-family/c.opt:2121 +#: c-family/c.opt:2122 #, no-c-format msgid "" "fmax-include-depth=<number> Set the maximum depth of the nested #include." msgstr "" -#: c-family/c.opt:2125 +#: c-family/c.opt:2126 #, no-c-format msgid "Don't warn about uses of Microsoft extensions." msgstr "" -#: c-family/c.opt:2144 +#: c-family/c.opt:2145 #, no-c-format msgid "" "Implement resolution of DR 150 for matching of template template arguments." msgstr "" -#: c-family/c.opt:2148 +#: c-family/c.opt:2149 #, no-c-format msgid "Generate code for NeXT (Apple macOS) runtime environment." msgstr "" -#: c-family/c.opt:2152 +#: c-family/c.opt:2153 #, no-c-format msgid "Assume that receivers of Objective-C messages may be nil." msgstr "" -#: c-family/c.opt:2156 +#: c-family/c.opt:2157 #, no-c-format msgid "" "Allow access to instance variables as if they were local declarations within " "instance method implementations." msgstr "" -#: c-family/c.opt:2160 +#: c-family/c.opt:2161 #, no-c-format msgid "" "-fvisibility=[private|protected|public|package]\tSet the default symbol " "visibility." msgstr "" -#: c-family/c.opt:2185 +#: c-family/c.opt:2186 #, no-c-format msgid "" "Treat a throw() exception specification as noexcept to improve code size." msgstr "" -#: c-family/c.opt:2189 +#: c-family/c.opt:2190 #, no-c-format msgid "" "Specify which ABI to use for Objective-C family code and meta-data " "generation." msgstr "" -#: c-family/c.opt:2195 +#: c-family/c.opt:2196 #, no-c-format msgid "" "Generate special Objective-C methods to initialize/destroy non-POD C++ " "ivars, if needed." msgstr "" -#: c-family/c.opt:2199 +#: c-family/c.opt:2200 #, no-c-format msgid "Allow fast jumps to the message dispatcher." msgstr "" -#: c-family/c.opt:2205 +#: c-family/c.opt:2206 #, no-c-format msgid "Enable Objective-C exception and synchronization syntax." msgstr "" -#: c-family/c.opt:2209 +#: c-family/c.opt:2210 #, no-c-format msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs." msgstr "" -#: c-family/c.opt:2213 +#: c-family/c.opt:2214 #, no-c-format msgid "" "Enable inline checks for nil receivers with the NeXT runtime and ABI version " "2." msgstr "" -#: c-family/c.opt:2218 +#: c-family/c.opt:2219 #, no-c-format msgid "Enable Objective-C setjmp exception handling runtime." msgstr "" -#: c-family/c.opt:2222 +#: c-family/c.opt:2223 #, no-c-format msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0." msgstr "" -#: c-family/c.opt:2226 +#: c-family/c.opt:2227 #, no-c-format msgid "Enable OpenACC." msgstr "" -#: c-family/c.opt:2230 +#: c-family/c.opt:2231 #, no-c-format msgid "Specify default OpenACC compute dimensions." msgstr "" -#: c-family/c.opt:2234 +#: c-family/c.opt:2235 #, no-c-format msgid "Enable OpenMP (implies -frecursive in Fortran)." msgstr "" -#: c-family/c.opt:2238 +#: c-family/c.opt:2239 #, no-c-format msgid "Enable OpenMP's SIMD directives." msgstr "" -#: c-family/c.opt:2242 +#: c-family/c.opt:2243 #, no-c-format msgid "Recognize C++ keywords like \"compl\" and \"xor\"." msgstr "" -#: c-family/c.opt:2253 +#: c-family/c.opt:2254 #, no-c-format msgid "Look for and use PCH files even when preprocessing." msgstr "" -#: c-family/c.opt:2257 +#: c-family/c.opt:2258 #, no-c-format msgid "Downgrade conformance errors to warnings." msgstr "" -#: c-family/c.opt:2261 +#: c-family/c.opt:2262 #, no-c-format msgid "Enable Plan 9 language extensions." msgstr "" -#: c-family/c.opt:2265 +#: c-family/c.opt:2266 #, no-c-format msgid "Treat the input file as already preprocessed." msgstr "" -#: c-family/c.opt:2273 +#: c-family/c.opt:2274 #, 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:2277 +#: c-family/c.opt:2278 #, no-c-format msgid "" "Do not pretty-print template specializations as the template signature " "followed by the arguments." msgstr "" -#: c-family/c.opt:2281 +#: c-family/c.opt:2282 #, no-c-format msgid "Treat known sprintf return values as constants." msgstr "" -#: c-family/c.opt:2285 +#: c-family/c.opt:2286 #, no-c-format msgid "Enable lifetime extension of range based for temporaries." msgstr "" -#: c-family/c.opt:2289 +#: c-family/c.opt:2290 #, 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:2293 +#: c-family/c.opt:2294 #, no-c-format msgid "Removed in GCC 10. This switch has no effect." msgstr "" -#: c-family/c.opt:2297 +#: c-family/c.opt:2298 #, no-c-format msgid "Generate run time type descriptor information." msgstr "" -#: c-family/c.opt:2301 +#: c-family/c.opt:2302 #, no-c-format msgid "Look for the main source file on the include path." msgstr "" -#: c-family/c.opt:2308 ada/gcc-interface/lang.opt:81 +#: c-family/c.opt:2309 ada/gcc-interface/lang.opt:81 #, no-c-format msgid "Use the narrowest integer type possible for enumeration types." msgstr "" -#: c-family/c.opt:2312 +#: c-family/c.opt:2313 #, no-c-format msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"." msgstr "" -#: c-family/c.opt:2316 +#: c-family/c.opt:2317 #, no-c-format msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed." msgstr "" -#: c-family/c.opt:2320 ada/gcc-interface/lang.opt:85 +#: c-family/c.opt:2321 ada/gcc-interface/lang.opt:85 #, no-c-format msgid "Make \"char\" signed by default." msgstr "" -#: c-family/c.opt:2324 +#: c-family/c.opt:2325 #, no-c-format msgid "Enable C++14 sized deallocation support." msgstr "" -#: c-family/c.opt:2331 +#: c-family/c.opt:2332 #, no-c-format msgid "" "-fstrict-flex-arrays=<level> Control when to treat the trailing array of " @@ -3717,450 +3722,450 @@ msgid "" "structures as flexible array members." msgstr "" -#: c-family/c.opt:2338 +#: c-family/c.opt:2339 #, no-c-format msgid "" "-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar " "storage order." msgstr "" -#: c-family/c.opt:2354 +#: c-family/c.opt:2355 #, no-c-format msgid "Display statistics accumulated during compilation." msgstr "" -#: c-family/c.opt:2358 +#: c-family/c.opt:2359 #, no-c-format msgid "" "Assume that values of enumeration type are always within the minimum range " "of that type." msgstr "" -#: c-family/c.opt:2365 c-family/c.opt:2370 +#: c-family/c.opt:2366 c-family/c.opt:2371 #, no-c-format msgid "" "Follow the C++17 evaluation order requirements for assignment expressions, " "shift, member function calls, etc." msgstr "" -#: c-family/c.opt:2387 +#: c-family/c.opt:2388 #, no-c-format msgid "" "Set the maximum number of template instantiation notes for a single warning " "or error." msgstr "" -#: c-family/c.opt:2394 +#: c-family/c.opt:2395 #, no-c-format msgid "" "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth." msgstr "" -#: c-family/c.opt:2401 +#: c-family/c.opt:2402 #, no-c-format msgid "" "-fno-threadsafe-statics\tDo not generate thread-safe code for initializing " "local statics." msgstr "" -#: c-family/c.opt:2405 +#: c-family/c.opt:2406 #, no-c-format msgid "" "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned." msgstr "" -#: c-family/c.opt:2409 ada/gcc-interface/lang.opt:89 +#: c-family/c.opt:2410 ada/gcc-interface/lang.opt:89 #, no-c-format msgid "Make \"char\" unsigned by default." msgstr "" -#: c-family/c.opt:2413 +#: c-family/c.opt:2414 #, no-c-format msgid "Use __cxa_atexit to register destructors." msgstr "" -#: c-family/c.opt:2417 +#: c-family/c.opt:2418 #, no-c-format msgid "Use __cxa_get_exception_ptr in exception handling." msgstr "" -#: c-family/c.opt:2421 +#: c-family/c.opt:2422 #, no-c-format msgid "Marks all inlined functions and methods as having hidden visibility." msgstr "" -#: c-family/c.opt:2425 +#: c-family/c.opt:2426 #, no-c-format msgid "Changes visibility to match Microsoft Visual Studio by default." msgstr "" -#: c-family/c.opt:2437 +#: c-family/c.opt:2438 #, no-c-format msgid "Emit common-like symbols as weak symbols." msgstr "" -#: c-family/c.opt:2441 +#: c-family/c.opt:2442 #, no-c-format msgid "" "-fwide-exec-charset=<cset>\tConvert all wide strings and character constants " "to character set <cset>." msgstr "" -#: c-family/c.opt:2445 +#: c-family/c.opt:2446 #, no-c-format msgid "Generate a #line directive pointing at the current working directory." msgstr "" -#: c-family/c.opt:2453 +#: c-family/c.opt:2454 #, no-c-format msgid "" "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode." msgstr "" -#: c-family/c.opt:2457 +#: c-family/c.opt:2458 #, no-c-format msgid "Dump declarations to a .decl file." msgstr "" -#: c-family/c.opt:2461 +#: c-family/c.opt:2462 #, no-c-format msgid "" "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs." msgstr "" -#: c-family/c.opt:2465 +#: c-family/c.opt:2466 #, no-c-format msgid "" "-femit-struct-debug-reduced\tConservative reduced debug info for structs." msgstr "" -#: c-family/c.opt:2469 +#: c-family/c.opt:2470 #, no-c-format msgid "" "-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for " "structs." msgstr "" -#: c-family/c.opt:2473 +#: c-family/c.opt:2474 #, 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:2478 +#: c-family/c.opt:2479 #, no-c-format msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path." msgstr "" -#: c-family/c.opt:2482 +#: c-family/c.opt:2483 #, no-c-format msgid "-imacros <file>\tAccept definition of macros in <file>." msgstr "" -#: c-family/c.opt:2486 +#: c-family/c.opt:2487 #, no-c-format msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory." msgstr "" -#: c-family/c.opt:2490 +#: c-family/c.opt:2491 #, no-c-format msgid "-include <file>\tInclude the contents of <file> before other files." msgstr "" -#: c-family/c.opt:2494 +#: c-family/c.opt:2495 #, no-c-format msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options." msgstr "" -#: c-family/c.opt:2498 +#: c-family/c.opt:2499 #, no-c-format msgid "-isysroot <dir>\tSet <dir> to be the system root directory." msgstr "" -#: c-family/c.opt:2502 +#: c-family/c.opt:2503 #, no-c-format msgid "-isystem <dir>\tAdd <dir> to the start of the system include path." msgstr "" -#: c-family/c.opt:2506 +#: c-family/c.opt:2507 #, no-c-format msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path." msgstr "" -#: c-family/c.opt:2510 +#: c-family/c.opt:2511 #, no-c-format msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path." msgstr "" -#: c-family/c.opt:2514 +#: c-family/c.opt:2515 #, no-c-format msgid "" "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path." msgstr "" -#: c-family/c.opt:2524 +#: c-family/c.opt:2525 #, no-c-format msgid "" "Do not search standard system include directories (those specified with -" "isystem will still be used)." msgstr "" -#: c-family/c.opt:2528 +#: c-family/c.opt:2529 #, no-c-format msgid "Do not search standard system include directories for C++." msgstr "" -#: c-family/c.opt:2540 +#: c-family/c.opt:2541 #, no-c-format msgid "Generate C header of platform-specific features." msgstr "" -#: c-family/c.opt:2544 +#: c-family/c.opt:2545 #, no-c-format msgid "Remap file names when including files." msgstr "" -#: c-family/c.opt:2548 c-family/c.opt:2552 +#: c-family/c.opt:2549 c-family/c.opt:2553 #, no-c-format msgid "" "Conform to the ISO 1998 C++ standard revised by the 2003 technical " "corrigendum." msgstr "" -#: c-family/c.opt:2556 +#: c-family/c.opt:2557 #, no-c-format msgid "Conform to the ISO 2011 C++ standard." msgstr "" -#: c-family/c.opt:2560 +#: c-family/c.opt:2561 #, no-c-format msgid "Deprecated in favor of -std=c++11." msgstr "" -#: c-family/c.opt:2564 +#: c-family/c.opt:2565 #, no-c-format msgid "Deprecated in favor of -std=c++14." msgstr "" -#: c-family/c.opt:2568 +#: c-family/c.opt:2569 #, no-c-format msgid "Conform to the ISO 2014 C++ standard." msgstr "" -#: c-family/c.opt:2572 +#: c-family/c.opt:2573 #, no-c-format msgid "Deprecated in favor of -std=c++17." msgstr "" -#: c-family/c.opt:2576 +#: c-family/c.opt:2577 #, no-c-format msgid "Conform to the ISO 2017 C++ standard." msgstr "" -#: c-family/c.opt:2580 c-family/c.opt:2584 +#: c-family/c.opt:2581 c-family/c.opt:2585 #, no-c-format msgid "" "Conform to the ISO 2020 C++ standard (experimental and incomplete support)." msgstr "" -#: c-family/c.opt:2588 c-family/c.opt:2592 +#: c-family/c.opt:2589 c-family/c.opt:2593 #, no-c-format msgid "" "Conform to the ISO 2023 C++ standard (published in 2024; experimental and " "incomplete support)." msgstr "" -#: c-family/c.opt:2596 c-family/c.opt:2600 +#: c-family/c.opt:2597 c-family/c.opt:2601 #, no-c-format msgid "" "Conform to the ISO 2026 C++ draft standard (experimental and incomplete " "support)." msgstr "" -#: c-family/c.opt:2604 c-family/c.opt:2766 +#: c-family/c.opt:2605 c-family/c.opt:2767 #, no-c-format msgid "Conform to the ISO 2011 C standard." msgstr "" -#: c-family/c.opt:2608 +#: c-family/c.opt:2609 #, no-c-format msgid "Deprecated in favor of -std=c11." msgstr "" -#: c-family/c.opt:2612 c-family/c.opt:2616 c-family/c.opt:2770 -#: c-family/c.opt:2774 +#: c-family/c.opt:2613 c-family/c.opt:2617 c-family/c.opt:2771 +#: c-family/c.opt:2775 #, no-c-format msgid "Conform to the ISO 2017 C standard (published in 2018)." msgstr "" -#: c-family/c.opt:2620 c-family/c.opt:2778 +#: c-family/c.opt:2621 c-family/c.opt:2779 #, no-c-format msgid "Conform to the ISO 2023 C standard (published in 2024)." msgstr "" -#: c-family/c.opt:2624 +#: c-family/c.opt:2625 #, no-c-format msgid "Deprecated in favor of -std=c23." msgstr "" -#: c-family/c.opt:2628 +#: c-family/c.opt:2629 #, no-c-format msgid "" "Conform to the ISO 202Y C standard draft (experimental and incomplete " "support)." msgstr "" -#: c-family/c.opt:2632 c-family/c.opt:2636 c-family/c.opt:2750 +#: c-family/c.opt:2633 c-family/c.opt:2637 c-family/c.opt:2751 #, no-c-format msgid "Conform to the ISO 1990 C standard." msgstr "" -#: c-family/c.opt:2640 c-family/c.opt:2758 +#: c-family/c.opt:2641 c-family/c.opt:2759 #, no-c-format msgid "Conform to the ISO 1999 C standard." msgstr "" -#: c-family/c.opt:2644 +#: c-family/c.opt:2645 #, no-c-format msgid "Deprecated in favor of -std=c99." msgstr "" -#: c-family/c.opt:2648 c-family/c.opt:2653 +#: c-family/c.opt:2649 c-family/c.opt:2654 #, 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:2658 +#: c-family/c.opt:2659 #, no-c-format msgid "Conform to the ISO 2011 C++ standard with GNU extensions." msgstr "" -#: c-family/c.opt:2662 +#: c-family/c.opt:2663 #, no-c-format msgid "Deprecated in favor of -std=gnu++11." msgstr "" -#: c-family/c.opt:2666 +#: c-family/c.opt:2667 #, no-c-format msgid "Deprecated in favor of -std=gnu++14." msgstr "" -#: c-family/c.opt:2670 +#: c-family/c.opt:2671 #, no-c-format msgid "Conform to the ISO 2014 C++ standard with GNU extensions." msgstr "" -#: c-family/c.opt:2674 +#: c-family/c.opt:2675 #, no-c-format msgid "Deprecated in favor of -std=gnu++17." msgstr "" -#: c-family/c.opt:2678 +#: c-family/c.opt:2679 #, no-c-format msgid "Conform to the ISO 2017 C++ standard with GNU extensions." msgstr "" -#: c-family/c.opt:2682 c-family/c.opt:2686 +#: c-family/c.opt:2683 c-family/c.opt:2687 #, no-c-format msgid "" "Conform to the ISO 2020 C++ standard with GNU extensions (experimental and " "incomplete support)." msgstr "" -#: c-family/c.opt:2690 c-family/c.opt:2694 +#: c-family/c.opt:2691 c-family/c.opt:2695 #, no-c-format msgid "" "Conform to the ISO 2023 C++ standard with GNU extensions (published in 2024; " "experimental and incomplete support)." msgstr "" -#: c-family/c.opt:2698 c-family/c.opt:2702 +#: c-family/c.opt:2699 c-family/c.opt:2703 #, no-c-format msgid "" "Conform to the ISO 2026 C++ draft standard with GNU extensions (experimental " "and incomplete support)." msgstr "" -#: c-family/c.opt:2706 +#: c-family/c.opt:2707 #, no-c-format msgid "Conform to the ISO 2011 C standard with GNU extensions." msgstr "" -#: c-family/c.opt:2710 +#: c-family/c.opt:2711 #, no-c-format msgid "Deprecated in favor of -std=gnu11." msgstr "" -#: c-family/c.opt:2714 c-family/c.opt:2718 +#: c-family/c.opt:2715 c-family/c.opt:2719 #, no-c-format msgid "" "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions." msgstr "" -#: c-family/c.opt:2722 +#: c-family/c.opt:2723 #, no-c-format msgid "" "Conform to the ISO 2023 C standard (published in 2024) with GNU extensions." msgstr "" -#: c-family/c.opt:2726 +#: c-family/c.opt:2727 #, no-c-format msgid "Deprecated in favor of -std=gnu23." msgstr "" -#: c-family/c.opt:2730 +#: c-family/c.opt:2731 #, no-c-format msgid "" "Conform to the ISO 202Y C standard draft with GNU extensions (experimental " "and incomplete support)." msgstr "" -#: c-family/c.opt:2734 c-family/c.opt:2738 +#: c-family/c.opt:2735 c-family/c.opt:2739 #, no-c-format msgid "Conform to the ISO 1990 C standard with GNU extensions." msgstr "" -#: c-family/c.opt:2742 +#: c-family/c.opt:2743 #, no-c-format msgid "Conform to the ISO 1999 C standard with GNU extensions." msgstr "" -#: c-family/c.opt:2746 +#: c-family/c.opt:2747 #, no-c-format msgid "Deprecated in favor of -std=gnu99." msgstr "" -#: c-family/c.opt:2754 +#: c-family/c.opt:2755 #, no-c-format msgid "Conform to the ISO 1990 C standard as amended in 1994." msgstr "" -#: c-family/c.opt:2762 +#: c-family/c.opt:2763 #, no-c-format msgid "Deprecated in favor of -std=iso9899:1999." msgstr "" -#: c-family/c.opt:2782 +#: c-family/c.opt:2783 #, no-c-format msgid "" "-stdlib=[libstdc++|libc++]\tThe standard library to be used for C++ headers " "and runtime." msgstr "" -#: c-family/c.opt:2799 +#: c-family/c.opt:2800 #, no-c-format msgid "Enable traditional preprocessing." msgstr "" -#: c-family/c.opt:2803 +#: c-family/c.opt:2804 #, no-c-format msgid "-trigraphs\tSupport ISO C trigraphs." msgstr "" -#: c-family/c.opt:2807 +#: c-family/c.opt:2808 #, no-c-format msgid "Do not predefine system-specific and GCC-specific macros." msgstr "" @@ -4190,50 +4195,50 @@ msgstr "" msgid "Enable Cobol lex debugging" msgstr "" -#: cobol/lang.opt:90 +#: cobol/lang.opt:86 #, no-c-format msgid "-findicator-column=<n>\tColumn after which Region A begins" msgstr "" -#: cobol/lang.opt:94 +#: cobol/lang.opt:90 #, no-c-format msgid "-finternal-ebcdic\tInternal processing is in EBCDIC Code Page 1140" msgstr "" -#: cobol/lang.opt:102 +#: cobol/lang.opt:94 #, no-c-format msgid "Enable/disable static linkage for CALL literals" msgstr "" -#: cobol/lang.opt:106 +#: cobol/lang.opt:98 #, no-c-format msgid "Enable Cobol parser debugging" msgstr "" -#: cobol/lang.opt:110 +#: cobol/lang.opt:102 #, no-c-format msgid "Enable Cobol yacc debugging" msgstr "" -#: cobol/lang.opt:114 +#: cobol/lang.opt:106 #, no-c-format msgid "preprocess <source_filter> before compiling" msgstr "" -#: cobol/lang.opt:134 +#: cobol/lang.opt:126 #, no-c-format msgid "" "-main\tThe first program-id in the next source file is called by a generated " "main() entry point" msgstr "" -#: cobol/lang.opt:138 +#: cobol/lang.opt:130 #, no-c-format msgid "" "-main=<source_file> source_file/PROGRAM-ID is called by the generated main()" msgstr "" -#: cobol/lang.opt:142 +#: cobol/lang.opt:134 #, no-c-format msgid "-nomain\tNo main() function is created from COBOL source files" msgstr "" @@ -4414,217 +4419,222 @@ msgstr "" #: d/lang.opt:332 #, no-c-format -msgid "Generate code for class invariant contracts." +msgid "Include imported modules in the compilation." msgstr "" #: d/lang.opt:336 #, no-c-format -msgid "Generate a default D main() function when compiling." +msgid "Generate code for class invariant contracts." msgstr "" #: d/lang.opt:340 #, no-c-format +msgid "Generate a default D main() function when compiling." +msgstr "" + +#: d/lang.opt:344 +#, no-c-format msgid "" "-fmodule-file=<package.module>=<filespec>\tuse <filespec> as source file for " "<package.module>." msgstr "" -#: d/lang.opt:344 +#: d/lang.opt:348 #, no-c-format msgid "Generate ModuleInfo struct for output module." msgstr "" -#: d/lang.opt:348 +#: d/lang.opt:352 #, no-c-format msgid "" "Process all modules specified on the command line, but only generate code " "for the module specified by the argument." msgstr "" -#: d/lang.opt:352 +#: d/lang.opt:356 #, no-c-format msgid "Generate code for postcondition contracts." msgstr "" -#: d/lang.opt:356 +#: d/lang.opt:360 #, no-c-format msgid "Generate code for precondition contracts." msgstr "" -#: d/lang.opt:360 +#: d/lang.opt:364 #, no-c-format msgid "Turn on all upcoming D language features." msgstr "" -#: d/lang.opt:364 +#: d/lang.opt:368 #, no-c-format msgid "Implement D bit-fields." msgstr "" -#: d/lang.opt:368 +#: d/lang.opt:372 #, no-c-format msgid "Implement DIP1000: Scoped pointers." msgstr "" -#: d/lang.opt:372 +#: d/lang.opt:376 #, no-c-format msgid "Implement DIP1008: Allow exceptions in @nogc code." msgstr "" -#: d/lang.opt:376 +#: d/lang.opt:380 #, no-c-format msgid "Implement DIP1021: Mutable function arguments." msgstr "" -#: d/lang.opt:380 +#: d/lang.opt:384 #, no-c-format msgid "Destruct fields of partially constructed objects." msgstr "" -#: d/lang.opt:384 +#: d/lang.opt:388 #, no-c-format msgid "Use field-wise comparisons for struct equality." msgstr "" -#: d/lang.opt:388 +#: d/lang.opt:392 #, no-c-format msgid "" "When a symbol is resolved, check `alias this' scope before going to upper " "scopes." msgstr "" -#: d/lang.opt:392 +#: d/lang.opt:396 #, no-c-format msgid "" "Disallow unsound immutable conversions that were formerly incorrectly " "permitted." msgstr "" -#: d/lang.opt:396 +#: d/lang.opt:400 #, no-c-format msgid "Implement 'in' parameters to mean scope const." msgstr "" -#: d/lang.opt:400 +#: d/lang.opt:404 #, no-c-format msgid "" "Implement 'in' contracts of overridden methods to be a superset of parent " "contract." msgstr "" -#: d/lang.opt:404 +#: d/lang.opt:408 #, no-c-format msgid "Disable access to shared memory objects." msgstr "" -#: d/lang.opt:408 +#: d/lang.opt:412 #, no-c-format msgid "Enable safety checks on all functions by default." msgstr "" -#: d/lang.opt:412 +#: d/lang.opt:416 #, no-c-format msgid "Enable rvalue arguments to ref parameters." msgstr "" -#: d/lang.opt:416 +#: d/lang.opt:420 #, no-c-format msgid "Disable access to variables marked `@system' from @safe code." msgstr "" -#: d/lang.opt:420 +#: d/lang.opt:424 #, no-c-format msgid "Compile release version." msgstr "" -#: d/lang.opt:424 +#: d/lang.opt:428 #, no-c-format msgid "Turn off all revertable D language features." msgstr "" -#: d/lang.opt:428 +#: d/lang.opt:432 #, no-c-format msgid "Revert DIP1000: Scoped pointers." msgstr "" -#: d/lang.opt:432 +#: d/lang.opt:436 #, no-c-format msgid "Don't destruct fields of partially constructed objects." msgstr "" -#: d/lang.opt:436 +#: d/lang.opt:440 #, no-c-format msgid "Don't use C-style integral promotion for unary '+', '-' and '~'." msgstr "" -#: d/lang.opt:444 +#: d/lang.opt:448 #, no-c-format msgid "" "-fsave-mixins=<filename>\tExpand and save mixins to file specified by " "<filename>." msgstr "" -#: d/lang.opt:448 +#: d/lang.opt:452 #, no-c-format msgid "Generate code for switches without a default case." msgstr "" -#: d/lang.opt:452 +#: d/lang.opt:456 #, no-c-format msgid "List information on all D language transitions." msgstr "" -#: d/lang.opt:456 +#: d/lang.opt:460 #, no-c-format msgid "List all non-mutable fields which occupy an object instance." msgstr "" -#: d/lang.opt:460 +#: d/lang.opt:464 #, no-c-format msgid "List all usages of 'in' on parameter." msgstr "" -#: d/lang.opt:464 +#: d/lang.opt:468 #, no-c-format msgid "List all hidden GC allocations." msgstr "" -#: d/lang.opt:468 +#: d/lang.opt:472 #, no-c-format msgid "List statistics on template instantiations." msgstr "" -#: d/lang.opt:472 +#: d/lang.opt:476 #, no-c-format msgid "List all variables going into thread local storage." msgstr "" -#: d/lang.opt:476 +#: d/lang.opt:480 #, no-c-format msgid "Compile in unittest code." msgstr "" -#: d/lang.opt:480 +#: d/lang.opt:484 #, no-c-format msgid "-fversion=<ident>\tCompile in version code identified by <ident>." msgstr "" -#: d/lang.opt:484 +#: d/lang.opt:488 #, no-c-format msgid "Emit template instantiations as weak symbols." msgstr "" -#: d/lang.opt:504 +#: d/lang.opt:508 #, no-c-format msgid "Do not link the standard D library in the compilation." msgstr "" -#: d/lang.opt:512 +#: d/lang.opt:516 #, no-c-format msgid "Link the standard D library statically in the compilation." msgstr "" -#: d/lang.opt:516 +#: d/lang.opt:520 #, no-c-format msgid "Link the standard D library dynamically in the compilation." msgstr "" @@ -7585,7 +7595,7 @@ msgstr "" msgid "Specify bit size of immediate TLS offsets." msgstr "" -#: config/ia64/ia64.opt:122 config/i386/i386.opt:542 config/s390/s390.opt:206 +#: config/ia64/ia64.opt:122 config/i386/i386.opt:542 config/s390/s390.opt:209 #: config/sparc/sparc.opt:146 config/visium/visium.opt:49 #, no-c-format msgid "Schedule code for given CPU." @@ -8039,13 +8049,13 @@ msgstr "" msgid "Use 80-bit long double." msgstr "" -#: config/i386/i386.opt:229 config/s390/s390.opt:166 +#: config/i386/i386.opt:229 config/s390/s390.opt:169 #: config/sparc/long-double-switch.opt:27 config/alpha/alpha.opt:110 #, no-c-format msgid "Use 64-bit long double." msgstr "" -#: config/i386/i386.opt:233 config/s390/s390.opt:162 +#: config/i386/i386.opt:233 config/s390/s390.opt:165 #: config/sparc/long-double-switch.opt:23 config/alpha/alpha.opt:106 #, no-c-format msgid "Use 128-bit long double." @@ -8801,7 +8811,7 @@ msgstr "" msgid "Generate __mcount_loc section with all mcount or __fentry__ calls." msgstr "" -#: config/i386/i386.opt:972 config/s390/s390.opt:310 +#: config/i386/i386.opt:972 config/s390/s390.opt:313 #, no-c-format msgid "" "Generate mcount/__fentry__ calls as nops. To activate they need to be " @@ -8908,7 +8918,7 @@ msgstr "" msgid "Convert function return to call and return thunk." msgstr "" -#: config/i386/i386.opt:1087 config/s390/s390.opt:276 +#: config/i386/i386.opt:1087 config/s390/s390.opt:279 #, no-c-format msgid "" "Known indirect branch choices (for use with the -mindirect-branch=/-" @@ -9974,32 +9984,32 @@ msgstr "" msgid "64 bit ABI." msgstr "" -#: config/s390/s390.opt:132 +#: config/s390/s390.opt:135 #, no-c-format msgid "Maintain backchain pointer." msgstr "" -#: config/s390/s390.opt:136 +#: config/s390/s390.opt:139 #, no-c-format msgid "Additional debug prints." msgstr "" -#: config/s390/s390.opt:140 +#: config/s390/s390.opt:143 #, no-c-format msgid "ESA/390 architecture." msgstr "" -#: config/s390/s390.opt:144 +#: config/s390/s390.opt:147 #, no-c-format msgid "Enable decimal floating point hardware support." msgstr "" -#: config/s390/s390.opt:148 +#: config/s390/s390.opt:151 #, no-c-format msgid "Enable hardware floating point." msgstr "" -#: config/s390/s390.opt:152 +#: config/s390/s390.opt:155 #, no-c-format msgid "" "Takes two non-negative integer numbers separated by a comma. Prepend the " @@ -10010,102 +10020,102 @@ msgid "" "size. Using 0 for both values disables hotpatching." msgstr "" -#: config/s390/s390.opt:170 +#: config/s390/s390.opt:173 #, no-c-format msgid "Use hardware transactional execution instructions." msgstr "" -#: config/s390/s390.opt:174 +#: config/s390/s390.opt:177 #, no-c-format msgid "Use hardware vector facility instructions and enable the vector ABI." msgstr "" -#: config/s390/s390.opt:178 +#: config/s390/s390.opt:181 #, no-c-format msgid "Use packed stack layout." msgstr "" -#: config/s390/s390.opt:182 +#: config/s390/s390.opt:185 #, no-c-format msgid "Use bras for executable < 64k." msgstr "" -#: config/s390/s390.opt:186 +#: config/s390/s390.opt:189 #, no-c-format msgid "Disable hardware floating point." msgstr "" -#: config/s390/s390.opt:190 +#: config/s390/s390.opt:193 #, no-c-format msgid "" "Set the max. number of bytes which has to be left to stack size before a " "trap instruction is triggered." msgstr "" -#: config/s390/s390.opt:194 +#: config/s390/s390.opt:197 #, no-c-format msgid "Switches off the -mstack-guard= option." msgstr "" -#: config/s390/s390.opt:198 +#: config/s390/s390.opt:201 #, no-c-format msgid "" "Emit extra code in the function prologue in order to trap if the stack size " "exceeds the given limit." msgstr "" -#: config/s390/s390.opt:202 +#: config/s390/s390.opt:205 #, no-c-format msgid "Switches off the -mstack-size= option." msgstr "" -#: config/s390/s390.opt:210 +#: config/s390/s390.opt:213 #, no-c-format msgid "Use the mvcle instruction for block moves." msgstr "" -#: config/s390/s390.opt:214 +#: config/s390/s390.opt:217 #, no-c-format msgid "" "Enable the z vector language extension providing the context-sensitive " "vector macro and enable the Altivec-style builtins in vecintrin.h." msgstr "" -#: config/s390/s390.opt:219 +#: config/s390/s390.opt:222 #, no-c-format msgid "Warn if a function uses alloca or creates an array with dynamic size." msgstr "" -#: config/s390/s390.opt:223 +#: config/s390/s390.opt:226 #, no-c-format msgid "Warn if a single function's framesize exceeds the given framesize." msgstr "" -#: config/s390/s390.opt:227 +#: config/s390/s390.opt:230 #, no-c-format msgid "z/Architecture." msgstr "" -#: config/s390/s390.opt:231 +#: config/s390/s390.opt:234 #, no-c-format msgid "" "Set the branch costs for conditional branch instructions. Reasonable values " "are small, non-negative integers. The default branch cost is 1." msgstr "" -#: config/s390/s390.opt:237 config/arm/arm.opt:178 +#: config/s390/s390.opt:240 config/arm/arm.opt:178 #, no-c-format msgid "Assume data segments are relative to text segment." msgstr "" -#: config/s390/s390.opt:242 +#: config/s390/s390.opt:245 #, no-c-format msgid "" "Wrap all indirect branches into execute in order to disable branch " "prediction." msgstr "" -#: config/s390/s390.opt:247 +#: config/s390/s390.opt:250 #, no-c-format msgid "" "Wrap indirect table jumps and computed gotos into execute in order to " @@ -10115,20 +10125,20 @@ msgid "" "required please use thunk-inline instead." msgstr "" -#: config/s390/s390.opt:255 +#: config/s390/s390.opt:258 #, no-c-format msgid "" "Wrap all indirect calls into execute in order to disable branch prediction." msgstr "" -#: config/s390/s390.opt:259 +#: config/s390/s390.opt:262 #, no-c-format msgid "" "Wrap all indirect return branches into execute in order to disable branch " "prediction." msgstr "" -#: config/s390/s390.opt:264 +#: config/s390/s390.opt:267 #, no-c-format msgid "" "Wrap indirect return branches into execute in order to disable branch " @@ -10136,7 +10146,7 @@ msgid "" "be restored from memory." msgstr "" -#: config/s390/s390.opt:270 +#: config/s390/s390.opt:273 #, no-c-format msgid "" "Wrap indirect return branches into execute in order to disable branch " @@ -10144,7 +10154,7 @@ msgid "" "to be restored from memory." msgstr "" -#: config/s390/s390.opt:292 +#: config/s390/s390.opt:295 #, no-c-format msgid "" "Generate sections .s390_indirect_jump, .s390_indirect_call, ." @@ -10155,19 +10165,19 @@ msgid "" "location." msgstr "" -#: config/s390/s390.opt:301 +#: config/s390/s390.opt:304 #, no-c-format msgid "" "Emit profiling counter call at function entry before prologue. The compiled " "code will require a 64-bit CPU and glibc 2.29 or newer to run." msgstr "" -#: config/s390/s390.opt:306 +#: config/s390/s390.opt:309 #, no-c-format msgid "Generate __mcount_loc section with all _mcount and __fentry__ calls." msgstr "" -#: config/s390/s390.opt:315 +#: config/s390/s390.opt:318 #, no-c-format msgid "" "Emit fused multiply-add instructions for long doubles in vector registers " @@ -10180,12 +10190,12 @@ msgid "" "testing purposes." msgstr "" -#: config/s390/s390.opt:330 +#: config/s390/s390.opt:333 #, no-c-format msgid "Store all argument registers on the stack." msgstr "" -#: config/s390/s390.opt:334 +#: config/s390/s390.opt:337 #, no-c-format msgid "" "Assume external symbols, whose natural alignment would be 1, to be " @@ -15659,7 +15669,7 @@ msgstr "" msgid "Mark all loops as parallel." msgstr "" -#: common.opt:1852 common.opt:1860 common.opt:3241 +#: common.opt:1852 common.opt:1860 common.opt:3249 #, no-c-format msgid "Enable loop nest transforms. Same as -floop-nest-optimize." msgstr "" @@ -15831,7 +15841,12 @@ msgid "" "operations inline, even if against optimization." msgstr "" -#: common.opt:2061 +#: common.opt:2058 +#, no-c-format +msgid "Equivalent to -fcf-protection=full." +msgstr "" + +#: common.opt:2062 #, no-c-format msgid "" "-fcf-protection=[full|branch|return|none|check]\tInstrument functions with " @@ -15839,367 +15854,372 @@ msgid "" "valid targets." msgstr "" -#: common.opt:2084 +#: common.opt:2085 #, no-c-format msgid "Instrument function entry and exit with profiling calls." msgstr "" -#: common.opt:2088 +#: common.opt:2089 #, no-c-format msgid "Instrument function entry and exit with profiling calls invoked once." msgstr "" -#: common.opt:2092 +#: common.opt:2093 #, no-c-format msgid "" "-finstrument-functions-exclude-function-list=name,...\tDo not instrument " "listed functions." msgstr "" -#: common.opt:2096 +#: common.opt:2097 #, no-c-format msgid "" "-finstrument-functions-exclude-file-list=filename,...\tDo not instrument " "functions listed in files." msgstr "" -#: common.opt:2100 +#: common.opt:2101 #, no-c-format msgid "Perform interprocedural constant propagation." msgstr "" -#: common.opt:2104 +#: common.opt:2105 #, no-c-format msgid "Perform cloning to make Interprocedural constant propagation stronger." msgstr "" -#: common.opt:2112 +#: common.opt:2113 #, no-c-format msgid "Perform interprocedural bitwise constant propagation." msgstr "" -#: common.opt:2116 +#: common.opt:2117 #, no-c-format msgid "Perform interprocedural modref analysis." msgstr "" -#: common.opt:2120 +#: common.opt:2121 +#, no-c-format +msgid "Perform reordering and cloning of functions to maximize locality." +msgstr "" + +#: common.opt:2125 #, no-c-format msgid "Perform interprocedural profile propagation." msgstr "" -#: common.opt:2124 +#: common.opt:2129 #, no-c-format msgid "Perform interprocedural points-to analysis." msgstr "" -#: common.opt:2128 +#: common.opt:2133 #, no-c-format msgid "Discover pure and const functions." msgstr "" -#: common.opt:2132 +#: common.opt:2137 #, no-c-format msgid "Perform Identical Code Folding for functions and read-only variables." msgstr "" -#: common.opt:2136 +#: common.opt:2141 #, no-c-format msgid "Perform Identical Code Folding for functions." msgstr "" -#: common.opt:2140 +#: common.opt:2145 #, no-c-format msgid "Perform Identical Code Folding for variables." msgstr "" -#: common.opt:2144 +#: common.opt:2149 #, no-c-format msgid "Discover read-only and non addressable static variables." msgstr "" -#: common.opt:2148 +#: common.opt:2153 #, no-c-format msgid "Discover read-only, write-only and non-addressable static variables." msgstr "" -#: common.opt:2152 +#: common.opt:2157 #, no-c-format msgid "Reduce stack alignment on call sites if possible." msgstr "" -#: common.opt:2164 +#: common.opt:2169 #, no-c-format msgid "Perform IPA Value Range Propagation." msgstr "" -#: common.opt:2168 +#: common.opt:2173 #, no-c-format msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm." msgstr "" -#: common.opt:2172 +#: common.opt:2177 #, no-c-format msgid "" "Assume strict aliasing rules apply across (uninlined) function boundaries." msgstr "" -#: common.opt:2185 +#: common.opt:2190 #, no-c-format msgid "-fira-region=[one|all|mixed]\tSet regions for IRA." msgstr "" -#: common.opt:2201 +#: common.opt:2206 #, no-c-format msgid "Use IRA based register pressure calculation in RTL hoist optimizations." msgstr "" -#: common.opt:2206 +#: common.opt:2211 #, no-c-format msgid "Use IRA based register pressure calculation in RTL loop optimizations." msgstr "" -#: common.opt:2211 +#: common.opt:2216 #, no-c-format msgid "Share slots for saving different hard registers." msgstr "" -#: common.opt:2215 +#: common.opt:2220 #, no-c-format msgid "Share stack slots for spilled pseudo-registers." msgstr "" -#: common.opt:2219 +#: common.opt:2224 #, no-c-format msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages." msgstr "" -#: common.opt:2223 +#: common.opt:2228 #, no-c-format msgid "Optimize induction variables on trees." msgstr "" -#: common.opt:2227 +#: common.opt:2232 #, no-c-format msgid "Use jump tables for sufficiently large switch statements." msgstr "" -#: common.opt:2231 +#: common.opt:2236 #, no-c-format msgid "Use bit tests for sufficiently large switch statements." msgstr "" -#: common.opt:2235 +#: common.opt:2240 #, no-c-format msgid "Generate code for functions even if they are fully inlined." msgstr "" -#: common.opt:2239 +#: common.opt:2244 #, no-c-format msgid "Generate code for static functions even if they are never called." msgstr "" -#: common.opt:2243 +#: common.opt:2248 #, no-c-format msgid "Emit static const variables even if they are not used." msgstr "" -#: common.opt:2247 +#: common.opt:2252 #, no-c-format msgid "Give external symbols a leading underscore." msgstr "" -#: common.opt:2255 +#: common.opt:2260 #, no-c-format msgid "Do CFG-sensitive rematerialization in LRA." msgstr "" -#: common.opt:2259 +#: common.opt:2264 #, no-c-format msgid "Enable link-time optimization." msgstr "" -#: common.opt:2263 +#: common.opt:2268 #, no-c-format msgid "Link-time optimization with number of parallel jobs or jobserver." msgstr "" -#: common.opt:2267 +#: common.opt:2272 #, no-c-format msgid "Enable incremental LTO, with its cache in given directory." msgstr "" -#: common.opt:2271 +#: common.opt:2276 #, no-c-format msgid "" "Number of cache entries in incremental LTO after which to prune old entries." msgstr "" -#: common.opt:2296 +#: common.opt:2304 #, no-c-format msgid "Specify the algorithm to partition symbols and vars at linktime." msgstr "" -#: common.opt:2301 +#: common.opt:2309 #, no-c-format msgid "Use zlib/zstd compression level <number> for IL." msgstr "" -#: common.opt:2309 +#: common.opt:2317 #, no-c-format msgid "Report various link-time optimization statistics." msgstr "" -#: common.opt:2313 +#: common.opt:2321 #, no-c-format msgid "Report various link-time optimization statistics for WPA only." msgstr "" -#: common.opt:2317 +#: common.opt:2325 #, no-c-format msgid "Set errno after built-in math functions." msgstr "" -#: common.opt:2321 +#: common.opt:2329 #, no-c-format msgid "-fmax-errors=<number>\tMaximum number of errors to report." msgstr "" -#: common.opt:2325 +#: common.opt:2333 #, no-c-format msgid "Allow removal of malloc and free pairs when allocated block is unused." msgstr "" -#: common.opt:2332 +#: common.opt:2340 #, no-c-format msgid "Report on permanent memory allocation." msgstr "" -#: common.opt:2336 +#: common.opt:2344 #, no-c-format msgid "Report on permanent memory allocation in WPA only." msgstr "" -#: common.opt:2343 +#: common.opt:2351 #, no-c-format msgid "Attempt to merge identical constants and constant variables." msgstr "" -#: common.opt:2347 +#: common.opt:2355 #, no-c-format msgid "Attempt to merge identical constants across compilation units." msgstr "" -#: common.opt:2351 +#: common.opt:2359 #, no-c-format msgid "Attempt to merge identical debug strings across compilation units." msgstr "" -#: common.opt:2355 +#: common.opt:2363 #, no-c-format msgid "" "-fmessage-length=<number>\tLimit diagnostics to <number> characters per " "line. 0 suppresses line-wrapping." msgstr "" -#: common.opt:2359 +#: common.opt:2367 #, no-c-format msgid "Align the start of every function." msgstr "" -#: common.opt:2363 +#: common.opt:2371 #, no-c-format msgid "Perform SMS based modulo scheduling before the first scheduling pass." msgstr "" -#: common.opt:2367 +#: common.opt:2375 #, no-c-format msgid "Perform SMS based modulo scheduling with register moves allowed." msgstr "" -#: common.opt:2371 +#: common.opt:2379 #, no-c-format msgid "Move loop invariant computations out of loops." msgstr "" -#: common.opt:2375 +#: common.opt:2383 #, no-c-format msgid "Move stores out of loops." msgstr "" -#: common.opt:2379 +#: common.opt:2387 #, no-c-format msgid "Building block for specs-based multilib-aware TFLAGS." msgstr "" -#: common.opt:2383 +#: common.opt:2391 #, no-c-format msgid "Use the RTL dead code elimination pass." msgstr "" -#: common.opt:2387 +#: common.opt:2395 #, no-c-format msgid "Use the RTL dead store elimination pass." msgstr "" -#: common.opt:2391 +#: common.opt:2399 #, no-c-format msgid "" "Enable/Disable the traditional scheduling in loops that already passed " "modulo scheduling." msgstr "" -#: common.opt:2395 +#: common.opt:2403 #, no-c-format msgid "Support synchronous non-call exceptions." msgstr "" -#: common.opt:2402 +#: common.opt:2410 #, no-c-format msgid "" "-foffload-options=<targets>=<options>\tSpecify options for the offloading " "targets." msgstr "" -#: common.opt:2406 +#: common.opt:2414 #, no-c-format msgid "-foffload-abi=[lp64|ilp32]\tSet the ABI to use in an offload compiler." msgstr "" -#: common.opt:2419 +#: common.opt:2427 #, no-c-format msgid "-foffload-abi-host-opts=<options>\tSpecify host ABI options." msgstr "" -#: common.opt:2423 +#: common.opt:2431 #, no-c-format msgid "When possible do not generate stack frames." msgstr "" -#: common.opt:2430 +#: common.opt:2438 #, no-c-format msgid "" "Generate SIMD clones for functions with the OpenMP declare target directive." msgstr "" -#: common.opt:2449 +#: common.opt:2457 #, no-c-format msgid "Enable all optimization info dumps on stderr." msgstr "" -#: common.opt:2453 +#: common.opt:2461 #, no-c-format msgid "-fopt-info[-<type>=filename]\tDump compiler optimization details." msgstr "" -#: common.opt:2457 +#: common.opt:2465 #, no-c-format msgid "" "Write a SRCFILE.opt-record.json file detailing what optimizations were " "performed." msgstr "" -#: common.opt:2461 +#: common.opt:2469 #, no-c-format msgid "" "Detect loops calculating CRC and replace with faster implementation. If the " @@ -16210,275 +16230,275 @@ msgid "" "based CRC." msgstr "" -#: common.opt:2475 +#: common.opt:2483 #, no-c-format msgid "Optimize sibling and tail recursive calls." msgstr "" -#: common.opt:2479 +#: common.opt:2487 #, no-c-format msgid "Insert path profiling code." msgstr "" -#: common.opt:2483 +#: common.opt:2491 #, no-c-format msgid "Perform partial inlining." msgstr "" -#: common.opt:2487 common.opt:2491 +#: common.opt:2495 common.opt:2499 #, no-c-format msgid "Report on memory allocation before interprocedural optimization." msgstr "" -#: common.opt:2495 +#: common.opt:2503 #, no-c-format msgid "Pack structure members together without holes." msgstr "" -#: common.opt:2499 +#: common.opt:2507 #, no-c-format msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment." msgstr "" -#: common.opt:2503 +#: common.opt:2511 #, no-c-format msgid "Return small aggregates in memory, not registers." msgstr "" -#: common.opt:2507 +#: common.opt:2515 #, no-c-format msgid "Perform loop peeling." msgstr "" -#: common.opt:2511 +#: common.opt:2519 #, no-c-format msgid "Enable machine specific peephole optimizations." msgstr "" -#: common.opt:2515 +#: common.opt:2523 #, no-c-format msgid "Enable an RTL peephole pass before sched2." msgstr "" -#: common.opt:2519 +#: common.opt:2527 #, no-c-format msgid "Generate position-independent code if possible (large mode)." msgstr "" -#: common.opt:2523 +#: common.opt:2531 #, no-c-format msgid "" "Generate position-independent code for executables if possible (large mode)." msgstr "" -#: common.opt:2527 +#: common.opt:2535 #, no-c-format msgid "Generate position-independent code if possible (small mode)." msgstr "" -#: common.opt:2531 +#: common.opt:2539 #, no-c-format msgid "" "Generate position-independent code for executables if possible (small mode)." msgstr "" -#: common.opt:2535 +#: common.opt:2543 #, no-c-format msgid "" "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)." msgstr "" -#: common.opt:2539 +#: common.opt:2547 #, no-c-format msgid "Specify a plugin to load." msgstr "" -#: common.opt:2543 +#: common.opt:2551 #, no-c-format msgid "" "-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for " "plugin <name>." msgstr "" -#: common.opt:2547 +#: common.opt:2555 #, no-c-format msgid "Run predictive commoning optimization." msgstr "" -#: common.opt:2551 +#: common.opt:2559 #, no-c-format msgid "Generate prefetch instructions, if available, for arrays in loops." msgstr "" -#: common.opt:2555 +#: common.opt:2563 #, no-c-format msgid "Enable basic program profiling code." msgstr "" -#: common.opt:2559 +#: common.opt:2567 #, no-c-format msgid "Generate absolute source path names for gcov." msgstr "" -#: common.opt:2563 +#: common.opt:2571 #, no-c-format msgid "Insert arc-based program profiling code." msgstr "" -#: common.opt:2567 +#: common.opt:2575 #, no-c-format msgid "Insert condition coverage profiling code." msgstr "" -#: common.opt:2571 +#: common.opt:2579 #, no-c-format msgid "" "Set the top-level directory for storing the profile data. The default is " "'pwd'." msgstr "" -#: common.opt:2576 +#: common.opt:2584 #, no-c-format msgid "Select the name for storing the profile note file." msgstr "" -#: common.opt:2580 +#: common.opt:2588 #, no-c-format msgid "Enable correction of flow inconsistent profile data input." msgstr "" -#: common.opt:2584 +#: common.opt:2592 #, no-c-format msgid "" "-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update " "method." msgstr "" -#: common.opt:2588 +#: common.opt:2596 #, no-c-format msgid "" "Instrument only functions from files whose name matches any of the regular " "expressions (separated by semi-colons)." msgstr "" -#: common.opt:2592 +#: common.opt:2600 #, 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:2608 +#: common.opt:2616 #, no-c-format msgid "" "-fprofile-reproducible=[serial|parallel-runs|multithreaded]\tControl level " "of reproducibility of profile gathered by -fprofile-generate." msgstr "" -#: common.opt:2624 +#: common.opt:2632 #, no-c-format msgid "" "Remove prefix from absolute path before mangling name for -fprofile-" "generate= and -fprofile-use=." msgstr "" -#: common.opt:2628 +#: common.opt:2636 #, no-c-format msgid "" "-fprofile-prefix-map=<old>=<new>\tMap one directory name to another in GCOV " "coverage result." msgstr "" -#: common.opt:2632 +#: common.opt:2640 #, no-c-format msgid "" "Enable common options for generating profile info for profile feedback " "directed optimizations." msgstr "" -#: common.opt:2636 +#: common.opt:2644 #, no-c-format msgid "" "Enable common options for generating profile info for profile feedback " "directed optimizations, and set -fprofile-dir=." msgstr "" -#: common.opt:2640 +#: common.opt:2648 #, no-c-format msgid "" "Register the profile information in the .gcov_info section instead of using " "a constructor/destructor." msgstr "" -#: common.opt:2644 +#: common.opt:2652 #, no-c-format msgid "" "Register the profile information in the specified section instead of using a " "constructor/destructor." msgstr "" -#: common.opt:2648 +#: common.opt:2656 #, no-c-format msgid "" "Do not assume that functions never executed during the train run are cold." msgstr "" -#: common.opt:2652 +#: common.opt:2660 #, no-c-format msgid "" "Enable common options for performing profile feedback directed optimizations." msgstr "" -#: common.opt:2656 +#: common.opt:2664 #, no-c-format msgid "" "Enable common options for performing profile feedback directed " "optimizations, and set -fprofile-dir=." msgstr "" -#: common.opt:2660 +#: common.opt:2668 #, no-c-format msgid "Insert code to profile values of expressions." msgstr "" -#: common.opt:2664 +#: common.opt:2672 #, no-c-format msgid "Report on consistency of profile." msgstr "" -#: common.opt:2668 +#: common.opt:2676 #, no-c-format msgid "Enable function reordering that improves code placement." msgstr "" -#: common.opt:2672 +#: common.opt:2680 #, no-c-format msgid "Insert NOP instructions at each function entry." msgstr "" -#: common.opt:2679 +#: common.opt:2687 #, no-c-format msgid "-frandom-seed=<string>\tMake compile reproducible using <string>." msgstr "" -#: common.opt:2689 +#: common.opt:2697 #, no-c-format msgid "Record gcc command line switches in the object file." msgstr "" -#: common.opt:2693 +#: common.opt:2701 #, no-c-format msgid "Return small aggregates in registers." msgstr "" -#: common.opt:2701 +#: common.opt:2709 #, 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:2715 +#: common.opt:2723 #, no-c-format msgid "" "-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations " @@ -16486,520 +16506,520 @@ msgid "" "multiple-level control on the enabled IPA optimizations." msgstr "" -#: common.opt:2730 +#: common.opt:2738 #, no-c-format msgid "Tell DCE to remove unused C++ allocations." msgstr "" -#: common.opt:2734 +#: common.opt:2742 #, no-c-format msgid "Relief of register pressure through live range shrinkage." msgstr "" -#: common.opt:2738 +#: common.opt:2746 #, no-c-format msgid "Perform a register renaming optimization pass." msgstr "" -#: common.opt:2742 +#: common.opt:2750 #, no-c-format msgid "Perform a target dependent instruction fusion optimization pass." msgstr "" -#: common.opt:2746 +#: common.opt:2754 #, no-c-format msgid "Reorder basic blocks to improve code placement." msgstr "" -#: common.opt:2750 +#: common.opt:2758 #, no-c-format msgid "" "-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering " "algorithm." msgstr "" -#: common.opt:2763 +#: common.opt:2771 #, no-c-format msgid "Reorder basic blocks and partition into hot and cold sections." msgstr "" -#: common.opt:2767 +#: common.opt:2775 #, no-c-format msgid "Reorder functions to improve code placement." msgstr "" -#: common.opt:2771 +#: common.opt:2779 #, no-c-format msgid "Add a common subexpression elimination pass after loop optimizations." msgstr "" -#: common.opt:2779 +#: common.opt:2787 #, no-c-format msgid "Disable optimizations that assume default FP rounding behavior." msgstr "" -#: common.opt:2783 +#: common.opt:2791 #, no-c-format msgid "Enable scheduling across basic blocks." msgstr "" -#: common.opt:2787 +#: common.opt:2795 #, no-c-format msgid "Enable register pressure sensitive insn scheduling." msgstr "" -#: common.opt:2791 +#: common.opt:2799 #, no-c-format msgid "Allow speculative motion of non-loads." msgstr "" -#: common.opt:2795 +#: common.opt:2803 #, no-c-format msgid "Allow speculative motion of some loads." msgstr "" -#: common.opt:2799 +#: common.opt:2807 #, no-c-format msgid "Allow speculative motion of more loads." msgstr "" -#: common.opt:2803 +#: common.opt:2811 #, no-c-format msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler." msgstr "" -#: common.opt:2807 +#: common.opt:2815 #, no-c-format msgid "If scheduling post reload, do superblock scheduling." msgstr "" -#: common.opt:2815 +#: common.opt:2823 #, no-c-format msgid "Reschedule instructions before register allocation." msgstr "" -#: common.opt:2819 +#: common.opt:2827 #, no-c-format msgid "Reschedule instructions after register allocation." msgstr "" -#: common.opt:2826 +#: common.opt:2834 #, no-c-format msgid "Schedule instructions using selective scheduling algorithm." msgstr "" -#: common.opt:2830 +#: common.opt:2838 #, no-c-format msgid "Run selective scheduling after reload." msgstr "" -#: common.opt:2834 +#: common.opt:2842 #, no-c-format msgid "Run self-tests, using the given path to locate test files." msgstr "" -#: common.opt:2838 +#: common.opt:2846 #, no-c-format msgid "Perform software pipelining of inner loops during selective scheduling." msgstr "" -#: common.opt:2842 +#: common.opt:2850 #, no-c-format msgid "Perform software pipelining of outer loops during selective scheduling." msgstr "" -#: common.opt:2846 +#: common.opt:2854 #, no-c-format msgid "Reschedule pipelined regions without pipelining." msgstr "" -#: common.opt:2850 +#: common.opt:2858 #, no-c-format msgid "" "Allow interposing function (or variables) by ones with different semantics " "(or initializer) respectively by dynamic linker." msgstr "" -#: common.opt:2856 +#: common.opt:2864 #, no-c-format msgid "Allow premature scheduling of queued insns." msgstr "" -#: common.opt:2860 +#: common.opt:2868 #, no-c-format msgid "" "-fsched-stalled-insns=<number>\tSet number of queued insns that can be " "prematurely scheduled." msgstr "" -#: common.opt:2868 +#: common.opt:2876 #, no-c-format msgid "" "Set dependence distance checking in premature scheduling of queued insns." msgstr "" -#: common.opt:2872 +#: common.opt:2880 #, no-c-format msgid "" "-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in " "premature scheduling of queued insns." msgstr "" -#: common.opt:2876 +#: common.opt:2884 #, no-c-format msgid "Enable the group heuristic in the scheduler." msgstr "" -#: common.opt:2880 +#: common.opt:2888 #, no-c-format msgid "Enable the critical path heuristic in the scheduler." msgstr "" -#: common.opt:2884 +#: common.opt:2892 #, no-c-format msgid "Enable the speculative instruction heuristic in the scheduler." msgstr "" -#: common.opt:2888 +#: common.opt:2896 #, no-c-format msgid "Enable the rank heuristic in the scheduler." msgstr "" -#: common.opt:2892 +#: common.opt:2900 #, no-c-format msgid "Enable the last instruction heuristic in the scheduler." msgstr "" -#: common.opt:2896 +#: common.opt:2904 #, no-c-format msgid "Enable the dependent count heuristic in the scheduler." msgstr "" -#: common.opt:2900 +#: common.opt:2908 #, no-c-format msgid "Access data in the same section from shared anchor points." msgstr "" -#: common.opt:2912 +#: common.opt:2920 #, no-c-format msgid "Turn on Redundant Extensions Elimination pass." msgstr "" -#: common.opt:2916 +#: common.opt:2924 #, no-c-format msgid "Show column numbers in diagnostics, when available. Default on." msgstr "" -#: common.opt:2920 +#: common.opt:2928 #, 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:2925 +#: common.opt:2933 #, no-c-format msgid "Shrink-wrap parts of the prologue and epilogue separately." msgstr "" -#: common.opt:2929 +#: common.opt:2937 #, no-c-format msgid "Disable optimizations observable by IEEE signaling NaNs." msgstr "" -#: common.opt:2933 +#: common.opt:2941 #, no-c-format msgid "" "Disable floating point optimizations that ignore the IEEE signedness of zero." msgstr "" -#: common.opt:2937 +#: common.opt:2945 #, no-c-format msgid "Convert floating point constants to single precision constants." msgstr "" -#: common.opt:2941 +#: common.opt:2949 #, no-c-format msgid "Split lifetimes of induction variables when loops are unrolled." msgstr "" -#: common.opt:2945 +#: common.opt:2953 #, no-c-format msgid "Generate discontiguous stack frames." msgstr "" -#: common.opt:2949 +#: common.opt:2957 #, no-c-format msgid "Split wide types into independent registers." msgstr "" -#: common.opt:2953 +#: common.opt:2961 #, no-c-format msgid "Split wide types into independent registers earlier." msgstr "" -#: common.opt:2957 +#: common.opt:2965 #, no-c-format msgid "Enable backward propagation of use properties at the SSA level." msgstr "" -#: common.opt:2961 +#: common.opt:2969 #, no-c-format msgid "Optimize conditional patterns using SSA PHI nodes." msgstr "" -#: common.opt:2965 +#: common.opt:2973 #, no-c-format msgid "" "Optimize amount of stdarg registers saved to stack at start of function." msgstr "" -#: common.opt:2969 +#: common.opt:2977 #, no-c-format msgid "Apply variable expansion when loops are unrolled." msgstr "" -#: common.opt:2973 +#: common.opt:2981 #, no-c-format msgid "" "-fstack-check=[no|generic|specific]\tInsert stack checking code into the " "program." msgstr "" -#: common.opt:2977 +#: common.opt:2985 #, no-c-format msgid "" "Insert stack checking code into the program. Same as -fstack-check=specific." msgstr "" -#: common.opt:2981 +#: common.opt:2989 #, 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:2989 +#: common.opt:2997 #, no-c-format msgid "" "-fstack-limit-register=<register>\tTrap if the stack goes past <register>." msgstr "" -#: common.opt:2993 +#: common.opt:3001 #, no-c-format msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>." msgstr "" -#: common.opt:2997 +#: common.opt:3005 #, no-c-format msgid "Use propolice as a stack protection method." msgstr "" -#: common.opt:3001 +#: common.opt:3009 #, no-c-format msgid "Use a stack protection method for every function." msgstr "" -#: common.opt:3005 +#: common.opt:3013 #, no-c-format msgid "Use a smart stack protection method for certain functions." msgstr "" -#: common.opt:3009 +#: common.opt:3017 #, no-c-format msgid "" "Use stack protection method only for functions with the stack_protect " "attribute." msgstr "" -#: common.opt:3013 +#: common.opt:3021 #, no-c-format msgid "Output stack usage information on a per-function basis." msgstr "" -#: common.opt:3025 +#: common.opt:3033 #, no-c-format msgid "Assume strict aliasing rules apply." msgstr "" -#: common.opt:3029 +#: common.opt:3037 #, no-c-format msgid "" "Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer." msgstr "" -#: common.opt:3033 +#: common.opt:3041 #, no-c-format msgid "Disable stack scrub entirely, disregarding strub attributes." msgstr "" -#: common.opt:3037 +#: common.opt:3045 #, no-c-format msgid "Enable stack scrub as per attributes, with strict call checking." msgstr "" -#: common.opt:3046 +#: common.opt:3054 #, no-c-format msgid "Restore default strub mode: as per attributes, with relaxed checking." msgstr "" -#: common.opt:3050 +#: common.opt:3058 #, no-c-format msgid "Enable stack scrubbing for all viable functions." msgstr "" -#: common.opt:3054 +#: common.opt:3062 #, no-c-format msgid "Enable at-calls stack scrubbing for all viable functions." msgstr "" -#: common.opt:3058 +#: common.opt:3066 #, no-c-format msgid "Enable internal stack scrubbing for all viable functions." msgstr "" -#: common.opt:3062 +#: common.opt:3070 #, no-c-format msgid "Implement __atomic operations via libcalls to legacy __sync functions." msgstr "" -#: common.opt:3066 +#: common.opt:3074 #, no-c-format msgid "Check for syntax errors, then stop." msgstr "" -#: common.opt:3070 +#: common.opt:3078 #, no-c-format msgid "Create data files needed by \"gcov\"." msgstr "" -#: common.opt:3074 +#: common.opt:3082 #, no-c-format msgid "Perform jump threading optimizations." msgstr "" -#: common.opt:3078 +#: common.opt:3086 #, no-c-format msgid "Report the time taken by each compiler pass." msgstr "" -#: common.opt:3082 +#: common.opt:3090 #, no-c-format msgid "Record times taken by sub-phases separately." msgstr "" -#: common.opt:3086 +#: common.opt:3094 #, 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:3105 +#: common.opt:3113 #, no-c-format msgid "Reorder top level functions, variables, and asms." msgstr "" -#: common.opt:3109 +#: common.opt:3117 #, no-c-format msgid "Perform superblock formation via tail duplication." msgstr "" -#: common.opt:3113 +#: common.opt:3121 #, no-c-format msgid "" "For targets that normally need trampolines for nested functions, always " "generate them instead of using descriptors." msgstr "" -#: common.opt:3118 +#: common.opt:3126 #, no-c-format msgid "" "Whether trampolines are generated in executable memory rather than " "executable stack." msgstr "" -#: common.opt:3136 +#: common.opt:3144 #, no-c-format msgid "Assume floating-point operations can trap." msgstr "" -#: common.opt:3140 +#: common.opt:3148 #, no-c-format msgid "Trap for signed overflow in addition, subtraction and multiplication." msgstr "" -#: common.opt:3144 +#: common.opt:3152 #, no-c-format msgid "Enable SSA-CCP optimization on trees." msgstr "" -#: common.opt:3148 +#: common.opt:3156 #, no-c-format msgid "Enable SSA-BIT-CCP optimization on trees." msgstr "" -#: common.opt:3156 +#: common.opt:3164 #, no-c-format msgid "Enable loop header copying on trees." msgstr "" -#: common.opt:3164 +#: common.opt:3172 #, no-c-format msgid "Enable SSA coalescing of user variables." msgstr "" -#: common.opt:3172 +#: common.opt:3180 #, no-c-format msgid "Enable copy propagation on trees." msgstr "" -#: common.opt:3180 +#: common.opt:3188 #, no-c-format msgid "Transform condition stores into unconditional ones." msgstr "" -#: common.opt:3184 +#: common.opt:3192 #, no-c-format msgid "Perform conversions of switch initializations." msgstr "" -#: common.opt:3188 +#: common.opt:3196 #, no-c-format msgid "Enable SSA dead code elimination optimization on trees." msgstr "" -#: common.opt:3192 +#: common.opt:3200 #, no-c-format msgid "Enable dominator optimizations." msgstr "" -#: common.opt:3196 +#: common.opt:3204 #, no-c-format msgid "Enable tail merging on trees." msgstr "" -#: common.opt:3200 +#: common.opt:3208 #, no-c-format msgid "Enable dead store elimination." msgstr "" -#: common.opt:3204 +#: common.opt:3212 #, no-c-format msgid "Enable forward propagation on trees." msgstr "" -#: common.opt:3208 +#: common.opt:3216 #, no-c-format msgid "Enable Full Redundancy Elimination (FRE) on trees." msgstr "" -#: common.opt:3212 +#: common.opt:3220 #, no-c-format msgid "Enable string length optimizations on trees." msgstr "" -#: common.opt:3216 +#: common.opt:3224 #, no-c-format msgid "" "Detect paths that trigger erroneous or undefined behavior due to " @@ -17007,7 +17027,7 @@ msgid "" "flow and turn the statement with erroneous or undefined behavior into a trap." msgstr "" -#: common.opt:3222 +#: common.opt:3230 #, no-c-format msgid "" "Detect paths that trigger erroneous or undefined behavior due to a null " @@ -17016,538 +17036,538 @@ msgid "" "statement with erroneous or undefined behavior into a trap." msgstr "" -#: common.opt:3229 +#: common.opt:3237 #, no-c-format msgid "Enable loop distribution on trees." msgstr "" -#: common.opt:3233 +#: common.opt:3241 #, no-c-format msgid "Enable loop distribution for patterns transformed into a library call." msgstr "" -#: common.opt:3237 +#: common.opt:3245 #, no-c-format msgid "Enable loop invariant motion on trees." msgstr "" -#: common.opt:3245 +#: common.opt:3253 #, no-c-format msgid "Create canonical induction variables in loops." msgstr "" -#: common.opt:3249 +#: common.opt:3257 #, no-c-format msgid "Enable loop optimizations on tree level." msgstr "" -#: common.opt:3253 +#: common.opt:3261 #, no-c-format msgid "" "-ftree-parallelize-loops=<number>\tEnable automatic parallelization of loops." msgstr "" -#: common.opt:3257 +#: common.opt:3265 #, no-c-format msgid "Enable hoisting loads from conditional pointers." msgstr "" -#: common.opt:3261 +#: common.opt:3269 #, no-c-format msgid "Enable SSA-PRE optimization on trees." msgstr "" -#: common.opt:3265 +#: common.opt:3273 #, no-c-format msgid "" "In SSA-PRE optimization on trees, enable partial-partial redundancy " "elimination." msgstr "" -#: common.opt:3269 +#: common.opt:3277 #, no-c-format msgid "Perform function-local points-to analysis on trees." msgstr "" -#: common.opt:3273 +#: common.opt:3281 #, no-c-format msgid "Enable reassociation on tree level." msgstr "" -#: common.opt:3281 +#: common.opt:3289 #, no-c-format msgid "Enable SSA code sinking on trees." msgstr "" -#: common.opt:3285 +#: common.opt:3293 #, no-c-format msgid "Perform straight-line strength reduction." msgstr "" -#: common.opt:3289 +#: common.opt:3297 #, no-c-format msgid "Perform scalar replacement of aggregates." msgstr "" -#: common.opt:3293 +#: common.opt:3301 #, no-c-format msgid "Replace temporary expressions in the SSA->normal pass." msgstr "" -#: common.opt:3297 +#: common.opt:3305 #, no-c-format msgid "Perform live range splitting during the SSA->normal pass." msgstr "" -#: common.opt:3301 +#: common.opt:3309 #, no-c-format msgid "Perform Value Range Propagation on trees." msgstr "" -#: common.opt:3305 +#: common.opt:3313 #, no-c-format msgid "Split paths leading to loop backedges." msgstr "" -#: common.opt:3309 +#: common.opt:3317 #, no-c-format msgid "" "Assume common declarations may be overridden with ones with a larger " "trailing array." msgstr "" -#: common.opt:3314 +#: common.opt:3322 #, no-c-format msgid "Compile whole compilation unit at a time." msgstr "" -#: common.opt:3318 +#: common.opt:3326 #, no-c-format msgid "Trap on __builtin_unreachable instead of using it for optimization." msgstr "" -#: common.opt:3322 +#: common.opt:3330 #, no-c-format msgid "Perform loop unrolling when iteration count is known." msgstr "" -#: common.opt:3326 +#: common.opt:3334 #, no-c-format msgid "Perform loop unrolling for all loops." msgstr "" -#: common.opt:3341 +#: common.opt:3349 #, no-c-format msgid "" "Allow optimization for floating-point arithmetic which may change the result " "of the operation due to rounding." msgstr "" -#: common.opt:3346 +#: common.opt:3354 #, no-c-format msgid "Same as -fassociative-math for expressions which include division." msgstr "" -#: common.opt:3354 +#: common.opt:3362 #, no-c-format msgid "Allow math optimizations that may violate IEEE or ISO standards." msgstr "" -#: common.opt:3358 +#: common.opt:3366 #, no-c-format msgid "Perform loop unswitching." msgstr "" -#: common.opt:3362 +#: common.opt:3370 #, no-c-format msgid "Perform loop splitting." msgstr "" -#: common.opt:3366 +#: common.opt:3374 #, no-c-format msgid "Version loops based on whether indices have a stride of one." msgstr "" -#: common.opt:3370 +#: common.opt:3378 #, no-c-format msgid "Just generate unwind tables for exception handling." msgstr "" -#: common.opt:3374 +#: common.opt:3382 #, no-c-format msgid "Use the bfd linker instead of the default linker." msgstr "" -#: common.opt:3378 +#: common.opt:3386 #, no-c-format msgid "Use the gold linker instead of the default linker." msgstr "" -#: common.opt:3382 +#: common.opt:3390 #, no-c-format msgid "Use the lld LLVM linker instead of the default linker." msgstr "" -#: common.opt:3386 +#: common.opt:3394 #, no-c-format msgid "Use the Modern linker (MOLD) linker instead of the default linker." msgstr "" -#: common.opt:3396 +#: common.opt:3404 #, no-c-format msgid "Perform variable tracking." msgstr "" -#: common.opt:3403 +#: common.opt:3411 #, no-c-format msgid "Perform variable tracking by annotating assignments." msgstr "" -#: common.opt:3409 +#: common.opt:3417 #, no-c-format msgid "Toggle -fvar-tracking-assignments." msgstr "" -#: common.opt:3416 +#: common.opt:3424 #, no-c-format msgid "" "Perform variable tracking and also tag variables that are uninitialized." msgstr "" -#: common.opt:3421 +#: common.opt:3429 #, no-c-format msgid "Enable vectorization on trees." msgstr "" -#: common.opt:3429 +#: common.opt:3437 #, no-c-format msgid "Enable loop vectorization on trees." msgstr "" -#: common.opt:3433 +#: common.opt:3441 #, no-c-format msgid "Enable basic block vectorization (SLP) on trees." msgstr "" -#: common.opt:3437 +#: common.opt:3445 #, no-c-format msgid "" "-fvect-cost-model=[unlimited|dynamic|cheap|very-cheap]\tSpecifies the cost " "model for vectorization." msgstr "" -#: common.opt:3441 +#: common.opt:3449 #, 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:3460 +#: common.opt:3468 #, no-c-format msgid "" "Enables the dynamic vectorizer cost model. Preserved for backward " "compatibility." msgstr "" -#: common.opt:3468 +#: common.opt:3476 #, no-c-format msgid "Enable copy propagation of scalar-evolution information." msgstr "" -#: common.opt:3472 +#: common.opt:3480 #, no-c-format msgid "" "-ftrivial-auto-var-init=[uninitialized|pattern|zero]\tAdd initializations to " "automatic variables." msgstr "" -#: common.opt:3494 +#: common.opt:3502 #, no-c-format msgid "Add extra commentary to assembler output." msgstr "" -#: common.opt:3498 +#: common.opt:3506 #, no-c-format msgid "" "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol " "visibility." msgstr "" -#: common.opt:3517 +#: common.opt:3525 #, no-c-format msgid "Validate vtable pointers before using them." msgstr "" -#: common.opt:3533 +#: common.opt:3541 #, no-c-format msgid "Output vtable verification counters." msgstr "" -#: common.opt:3537 +#: common.opt:3545 #, no-c-format msgid "Output vtable verification pointer sets information." msgstr "" -#: common.opt:3541 +#: common.opt:3549 #, no-c-format msgid "Use expression value profiles in optimizations." msgstr "" -#: common.opt:3545 +#: common.opt:3553 #, no-c-format msgid "Construct webs and split unrelated uses of single variable." msgstr "" -#: common.opt:3549 +#: common.opt:3557 #, no-c-format msgid "Enable conditional dead code elimination for builtin calls." msgstr "" -#: common.opt:3553 +#: common.opt:3561 #, no-c-format msgid "Perform whole program optimizations." msgstr "" -#: common.opt:3557 +#: common.opt:3565 #, no-c-format msgid "Assume pointer overflow wraps around." msgstr "" -#: common.opt:3561 +#: common.opt:3569 #, no-c-format msgid "Assume signed arithmetic overflow wraps around." msgstr "" -#: common.opt:3565 +#: common.opt:3573 #, no-c-format msgid "Put zero initialized data in the bss section." msgstr "" -#: common.opt:3569 +#: common.opt:3577 #, no-c-format msgid "Clear call-used registers upon function return." msgstr "" -#: common.opt:3573 +#: common.opt:3581 #, no-c-format msgid "" "-fzero-init-padding-bits=[standard|unions|all]\tZero padding bits in " "initializers." msgstr "" -#: common.opt:3589 +#: common.opt:3597 #, no-c-format msgid "Generate debug information in default format." msgstr "" -#: common.opt:3593 +#: common.opt:3601 #, no-c-format msgid "Assume assembler support for (DWARF2+) .loc directives." msgstr "" -#: common.opt:3597 +#: common.opt:3605 #, no-c-format msgid "Assume assembler support for view in (DWARF2+) .loc directives." msgstr "" -#: common.opt:3601 +#: common.opt:3609 #, no-c-format msgid "Generate debug information in CodeView format." msgstr "" -#: common.opt:3621 +#: common.opt:3629 #, no-c-format msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF." msgstr "" -#: common.opt:3627 +#: common.opt:3635 #, no-c-format msgid "Generate CTF debug information at default level." msgstr "" -#: common.opt:3631 +#: common.opt:3639 #, no-c-format msgid "Generate BTF debug information at default level." msgstr "" -#: common.opt:3635 +#: common.opt:3643 #, no-c-format msgid "Generate pruned BTF when emitting BTF info." msgstr "" -#: common.opt:3639 +#: common.opt:3647 #, no-c-format msgid "Generate debug information in default version of DWARF format." msgstr "" -#: common.opt:3643 +#: common.opt:3651 #, no-c-format msgid "Generate debug information in DWARF v2 (or later) format." msgstr "" -#: common.opt:3647 +#: common.opt:3655 #, no-c-format msgid "Use 32-bit DWARF format when emitting DWARF debug information." msgstr "" -#: common.opt:3651 +#: common.opt:3659 #, no-c-format msgid "Use 64-bit DWARF format when emitting DWARF debug information." msgstr "" -#: common.opt:3655 +#: common.opt:3663 #, no-c-format msgid "Generate debug information in default extended format." msgstr "" -#: common.opt:3659 +#: common.opt:3667 #, no-c-format msgid "Generate extended entry point information for inlined functions." msgstr "" -#: common.opt:3663 +#: common.opt:3671 #, no-c-format msgid "Compute locview reset points based on insn length estimates." msgstr "" -#: common.opt:3671 +#: common.opt:3679 #, no-c-format msgid "Don't generate DWARF pubnames and pubtypes sections." msgstr "" -#: common.opt:3675 +#: common.opt:3683 #, no-c-format msgid "Generate DWARF pubnames and pubtypes sections." msgstr "" -#: common.opt:3679 +#: common.opt:3687 #, no-c-format msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions." msgstr "" -#: common.opt:3683 +#: common.opt:3691 #, no-c-format msgid "Record gcc command line switches in DWARF DW_AT_producer." msgstr "" -#: common.opt:3687 +#: common.opt:3695 #, no-c-format msgid "Generate debug information in separate .dwo files." msgstr "" -#: common.opt:3699 +#: common.opt:3707 #, no-c-format msgid "Emit progressive recommended breakpoint locations." msgstr "" -#: common.opt:3703 +#: common.opt:3711 #, no-c-format msgid "Don't emit DWARF additions beyond selected version." msgstr "" -#: common.opt:3707 +#: common.opt:3715 #, no-c-format msgid "" "Add description attributes to some DWARF DIEs that have no name attribute." msgstr "" -#: common.opt:3711 +#: common.opt:3719 #, no-c-format msgid "Toggle debug information generation." msgstr "" -#: common.opt:3715 +#: common.opt:3723 #, no-c-format msgid "Augment variable location lists with progressive views." msgstr "" -#: common.opt:3722 +#: common.opt:3730 #, no-c-format msgid "Generate debug information in VMS format." msgstr "" -#: common.opt:3751 +#: common.opt:3759 #, no-c-format msgid "Generate compressed debug sections." msgstr "" -#: common.opt:3755 +#: common.opt:3763 #, no-c-format msgid "-gz=<format>\tGenerate compressed debug sections in format <format>." msgstr "" -#: common.opt:3762 +#: common.opt:3770 #, no-c-format msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory." msgstr "" -#: common.opt:3766 +#: common.opt:3774 #, no-c-format msgid "-imultiarch <dir>\tSet <dir> to be the multiarch include subdirectory." msgstr "" -#: common.opt:3794 +#: common.opt:3802 #, no-c-format msgid "-o <file>\tPlace output into <file>." msgstr "" -#: common.opt:3798 +#: common.opt:3806 #, no-c-format msgid "Enable function profiling." msgstr "" -#: common.opt:3808 +#: common.opt:3816 #, no-c-format msgid "Like -pedantic but issue errors instead of warnings." msgstr "" -#: common.opt:3848 +#: common.opt:3856 #, no-c-format msgid "Do not display functions compiled or elapsed time." msgstr "" -#: common.opt:3880 +#: common.opt:3888 #, no-c-format msgid "Enable verbose output." msgstr "" -#: common.opt:3884 +#: common.opt:3892 #, no-c-format msgid "Display the compiler's version." msgstr "" -#: common.opt:3888 +#: common.opt:3896 #, no-c-format msgid "Suppress warnings." msgstr "" -#: common.opt:3898 +#: common.opt:3906 #, no-c-format msgid "Create a shared library." msgstr "" -#: common.opt:3962 +#: common.opt:3970 #, no-c-format msgid "Don't create a dynamically linked position independent executable." msgstr "" -#: common.opt:3966 +#: common.opt:3974 #, no-c-format msgid "Create a dynamically linked position independent executable." msgstr "" -#: common.opt:3970 +#: common.opt:3978 #, no-c-format msgid "Create a static position independent executable." msgstr "" -#: common.opt:3977 +#: common.opt:3985 #, no-c-format msgid "Use caller save register across calls if possible." msgstr "" -#: common.opt:3981 +#: common.opt:3989 #, no-c-format msgid "" "Perform dead code elimination on zero and sign extensions with special " @@ -17947,73 +17967,66 @@ msgstr "" #: params.opt:278 #, no-c-format msgid "" -"When using profile feedback, use the edge at this percentage position in " -"frequency histogram as the bases for IPA-CP heuristics." -msgstr "" - -#: params.opt:282 -#, no-c-format -msgid "" "Maximum number of statements visited during jump function offset discovery." msgstr "" -#: params.opt:286 +#: params.opt:282 #, 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:286 #, no-c-format msgid "" "Maximum number of aggregate content items for a parameter in jump functions " "and lattices." msgstr "" -#: params.opt:294 +#: params.opt:290 #, 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:294 #, no-c-format msgid "" "Maximum number of different predicates used to track properties of loops in " "IPA analysis." msgstr "" -#: params.opt:302 +#: params.opt:298 #, 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:302 #, no-c-format msgid "" "Minimum probability (in percent) of dereferencing of a function pointer " "parameter for it to be considered for replacement with simple values." msgstr "" -#: params.opt:310 +#: params.opt:306 #, no-c-format msgid "" "Maximum pieces that IPA-SRA tracks per formal parameter, as a consequence, " "also the maximum number of replacements of a formal parameter." msgstr "" -#: params.opt:314 +#: params.opt:310 #, no-c-format msgid "" "Maximum allowed growth of total size of new parameters that ipa-sra replaces " "a pointer to an aggregate with." msgstr "" -#: params.opt:318 +#: params.opt:314 #, no-c-format msgid "" "Additional maximum allowed growth of total size of new parameters that ipa-" @@ -18022,29 +18035,29 @@ msgid "" "functions." msgstr "" -#: params.opt:322 +#: params.opt:318 #, no-c-format msgid "" "The number of registers in each class kept unused by loop invariant motion." msgstr "" -#: params.opt:326 +#: params.opt:322 #, no-c-format msgid "Max size of conflict table in MB." msgstr "" -#: params.opt:330 +#: params.opt:326 #, no-c-format msgid "" "Approximate function insn number in 1K units triggering simple local RA." msgstr "" -#: params.opt:334 +#: params.opt:330 #, no-c-format msgid "Max loops number for regional RA." msgstr "" -#: params.opt:338 +#: params.opt:334 #, no-c-format msgid "" "Control ira to consider matching constraint (duplicated operand number) " @@ -18056,45 +18069,45 @@ msgid "" "class and respect the found qualified matching constraint." msgstr "" -#: params.opt:342 +#: params.opt:338 #, 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:346 +#: params.opt:342 #, no-c-format msgid "" "Bound on number of candidates below that all candidates are considered in iv " "optimizations." msgstr "" -#: params.opt:350 +#: params.opt:346 #, no-c-format msgid "Bound on number of iv uses in loop optimized in iv optimizations." msgstr "" -#: params.opt:354 +#: params.opt:350 #, 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:358 +#: params.opt:354 #, 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:362 +#: params.opt:358 #, no-c-format msgid "The size of L1 cache line." msgstr "" -#: params.opt:366 +#: params.opt:362 #, no-c-format msgid "" "The minimum recommended offset between two concurrently-accessed objects to " @@ -18105,7 +18118,7 @@ msgid "" "discouraged from doing so in public ABIs." msgstr "" -#: params.opt:375 +#: params.opt:371 #, no-c-format msgid "" "The maximum recommended size of contiguous memory occupied by two objects " @@ -18114,750 +18127,779 @@ msgid "" "processors with different cache line sizes." msgstr "" -#: params.opt:382 +#: params.opt:378 #, no-c-format msgid "The size of L1 cache." msgstr "" -#: params.opt:386 +#: params.opt:382 #, no-c-format msgid "The size of L2 cache." msgstr "" -#: params.opt:390 +#: params.opt:386 #, no-c-format msgid "Maximal growth due to inlining of large function (in percent)." msgstr "" -#: params.opt:394 +#: params.opt:390 #, no-c-format msgid "The size of function body to be considered large." msgstr "" -#: params.opt:398 +#: params.opt:394 #, no-c-format msgid "The size of stack frame to be considered large." msgstr "" -#: params.opt:402 +#: params.opt:398 #, no-c-format msgid "Maximal stack frame growth due to inlining (in percent)." msgstr "" -#: params.opt:406 +#: params.opt:402 #, no-c-format msgid "The size of translation unit to be considered large." msgstr "" -#: params.opt:410 +#: params.opt:406 #, no-c-format msgid "Maximum number of concurrently open C++ module files when lazy loading." msgstr "" -#: params.opt:414 +#: params.opt:410 #, no-c-format msgid "" "The minimum cost of an expensive expression in the loop invariant motion." msgstr "" -#: params.opt:418 +#: params.opt:414 #, no-c-format msgid "True if a non-short-circuit operation is optimal." msgstr "" -#: params.opt:422 +#: params.opt:418 #, no-c-format msgid "Size of tiles for loop blocking." msgstr "" -#: params.opt:426 +#: params.opt:422 #, no-c-format msgid "The maximum number of stmts in loop nest for loop interchange." msgstr "" -#: params.opt:430 +#: params.opt:426 #, no-c-format msgid "The minimum stride ratio for loop interchange to be profitable." msgstr "" -#: params.opt:434 +#: params.opt:430 #, no-c-format msgid "Max basic blocks number in loop for loop invariant motion." msgstr "" -#: params.opt:438 +#: params.opt:434 #, no-c-format msgid "Maximum number of datarefs in loop for building loop data dependencies." msgstr "" -#: params.opt:442 +#: params.opt:438 #, no-c-format msgid "" "The maximum number of instructions in an inner loop that is being considered " "for versioning." msgstr "" -#: params.opt:446 +#: params.opt:442 #, 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:450 +#: params.opt:446 #, no-c-format msgid "" "Minimal fall-through edge probability in percentage used to add BB to " "inheritance EBB in LRA." msgstr "" -#: params.opt:454 +#: params.opt:450 #, no-c-format msgid "" "The max number of reload pseudos which are considered during spilling a non-" "reload pseudo." msgstr "" -#: params.opt:458 +#: params.opt:454 #, no-c-format msgid "Maximal size of a partition for LTO (in estimated instructions)." msgstr "" -#: params.opt:462 +#: params.opt:458 #, no-c-format msgid "maximal number of LTO partitions streamed in parallel." msgstr "" -#: params.opt:466 +#: params.opt:462 #, no-c-format msgid "Minimal size of a partition for LTO (in estimated instructions)." msgstr "" -#: params.opt:470 +#: params.opt:466 #, no-c-format msgid "Number of partitions the program should be split to." msgstr "" -#: params.opt:474 +#: params.opt:485 +#, no-c-format +msgid "" +"The denominator n of fraction 1/n of the execution frequency of callee to be " +"cloned for a particular caller. Special value of 0 dictates to always clone " +"without a cut-off." +msgstr "" + +#: params.opt:489 +#, no-c-format +msgid "" +"Size cut-off for callee including inlined calls to be cloned for a " +"particular caller." +msgstr "" + +#: params.opt:493 +#, no-c-format +msgid "" +"Maximal size of a locality partition for LTO (in estimated instructions). " +"Value of 0 results in default value being used." +msgstr "" + +#: params.opt:497 #, no-c-format msgid "" "The maximum number of instructions to consider to unroll in a loop on " "average." msgstr "" -#: params.opt:478 +#: params.opt:501 #, no-c-format msgid "The maximum number of insns combine tries to combine." msgstr "" -#: params.opt:482 +#: params.opt:505 +#, no-c-format +msgid "" +"The maximum number of instructions that combine searches in order to find " +"the next use of a particular register." +msgstr "" + +#: params.opt:509 #, no-c-format msgid "The maximum depth of a loop nest we completely peel." msgstr "" -#: params.opt:486 +#: params.opt:513 #, no-c-format msgid "" "The maximum number of peelings of a single loop that is peeled completely." msgstr "" -#: params.opt:490 +#: params.opt:517 #, no-c-format msgid "The maximum number of insns of a completely peeled loop." msgstr "" -#: params.opt:494 +#: params.opt:521 #, no-c-format msgid "The maximum number of incoming edges to consider for crossjumping." msgstr "" -#: params.opt:498 +#: params.opt:525 #, no-c-format msgid "The maximum instructions CSE process before flushing." msgstr "" -#: params.opt:502 +#: params.opt:529 #, no-c-format msgid "The maximum length of path considered in cse." msgstr "" -#: params.opt:506 +#: params.opt:533 #, no-c-format msgid "The maximum memory locations recorded by cselib." msgstr "" -#: params.opt:510 +#: params.opt:537 #, no-c-format msgid "Max. count of debug markers to expand or inline." msgstr "" -#: params.opt:514 +#: params.opt:541 #, no-c-format msgid "The maximum number of instructions to consider to fill a delay slot." msgstr "" -#: params.opt:518 +#: params.opt:545 #, no-c-format msgid "" "The maximum number of instructions to consider to find accurate live " "register information." msgstr "" -#: params.opt:522 +#: params.opt:549 #, no-c-format msgid "Maximum number of active local stores in RTL dead store elimination." msgstr "" -#: params.opt:526 +#: params.opt:553 #, no-c-format msgid "" "The maximum number of nested indirect inlining performed by early inliner." msgstr "" -#: params.opt:530 +#: params.opt:557 #, no-c-format msgid "" "Maximum number of fields in a structure before pointer analysis treats the " "structure as a single variable." msgstr "" -#: params.opt:534 +#: params.opt:561 #, no-c-format msgid "" "Maximum number of instructions to copy when duplicating blocks on a finite " "state automaton jump thread path." msgstr "" -#: params.opt:538 +#: params.opt:565 #, no-c-format msgid "The maximum ratio of insertions to deletions of expressions in GCSE." msgstr "" -#: params.opt:542 +#: params.opt:569 #, no-c-format msgid "The maximum amount of memory to be allocated by GCSE, in kilobytes." msgstr "" -#: params.opt:546 +#: params.opt:573 #, no-c-format msgid "" "The maximum number of insns to duplicate when unfactoring computed gotos." msgstr "" -#: params.opt:550 +#: params.opt:577 #, no-c-format msgid "The maximum expansion factor when copying basic blocks." msgstr "" -#: params.opt:554 +#: params.opt:581 #, no-c-format msgid "Maximum depth of search in the dominator tree for expressions to hoist." msgstr "" -#: params.opt:558 +#: params.opt:585 #, no-c-format msgid "" "Maximum loop depth of a call which is considered for inlining functions " "called once." msgstr "" -#: params.opt:562 +#: params.opt:589 #, no-c-format msgid "" "Maximum combined size of caller and callee which is inlined if callee is " "called once." msgstr "" -#: params.opt:566 +#: params.opt:593 #, no-c-format msgid "The maximum number of instructions when automatically inlining." msgstr "" -#: params.opt:570 +#: params.opt:597 #, no-c-format msgid "" "The maximum number of instructions inline function can grow to via recursive " "inlining." msgstr "" -#: params.opt:574 +#: params.opt:601 #, no-c-format msgid "" "The maximum number of instructions non-inline function can grow to via " "recursive inlining." msgstr "" -#: params.opt:578 +#: params.opt:605 #, no-c-format msgid "" "The maximum number of instructions in a single function eligible for " "inlining." msgstr "" -#: params.opt:582 +#: params.opt:609 #, no-c-format msgid "The maximum number of instructions when inlining for size." msgstr "" -#: params.opt:586 +#: params.opt:613 #, no-c-format msgid "" "The maximum number of instructions when automatically inlining small " "functions." msgstr "" -#: params.opt:590 +#: params.opt:617 #, no-c-format msgid "The maximum depth of recursive inlining for inline functions." msgstr "" -#: params.opt:594 +#: params.opt:621 #, no-c-format msgid "The maximum depth of recursive inlining for non-inline functions." msgstr "" -#: params.opt:598 +#: params.opt:625 #, no-c-format msgid "Maximum number of isl operations, 0 means unlimited." msgstr "" -#: params.opt:602 +#: params.opt:629 #, no-c-format msgid "Bound on the cost of an expression to compute the number of iterations." msgstr "" -#: params.opt:606 +#: params.opt:633 #, no-c-format msgid "" "Bound on the number of iterations the brute force # of iterations analysis " "algorithm evaluates." msgstr "" -#: params.opt:610 +#: params.opt:637 #, no-c-format msgid "" "Maximum number of statements allowed in a block that needs to be duplicated " "when threading jumps." msgstr "" -#: params.opt:614 +#: params.opt:641 #, no-c-format msgid "Search space limit for the backwards jump threader." msgstr "" -#: params.opt:618 +#: params.opt:645 #, no-c-format msgid "" "The maximum number of RTL nodes that can be recorded as combiner's last " "value." msgstr "" -#: params.opt:622 +#: params.opt:649 #, no-c-format msgid "" "The maximum number of insns in loop header duplicated by the copy loop " "headers pass." msgstr "" -#: params.opt:626 +#: params.opt:653 #, no-c-format msgid "" "The maximum number of backtrack attempts the scheduler should make when " "modulo scheduling a loop." msgstr "" -#: params.opt:630 +#: params.opt:657 #, no-c-format msgid "Minimum page size for warning purposes." msgstr "" -#: params.opt:634 +#: params.opt:661 #, no-c-format msgid "" "Maximum length of partial antic set when performing tree pre optimization." msgstr "" -#: params.opt:638 +#: params.opt:665 #, no-c-format msgid "The maximum number of branches on the path through the peeled sequence." msgstr "" -#: params.opt:642 +#: params.opt:669 #, no-c-format msgid "The maximum number of peelings of a single loop." msgstr "" -#: params.opt:646 +#: params.opt:673 #, no-c-format msgid "The maximum number of insns of a peeled loop." msgstr "" -#: params.opt:650 +#: params.opt:677 #, no-c-format msgid "The maximum length of scheduling's pending operations list." msgstr "" -#: params.opt:654 params.opt:698 +#: params.opt:681 params.opt:725 #, no-c-format msgid "" "The maximum number of blocks in a region to be considered for interblock " "scheduling." msgstr "" -#: params.opt:658 params.opt:702 +#: params.opt:685 params.opt:729 #, no-c-format msgid "" "The maximum number of insns in a region to be considered for interblock " "scheduling." msgstr "" -#: params.opt:662 +#: params.opt:689 #, no-c-format msgid "" "Maximum depth of sqrt chains to use when synthesizing exponentiation by a " "real constant." msgstr "" -#: params.opt:666 +#: params.opt:693 #, no-c-format msgid "The maximum number of loop iterations we predict statically." msgstr "" -#: params.opt:670 +#: params.opt:697 #, no-c-format msgid "" "The maximum number of instructions to search backward when looking for " "equivalent reload." msgstr "" -#: params.opt:674 +#: params.opt:701 #, no-c-format msgid "" "Maximum number of insns in a basic block to consider for RTL if-conversion." msgstr "" -#: params.opt:678 +#: params.opt:705 #, 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:682 +#: params.opt:709 #, 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:686 +#: params.opt:713 #, no-c-format msgid "The maximum number of iterations through CFG to extend regions." msgstr "" -#: params.opt:690 +#: params.opt:717 #, no-c-format msgid "" "The maximum conflict delay for an insn to be considered for speculative " "motion." msgstr "" -#: params.opt:694 +#: params.opt:721 #, 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:706 +#: params.opt:733 #, no-c-format msgid "Maximum length of candidate scans for straight-line strength reduction." msgstr "" -#: params.opt:710 +#: params.opt:737 #, no-c-format msgid "Maximum number of may-defs visited when devirtualizing speculatively." msgstr "" -#: params.opt:714 +#: params.opt:741 #, no-c-format msgid "" "Maximum recursion depth allowed when querying a property of an SSA name." msgstr "" -#: params.opt:718 +#: params.opt:745 #, no-c-format msgid "Maximum number of constant stores to merge in the store merging pass." msgstr "" -#: params.opt:722 +#: params.opt:749 #, no-c-format msgid "Maximum number of conditional store pairs that can be sunk." msgstr "" -#: params.opt:726 params.opt:730 +#: params.opt:753 params.opt:757 #, no-c-format msgid "" "Maximum number of store chains to track at the same time in the store " "merging pass." msgstr "" -#: params.opt:734 +#: params.opt:761 #, no-c-format msgid "Maximum amount of similar bbs to compare a bb with." msgstr "" -#: params.opt:738 +#: params.opt:765 #, no-c-format msgid "Maximum amount of iterations of the pass over a function." msgstr "" -#: params.opt:742 +#: params.opt:769 #, no-c-format msgid "" "Maximum number of strings for which strlen optimization pass will track " "string lengths." msgstr "" -#: params.opt:746 +#: params.opt:773 #, 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:750 +#: params.opt:777 #, no-c-format msgid "The maximum number of unrollings of a single loop." msgstr "" -#: params.opt:754 +#: params.opt:781 #, no-c-format msgid "The maximum number of instructions to consider to unroll in a loop." msgstr "" -#: params.opt:758 +#: params.opt:785 #, no-c-format msgid "The maximum number of insns of an unswitched loop." msgstr "" -#: params.opt:762 +#: params.opt:789 #, no-c-format msgid "The maximum depth of a loop nest to be unswitched." msgstr "" -#: params.opt:766 +#: params.opt:793 #, 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:770 +#: params.opt:797 #, no-c-format msgid "Max. recursion depth for expanding var tracking expressions." msgstr "" -#: params.opt:774 +#: params.opt:801 #, no-c-format msgid "Max. size of loc list for which reverse ops should be added." msgstr "" -#: params.opt:778 +#: params.opt:805 #, no-c-format msgid "Max. size of var tracking hash tables." msgstr "" -#: params.opt:782 +#: params.opt:809 #, no-c-format msgid "Maximum number of VALUEs handled during a single find_base_term call." msgstr "" -#: params.opt:786 +#: params.opt:813 #, no-c-format msgid "" "The minimum number of matching instructions to consider for crossjumping." msgstr "" -#: params.opt:790 +#: params.opt:817 #, no-c-format msgid "" "Inline recursively only when the probability of call being executed exceeds " "the parameter." msgstr "" -#: params.opt:794 +#: params.opt:821 #, no-c-format msgid "" "Min. ratio of insns to prefetches to enable prefetching for a loop with an " "unknown trip count." msgstr "" -#: params.opt:798 +#: params.opt:825 #, no-c-format msgid "" "The minimum threshold for probability of semi-invariant condition statement " "to trigger loop split." msgstr "" -#: params.opt:802 +#: params.opt:829 #, no-c-format msgid "The minimum UID to be used for a nondebug insn." msgstr "" -#: params.opt:806 +#: params.opt:833 #, no-c-format msgid "" "The minimum size of variables taking part in stack slot sharing when not " "optimizing." msgstr "" -#: params.opt:810 +#: params.opt:837 #, no-c-format msgid "" "The minimum probability of reaching a source block for interblock " "speculative scheduling." msgstr "" -#: params.opt:814 +#: params.opt:841 #, no-c-format msgid "" "If -ftree-vectorize is used, the minimal loop bound of a loop to be " "considered for vectorization." msgstr "" -#: params.opt:818 +#: params.opt:845 #, no-c-format msgid "" "--param=openacc-kernels=[decompose|parloops]\tSpecify mode of OpenACC " "'kernels' constructs handling." msgstr "" -#: params.opt:831 +#: params.opt:858 #, no-c-format msgid "" "--param=openacc-privatization=[quiet|noisy]\tSpecify mode of OpenACC " "privatization diagnostics." msgstr "" -#: params.opt:844 +#: params.opt:871 #, no-c-format msgid "Chunk size of omp schedule for loops parallelized by parloops." msgstr "" -#: params.opt:848 +#: params.opt:875 #, no-c-format msgid "" "Minimum number of iterations per thread of an innermost parallelized loop." msgstr "" -#: params.opt:852 +#: params.opt:879 #, 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:874 +#: params.opt:901 #, 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:878 +#: params.opt:905 #, no-c-format msgid "" "Maximum number of statements allowed inbetween the statement and the end to " "considered not extending the liferange." msgstr "" -#: params.opt:882 +#: params.opt:909 #, no-c-format msgid "Maximal estimated outcome of branch considered predictable." msgstr "" -#: params.opt:886 +#: params.opt:913 #, no-c-format msgid "" "Whether software prefetch hints should be issued for non-constant strides." msgstr "" -#: params.opt:890 +#: params.opt:917 #, no-c-format msgid "The number of insns executed before prefetch is completed." msgstr "" -#: params.opt:894 +#: params.opt:921 #, no-c-format msgid "Min. ratio of insns to mem ops to enable prefetching in a loop." msgstr "" -#: params.opt:898 +#: params.opt:925 #, no-c-format msgid "" "The minimum constant stride beyond which we should use prefetch hints for." msgstr "" -#: params.opt:902 +#: params.opt:929 #, no-c-format msgid "Use internal function id in profile lookup." msgstr "" -#: params.opt:906 +#: params.opt:933 #, no-c-format msgid "" "--param=ranger-debug=[none|trace|gori|cache|tracegori|all] Specifies the " "output mode for debugging ranger." msgstr "" -#: params.opt:931 +#: params.opt:958 #, no-c-format msgid "" "Maximum depth of logical expression evaluation ranger will look through when " "evaluating outgoing edge ranges." msgstr "" -#: params.opt:936 +#: params.opt:963 #, no-c-format msgid "" "Maximum depth of instruction chains to consider for recomputation in the " "outgoing range calculator." msgstr "" -#: params.opt:941 +#: params.opt:968 #, no-c-format msgid "Maximum number of relations the oracle will register in a basic block." msgstr "" -#: params.opt:945 +#: params.opt:972 #, no-c-format msgid "" "Work bound when discovering transitive relations from existing relations." msgstr "" -#: params.opt:949 +#: params.opt:976 #, no-c-format msgid "Maximum depth of a loop nest to fully value-number optimistically." msgstr "" -#: params.opt:953 +#: params.opt:980 #, no-c-format msgid "Maximum number of disambiguations to perform per memory access." msgstr "" -#: params.opt:957 +#: params.opt:984 #, no-c-format msgid "" "Bound on the complexity of the expressions in the scalar evolutions analyzer." msgstr "" -#: params.opt:961 +#: params.opt:988 #, no-c-format msgid "Bound on size of expressions used in the scalar evolutions analyzer." msgstr "" -#: params.opt:965 +#: params.opt:992 #, no-c-format msgid "" "Hardware autoprefetcher scheduler model control flag. Number of lookahead " @@ -18865,143 +18907,143 @@ msgid "" "heuristic. Disabled by default." msgstr "" -#: params.opt:969 +#: params.opt:996 #, no-c-format msgid "Minimal distance between possibly conflicting store and load." msgstr "" -#: params.opt:973 +#: params.opt:1000 #, no-c-format msgid "Which -fsched-pressure algorithm to apply." msgstr "" -#: params.opt:977 +#: params.opt:1004 #, no-c-format msgid "" "The minimal probability of speculation success (in percents), so that " "speculative insn will be scheduled." msgstr "" -#: params.opt:981 +#: params.opt:1008 #, no-c-format msgid "" "The minimum probability an edge must have for the scheduler to save its " "state across it." msgstr "" -#: params.opt:985 +#: params.opt:1012 #, no-c-format msgid "" "Maximum number of instructions in the ready list that are considered " "eligible for renaming." msgstr "" -#: params.opt:989 +#: params.opt:1016 #, no-c-format msgid "The maximum size of the lookahead window of selective scheduling." msgstr "" -#: params.opt:993 +#: params.opt:1020 #, no-c-format msgid "Maximum number of times that an insn could be scheduled." msgstr "" -#: params.opt:997 +#: params.opt:1024 #, no-c-format msgid "The number of prefetches that can run at the same time." msgstr "" -#: params.opt:1001 +#: params.opt:1028 #, no-c-format msgid "" "Target block's relative execution frequency (as a percentage) required to " "sink a statement." msgstr "" -#: params.opt:1005 +#: params.opt:1032 #, no-c-format msgid "" "The number of cycles the swing modulo scheduler considers when checking " "conflicts using DFA." msgstr "" -#: params.opt:1009 +#: params.opt:1036 #, no-c-format msgid "" "A threshold on the average loop count considered by the swing modulo " "scheduler." msgstr "" -#: params.opt:1013 +#: params.opt:1040 #, no-c-format msgid "" "A factor for tuning the upper bound that swing modulo scheduler uses for " "scheduling a loop." msgstr "" -#: params.opt:1017 +#: params.opt:1044 #, no-c-format msgid "" "The minimum value of stage count that swing modulo scheduler will generate." msgstr "" -#: params.opt:1021 +#: params.opt:1048 #, 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:1025 +#: params.opt:1052 #, 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:1029 +#: params.opt:1056 #, 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:1033 +#: params.opt:1060 #, no-c-format msgid "" "The maximum number of SSA_NAME assignments to follow in determining a value." msgstr "" -#: params.opt:1037 +#: params.opt:1064 #, no-c-format msgid "" "The lower bound for a buffer to be considered for stack smashing protection." msgstr "" -#: params.opt:1041 +#: params.opt:1068 #, no-c-format msgid "Size of the stack guard expressed as a power of two in bytes." msgstr "" -#: params.opt:1045 +#: params.opt:1072 #, no-c-format msgid "" "Interval in which to probe the stack expressed as a power of two in bytes." msgstr "" -#: params.opt:1049 +#: params.opt:1076 #, no-c-format msgid "" "Allow the store merging pass to introduce unaligned stores if it is legal to " "do so." msgstr "" -#: params.opt:1053 +#: params.opt:1080 #, no-c-format msgid "Maximum size of a single store merging region in bytes." msgstr "" -#: params.opt:1057 +#: params.opt:1084 #, no-c-format msgid "" "Maximum number of instruction distance that a small store forwarded to a " @@ -19009,166 +19051,166 @@ msgid "" "store-forwarding pass." msgstr "" -#: params.opt:1061 +#: params.opt:1088 #, no-c-format msgid "" "The maximum ratio between array size and switch branches for a switch " "conversion to take place." msgstr "" -#: params.opt:1065 +#: params.opt:1092 #, no-c-format msgid "Maximum number of cases for slow switch lowering algorithms to be used." msgstr "" -#: params.opt:1069 +#: params.opt:1096 #, no-c-format msgid "Maximum number of bases stored in each modref tree." msgstr "" -#: params.opt:1073 +#: params.opt:1100 #, no-c-format msgid "Maximum number of references stored in each modref base." msgstr "" -#: params.opt:1077 +#: params.opt:1104 #, no-c-format msgid "Maximum number of accesses stored in each modref reference." msgstr "" -#: params.opt:1081 +#: params.opt:1108 #, no-c-format msgid "Maximum number of tests performed by modref query." msgstr "" -#: params.opt:1085 +#: params.opt:1112 #, no-c-format msgid "Maximum depth of DFS walk used by modref escape analysis." msgstr "" -#: params.opt:1089 +#: params.opt:1116 #, no-c-format msgid "Maximum number of escape points tracked by modref per SSA-name." msgstr "" -#: params.opt:1093 +#: params.opt:1120 #, no-c-format msgid "Maximum number of times a given range is adjusted during the dataflow." msgstr "" -#: params.opt:1097 +#: params.opt:1124 #, no-c-format msgid "" "--param=threader-debug=[none|all] Enables verbose dumping of the threader " "solver." msgstr "" -#: params.opt:1110 +#: params.opt:1137 #, 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:1114 +#: params.opt:1141 #, 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:1118 +#: params.opt:1145 #, 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:1122 +#: params.opt:1149 #, no-c-format msgid "Maximal code growth caused by tail duplication (in percent)." msgstr "" -#: params.opt:1126 +#: params.opt:1153 #, 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:1130 +#: params.opt:1157 #, 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:1134 +#: params.opt:1161 #, no-c-format msgid "" "Stop reverse growth if the reverse probability of best edge is less than " "this threshold (in percent)." msgstr "" -#: params.opt:1138 +#: params.opt:1165 #, 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:1142 +#: params.opt:1169 #, no-c-format msgid "Emit special instrumentation for accesses to volatiles." msgstr "" -#: params.opt:1146 +#: params.opt:1173 #, no-c-format msgid "" "Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit()." msgstr "" -#: params.opt:1150 +#: params.opt:1177 #, no-c-format msgid "" "Maximum number of nested calls to search for control dependencies during " "uninitialized variable analysis." msgstr "" -#: params.opt:1154 +#: params.opt:1181 #, no-c-format msgid "" "Maximum number of predicates anded for each predicate ored in the normalized " "predicate chain." msgstr "" -#: params.opt:1159 +#: params.opt:1186 #, no-c-format msgid "Maximum number of predicates ored in the normalized predicate chain." msgstr "" -#: params.opt:1163 +#: params.opt:1190 #, no-c-format msgid "" "Instruction accounted for function prologue, epilogue and other overhead." msgstr "" -#: params.opt:1167 +#: params.opt:1194 #, no-c-format msgid "Time accounted for function prologue, epilogue and other overhead." msgstr "" -#: params.opt:1171 +#: params.opt:1198 #, no-c-format msgid "Instruction accounted for function thunk overhead." msgstr "" -#: params.opt:1175 +#: params.opt:1202 #, no-c-format msgid "Time accounted for function thunk overhead." msgstr "" -#: params.opt:1179 +#: params.opt:1206 #, no-c-format msgid "" "The denominator n of fraction 1/n of the number of profiled runs of the " @@ -19176,64 +19218,64 @@ msgid "" "order for the basic block to be considered unlikely." msgstr "" -#: params.opt:1183 +#: params.opt:1210 #, no-c-format msgid "Maximum unroll factor for the unroll-and-jam transformation." msgstr "" -#: params.opt:1187 +#: params.opt:1214 #, no-c-format msgid "" "Minimum percentage of memrefs that must go away for unroll-and-jam to be " "considered profitable." msgstr "" -#: params.opt:1191 +#: params.opt:1218 #, no-c-format msgid "" "Use direct poisoning/unpoisoning instructions for variables smaller or equal " "to this number." msgstr "" -#: params.opt:1195 +#: params.opt:1222 #, no-c-format msgid "Whether to use canonical types." msgstr "" -#: params.opt:1199 +#: params.opt:1226 #, no-c-format msgid "Enable loop epilogue vectorization using smaller vector size." msgstr "" -#: params.opt:1203 +#: params.opt:1230 #, no-c-format msgid "" "Maximum number of possible vector layouts (such as permutations) to consider " "when optimizing to-be-vectorized code." msgstr "" -#: params.opt:1207 +#: params.opt:1234 #, no-c-format msgid "" "Maximum number of loop peels to enhance alignment of data references in a " "loop." msgstr "" -#: params.opt:1211 +#: params.opt:1238 #, no-c-format msgid "" "Bound on number of runtime checks inserted by the vectorizer's loop " "versioning for alias check." msgstr "" -#: params.opt:1215 +#: params.opt:1242 #, no-c-format msgid "" "Bound on number of runtime checks inserted by the vectorizer's loop " "versioning for alignment check." msgstr "" -#: params.opt:1219 +#: params.opt:1246 #, no-c-format msgid "" "Controls how loop vectorizer uses partial vectors. 0 means never, 1 means " @@ -19241,118 +19283,118 @@ msgid "" "The default value is 2." msgstr "" -#: params.opt:1223 +#: params.opt:1250 #, no-c-format msgid "" "The maximum factor which the loop vectorizer applies to the cost of " "statements in an inner loop relative to the loop being vectorized." msgstr "" -#: params.opt:1227 +#: params.opt:1254 #, no-c-format msgid "Enable loop vectorization of floating point inductions." msgstr "" -#: params.opt:1231 +#: params.opt:1258 #, no-c-format msgid "Force the use of SLP when vectorizing, fail if not possible." msgstr "" -#: params.opt:1235 +#: params.opt:1262 #, no-c-format msgid "" "Maximum number of basic blocks before VRP switches to a fast model with less " "memory requirements." msgstr "" -#: params.opt:1239 +#: params.opt:1266 #, no-c-format msgid "Maximum number of basic blocks before VRP uses a sparse bitmap cache." msgstr "" -#: params.opt:1243 +#: params.opt:1270 #, no-c-format msgid "" "Maximum number of outgoing edges in a switch before VRP will not process it." msgstr "" -#: params.opt:1247 +#: params.opt:1274 #, no-c-format msgid "Maximum number of basic blocks for VRP to use a basic cache vector." msgstr "" -#: calls.cc:1451 +#: calls.cc:1458 msgid "a callee-copied argument is stored in the current function's frame" msgstr "" -#: calls.cc:1520 +#: calls.cc:1528 msgid "argument must be passed by copying" msgstr "" -#: calls.cc:2539 +#: calls.cc:2545 msgid "" "machine description does not have a sibcall_epilogue instruction pattern" msgstr "" -#: calls.cc:2550 +#: calls.cc:2557 msgid "callee returns a structure" msgstr "" -#: calls.cc:2559 +#: calls.cc:2565 msgid "target is not able to optimize the call into a sibling call" msgstr "" -#: calls.cc:2568 +#: calls.cc:2574 msgid "callee returns twice" msgstr "" -#: calls.cc:2573 +#: calls.cc:2579 msgid "callee does not return" msgstr "" -#: calls.cc:2579 +#: calls.cc:2585 msgid "volatile function type" msgstr "" -#: calls.cc:2598 +#: calls.cc:2604 msgid "nested function" msgstr "" -#: calls.cc:2610 +#: calls.cc:2615 msgid "callee required more stack slots than the caller" msgstr "" -#: calls.cc:2625 +#: calls.cc:2629 msgid "inconsistent number of popped arguments" msgstr "" -#: calls.cc:2632 +#: calls.cc:2636 msgid "frontend does not support sibling call" msgstr "" -#: calls.cc:2688 +#: calls.cc:2692 msgid "other reasons" msgstr "" -#: calls.cc:3062 +#: calls.cc:3066 msgid "inside another call" msgstr "" -#: calls.cc:3071 +#: calls.cc:3075 msgid "variable size arguments" msgstr "" -#: calls.cc:3096 +#: calls.cc:3099 msgid "hidden string length argument passed on stack" msgstr "" -#: calls.cc:3144 +#: calls.cc:3148 msgid "caller and callee disagree in promotion of function return value" msgstr "" #. Ideally we'd emit a message for all of the ways that it could #. have failed. -#: calls.cc:4056 +#: calls.cc:4060 msgid "tail call production failed" msgstr "" @@ -19576,298 +19618,298 @@ msgstr "" #. PRINT_OPERAND must handle them. #. We can't handle floating point constants; #. TARGET_PRINT_OPERAND must handle them. -#: final.cc:3738 config/arc/arc.cc:6311 config/i386/i386.cc:12793 +#: final.cc:3738 config/arc/arc.cc:6311 config/i386/i386.cc:12800 #, c-format msgid "floating constant misused" msgstr "" -#: final.cc:3796 config/arc/arc.cc:6408 config/i386/i386.cc:12884 +#: final.cc:3796 config/arc/arc.cc:6408 config/i386/i386.cc:12891 #: config/pdp11/pdp11.cc:1872 #, c-format msgid "invalid expression as operand" msgstr "" -#: gcc.cc:129 +#: gcc.cc:132 #, c-format msgid "%s\n" msgstr "" -#: gcc.cc:1864 +#: gcc.cc:1867 #, c-format msgid "Using built-in specs.\n" msgstr "" -#: gcc.cc:2109 +#: gcc.cc:2112 #, c-format msgid "" "Setting spec %s to '%s'\n" "\n" msgstr "" -#: gcc.cc:2318 +#: gcc.cc:2321 #, c-format msgid "Reading specs from %s\n" msgstr "" -#: gcc.cc:2448 +#: gcc.cc:2451 #, c-format msgid "could not find specs file %s\n" msgstr "" -#: gcc.cc:2519 +#: gcc.cc:2522 #, c-format msgid "rename spec %s to %s\n" msgstr "" -#: gcc.cc:2521 +#: gcc.cc:2524 #, c-format msgid "" "spec is '%s'\n" "\n" msgstr "" -#: gcc.cc:3382 +#: gcc.cc:3385 #, c-format msgid "" "\n" "Go ahead? (y or n) " msgstr "" -#: gcc.cc:3554 +#: gcc.cc:3557 #, c-format msgid "# %s %.2f %.2f\n" msgstr "" -#: gcc.cc:3734 +#: gcc.cc:3737 #, c-format msgid "Usage: %s [options] file...\n" msgstr "" -#: gcc.cc:3735 +#: gcc.cc:3738 msgid "Options:\n" msgstr "" -#: gcc.cc:3737 +#: gcc.cc:3740 msgid " -pass-exit-codes Exit with highest error code from a phase.\n" msgstr "" -#: gcc.cc:3738 +#: gcc.cc:3741 msgid " --help Display this information.\n" msgstr "" -#: gcc.cc:3739 +#: gcc.cc:3742 msgid "" " --target-help Display target specific command line options " "(including assembler and linker options).\n" msgstr "" -#: gcc.cc:3741 +#: gcc.cc:3744 msgid "" " --help={common|optimizers|params|target|warnings|[^]{joined|separate|" "undocumented}}[,...].\n" msgstr "" -#: gcc.cc:3742 +#: gcc.cc:3745 msgid "" " Display specific types of command line options.\n" msgstr "" -#: gcc.cc:3744 +#: gcc.cc:3747 msgid " (Use '-v --help' to display command line options of sub-processes).\n" msgstr "" -#: gcc.cc:3745 +#: gcc.cc:3748 msgid " --version Display compiler version information.\n" msgstr "" -#: gcc.cc:3746 +#: gcc.cc:3749 msgid " -dumpspecs Display all of the built in spec strings.\n" msgstr "" -#: gcc.cc:3747 +#: gcc.cc:3750 msgid " -dumpversion Display the version of the compiler.\n" msgstr "" -#: gcc.cc:3748 +#: gcc.cc:3751 msgid " -dumpmachine Display the compiler's target processor.\n" msgstr "" -#: gcc.cc:3749 +#: gcc.cc:3752 msgid " -foffload=<targets> Specify offloading targets.\n" msgstr "" -#: gcc.cc:3750 +#: gcc.cc:3753 msgid "" " -print-search-dirs Display the directories in the compiler's search " "path.\n" msgstr "" -#: gcc.cc:3751 +#: gcc.cc:3754 msgid "" " -print-libgcc-file-name Display the name of the compiler's companion " "library.\n" msgstr "" -#: gcc.cc:3752 +#: gcc.cc:3755 msgid " -print-file-name=<lib> Display the full path to library <lib>.\n" msgstr "" -#: gcc.cc:3753 +#: gcc.cc:3756 msgid "" " -print-prog-name=<prog> Display the full path to compiler component " "<prog>.\n" msgstr "" -#: gcc.cc:3754 +#: gcc.cc:3757 msgid "" " -print-multiarch Display the target's normalized GNU triplet, used " "as\n" " a component in the library path.\n" msgstr "" -#: gcc.cc:3757 +#: gcc.cc:3760 msgid "" " -print-multi-directory Display the root directory for versions of " "libgcc.\n" msgstr "" -#: gcc.cc:3758 +#: gcc.cc:3761 msgid "" " -print-multi-lib Display the mapping between command line options " "and\n" " multiple library search directories.\n" msgstr "" -#: gcc.cc:3761 +#: gcc.cc:3764 msgid "" " -print-multi-os-directory Display the relative path to OS libraries.\n" msgstr "" -#: gcc.cc:3762 +#: gcc.cc:3765 msgid " -print-sysroot Display the target libraries directory.\n" msgstr "" -#: gcc.cc:3763 +#: gcc.cc:3766 msgid "" " -print-sysroot-headers-suffix Display the sysroot suffix used to find " "headers.\n" msgstr "" -#: gcc.cc:3764 +#: gcc.cc:3767 msgid "" " -Wa,<options> Pass comma-separated <options> on to the " "assembler.\n" msgstr "" -#: gcc.cc:3765 +#: gcc.cc:3768 msgid "" " -Wp,<options> Pass comma-separated <options> on to the " "preprocessor.\n" msgstr "" -#: gcc.cc:3766 +#: gcc.cc:3769 msgid "" " -Wl,<options> Pass comma-separated <options> on to the linker.\n" msgstr "" -#: gcc.cc:3767 +#: gcc.cc:3770 msgid " -Xassembler <arg> Pass <arg> on to the assembler.\n" msgstr "" -#: gcc.cc:3768 +#: gcc.cc:3771 msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor.\n" msgstr "" -#: gcc.cc:3769 +#: gcc.cc:3772 msgid " -Xlinker <arg> Pass <arg> on to the linker.\n" msgstr "" -#: gcc.cc:3770 +#: gcc.cc:3773 msgid " -save-temps Do not delete intermediate files.\n" msgstr "" -#: gcc.cc:3771 +#: gcc.cc:3774 msgid " -save-temps=<arg> Do not delete intermediate files.\n" msgstr "" -#: gcc.cc:3772 +#: gcc.cc:3775 msgid "" " -no-canonical-prefixes Do not canonicalize paths when building relative\n" " prefixes to other gcc components.\n" msgstr "" -#: gcc.cc:3775 +#: gcc.cc:3778 msgid " -pipe Use pipes rather than intermediate files.\n" msgstr "" -#: gcc.cc:3776 +#: gcc.cc:3779 msgid " -time Time the execution of each subprocess.\n" msgstr "" -#: gcc.cc:3777 +#: gcc.cc:3780 msgid "" " -specs=<file> Override built-in specs with the contents of " "<file>.\n" msgstr "" -#: gcc.cc:3778 +#: gcc.cc:3781 msgid "" " -std=<standard> Assume that the input sources are for " "<standard>.\n" msgstr "" -#: gcc.cc:3779 +#: gcc.cc:3782 msgid "" " --sysroot=<directory> Use <directory> as the root directory for " "headers\n" " and libraries.\n" msgstr "" -#: gcc.cc:3782 +#: gcc.cc:3785 msgid "" " -B <directory> Add <directory> to the compiler's search paths.\n" msgstr "" -#: gcc.cc:3783 +#: gcc.cc:3786 msgid "" " -v Display the programs invoked by the compiler.\n" msgstr "" -#: gcc.cc:3784 +#: gcc.cc:3787 msgid "" " -### Like -v but options quoted and commands not " "executed.\n" msgstr "" -#: gcc.cc:3785 +#: gcc.cc:3788 msgid "" " -E Preprocess only; do not compile, assemble or " "link.\n" msgstr "" -#: gcc.cc:3786 +#: gcc.cc:3789 msgid " -S Compile only; do not assemble or link.\n" msgstr "" -#: gcc.cc:3787 +#: gcc.cc:3790 msgid " -c Compile and assemble, but do not link.\n" msgstr "" -#: gcc.cc:3788 +#: gcc.cc:3791 msgid " -o <file> Place the output into <file>.\n" msgstr "" -#: gcc.cc:3789 +#: gcc.cc:3792 msgid "" " -pie Create a dynamically linked position independent\n" " executable.\n" msgstr "" -#: gcc.cc:3791 +#: gcc.cc:3794 msgid " -shared Create a shared library.\n" msgstr "" -#: gcc.cc:3792 +#: gcc.cc:3795 msgid "" " -x <language> Specify the language of the following input " "files.\n" @@ -19878,7 +19920,7 @@ msgid "" "extension.\n" msgstr "" -#: gcc.cc:3799 +#: gcc.cc:3802 #, c-format msgid "" "\n" @@ -19887,97 +19929,97 @@ msgid "" " other options on to these processes the -W<letter> options must be used.\n" msgstr "" -#: gcc.cc:6945 +#: gcc.cc:6948 #, c-format msgid "Processing spec (%s), which is '%s'\n" msgstr "" -#: gcc.cc:7706 +#: gcc.cc:7709 #, c-format msgid "Target: %s\n" msgstr "" -#: gcc.cc:7707 +#: gcc.cc:7710 #, c-format msgid "Configured with: %s\n" msgstr "" -#: gcc.cc:7721 +#: gcc.cc:7724 #, c-format msgid "Thread model: %s\n" msgstr "" -#: gcc.cc:7722 +#: gcc.cc:7725 #, c-format msgid "Supported LTO compression algorithms: zlib" msgstr "" -#: gcc.cc:7724 +#: gcc.cc:7727 #, c-format msgid " zstd" msgstr "" -#: gcc.cc:7726 gcov.cc:1902 gcov.cc:1962 gcov.cc:1974 gcov.cc:3564 +#: gcc.cc:7729 gcov.cc:1902 gcov.cc:1962 gcov.cc:1974 gcov.cc:3564 #, c-format msgid "\n" msgstr "" -#: gcc.cc:7737 +#: gcc.cc:7740 #, c-format msgid "gcc version %s %s\n" msgstr "" -#: gcc.cc:7740 +#: gcc.cc:7743 #, c-format msgid "gcc driver version %s %sexecuting gcc version %s\n" msgstr "" -#: gcc.cc:7813 gcc.cc:8023 +#: gcc.cc:7819 gcc.cc:8033 #, c-format msgid "" "The bug is not reproducible, so it is likely a hardware or OS problem.\n" msgstr "" -#: gcc.cc:7947 +#: gcc.cc:7953 #, c-format msgid "" "Preprocessed source stored into %s file, please attach this to your " "bugreport.\n" msgstr "" -#: gcc.cc:8787 +#: gcc.cc:8797 #, c-format msgid "install: %s%s\n" msgstr "" -#: gcc.cc:8790 +#: gcc.cc:8800 #, c-format msgid "programs: %s\n" msgstr "" -#: gcc.cc:8792 +#: gcc.cc:8802 #, c-format msgid "libraries: %s\n" msgstr "" -#: gcc.cc:8909 +#: gcc.cc:8919 #, c-format msgid "" "\n" "For bug reporting instructions, please see:\n" msgstr "" -#: gcc.cc:8925 gcov-tool.cc:594 sarif-replay.cc:56 +#: gcc.cc:8935 gcov-tool.cc:594 sarif-replay.cc:56 #, c-format msgid "%s %s%s\n" msgstr "" -#: gcc.cc:8928 gcov-tool.cc:596 gcov.cc:1155 sarif-replay.cc:59 +#: gcc.cc:8938 gcov-tool.cc:596 gcov.cc:1155 sarif-replay.cc:59 #: fortran/gfortranspec.cc:282 msgid "(C)" msgstr "" -#: gcc.cc:8929 gcov-tool.cc:598 gcov.cc:1157 sarif-replay.cc:60 +#: gcc.cc:8939 gcov-tool.cc:598 gcov.cc:1157 sarif-replay.cc:60 #: fortran/gfortranspec.cc:283 #, c-format msgid "" @@ -19986,7 +20028,7 @@ msgid "" "\n" msgstr "" -#: gcc.cc:9272 +#: gcc.cc:9282 #, c-format msgid "" "\n" @@ -19995,14 +20037,14 @@ msgid "" "\n" msgstr "" -#: gcc.cc:9273 +#: gcc.cc:9283 #, c-format msgid "" "Use \"-Wl,OPTION\" to pass \"OPTION\" to the linker.\n" "\n" msgstr "" -#: gcc.cc:10679 +#: gcc.cc:10689 #, c-format msgid "" "Assembler options\n" @@ -20010,7 +20052,7 @@ msgid "" "\n" msgstr "" -#: gcc.cc:10680 +#: gcc.cc:10690 #, c-format msgid "" "Use \"-Wa,OPTION\" to pass \"OPTION\" to the assembler.\n" @@ -20794,113 +20836,113 @@ msgstr "" msgid "Uses of this option are diagnosed." msgstr "" -#: opts.cc:1700 +#: opts.cc:1723 #, c-format msgid "Same as %s%s (or, in negated form, %s%s)." msgstr "" -#: opts.cc:1705 +#: opts.cc:1728 #, c-format msgid "Same as %s%s." msgstr "" -#: opts.cc:1710 +#: opts.cc:1733 #, c-format msgid "Same as %s." msgstr "" -#: opts.cc:1718 +#: opts.cc:1741 #, c-format msgid "%s Same as %s." msgstr "" -#: opts.cc:1781 +#: opts.cc:1804 msgid "[available in " msgstr "" -#: opts.cc:1813 +#: opts.cc:1836 msgid "[default]" msgstr "" -#: opts.cc:1822 +#: opts.cc:1845 #, c-format msgid "%llu bytes" msgstr "" -#: opts.cc:1859 +#: opts.cc:1882 msgid "[enabled]" msgstr "" -#: opts.cc:1861 +#: opts.cc:1884 msgid "[disabled]" msgstr "" -#: opts.cc:1897 +#: opts.cc:1920 #, c-format msgid " No options with the desired characteristics were found\n" msgstr "" -#: opts.cc:1906 +#: opts.cc:1929 #, c-format msgid "" " None found. Use --help=%s to show *all* the options supported by the %s " "front-end.\n" msgstr "" -#: opts.cc:1912 +#: opts.cc:1935 #, c-format msgid "" " All options with the desired characteristics have already been displayed\n" msgstr "" -#: opts.cc:1957 +#: opts.cc:1980 #, c-format msgid "" " Known valid arguments for %s option:\n" " " msgstr "" -#: opts.cc:2007 +#: opts.cc:2030 msgid "The following options are target specific" msgstr "" -#: opts.cc:2010 +#: opts.cc:2033 msgid "The following options control compiler warning messages" msgstr "" -#: opts.cc:2013 +#: opts.cc:2036 msgid "The following options control optimizations" msgstr "" -#: opts.cc:2016 opts.cc:2056 +#: opts.cc:2039 opts.cc:2079 msgid "The following options are language-independent" msgstr "" -#: opts.cc:2019 +#: opts.cc:2042 msgid "The following options control parameters" msgstr "" -#: opts.cc:2025 +#: opts.cc:2048 msgid "The following options are specific to just the language " msgstr "" -#: opts.cc:2027 +#: opts.cc:2050 msgid "The following options are supported by the language " msgstr "" -#: opts.cc:2038 +#: opts.cc:2061 msgid "The following options are not documented" msgstr "" -#: opts.cc:2040 +#: opts.cc:2063 msgid "The following options take separate arguments" msgstr "" -#: opts.cc:2042 +#: opts.cc:2065 msgid "The following options take joined arguments" msgstr "" -#: opts.cc:2054 +#: opts.cc:2077 msgid "The following options are language-related" msgstr "" @@ -21001,89 +21043,93 @@ msgid "" "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n" msgstr "" -#: tree-diagnostic.cc:100 tree-logical-location.cc:92 c/c-decl.cc:6606 -#: c/c-typeck.cc:8999 cp/error.cc:1301 c-family/c-pretty-print.cc:447 +#: tree-diagnostic.cc:100 tree-logical-location.cc:92 c/c-decl.cc:6607 +#: c/c-typeck.cc:9013 cp/error.cc:1301 c-family/c-pretty-print.cc:447 #, gcc-internal-format msgid "<anonymous>" msgstr "" -#: tree-tailcall.cc:153 +#: tree-tailcall.cc:158 msgid "caller uses stdargs" msgstr "" -#: tree-tailcall.cc:172 +#: tree-tailcall.cc:177 msgid "caller uses alloca" msgstr "" -#: tree-tailcall.cc:182 +#: tree-tailcall.cc:187 msgid "caller uses sjlj exceptions" msgstr "" -#: tree-tailcall.cc:192 tree-tailcall.cc:690 +#: tree-tailcall.cc:197 tree-tailcall.cc:723 msgid "caller uses setjmp" msgstr "" -#: tree-tailcall.cc:200 +#: tree-tailcall.cc:205 msgid "caller uses __builtin_eh_return" msgstr "" -#: tree-tailcall.cc:600 +#: tree-tailcall.cc:633 msgid "memory reference or volatile after call" msgstr "" -#: tree-tailcall.cc:657 +#: tree-tailcall.cc:690 msgid "address of caller arguments taken" msgstr "" -#: tree-tailcall.cc:684 +#: tree-tailcall.cc:717 msgid "return value in memory" msgstr "" -#: tree-tailcall.cc:701 +#: tree-tailcall.cc:734 msgid "code between call and return" msgstr "" -#: tree-tailcall.cc:715 +#: tree-tailcall.cc:747 msgid "call may throw exception that does not propagate" msgstr "" -#: tree-tailcall.cc:725 +#: tree-tailcall.cc:760 tree-tailcall.cc:1166 msgid "call may throw exception caught locally or perform cleanups" msgstr "" -#: tree-tailcall.cc:759 +#: tree-tailcall.cc:795 msgid "return value used after call" msgstr "" -#: tree-tailcall.cc:858 tree-tailcall.cc:887 +#: tree-tailcall.cc:893 tree-tailcall.cc:921 msgid "call invocation refers to locals" msgstr "" -#: tree-tailcall.cc:953 +#: tree-tailcall.cc:1001 msgid "unhandled code after call" msgstr "" -#: tree-tailcall.cc:963 +#: tree-tailcall.cc:1011 msgid "return value changed after call" msgstr "" -#: tree-tailcall.cc:1012 +#: tree-tailcall.cc:1060 msgid "internal call" msgstr "" -#: tree-tailcall.cc:1021 tree-tailcall.cc:1061 +#: tree-tailcall.cc:1068 tree-tailcall.cc:1139 msgid "call and return value are different" msgstr "" -#: tree-tailcall.cc:1072 +#: tree-tailcall.cc:1149 msgid "operations after non tail recursive call" msgstr "" -#: tree-tailcall.cc:1081 +#: tree-tailcall.cc:1157 msgid "tail recursion with pointers can only use additions" msgstr "" -#: tree-tailcall.cc:1563 +#: tree-tailcall.cc:1170 +msgid "exception cleanups omit __tsan_func_exit call" +msgstr "" + +#: tree-tailcall.cc:1672 msgid "tail recursion with accumulation mixed with musttail non-recursive call" msgstr "" @@ -21450,85 +21496,85 @@ msgstr "" msgid "cannot combine GNU and SVE vectors in a binary operation" msgstr "" -#: config/alpha/alpha.cc:5783 config/i386/i386.cc:14069 +#: config/alpha/alpha.cc:5780 config/i386/i386.cc:14076 #: config/rs6000/rs6000.cc:14674 config/sparc/sparc.cc:9400 #, c-format msgid "'%%&' used without any local dynamic TLS references" msgstr "" -#: config/alpha/alpha.cc:5841 config/bfin/bfin.cc:1428 +#: config/alpha/alpha.cc:5838 config/bfin/bfin.cc:1428 #, c-format msgid "invalid %%J value" msgstr "" -#: config/alpha/alpha.cc:5871 config/ia64/ia64.cc:5592 config/or1k/or1k.cc:1252 +#: config/alpha/alpha.cc:5868 config/ia64/ia64.cc:5592 config/or1k/or1k.cc:1252 #, c-format msgid "invalid %%r value" msgstr "" -#: config/alpha/alpha.cc:5881 config/ia64/ia64.cc:5546 +#: config/alpha/alpha.cc:5878 config/ia64/ia64.cc:5546 #: config/rs6000/rs6000.cc:14369 config/xtensa/xtensa.cc:3144 #, c-format msgid "invalid %%R value" msgstr "" -#: config/alpha/alpha.cc:5887 config/rs6000/rs6000.cc:14289 +#: config/alpha/alpha.cc:5884 config/rs6000/rs6000.cc:14289 #: config/xtensa/xtensa.cc:3117 #, c-format msgid "invalid %%N value" msgstr "" -#: config/alpha/alpha.cc:5895 config/rs6000/rs6000.cc:14317 +#: config/alpha/alpha.cc:5892 config/rs6000/rs6000.cc:14317 #, c-format msgid "invalid %%P value" msgstr "" -#: config/alpha/alpha.cc:5903 +#: config/alpha/alpha.cc:5900 #, c-format msgid "invalid %%h value" msgstr "" -#: config/alpha/alpha.cc:5911 config/xtensa/xtensa.cc:3137 +#: config/alpha/alpha.cc:5908 config/xtensa/xtensa.cc:3137 #, c-format msgid "invalid %%L value" msgstr "" -#: config/alpha/alpha.cc:5930 +#: config/alpha/alpha.cc:5927 #, c-format msgid "invalid %%m value" msgstr "" -#: config/alpha/alpha.cc:5936 +#: config/alpha/alpha.cc:5933 #, c-format msgid "invalid %%M value" msgstr "" -#: config/alpha/alpha.cc:5973 +#: config/alpha/alpha.cc:5970 #, c-format msgid "invalid %%U value" msgstr "" -#: config/alpha/alpha.cc:5981 config/rs6000/rs6000.cc:14377 +#: config/alpha/alpha.cc:5978 config/rs6000/rs6000.cc:14377 #, c-format msgid "invalid %%s value" msgstr "" -#: config/alpha/alpha.cc:5992 +#: config/alpha/alpha.cc:5989 #, c-format msgid "invalid %%C value" msgstr "" -#: config/alpha/alpha.cc:6029 config/rs6000/rs6000.cc:14153 +#: config/alpha/alpha.cc:6026 config/rs6000/rs6000.cc:14153 #, c-format msgid "invalid %%E value" msgstr "" -#: config/alpha/alpha.cc:6054 config/alpha/alpha.cc:6104 +#: config/alpha/alpha.cc:6051 config/alpha/alpha.cc:6101 #, c-format msgid "unknown relocation unspec" msgstr "" -#: config/alpha/alpha.cc:6063 config/gcn/gcn.cc:7341 config/gcn/gcn.cc:7350 +#: config/alpha/alpha.cc:6060 config/gcn/gcn.cc:7341 config/gcn/gcn.cc:7350 #: config/gcn/gcn.cc:7408 config/gcn/gcn.cc:7416 config/gcn/gcn.cc:7432 #: config/gcn/gcn.cc:7450 config/gcn/gcn.cc:7501 config/gcn/gcn.cc:7620 #: config/gcn/gcn.cc:7733 config/rs6000/rs6000.cc:14679 @@ -21536,7 +21582,7 @@ msgstr "" msgid "invalid %%xn code" msgstr "" -#: config/alpha/alpha.cc:6169 +#: config/alpha/alpha.cc:6166 #, c-format msgid "invalid operand address" msgstr "" @@ -21825,9 +21871,9 @@ msgstr "" #. Format punctuators via %s to avoid -Wformat-diag. #: config/cris/cris.cc:783 config/ft32/ft32.cc:110 config/moxie/moxie.cc:108 -#: cobol/dts.h:71 final.cc:3194 final.cc:3196 fold-const.cc:347 gcc.cc:6296 -#: gcc.cc:6310 rtl-error.cc:101 toplev.cc:322 cobol/gcobolspec.cc:442 -#: cobol/gcobolspec.cc:518 cobol/gcobolspec.cc:528 cobol/gcobolspec.cc:622 +#: cobol/dts.h:71 final.cc:3194 final.cc:3196 fold-const.cc:347 gcc.cc:6299 +#: gcc.cc:6313 rtl-error.cc:101 toplev.cc:322 cobol/gcobolspec.cc:366 +#: cobol/gcobolspec.cc:440 cobol/gcobolspec.cc:450 cobol/gcobolspec.cc:525 #: cp/logic.cc:311 cp/logic.cc:313 cp/typeck.cc:7836 d/d-convert.cc:237 #: go/go-gcc-diagnostics.cc:28 go/go-gcc-diagnostics.cc:37 #: go/go-gcc-diagnostics.cc:45 go/go-gcc-diagnostics.cc:53 @@ -22073,122 +22119,122 @@ msgstr "" msgid "Expected register or constant integer." msgstr "" -#: config/i386/i386.cc:12878 +#: config/i386/i386.cc:12885 #, c-format msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.cc:13417 +#: config/i386/i386.cc:13424 #, c-format msgid "invalid use of register '%s'" msgstr "" -#: config/i386/i386.cc:13422 +#: config/i386/i386.cc:13429 #, c-format msgid "invalid use of asm flag output" msgstr "" -#: config/i386/i386.cc:13656 +#: config/i386/i386.cc:13663 #, c-format msgid "invalid operand size for operand code 'O'" msgstr "" -#: config/i386/i386.cc:13691 +#: config/i386/i386.cc:13698 #, c-format msgid "invalid operand size for operand code 'z'" msgstr "" -#: config/i386/i386.cc:13766 +#: config/i386/i386.cc:13773 #, c-format msgid "invalid operand type used with operand code '%c'" msgstr "" -#: config/i386/i386.cc:13771 +#: config/i386/i386.cc:13778 #, c-format msgid "invalid operand size for operand code '%c'" msgstr "" -#: config/i386/i386.cc:13849 +#: config/i386/i386.cc:13856 #, c-format msgid "operand is not a condition code, invalid operand code 'Y'" msgstr "" -#: config/i386/i386.cc:13928 +#: config/i386/i386.cc:13935 #, c-format msgid "operand is not a condition code, invalid operand code 'D'" msgstr "" -#: config/i386/i386.cc:13946 +#: config/i386/i386.cc:13953 #, c-format msgid "operand is not a condition code, invalid operand code '%c'" msgstr "" -#: config/i386/i386.cc:13967 +#: config/i386/i386.cc:13974 #, c-format msgid "" "operand is not an offsettable memory reference, invalid operand code 'H'" msgstr "" -#: config/i386/i386.cc:13982 +#: config/i386/i386.cc:13989 #, c-format msgid "operand is not an integer, invalid operand code 'K'" msgstr "" -#: config/i386/i386.cc:14010 +#: config/i386/i386.cc:14017 #, c-format msgid "operand is not a specific integer, invalid operand code 'r'" msgstr "" -#: config/i386/i386.cc:14028 +#: config/i386/i386.cc:14035 #, c-format msgid "operand is not an integer, invalid operand code 'R'" msgstr "" -#: config/i386/i386.cc:14051 +#: config/i386/i386.cc:14058 #, c-format msgid "operand is not a specific integer, invalid operand code 'R'" msgstr "" -#: config/i386/i386.cc:14144 +#: config/i386/i386.cc:14151 #, c-format msgid "invalid operand code '%c'" msgstr "" -#: config/i386/i386.cc:14206 config/i386/i386.cc:14595 +#: config/i386/i386.cc:14213 config/i386/i386.cc:14602 #, c-format msgid "invalid constraints for operand" msgstr "" -#: config/i386/i386.cc:14307 +#: config/i386/i386.cc:14314 #, c-format msgid "invalid vector immediate" msgstr "" -#: config/i386/i386.cc:17477 +#: config/i386/i386.cc:17484 msgid "unknown insn mode" msgstr "" -#: config/i386/i386.cc:24007 +#: config/i386/i386.cc:24042 msgid "invalid conversion from type %<__bf16%> without option %<-msse2%>" msgstr "" -#: config/i386/i386.cc:24010 +#: config/i386/i386.cc:24045 msgid "invalid conversion from type %<_Float16%> without option %<-msse2%>" msgstr "" -#: config/i386/i386.cc:24013 +#: config/i386/i386.cc:24048 msgid "invalid conversion to type %<__bf16%> without option %<-msse2%>" msgstr "" -#: config/i386/i386.cc:24016 +#: config/i386/i386.cc:24051 msgid "invalid conversion to type %<_Float16%> without option %<-msse2%>" msgstr "" -#: config/i386/i386.cc:24054 config/i386/i386.cc:24079 +#: config/i386/i386.cc:24089 config/i386/i386.cc:24114 msgid "operation not permitted on type %<__bf16%> without option %<-msse2%>" msgstr "" -#: config/i386/i386.cc:24057 config/i386/i386.cc:24083 +#: config/i386/i386.cc:24092 config/i386/i386.cc:24118 msgid "operation not permitted on type %<_Float16%> without option %<-msse2%>" msgstr "" @@ -22636,31 +22682,31 @@ msgstr "" msgid "AltiVec argument passed to unprototyped function" msgstr "" -#: config/rs6000/rs6000.cc:28020 +#: config/rs6000/rs6000.cc:28023 msgid "Could not generate addis value for fusion" msgstr "" -#: config/rs6000/rs6000.cc:28089 +#: config/rs6000/rs6000.cc:28092 msgid "Unable to generate load/store offset for fusion" msgstr "" -#: config/rs6000/rs6000.cc:28165 +#: config/rs6000/rs6000.cc:28168 msgid "Bad GPR fusion" msgstr "" -#: config/rs6000/rs6000.cc:28767 +#: config/rs6000/rs6000.cc:28770 msgid "invalid conversion from type %<__vector_quad%>" msgstr "" -#: config/rs6000/rs6000.cc:28769 +#: config/rs6000/rs6000.cc:28772 msgid "invalid conversion to type %<__vector_quad%>" msgstr "" -#: config/rs6000/rs6000.cc:28771 +#: config/rs6000/rs6000.cc:28774 msgid "invalid conversion from type %<__vector_pair%>" msgstr "" -#: config/rs6000/rs6000.cc:28773 +#: config/rs6000/rs6000.cc:28776 msgid "invalid conversion to type %<__vector_pair%>" msgstr "" @@ -22744,19 +22790,19 @@ msgstr "" msgid "vector argument passed to unprototyped function" msgstr "" -#: config/s390/s390.cc:17327 +#: config/s390/s390.cc:17350 msgid "types differ in signedness" msgstr "" -#: config/s390/s390.cc:17337 +#: config/s390/s390.cc:17360 msgid "binary operator does not support two vector bool operands" msgstr "" -#: config/s390/s390.cc:17340 +#: config/s390/s390.cc:17363 msgid "binary operator does not support vector bool operand" msgstr "" -#: config/s390/s390.cc:17348 +#: config/s390/s390.cc:17371 msgid "" "binary operator does not support mixing vector bool with floating point " "vector operands" @@ -22929,7 +22975,7 @@ msgstr "" msgid "aka" msgstr "" -#: c/c-objc-common.cc:385 c/c-typeck.cc:7700 +#: c/c-objc-common.cc:385 c/c-typeck.cc:7714 msgid "({anonymous})" msgstr "" @@ -22954,8 +23000,8 @@ msgstr "" #: c/gimple-parser.cc:2437 c/gimple-parser.cc:2474 c/gimple-parser.cc:2553 #: c/gimple-parser.cc:2580 c/c-parser.cc:4141 c/c-parser.cc:4332 #: c/c-parser.cc:4367 c/c-parser.cc:14591 c/gimple-parser.cc:2244 -#: c/gimple-parser.cc:2256 cp/parser.cc:16475 cp/parser.cc:34630 -#: cp/parser.cc:35269 +#: c/gimple-parser.cc:2256 cp/parser.cc:16475 cp/parser.cc:34635 +#: cp/parser.cc:35274 #, gcc-internal-format msgid "expected %<;%>" msgstr "" @@ -22982,7 +23028,7 @@ msgstr "" #: c/gimple-parser.cc:1691 c/gimple-parser.cc:1721 c/gimple-parser.cc:1747 #: c/gimple-parser.cc:1954 c/gimple-parser.cc:2166 c/gimple-parser.cc:2186 #: c/gimple-parser.cc:2347 c/gimple-parser.cc:2510 c/c-parser.cc:3242 -#: c/c-parser.cc:9409 c/c-parser.cc:20746 cp/parser.cc:35317 cp/parser.cc:43027 +#: c/c-parser.cc:9409 c/c-parser.cc:20746 cp/parser.cc:35322 cp/parser.cc:43032 #, gcc-internal-format msgid "expected %<)%>" msgstr "" @@ -22990,7 +23036,7 @@ msgstr "" #: c/c-parser.cc:5029 c/c-parser.cc:5778 c/c-parser.cc:6138 c/c-parser.cc:6156 #: c/c-parser.cc:6157 c/c-parser.cc:6660 c/c-parser.cc:6704 c/c-parser.cc:9508 #: c/c-parser.cc:11816 c/c-parser.cc:13270 c/c-parser.cc:13642 -#: c/c-parser.cc:16667 c/gimple-parser.cc:1930 cp/parser.cc:35281 +#: c/c-parser.cc:16667 c/gimple-parser.cc:1930 cp/parser.cc:35286 #, gcc-internal-format msgid "expected %<]%>" msgstr "" @@ -23009,13 +23055,13 @@ msgstr "" #: c/gimple-parser.cc:1457 c/gimple-parser.cc:1582 c/gimple-parser.cc:1687 #: c/gimple-parser.cc:1705 c/gimple-parser.cc:1740 c/gimple-parser.cc:2135 #: c/gimple-parser.cc:2146 c/gimple-parser.cc:2152 c/gimple-parser.cc:2335 -#: c/gimple-parser.cc:2507 c/c-parser.cc:17109 cp/parser.cc:35272 +#: c/gimple-parser.cc:2507 c/c-parser.cc:17109 cp/parser.cc:35277 #, gcc-internal-format msgid "expected %<(%>" msgstr "" -#: c/c-parser.cc:6134 c/c-parser.cc:6136 c/c-parser.cc:16572 cp/parser.cc:35284 -#: cp/parser.cc:39174 go/gofrontend/embed.cc:440 +#: c/c-parser.cc:6134 c/c-parser.cc:6136 c/c-parser.cc:16572 cp/parser.cc:35289 +#: cp/parser.cc:39179 go/gofrontend/embed.cc:440 #, gcc-internal-format msgid "expected %<[%>" msgstr "" @@ -23024,7 +23070,7 @@ msgstr "" #: c/c-parser.cc:23012 c/c-parser.cc:23098 c/c-parser.cc:23859 #: c/c-parser.cc:24999 c/c-parser.cc:29820 c/gimple-parser.cc:447 #: c/gimple-parser.cc:2513 c/c-parser.cc:4128 c/c-parser.cc:4356 -#: c/c-parser.cc:14486 cp/parser.cc:22203 cp/parser.cc:35278 +#: c/c-parser.cc:14486 cp/parser.cc:22203 cp/parser.cc:35283 #: go/gofrontend/embed.cc:371 #, gcc-internal-format msgid "expected %<{%>" @@ -23039,13 +23085,13 @@ msgstr "" #: c/c-parser.cc:27881 c/c-parser.cc:27940 c/c-parser.cc:29142 #: c/gimple-parser.cc:630 c/gimple-parser.cc:943 c/gimple-parser.cc:2561 #: c/gimple-parser.cc:2588 c/c-parser.cc:9416 c/c-parser.cc:17253 -#: c/c-parser.cc:18658 cp/parser.cc:35311 cp/parser.cc:37018 cp/parser.cc:40114 -#: cp/parser.cc:41007 go/gofrontend/embed.cc:404 +#: c/c-parser.cc:18658 cp/parser.cc:35316 cp/parser.cc:37023 cp/parser.cc:40119 +#: cp/parser.cc:41012 go/gofrontend/embed.cc:404 #, gcc-internal-format msgid "expected %<:%>" msgstr "" -#: c/c-parser.cc:8910 cp/parser.cc:35198 +#: c/c-parser.cc:8910 cp/parser.cc:35203 #, gcc-internal-format msgid "expected %<while%>" msgstr "" @@ -23055,7 +23101,7 @@ msgstr "" #: c/c-parser.cc:12687 c/c-parser.cc:18174 c/c-parser.cc:19775 #: c/gimple-parser.cc:1172 c/gimple-parser.cc:1198 c/gimple-parser.cc:1326 #: c/gimple-parser.cc:1329 c/gimple-parser.cc:1709 c/gimple-parser.cc:1715 -#: cp/parser.cc:34628 cp/parser.cc:35287 +#: cp/parser.cc:34633 cp/parser.cc:35292 #, gcc-internal-format msgid "expected %<,%>" msgstr "" @@ -23065,18 +23111,18 @@ msgid "expected %<.%>" msgstr "" #: c/c-parser.cc:14157 c/c-parser.cc:14189 c/c-parser.cc:14429 -#: cp/parser.cc:37592 cp/parser.cc:37613 +#: cp/parser.cc:37597 cp/parser.cc:37618 #, gcc-internal-format msgid "expected %<@end%>" msgstr "" -#: c/c-parser.cc:14847 c/gimple-parser.cc:1497 cp/parser.cc:35296 +#: c/c-parser.cc:14847 c/gimple-parser.cc:1497 cp/parser.cc:35301 #, gcc-internal-format msgid "expected %<>%>" msgstr "" #: c/c-parser.cc:18748 c/c-parser.cc:20191 c/c-parser.cc:20617 -#: cp/parser.cc:35320 cp/parser.cc:42878 +#: cp/parser.cc:35325 cp/parser.cc:42883 #, gcc-internal-format msgid "expected %<,%> or %<)%>" msgstr "" @@ -23086,45 +23132,45 @@ msgstr "" #: c/c-parser.cc:23109 c/c-parser.cc:23456 c/c-parser.cc:24168 #: c/c-parser.cc:25374 c/c-parser.cc:26880 c/c-parser.cc:28082 #: c/gimple-parser.cc:798 c/c-parser.cc:6727 c/c-parser.cc:23029 -#: c/c-parser.cc:23252 cp/parser.cc:35299 cp/parser.cc:44573 cp/parser.cc:44746 +#: c/c-parser.cc:23252 cp/parser.cc:35304 cp/parser.cc:44578 cp/parser.cc:44751 #, gcc-internal-format msgid "expected %<=%>" msgstr "" #: c/c-parser.cc:20767 c/c-parser.cc:27145 c/c-parser.cc:27166 #: c/c-parser.cc:16707 c/c-parser.cc:16719 c/c-parser.cc:20747 -#: cp/parser.cc:43028 cp/parser.cc:43055 cp/parser.cc:50595 cp/parser.cc:50606 +#: cp/parser.cc:43033 cp/parser.cc:43060 cp/parser.cc:50600 cp/parser.cc:50611 #, gcc-internal-format msgid "expected %<)%> or %<,%>" msgstr "" #: c/c-parser.cc:23040 c/c-parser.cc:23120 c/c-parser.cc:23473 #: c/c-parser.cc:23928 c/gimple-parser.cc:1763 c/gimple-parser.cc:1795 -#: c/gimple-parser.cc:1805 c/gimple-parser.cc:2598 cp/parser.cc:35275 -#: cp/parser.cc:37802 +#: c/gimple-parser.cc:1805 c/gimple-parser.cc:2598 cp/parser.cc:35280 +#: cp/parser.cc:37807 #, gcc-internal-format msgid "expected %<}%>" msgstr "" -#: c/c-parser.cc:23133 cp/parser.cc:44671 +#: c/c-parser.cc:23133 cp/parser.cc:44676 #, gcc-internal-format msgid "expected %<else%>" msgstr "" -#: c/c-parser.cc:25046 c/c-parser.cc:25035 cp/parser.cc:47601 +#: c/c-parser.cc:25046 c/c-parser.cc:25035 cp/parser.cc:47606 #, gcc-internal-format msgid "expected %<#pragma omp section%> or %<}%>" msgstr "" -#: c/c-parser.cc:28760 cp/parser.cc:52549 +#: c/c-parser.cc:28760 cp/parser.cc:52554 msgid "<message unknown at compile time>" msgstr "" -#: c/c-typeck.cc:9849 +#: c/c-typeck.cc:9863 msgid "(anonymous)" msgstr "" -#: c/gimple-parser.cc:1486 cp/parser.cc:19538 cp/parser.cc:35293 +#: c/gimple-parser.cc:1486 cp/parser.cc:19538 cp/parser.cc:35298 #, gcc-internal-format msgid "expected %<<%>" msgstr "" @@ -23135,7 +23181,7 @@ msgstr "" msgid "expected label" msgstr "" -#: cobol/gcobolspec.cc:641 +#: cobol/gcobolspec.cc:544 #, c-format msgid "Driving: (%ld)\n" msgstr "" @@ -23149,7 +23195,7 @@ msgstr "" msgid " after user-defined conversion:" msgstr "" -#: cp/call.cc:8724 cp/pt.cc:2064 cp/pt.cc:26910 +#: cp/call.cc:8724 cp/pt.cc:2064 cp/pt.cc:26956 msgid "candidate is:" msgid_plural "candidates are:" msgstr[0] "" @@ -23288,105 +23334,7 @@ msgstr "" msgid "At global scope:" msgstr "" -#: cp/error.cc:3791 -msgid " inlined from %qD at %r%s:%d:%d%R" -msgstr "" - -#: cp/error.cc:3796 -msgid " inlined from %qD at %r%s:%d%R" -msgstr "" - -#: cp/error.cc:3802 -msgid " inlined from %qD" -msgstr "" - -#: cp/error.cc:3828 -msgid "In static member function %qD" -msgstr "" - -#: cp/error.cc:3830 -msgid "In copy constructor %qD" -msgstr "" - -#: cp/error.cc:3832 -msgid "In constructor %qD" -msgstr "" - -#: cp/error.cc:3834 -msgid "In destructor %qD" -msgstr "" - -#: cp/error.cc:3836 -msgid "In lambda function" -msgstr "" - -#: cp/error.cc:3838 -msgid "In explicit object member function %qD" -msgstr "" - -#: cp/error.cc:3840 -msgid "In member function %qD" -msgstr "" - -#: cp/error.cc:3843 -msgid "In function %qD" -msgstr "" - -#: cp/error.cc:3870 -#, c-format -msgid "%s%s%sIn substitution of %qS:\n" -msgstr "" - -#: cp/error.cc:3871 -msgid "%s%s%sIn instantiation of %q#D:\n" -msgstr "" - -#: cp/error.cc:3891 -msgid "%r%s:%d:%d:%R " -msgstr "" - -#: cp/error.cc:3894 -msgid "%r%s:%d:%R " -msgstr "" - -#: cp/error.cc:3987 -#, c-format -msgid "recursively required by substitution of %qS\n" -msgstr "" - -#: cp/error.cc:3988 -#, c-format -msgid "required by substitution of %qS\n" -msgstr "" - -#: cp/error.cc:3993 -msgid "recursively required from %q#D\n" -msgstr "" - -#: cp/error.cc:3994 -msgid "required from %q#D\n" -msgstr "" - -#: cp/error.cc:4001 -msgid "recursively required from here\n" -msgstr "" - -#: cp/error.cc:4002 -msgid "required from here\n" -msgstr "" - -#: cp/error.cc:4052 -#, c-format -msgid "" -"[ skipping %d instantiation contexts, use -ftemplate-backtrace-limit=0 to " -"disable ]\n" -msgstr "" - -#: cp/error.cc:4104 -msgid "in %<constexpr%> expansion of %qs" -msgstr "" - -#: cp/pt.cc:2062 cp/semantics.cc:6705 +#: cp/pt.cc:2062 cp/semantics.cc:6719 msgid "candidates are:" msgstr "" @@ -23430,27 +23378,27 @@ msgstr "" msgid "source type is not polymorphic" msgstr "" -#: cp/typeck.cc:7524 c/c-typeck.cc:5289 +#: cp/typeck.cc:7524 c/c-typeck.cc:5303 #, gcc-internal-format msgid "wrong type argument to unary minus" msgstr "" -#: cp/typeck.cc:7525 c/c-typeck.cc:5275 +#: cp/typeck.cc:7525 c/c-typeck.cc:5289 #, gcc-internal-format msgid "wrong type argument to unary plus" msgstr "" -#: cp/typeck.cc:7552 c/c-typeck.cc:5334 +#: cp/typeck.cc:7552 c/c-typeck.cc:5348 #, gcc-internal-format msgid "wrong type argument to bit-complement" msgstr "" -#: cp/typeck.cc:7572 c/c-typeck.cc:5342 +#: cp/typeck.cc:7572 c/c-typeck.cc:5356 #, gcc-internal-format msgid "wrong type argument to abs" msgstr "" -#: cp/typeck.cc:7584 c/c-typeck.cc:5364 +#: cp/typeck.cc:7584 c/c-typeck.cc:5378 #, gcc-internal-format msgid "wrong type argument to conjugation" msgstr "" @@ -23487,63 +23435,63 @@ msgstr "" msgid "BOZ constant truncated at %L" msgstr "" -#: fortran/check.cc:4100 +#: fortran/check.cc:4126 #, c-format msgid "arguments 'a%d' and 'a%d' for intrinsic '%s'" msgstr "" -#: fortran/check.cc:4338 fortran/check.cc:4423 fortran/check.cc:4488 -#: fortran/check.cc:5181 +#: fortran/check.cc:4364 fortran/check.cc:4449 fortran/check.cc:4514 +#: fortran/check.cc:5217 #, c-format msgid "arguments '%s' and '%s' for intrinsic %s" msgstr "" -#: fortran/check.cc:4932 fortran/intrinsic.cc:4984 +#: fortran/check.cc:4968 fortran/intrinsic.cc:4987 #, c-format msgid "arguments '%s' and '%s' for intrinsic '%s'" msgstr "" -#: fortran/check.cc:5787 +#: fortran/check.cc:5823 msgid "NULL() is not interoperable" msgstr "" -#: fortran/check.cc:5793 +#: fortran/check.cc:5829 msgid "BOZ literal constant" msgstr "" -#: fortran/check.cc:5799 +#: fortran/check.cc:5835 msgid "Expression is polymorphic" msgstr "" -#: fortran/check.cc:5806 +#: fortran/check.cc:5842 msgid "Expression is a noninteroperable derived type" msgstr "" -#: fortran/check.cc:5812 +#: fortran/check.cc:5848 msgid "Procedure unexpected as argument" msgstr "" -#: fortran/check.cc:5822 +#: fortran/check.cc:5858 msgid "Extension to use a non-C_Bool-kind LOGICAL" msgstr "" -#: fortran/check.cc:5829 +#: fortran/check.cc:5865 msgid "Extension to use a non-C_CHAR-kind CHARACTER" msgstr "" -#: fortran/check.cc:5850 +#: fortran/check.cc:5886 msgid "Type shall have a character length of 1" msgstr "" -#: fortran/check.cc:5861 +#: fortran/check.cc:5897 msgid "Coarrays are not interoperable" msgstr "" -#: fortran/check.cc:5872 +#: fortran/check.cc:5908 msgid "Assumed-size arrays are not interoperable" msgstr "" -#: fortran/dump-parse-tree.cc:4127 +#: fortran/dump-parse-tree.cc:4162 #, c-format msgid "" "/* Prototypes for external procedures generated from %s\n" @@ -23554,7 +23502,7 @@ msgid "" "\n" msgstr "" -#: fortran/dump-parse-tree.cc:4139 +#: fortran/dump-parse-tree.cc:4174 #, c-format msgid "" "\n" @@ -23609,7 +23557,7 @@ msgstr "" msgid "Unsigned:" msgstr "" -#: fortran/expr.cc:3856 +#: fortran/expr.cc:3862 msgid "array assignment" msgstr "" @@ -23642,51 +23590,51 @@ msgstr "" msgid "Driving:" msgstr "" -#: fortran/interface.cc:3884 fortran/intrinsic.cc:4662 +#: fortran/interface.cc:3905 fortran/intrinsic.cc:4662 msgid "actual argument to INTENT = OUT/INOUT" msgstr "" -#: fortran/intrinsic.cc:5021 +#: fortran/intrinsic.cc:5024 msgid "available since Fortran 77" msgstr "" -#: fortran/intrinsic.cc:5025 +#: fortran/intrinsic.cc:5028 msgid "obsolescent in Fortran 95" msgstr "" -#: fortran/intrinsic.cc:5029 +#: fortran/intrinsic.cc:5032 msgid "deleted in Fortran 95" msgstr "" -#: fortran/intrinsic.cc:5033 +#: fortran/intrinsic.cc:5036 msgid "new in Fortran 95" msgstr "" -#: fortran/intrinsic.cc:5037 +#: fortran/intrinsic.cc:5040 msgid "new in Fortran 2003" msgstr "" -#: fortran/intrinsic.cc:5041 +#: fortran/intrinsic.cc:5044 msgid "new in Fortran 2008" msgstr "" -#: fortran/intrinsic.cc:5045 +#: fortran/intrinsic.cc:5048 msgid "new in Fortran 2018" msgstr "" -#: fortran/intrinsic.cc:5049 +#: fortran/intrinsic.cc:5052 msgid "new in Fortran 2023" msgstr "" -#: fortran/intrinsic.cc:5053 +#: fortran/intrinsic.cc:5056 msgid "a GNU Fortran extension" msgstr "" -#: fortran/intrinsic.cc:5057 +#: fortran/intrinsic.cc:5060 msgid "for backward compatibility" msgstr "" -#: fortran/intrinsic.cc:5061 +#: fortran/intrinsic.cc:5064 msgid "unsigned" msgstr "" @@ -23808,11 +23756,11 @@ msgstr "" msgid "implied END DO" msgstr "" -#: fortran/parse.cc:2523 fortran/resolve.cc:13557 +#: fortran/parse.cc:2523 fortran/resolve.cc:13675 msgid "assignment" msgstr "" -#: fortran/parse.cc:2526 fortran/resolve.cc:13623 fortran/resolve.cc:13626 +#: fortran/parse.cc:2526 fortran/resolve.cc:13741 fortran/resolve.cc:13744 msgid "pointer assignment" msgstr "" @@ -23898,47 +23846,47 @@ msgstr "" msgid "bind(c) procedure" msgstr "" -#: fortran/resolve.cc:7966 +#: fortran/resolve.cc:8002 msgid "Loop variable" msgstr "" -#: fortran/resolve.cc:7970 +#: fortran/resolve.cc:8006 msgid "iterator variable" msgstr "" -#: fortran/resolve.cc:7974 +#: fortran/resolve.cc:8010 msgid "Start expression in DO loop" msgstr "" -#: fortran/resolve.cc:7978 +#: fortran/resolve.cc:8014 msgid "End expression in DO loop" msgstr "" -#: fortran/resolve.cc:7982 +#: fortran/resolve.cc:8018 msgid "Step expression in DO loop" msgstr "" -#: fortran/resolve.cc:8607 fortran/resolve.cc:8610 +#: fortran/resolve.cc:8636 fortran/resolve.cc:8639 msgid "DEALLOCATE object" msgstr "" -#: fortran/resolve.cc:9034 fortran/resolve.cc:9037 +#: fortran/resolve.cc:9063 fortran/resolve.cc:9066 msgid "ALLOCATE object" msgstr "" -#: fortran/resolve.cc:9274 fortran/resolve.cc:11421 fortran/resolve.cc:11542 +#: fortran/resolve.cc:9303 fortran/resolve.cc:11450 fortran/resolve.cc:11676 msgid "STAT variable" msgstr "" -#: fortran/resolve.cc:9325 fortran/resolve.cc:11433 fortran/resolve.cc:11554 +#: fortran/resolve.cc:9354 fortran/resolve.cc:11462 fortran/resolve.cc:11688 msgid "ERRMSG variable" msgstr "" -#: fortran/resolve.cc:11229 +#: fortran/resolve.cc:11258 msgid "item in READ" msgstr "" -#: fortran/resolve.cc:11445 +#: fortran/resolve.cc:11474 msgid "ACQUIRED_LOCK variable" msgstr "" @@ -23958,26 +23906,26 @@ msgid "" "dummy declaration" msgstr "" -#: fortran/trans-decl.cc:6546 +#: fortran/trans-decl.cc:6540 #, c-format msgid "" "Actual string length does not match the declared one for dummy argument " "'%s' (%ld/%ld)" msgstr "" -#: fortran/trans-decl.cc:6554 +#: fortran/trans-decl.cc:6548 #, c-format msgid "" "Actual string length is shorter than the declared one for dummy argument " "'%s' (%ld/%ld)" msgstr "" -#: fortran/trans-expr.cc:11391 +#: fortran/trans-expr.cc:11376 #, c-format msgid "Target of rank remapping is too small (%ld < %ld)" msgstr "" -#: fortran/trans-expr.cc:13086 +#: fortran/trans-expr.cc:13071 msgid "Assignment of scalar to unallocated array" msgstr "" @@ -23986,81 +23934,81 @@ msgstr "" msgid "Unequal character lengths (%ld/%ld) in %s" msgstr "" -#: fortran/trans-intrinsic.cc:6380 +#: fortran/trans-intrinsic.cc:6386 #, c-format msgid "POS argument (%ld) out of range 0:%ld in intrinsic BTEST" msgstr "" -#: fortran/trans-intrinsic.cc:6667 +#: fortran/trans-intrinsic.cc:6673 #, c-format msgid "POS argument (%ld) out of range 0:%ld in intrinsic %s" msgstr "" -#: fortran/trans-intrinsic.cc:6715 +#: fortran/trans-intrinsic.cc:6721 #, c-format msgid "POS argument (%ld) out of range 0:%ld in intrinsic IBITS" msgstr "" -#: fortran/trans-intrinsic.cc:6725 +#: fortran/trans-intrinsic.cc:6731 #, c-format msgid "LEN argument (%ld) out of range 0:%ld in intrinsic IBITS" msgstr "" -#: fortran/trans-intrinsic.cc:6732 +#: fortran/trans-intrinsic.cc:6738 #, c-format msgid "POS(%ld)+LEN(%ld)>BIT_SIZE(%ld) in intrinsic IBITS" msgstr "" -#: fortran/trans-intrinsic.cc:6824 +#: fortran/trans-intrinsic.cc:6830 #, c-format msgid "SHIFT argument (%ld) out of range 0:%ld in intrinsic %s" msgstr "" -#: fortran/trans-intrinsic.cc:6892 +#: fortran/trans-intrinsic.cc:6898 #, c-format msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFT" msgstr "" -#: fortran/trans-intrinsic.cc:6972 +#: fortran/trans-intrinsic.cc:6978 #, c-format msgid "SIZE argument (%ld) out of range 1:%ld in intrinsic ISHFTC" msgstr "" -#: fortran/trans-intrinsic.cc:6980 fortran/trans-intrinsic.cc:7025 +#: fortran/trans-intrinsic.cc:6986 fortran/trans-intrinsic.cc:7031 #, c-format msgid "SHIFT argument (%ld) out of range -%ld:%ld in intrinsic ISHFTC" msgstr "" -#: fortran/trans-intrinsic.cc:9376 +#: fortran/trans-intrinsic.cc:9382 #, c-format msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)" msgstr "" -#: fortran/trans-intrinsic.cc:9408 +#: fortran/trans-intrinsic.cc:9414 msgid "Argument NCOPIES of REPEAT intrinsic is too large" msgstr "" -#: fortran/trans-intrinsic.cc:12875 +#: fortran/trans-intrinsic.cc:12882 #, c-format msgid "FROMPOS argument (%ld) out of range 0:%d in intrinsic MVBITS" msgstr "" -#: fortran/trans-intrinsic.cc:12887 +#: fortran/trans-intrinsic.cc:12894 #, c-format msgid "LEN argument (%ld) out of range 0:%d in intrinsic MVBITS" msgstr "" -#: fortran/trans-intrinsic.cc:12899 +#: fortran/trans-intrinsic.cc:12906 #, c-format msgid "TOPOS argument (%ld) out of range 0:%d in intrinsic MVBITS" msgstr "" -#: fortran/trans-intrinsic.cc:12911 +#: fortran/trans-intrinsic.cc:12918 #, c-format msgid "FROMPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS" msgstr "" -#: fortran/trans-intrinsic.cc:12919 +#: fortran/trans-intrinsic.cc:12926 #, c-format msgid "TOPOS(%ld)+LEN(%ld)>BIT_SIZE(%d) in intrinsic MVBITS" msgstr "" @@ -24077,20 +24025,20 @@ msgstr "" msgid "Assigned label is not a target label" msgstr "" -#: fortran/trans-stmt.cc:1294 +#: fortran/trans-stmt.cc:1350 #, c-format msgid "Invalid image number %d in SYNC IMAGES" msgstr "" -#: fortran/trans-stmt.cc:2612 +#: fortran/trans-stmt.cc:2706 msgid "Loop iterates infinitely" msgstr "" -#: fortran/trans-stmt.cc:2632 fortran/trans-stmt.cc:2888 +#: fortran/trans-stmt.cc:2726 fortran/trans-stmt.cc:2982 msgid "Loop variable has been modified" msgstr "" -#: fortran/trans-stmt.cc:2741 +#: fortran/trans-stmt.cc:2835 msgid "DO step value is zero" msgstr "" @@ -24119,12 +24067,12 @@ msgstr "" msgid "Attempting to allocate already allocated variable" msgstr "" -#: fortran/trans.cc:1878 fortran/trans.cc:2056 +#: fortran/trans.cc:1878 fortran/trans.cc:2057 #, c-format msgid "Attempt to DEALLOCATE unallocated '%s'" msgstr "" -#: fortran/trans.cc:2224 +#: fortran/trans.cc:2232 #, c-format msgid "Error reallocating to %lu bytes" msgstr "" @@ -24173,7 +24121,7 @@ msgid "expected boolean type" msgstr "" #: go/gofrontend/expressions.cc:5610 c/c-parser.cc:19534 c/c-parser.cc:19541 -#: cp/parser.cc:41859 cp/parser.cc:41866 +#: cp/parser.cc:41864 cp/parser.cc:41871 #, gcc-internal-format msgid "expected integer" msgstr "" @@ -24604,12 +24552,12 @@ msgstr "" msgid "degree of %<poly_int%> exceeds %<NUM_POLY_INT_COEFFS%> (%d)" msgstr "" -#: lto-streamer.h:1039 +#: lto-streamer.h:1040 #, gcc-internal-format, gfc-internal-format msgid "bytecode stream: expected tag %s instead of %s" msgstr "" -#: lto-streamer.h:1049 +#: lto-streamer.h:1050 #, gcc-internal-format, gfc-internal-format msgid "bytecode stream: tag %s is not in the expected range [%s, %s]" msgstr "" @@ -24619,7 +24567,7 @@ msgstr "" #. coalesced sections. Weak aliases (or any other kind of aliases) are #. not supported. Weak symbols that aren't visible outside the .s file #. are not supported. -#: config/darwin.h:723 +#: config/darwin.h:724 #, gcc-internal-format msgid "alias definitions not supported in Mach-O; ignored" msgstr "" @@ -24875,7 +24823,7 @@ msgstr "" msgid "Global declarative %s for %s" msgstr "" -#: cobol/parse_ante.h:2456 cobol/genapi.cc:5776 +#: cobol/parse_ante.h:2456 cobol/genapi.cc:5784 #, gcc-internal-format, gfc-internal-format msgid "%s:%d: invalid symbol_type_t %d" msgstr "" @@ -24901,7 +24849,7 @@ msgid "scan.o: %s" msgstr "" #. A general purpose syntax error. -#: fortran/gfortran.h:3560 fortran/io.cc:3727 fortran/io.cc:4413 +#: fortran/gfortran.h:3568 fortran/io.cc:3727 fortran/io.cc:4413 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in %s statement at %C" msgstr "" @@ -24989,17 +24937,17 @@ msgstr "" #: c-family/c.opt:70 c-family/c.opt:80 c-family/c.opt:83 c-family/c.opt:86 #: c-family/c.opt:89 c-family/c.opt:185 c-family/c.opt:188 c-family/c.opt:230 -#: c-family/c.opt:234 c-family/c.opt:246 c-family/c.opt:2481 -#: c-family/c.opt:2489 config/darwin.opt:30 common.opt:329 common.opt:332 -#: common.opt:429 common.opt:3793 +#: c-family/c.opt:234 c-family/c.opt:246 c-family/c.opt:2482 +#: c-family/c.opt:2490 config/darwin.opt:30 common.opt:329 common.opt:332 +#: common.opt:429 common.opt:3801 #, gcc-internal-format msgid "missing filename after %qs" msgstr "" #: c-family/c.opt:74 c-family/c.opt:77 c-family/c.opt:95 c-family/c.opt:98 #: c-family/c.opt:101 c-family/c.opt:104 c-family/c.opt:210 c-family/c.opt:222 -#: c-family/c.opt:278 c-family/c.opt:2477 c-family/c.opt:2497 -#: c-family/c.opt:2501 c-family/c.opt:2505 +#: c-family/c.opt:278 c-family/c.opt:2478 c-family/c.opt:2498 +#: c-family/c.opt:2502 c-family/c.opt:2506 #, gcc-internal-format msgid "missing path after %qs" msgstr "" @@ -25019,69 +24967,69 @@ msgstr "" msgid "missing output path after %qs" msgstr "" -#: c-family/c.opt:321 +#: c-family/c.opt:322 #, gcc-internal-format msgid "argument %qs to %<-Waligned-new%> not recognized" msgstr "" -#: c-family/c.opt:416 +#: c-family/c.opt:417 #, gcc-internal-format msgid "argument %qs to %<-Wbidi-chars%> not recognized" msgstr "" -#: c-family/c.opt:944 +#: c-family/c.opt:945 #, gcc-internal-format msgid "argument %qs to %<-Wleading-whitespace=%> not recognized" msgstr "" -#: c-family/c.opt:1133 +#: c-family/c.opt:1134 #, gcc-internal-format msgid "argument %qs to %<-Wnormalized%> not recognized" msgstr "" -#: c-family/c.opt:1505 +#: c-family/c.opt:1506 #, gcc-internal-format msgid "argument %qs to %<-Wtrailing-whitespace=%> not recognized" msgstr "" -#: c-family/c.opt:1833 +#: c-family/c.opt:1834 #, gcc-internal-format msgid "no class name specified with %qs" msgstr "" -#: c-family/c.opt:1861 +#: c-family/c.opt:1862 #, gcc-internal-format msgid "argument %qs must be either %<on%> or %<off%>" msgstr "" -#: c-family/c.opt:2005 +#: c-family/c.opt:2006 #, gcc-internal-format msgid "" "%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by " "default)" msgstr "" -#: c-family/c.opt:2080 +#: c-family/c.opt:2081 #, gcc-internal-format msgid "missing mapper" msgstr "" -#: c-family/c.opt:2108 +#: c-family/c.opt:2109 #, gcc-internal-format msgid "missing header name" msgstr "" -#: c-family/c.opt:2116 +#: c-family/c.opt:2117 #, gcc-internal-format msgid "missing module name" msgstr "" -#: c-family/c.opt:2163 +#: c-family/c.opt:2164 #, gcc-internal-format msgid "unrecognized ivar visibility value %qs" msgstr "" -#: c-family/c.opt:2341 +#: c-family/c.opt:2342 #, gcc-internal-format msgid "unrecognized scalar storage order value %qs" msgstr "" @@ -25247,107 +25195,107 @@ msgstr "" msgid "unavailable stringop for inlining %qs" msgstr "" -#: common.opt:2065 +#: common.opt:2066 #, gcc-internal-format msgid "unknown Control-Flow Protection Level %qs" msgstr "" -#: common.opt:2175 +#: common.opt:2180 #, gcc-internal-format msgid "unknown IRA algorithm %qs" msgstr "" -#: common.opt:2188 +#: common.opt:2193 #, gcc-internal-format msgid "unknown IRA region %qs" msgstr "" -#: common.opt:2274 +#: common.opt:2279 params.opt:469 #, gcc-internal-format msgid "unknown LTO partitioning model %qs" msgstr "" -#: common.opt:2398 +#: common.opt:2406 #, gcc-internal-format msgid "targets missing after %qs" msgstr "" -#: common.opt:2401 +#: common.opt:2409 #, gcc-internal-format msgid "options or targets=options missing after %qs" msgstr "" -#: common.opt:2409 +#: common.opt:2417 #, gcc-internal-format msgid "unknown offload ABI %qs" msgstr "" -#: common.opt:2418 +#: common.opt:2426 #, gcc-internal-format msgid "option missing after %qs" msgstr "" -#: common.opt:2595 +#: common.opt:2603 #, gcc-internal-format msgid "unknown profile reproducibility method %qs" msgstr "" -#: common.opt:2611 +#: common.opt:2619 #, gcc-internal-format msgid "unknown profile update method %qs" msgstr "" -#: common.opt:2720 +#: common.opt:2728 #, gcc-internal-format msgid "unknown Live-Patching Level %qs" msgstr "" -#: common.opt:2753 +#: common.opt:2761 #, gcc-internal-format msgid "unknown basic block reordering algorithm %qs" msgstr "" -#: common.opt:3089 +#: common.opt:3097 #, gcc-internal-format msgid "unknown TLS model %qs" msgstr "" -#: common.opt:3122 +#: common.opt:3130 #, gcc-internal-format msgid "unknown trampoline implementation %qs" msgstr "" -#: common.opt:3444 +#: common.opt:3452 #, gcc-internal-format msgid "unknown vectorizer cost model %qs" msgstr "" -#: common.opt:3475 +#: common.opt:3483 #, gcc-internal-format msgid "unrecognized automatic variable initialization type %qs" msgstr "" -#: common.opt:3501 +#: common.opt:3509 #, gcc-internal-format msgid "unrecognized visibility value %qs" msgstr "" -#: common.opt:3520 +#: common.opt:3528 #, gcc-internal-format msgid "unknown vtable verify initialization priority %qs" msgstr "" -#: common.opt:3576 +#: common.opt:3584 #, gcc-internal-format msgid "unrecognized zero init padding bits kind %qs" msgstr "" -#: params.opt:909 +#: params.opt:936 #, gcc-internal-format msgid "unknown ranger debug mode %qs" msgstr "" -#: params.opt:1100 +#: params.opt:1127 #, gcc-internal-format msgid "unknown threader debug mode %qs" msgstr "" @@ -25376,7 +25324,7 @@ msgstr "" #: attribs.cc:538 c-family/c-attribs.cc:1053 c-family/c-attribs.cc:2762 #: c-family/c-attribs.cc:3318 c-family/c-attribs.cc:5282 -#: c-family/c-attribs.cc:5375 cp/decl.cc:17061 cp/decl.cc:17112 +#: c-family/c-attribs.cc:5375 cp/decl.cc:17063 cp/decl.cc:17114 #: cp/friend.cc:319 cp/tree.cc:5394 #, gcc-internal-format msgid "previous declaration here" @@ -25394,7 +25342,7 @@ msgstr "" msgid "%<%E::%E%> scoped attribute directive ignored" msgstr "" -#: attribs.cc:761 c/c-parser.cc:2144 cp/cp-gimplify.cc:3699 +#: attribs.cc:761 c/c-parser.cc:2144 cp/cp-gimplify.cc:3704 #, gcc-internal-format msgid "wrong number of arguments specified for %qE attribute" msgstr "" @@ -25404,7 +25352,7 @@ msgstr "" msgid "expected %i or more, found %i" msgstr "" -#: attribs.cc:767 c/c-parser.cc:2147 cp/cp-gimplify.cc:3701 +#: attribs.cc:767 c/c-parser.cc:2147 cp/cp-gimplify.cc:3706 #, gcc-internal-format, gfc-internal-format msgid "expected %i, found %i" msgstr "" @@ -25478,15 +25426,15 @@ msgstr "" #: config/i386/i386-options.cc:3774 config/i386/i386-options.cc:3932 #: config/i386/i386-options.cc:4164 config/i386/i386-options.cc:4194 #: config/ia64/ia64.cc:799 config/loongarch/loongarch.cc:8197 -#: config/rs6000/rs6000.cc:20745 ada/gcc-interface/utils.cc:6885 -#: ada/gcc-interface/utils.cc:6901 ada/gcc-interface/utils.cc:6998 -#: ada/gcc-interface/utils.cc:7015 ada/gcc-interface/utils.cc:7032 -#: ada/gcc-interface/utils.cc:7047 ada/gcc-interface/utils.cc:7063 -#: ada/gcc-interface/utils.cc:7089 ada/gcc-interface/utils.cc:7158 -#: ada/gcc-interface/utils.cc:7185 ada/gcc-interface/utils.cc:7230 -#: ada/gcc-interface/utils.cc:7251 ada/gcc-interface/utils.cc:7299 -#: ada/gcc-interface/utils.cc:7315 ada/gcc-interface/utils.cc:7349 -#: c/c-decl.cc:4951 c/c-decl.cc:4954 c/c-decl.cc:4981 c/c-parser.cc:6097 +#: config/rs6000/rs6000.cc:20745 ada/gcc-interface/utils.cc:6900 +#: ada/gcc-interface/utils.cc:6916 ada/gcc-interface/utils.cc:7013 +#: ada/gcc-interface/utils.cc:7030 ada/gcc-interface/utils.cc:7047 +#: ada/gcc-interface/utils.cc:7062 ada/gcc-interface/utils.cc:7078 +#: ada/gcc-interface/utils.cc:7104 ada/gcc-interface/utils.cc:7173 +#: ada/gcc-interface/utils.cc:7200 ada/gcc-interface/utils.cc:7245 +#: ada/gcc-interface/utils.cc:7266 ada/gcc-interface/utils.cc:7314 +#: ada/gcc-interface/utils.cc:7330 ada/gcc-interface/utils.cc:7364 +#: c/c-decl.cc:4952 c/c-decl.cc:4955 c/c-decl.cc:4982 c/c-parser.cc:6097 #: cp/tree.cc:5062 cp/tree.cc:5561 d/d-attribs.cc:483 d/d-attribs.cc:702 #: d/d-attribs.cc:723 d/d-attribs.cc:739 d/d-attribs.cc:756 d/d-attribs.cc:788 #: d/d-attribs.cc:917 d/d-attribs.cc:976 d/d-attribs.cc:992 d/d-attribs.cc:1008 @@ -25622,7 +25570,7 @@ msgstr "" msgid "offset %qwi outside bounds of constant string" msgstr "" -#: builtins.cc:707 cp/name-lookup.cc:6936 +#: builtins.cc:707 cp/name-lookup.cc:6939 #, gcc-internal-format msgid "%qE declared here" msgstr "" @@ -25647,13 +25595,13 @@ msgstr "" msgid "invalid third argument to %<__builtin_prefetch%>; using zero" msgstr "" -#: builtins.cc:4081 gimple-fold.cc:2678 gimple-ssa-warn-access.cc:2587 +#: builtins.cc:4081 gimple-fold.cc:2712 gimple-ssa-warn-access.cc:2587 #: tree-ssa-strlen.cc:3177 #, gcc-internal-format msgid "%qD specified bound %E equals destination size" msgstr "" -#: builtins.cc:5330 gimplify.cc:4664 +#: builtins.cc:5330 gimplify.cc:4668 #, gcc-internal-format msgid "too few arguments to function %<va_start%>" msgstr "" @@ -25791,17 +25739,17 @@ msgstr "" msgid "last argument of %qD is not integer constant between 0 and 3" msgstr "" -#: calls.cc:1279 tree-tailcall.cc:487 +#: calls.cc:1286 tree-tailcall.cc:492 #, gcc-internal-format, gfc-internal-format msgid "cannot tail-call: %s" msgstr "" -#: calls.cc:2814 +#: calls.cc:2818 #, gcc-internal-format msgid "function call has aggregate value" msgstr "" -#: calls.cc:3557 +#: calls.cc:3561 #, gcc-internal-format msgid "passing too large argument on stack" msgstr "" @@ -26855,12 +26803,12 @@ msgstr "" #. include_self= #. TODO: Add OPT_Wundefined-inline. -#: cgraphunit.cc:1112 c/c-decl.cc:13592 +#: cgraphunit.cc:1112 c/c-decl.cc:13593 #, gcc-internal-format msgid "%q+F used but never defined" msgstr "" -#: cgraphunit.cc:1114 c/c-decl.cc:13602 +#: cgraphunit.cc:1114 c/c-decl.cc:13603 #, gcc-internal-format msgid "%q+F declared %<static%> but never defined" msgstr "" @@ -26970,13 +26918,13 @@ msgstr "" msgid "cannot find %qs" msgstr "" -#: collect-utils.cc:225 collect2.cc:2391 collect2.cc:2561 gcc.cc:3427 -#: gcc.cc:7860 +#: collect-utils.cc:225 collect2.cc:2391 collect2.cc:2561 gcc.cc:3430 +#: gcc.cc:7866 #, gcc-internal-format msgid "%<pex_init%> failed: %m" msgstr "" -#: collect-utils.cc:234 collect2.cc:2400 collect2.cc:2569 gcc.cc:2711 +#: collect-utils.cc:234 collect2.cc:2400 collect2.cc:2569 gcc.cc:2714 #, gcc-internal-format msgid "%s: %m" msgstr "" @@ -26991,7 +26939,7 @@ msgstr "" msgid "ld returned %d exit status" msgstr "" -#: collect2.cc:916 gcc.cc:8368 config/nvptx/mkoffload.cc:640 +#: collect2.cc:916 gcc.cc:8378 config/nvptx/mkoffload.cc:640 #, gcc-internal-format msgid "atexit failed" msgstr "" @@ -27001,7 +26949,7 @@ msgstr "" msgid "no arguments" msgstr "" -#: collect2.cc:1289 opts.cc:1204 +#: collect2.cc:1289 opts.cc:1223 #, gcc-internal-format msgid "LTO support has not been enabled in this configuration" msgstr "" @@ -27418,57 +27366,57 @@ msgstr "" msgid "abort in %s, at %s:%d" msgstr "" -#: except.cc:2172 +#: except.cc:2186 #, gcc-internal-format msgid "argument of %<__builtin_eh_return_regno%> must be constant" msgstr "" -#: except.cc:2318 +#: except.cc:2332 #, gcc-internal-format msgid "%<__builtin_eh_return%> not supported on this target" msgstr "" -#: except.cc:3454 except.cc:3479 +#: except.cc:3475 except.cc:3500 #, gcc-internal-format msgid "%<region_array%> is corrupted for region %i" msgstr "" -#: except.cc:3467 except.cc:3498 +#: except.cc:3488 except.cc:3519 #, gcc-internal-format msgid "%<lp_array%> is corrupted for lp %i" msgstr "" -#: except.cc:3484 +#: except.cc:3505 #, gcc-internal-format, gfc-internal-format msgid "outer block of region %i is wrong" msgstr "" -#: except.cc:3489 +#: except.cc:3510 #, gcc-internal-format, gfc-internal-format msgid "negative nesting depth of region %i" msgstr "" -#: except.cc:3503 +#: except.cc:3524 #, gcc-internal-format, gfc-internal-format msgid "region of lp %i is wrong" msgstr "" -#: except.cc:3530 +#: except.cc:3551 #, gcc-internal-format, gfc-internal-format msgid "tree list ends on depth %i" msgstr "" -#: except.cc:3535 +#: except.cc:3556 #, gcc-internal-format msgid "%<region_array%> does not match %<region_tree%>" msgstr "" -#: except.cc:3540 +#: except.cc:3561 #, gcc-internal-format msgid "%<lp_array%> does not match %<region_tree%>" msgstr "" -#: except.cc:3547 tree.cc:14621 value-prof.cc:529 +#: except.cc:3568 tree.cc:14621 value-prof.cc:529 #, gcc-internal-format msgid "%qs failed" msgstr "" @@ -27549,30 +27497,30 @@ msgstr "" msgid "large fixed-point constant implicitly truncated to fixed-point type" msgstr "" -#: fold-const.cc:4984 fold-const.cc:4994 +#: fold-const.cc:4991 fold-const.cc:5001 #, gcc-internal-format, gfc-internal-format msgid "comparison is always %d due to width of bit-field" msgstr "" -#: fold-const.cc:6252 tree-ssa-reassoc.cc:2886 tree-ssa-reassoc.cc:3971 +#: fold-const.cc:6259 tree-ssa-reassoc.cc:2886 tree-ssa-reassoc.cc:3971 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying range test" msgstr "" -#: fold-const.cc:9823 +#: fold-const.cc:9836 #, gcc-internal-format msgid "" "assuming signed overflow does not occur when reducing constant in comparison" msgstr "" -#: fold-const.cc:10230 +#: fold-const.cc:10243 #, gcc-internal-format msgid "" "assuming signed overflow does not occur when combining constants around a " "comparison" msgstr "" -#: fold-const.cc:13664 +#: fold-const.cc:13677 #, gcc-internal-format msgid "fold check: original tree changed by fold" msgstr "" @@ -27592,7 +27540,7 @@ msgstr "" msgid "total size of local objects exceeds maximum %wu" msgstr "" -#: function.cc:1789 gimplify.cc:7884 gimplify.cc:8055 varasm.cc:1833 +#: function.cc:1789 gimplify.cc:7888 gimplify.cc:8059 varasm.cc:1833 #, gcc-internal-format msgid "impossible constraint in %<asm%>" msgstr "" @@ -27612,197 +27560,197 @@ msgstr "" msgid "function returns an aggregate" msgstr "" -#: gcc.cc:2221 +#: gcc.cc:2224 #, gcc-internal-format msgid "cannot open nested response file" msgstr "" -#: gcc.cc:2258 +#: gcc.cc:2261 #, gcc-internal-format msgid "cannot close nonexistent response file" msgstr "" -#: gcc.cc:2281 +#: gcc.cc:2284 #, gcc-internal-format, gfc-internal-format msgid "could not open temporary response file %s" msgstr "" -#: gcc.cc:2288 +#: gcc.cc:2291 #, gcc-internal-format, gfc-internal-format msgid "could not write to temporary response file %s" msgstr "" -#: gcc.cc:2294 +#: gcc.cc:2297 #, gcc-internal-format, gfc-internal-format msgid "could not close temporary response file %s" msgstr "" #. This leaves DESC open, but the OS will save us. -#: gcc.cc:2326 +#: gcc.cc:2329 #, gcc-internal-format msgid "cannot read spec file %qs: %m" msgstr "" -#: gcc.cc:2420 gcc.cc:2440 +#: gcc.cc:2423 gcc.cc:2443 msgid "specs %%include syntax malformed after %td characters" msgstr "" -#: gcc.cc:2466 gcc.cc:2475 gcc.cc:2485 gcc.cc:2495 +#: gcc.cc:2469 gcc.cc:2478 gcc.cc:2488 gcc.cc:2498 msgid "specs %%rename syntax malformed after %td characters" msgstr "" -#: gcc.cc:2505 +#: gcc.cc:2508 #, gcc-internal-format, gfc-internal-format msgid "specs %s spec was not found to be renamed" msgstr "" -#: gcc.cc:2513 +#: gcc.cc:2516 #, gcc-internal-format msgid "%s: attempt to rename spec %qs to already defined spec %qs" msgstr "" -#: gcc.cc:2535 +#: gcc.cc:2538 msgid "specs unknown %% command after %td characters" msgstr "" -#: gcc.cc:2547 gcc.cc:2561 +#: gcc.cc:2550 gcc.cc:2564 msgid "specs file malformed after %td characters" msgstr "" -#: gcc.cc:2616 +#: gcc.cc:2619 #, gcc-internal-format msgid "spec file has no spec for linking" msgstr "" -#: gcc.cc:3180 gcc.cc:3217 +#: gcc.cc:3183 gcc.cc:3220 #, gcc-internal-format msgid "system path %qs is not absolute" msgstr "" -#: gcc.cc:3306 +#: gcc.cc:3309 #, gcc-internal-format msgid "%<-pipe%> not supported" msgstr "" -#: gcc.cc:3444 gcc.cc:7869 +#: gcc.cc:3447 gcc.cc:7875 #, gcc-internal-format msgid "cannot execute %qs: %s: %m" msgstr "" -#: gcc.cc:3445 gcc.cc:7870 +#: gcc.cc:3448 gcc.cc:7876 #, gcc-internal-format msgid "cannot execute %qs: %s" msgstr "" -#: gcc.cc:3464 +#: gcc.cc:3467 #, gcc-internal-format msgid "failed to get exit status: %m" msgstr "" -#: gcc.cc:3470 +#: gcc.cc:3473 #, gcc-internal-format msgid "failed to get process times: %m" msgstr "" #. The inferior failed to catch the signal. -#: gcc.cc:3496 gcc.cc:3520 +#: gcc.cc:3499 gcc.cc:3523 #, gcc-internal-format, gfc-internal-format msgid "%s signal terminated program %s" msgstr "" -#: gcc.cc:3964 opts-common.cc:1618 opts-common.cc:1650 +#: gcc.cc:3967 opts-common.cc:1618 opts-common.cc:1650 #, gcc-internal-format msgid "unrecognized command-line option %qs" msgstr "" -#: gcc.cc:4006 +#: gcc.cc:4009 #, gcc-internal-format msgid "GCC is not configured to support %qs as %<-foffload=%> argument" msgstr "" -#: gcc.cc:4013 +#: gcc.cc:4016 #, gcc-internal-format msgid "valid %<-foffload=%> arguments are: %s; did you mean %qs?" msgstr "" -#: gcc.cc:4016 +#: gcc.cc:4019 #, gcc-internal-format msgid "valid %<-foffload=%> arguments are: %s" msgstr "" -#: gcc.cc:4036 +#: gcc.cc:4039 #, gcc-internal-format msgid "%<=%>options missing after %<-foffload-options=%>target" msgstr "" -#: gcc.cc:4507 +#: gcc.cc:4510 #, gcc-internal-format msgid "%qs is an unknown %<-save-temps%> option" msgstr "" -#: gcc.cc:5059 +#: gcc.cc:5062 #, gcc-internal-format msgid "" "linker hardening options not enabled by %<-fhardened%> because other link " "options were specified on the command line" msgstr "" -#: gcc.cc:5083 toplev.cc:717 +#: gcc.cc:5086 toplev.cc:717 #, gcc-internal-format msgid "input file %qs is the same as output file" msgstr "" -#: gcc.cc:5088 +#: gcc.cc:5091 #, gcc-internal-format msgid "output filename may not be empty" msgstr "" -#: gcc.cc:5473 +#: gcc.cc:5476 #, gcc-internal-format msgid "%<-pipe%> ignored because %<-save-temps%> specified" msgstr "" -#: gcc.cc:5561 +#: gcc.cc:5564 #, gcc-internal-format msgid "%<-x %s%> after last input file has no effect" msgstr "" -#: gcc.cc:5764 +#: gcc.cc:5767 #, gcc-internal-format msgid "unable to locate default linker script %qs in the library search paths" msgstr "" -#: gcc.cc:5971 +#: gcc.cc:5974 #, gcc-internal-format msgid "switch %qs does not start with %<-%>" msgstr "" -#: gcc.cc:5975 +#: gcc.cc:5978 #, gcc-internal-format msgid "spec-generated switch is just %<-%>" msgstr "" -#: gcc.cc:6207 +#: gcc.cc:6210 #, gcc-internal-format msgid "spec %qs invalid" msgstr "" -#: gcc.cc:6384 +#: gcc.cc:6387 #, gcc-internal-format msgid "spec %qs has invalid %<%%0%c%>" msgstr "" -#: gcc.cc:6676 +#: gcc.cc:6679 #, gcc-internal-format msgid "spec %qs has invalid %<%%W%c%>" msgstr "" -#: gcc.cc:6692 +#: gcc.cc:6695 #, gcc-internal-format msgid "spec %qs has invalid %<%%@%c%>" msgstr "" -#: gcc.cc:6711 +#: gcc.cc:6714 #, gcc-internal-format msgid "spec %qs has invalid %<%%x%c%>" msgstr "" @@ -27810,138 +27758,138 @@ msgstr "" #. Catch the case where a spec string contains something like #. '%{foo:%*}'. i.e. there is no * in the pattern on the left #. hand side of the :. -#: gcc.cc:6922 +#: gcc.cc:6925 #, gcc-internal-format msgid "spec failure: %<%%*%> has not been initialized by pattern match" msgstr "" -#: gcc.cc:6973 +#: gcc.cc:6976 #, gcc-internal-format msgid "spec failure: unrecognized spec option %qc" msgstr "" -#: gcc.cc:7039 +#: gcc.cc:7042 #, gcc-internal-format msgid "unknown spec function %qs" msgstr "" -#: gcc.cc:7069 +#: gcc.cc:7072 #, gcc-internal-format msgid "error in arguments to spec function %qs" msgstr "" -#: gcc.cc:7128 +#: gcc.cc:7131 #, gcc-internal-format msgid "malformed spec function name" msgstr "" #. ) -#: gcc.cc:7131 +#: gcc.cc:7134 #, gcc-internal-format msgid "no arguments for spec function" msgstr "" -#: gcc.cc:7150 +#: gcc.cc:7153 #, gcc-internal-format msgid "malformed spec function arguments" msgstr "" -#: gcc.cc:7329 +#: gcc.cc:7332 #, gcc-internal-format msgid "braced spec %qs ends in escape" msgstr "" -#: gcc.cc:7464 +#: gcc.cc:7467 #, gcc-internal-format msgid "braced spec %qs is invalid at %qc" msgstr "" -#: gcc.cc:7559 +#: gcc.cc:7562 #, gcc-internal-format msgid "braced spec body %qs is invalid" msgstr "" -#: gcc.cc:8156 +#: gcc.cc:8166 #, gcc-internal-format, gfc-internal-format msgid "%s: could not determine length of compare-debug file %s" msgstr "" -#: gcc.cc:8167 +#: gcc.cc:8177 #, gcc-internal-format msgid "%s: %<-fcompare-debug%> failure (length)" msgstr "" -#: gcc.cc:8177 gcc.cc:8218 +#: gcc.cc:8187 gcc.cc:8228 #, gcc-internal-format, gfc-internal-format msgid "%s: could not open compare-debug file %s" msgstr "" -#: gcc.cc:8197 gcc.cc:8234 +#: gcc.cc:8207 gcc.cc:8244 #, gcc-internal-format msgid "%s: %<-fcompare-debug%> failure" msgstr "" -#: gcc.cc:8538 +#: gcc.cc:8548 #, gcc-internal-format msgid "spec failure: more than one argument to %<SYSROOT_SUFFIX_SPEC%>" msgstr "" -#: gcc.cc:8563 +#: gcc.cc:8573 #, gcc-internal-format msgid "spec failure: more than one argument to %<SYSROOT_HEADERS_SUFFIX_SPEC%>" msgstr "" -#: gcc.cc:8770 +#: gcc.cc:8780 #, gcc-internal-format msgid "unrecognized command-line option %<-%s%>; did you mean %<-%s%>?" msgstr "" -#: gcc.cc:8774 +#: gcc.cc:8784 #, gcc-internal-format msgid "unrecognized command-line option %<-%s%>" msgstr "" -#: gcc.cc:8900 +#: gcc.cc:8910 #, gcc-internal-format msgid "not configured with sysroot headers suffix" msgstr "" -#: gcc.cc:8961 cobol/gcobolspec.cc:451 +#: gcc.cc:8971 cobol/gcobolspec.cc:375 #, gcc-internal-format msgid "no input files" msgstr "" -#: gcc.cc:9012 +#: gcc.cc:9022 #, gcc-internal-format msgid "cannot specify %<-o%> with %<-c%>, %<-S%> or %<-E%> with multiple files" msgstr "" -#: gcc.cc:9054 +#: gcc.cc:9064 #, gcc-internal-format, gfc-internal-format msgid "%s: %s compiler not installed on this system" msgstr "" -#: gcc.cc:9079 +#: gcc.cc:9089 #, gcc-internal-format msgid "recompiling with %<-fcompare-debug%>" msgstr "" -#: gcc.cc:9095 +#: gcc.cc:9105 #, gcc-internal-format msgid "during %<-fcompare-debug%> recompilation" msgstr "" -#: gcc.cc:9104 +#: gcc.cc:9114 #, gcc-internal-format msgid "comparing final insns dumps" msgstr "" -#: gcc.cc:9257 +#: gcc.cc:9267 #, gcc-internal-format msgid "%<-fuse-linker-plugin%>, but %s not found" msgstr "" -#: gcc.cc:9291 +#: gcc.cc:9301 #, gcc-internal-format, gfc-internal-format msgid "%s: linker input file unused because linking not done" msgstr "" @@ -27949,92 +27897,92 @@ msgstr "" #. This is can be an indication the user specifed an errorneous #. separated option value, (or used the wrong prefix for an #. option). -#: gcc.cc:9297 +#: gcc.cc:9307 #, gcc-internal-format msgid "%s: linker input file not found: %m" msgstr "" -#: gcc.cc:9369 c-family/c-opts.cc:852 +#: gcc.cc:9379 c-family/c-opts.cc:852 #, gcc-internal-format msgid "cannot use %<-%> as input filename for a precompiled header" msgstr "" -#: gcc.cc:9375 +#: gcc.cc:9385 #, gcc-internal-format, gfc-internal-format msgid "language %s not recognized" msgstr "" -#: gcc.cc:9618 +#: gcc.cc:9628 #, gcc-internal-format msgid "multilib spec %qs is invalid" msgstr "" -#: gcc.cc:9820 +#: gcc.cc:9830 #, gcc-internal-format msgid "multilib exclusions %qs is invalid" msgstr "" -#: gcc.cc:9884 common/config/riscv/riscv-common.cc:2366 +#: gcc.cc:9894 common/config/riscv/riscv-common.cc:2366 #, gcc-internal-format msgid "multilib select %qs %qs is invalid" msgstr "" -#: gcc.cc:10058 +#: gcc.cc:10068 #, gcc-internal-format msgid "multilib select %qs is invalid" msgstr "" -#: gcc.cc:10098 +#: gcc.cc:10108 #, gcc-internal-format msgid "multilib exclusion %qs is invalid" msgstr "" -#: gcc.cc:10349 +#: gcc.cc:10359 #, gcc-internal-format msgid "environment variable %qs not defined" msgstr "" -#: gcc.cc:10517 gcc.cc:10522 +#: gcc.cc:10527 gcc.cc:10532 #, gcc-internal-format msgid "invalid version number %qs" msgstr "" -#: gcc.cc:10565 +#: gcc.cc:10575 #, gcc-internal-format, gfc-internal-format msgid "too few arguments to %%:version-compare" msgstr "" -#: gcc.cc:10571 +#: gcc.cc:10581 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:version-compare" msgstr "" -#: gcc.cc:10613 +#: gcc.cc:10623 #, gcc-internal-format msgid "unknown operator %qs in %%:version-compare" msgstr "" -#: gcc.cc:10737 +#: gcc.cc:10747 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:compare-debug-dump-opt" msgstr "" -#: gcc.cc:10805 +#: gcc.cc:10815 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:compare-debug-self-opt" msgstr "" -#: gcc.cc:10892 +#: gcc.cc:10902 #, gcc-internal-format, gfc-internal-format msgid "too many arguments for %%:dumps" msgstr "" -#: gcc.cc:10996 +#: gcc.cc:11006 #, gcc-internal-format, gfc-internal-format msgid "wrong number of arguments to %%:debug-level-gt" msgstr "" -#: gcc.cc:11017 +#: gcc.cc:11027 #, gcc-internal-format, gfc-internal-format msgid "wrong number of arguments to %%:dwarf-version-gt" msgstr "" @@ -28253,54 +28201,54 @@ msgstr "" msgid "array subscript %wu is above array bounds of %qT" msgstr "" -#: gimple-fold.cc:2226 gimple-fold.cc:3285 gimple-ssa-warn-restrict.cc:2080 +#: gimple-fold.cc:2260 gimple-fold.cc:3319 gimple-ssa-warn-restrict.cc:2080 #, gcc-internal-format msgid "%qD source argument is the same as destination" msgstr "" -#: gimple-fold.cc:2292 +#: gimple-fold.cc:2326 #, gcc-internal-format msgid "" "%qD destination unchanged after copying no bytes from a string of length %E" msgstr "" -#: gimple-fold.cc:2297 +#: gimple-fold.cc:2331 #, gcc-internal-format msgid "%qD destination unchanged after copying no bytes" msgstr "" -#: gimple-fold.cc:2680 gimple-ssa-warn-access.cc:866 +#: gimple-fold.cc:2714 gimple-ssa-warn-access.cc:866 #, gcc-internal-format msgid "%qD specified bound %E exceeds destination size %E" msgstr "" -#: gimple-fold.cc:2699 +#: gimple-fold.cc:2733 #, gcc-internal-format msgid "%qD specified bound %E equals source length" msgstr "" -#: gimple-fold.cc:4734 gimple-fold.cc:5021 +#: gimple-fold.cc:4768 gimple-fold.cc:5055 #, gcc-internal-format msgid "" "flexible array member %qD does not have well defined padding bits for %qs" msgstr "" -#: gimple-fold.cc:4970 cp/constexpr.cc:5081 +#: gimple-fold.cc:5004 cp/constexpr.cc:5109 #, gcc-internal-format msgid "PDP11 bit-field handling unsupported in %qs" msgstr "" -#: gimple-fold.cc:5252 +#: gimple-fold.cc:5286 #, gcc-internal-format, gfc-internal-format msgid "%s not supported for variable length aggregates" msgstr "" -#: gimple-fold.cc:5258 +#: gimple-fold.cc:5292 #, gcc-internal-format, gfc-internal-format msgid "%s not supported on this target" msgstr "" -#: gimple-fold.cc:8578 gimple-fold.cc:8607 +#: gimple-fold.cc:8612 gimple-fold.cc:8641 #, gcc-internal-format, gfc-internal-format msgid "comparison is always %d" msgstr "" @@ -28333,7 +28281,7 @@ msgid "" "from outside of the attribute" msgstr "" -#: gimple-low.cc:112 cp/name-lookup.cc:9306 +#: gimple-low.cc:112 cp/name-lookup.cc:9309 #, gcc-internal-format msgid "%qD defined here" msgstr "" @@ -28353,22 +28301,22 @@ msgstr "" msgid "function may return address of local variable" msgstr "" -#: gimple-ssa-isolate-paths.cc:422 c/c-typeck.cc:12865 +#: gimple-ssa-isolate-paths.cc:422 c/c-typeck.cc:12879 #, gcc-internal-format msgid "function returns address of local variable" msgstr "" #: gimple-ssa-isolate-paths.cc:425 gimple-ssa-warn-access.cc:2075 #: gimple-ssa-warn-access.cc:3729 tree.cc:12615 tree.cc:12652 tree.cc:12693 -#: tree.cc:12726 c/c-decl.cc:10780 c/c-parser.cc:22345 c/c-parser.cc:22486 -#: c/c-typeck.cc:3659 c/c-typeck.cc:3755 c/c-typeck.cc:3767 c/c-typeck.cc:6498 -#: c/c-typeck.cc:12766 c/c-typeck.cc:12783 c/gimple-parser.cc:2660 +#: tree.cc:12726 c/c-decl.cc:10781 c/c-parser.cc:22345 c/c-parser.cc:22486 +#: c/c-typeck.cc:3673 c/c-typeck.cc:3769 c/c-typeck.cc:3781 c/c-typeck.cc:6512 +#: c/c-typeck.cc:12780 c/c-typeck.cc:12797 c/gimple-parser.cc:2660 #: c/gimple-parser.cc:2668 cp/call.cc:8391 cp/call.cc:8474 cp/call.cc:8493 -#: cp/call.cc:10729 cp/class.cc:9468 cp/constexpr.cc:889 cp/constexpr.cc:1340 -#: cp/constexpr.cc:4489 cp/constexpr.cc:6183 cp/constexpr.cc:6562 -#: cp/cvt.cc:1110 cp/cvt.cc:1150 cp/decl.cc:9605 cp/decl2.cc:6351 +#: cp/call.cc:10729 cp/class.cc:9468 cp/constexpr.cc:896 cp/constexpr.cc:1355 +#: cp/constexpr.cc:4517 cp/constexpr.cc:6211 cp/constexpr.cc:6590 +#: cp/cvt.cc:1110 cp/cvt.cc:1150 cp/decl.cc:9607 cp/decl2.cc:6351 #: cp/decl2.cc:6400 cp/lambda.cc:639 cp/method.cc:1240 cp/parser.cc:23073 -#: cp/pt.cc:9266 cp/pt.cc:9936 cp/semantics.cc:2753 cp/semantics.cc:5290 +#: cp/pt.cc:9266 cp/pt.cc:9936 cp/semantics.cc:2756 cp/semantics.cc:5304 #: cp/typeck.cc:2164 cp/typeck.cc:2385 cp/typeck.cc:4570 cp/typeck.cc:10793 #: rust/backend/rust-constexpr.cc:4407 rust/backend/rust-tree.cc:621 #: rust/backend/rust-tree.cc:3800 @@ -29576,11 +29524,11 @@ msgstr "" #: gimple-ssa-warn-access.cc:3981 gimple-ssa-warn-access.cc:4629 #: gimple-ssa-warn-access.cc:4632 gimple-ssa-warn-restrict.cc:1830 -#: tree-ssa-uninit.cc:924 tree-ssa-uninit.cc:1123 c/c-decl.cc:4100 -#: c/c-decl.cc:4390 c/c-typeck.cc:10363 c/c-typeck.cc:13583 cp/call.cc:8808 -#: cp/call.cc:8819 cp/class.cc:1722 cp/class.cc:3543 cp/constexpr.cc:1065 -#: cp/decl.cc:4687 cp/decl.cc:13468 cp/decl.cc:14071 cp/decl.cc:14081 -#: cp/decl.cc:15081 cp/friend.cc:407 cp/friend.cc:417 cp/init.cc:2948 +#: tree-ssa-uninit.cc:924 tree-ssa-uninit.cc:1123 c/c-decl.cc:4101 +#: c/c-decl.cc:4391 c/c-typeck.cc:10377 c/c-typeck.cc:13597 cp/call.cc:8808 +#: cp/call.cc:8819 cp/class.cc:1722 cp/class.cc:3543 cp/constexpr.cc:1078 +#: cp/decl.cc:4687 cp/decl.cc:13470 cp/decl.cc:14073 cp/decl.cc:14083 +#: cp/decl.cc:15083 cp/friend.cc:407 cp/friend.cc:417 cp/init.cc:2948 #: cp/parser.cc:3860 cp/parser.cc:4006 cp/parser.cc:4058 cp/parser.cc:7428 #: cp/parser.cc:25737 cp/typeck.cc:5069 #, gcc-internal-format @@ -29993,457 +29941,457 @@ msgstr "" msgid "attribute %<fallthrough%> not preceding a case label or default label" msgstr "" -#: gimplify.cc:3943 +#: gimplify.cc:3944 #, gcc-internal-format msgid "" "the %<device%> clause must be present if the %<interop%> clause has more " "than one list item" msgstr "" -#: gimplify.cc:3949 +#: gimplify.cc:3950 #, gcc-internal-format msgid "" "number of list items in %<interop%> clause (%d) exceeds the number of " "%<append_args%> items (%d) for %<declare variant%> candidate %qD" msgstr "" -#: gimplify.cc:3955 +#: gimplify.cc:3956 #, gcc-internal-format msgid "%<declare variant%> candidate %qD declared here" msgstr "" -#: gimplify.cc:4223 +#: gimplify.cc:4227 #, gcc-internal-format msgid "" "%<is_device_ptr%> for %qD does not imply %<has_device_addr%> required for " "%<need_device_addr%>" msgstr "" -#: gimplify.cc:4235 +#: gimplify.cc:4239 #, gcc-internal-format msgid "" "%<has_device_addr%> for %qD does not imply %<is_device_ptr%> required for " "%<need_device_ptr%>" msgstr "" -#: gimplify.cc:4852 +#: gimplify.cc:4856 #, gcc-internal-format msgid "using result of function returning %<void%>" msgstr "" -#: gimplify.cc:7885 +#: gimplify.cc:7889 #, gcc-internal-format, gfc-internal-format msgid "non-memory output %d must stay in memory" msgstr "" -#: gimplify.cc:7900 +#: gimplify.cc:7904 #, gcc-internal-format msgid "invalid lvalue in %<asm%> output %d" msgstr "" -#: gimplify.cc:8056 +#: gimplify.cc:8060 #, gcc-internal-format, gfc-internal-format msgid "non-memory input %d must stay in memory" msgstr "" -#: gimplify.cc:8097 gimplify.cc:8107 +#: gimplify.cc:8101 gimplify.cc:8111 #, gcc-internal-format, gfc-internal-format msgid "memory input %d is not directly addressable" msgstr "" -#: gimplify.cc:8730 +#: gimplify.cc:8734 #, gcc-internal-format msgid "" "threadprivate variable %qE used in a region with %<order(concurrent)%> clause" msgstr "" -#: gimplify.cc:8732 +#: gimplify.cc:8736 #, gcc-internal-format msgid "enclosing region" msgstr "" -#: gimplify.cc:8736 +#: gimplify.cc:8740 #, gcc-internal-format msgid "threadprivate variable %qE used in target region" msgstr "" -#: gimplify.cc:8738 +#: gimplify.cc:8742 #, gcc-internal-format msgid "enclosing target region" msgstr "" -#: gimplify.cc:8751 +#: gimplify.cc:8755 #, gcc-internal-format msgid "threadprivate variable %qE used in untied task" msgstr "" -#: gimplify.cc:8753 +#: gimplify.cc:8757 #, gcc-internal-format msgid "enclosing task" msgstr "" -#: gimplify.cc:8850 +#: gimplify.cc:8854 #, gcc-internal-format msgid "%qE not specified in enclosing %qs" msgstr "" -#: gimplify.cc:8852 +#: gimplify.cc:8856 #, gcc-internal-format msgid "enclosing %qs" msgstr "" -#: gimplify.cc:9026 +#: gimplify.cc:9030 #, gcc-internal-format msgid "%qE not specified in enclosing OpenACC %qs construct" msgstr "" -#: gimplify.cc:9030 +#: gimplify.cc:9034 #, gcc-internal-format msgid "enclosing OpenACC %qs construct and" msgstr "" -#: gimplify.cc:9033 +#: gimplify.cc:9037 #, gcc-internal-format msgid "enclosing OpenACC %qs construct with %qs clause" msgstr "" -#: gimplify.cc:9103 +#: gimplify.cc:9107 #, gcc-internal-format msgid "%qE with %<link%> clause used in %<routine%> function" msgstr "" -#: gimplify.cc:9111 +#: gimplify.cc:9115 #, gcc-internal-format msgid "%qE requires a %<declare%> directive for use in a %<routine%> function" msgstr "" -#: gimplify.cc:9173 +#: gimplify.cc:9177 #, gcc-internal-format msgid "%qE not specified in enclosing %<target%>" msgstr "" -#: gimplify.cc:9175 +#: gimplify.cc:9179 #, gcc-internal-format msgid "enclosing %<target%>" msgstr "" -#: gimplify.cc:9210 gimplify.cc:13304 +#: gimplify.cc:9214 gimplify.cc:13346 #, gcc-internal-format msgid "variable %qE declared in enclosing %<host_data%> region" msgstr "" -#: gimplify.cc:9231 +#: gimplify.cc:9242 #, gcc-internal-format msgid "%qD referenced in target region does not have a mappable type" msgstr "" -#: gimplify.cc:9375 +#: gimplify.cc:9385 #, gcc-internal-format msgid "iteration variable %qE is predetermined linear" msgstr "" -#: gimplify.cc:9378 +#: gimplify.cc:9388 #, gcc-internal-format msgid "iteration variable %qE should be private" msgstr "" -#: gimplify.cc:9392 +#: gimplify.cc:9402 #, gcc-internal-format msgid "iteration variable %qE should not be firstprivate" msgstr "" -#: gimplify.cc:9395 +#: gimplify.cc:9405 #, gcc-internal-format msgid "iteration variable %qE should not be reduction" msgstr "" -#: gimplify.cc:9398 +#: gimplify.cc:9408 #, gcc-internal-format msgid "iteration variable %qE should not be linear" msgstr "" -#: gimplify.cc:10402 gimplify.cc:10413 gimplify.cc:10425 gimplify.cc:10441 -#: gimplify.cc:10646 gimplify.cc:10669 gimplify.cc:10680 gimplify.cc:10698 +#: gimplify.cc:10412 gimplify.cc:10423 gimplify.cc:10435 gimplify.cc:10451 +#: gimplify.cc:10656 gimplify.cc:10679 gimplify.cc:10690 gimplify.cc:10708 #, gcc-internal-format msgid "unexpected mapping node" msgstr "" -#: gimplify.cc:10735 +#: gimplify.cc:10745 #, gcc-internal-format msgid "unexpected pointer mapping node" msgstr "" -#: gimplify.cc:10948 +#: gimplify.cc:10958 #, gcc-internal-format msgid "base pointer cycle detected" msgstr "" -#: gimplify.cc:11455 +#: gimplify.cc:11465 #, gcc-internal-format msgid "" "data movement for component %qE is not compatible with movement for struct " "%qE" msgstr "" -#: gimplify.cc:11771 +#: gimplify.cc:11781 #, gcc-internal-format msgid "%qE appears more than once in map clauses" msgstr "" -#: gimplify.cc:12727 +#: gimplify.cc:12737 #, gcc-internal-format msgid "mapping field %qE of variable length structure" msgstr "" -#: gimplify.cc:12997 gimplify.cc:13003 +#: gimplify.cc:13039 gimplify.cc:13045 #, gcc-internal-format msgid "conditional %<lastprivate%> clause on %qs construct" msgstr "" -#: gimplify.cc:13020 +#: gimplify.cc:13062 #, gcc-internal-format msgid "non-scalar variable %qD in conditional %<lastprivate%> clause" msgstr "" -#: gimplify.cc:13042 +#: gimplify.cc:13084 #, gcc-internal-format msgid "%<task%> reduction modifier on a construct with a %<nowait%> clause" msgstr "" -#: gimplify.cc:13050 +#: gimplify.cc:13092 #, gcc-internal-format msgid "" "invalid %<task%> reduction modifier on construct other than %<parallel%>, " "%qs, %<sections%> or %<scope%>" msgstr "" -#: gimplify.cc:13061 gimplify.cc:13067 gimplify.cc:13073 gimplify.cc:13079 -#: gimplify.cc:13085 gimplify.cc:17471 +#: gimplify.cc:13103 gimplify.cc:13109 gimplify.cc:13115 gimplify.cc:13121 +#: gimplify.cc:13127 gimplify.cc:17513 #, gcc-internal-format msgid "%<inscan%> %<reduction%> clause on %qs construct" msgstr "" -#: gimplify.cc:13179 +#: gimplify.cc:13221 #, gcc-internal-format msgid "" "%<linear%> clause for variable other than loop iterator specified on " "construct combined with %<distribute%>" msgstr "" -#: gimplify.cc:13804 +#: gimplify.cc:13846 #, gcc-internal-format msgid "" "copyprivate variable %qE is not threadprivate or private in outer context" msgstr "" -#: gimplify.cc:13861 +#: gimplify.cc:13903 #, gcc-internal-format msgid "%s variable %qE is private in outer context" msgstr "" -#: gimplify.cc:13893 +#: gimplify.cc:13935 #, gcc-internal-format msgid "expected %qs %<if%> clause modifier rather than %qs" msgstr "" -#: gimplify.cc:13932 +#: gimplify.cc:13974 #, gcc-internal-format msgid "" "%<device%> clause with %<ancestor%> is only allowed on %<target%> construct" msgstr "" -#: gimplify.cc:13948 +#: gimplify.cc:13990 #, gcc-internal-format msgid "" "with %<ancestor%>, only the %<device%>, %<firstprivate%>, %<private%>, " "%<defaultmap%>, and %<map%> clauses may appear on the construct" msgstr "" -#: gimplify.cc:14153 +#: gimplify.cc:14195 #, gcc-internal-format msgid "" "allocator with access trait set to %<thread%> results in undefined behavior " "for %qs directive" msgstr "" -#: gimplify.cc:14194 +#: gimplify.cc:14236 #, gcc-internal-format msgid "" "%qD specified in %qs clause but not in %<inscan%> %<reduction%> clause on " "the containing construct" msgstr "" -#: gimplify.cc:14414 +#: gimplify.cc:14456 #, gcc-internal-format msgid "%<_Atomic%> %qD in implicit %<map%> clause" msgstr "" -#: gimplify.cc:14468 +#: gimplify.cc:14510 #, gcc-internal-format msgid "" "%<_Atomic%> %qD in implicit %<firstprivate%> clause on %<target%> construct" msgstr "" -#: gimplify.cc:14806 +#: gimplify.cc:14848 #, gcc-internal-format msgid "%<_Atomic%> %qD in %<firstprivate%> clause on %<target%> construct" msgstr "" -#: gimplify.cc:14879 +#: gimplify.cc:14921 #, gcc-internal-format msgid "" "same variable used in %<firstprivate%> and %<lastprivate%> clauses on " "%<distribute%> construct" msgstr "" -#: gimplify.cc:15056 +#: gimplify.cc:15098 #, gcc-internal-format msgid "" "incompatible data clause with reduction on %qE; promoting to " "%<present_or_copy%>" msgstr "" -#: gimplify.cc:15354 +#: gimplify.cc:15396 #, gcc-internal-format msgid "" "%qD specified in %<inscan%> %<reduction%> clause but not in %<scan%> " "directive clause" msgstr "" -#: gimplify.cc:15373 +#: gimplify.cc:15415 #, gcc-internal-format msgid "invalid private reduction on %qE" msgstr "" -#: gimplify.cc:15540 +#: gimplify.cc:15582 #, gcc-internal-format msgid "" "%<inscan%> %<reduction%> clause used together with %<linear%> clause for a " "variable other than loop iterator" msgstr "" -#: gimplify.cc:15856 +#: gimplify.cc:15898 #, gcc-internal-format msgid "%<mutexinoutset%> kind in %<depend%> clause on a %<taskwait%> construct" msgstr "" -#: gimplify.cc:15866 +#: gimplify.cc:15908 #, gcc-internal-format msgid "%<taskwait%> construct with %<nowait%> clause but no %<depend%> clauses" msgstr "" -#: gimplify.cc:16304 gimplify.cc:16308 gimplify.cc:16317 gimplify.cc:16329 -#: gimplify.cc:16334 +#: gimplify.cc:16346 gimplify.cc:16350 gimplify.cc:16359 gimplify.cc:16371 +#: gimplify.cc:16376 #, gcc-internal-format msgid "%qs clause may not appear on non-rectangular %qs" msgstr "" -#: gimplify.cc:16499 +#: gimplify.cc:16541 #, gcc-internal-format msgid "" "%<linear%> clause may not be specified together with %<ordered%> clause if " "stand-alone %<ordered%> construct is nested in it" msgstr "" -#: gimplify.cc:16564 +#: gimplify.cc:16606 #, gcc-internal-format msgid "threadprivate iteration variable %qD" msgstr "" -#: gimplify.cc:16595 gimplify.cc:16703 +#: gimplify.cc:16637 gimplify.cc:16745 #, gcc-internal-format msgid "conditional %<lastprivate%> on loop iterator %qD ignored" msgstr "" -#: gimplify.cc:17409 +#: gimplify.cc:17451 #, gcc-internal-format msgid "" "%<bind%> clause not specified on a %<loop%> construct not nested inside " "another OpenMP construct" msgstr "" -#: gimplify.cc:17433 +#: gimplify.cc:17475 #, gcc-internal-format msgid "" "%<bind(parallel)%> on a %<loop%> construct nested inside %<simd%> construct" msgstr "" -#: gimplify.cc:17453 +#: gimplify.cc:17495 #, gcc-internal-format msgid "" "%<bind(teams)%> on a %<loop%> region not strictly nested inside of a " "%<teams%> region" msgstr "" -#: gimplify.cc:17478 +#: gimplify.cc:17520 #, gcc-internal-format msgid "" "invalid %<task%> reduction modifier on construct other than %<parallel%>, " "%qs or %<sections%>" msgstr "" -#: gimplify.cc:17506 +#: gimplify.cc:17548 #, gcc-internal-format msgid "" "%<lastprivate%> clause on a %<loop%> construct refers to a variable %qD " "which is not the loop iterator" msgstr "" -#: gimplify.cc:18588 +#: gimplify.cc:18630 #, gcc-internal-format msgid "" "%<ordered%> construct with %qs clause must be closely nested inside a loop " "with %<ordered%> clause" msgstr "" -#: gimplify.cc:18609 +#: gimplify.cc:18651 #, gcc-internal-format msgid "variable %qE is not an iteration of outermost loop %d, expected %qE" msgstr "" -#: gimplify.cc:18622 +#: gimplify.cc:18664 #, gcc-internal-format msgid "" "number of variables in %qs clause with %<sink%> modifier does not match " "number of iteration variables" msgstr "" -#: gimplify.cc:18636 +#: gimplify.cc:18678 #, gcc-internal-format msgid "" "more than one %qs clause with %<source%> modifier on an %<ordered%> construct" msgstr "" -#: gimplify.cc:18649 +#: gimplify.cc:18691 #, gcc-internal-format msgid "" "%qs clause with %<source%> modifier specified together with %qs clauses with " "%<sink%> modifier on the same construct" msgstr "" -#: gimplify.cc:18816 +#: gimplify.cc:18858 #, gcc-internal-format msgid "" "%qD is a virtual function but only a direct call is allowed in a dispatch " "construct" msgstr "" -#: gimplify.cc:20558 +#: gimplify.cc:20600 #, gcc-internal-format msgid "gimplification failed" msgstr "" -#: gimplify.cc:21173 +#: gimplify.cc:21215 #, gcc-internal-format msgid "%qT is promoted to %qT when passed through %<...%>" msgstr "" -#: gimplify.cc:21178 +#: gimplify.cc:21220 #, gcc-internal-format msgid "(so you should pass %qT not %qT to %<va_arg%>)" msgstr "" -#: gimplify.cc:21185 +#: gimplify.cc:21227 #, gcc-internal-format msgid "if this code is reached, the program will abort" msgstr "" @@ -30895,7 +30843,7 @@ msgstr "" msgid "IPA modref summary is missing in input file" msgstr "" -#: ipa-prop.cc:4954 ipa-prop.cc:4996 ipa-prop.cc:5073 ipa-prop.cc:5121 +#: ipa-prop.cc:4991 ipa-prop.cc:5035 ipa-prop.cc:5115 ipa-prop.cc:5167 #, gcc-internal-format msgid "invalid jump function in LTO stream" msgstr "" @@ -31160,95 +31108,95 @@ msgid "" "%<asm%> operand has impossible constraints or there are not enough registers" msgstr "" -#: lto-cgraph.cc:1175 +#: lto-cgraph.cc:1177 #, gcc-internal-format msgid "" "function %qs has been referenced in offloaded code but hasn%'t been marked " "to be included in the offloaded code" msgstr "" -#: lto-cgraph.cc:1181 +#: lto-cgraph.cc:1183 #, gcc-internal-format msgid "" "variable %qs has been referenced in offloaded code but hasn%'t been marked " "to be included in the offloaded code" msgstr "" -#: lto-cgraph.cc:1349 +#: lto-cgraph.cc:1351 #, gcc-internal-format, gfc-internal-format msgid "bytecode stream: found multiple instances of cgraph node with uid %d" msgstr "" -#: lto-cgraph.cc:1514 +#: lto-cgraph.cc:1516 #, gcc-internal-format msgid "bytecode stream: no caller found while reading edge" msgstr "" -#: lto-cgraph.cc:1520 +#: lto-cgraph.cc:1522 #, gcc-internal-format msgid "bytecode stream: no callee found while reading edge" msgstr "" -#: lto-cgraph.cc:1597 +#: lto-cgraph.cc:1599 #, gcc-internal-format msgid "bytecode stream: found empty cgraph node" msgstr "" -#: lto-cgraph.cc:1713 +#: lto-cgraph.cc:1715 #, gcc-internal-format, gfc-internal-format msgid "At most %i profile runs is supported. Perhaps corrupted profile?" msgstr "" -#: lto-cgraph.cc:1738 +#: lto-cgraph.cc:1740 #, gcc-internal-format, gfc-internal-format msgid "Profile information in %s corrupted" msgstr "" -#: lto-cgraph.cc:1776 +#: lto-cgraph.cc:1778 #, gcc-internal-format, gfc-internal-format msgid "cannot find LTO cgraph in %s" msgstr "" -#: lto-cgraph.cc:1786 +#: lto-cgraph.cc:1788 #, gcc-internal-format, gfc-internal-format msgid "cannot find LTO section refs in %s" msgstr "" -#: lto-cgraph.cc:1947 +#: lto-cgraph.cc:1949 #, gcc-internal-format msgid "" "OpenMP %<requires%> directive with non-identical clauses in multiple " "compilation units: %qs vs. %qs" msgstr "" -#: lto-cgraph.cc:1950 lto-cgraph.cc:1951 lto-cgraph.cc:1957 +#: lto-cgraph.cc:1952 lto-cgraph.cc:1953 lto-cgraph.cc:1959 #, gcc-internal-format msgid "%qs has %qs" msgstr "" -#: lto-cgraph.cc:1955 +#: lto-cgraph.cc:1957 #, gcc-internal-format msgid "" "OpenMP %<requires%> directive with %qs specified only in some compilation " "units" msgstr "" -#: lto-cgraph.cc:1960 +#: lto-cgraph.cc:1962 #, gcc-internal-format msgid "but %qs has not" msgstr "" -#: lto-cgraph.cc:1968 +#: lto-cgraph.cc:1970 #, gcc-internal-format, gfc-internal-format msgid "invalid offload table in %s" msgstr "" -#: lto-cgraph.cc:1979 +#: lto-cgraph.cc:1981 #, gcc-internal-format msgid "GCC_OFFLOAD_OMP_REQUIRES_FILE unset" msgstr "" -#: lto-cgraph.cc:1982 +#: lto-cgraph.cc:1984 #, gcc-internal-format msgid "Cannot open omp_requires file %qs" msgstr "" @@ -32172,7 +32120,7 @@ msgstr "" msgid "command-line option %qs is not supported by this configuration" msgstr "" -#: opts-common.cc:1463 opts.cc:2589 +#: opts-common.cc:1463 opts.cc:2612 #, gcc-internal-format msgid "missing argument to %qs" msgstr "" @@ -32366,302 +32314,308 @@ msgstr "" msgid "%<-fsanitize=%s%> is incompatible with %<-fsanitize=%s%>" msgstr "" -#: opts.cc:1073 +#: opts.cc:1053 +#, gcc-internal-format +msgid "" +"%<-fipa-reorder-for-locality%> is incompatible with an explicit %qs option" +msgstr "" + +#: opts.cc:1092 #, gcc-internal-format msgid "section anchors must be disabled when unit-at-a-time is disabled" msgstr "" -#: opts.cc:1077 +#: opts.cc:1096 #, gcc-internal-format msgid "toplevel reorder must be disabled when unit-at-a-time is disabled" msgstr "" -#: opts.cc:1091 +#: opts.cc:1110 #, gcc-internal-format msgid "transactional memory is not supported with non-call exceptions" msgstr "" -#: opts.cc:1106 +#: opts.cc:1125 #, gcc-internal-format msgid "section anchors must be disabled when toplevel reorder is disabled" msgstr "" -#: opts.cc:1117 +#: opts.cc:1136 #, gcc-internal-format msgid "" "%<-ftrivial-auto-var-init=zero%> is not enabled by %<-fhardened%> because it " "was specified on the command line" msgstr "" -#: opts.cc:1167 +#: opts.cc:1186 #, gcc-internal-format msgid "" "%<-fstack-protector-strong%> is not enabled by %<-fhardened%> because it was " "specified on the command line" msgstr "" -#: opts.cc:1212 +#: opts.cc:1231 #, gcc-internal-format msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin" msgstr "" -#: opts.cc:1220 +#: opts.cc:1239 #, gcc-internal-format msgid "%<-gsplit-dwarf%> is not supported with LTO, disabling" msgstr "" -#: opts.cc:1234 +#: opts.cc:1253 #, gcc-internal-format msgid "%<-fsplit-stack%> is not supported by this compiler configuration" msgstr "" -#: opts.cc:1261 +#: opts.cc:1284 #, gcc-internal-format msgid "" "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> " "or %<-fsanitize=kernel-address%>" msgstr "" -#: opts.cc:1265 +#: opts.cc:1288 #, gcc-internal-format msgid "" "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> " "or %<-fsanitize=kernel-address%>" msgstr "" -#: opts.cc:1292 +#: opts.cc:1315 #, gcc-internal-format msgid "%<-fsanitize-recover=%s%> is not supported" msgstr "" -#: opts.cc:1304 opts.cc:2301 +#: opts.cc:1327 opts.cc:2324 #, gcc-internal-format msgid "%<-fsanitize-trap=%s%> is not supported" msgstr "" -#: opts.cc:1331 +#: opts.cc:1354 #, gcc-internal-format msgid "" "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option" msgstr "" -#: opts.cc:1338 +#: opts.cc:1361 #, gcc-internal-format msgid "transactional memory is not supported with %<-fsanitize=address%>" msgstr "" -#: opts.cc:1341 +#: opts.cc:1364 #, gcc-internal-format msgid "" "transactional memory is not supported with %<-fsanitize=kernel-address%>" msgstr "" -#: opts.cc:1346 +#: opts.cc:1369 #, gcc-internal-format msgid "live patching (with %qs) is not supported with LTO" msgstr "" -#: opts.cc:1351 +#: opts.cc:1374 #, gcc-internal-format msgid "vtable verification is not supported with LTO" msgstr "" -#: opts.cc:1426 +#: opts.cc:1449 #, gcc-internal-format msgid "variable tracking requested, but useless unless producing debug info" msgstr "" -#: opts.cc:1430 +#: opts.cc:1453 #, gcc-internal-format msgid "variable tracking requested, but not supported by this debug format" msgstr "" -#: opts.cc:1459 +#: opts.cc:1482 #, gcc-internal-format msgid "var-tracking-assignments changes selective scheduling" msgstr "" -#: opts.cc:1472 +#: opts.cc:1495 #, gcc-internal-format msgid "" "%<-Wstrict-flex-arrays%> is ignored when %<-fstrict-flex-arrays%> is not " "present" msgstr "" -#: opts.cc:1502 config/darwin.cc:3484 +#: opts.cc:1525 config/darwin.cc:3484 #, gcc-internal-format msgid "" "%<-freorder-blocks-and-partition%> does not work with exceptions on this " "architecture" msgstr "" -#: opts.cc:1518 +#: opts.cc:1541 #, gcc-internal-format msgid "" "%<-freorder-blocks-and-partition%> does not support unwind info on this " "architecture" msgstr "" -#: opts.cc:1536 config/pa/pa.cc:580 +#: opts.cc:1559 config/pa/pa.cc:580 #, gcc-internal-format msgid "%<-freorder-blocks-and-partition%> does not work on this architecture" msgstr "" -#: opts.cc:2045 +#: opts.cc:2068 #, gcc-internal-format msgid "unrecognized %<include_flags 0x%x%> passed to %<print_specific_help%>" msgstr "" -#: opts.cc:2280 +#: opts.cc:2303 #, gcc-internal-format msgid "%<-fsanitize=all%> option is not valid" msgstr "" -#: opts.cc:2335 +#: opts.cc:2358 #, gcc-internal-format msgid "" "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s; did you mean %qs?" msgstr "" -#: opts.cc:2341 +#: opts.cc:2364 #, gcc-internal-format msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s" msgstr "" -#: opts.cc:2376 +#: opts.cc:2399 #, gcc-internal-format msgid "%qs attribute directive ignored" msgstr "" -#: opts.cc:2400 +#: opts.cc:2423 #, gcc-internal-format msgid "unrecognized argument to %<-fzero-call-used-regs=%>: %qs" msgstr "" -#: opts.cc:2424 +#: opts.cc:2447 #, gcc-internal-format msgid "invalid arguments for %<-falign-%s%> option: %qs" msgstr "" -#: opts.cc:2439 +#: opts.cc:2462 #, gcc-internal-format msgid "invalid number of arguments for %<-falign-%s%> option: %qs" msgstr "" -#: opts.cc:2448 +#: opts.cc:2471 #, gcc-internal-format msgid "%<-falign-%s%> is not between 0 and %d" msgstr "" -#: opts.cc:2507 +#: opts.cc:2530 #, gcc-internal-format msgid "invalid arguments for %<-fpatchable-function-entry%>" msgstr "" -#: opts.cc:2644 +#: opts.cc:2667 #, gcc-internal-format msgid "%<--help%> argument %q.*s is ambiguous, please be more specific" msgstr "" -#: opts.cc:2655 +#: opts.cc:2678 #, gcc-internal-format msgid "unrecognized argument to %<--help=%> option: %q.*s" msgstr "" -#: opts.cc:2835 +#: opts.cc:2858 #, gcc-internal-format msgid "" "arguments ignored for %<-Wattributes=%>; use %<-Wno-attributes=%> instead" msgstr "" -#: opts.cc:2841 +#: opts.cc:2864 #, gcc-internal-format msgid "trailing %<,%> in arguments for %<-Wno-attributes=%>" msgstr "" -#: opts.cc:3087 +#: opts.cc:3110 #, gcc-internal-format msgid "%qs option can be specified only for offload compiler" msgstr "" -#: opts.cc:3096 +#: opts.cc:3119 #, gcc-internal-format msgid "structure alignment must be a small power of two, not %wu" msgstr "" -#: opts.cc:3217 +#: opts.cc:3240 #, gcc-internal-format msgid "unknown stack check parameter %qs" msgstr "" -#: opts.cc:3269 +#: opts.cc:3292 #, gcc-internal-format msgid "" "%<-gdwarf%s%> is ambiguous; use %<-gdwarf-%s%> for DWARF version or %<-" "gdwarf%> %<-g%s%> for debug level" msgstr "" -#: opts.cc:3280 +#: opts.cc:3303 #, gcc-internal-format msgid "dwarf version %wu is not supported" msgstr "" -#: opts.cc:3317 +#: opts.cc:3340 #, gcc-internal-format msgid "unrecognized argument to %<-flto=%> option: %qs" msgstr "" -#: opts.cc:3517 +#: opts.cc:3540 #, gcc-internal-format msgid "target system does not support debug output" msgstr "" -#: opts.cc:3556 +#: opts.cc:3579 #, gcc-internal-format msgid "debug format %qs conflicts with prior selection" msgstr "" -#: opts.cc:3580 +#: opts.cc:3603 #, gcc-internal-format msgid "unrecognized debug output level %qs" msgstr "" -#: opts.cc:3582 +#: opts.cc:3605 #, gcc-internal-format msgid "debug output level %qs is too high" msgstr "" -#: opts.cc:3594 +#: opts.cc:3617 #, gcc-internal-format msgid "unrecognized btf debug output level %qs" msgstr "" -#: opts.cc:3611 +#: opts.cc:3634 #, gcc-internal-format msgid "getting core file size maximum limit: %m" msgstr "" -#: opts.cc:3615 +#: opts.cc:3638 #, gcc-internal-format msgid "setting core file size limit to maximum: %m" msgstr "" -#: opts.cc:3660 +#: opts.cc:3683 #, gcc-internal-format, gfc-internal-format msgid "unrecognized gcc debugging option: %c" msgstr "" -#: opts.cc:3689 +#: opts.cc:3712 #, gcc-internal-format msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?" msgstr "" -#: opts.cc:3693 +#: opts.cc:3716 #, gcc-internal-format msgid "%<-W%serror=%s%>: no option %<-%s%>" msgstr "" -#: opts.cc:3697 +#: opts.cc:3720 #, gcc-internal-format msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings" msgstr "" @@ -34725,95 +34679,95 @@ msgstr "" msgid "BB %i has incorrect fallthru edge" msgstr "" -#: tree-inline.cc:3961 +#: tree-inline.cc:3964 #, gcc-internal-format msgid "function %q+F can never be copied because it receives a non-local goto" msgstr "" -#: tree-inline.cc:3968 +#: tree-inline.cc:3971 #, gcc-internal-format msgid "" "function %q+F can never be copied because it saves address of local label in " "a static variable" msgstr "" -#: tree-inline.cc:4008 +#: tree-inline.cc:4011 #, gcc-internal-format msgid "" "function %q+F can never be inlined because it uses alloca (override using " "the always_inline attribute)" msgstr "" -#: tree-inline.cc:4022 +#: tree-inline.cc:4025 #, gcc-internal-format msgid "function %q+F can never be inlined because it uses setjmp" msgstr "" -#: tree-inline.cc:4036 +#: tree-inline.cc:4039 #, gcc-internal-format msgid "" "function %q+F can never be inlined because it uses variable argument lists" msgstr "" -#: tree-inline.cc:4048 +#: tree-inline.cc:4051 #, gcc-internal-format msgid "" "function %q+F can never be inlined because it uses setjmp-longjmp exception " "handling" msgstr "" -#: tree-inline.cc:4056 +#: tree-inline.cc:4059 #, gcc-internal-format msgid "function %q+F can never be inlined because it uses non-local goto" msgstr "" -#: tree-inline.cc:4068 +#: tree-inline.cc:4071 #, gcc-internal-format msgid "" "function %q+F can never be inlined because it uses %<__builtin_return%> or " "%<__builtin_apply_args%>" msgstr "" -#: tree-inline.cc:4088 +#: tree-inline.cc:4091 #, gcc-internal-format msgid "function %q+F can never be inlined because it contains a computed goto" msgstr "" -#: tree-inline.cc:4134 +#: tree-inline.cc:4137 #, gcc-internal-format msgid "function %q+F can never be inlined because it has a VLA argument" msgstr "" -#: tree-inline.cc:4201 +#: tree-inline.cc:4204 #, gcc-internal-format msgid "" "function %q+F can never be inlined because it is suppressed using %<-fno-" "inline%>" msgstr "" -#: tree-inline.cc:4209 +#: tree-inline.cc:4212 #, gcc-internal-format msgid "" "function %q+F can never be inlined because it uses attributes conflicting " "with inlining" msgstr "" -#: tree-inline.cc:4892 +#: tree-inline.cc:4895 #, gcc-internal-format msgid "inlining failed in call to %<always_inline%> %q+F: %s" msgstr "" -#: tree-inline.cc:4895 tree-inline.cc:4916 +#: tree-inline.cc:4898 tree-inline.cc:4919 #, gcc-internal-format msgid "called from here" msgstr "" -#: tree-inline.cc:4898 tree-inline.cc:4919 +#: tree-inline.cc:4901 tree-inline.cc:4922 #, gcc-internal-format msgid "called from this function" msgstr "" -#: tree-inline.cc:4912 +#: tree-inline.cc:4915 #, gcc-internal-format msgid "inlining failed in call to %q+F: %s" msgstr "" @@ -34828,7 +34782,7 @@ msgstr "" msgid "cannot update SSA form" msgstr "" -#: tree-into-ssa.cc:3517 tree-outof-ssa.cc:907 tree-ssa-coalesce.cc:1012 +#: tree-into-ssa.cc:3517 tree-outof-ssa.cc:907 tree-ssa-coalesce.cc:1014 #, gcc-internal-format msgid "SSA corruption" msgstr "" @@ -34858,12 +34812,12 @@ msgstr "" msgid "target does not support atomic profile update, single mode is selected" msgstr "" -#: tree-ssa-alias.cc:4124 +#: tree-ssa-alias.cc:4125 #, gcc-internal-format, gfc-internal-format msgid "invalid fn spec attribute \"%s\"" msgstr "" -#: tree-ssa-alias.cc:4163 +#: tree-ssa-alias.cc:4164 #, gcc-internal-format, gfc-internal-format msgid "invalid fn spec attribute \"%s\" arg %i" msgstr "" @@ -35338,37 +35292,37 @@ msgid "" "%<--param=switch-lower-slow-alg-max-cases=%d%> limit." msgstr "" -#: tree-tailcall.cc:220 +#: tree-tailcall.cc:225 #, gcc-internal-format msgid "address of label passed to %<musttail%> call argument" msgstr "" -#: tree-tailcall.cc:224 +#: tree-tailcall.cc:229 #, gcc-internal-format msgid "address of parameter %qD passed to %<musttail%> call argument" msgstr "" -#: tree-tailcall.cc:228 +#: tree-tailcall.cc:233 #, gcc-internal-format msgid "address of automatic variable %qD passed to %<musttail%> call argument" msgstr "" -#: tree-tailcall.cc:232 +#: tree-tailcall.cc:237 #, gcc-internal-format msgid "address of local variable passed to %<musttail%> call argument" msgstr "" -#: tree-tailcall.cc:849 tree-tailcall.cc:879 +#: tree-tailcall.cc:885 tree-tailcall.cc:914 #, gcc-internal-format msgid "address of local variable can escape to %<musttail%> call" msgstr "" -#: tree-tailcall.cc:874 +#: tree-tailcall.cc:909 #, gcc-internal-format msgid "address of automatic variable %qD can escape to %<musttail%> call" msgstr "" -#: tree-tailcall.cc:905 +#: tree-tailcall.cc:939 #, gcc-internal-format msgid "address of parameter %qD can escape to %<musttail%> call" msgstr "" @@ -35398,7 +35352,7 @@ msgstr "" msgid "vector shuffling operation will be expanded piecewise" msgstr "" -#: tree-vect-loop.cc:5109 +#: tree-vect-loop.cc:5115 #, gcc-internal-format msgid "vectorization did not happen for a simd loop" msgstr "" @@ -35981,7 +35935,7 @@ msgid "" "requested alignment for %q+D is greater than implemented alignment of %wu" msgstr "" -#: varasm.cc:2513 c/c-decl.cc:5970 c/c-parser.cc:1969 m2/gm2-gcc/m2type.cc:1248 +#: varasm.cc:2513 c/c-decl.cc:5971 c/c-parser.cc:1969 m2/gm2-gcc/m2type.cc:1248 #, gcc-internal-format msgid "storage size of %q+D isn%'t known" msgstr "" @@ -36058,7 +36012,7 @@ msgstr "" msgid "%qs symbol %q+D must have static linkage" msgstr "" -#: varasm.cc:6609 config/nvptx/nvptx.cc:7740 +#: varasm.cc:6609 config/nvptx/nvptx.cc:7758 #, gcc-internal-format msgid "alias definitions not supported in this configuration" msgstr "" @@ -36245,27 +36199,27 @@ msgid "%qE attribute ignored for field of type %qT" msgstr "" #: c-family/c-attribs.cc:1452 c-family/c-attribs.cc:3650 -#: c-family/c-attribs.cc:6271 ada/gcc-interface/utils.cc:7446 +#: c-family/c-attribs.cc:6271 ada/gcc-interface/utils.cc:7461 #, gcc-internal-format msgid "%qE argument not a string" msgstr "" -#: c-family/c-attribs.cc:1627 ada/gcc-interface/utils.cc:6932 +#: c-family/c-attribs.cc:1627 ada/gcc-interface/utils.cc:6947 #, gcc-internal-format msgid "%qE attribute ignored because of argument %qE" msgstr "" -#: c-family/c-attribs.cc:1648 ada/gcc-interface/utils.cc:6953 +#: c-family/c-attribs.cc:1648 ada/gcc-interface/utils.cc:6968 #, gcc-internal-format msgid "ignoring attribute %qE because of excess arguments starting at %qE" msgstr "" -#: c-family/c-attribs.cc:1662 ada/gcc-interface/utils.cc:6967 +#: c-family/c-attribs.cc:1662 ada/gcc-interface/utils.cc:6982 #, gcc-internal-format msgid "attribute %qE does not apply to elements of non-scalar type %qT" msgstr "" -#: c-family/c-attribs.cc:1667 ada/gcc-interface/utils.cc:6972 +#: c-family/c-attribs.cc:1667 ada/gcc-interface/utils.cc:6987 #, gcc-internal-format msgid "attribute %qE does not apply to fields of aggregate type %qT" msgstr "" @@ -36281,12 +36235,12 @@ msgid "%qE attribute has no effect on unit local functions" msgstr "" #: c-family/c-attribs.cc:1993 c-family/c-attribs.cc:3633 -#: ada/gcc-interface/utils.cc:7202 +#: ada/gcc-interface/utils.cc:7217 #, gcc-internal-format msgid "%qE attribute ignored because %qD is not a variable" msgstr "" -#: c-family/c-attribs.cc:1999 ada/gcc-interface/utils.cc:7208 +#: c-family/c-attribs.cc:1999 ada/gcc-interface/utils.cc:7223 #, gcc-internal-format msgid "%qE attribute ignored because %qD is not a local variable" msgstr "" @@ -36571,7 +36525,7 @@ msgid "weak %q+D cannot be defined %qE" msgstr "" #: c-family/c-attribs.cc:3209 c-family/c-attribs.cc:4198 -#: ada/gcc-interface/utils.cc:7273 jit/dummy-frontend.cc:883 +#: ada/gcc-interface/utils.cc:7288 jit/dummy-frontend.cc:883 #, gcc-internal-format msgid "attribute %qE argument not a string" msgstr "" @@ -36681,7 +36635,7 @@ msgstr "" #: c-family/c-attribs.cc:3685 c-family/c-attribs.cc:4281 #: c-family/c-attribs.cc:6236 c-family/c-attribs.cc:6263 -#: config/m32c/m32c.cc:2942 ada/gcc-interface/utils.cc:7432 +#: config/m32c/m32c.cc:2942 ada/gcc-interface/utils.cc:7447 #, gcc-internal-format msgid "%qE attribute applies only to functions" msgstr "" @@ -36781,7 +36735,7 @@ msgstr "" msgid "%qE attribute argument %E is not in the range [0, %wu]" msgstr "" -#: c-family/c-attribs.cc:4211 ada/gcc-interface/utils.cc:7286 +#: c-family/c-attribs.cc:4211 ada/gcc-interface/utils.cc:7301 #, gcc-internal-format msgid "" "only %<inbranch%> and %<notinbranch%> flags are allowed for %<__simd__%> " @@ -36835,7 +36789,7 @@ msgstr "" msgid "%qE argument is not a function" msgstr "" -#: c-family/c-attribs.cc:4635 cp/name-lookup.cc:6571 +#: c-family/c-attribs.cc:4635 cp/name-lookup.cc:6574 #, gcc-internal-format msgid "deprecated message is not a string" msgstr "" @@ -37055,17 +37009,17 @@ msgstr "" msgid "%qE attribute only applies to variadic functions" msgstr "" -#: c-family/c-attribs.cc:6031 ada/gcc-interface/utils.cc:6833 +#: c-family/c-attribs.cc:6031 ada/gcc-interface/utils.cc:6848 #, gcc-internal-format msgid "requested position is not an integer constant" msgstr "" -#: c-family/c-attribs.cc:6039 ada/gcc-interface/utils.cc:6840 +#: c-family/c-attribs.cc:6039 ada/gcc-interface/utils.cc:6855 #, gcc-internal-format msgid "requested position is less than zero" msgstr "" -#: c-family/c-attribs.cc:6088 ada/gcc-interface/utils.cc:7329 +#: c-family/c-attribs.cc:6088 ada/gcc-interface/utils.cc:7344 #: d/d-attribs.cc:771 jit/dummy-frontend.cc:799 #, gcc-internal-format msgid "empty string in attribute %<target%>" @@ -37079,7 +37033,7 @@ msgstr "" msgid "%qE attribute argument not a string constant" msgstr "" -#: c-family/c-attribs.cc:6288 ada/gcc-interface/utils.cc:7463 +#: c-family/c-attribs.cc:6288 ada/gcc-interface/utils.cc:7478 #, gcc-internal-format msgid "unrecognized %qE attribute argument %qs" msgstr "" @@ -37363,8 +37317,8 @@ msgstr "" msgid "suggest parentheses around assignment used as truth value" msgstr "" -#: c-family/c-common.cc:3882 c/c-decl.cc:5027 c/c-decl.cc:7693 -#: c/c-parser.cc:4001 c/c-typeck.cc:17894 +#: c-family/c-common.cc:3882 c/c-decl.cc:5028 c/c-decl.cc:7694 +#: c/c-parser.cc:4001 c/c-typeck.cc:17908 #, gcc-internal-format msgid "invalid use of %<restrict%>" msgstr "" @@ -38452,7 +38406,7 @@ msgstr "" msgid "integer constant is too large for %<_BitInt(%d)%> type" msgstr "" -#: c-family/c-lex.cc:1093 c/c-decl.cc:12948 +#: c-family/c-lex.cc:1093 c/c-decl.cc:12949 #, gcc-internal-format msgid "%<_BitInt(%d)%> is not supported on this target" msgstr "" @@ -38536,7 +38490,7 @@ msgstr "" msgid "traditional C rejects string constant concatenation" msgstr "" -#: c-family/c-omp.cc:131 cp/pt.cc:19579 +#: c-family/c-omp.cc:131 cp/pt.cc:19623 #, gcc-internal-format msgid "" "%<#pragma omp critical%> with %<hint%> clause requires a name, except when " @@ -38596,7 +38550,7 @@ msgstr "" msgid "%<iterator%> modifier may not be specified on %<depobj%> construct" msgstr "" -#: c-family/c-omp.cc:1002 cp/semantics.cc:11597 +#: c-family/c-omp.cc:1002 cp/semantics.cc:11611 #, gcc-internal-format msgid "invalid type for iteration variable %qE" msgstr "" @@ -38611,17 +38565,17 @@ msgstr "" msgid "%qE is not initialized" msgstr "" -#: c-family/c-omp.cc:1044 cp/semantics.cc:11481 +#: c-family/c-omp.cc:1044 cp/semantics.cc:11495 #, gcc-internal-format msgid "missing controlling predicate" msgstr "" -#: c-family/c-omp.cc:1150 cp/semantics.cc:11072 +#: c-family/c-omp.cc:1150 cp/semantics.cc:11086 #, gcc-internal-format msgid "invalid controlling predicate" msgstr "" -#: c-family/c-omp.cc:1157 cp/semantics.cc:11487 +#: c-family/c-omp.cc:1157 cp/semantics.cc:11501 #, gcc-internal-format msgid "missing increment expression" msgstr "" @@ -38631,7 +38585,7 @@ msgstr "" msgid "increment is not constant 1 or -1 for %<!=%> condition" msgstr "" -#: c-family/c-omp.cc:1289 cp/semantics.cc:11189 +#: c-family/c-omp.cc:1289 cp/semantics.cc:11203 #, gcc-internal-format msgid "invalid increment expression" msgstr "" @@ -38737,7 +38691,7 @@ msgid "" "%<for simd%>, %<parallel for%>, %<parallel for simd%>" msgstr "" -#: c-family/c-omp.cc:3072 c/c-typeck.cc:17677 cp/semantics.cc:10162 +#: c-family/c-omp.cc:3072 c/c-typeck.cc:17691 cp/semantics.cc:10176 #, gcc-internal-format msgid "" "%qD specified in %<allocate%> clause but not in an explicit privatization " @@ -38745,12 +38699,12 @@ msgid "" msgstr "" #: c-family/c-omp.cc:3164 c-family/c-omp.cc:3179 c/c-parser.cc:27067 -#: cp/parser.cc:50498 +#: cp/parser.cc:50503 #, gcc-internal-format msgid "%qD is not a function argument" msgstr "" -#: c-family/c-omp.cc:3460 c/c-typeck.cc:16764 cp/semantics.cc:8752 +#: c-family/c-omp.cc:3460 c/c-typeck.cc:16778 cp/semantics.cc:8766 #, gcc-internal-format msgid "bit-field %qE in %qs clause" msgstr "" @@ -38760,8 +38714,8 @@ msgstr "" msgid "%qE does not have a mappable type in %qs clause" msgstr "" -#: c-family/c-omp.cc:3476 c/c-typeck.cc:15164 c/c-typeck.cc:16853 -#: c/c-typeck.cc:17041 +#: c-family/c-omp.cc:3476 c/c-typeck.cc:15178 c/c-typeck.cc:16867 +#: c/c-typeck.cc:17055 #, gcc-internal-format msgid "%<_Atomic%> %qE in %qs clause" msgstr "" @@ -39381,8 +39335,8 @@ msgstr "" msgid "wrong type argument to %s" msgstr "" -#: c-family/c-warn.cc:60 c-family/c-warn.cc:73 cp/constexpr.cc:3693 -#: cp/constexpr.cc:7687 m2/gm2-gcc/m2expr.cc:965 +#: c-family/c-warn.cc:60 c-family/c-warn.cc:73 cp/constexpr.cc:3721 +#: cp/constexpr.cc:7715 m2/gm2-gcc/m2expr.cc:965 #: rust/backend/rust-constexpr.cc:1908 rust/backend/rust-constexpr.cc:4331 #, gcc-internal-format msgid "overflow in constant expression" @@ -39907,19 +39861,19 @@ msgstr "" msgid "function %qD used as %<asm%> output" msgstr "" -#: c-family/c-warn.cc:1914 c/c-typeck.cc:5827 +#: c-family/c-warn.cc:1914 c/c-typeck.cc:5841 #: rust/checks/errors/rust-readonly-check.cc:103 #, gcc-internal-format msgid "assignment of read-only location %qE" msgstr "" -#: c-family/c-warn.cc:1915 c/c-typeck.cc:5830 +#: c-family/c-warn.cc:1915 c/c-typeck.cc:5844 #: rust/checks/errors/rust-readonly-check.cc:104 #, gcc-internal-format msgid "increment of read-only location %qE" msgstr "" -#: c-family/c-warn.cc:1916 c/c-typeck.cc:5833 +#: c-family/c-warn.cc:1916 c/c-typeck.cc:5847 #: rust/checks/errors/rust-readonly-check.cc:105 #, gcc-internal-format msgid "decrement of read-only location %qE" @@ -40205,7 +40159,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.cc:2934 c/c-typeck.cc:6451 cp/call.cc:6527 +#: c-family/c-warn.cc:2934 c/c-typeck.cc:6465 cp/call.cc:6527 #, gcc-internal-format msgid "this condition has identical branches" msgstr "" @@ -41238,12 +41192,12 @@ msgstr "" msgid "expected 64-bit address but argument 2 is %d-bit" msgstr "" -#: config/aarch64/aarch64-c.cc:374 +#: config/aarch64/aarch64-c.cc:375 #, gcc-internal-format msgid "%<#pragma GCC aarch64%> requires a string parameter" msgstr "" -#: config/aarch64/aarch64-c.cc:390 +#: config/aarch64/aarch64-c.cc:391 #, gcc-internal-format msgid "unknown %<#pragma GCC aarch64%> option %qs" msgstr "" @@ -41628,7 +41582,7 @@ msgstr "" #: config/aarch64/aarch64-sve-builtins.cc:4830 #: config/arm/arm-mve-builtins.cc:522 config/arm/arm-mve-builtins.cc:547 -#: config/riscv/riscv-vector-builtins.cc:4836 +#: config/riscv/riscv-vector-builtins.cc:4868 #, gcc-internal-format msgid "duplicate definition of %qs" msgstr "" @@ -41663,62 +41617,88 @@ msgstr "" msgid "unsupported SVE vector size" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5185 +#: config/aarch64/aarch64-sve-builtins.cc:5189 #, gcc-internal-format msgid "SVE type %qT does not have a fixed size" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5190 +#: config/aarch64/aarch64-sve-builtins.cc:5194 #, gcc-internal-format msgid "SVE type %qT does not have a defined alignment" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5195 -#: config/riscv/riscv-vector-builtins.cc:4748 +#: config/aarch64/aarch64-sve-builtins.cc:5199 +#: config/riscv/riscv-vector-builtins.cc:4752 #, gcc-internal-format msgid "variables of type %qT cannot have thread-local storage duration" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5201 +#: config/aarch64/aarch64-sve-builtins.cc:5205 #, gcc-internal-format msgid "arithmetic on pointer to SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5208 +#: config/aarch64/aarch64-sve-builtins.cc:5212 #, gcc-internal-format msgid "member variables cannot have SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5210 +#: config/aarch64/aarch64-sve-builtins.cc:5214 #, gcc-internal-format msgid "fields cannot have SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5215 +#: config/aarch64/aarch64-sve-builtins.cc:5219 #, gcc-internal-format msgid "array elements cannot have SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5220 +#: config/aarch64/aarch64-sve-builtins.cc:5224 #, gcc-internal-format msgid "cannot allocate objects with SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5225 +#: config/aarch64/aarch64-sve-builtins.cc:5229 #, gcc-internal-format msgid "cannot delete objects with SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5230 +#: config/aarch64/aarch64-sve-builtins.cc:5234 #, gcc-internal-format msgid "cannot throw or catch SVE type %qT" msgstr "" -#: config/aarch64/aarch64-sve-builtins.cc:5235 +#: config/aarch64/aarch64-sve-builtins.cc:5239 #, gcc-internal-format msgid "capture by copy of SVE type %qT" msgstr "" +#: config/aarch64/aarch64-sve-builtins.cc:5244 +#, gcc-internal-format +msgid "SVE type %qT not allowed in %<map%> clause" +msgstr "" + +#: config/aarch64/aarch64-sve-builtins.cc:5249 +#: config/riscv/riscv-vector-builtins.cc:4811 +#, gcc-internal-format +msgid "cannot reference %qT object types in %<target%> region" +msgstr "" + +#: config/aarch64/aarch64-sve-builtins.cc:5254 +#, gcc-internal-format +msgid "SVE type %qT not allowed in %<target%> %<private%> clause" +msgstr "" + +#: config/aarch64/aarch64-sve-builtins.cc:5260 +#, gcc-internal-format +msgid "SVE type %qT not allowed in %<target%> %<firstprivate%> clause" +msgstr "" + +#: config/aarch64/aarch64-sve-builtins.cc:5266 +#, gcc-internal-format +msgid "SVE type %qT not allowed in %<target%> device clauses" +msgstr "" + #: config/aarch64/aarch64.cc:649 #, gcc-internal-format msgid "the arguments to %qE must be constant strings" @@ -42067,8 +42047,8 @@ msgstr "" #: config/aarch64/aarch64.cc:19834 config/arm/arm.cc:33836 #: config/loongarch/loongarch-target-attr.cc:297 -#: config/riscv/riscv-target-attr.cc:431 config/rs6000/rs6000.cc:24714 -#: config/s390/s390.cc:16638 +#: config/riscv/riscv-target-attr.cc:427 config/rs6000/rs6000.cc:24714 +#: config/s390/s390.cc:16661 #, gcc-internal-format msgid "attribute %<target%> argument not a string" msgstr "" @@ -42096,12 +42076,12 @@ msgid "" "likely to change" msgstr "" -#: config/aarch64/aarch64.cc:20110 config/riscv/riscv-target-attr.cc:497 +#: config/aarch64/aarch64.cc:20110 config/riscv/riscv-target-attr.cc:493 #, gcc-internal-format msgid "attribute %<target_version%> has multiple values" msgstr "" -#: config/aarch64/aarch64.cc:20118 config/riscv/riscv-target-attr.cc:505 +#: config/aarch64/aarch64.cc:20118 config/riscv/riscv-target-attr.cc:501 #, gcc-internal-format msgid "attribute %<target_version%> argument not a string" msgstr "" @@ -42124,13 +42104,13 @@ msgid "" msgstr "" #: config/aarch64/aarch64.cc:20736 config/i386/i386-features.cc:3911 -#: config/i386/i386-features.cc:4180 config/riscv/riscv.cc:13694 +#: config/i386/i386-features.cc:4180 config/riscv/riscv.cc:13691 #, gcc-internal-format msgid "virtual function multiversioning not supported" msgstr "" #: config/aarch64/aarch64.cc:20857 config/i386/i386-features.cc:4044 -#: config/riscv/riscv.cc:13819 config/rs6000/rs6000.cc:25404 +#: config/riscv/riscv.cc:13816 config/rs6000/rs6000.cc:25404 #, gcc-internal-format msgid "multiversioning needs %<ifunc%> which is not supported on this target" msgstr "" @@ -42158,8 +42138,8 @@ msgstr "" msgid "lane %wd out of range %wd - %wd" msgstr "" -#: config/aarch64/aarch64.cc:29341 config/i386/i386.cc:25607 -#: config/i386/i386.cc:25738 +#: config/aarch64/aarch64.cc:29341 config/i386/i386.cc:25767 +#: config/i386/i386.cc:25898 #, gcc-internal-format msgid "unsupported simdlen %wd" msgstr "" @@ -42169,7 +42149,7 @@ msgstr "" msgid "GCC does not currently support return type %qT for simd" msgstr "" -#: config/aarch64/aarch64.cc:29359 config/i386/i386.cc:25629 +#: config/aarch64/aarch64.cc:29359 config/i386/i386.cc:25789 #, gcc-internal-format msgid "unsupported return type %qT for simd" msgstr "" @@ -42179,7 +42159,7 @@ msgstr "" msgid "GCC does not currently support argument type %qT for simd" msgstr "" -#: config/aarch64/aarch64.cc:29397 config/i386/i386.cc:25660 +#: config/aarch64/aarch64.cc:29397 config/i386/i386.cc:25820 #, gcc-internal-format msgid "unsupported argument type %qT for simd" msgstr "" @@ -42216,18 +42196,18 @@ msgstr "" msgid "catching non-call exceptions in functions with SME state" msgstr "" -#: config/aarch64/aarch64.cc:31111 config/arm/arm-mve-builtins.cc:634 +#: config/aarch64/aarch64.cc:31107 config/arm/arm-mve-builtins.cc:634 #: config/riscv/riscv-vector-builtins.cc:4493 #, gcc-internal-format msgid "argument %d of %qE must be an integer constant expression" msgstr "" -#: config/aarch64/aarch64.cc:31124 +#: config/aarch64/aarch64.cc:31120 #, gcc-internal-format msgid "passing %wd to argument %d of %qE, which expects the value %wd" msgstr "" -#: config/aarch64/aarch64.cc:31127 config/arm/arm-mve-builtins.cc:646 +#: config/aarch64/aarch64.cc:31123 config/arm/arm-mve-builtins.cc:646 #: config/riscv/riscv-vector-builtins.cc:4507 #, gcc-internal-format msgid "" @@ -42235,17 +42215,17 @@ msgid "" "%wd]" msgstr "" -#: config/aarch64/aarch64.cc:31140 +#: config/aarch64/aarch64.cc:31136 #, gcc-internal-format msgid "passing %wd to argument %d of %qE, which expects either %wd or %wd" msgstr "" -#: config/aarch64/aarch64.cc:31154 config/arm/arm-mve-builtins.cc:685 +#: config/aarch64/aarch64.cc:31150 config/arm/arm-mve-builtins.cc:685 #, gcc-internal-format msgid "passing %wd to argument %d of %qE, which expects %wd, %wd, %wd or %wd" msgstr "" -#: config/aarch64/aarch64.cc:31166 config/arm/arm-mve-builtins.cc:672 +#: config/aarch64/aarch64.cc:31162 config/arm/arm-mve-builtins.cc:672 #, gcc-internal-format msgid "passing %wd to argument %d of %qE, which expects a valid %qT value" msgstr "" @@ -42305,7 +42285,7 @@ msgstr "" msgid "bad value %qs for %<-mmemory-latency%>" msgstr "" -#: config/alpha/alpha.cc:7360 config/alpha/alpha.cc:7363 config/arc/arc.cc:6981 +#: config/alpha/alpha.cc:7357 config/alpha/alpha.cc:7360 config/arc/arc.cc:6981 #: config/arc/arc.cc:7255 config/s390/s390.cc:942 #, gcc-internal-format msgid "bad builtin fcode" @@ -42436,7 +42416,7 @@ msgstr "" #: config/i386/i386-options.cc:3906 config/i386/i386-options.cc:3962 #: config/i386/i386-options.cc:4013 config/i386/i386-options.cc:4050 #: config/m68k/m68k.cc:804 config/mcore/mcore.cc:3070 -#: config/nvptx/nvptx.cc:5877 config/riscv/riscv.cc:6533 +#: config/nvptx/nvptx.cc:5895 config/riscv/riscv.cc:6533 #: config/rl78/rl78.cc:821 config/rl78/rl78.cc:890 #: config/rs6000/rs6000.cc:20642 config/rx/rx.cc:2727 config/rx/rx.cc:2753 #: config/s390/s390.cc:1157 config/s390/s390.cc:1247 config/sh/sh.cc:8442 @@ -42576,22 +42556,22 @@ msgid "argument of %qE attribute ignored" msgstr "" #: config/arc/arc.cc:11004 config/avr/avr.cc:11384 config/bfin/bfin.cc:4818 -#: config/mingw/winnt.cc:63 config/nvptx/nvptx.cc:5900 +#: config/mingw/winnt.cc:63 config/nvptx/nvptx.cc:5918 #, gcc-internal-format msgid "%qE attribute only applies to variables" msgstr "" -#: config/arm/aarch-common.cc:553 config/i386/i386.cc:24274 +#: config/arm/aarch-common.cc:553 config/i386/i386.cc:24309 #, gcc-internal-format msgid "alternatives not allowed in %<asm%> flag output" msgstr "" -#: config/arm/aarch-common.cc:614 config/i386/i386.cc:24338 +#: config/arm/aarch-common.cc:614 config/i386/i386.cc:24373 #, gcc-internal-format msgid "unknown %<asm%> flag output %qs" msgstr "" -#: config/arm/aarch-common.cc:624 config/i386/i386.cc:24367 +#: config/arm/aarch-common.cc:624 config/i386/i386.cc:24402 #, gcc-internal-format msgid "invalid type for %<asm%> flag output" msgstr "" @@ -43900,7 +43880,7 @@ msgstr "" msgid "using %<vector_length (64)%>, ignoring runtime setting" msgstr "" -#: config/gcn/gcn.cc:6351 config/nvptx/nvptx.cc:6730 +#: config/gcn/gcn.cc:6351 config/nvptx/nvptx.cc:6748 #, gcc-internal-format msgid "using %<num_workers (%d)%>, ignoring %d" msgstr "" @@ -43980,22 +43960,22 @@ msgstr "" msgid "unhandled architecture" msgstr "" -#: config/gcn/mkoffload.cc:1186 config/gcn/mkoffload.cc:1338 +#: config/gcn/mkoffload.cc:1189 config/gcn/mkoffload.cc:1341 #, gcc-internal-format msgid "cannot open %qs" msgstr "" -#: config/gcn/mkoffload.cc:1324 config/nvptx/mkoffload.cc:847 +#: config/gcn/mkoffload.cc:1327 config/nvptx/mkoffload.cc:850 #, gcc-internal-format msgid "cannot open omp_requires file %qs" msgstr "" -#: config/gcn/mkoffload.cc:1328 config/nvptx/mkoffload.cc:851 +#: config/gcn/mkoffload.cc:1331 config/nvptx/mkoffload.cc:854 #, gcc-internal-format msgid "cannot read omp_requires file %qs" msgstr "" -#: config/gcn/mkoffload.cc:1334 +#: config/gcn/mkoffload.cc:1337 #, gcc-internal-format msgid "cannot open intermediate gcn asm file" msgstr "" @@ -44068,170 +44048,170 @@ msgstr "" msgid "parameter to builtin not valid: %s" msgstr "" -#: config/i386/i386-expand.cc:10110 +#: config/i386/i386-expand.cc:10116 #, gcc-internal-format msgid "interrupt service routine cannot be called directly" msgstr "" -#: config/i386/i386-expand.cc:10583 config/i386/i386-expand.cc:12249 +#: config/i386/i386-expand.cc:10589 config/i386/i386-expand.cc:12255 #, gcc-internal-format msgid "the last argument must be a 2-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:11083 +#: config/i386/i386-expand.cc:11089 #, gcc-internal-format msgid "the fifth argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:11178 +#: config/i386/i386-expand.cc:11184 #, gcc-internal-format msgid "the third argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12178 +#: config/i386/i386-expand.cc:12184 #, gcc-internal-format msgid "the last argument must be an 1-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12193 +#: config/i386/i386-expand.cc:12199 #, gcc-internal-format msgid "the last argument must be a 3-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12228 +#: config/i386/i386-expand.cc:12234 #, gcc-internal-format msgid "the last argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12268 +#: config/i386/i386-expand.cc:12274 #, gcc-internal-format msgid "the last argument must be a 1-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12277 +#: config/i386/i386-expand.cc:12283 #, gcc-internal-format, gfc-internal-format msgid "'%s' needs isa option %s" msgstr "" -#: config/i386/i386-expand.cc:12290 +#: config/i386/i386-expand.cc:12296 #, gcc-internal-format msgid "the last argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12300 +#: config/i386/i386-expand.cc:12306 #, gcc-internal-format msgid "the next to last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12305 +#: config/i386/i386-expand.cc:12311 #, gcc-internal-format msgid "the last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12444 +#: config/i386/i386-expand.cc:12450 #, gcc-internal-format msgid "the third argument must be comparison constant" msgstr "" -#: config/i386/i386-expand.cc:12449 +#: config/i386/i386-expand.cc:12455 #, gcc-internal-format msgid "incorrect comparison mode" msgstr "" -#: config/i386/i386-expand.cc:12455 config/i386/i386-expand.cc:12878 +#: config/i386/i386-expand.cc:12461 config/i386/i386-expand.cc:12884 #, gcc-internal-format msgid "incorrect rounding operand" msgstr "" -#: config/i386/i386-expand.cc:12858 +#: config/i386/i386-expand.cc:12864 #, gcc-internal-format msgid "the immediate argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12866 +#: config/i386/i386-expand.cc:12872 #, gcc-internal-format msgid "the immediate argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:12869 +#: config/i386/i386-expand.cc:12875 #, gcc-internal-format msgid "the immediate argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:13349 +#: config/i386/i386-expand.cc:13355 #, gcc-internal-format msgid "the fourth argument must be one of enum %qs" msgstr "" -#: config/i386/i386-expand.cc:13419 +#: config/i386/i386-expand.cc:13425 #, gcc-internal-format msgid "selector must be an integer constant in the range [0, %wi]" msgstr "" -#: config/i386/i386-expand.cc:13676 +#: config/i386/i386-expand.cc:13682 #, gcc-internal-format msgid "%qE needs unknown isa option" msgstr "" -#: config/i386/i386-expand.cc:13680 +#: config/i386/i386-expand.cc:13686 #, gcc-internal-format msgid "%qE needs isa option %s" msgstr "" -#: config/i386/i386-expand.cc:14180 +#: config/i386/i386-expand.cc:14186 #, gcc-internal-format msgid "second, third and fourth argument must be a const" msgstr "" -#: config/i386/i386-expand.cc:14186 +#: config/i386/i386-expand.cc:14192 #, gcc-internal-format msgid "invalid second argument to %<__builtin_ia32_prefetch%>; using zero" msgstr "" -#: config/i386/i386-expand.cc:14195 +#: config/i386/i386-expand.cc:14201 #, gcc-internal-format msgid "invalid third argument" msgstr "" #. Ignore the hint. -#: config/i386/i386-expand.cc:14204 config/i386/i386-expand.cc:14265 +#: config/i386/i386-expand.cc:14210 config/i386/i386-expand.cc:14271 #, gcc-internal-format msgid "" "instruction prefetch applies when in 64-bit mode with RIP-relative " "addressing and option %<-mprefetchi%>; they stay NOPs otherwise" msgstr "" -#: config/i386/i386-expand.cc:14214 +#: config/i386/i386-expand.cc:14220 #, gcc-internal-format msgid "invalid forth argument to %<__builtin_ia32_prefetch%>; using zero" msgstr "" -#: config/i386/i386-expand.cc:14225 +#: config/i386/i386-expand.cc:14231 #, gcc-internal-format msgid "invalid third argument to %<__builtin_ia32_prefetch%>; using zero" msgstr "" -#: config/i386/i386-expand.cc:14253 +#: config/i386/i386-expand.cc:14259 #, gcc-internal-format msgid "second argument must be a const" msgstr "" -#: config/i386/i386-expand.cc:14799 +#: config/i386/i386-expand.cc:14805 #, gcc-internal-format msgid "the last argument must be a 32-bit immediate" msgstr "" -#: config/i386/i386-expand.cc:14832 +#: config/i386/i386-expand.cc:14838 #, gcc-internal-format msgid "last argument must be an immediate" msgstr "" -#: config/i386/i386-expand.cc:15570 config/i386/i386-expand.cc:15782 +#: config/i386/i386-expand.cc:15576 config/i386/i386-expand.cc:15788 #, gcc-internal-format msgid "the last argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386-expand.cc:15800 +#: config/i386/i386-expand.cc:15806 #, gcc-internal-format msgid "the argument to %<xabort%> intrinsic must be an 8-bit immediate" msgstr "" @@ -44591,7 +44571,7 @@ msgstr "" #: config/i386/i386-options.cc:2832 #, gcc-internal-format -msgid "%<-mnop-mcount%> is not implemented for %<-fPIC%>" +msgid "%<-mnop-mcount%> is not implemented for %<-fno-plt%>" msgstr "" #: config/i386/i386-options.cc:2838 @@ -44846,145 +44826,145 @@ msgstr "" msgid "interrupt service routine must return %<void%>" msgstr "" -#: config/i386/i386.cc:1309 +#: config/i386/i386.cc:1316 #, gcc-internal-format msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.cc:1312 +#: config/i386/i386.cc:1319 #, gcc-internal-format msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.cc:1616 +#: config/i386/i386.cc:1623 #, gcc-internal-format msgid "X32 does not support %<ms_abi%> attribute" msgstr "" -#: config/i386/i386.cc:1650 +#: config/i386/i386.cc:1657 #, gcc-internal-format msgid "%<ms_hook_prologue%> attribute is not compatible with nested function" msgstr "" -#: config/i386/i386.cc:2002 +#: config/i386/i386.cc:2009 #, gcc-internal-format msgid "AVX512F vector argument without AVX512F enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2008 +#: config/i386/i386.cc:2015 #, gcc-internal-format msgid "AVX512F vector return without AVX512F enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2022 +#: config/i386/i386.cc:2029 #, gcc-internal-format msgid "AVX vector argument without AVX enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2028 +#: config/i386/i386.cc:2035 #, gcc-internal-format msgid "AVX vector return without AVX enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2044 +#: config/i386/i386.cc:2051 #, gcc-internal-format msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2050 +#: config/i386/i386.cc:2057 #, gcc-internal-format msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2066 +#: config/i386/i386.cc:2073 #, gcc-internal-format msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2072 +#: config/i386/i386.cc:2079 #, gcc-internal-format msgid "MMX vector return without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.cc:2271 +#: config/i386/i386.cc:2278 #, gcc-internal-format msgid "" "the ABI of passing struct with a flexible array member has changed in GCC 4.4" msgstr "" -#: config/i386/i386.cc:2400 +#: config/i386/i386.cc:2407 #, gcc-internal-format msgid "the ABI of passing union with %<long double%> has changed in GCC 4.4" msgstr "" -#: config/i386/i386.cc:2535 +#: config/i386/i386.cc:2542 #, gcc-internal-format msgid "" "the ABI of passing structure with %<complex float%> member has changed in " "GCC 4.4" msgstr "" -#: config/i386/i386.cc:2656 +#: config/i386/i386.cc:2663 msgid "" "the ABI of passing C structures with zero-width bit-fields has changed in " "GCC %{12.1%}" msgstr "" -#: config/i386/i386.cc:2753 config/i386/i386.cc:4122 config/i386/i386.cc:4132 +#: config/i386/i386.cc:2760 config/i386/i386.cc:4129 config/i386/i386.cc:4139 #, gcc-internal-format msgid "SSE register return with SSE2 disabled" msgstr "" -#: config/i386/i386.cc:2755 +#: config/i386/i386.cc:2762 #, gcc-internal-format msgid "SSE register return with SSE disabled" msgstr "" -#: config/i386/i386.cc:2762 +#: config/i386/i386.cc:2769 #, gcc-internal-format msgid "SSE register argument with SSE2 disabled" msgstr "" -#: config/i386/i386.cc:2764 +#: config/i386/i386.cc:2771 #, gcc-internal-format msgid "SSE register argument with SSE disabled" msgstr "" -#: config/i386/i386.cc:2784 +#: config/i386/i386.cc:2791 #, gcc-internal-format msgid "x87 register return with x87 disabled" msgstr "" -#: config/i386/i386.cc:3112 config/i386/i386.cc:3357 config/i386/i386.cc:4150 +#: config/i386/i386.cc:3119 config/i386/i386.cc:3364 config/i386/i386.cc:4157 #, gcc-internal-format msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.cc:3114 config/i386/i386.cc:3359 config/i386/i386.cc:4152 +#: config/i386/i386.cc:3121 config/i386/i386.cc:3366 config/i386/i386.cc:4159 #, gcc-internal-format msgid "" "this is a GCC bug that can be worked around by adding attribute used to " "function called" msgstr "" -#: config/i386/i386.cc:3762 +#: config/i386/i386.cc:3769 #, gcc-internal-format, gfc-internal-format msgid "" "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6" msgstr "" -#: config/i386/i386.cc:6834 +#: config/i386/i386.cc:6841 #, gcc-internal-format msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s" msgstr "" -#: config/i386/i386.cc:8854 +#: config/i386/i386.cc:8861 #, gcc-internal-format msgid "" "%<ms_hook_prologue%> attribute is not compatible with %<-mfentry%> for 32-bit" msgstr "" -#: config/i386/i386.cc:8944 +#: config/i386/i386.cc:8951 #, gcc-internal-format msgid "" "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service " @@ -44992,22 +44972,22 @@ msgid "" "return." msgstr "" -#: config/i386/i386.cc:10001 +#: config/i386/i386.cc:10008 #, gcc-internal-format msgid "Stack realignment not supported with %<__builtin_eh_return%>" msgstr "" -#: config/i386/i386.cc:10006 +#: config/i386/i386.cc:10013 #, gcc-internal-format msgid "regparm nested function not supported with %<__builtin_eh_return%>" msgstr "" -#: config/i386/i386.cc:10397 +#: config/i386/i386.cc:10404 #, gcc-internal-format msgid "%<-fsplit-stack%> does not support fastcall with nested function" msgstr "" -#: config/i386/i386.cc:10417 +#: config/i386/i386.cc:10424 #, gcc-internal-format msgid "" "%<-fsplit-stack%> does not support 2 register parameters for a nested " @@ -45016,57 +44996,57 @@ msgstr "" #. FIXME: We could make this work by pushing a register #. around the addition and comparison. -#: config/i386/i386.cc:10428 +#: config/i386/i386.cc:10435 #, gcc-internal-format msgid "%<-fsplit-stack%> does not support 3 register parameters" msgstr "" -#: config/i386/i386.cc:13431 +#: config/i386/i386.cc:13438 #, gcc-internal-format msgid "%<V%> modifier on non-integer register" msgstr "" -#: config/i386/i386.cc:13442 config/i386/i386.cc:13456 +#: config/i386/i386.cc:13449 config/i386/i386.cc:13463 #, gcc-internal-format msgid "unsupported size for integer register" msgstr "" -#: config/i386/i386.cc:13488 +#: config/i386/i386.cc:13495 #, gcc-internal-format msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.cc:13503 +#: config/i386/i386.cc:13510 #, gcc-internal-format msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.cc:13701 config/i386/i386.cc:13703 +#: config/i386/i386.cc:13708 config/i386/i386.cc:13710 #, gcc-internal-format msgid "non-integer operand used with operand code %<z%>" msgstr "" -#: config/i386/i386.cc:17911 +#: config/i386/i386.cc:17918 #, gcc-internal-format msgid "" "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)" msgstr "" -#: config/i386/i386.cc:23142 +#: config/i386/i386.cc:23169 msgid "the alignment of %<_Atomic %T%> fields changed in %{GCC 11.1%}" msgstr "" -#: config/i386/i386.cc:23223 +#: config/i386/i386.cc:23256 #, gcc-internal-format msgid "no register available for profiling %<-mcmodel=large%s%>" msgstr "" -#: config/i386/i386.cc:23319 +#: config/i386/i386.cc:23352 #, gcc-internal-format msgid "profiling %<-mcmodel=large%> with PIC is not supported" msgstr "" -#: config/i386/i386.cc:24032 +#: config/i386/i386.cc:24067 #, gcc-internal-format msgid "" "%<__bfloat16%> is redefined from typedef %<short%> to real %<__bf16%> since " @@ -45074,22 +45054,22 @@ msgid "" "%<short%>; an explicit bitcast may be needed here" msgstr "" -#: config/i386/i386.cc:25566 +#: config/i386/i386.cc:25726 #, gcc-internal-format msgid "unknown architecture specific memory model" msgstr "" -#: config/i386/i386.cc:25573 +#: config/i386/i386.cc:25733 #, gcc-internal-format msgid "%<HLE_ACQUIRE%> not used with %<ACQUIRE%> or stronger memory model" msgstr "" -#: config/i386/i386.cc:25580 +#: config/i386/i386.cc:25740 #, gcc-internal-format msgid "%<HLE_RELEASE%> not used with %<RELEASE%> or stronger memory model" msgstr "" -#: config/i386/i386.cc:26267 +#: config/i386/i386.cc:26427 #, gcc-internal-format msgid "%<-fexcess-precision=16%> is not compatible with %<-mfpmath=387%>" msgstr "" @@ -45302,8 +45282,8 @@ msgstr "" msgid "%qs cannot be used for compiling a shared library" msgstr "" -#: config/loongarch/loongarch-target-attr.cc:246 config/s390/s390.cc:16704 -#: config/s390/s390.cc:16754 config/s390/s390.cc:16771 +#: config/loongarch/loongarch-target-attr.cc:246 config/s390/s390.cc:16727 +#: config/s390/s390.cc:16777 config/s390/s390.cc:16794 #, gcc-internal-format msgid "attribute %<target%> argument %qs is unknown" msgstr "" @@ -45424,7 +45404,7 @@ msgstr "" msgid "stack limit expression is not supported" msgstr "" -#: config/m68k/m68k.cc:7175 config/s390/s390.cc:17394 +#: config/m68k/m68k.cc:7175 config/s390/s390.cc:17417 #, gcc-internal-format msgid "%<-fexcess-precision=16%> is not supported on this target" msgstr "" @@ -45598,7 +45578,8 @@ msgstr "" #: config/mips/mips.cc:20427 config/mips/mips.cc:20432 #: config/mips/mips.cc:20522 config/mips/mips.cc:20524 #: config/mips/mips.cc:20554 config/mips/mips.cc:20562 -#: config/mips/mips.cc:20668 config/mips/mips.cc:20692 +#: config/mips/mips.cc:20668 config/mips/mips.cc:20682 +#: config/mips/mips.cc:20695 #, gcc-internal-format, gfc-internal-format msgid "unsupported combination: %s" msgstr "" @@ -45687,92 +45668,92 @@ msgstr "" msgid "unsupported combination: %qs%s %s" msgstr "" -#: config/mips/mips.cc:20685 +#: config/mips/mips.cc:20688 #, gcc-internal-format msgid "unsupported combination: %qs %s" msgstr "" -#: config/mips/mips.cc:20700 +#: config/mips/mips.cc:20703 #, gcc-internal-format msgid "cannot generate position-independent code for %qs" msgstr "" -#: config/mips/mips.cc:20703 +#: config/mips/mips.cc:20706 #, gcc-internal-format msgid "position-independent code requires %qs" msgstr "" -#: config/mips/mips.cc:20736 +#: config/mips/mips.cc:20739 #, gcc-internal-format msgid "%<-mno-gpopt%> needs %<-mexplicit-relocs%>" msgstr "" -#: config/mips/mips.cc:20744 config/mips/mips.cc:20747 +#: config/mips/mips.cc:20747 config/mips/mips.cc:20750 #, gcc-internal-format msgid "cannot use small-data accesses for %qs" msgstr "" -#: config/mips/mips.cc:20764 +#: config/mips/mips.cc:20767 #, gcc-internal-format msgid "the %qs architecture does not support %<-m%s=legacy%>" msgstr "" -#: config/mips/mips.cc:20771 +#: config/mips/mips.cc:20774 #, gcc-internal-format msgid "the %qs architecture does not support %<-m%s=2008%>" msgstr "" -#: config/mips/mips.cc:20789 +#: config/mips/mips.cc:20792 #, gcc-internal-format msgid "%<-mips3d%> requires %<-mpaired-single%>" msgstr "" -#: config/mips/mips.cc:20799 +#: config/mips/mips.cc:20802 #, gcc-internal-format msgid "%qs must be used with %qs" msgstr "" -#: config/mips/mips.cc:20809 +#: config/mips/mips.cc:20812 #, gcc-internal-format msgid "%<-mmsa%> must be used with %<-mfp64%> and %<-mhard-float%>" msgstr "" -#: config/mips/mips.cc:20816 +#: config/mips/mips.cc:20819 #, gcc-internal-format msgid "the %qs architecture does not support paired-single instructions" msgstr "" -#: config/mips/mips.cc:20825 +#: config/mips/mips.cc:20828 #, gcc-internal-format msgid "%qs requires a target that provides the %qs instruction" msgstr "" -#: config/mips/mips.cc:20836 +#: config/mips/mips.cc:20839 #, gcc-internal-format msgid "the %qs architecture does not support DSP instructions" msgstr "" -#: config/mips/mips.cc:20846 +#: config/mips/mips.cc:20849 #, gcc-internal-format msgid "%<-mloongson-mmi%> must be used with %<-mhard-float%>" msgstr "" -#: config/mips/mips.cc:20856 +#: config/mips/mips.cc:20859 #, gcc-internal-format msgid "%<-mloongson-ext2%> must be used with %<-mloongson-ext%>" msgstr "" -#: config/mips/mips.cc:20951 +#: config/mips/mips.cc:20954 #, gcc-internal-format msgid "%qs requires branch-likely instructions" msgstr "" -#: config/mips/mips.cc:20955 +#: config/mips/mips.cc:20958 #, gcc-internal-format msgid "the %qs architecture does not support the synci instruction" msgstr "" -#: config/mips/mips.cc:21791 +#: config/mips/mips.cc:21794 #, gcc-internal-format msgid "mips16 function profiling" msgstr "" @@ -46311,12 +46292,12 @@ msgstr "" msgid "unrecognizable argument of option " msgstr "" -#: config/nvptx/mkoffload.cc:801 +#: config/nvptx/mkoffload.cc:804 #, gcc-internal-format, gfc-internal-format msgid "cannot open '%s'" msgstr "" -#: config/nvptx/mkoffload.cc:857 +#: config/nvptx/mkoffload.cc:860 #, gcc-internal-format msgid "cannot open intermediate ptx file" msgstr "" @@ -46349,64 +46330,64 @@ msgid "" "static initialization of variable %q+D in %<.shared%> memory is not supported" msgstr "" -#: config/nvptx/nvptx.cc:2391 +#: config/nvptx/nvptx.cc:2409 #, gcc-internal-format msgid "cannot emit unaligned pointers in ptx assembly" msgstr "" -#: config/nvptx/nvptx.cc:2641 +#: config/nvptx/nvptx.cc:2659 #, gcc-internal-format msgid "PTX does not support weak declarations (only weak definitions)" msgstr "" -#: config/nvptx/nvptx.cc:5882 +#: config/nvptx/nvptx.cc:5900 #, gcc-internal-format msgid "%qE attribute requires a void return type" msgstr "" -#: config/nvptx/nvptx.cc:5905 +#: config/nvptx/nvptx.cc:5923 #, gcc-internal-format msgid "%qE attribute not allowed with auto storage class" msgstr "" -#: config/nvptx/nvptx.cc:6350 +#: config/nvptx/nvptx.cc:6368 #, gcc-internal-format msgid "barrier value must be within [0,15]" msgstr "" -#: config/nvptx/nvptx.cc:6363 +#: config/nvptx/nvptx.cc:6381 #, gcc-internal-format msgid "complement argument must be constant" msgstr "" -#: config/nvptx/nvptx.cc:6703 +#: config/nvptx/nvptx.cc:6721 #, gcc-internal-format msgid "" "using %<vector_length (%d)%> due to call to vector-partitionable routine, " "ignoring %d" msgstr "" -#: config/nvptx/nvptx.cc:6711 +#: config/nvptx/nvptx.cc:6729 #, gcc-internal-format msgid "using %<vector_length (%d)%>, ignoring runtime setting" msgstr "" -#: config/nvptx/nvptx.cc:6725 +#: config/nvptx/nvptx.cc:6743 #, gcc-internal-format msgid "using %<vector_length (%d)%>, ignoring %d" msgstr "" -#: config/nvptx/nvptx.cc:7611 +#: config/nvptx/nvptx.cc:7629 #, gcc-internal-format msgid "variable %qD adjusted for OpenACC privatization level: %qs" msgstr "" -#: config/nvptx/nvptx.cc:7750 +#: config/nvptx/nvptx.cc:7768 #, gcc-internal-format msgid "weak alias definitions not supported in this configuration" msgstr "" -#: config/nvptx/nvptx.cc:7763 +#: config/nvptx/nvptx.cc:7781 #, gcc-internal-format msgid "non-function alias definitions not supported in this configuration" msgstr "" @@ -46595,22 +46576,22 @@ msgstr "" msgid "%<target()%> attribute: invalid priority %qs" msgstr "" -#: config/riscv/riscv-target-attr.cc:297 +#: config/riscv/riscv-target-attr.cc:293 #, gcc-internal-format msgid "malformed %<target()%> attribute" msgstr "" -#: config/riscv/riscv-target-attr.cc:311 +#: config/riscv/riscv-target-attr.cc:307 #, gcc-internal-format msgid "attribute %<target(\"%s\")%> does not accept an argument" msgstr "" -#: config/riscv/riscv-target-attr.cc:331 +#: config/riscv/riscv-target-attr.cc:327 #, gcc-internal-format msgid "Got unknown attribute %<target(\"%s\")%>" msgstr "" -#: config/riscv/riscv-target-attr.cc:394 +#: config/riscv/riscv-target-attr.cc:390 #, gcc-internal-format msgid "malformed %<target(\"%s\")%> attribute" msgstr "" @@ -46632,89 +46613,109 @@ msgid "" "%wd] or %wd" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4735 +#: config/riscv/riscv-vector-builtins.cc:4739 #, gcc-internal-format msgid "RVV type %qT does not have a fixed size" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4741 +#: config/riscv/riscv-vector-builtins.cc:4745 #, gcc-internal-format msgid "RVV type %qT does not have a defined alignment" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4756 +#: config/riscv/riscv-vector-builtins.cc:4760 #, gcc-internal-format msgid "arithmetic on pointer to RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4764 +#: config/riscv/riscv-vector-builtins.cc:4768 #, gcc-internal-format msgid "member variables cannot have RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4766 +#: config/riscv/riscv-vector-builtins.cc:4770 #, gcc-internal-format msgid "fields cannot have RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4772 +#: config/riscv/riscv-vector-builtins.cc:4776 #, gcc-internal-format msgid "array elements cannot have RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4778 +#: config/riscv/riscv-vector-builtins.cc:4782 #, gcc-internal-format msgid "cannot allocate objects with RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4784 +#: config/riscv/riscv-vector-builtins.cc:4788 #, gcc-internal-format msgid "cannot delete objects with RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4790 +#: config/riscv/riscv-vector-builtins.cc:4794 #, gcc-internal-format msgid "cannot throw or catch RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4796 +#: config/riscv/riscv-vector-builtins.cc:4800 #, gcc-internal-format msgid "capture by copy of RVV type %qT" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4890 +#: config/riscv/riscv-vector-builtins.cc:4806 +#, gcc-internal-format +msgid "RVV type %qT not allowed in %<map%> clause" +msgstr "" + +#: config/riscv/riscv-vector-builtins.cc:4816 +#, gcc-internal-format +msgid "RVV type %qT not allowed in %<target%> %<private%> clause" +msgstr "" + +#: config/riscv/riscv-vector-builtins.cc:4822 +#, gcc-internal-format +msgid "RVV type %qT not allowed in %<target%> %<firstprivate%> clause" +msgstr "" + +#: config/riscv/riscv-vector-builtins.cc:4828 +#, gcc-internal-format +msgid "RVV type %qT not allowed in %<target%> device clauses" +msgstr "" + +#: config/riscv/riscv-vector-builtins.cc:4922 #, gcc-internal-format msgid "built-in function %qE requires the zvfbfmin or zvfbfwma ISA extension" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4900 +#: config/riscv/riscv-vector-builtins.cc:4932 #, gcc-internal-format msgid "built-in function %qE requires the zvfhmin or zvfh ISA extension" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4910 +#: config/riscv/riscv-vector-builtins.cc:4942 #, gcc-internal-format msgid "" "built-in function %qE requires the zve32f, zve64f, zve64d or v ISA extension" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4920 +#: config/riscv/riscv-vector-builtins.cc:4952 #, gcc-internal-format msgid "built-in function %qE requires the zve64d or v ISA extension" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4929 +#: config/riscv/riscv-vector-builtins.cc:4961 #, gcc-internal-format msgid "" "built-in function %qE requires the zve64x, zve64f, zve64d or v ISA extension" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:4949 +#: config/riscv/riscv-vector-builtins.cc:4981 #, gcc-internal-format msgid "built-in function %qE requires the %qs ISA extension" msgstr "" -#: config/riscv/riscv-vector-builtins.cc:5002 +#: config/riscv/riscv-vector-builtins.cc:5034 #, gcc-internal-format msgid "no matching function call to %qE with empty arguments" msgstr "" @@ -47498,19 +47499,19 @@ msgstr "" msgid "Virtual function multiversioning not supported" msgstr "" -#: config/rs6000/rs6000.cc:28798 +#: config/rs6000/rs6000.cc:28801 #, gcc-internal-format msgid "" "the result for the xxspltidp instruction is undefined for subnormal input " "values" msgstr "" -#: config/rs6000/rs6000.cc:29276 +#: config/rs6000/rs6000.cc:29279 #, gcc-internal-format msgid "type %<__vector_quad%> requires the %qs option" msgstr "" -#: config/rs6000/rs6000.cc:29281 +#: config/rs6000/rs6000.cc:29284 #, gcc-internal-format msgid "type %<__vector_pair%> requires the %qs option" msgstr "" @@ -47595,7 +47596,7 @@ msgstr "" #: config/s390/s390-c.cc:965 #, gcc-internal-format -msgid "%qF requires arch15 or higher" +msgid "%qF requires z17 or higher" msgstr "" #: config/s390/s390-c.cc:979 @@ -47625,7 +47626,7 @@ msgstr "" #: config/s390/s390-c.cc:1059 #, gcc-internal-format -msgid "%qs matching variant requires arch15 or higher" +msgid "%qs matching variant requires z17 or higher" msgstr "" #: config/s390/s390-c.cc:1065 @@ -47677,7 +47678,7 @@ msgstr "" #: config/s390/s390.cc:919 #, gcc-internal-format -msgid "Builtin %qF requires arch15 or higher" +msgid "Builtin %qF requires z17 or higher" msgstr "" #: config/s390/s390.cc:938 @@ -47749,128 +47750,128 @@ msgstr "" msgid "nested functions cannot be profiled with %<-mfentry%> on s390" msgstr "" -#: config/s390/s390.cc:16273 +#: config/s390/s390.cc:16296 #, gcc-internal-format msgid "64-bit ABI not supported in ESA/390 mode" msgstr "" -#: config/s390/s390.cc:16280 +#: config/s390/s390.cc:16303 #, gcc-internal-format msgid "thunk-inline is only supported with %<-mindirect-branch-jump%>" msgstr "" -#: config/s390/s390.cc:16315 +#: config/s390/s390.cc:16338 #, gcc-internal-format, gfc-internal-format msgid "hardware vector support not available on %s" msgstr "" -#: config/s390/s390.cc:16318 +#: config/s390/s390.cc:16341 #, gcc-internal-format msgid "hardware vector support not available with %<-msoft-float%>" msgstr "" -#: config/s390/s390.cc:16347 +#: config/s390/s390.cc:16370 #, gcc-internal-format, gfc-internal-format msgid "hardware decimal floating-point instructions not available on %s" msgstr "" -#: config/s390/s390.cc:16351 +#: config/s390/s390.cc:16374 #, gcc-internal-format msgid "" "hardware decimal floating-point instructions not available in ESA/390 mode" msgstr "" -#: config/s390/s390.cc:16363 +#: config/s390/s390.cc:16386 #, gcc-internal-format msgid "%<-mhard-dfp%> cannot be used in conjunction with %<-msoft-float%>" msgstr "" -#: config/s390/s390.cc:16372 +#: config/s390/s390.cc:16395 #, gcc-internal-format msgid "" "%<-mbackchain%> %<-mpacked-stack%> %<-mhard-float%> are not supported in " "combination" msgstr "" -#: config/s390/s390.cc:16378 +#: config/s390/s390.cc:16401 #, gcc-internal-format msgid "stack size must be greater than the stack guard value" msgstr "" -#: config/s390/s390.cc:16380 +#: config/s390/s390.cc:16403 #, gcc-internal-format msgid "stack size must not be greater than 64k" msgstr "" -#: config/s390/s390.cc:16383 +#: config/s390/s390.cc:16406 #, gcc-internal-format msgid "%<-mstack-guard%> implies use of %<-mstack-size%>" msgstr "" -#: config/s390/s390.cc:16396 +#: config/s390/s390.cc:16419 #, gcc-internal-format msgid "%<-mtpf-trace-hook-prologue-check%> requires integer in range 0-4095" msgstr "" -#: config/s390/s390.cc:16399 +#: config/s390/s390.cc:16422 #, gcc-internal-format msgid "%<-mtpf-trace-hook-prologue-target%> requires integer in range 0-4095" msgstr "" -#: config/s390/s390.cc:16402 +#: config/s390/s390.cc:16425 #, gcc-internal-format msgid "%<-mtpf-trace-hook-epilogue-check%> requires integer in range 0-4095" msgstr "" -#: config/s390/s390.cc:16405 +#: config/s390/s390.cc:16428 #, gcc-internal-format msgid "%<-mtpf-trace-hook-epilogue-target%> requires integer in range 0-4095" msgstr "" -#: config/s390/s390.cc:16469 +#: config/s390/s390.cc:16492 #, gcc-internal-format msgid "%<-mfentry%> is supported only for 64-bit CPUs" msgstr "" #. argument is not a plain number -#: config/s390/s390.cc:16505 +#: config/s390/s390.cc:16528 #, gcc-internal-format msgid "arguments to %qs should be non-negative integers" msgstr "" -#: config/s390/s390.cc:16512 +#: config/s390/s390.cc:16535 #, gcc-internal-format msgid "argument to %qs is too large (max. %d)" msgstr "" -#: config/s390/s390.cc:16543 +#: config/s390/s390.cc:16566 #, gcc-internal-format msgid "" "%<-mno-pic-data-is-text-relative%> cannot be used without %<-fpic%>/%<-fPIC%>" msgstr "" #. Value is not allowed for the target attribute. -#: config/s390/s390.cc:16710 +#: config/s390/s390.cc:16733 #, gcc-internal-format msgid "value %qs is not supported by attribute %<target%>" msgstr "" -#: config/s390/s390.cc:17769 +#: config/s390/s390.cc:17792 #, gcc-internal-format msgid "invalid cc output constraint: %qs" msgstr "" -#: config/s390/s390.cc:17774 +#: config/s390/s390.cc:17797 #, gcc-internal-format msgid "multiple cc output constraints not supported" msgstr "" -#: config/s390/s390.cc:17779 +#: config/s390/s390.cc:17802 #, gcc-internal-format msgid "%<asm%> specifier for cc output conflicts with %<asm%> clobber list" msgstr "" -#: config/s390/s390.cc:17785 +#: config/s390/s390.cc:17808 #, gcc-internal-format msgid "invalid type for cc output constraint" msgstr "" @@ -48247,55 +48248,55 @@ msgstr "" msgid "number of components of vector not a power of two" msgstr "" -#: ada/gcc-interface/utils.cc:6690 ada/gcc-interface/utils.cc:6868 -#: ada/gcc-interface/utils.cc:7108 +#: ada/gcc-interface/utils.cc:6705 ada/gcc-interface/utils.cc:6883 +#: ada/gcc-interface/utils.cc:7123 #, gcc-internal-format msgid "%qs attribute ignored" msgstr "" -#: ada/gcc-interface/utils.cc:6745 +#: ada/gcc-interface/utils.cc:6760 #, gcc-internal-format msgid "%qs attribute without arguments on a non-prototype" msgstr "" -#: ada/gcc-interface/utils.cc:6760 +#: ada/gcc-interface/utils.cc:6775 #, gcc-internal-format msgid "%qs argument has invalid operand number (argument %lu)" msgstr "" -#: ada/gcc-interface/utils.cc:6782 +#: ada/gcc-interface/utils.cc:6797 #, gcc-internal-format msgid "" "%qs argument with out-of-range operand number (argument %lu, operand %lu)" msgstr "" -#: ada/gcc-interface/utils.cc:6791 +#: ada/gcc-interface/utils.cc:6806 #, gcc-internal-format msgid "%qs argument references non-pointer operand (argument %lu, operand %lu)" msgstr "" -#: ada/gcc-interface/utils.cc:6812 +#: ada/gcc-interface/utils.cc:6827 #, gcc-internal-format msgid "%qs attribute requires prototypes with named arguments" msgstr "" -#: ada/gcc-interface/utils.cc:6821 +#: ada/gcc-interface/utils.cc:6836 #, gcc-internal-format msgid "%qs attribute only applies to variadic functions" msgstr "" -#: ada/gcc-interface/utils.cc:7068 d/d-attribs.cc:362 d/d-attribs.cc:488 +#: ada/gcc-interface/utils.cc:7083 d/d-attribs.cc:362 d/d-attribs.cc:488 #: rust/rust-attribs.cc:176 #, gcc-internal-format msgid "%qE attribute has no effect" msgstr "" -#: ada/gcc-interface/utils.cc:7403 +#: ada/gcc-interface/utils.cc:7418 #, gcc-internal-format msgid "attribute %qs applies to array types only" msgstr "" -#: c/c-convert.cc:104 c/c-typeck.cc:2720 c/c-typeck.cc:14846 cp/typeck.cc:2520 +#: c/c-convert.cc:104 c/c-typeck.cc:2730 c/c-typeck.cc:14860 cp/typeck.cc:2520 #: cp/typeck.cc:9603 cp/typeck.cc:10396 d/d-convert.cc:262 #, gcc-internal-format msgid "void value not ignored as it ought to be" @@ -48316,476 +48317,476 @@ msgstr "" msgid "conversion to non-scalar type requested" msgstr "" -#: c/c-decl.cc:913 +#: c/c-decl.cc:914 #, gcc-internal-format msgid "array %q+D assumed to have one element" msgstr "" -#: c/c-decl.cc:954 +#: c/c-decl.cc:955 #, gcc-internal-format msgid "%qD is static but used in inline function %qD which is not static" msgstr "" -#: c/c-decl.cc:959 +#: c/c-decl.cc:960 #, gcc-internal-format msgid "%q+D is static but declared in inline function %qD which is not static" msgstr "" -#: c/c-decl.cc:1155 +#: c/c-decl.cc:1156 #, gcc-internal-format, gfc-internal-format msgid "GCC supports only %u nested scopes" msgstr "" -#: c/c-decl.cc:1297 cp/decl.cc:382 +#: c/c-decl.cc:1298 cp/decl.cc:382 #, gcc-internal-format msgid "label %q+D used but not defined" msgstr "" -#: c/c-decl.cc:1342 +#: c/c-decl.cc:1343 #, gcc-internal-format msgid "nested function %q+D declared but never defined" msgstr "" -#: c/c-decl.cc:1356 +#: c/c-decl.cc:1357 #, gcc-internal-format msgid "inline function %q+D declared but never defined" msgstr "" -#: c/c-decl.cc:1374 +#: c/c-decl.cc:1375 #, gcc-internal-format msgid "unused variable %q+D" msgstr "" -#: c/c-decl.cc:1380 cp/decl.cc:755 +#: c/c-decl.cc:1381 cp/decl.cc:755 #, gcc-internal-format msgid "variable %qD set but not used" msgstr "" -#: c/c-decl.cc:1385 +#: c/c-decl.cc:1386 #, gcc-internal-format msgid "type of array %q+D completed incompatibly with implicit initialization" msgstr "" -#: c/c-decl.cc:1560 +#: c/c-decl.cc:1561 #, gcc-internal-format msgid "" "underspecified declaration of %qE, which is already declared in this scope" msgstr "" -#: c/c-decl.cc:1731 c/c-decl.cc:7924 c/c-decl.cc:8923 c/c-decl.cc:9858 -#: c/c-decl.cc:9864 c/c-decl.cc:10091 +#: c/c-decl.cc:1732 c/c-decl.cc:7925 c/c-decl.cc:8924 c/c-decl.cc:9859 +#: c/c-decl.cc:9865 c/c-decl.cc:10092 #, gcc-internal-format msgid "originally defined here" msgstr "" -#: c/c-decl.cc:1954 +#: c/c-decl.cc:1955 #, gcc-internal-format msgid "" "a parameter list with an ellipsis cannot match an empty parameter name list " "declaration" msgstr "" -#: c/c-decl.cc:1962 +#: c/c-decl.cc:1963 #, gcc-internal-format msgid "" "an argument type that has a default promotion cannot match an empty " "parameter name list declaration" msgstr "" -#: c/c-decl.cc:2010 +#: c/c-decl.cc:2011 #, gcc-internal-format msgid "" "prototype for %q+D declares more arguments than previous old-style definition" msgstr "" -#: c/c-decl.cc:2016 +#: c/c-decl.cc:2017 #, gcc-internal-format msgid "" "prototype for %q+D declares fewer arguments than previous old-style " "definition" msgstr "" -#: c/c-decl.cc:2025 +#: c/c-decl.cc:2026 #, gcc-internal-format msgid "prototype for %q+D declares argument %d with incompatible type" msgstr "" #. If we get here, no errors were found, but do issue a warning #. for this poor-style construct. -#: c/c-decl.cc:2038 +#: c/c-decl.cc:2039 #, gcc-internal-format msgid "prototype for %q+D follows non-prototype definition" msgstr "" -#: c/c-decl.cc:2056 +#: c/c-decl.cc:2057 #, gcc-internal-format msgid "previous definition of %q+D with type %qT" msgstr "" -#: c/c-decl.cc:2060 +#: c/c-decl.cc:2061 #, gcc-internal-format msgid "previous implicit declaration of %q+D with type %qT" msgstr "" -#: c/c-decl.cc:2064 +#: c/c-decl.cc:2065 #, gcc-internal-format msgid "previous declaration of %q+D with type %qT" msgstr "" -#: c/c-decl.cc:2126 +#: c/c-decl.cc:2127 #, gcc-internal-format msgid "%q+D redeclared as different kind of symbol" msgstr "" -#: c/c-decl.cc:2131 +#: c/c-decl.cc:2132 #, gcc-internal-format msgid "built-in function %q+D declared as non-function" msgstr "" -#: c/c-decl.cc:2134 c/c-decl.cc:3274 +#: c/c-decl.cc:2135 c/c-decl.cc:3275 #, gcc-internal-format msgid "declaration of %q+D shadows a built-in function" msgstr "" -#: c/c-decl.cc:2151 +#: c/c-decl.cc:2152 #, gcc-internal-format msgid "conflicting redeclaration of enumerator %q+D" msgstr "" -#: c/c-decl.cc:2158 +#: c/c-decl.cc:2159 #, gcc-internal-format msgid "redeclaration of enumerator %q+D" msgstr "" -#: c/c-decl.cc:2198 +#: c/c-decl.cc:2199 #, gcc-internal-format msgid "conflicting types for built-in function %q+D; expected %qT" msgstr "" -#: c/c-decl.cc:2208 c/c-decl.cc:2233 +#: c/c-decl.cc:2209 c/c-decl.cc:2234 #, gcc-internal-format msgid "%qD is declared in header %qs" msgstr "" -#: c/c-decl.cc:2219 +#: c/c-decl.cc:2220 #, gcc-internal-format msgid "mismatch in argument %u type of built-in function %qD; expected %qT" msgstr "" -#: c/c-decl.cc:2224 +#: c/c-decl.cc:2225 #, gcc-internal-format msgid "mismatch in return type of built-in function %qD; expected %qT" msgstr "" -#: c/c-decl.cc:2257 +#: c/c-decl.cc:2258 #, gcc-internal-format msgid "conflicting types for %q+D" msgstr "" -#: c/c-decl.cc:2270 c/c-decl.cc:2307 +#: c/c-decl.cc:2271 c/c-decl.cc:2308 #, gcc-internal-format msgid "conflicting types for %q+D; have %qT" msgstr "" -#: c/c-decl.cc:2287 +#: c/c-decl.cc:2288 #, gcc-internal-format msgid "conflicting named address spaces (generic vs %s) for %q+D" msgstr "" -#: c/c-decl.cc:2291 +#: c/c-decl.cc:2292 #, gcc-internal-format msgid "conflicting named address spaces (%s vs generic) for %q+D" msgstr "" -#: c/c-decl.cc:2295 +#: c/c-decl.cc:2296 #, gcc-internal-format msgid "conflicting named address spaces (%s vs %s) for %q+D" msgstr "" -#: c/c-decl.cc:2304 +#: c/c-decl.cc:2305 #, gcc-internal-format msgid "conflicting type qualifiers for %q+D" msgstr "" -#: c/c-decl.cc:2325 +#: c/c-decl.cc:2326 #, gcc-internal-format msgid "conflicting types for %q+D due to enum/integer mismatch; have %qT" msgstr "" -#: c/c-decl.cc:2342 +#: c/c-decl.cc:2343 #, gcc-internal-format msgid "redefinition of typedef %q+D with different type" msgstr "" -#: c/c-decl.cc:2355 +#: c/c-decl.cc:2356 #, gcc-internal-format msgid "redefinition of typedef %q+D with variably modified type" msgstr "" -#: c/c-decl.cc:2360 +#: c/c-decl.cc:2361 #, gcc-internal-format msgid "redefinition of typedef %q+D" msgstr "" -#: c/c-decl.cc:2388 +#: c/c-decl.cc:2389 #, gcc-internal-format msgid "declaration of %qD shadows a built-in function" msgstr "" -#: c/c-decl.cc:2404 +#: c/c-decl.cc:2405 #, gcc-internal-format msgid "declaration of built-in function %qD without a prototype; expected %qT" msgstr "" -#: c/c-decl.cc:2428 c/c-decl.cc:2551 +#: c/c-decl.cc:2429 c/c-decl.cc:2552 #, gcc-internal-format msgid "redefinition of %q+D" msgstr "" -#: c/c-decl.cc:2467 c/c-decl.cc:2591 +#: c/c-decl.cc:2468 c/c-decl.cc:2592 #, gcc-internal-format msgid "static declaration of %q+D follows non-static declaration" msgstr "" -#: c/c-decl.cc:2478 c/c-decl.cc:2486 c/c-decl.cc:2580 c/c-decl.cc:2588 +#: c/c-decl.cc:2479 c/c-decl.cc:2487 c/c-decl.cc:2581 c/c-decl.cc:2589 #, gcc-internal-format msgid "non-static declaration of %q+D follows static declaration" msgstr "" -#: c/c-decl.cc:2503 +#: c/c-decl.cc:2504 #, gcc-internal-format msgid "%<gnu_inline%> attribute present on %q+D" msgstr "" -#: c/c-decl.cc:2506 +#: c/c-decl.cc:2507 #, gcc-internal-format msgid "but not here" msgstr "" -#: c/c-decl.cc:2525 +#: c/c-decl.cc:2526 #, gcc-internal-format msgid "thread-local declaration of %q+D follows non-thread-local declaration" msgstr "" -#: c/c-decl.cc:2528 +#: c/c-decl.cc:2529 #, gcc-internal-format msgid "non-thread-local declaration of %q+D follows thread-local declaration" msgstr "" -#: c/c-decl.cc:2572 +#: c/c-decl.cc:2573 #, gcc-internal-format msgid "extern declaration of %q+D follows declaration with no linkage" msgstr "" -#: c/c-decl.cc:2610 +#: c/c-decl.cc:2611 #, gcc-internal-format msgid "declaration of %q+D with no linkage follows extern declaration" msgstr "" -#: c/c-decl.cc:2617 +#: c/c-decl.cc:2618 #, gcc-internal-format msgid "redeclaration of %q+D with no linkage" msgstr "" -#: c/c-decl.cc:2643 +#: c/c-decl.cc:2644 #, gcc-internal-format msgid "" "redeclaration of %q+D with different visibility (old visibility preserved)" msgstr "" -#: c/c-decl.cc:2664 +#: c/c-decl.cc:2665 #, gcc-internal-format msgid "redefinition of parameter %q+D" msgstr "" -#: c/c-decl.cc:2691 +#: c/c-decl.cc:2692 #, gcc-internal-format msgid "redundant redeclaration of %q+D" msgstr "" -#: c/c-decl.cc:3232 +#: c/c-decl.cc:3233 #, gcc-internal-format msgid "declaration of %q+D shadows previous non-variable" msgstr "" -#: c/c-decl.cc:3254 +#: c/c-decl.cc:3255 #, gcc-internal-format msgid "declaration of %qD shadows a parameter" msgstr "" -#: c/c-decl.cc:3267 cp/name-lookup.cc:3569 +#: c/c-decl.cc:3268 cp/name-lookup.cc:3569 #, gcc-internal-format msgid "declaration of %qD shadows a global declaration" msgstr "" -#: c/c-decl.cc:3293 +#: c/c-decl.cc:3294 #, gcc-internal-format msgid "declaration of %qD shadows a previous local" msgstr "" -#: c/c-decl.cc:3299 cp/name-lookup.cc:3286 +#: c/c-decl.cc:3300 cp/name-lookup.cc:3286 #, gcc-internal-format msgid "shadowed declaration is here" msgstr "" -#: c/c-decl.cc:3432 +#: c/c-decl.cc:3433 #, gcc-internal-format msgid "nested extern declaration of %qD" msgstr "" -#: c/c-decl.cc:3588 c/c-decl.cc:3602 +#: c/c-decl.cc:3589 c/c-decl.cc:3603 #, gcc-internal-format msgid "implicit declaration of function %qE; did you mean %qs?" msgstr "" -#: c/c-decl.cc:3594 c/c-decl.cc:3607 +#: c/c-decl.cc:3595 c/c-decl.cc:3608 #, gcc-internal-format msgid "implicit declaration of function %qE" msgstr "" -#: c/c-decl.cc:3626 +#: c/c-decl.cc:3627 #, gcc-internal-format msgid "include %qs or provide a declaration of %qE" msgstr "" -#: c/c-decl.cc:3897 +#: c/c-decl.cc:3898 #, gcc-internal-format msgid "incompatible implicit declaration of built-in function %qD" msgstr "" -#: c/c-decl.cc:3907 +#: c/c-decl.cc:3908 #, gcc-internal-format msgid "include %qs or provide a declaration of %qD" msgstr "" -#: c/c-decl.cc:3918 +#: c/c-decl.cc:3919 #, gcc-internal-format msgid "incompatible implicit declaration of function %qD" msgstr "" -#: c/c-decl.cc:3979 +#: c/c-decl.cc:3980 #, gcc-internal-format msgid "%qE undeclared here (not in a function); did you mean %qs?" msgstr "" -#: c/c-decl.cc:3984 +#: c/c-decl.cc:3985 #, gcc-internal-format msgid "%qE undeclared here (not in a function)" msgstr "" -#: c/c-decl.cc:3997 +#: c/c-decl.cc:3998 #, gcc-internal-format msgid "%qE undeclared (first use in this function); did you mean %qs?" msgstr "" -#: c/c-decl.cc:4002 +#: c/c-decl.cc:4003 #, gcc-internal-format msgid "%qE undeclared (first use in this function)" msgstr "" -#: c/c-decl.cc:4006 +#: c/c-decl.cc:4007 #, gcc-internal-format msgid "" "each undeclared identifier is reported only once for each function it " "appears in" msgstr "" -#: c/c-decl.cc:4054 cp/decl.cc:3632 +#: c/c-decl.cc:4055 cp/decl.cc:3632 #, gcc-internal-format msgid "label %qE referenced outside of any function" msgstr "" -#: c/c-decl.cc:4091 +#: c/c-decl.cc:4092 #, gcc-internal-format msgid "jump into scope of identifier with variably modified type" msgstr "" -#: c/c-decl.cc:4094 +#: c/c-decl.cc:4095 #, gcc-internal-format msgid "jump skips OpenMP %<allocate%> allocation" msgstr "" -#: c/c-decl.cc:4097 +#: c/c-decl.cc:4098 #, gcc-internal-format msgid "jump skips variable initialization" msgstr "" -#: c/c-decl.cc:4099 c/c-decl.cc:4155 c/c-decl.cc:4246 +#: c/c-decl.cc:4100 c/c-decl.cc:4156 c/c-decl.cc:4247 #, gcc-internal-format msgid "label %qD defined here" msgstr "" -#: c/c-decl.cc:4154 c/c-decl.cc:4245 +#: c/c-decl.cc:4155 c/c-decl.cc:4246 #, gcc-internal-format msgid "jump into statement expression" msgstr "" -#: c/c-decl.cc:4177 +#: c/c-decl.cc:4178 #, gcc-internal-format msgid "duplicate label declaration %qE" msgstr "" -#: c/c-decl.cc:4277 cp/decl.cc:4135 +#: c/c-decl.cc:4278 cp/decl.cc:4135 #, gcc-internal-format msgid "duplicate label %qD" msgstr "" -#: c/c-decl.cc:4308 +#: c/c-decl.cc:4309 #, gcc-internal-format msgid "" "traditional C lacks a separate namespace for labels, identifier %qE conflicts" msgstr "" -#: c/c-decl.cc:4380 +#: c/c-decl.cc:4381 #, gcc-internal-format msgid "switch jumps over OpenMP %<allocate%> allocation" msgstr "" -#: c/c-decl.cc:4386 +#: c/c-decl.cc:4387 #, gcc-internal-format msgid "switch jumps over variable initialization" msgstr "" -#: c/c-decl.cc:4389 c/c-decl.cc:4402 +#: c/c-decl.cc:4390 c/c-decl.cc:4403 #, gcc-internal-format msgid "switch starts here" msgstr "" -#: c/c-decl.cc:4401 +#: c/c-decl.cc:4402 #, gcc-internal-format msgid "switch jumps into statement expression" msgstr "" -#: c/c-decl.cc:4484 +#: c/c-decl.cc:4485 #, gcc-internal-format msgid "%qE defined as wrong kind of tag" msgstr "" -#: c/c-decl.cc:4681 cp/tree.cc:5085 +#: c/c-decl.cc:4682 cp/tree.cc:5085 #, gcc-internal-format msgid "%qE attribute applied to %qD with void return type" msgstr "" -#: c/c-decl.cc:4690 +#: c/c-decl.cc:4691 #, gcc-internal-format msgid "" "%qE attribute can only be applied to functions or to structure, union or " "enumeration types" msgstr "" -#: c/c-decl.cc:4710 +#: c/c-decl.cc:4711 #, gcc-internal-format msgid "standard %qE attribute can only be applied to functions" msgstr "" -#: c/c-decl.cc:4730 +#: c/c-decl.cc:4731 #, gcc-internal-format msgid "" "standard %qE attribute can only be applied to function declarators or type " "specifiers with function type" msgstr "" -#: c/c-decl.cc:4732 +#: c/c-decl.cc:4733 #, gcc-internal-format msgid "did you mean to specify it after %<)%> following function parameters?" msgstr "" @@ -48794,125 +48795,125 @@ msgstr "" #. expressions, but is still appropriate as an error to #. avoid types declared in such a context escaping to #. the type of an auto variable. -#: c/c-decl.cc:5037 c/c-decl.cc:8862 +#: c/c-decl.cc:5038 c/c-decl.cc:8863 #, gcc-internal-format msgid "%qT declared in underspecified object initializer" msgstr "" -#: c/c-decl.cc:5048 +#: c/c-decl.cc:5049 #, gcc-internal-format msgid "unnamed struct/union that defines no instances" msgstr "" -#: c/c-decl.cc:5059 +#: c/c-decl.cc:5060 #, gcc-internal-format msgid "empty declaration with storage class specifier does not redeclare tag" msgstr "" -#: c/c-decl.cc:5075 +#: c/c-decl.cc:5076 #, gcc-internal-format msgid "empty declaration with type qualifier does not redeclare tag" msgstr "" -#: c/c-decl.cc:5087 +#: c/c-decl.cc:5088 #, gcc-internal-format msgid "empty declaration with %<_Alignas%> does not redeclare tag" msgstr "" -#: c/c-decl.cc:5101 +#: c/c-decl.cc:5102 #, gcc-internal-format msgid "empty declaration of %<enum%> type does not redeclare tag" msgstr "" -#: c/c-decl.cc:5126 c/c-decl.cc:5134 +#: c/c-decl.cc:5127 c/c-decl.cc:5135 #, gcc-internal-format msgid "useless type name in empty declaration" msgstr "" -#: c/c-decl.cc:5142 +#: c/c-decl.cc:5143 #, gcc-internal-format msgid "%<inline%> in empty declaration" msgstr "" -#: c/c-decl.cc:5148 +#: c/c-decl.cc:5149 #, gcc-internal-format msgid "%<_Noreturn%> in empty declaration" msgstr "" -#: c/c-decl.cc:5154 +#: c/c-decl.cc:5155 #, gcc-internal-format msgid "%<constexpr%> in empty declaration" msgstr "" -#: c/c-decl.cc:5160 +#: c/c-decl.cc:5161 #, gcc-internal-format msgid "%<auto%> in file-scope empty declaration" msgstr "" -#: c/c-decl.cc:5166 +#: c/c-decl.cc:5167 #, gcc-internal-format msgid "%<register%> in file-scope empty declaration" msgstr "" -#: c/c-decl.cc:5174 +#: c/c-decl.cc:5175 #, gcc-internal-format msgid "" "storage class specifier in empty declaration with %<enum%> underlying type" msgstr "" -#: c/c-decl.cc:5180 +#: c/c-decl.cc:5181 #, gcc-internal-format msgid "%qs in empty declaration with %<enum%> underlying type" msgstr "" -#: c/c-decl.cc:5190 +#: c/c-decl.cc:5191 #, gcc-internal-format msgid "type qualifier in empty declaration with %<enum%> underlying type" msgstr "" -#: c/c-decl.cc:5196 +#: c/c-decl.cc:5197 #, gcc-internal-format msgid "%<alignas%> in empty declaration with %<enum%> underlying type" msgstr "" -#: c/c-decl.cc:5205 +#: c/c-decl.cc:5206 #, gcc-internal-format msgid "useless storage class specifier in empty declaration" msgstr "" -#: c/c-decl.cc:5211 +#: c/c-decl.cc:5212 #, gcc-internal-format msgid "useless %qs in empty declaration" msgstr "" -#: c/c-decl.cc:5224 +#: c/c-decl.cc:5225 #, gcc-internal-format msgid "useless type qualifier in empty declaration" msgstr "" -#: c/c-decl.cc:5231 +#: c/c-decl.cc:5232 #, gcc-internal-format msgid "useless %<_Alignas%> in empty declaration" msgstr "" -#: c/c-decl.cc:5249 +#: c/c-decl.cc:5250 #, gcc-internal-format msgid "invalid use of attributes in empty declaration" msgstr "" -#: c/c-decl.cc:5263 c/c-parser.cc:2513 +#: c/c-decl.cc:5264 c/c-parser.cc:2513 #, gcc-internal-format msgid "empty declaration" msgstr "" -#: c/c-decl.cc:5335 +#: c/c-decl.cc:5336 #, gcc-internal-format msgid "" "ISO C90 does not support %<static%> or type qualifiers in parameter array " "declarators" msgstr "" -#: c/c-decl.cc:5339 +#: c/c-decl.cc:5340 #, gcc-internal-format msgid "ISO C90 does not support %<[*]%> array declarators" msgstr "" @@ -48920,318 +48921,318 @@ msgstr "" #. C99 6.7.5.2p4 #. A function definition isn't function prototype scope C99 6.2.1p4. #. C99 6.7.5.2p4 -#: c/c-decl.cc:5345 c/c-decl.cc:8447 c/c-decl.cc:10985 +#: c/c-decl.cc:5346 c/c-decl.cc:8448 c/c-decl.cc:10986 #, gcc-internal-format msgid "%<[*]%> not allowed in other than function prototype scope" msgstr "" -#: c/c-decl.cc:5538 cp/decl2.cc:1960 cp/name-lookup.cc:8991 +#: c/c-decl.cc:5539 cp/decl2.cc:1960 cp/name-lookup.cc:8994 #, gcc-internal-format msgid "%<omp::%s%> not allowed to be specified in this context" msgstr "" -#: c/c-decl.cc:5621 +#: c/c-decl.cc:5622 #, gcc-internal-format msgid "%q+D is usually a function" msgstr "" -#: c/c-decl.cc:5626 c/c-decl.cc:10815 cp/decl.cc:18580 +#: c/c-decl.cc:5627 c/c-decl.cc:10816 cp/decl.cc:18582 #, gcc-internal-format msgid "no previous declaration for %qD" msgstr "" -#: c/c-decl.cc:5635 +#: c/c-decl.cc:5636 #, gcc-internal-format msgid "typedef %qD is initialized (use %<__typeof__%> instead)" msgstr "" -#: c/c-decl.cc:5640 +#: c/c-decl.cc:5641 #, gcc-internal-format msgid "function %qD is initialized like a variable" msgstr "" #. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. -#: c/c-decl.cc:5646 +#: c/c-decl.cc:5647 #, gcc-internal-format msgid "parameter %qD is initialized" msgstr "" -#: c/c-decl.cc:5666 +#: c/c-decl.cc:5667 #, gcc-internal-format msgid "variable %qD has initializer but incomplete type" msgstr "" -#: c/c-decl.cc:5748 +#: c/c-decl.cc:5749 #, gcc-internal-format msgid "inline function %q+D given attribute %qs" msgstr "" -#: c/c-decl.cc:5805 +#: c/c-decl.cc:5806 #, gcc-internal-format msgid "uninitialized const member in %qT is invalid in C++" msgstr "" -#: c/c-decl.cc:5807 +#: c/c-decl.cc:5808 #, gcc-internal-format msgid "%qD should be initialized" msgstr "" -#: c/c-decl.cc:5888 +#: c/c-decl.cc:5889 #, gcc-internal-format msgid "initializer fails to determine size of %q+D" msgstr "" -#: c/c-decl.cc:5893 +#: c/c-decl.cc:5894 #, gcc-internal-format msgid "array size missing in %q+D" msgstr "" -#: c/c-decl.cc:5897 +#: c/c-decl.cc:5898 #, gcc-internal-format msgid "zero or negative size array %q+D" msgstr "" -#: c/c-decl.cc:5988 m2/gm2-gcc/m2type.cc:1258 +#: c/c-decl.cc:5989 m2/gm2-gcc/m2type.cc:1258 #, gcc-internal-format msgid "storage size of %q+D isn%'t constant" msgstr "" -#: c/c-decl.cc:6038 +#: c/c-decl.cc:6039 #, gcc-internal-format msgid "ignoring %<asm%> specifier for non-static local variable %q+D" msgstr "" -#: c/c-decl.cc:6076 +#: c/c-decl.cc:6077 #, gcc-internal-format msgid "cannot put object with volatile field into register" msgstr "" -#: c/c-decl.cc:6162 +#: c/c-decl.cc:6163 #, gcc-internal-format msgid "uninitialized %<const %D%> is invalid in C++" msgstr "" -#: c/c-decl.cc:6177 cp/decl.cc:9535 +#: c/c-decl.cc:6178 cp/decl.cc:9537 #, gcc-internal-format msgid "%q+D in declare target directive does not have mappable type" msgstr "" -#: c/c-decl.cc:6440 +#: c/c-decl.cc:6441 #, gcc-internal-format msgid "ISO C forbids forward parameter declarations" msgstr "" -#: c/c-decl.cc:6480 +#: c/c-decl.cc:6481 #, gcc-internal-format msgid "file-scope compound literal specifies %<register%>" msgstr "" -#: c/c-decl.cc:6486 +#: c/c-decl.cc:6487 #, gcc-internal-format msgid "compound literal implicitly auto and declared %qs" msgstr "" -#: c/c-decl.cc:6537 +#: c/c-decl.cc:6538 #, gcc-internal-format msgid "array of unknown size with empty initializer" msgstr "" -#: c/c-decl.cc:6591 +#: c/c-decl.cc:6592 #, gcc-internal-format msgid "defining a type in a compound literal is invalid in C++" msgstr "" -#: c/c-decl.cc:6612 c/c-decl.cc:6627 +#: c/c-decl.cc:6613 c/c-decl.cc:6628 #, gcc-internal-format msgid "bit-field %qs width not an integer constant" msgstr "" -#: c/c-decl.cc:6622 +#: c/c-decl.cc:6623 #, gcc-internal-format msgid "bit-field %qs width not an integer constant expression" msgstr "" -#: c/c-decl.cc:6633 +#: c/c-decl.cc:6634 #, gcc-internal-format msgid "negative width in bit-field %qs" msgstr "" -#: c/c-decl.cc:6638 +#: c/c-decl.cc:6639 #, gcc-internal-format msgid "zero width for bit-field %qs" msgstr "" -#: c/c-decl.cc:6649 +#: c/c-decl.cc:6650 #, gcc-internal-format msgid "bit-field %qs has invalid type" msgstr "" -#: c/c-decl.cc:6655 +#: c/c-decl.cc:6656 #, gcc-internal-format msgid "cannot declare bit-field %qs with %<warn_if_not_aligned%> type" msgstr "" -#: c/c-decl.cc:6666 +#: c/c-decl.cc:6667 #, gcc-internal-format msgid "type of bit-field %qs is a GCC extension" msgstr "" -#: c/c-decl.cc:6672 +#: c/c-decl.cc:6673 #, gcc-internal-format msgid "width of %qs exceeds its type" msgstr "" -#: c/c-decl.cc:6691 +#: c/c-decl.cc:6692 #, gcc-internal-format msgid "%qs is narrower than values of its type" msgstr "" -#: c/c-decl.cc:6706 +#: c/c-decl.cc:6707 #, gcc-internal-format msgid "ISO C90 forbids array %qE whose size cannot be evaluated" msgstr "" -#: c/c-decl.cc:6709 +#: c/c-decl.cc:6710 #, gcc-internal-format msgid "ISO C90 forbids array whose size cannot be evaluated" msgstr "" -#: c/c-decl.cc:6716 +#: c/c-decl.cc:6717 #, gcc-internal-format msgid "ISO C90 forbids variable length array %qE" msgstr "" -#: c/c-decl.cc:6718 +#: c/c-decl.cc:6719 #, gcc-internal-format msgid "ISO C90 forbids variable length array" msgstr "" -#: c/c-decl.cc:6961 +#: c/c-decl.cc:6962 #, gcc-internal-format msgid "%<enum%> underlying type may not be specified here" msgstr "" -#: c/c-decl.cc:6989 c/c-decl.cc:7396 c/c-decl.cc:7406 +#: c/c-decl.cc:6990 c/c-decl.cc:7397 c/c-decl.cc:7407 #, gcc-internal-format msgid "variably modified %qE at file scope" msgstr "" -#: c/c-decl.cc:6991 +#: c/c-decl.cc:6992 #, gcc-internal-format msgid "variably modified field at file scope" msgstr "" -#: c/c-decl.cc:7011 +#: c/c-decl.cc:7012 #, gcc-internal-format msgid "type defaults to %<int%> in declaration of %qE" msgstr "" -#: c/c-decl.cc:7015 +#: c/c-decl.cc:7016 #, gcc-internal-format msgid "type defaults to %<int%> in type name" msgstr "" -#: c/c-decl.cc:7047 +#: c/c-decl.cc:7048 #, gcc-internal-format msgid "duplicate %<const%>" msgstr "" -#: c/c-decl.cc:7049 +#: c/c-decl.cc:7050 #, gcc-internal-format msgid "duplicate %<restrict%>" msgstr "" -#: c/c-decl.cc:7051 +#: c/c-decl.cc:7052 #, gcc-internal-format msgid "duplicate %<volatile%>" msgstr "" -#: c/c-decl.cc:7053 +#: c/c-decl.cc:7054 #, gcc-internal-format msgid "duplicate %<_Atomic%>" msgstr "" -#: c/c-decl.cc:7056 +#: c/c-decl.cc:7057 #, gcc-internal-format, gfc-internal-format msgid "conflicting named address spaces (%s vs %s)" msgstr "" -#: c/c-decl.cc:7079 c/c-parser.cc:3794 +#: c/c-decl.cc:7080 c/c-parser.cc:3794 #, gcc-internal-format msgid "%<_Atomic%>-qualified array type" msgstr "" -#: c/c-decl.cc:7094 +#: c/c-decl.cc:7095 #, gcc-internal-format msgid "function definition declared %<auto%>" msgstr "" -#: c/c-decl.cc:7096 +#: c/c-decl.cc:7097 #, gcc-internal-format msgid "function definition declared %<register%>" msgstr "" -#: c/c-decl.cc:7098 +#: c/c-decl.cc:7099 #, gcc-internal-format msgid "function definition declared %<typedef%>" msgstr "" -#: c/c-decl.cc:7100 +#: c/c-decl.cc:7101 #, gcc-internal-format msgid "function definition declared %qs" msgstr "" -#: c/c-decl.cc:7127 +#: c/c-decl.cc:7128 #, gcc-internal-format msgid "storage class specified for structure field %qE" msgstr "" -#: c/c-decl.cc:7130 +#: c/c-decl.cc:7131 #, gcc-internal-format msgid "storage class specified for structure field" msgstr "" -#: c/c-decl.cc:7134 +#: c/c-decl.cc:7135 #, gcc-internal-format msgid "storage class specified for parameter %qE" msgstr "" -#: c/c-decl.cc:7137 +#: c/c-decl.cc:7138 #, gcc-internal-format msgid "storage class specified for unnamed parameter" msgstr "" -#: c/c-decl.cc:7140 cp/decl.cc:13709 +#: c/c-decl.cc:7141 cp/decl.cc:13711 #, gcc-internal-format msgid "storage class specified for typename" msgstr "" -#: c/c-decl.cc:7158 +#: c/c-decl.cc:7159 #, gcc-internal-format msgid "%qE initialized and declared %<extern%>" msgstr "" -#: c/c-decl.cc:7162 +#: c/c-decl.cc:7163 #, gcc-internal-format msgid "%qE has both %<extern%> and initializer" msgstr "" -#: c/c-decl.cc:7167 +#: c/c-decl.cc:7168 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %<auto%>" msgstr "" -#: c/c-decl.cc:7171 +#: c/c-decl.cc:7172 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %<register%>" msgstr "" -#: c/c-decl.cc:7176 +#: c/c-decl.cc:7177 #, gcc-internal-format msgid "nested function %qE declared %<extern%>" msgstr "" -#: c/c-decl.cc:7179 +#: c/c-decl.cc:7180 #, gcc-internal-format msgid "function-scope %qE implicitly auto and declared %qs" msgstr "" @@ -49239,1170 +49240,1170 @@ msgstr "" #. Only the innermost declarator (making a parameter be of #. array type which is converted to pointer type) #. may have static or type qualifiers. -#: c/c-decl.cc:7226 c/c-decl.cc:7586 +#: c/c-decl.cc:7227 c/c-decl.cc:7587 #, gcc-internal-format msgid "static or type qualifiers in non-parameter array declarator" msgstr "" -#: c/c-decl.cc:7287 +#: c/c-decl.cc:7288 #, gcc-internal-format msgid "declaration of %qE as array of voids" msgstr "" -#: c/c-decl.cc:7289 +#: c/c-decl.cc:7290 #, gcc-internal-format msgid "declaration of type name as array of voids" msgstr "" -#: c/c-decl.cc:7296 +#: c/c-decl.cc:7297 #, gcc-internal-format msgid "declaration of %qE as array of functions" msgstr "" -#: c/c-decl.cc:7299 +#: c/c-decl.cc:7300 #, gcc-internal-format msgid "declaration of type name as array of functions" msgstr "" -#: c/c-decl.cc:7307 c/c-decl.cc:9661 +#: c/c-decl.cc:7308 c/c-decl.cc:9662 #, gcc-internal-format msgid "invalid use of structure with flexible array member" msgstr "" -#: c/c-decl.cc:7339 +#: c/c-decl.cc:7340 #, gcc-internal-format msgid "size of array %qE has non-integer type" msgstr "" -#: c/c-decl.cc:7343 +#: c/c-decl.cc:7344 #, gcc-internal-format msgid "size of unnamed array has non-integer type" msgstr "" -#: c/c-decl.cc:7351 +#: c/c-decl.cc:7352 #, gcc-internal-format msgid "size of array %qE has incomplete type" msgstr "" -#: c/c-decl.cc:7354 +#: c/c-decl.cc:7355 #, gcc-internal-format msgid "size of unnamed array has incomplete type" msgstr "" -#: c/c-decl.cc:7366 +#: c/c-decl.cc:7367 #, gcc-internal-format msgid "ISO C forbids zero-size array %qE" msgstr "" -#: c/c-decl.cc:7369 +#: c/c-decl.cc:7370 #, gcc-internal-format msgid "ISO C forbids zero-size array" msgstr "" -#: c/c-decl.cc:7378 +#: c/c-decl.cc:7379 #, gcc-internal-format msgid "size of array %qE is negative" msgstr "" -#: c/c-decl.cc:7380 +#: c/c-decl.cc:7381 #, gcc-internal-format msgid "size of unnamed array is negative" msgstr "" -#: c/c-decl.cc:7466 +#: c/c-decl.cc:7467 #, gcc-internal-format msgid "size of array %qE is too large" msgstr "" -#: c/c-decl.cc:7469 +#: c/c-decl.cc:7470 #, gcc-internal-format msgid "size of unnamed array is too large" msgstr "" -#: c/c-decl.cc:7508 c/c-decl.cc:8104 +#: c/c-decl.cc:7509 c/c-decl.cc:8105 #, gcc-internal-format msgid "ISO C90 does not support flexible array members" msgstr "" -#: c/c-decl.cc:7521 +#: c/c-decl.cc:7522 #, gcc-internal-format msgid "%<[*]%> not in a declaration" msgstr "" -#: c/c-decl.cc:7529 +#: c/c-decl.cc:7530 #, gcc-internal-format msgid "array type has incomplete element type %qT" msgstr "" -#: c/c-decl.cc:7535 +#: c/c-decl.cc:7536 #, gcc-internal-format msgid "" "declaration of %qE as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: c/c-decl.cc:7539 +#: c/c-decl.cc:7540 #, gcc-internal-format msgid "" "declaration of multidimensional array must have bounds for all dimensions " "except the first" msgstr "" -#: c/c-decl.cc:7622 +#: c/c-decl.cc:7623 #, gcc-internal-format msgid "%qE declared as function returning a function" msgstr "" -#: c/c-decl.cc:7625 +#: c/c-decl.cc:7626 #, gcc-internal-format msgid "type name declared as function returning a function" msgstr "" -#: c/c-decl.cc:7632 +#: c/c-decl.cc:7633 #, gcc-internal-format msgid "%qE declared as function returning an array" msgstr "" -#: c/c-decl.cc:7635 +#: c/c-decl.cc:7636 #, gcc-internal-format msgid "type name declared as function returning an array" msgstr "" -#: c/c-decl.cc:7679 +#: c/c-decl.cc:7680 #, gcc-internal-format msgid "function definition has qualified void return type" msgstr "" -#: c/c-decl.cc:7683 cp/decl.cc:14134 +#: c/c-decl.cc:7684 cp/decl.cc:14136 #, gcc-internal-format msgid "type qualifiers ignored on function return type" msgstr "" -#: c/c-decl.cc:7722 c/c-decl.cc:7890 c/c-decl.cc:7944 c/c-decl.cc:8038 -#: c/c-decl.cc:8160 c/c-parser.cc:3796 +#: c/c-decl.cc:7723 c/c-decl.cc:7891 c/c-decl.cc:7945 c/c-decl.cc:8039 +#: c/c-decl.cc:8161 c/c-parser.cc:3796 #, gcc-internal-format msgid "%<_Atomic%>-qualified function type" msgstr "" -#: c/c-decl.cc:7728 c/c-decl.cc:7896 c/c-decl.cc:8043 c/c-decl.cc:8165 +#: c/c-decl.cc:7729 c/c-decl.cc:7897 c/c-decl.cc:8044 c/c-decl.cc:8166 #, gcc-internal-format msgid "ISO C forbids qualified function types" msgstr "" -#: c/c-decl.cc:7781 +#: c/c-decl.cc:7782 #, gcc-internal-format msgid "%qs combined with %<auto%> qualifier for %qE" msgstr "" -#: c/c-decl.cc:7785 +#: c/c-decl.cc:7786 #, gcc-internal-format msgid "%qs combined with %<register%> qualifier for %qE" msgstr "" -#: c/c-decl.cc:7791 +#: c/c-decl.cc:7792 #, gcc-internal-format msgid "%qs specified for auto variable %qE" msgstr "" -#: c/c-decl.cc:7807 +#: c/c-decl.cc:7808 #, gcc-internal-format msgid "%qs specified for parameter %qE" msgstr "" -#: c/c-decl.cc:7810 +#: c/c-decl.cc:7811 #, gcc-internal-format msgid "%qs specified for unnamed parameter" msgstr "" -#: c/c-decl.cc:7816 +#: c/c-decl.cc:7817 #, gcc-internal-format msgid "%qs specified for structure field %qE" msgstr "" -#: c/c-decl.cc:7819 +#: c/c-decl.cc:7820 #, gcc-internal-format msgid "%qs specified for structure field" msgstr "" -#: c/c-decl.cc:7834 +#: c/c-decl.cc:7835 #, gcc-internal-format msgid "bit-field %qE has atomic type" msgstr "" -#: c/c-decl.cc:7836 +#: c/c-decl.cc:7837 #, gcc-internal-format msgid "bit-field has atomic type" msgstr "" -#: c/c-decl.cc:7845 +#: c/c-decl.cc:7846 #, gcc-internal-format msgid "alignment specified for typedef %qE" msgstr "" -#: c/c-decl.cc:7847 +#: c/c-decl.cc:7848 #, gcc-internal-format msgid "alignment specified for %<register%> object %qE" msgstr "" -#: c/c-decl.cc:7852 +#: c/c-decl.cc:7853 #, gcc-internal-format msgid "alignment specified for parameter %qE" msgstr "" -#: c/c-decl.cc:7854 +#: c/c-decl.cc:7855 #, gcc-internal-format msgid "alignment specified for unnamed parameter" msgstr "" -#: c/c-decl.cc:7859 +#: c/c-decl.cc:7860 #, gcc-internal-format msgid "alignment specified for bit-field %qE" msgstr "" -#: c/c-decl.cc:7861 +#: c/c-decl.cc:7862 #, gcc-internal-format msgid "alignment specified for unnamed bit-field" msgstr "" -#: c/c-decl.cc:7864 +#: c/c-decl.cc:7865 #, gcc-internal-format msgid "alignment specified for function %qE" msgstr "" -#: c/c-decl.cc:7871 +#: c/c-decl.cc:7872 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE" msgstr "" -#: c/c-decl.cc:7874 +#: c/c-decl.cc:7875 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field" msgstr "" -#: c/c-decl.cc:7905 +#: c/c-decl.cc:7906 #, gcc-internal-format msgid "typedef %q+D declared %<inline%>" msgstr "" -#: c/c-decl.cc:7907 +#: c/c-decl.cc:7908 #, gcc-internal-format msgid "typedef %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.cc:7950 +#: c/c-decl.cc:7951 #, gcc-internal-format msgid "ISO C forbids const or volatile function types" msgstr "" #. C99 6.7.2.1p8 -#: c/c-decl.cc:7961 +#: c/c-decl.cc:7962 #, gcc-internal-format msgid "a member of a structure or union cannot have a variably modified type" msgstr "" -#: c/c-decl.cc:7978 cp/decl.cc:12576 +#: c/c-decl.cc:7979 cp/decl.cc:12578 #, gcc-internal-format msgid "variable or field %qE declared void" msgstr "" -#: c/c-decl.cc:8028 +#: c/c-decl.cc:8029 #, gcc-internal-format msgid "attributes in parameter array declarator ignored" msgstr "" -#: c/c-decl.cc:8070 +#: c/c-decl.cc:8071 #, gcc-internal-format msgid "parameter %q+D declared %<inline%>" msgstr "" -#: c/c-decl.cc:8072 +#: c/c-decl.cc:8073 #, gcc-internal-format msgid "parameter %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.cc:8085 +#: c/c-decl.cc:8086 #, gcc-internal-format msgid "field %qE declared as a function" msgstr "" -#: c/c-decl.cc:8092 +#: c/c-decl.cc:8093 #, gcc-internal-format msgid "field %qE has incomplete type" msgstr "" -#: c/c-decl.cc:8094 +#: c/c-decl.cc:8095 #, gcc-internal-format msgid "unnamed field has incomplete type" msgstr "" -#: c/c-decl.cc:8131 c/c-decl.cc:8142 c/c-decl.cc:8145 +#: c/c-decl.cc:8132 c/c-decl.cc:8143 c/c-decl.cc:8146 #, gcc-internal-format msgid "invalid storage class for function %qE" msgstr "" -#: c/c-decl.cc:8202 +#: c/c-decl.cc:8203 #, gcc-internal-format msgid "cannot inline function %<main%>" msgstr "" -#: c/c-decl.cc:8204 +#: c/c-decl.cc:8205 #, gcc-internal-format msgid "%<main%> declared %<_Noreturn%>" msgstr "" -#: c/c-decl.cc:8215 +#: c/c-decl.cc:8216 #, gcc-internal-format msgid "ISO C99 does not support %<_Noreturn%>" msgstr "" -#: c/c-decl.cc:8218 +#: c/c-decl.cc:8219 #, gcc-internal-format msgid "ISO C90 does not support %<_Noreturn%>" msgstr "" -#: c/c-decl.cc:8240 +#: c/c-decl.cc:8241 #, gcc-internal-format msgid "function previously declared %<static%> redeclared %<extern%>" msgstr "" -#: c/c-decl.cc:8258 +#: c/c-decl.cc:8259 #, gcc-internal-format msgid "%<constexpr%> object has variably modified type" msgstr "" -#: c/c-decl.cc:8262 c/c-parser.cc:13368 +#: c/c-decl.cc:8263 c/c-parser.cc:13368 #, gcc-internal-format msgid "invalid qualifiers for %<constexpr%> object" msgstr "" -#: c/c-decl.cc:8268 c/c-parser.cc:13371 +#: c/c-decl.cc:8269 c/c-parser.cc:13371 #, gcc-internal-format msgid "invalid qualifiers for field of %<constexpr%> object" msgstr "" -#: c/c-decl.cc:8294 +#: c/c-decl.cc:8295 #, gcc-internal-format msgid "variable previously declared %<static%> redeclared %<extern%>" msgstr "" -#: c/c-decl.cc:8306 +#: c/c-decl.cc:8307 #, gcc-internal-format msgid "variable %q+D declared %<inline%>" msgstr "" -#: c/c-decl.cc:8308 +#: c/c-decl.cc:8309 #, gcc-internal-format msgid "variable %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.cc:8343 +#: c/c-decl.cc:8344 #, gcc-internal-format msgid "non-nested function with variably modified type" msgstr "" -#: c/c-decl.cc:8345 +#: c/c-decl.cc:8346 #, gcc-internal-format msgid "object with variably modified type must have no linkage" msgstr "" -#: c/c-decl.cc:8453 c/c-decl.cc:10789 +#: c/c-decl.cc:8454 c/c-decl.cc:10790 #, gcc-internal-format msgid "function declaration isn%'t a prototype" msgstr "" -#: c/c-decl.cc:8465 +#: c/c-decl.cc:8466 #, gcc-internal-format msgid "parameter names (without types) in function declaration" msgstr "" -#: c/c-decl.cc:8513 +#: c/c-decl.cc:8514 #, gcc-internal-format msgid "parameter %u (%q+D) has incomplete type" msgstr "" -#: c/c-decl.cc:8517 +#: c/c-decl.cc:8518 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has incomplete type" msgstr "" -#: c/c-decl.cc:8597 +#: c/c-decl.cc:8598 #, gcc-internal-format msgid "%<void%> as only parameter may not be qualified" msgstr "" -#: c/c-decl.cc:8601 +#: c/c-decl.cc:8602 #, gcc-internal-format msgid "%<void%> must be the only parameter" msgstr "" -#: c/c-decl.cc:8631 +#: c/c-decl.cc:8632 #, gcc-internal-format msgid "parameter %q+D has just a forward declaration" msgstr "" -#: c/c-decl.cc:8639 +#: c/c-decl.cc:8640 #, gcc-internal-format msgid "%<void%> must be the only parameter and unnamed" msgstr "" -#: c/c-decl.cc:8681 +#: c/c-decl.cc:8682 #, gcc-internal-format msgid "" "%<%s %E%> declared inside parameter list will not be visible outside of this " "definition or declaration" msgstr "" -#: c/c-decl.cc:8688 +#: c/c-decl.cc:8689 #, gcc-internal-format, gfc-internal-format msgid "" "anonymous %s declared inside parameter list will not be visible outside of " "this definition or declaration" msgstr "" -#: c/c-decl.cc:8814 +#: c/c-decl.cc:8815 #, gcc-internal-format msgid "enum type defined here" msgstr "" -#: c/c-decl.cc:8820 +#: c/c-decl.cc:8821 #, gcc-internal-format msgid "struct defined here" msgstr "" -#: c/c-decl.cc:8826 +#: c/c-decl.cc:8827 #, gcc-internal-format msgid "union defined here" msgstr "" -#: c/c-decl.cc:8919 +#: c/c-decl.cc:8920 #, gcc-internal-format msgid "redefinition of %<union %E%>" msgstr "" -#: c/c-decl.cc:8921 +#: c/c-decl.cc:8922 #, gcc-internal-format msgid "redefinition of %<struct %E%>" msgstr "" -#: c/c-decl.cc:8930 +#: c/c-decl.cc:8931 #, gcc-internal-format msgid "nested redefinition of %<union %E%>" msgstr "" -#: c/c-decl.cc:8932 +#: c/c-decl.cc:8933 #, gcc-internal-format msgid "nested redefinition of %<struct %E%>" msgstr "" -#: c/c-decl.cc:8965 c/c-decl.cc:10119 +#: c/c-decl.cc:8966 c/c-decl.cc:10120 #, gcc-internal-format msgid "defining type in %qs expression is invalid in C++" msgstr "" -#: c/c-decl.cc:8971 c/c-decl.cc:10125 +#: c/c-decl.cc:8972 c/c-decl.cc:10126 #, gcc-internal-format msgid "%qT defined in underspecified object initializer" msgstr "" -#: c/c-decl.cc:9035 cp/decl.cc:5719 cp/parser.cc:28813 +#: c/c-decl.cc:9036 cp/decl.cc:5721 cp/parser.cc:28813 #, gcc-internal-format msgid "declaration does not declare anything" msgstr "" -#: c/c-decl.cc:9040 +#: c/c-decl.cc:9041 #, gcc-internal-format msgid "ISO C99 doesn%'t support unnamed structs/unions" msgstr "" -#: c/c-decl.cc:9043 +#: c/c-decl.cc:9044 #, gcc-internal-format msgid "ISO C90 doesn%'t support unnamed structs/unions" msgstr "" -#: c/c-decl.cc:9136 c/c-decl.cc:9154 c/c-decl.cc:9215 +#: c/c-decl.cc:9137 c/c-decl.cc:9155 c/c-decl.cc:9216 #, gcc-internal-format msgid "duplicate member %q+D" msgstr "" -#: c/c-decl.cc:9241 +#: c/c-decl.cc:9242 #, gcc-internal-format msgid "empty struct has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.cc:9244 +#: c/c-decl.cc:9245 #, gcc-internal-format msgid "empty union has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.cc:9478 +#: c/c-decl.cc:9479 #, gcc-internal-format msgid "" "argument %qE to the %<counted_by%> attribute is not a field declaration in " "the same structure as %qD" msgstr "" -#: c/c-decl.cc:9494 +#: c/c-decl.cc:9495 #, gcc-internal-format msgid "" "argument %qE to the %<counted_by%> attribute is not a field declaration with " "an integer type" msgstr "" -#: c/c-decl.cc:9552 +#: c/c-decl.cc:9553 #, gcc-internal-format msgid "union has no named members" msgstr "" -#: c/c-decl.cc:9554 +#: c/c-decl.cc:9555 #, gcc-internal-format msgid "union has no members" msgstr "" -#: c/c-decl.cc:9559 +#: c/c-decl.cc:9560 #, gcc-internal-format msgid "struct has no named members" msgstr "" -#: c/c-decl.cc:9561 +#: c/c-decl.cc:9562 #, gcc-internal-format msgid "struct has no members" msgstr "" -#: c/c-decl.cc:9639 cp/decl.cc:15166 +#: c/c-decl.cc:9640 cp/decl.cc:15168 #, gcc-internal-format msgid "flexible array member in union is a GCC extension" msgstr "" -#: c/c-decl.cc:9643 +#: c/c-decl.cc:9644 #, gcc-internal-format msgid "flexible array member not at end of struct" msgstr "" -#: c/c-decl.cc:9648 +#: c/c-decl.cc:9649 #, gcc-internal-format msgid "" "flexible array member in a struct with no named members is a GCC extension" msgstr "" -#: c/c-decl.cc:9683 +#: c/c-decl.cc:9684 #, gcc-internal-format msgid "" "structure containing a flexible array member is not at the end of another " "structure" msgstr "" -#: c/c-decl.cc:9710 +#: c/c-decl.cc:9711 #, gcc-internal-format msgid "type %qT is too large" msgstr "" -#: c/c-decl.cc:9774 +#: c/c-decl.cc:9775 #, gcc-internal-format msgid "type punning toggles scalar storage order" msgstr "" -#: c/c-decl.cc:9841 +#: c/c-decl.cc:9842 #, gcc-internal-format msgid "union cannot be made transparent" msgstr "" -#: c/c-decl.cc:9855 +#: c/c-decl.cc:9856 #, gcc-internal-format msgid "redefinition of struct or union %qT with variably modified type" msgstr "" -#: c/c-decl.cc:9862 +#: c/c-decl.cc:9863 #, gcc-internal-format msgid "redefinition of struct or union %qT" msgstr "" -#: c/c-decl.cc:10041 +#: c/c-decl.cc:10042 #, gcc-internal-format msgid "nested redefinition of %<enum %E%>" msgstr "" -#: c/c-decl.cc:10089 +#: c/c-decl.cc:10090 #, gcc-internal-format msgid "redeclaration of %<enum %E%>" msgstr "" -#: c/c-decl.cc:10101 +#: c/c-decl.cc:10102 #, gcc-internal-format msgid "%<enum%> declared with but defined without fixed underlying type" msgstr "" -#: c/c-decl.cc:10188 cp/decl.cc:17838 m2/gm2-gcc/m2type.cc:2088 +#: c/c-decl.cc:10189 cp/decl.cc:17840 m2/gm2-gcc/m2type.cc:2088 #, gcc-internal-format msgid "specified mode too small for enumerated values" msgstr "" -#: c/c-decl.cc:10207 +#: c/c-decl.cc:10208 #, gcc-internal-format msgid "enumeration values exceed range of largest integer" msgstr "" -#: c/c-decl.cc:10216 +#: c/c-decl.cc:10217 #, gcc-internal-format msgid "enumeration values exceed range of %qs" msgstr "" -#: c/c-decl.cc:10329 +#: c/c-decl.cc:10330 #, gcc-internal-format msgid "conflicting redefinition of enum %qT" msgstr "" -#: c/c-decl.cc:10362 c/c-decl.cc:10378 +#: c/c-decl.cc:10363 c/c-decl.cc:10379 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant" msgstr "" -#: c/c-decl.cc:10373 +#: c/c-decl.cc:10374 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant expression" msgstr "" -#: c/c-decl.cc:10397 +#: c/c-decl.cc:10398 #, gcc-internal-format msgid "overflow in enumeration values" msgstr "" -#: c/c-decl.cc:10404 +#: c/c-decl.cc:10405 #, gcc-internal-format msgid "enumerator value outside the range of underlying type" msgstr "" -#: c/c-decl.cc:10421 +#: c/c-decl.cc:10422 #, gcc-internal-format msgid "value of redeclared enumerator outside the range of %qT" msgstr "" -#: c/c-decl.cc:10449 +#: c/c-decl.cc:10450 #, gcc-internal-format msgid "enumerator value outside the range of %qs" msgstr "" -#: c/c-decl.cc:10455 +#: c/c-decl.cc:10456 #, gcc-internal-format msgid "ISO C restricts enumerator values to range of %<int%> before C23" msgstr "" -#: c/c-decl.cc:10663 cp/decl.cc:6053 cp/decl.cc:18438 +#: c/c-decl.cc:10664 cp/decl.cc:6055 cp/decl.cc:18440 #, gcc-internal-format msgid "inline function %qD given attribute %qs" msgstr "" -#: c/c-decl.cc:10682 +#: c/c-decl.cc:10683 #, gcc-internal-format msgid "return type is an incomplete type" msgstr "" -#: c/c-decl.cc:10694 +#: c/c-decl.cc:10695 #, gcc-internal-format msgid "return type defaults to %<int%>" msgstr "" -#: c/c-decl.cc:10722 +#: c/c-decl.cc:10723 #, gcc-internal-format msgid "%q+D defined as variadic function without prototype" msgstr "" -#: c/c-decl.cc:10775 +#: c/c-decl.cc:10776 #, gcc-internal-format msgid "" "ISO C23 does not allow defining parameters for function %qE declared without " "parameters" msgstr "" -#: c/c-decl.cc:10798 +#: c/c-decl.cc:10799 #, gcc-internal-format msgid "no previous prototype for %qD" msgstr "" -#: c/c-decl.cc:10807 +#: c/c-decl.cc:10808 #, gcc-internal-format msgid "%qD was used with no prototype before its definition" msgstr "" -#: c/c-decl.cc:10825 +#: c/c-decl.cc:10826 #, gcc-internal-format msgid "%qD was used with no declaration before its definition" msgstr "" -#: c/c-decl.cc:10844 +#: c/c-decl.cc:10845 #, gcc-internal-format msgid "return type of %qD is not %<int%>" msgstr "" -#: c/c-decl.cc:10846 +#: c/c-decl.cc:10847 #, gcc-internal-format msgid "%<_Atomic%>-qualified return type of %qD" msgstr "" -#: c/c-decl.cc:10853 +#: c/c-decl.cc:10854 #, gcc-internal-format msgid "%qD is normally a non-static function" msgstr "" -#: c/c-decl.cc:10904 +#: c/c-decl.cc:10905 #, gcc-internal-format msgid "old-style parameter declarations in prototyped function definition" msgstr "" -#: c/c-decl.cc:10920 +#: c/c-decl.cc:10921 #, gcc-internal-format msgid "traditional C rejects ISO C style function definitions" msgstr "" -#: c/c-decl.cc:10937 +#: c/c-decl.cc:10938 #, gcc-internal-format msgid "" "ISO C does not support omitting parameter names in function definitions " "before C23" msgstr "" -#: c/c-decl.cc:10977 c/c-decl.cc:10981 +#: c/c-decl.cc:10978 c/c-decl.cc:10982 #, gcc-internal-format msgid "old-style function definition" msgstr "" -#: c/c-decl.cc:10994 +#: c/c-decl.cc:10995 #, gcc-internal-format msgid "parameter name missing from parameter list" msgstr "" -#: c/c-decl.cc:11010 +#: c/c-decl.cc:11011 #, gcc-internal-format msgid "%qD declared as a non-parameter" msgstr "" -#: c/c-decl.cc:11018 +#: c/c-decl.cc:11019 #, gcc-internal-format msgid "multiple parameters named %qD" msgstr "" -#: c/c-decl.cc:11027 +#: c/c-decl.cc:11028 #, gcc-internal-format msgid "parameter %qD declared with void type" msgstr "" -#: c/c-decl.cc:11056 c/c-decl.cc:11061 +#: c/c-decl.cc:11057 c/c-decl.cc:11062 #, gcc-internal-format msgid "type of %qD defaults to %<int%>" msgstr "" -#: c/c-decl.cc:11081 +#: c/c-decl.cc:11082 #, gcc-internal-format msgid "parameter %qD has incomplete type" msgstr "" -#: c/c-decl.cc:11088 +#: c/c-decl.cc:11089 #, gcc-internal-format msgid "declaration for parameter %qD but no such parameter" msgstr "" -#: c/c-decl.cc:11141 +#: c/c-decl.cc:11142 #, gcc-internal-format msgid "number of arguments doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.cc:11152 +#: c/c-decl.cc:11153 #, gcc-internal-format msgid "number of arguments doesn%'t match prototype" msgstr "" -#: c/c-decl.cc:11155 c/c-decl.cc:11202 c/c-decl.cc:11216 +#: c/c-decl.cc:11156 c/c-decl.cc:11203 c/c-decl.cc:11217 #, gcc-internal-format msgid "prototype declaration" msgstr "" -#: c/c-decl.cc:11194 +#: c/c-decl.cc:11195 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.cc:11199 +#: c/c-decl.cc:11200 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match prototype" msgstr "" -#: c/c-decl.cc:11209 +#: c/c-decl.cc:11210 #, gcc-internal-format msgid "argument %qD doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.cc:11214 +#: c/c-decl.cc:11215 #, gcc-internal-format msgid "argument %qD doesn%'t match prototype" msgstr "" -#: c/c-decl.cc:11472 cp/decl.cc:19361 +#: c/c-decl.cc:11473 cp/decl.cc:19363 #, gcc-internal-format msgid "no return statement in function returning non-void" msgstr "" -#: c/c-decl.cc:11491 cp/decl.cc:19432 +#: c/c-decl.cc:11492 cp/decl.cc:19434 #, gcc-internal-format msgid "parameter %qD set but not used" msgstr "" -#: c/c-decl.cc:11588 +#: c/c-decl.cc:11589 #, gcc-internal-format msgid "%<for%> loop initial declarations are only allowed in C99 or C11 mode" msgstr "" -#: c/c-decl.cc:11593 +#: c/c-decl.cc:11594 #, gcc-internal-format msgid "" "use option %<-std=c99%>, %<-std=gnu99%>, %<-std=c11%> or %<-std=gnu11%> to " "compile your code" msgstr "" -#: c/c-decl.cc:11600 +#: c/c-decl.cc:11601 #, gcc-internal-format msgid "ISO C90 does not support %<for%> loop initial declarations" msgstr "" -#: c/c-decl.cc:11634 +#: c/c-decl.cc:11635 #, gcc-internal-format msgid "declaration of static variable %qD in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.cc:11638 +#: c/c-decl.cc:11639 #, gcc-internal-format msgid "" "declaration of %<extern%> variable %qD in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.cc:11645 +#: c/c-decl.cc:11646 #, gcc-internal-format msgid "%<struct %E%> declared in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.cc:11650 +#: c/c-decl.cc:11651 #, gcc-internal-format msgid "%<union %E%> declared in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.cc:11656 +#: c/c-decl.cc:11657 #, gcc-internal-format msgid "%<enum %E%> declared in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.cc:11660 +#: c/c-decl.cc:11661 #, gcc-internal-format msgid "declaration of non-variable %qD in %<for%> loop initial declaration" msgstr "" -#: c/c-decl.cc:11960 +#: c/c-decl.cc:11961 #, gcc-internal-format msgid "incompatible address space qualifiers %qs and %qs" msgstr "" -#: c/c-decl.cc:12019 c/c-decl.cc:12026 +#: c/c-decl.cc:12020 c/c-decl.cc:12027 #, gcc-internal-format msgid "duplicate %qE declaration specifier" msgstr "" -#: c/c-decl.cc:12054 c/c-decl.cc:13175 +#: c/c-decl.cc:12055 c/c-decl.cc:13176 #, gcc-internal-format msgid "multiple storage classes in declaration specifiers" msgstr "" -#: c/c-decl.cc:12056 +#: c/c-decl.cc:12057 #, gcc-internal-format msgid "%qs used with %<auto%>" msgstr "" #. auto may only be used with another storage class specifier, #. such as constexpr, if the type is inferred. -#: c/c-decl.cc:12061 +#: c/c-decl.cc:12062 #, gcc-internal-format msgid "%<auto%> used with %<constexpr%>" msgstr "" -#: c/c-decl.cc:12074 c/c-decl.cc:12512 c/c-decl.cc:12970 +#: c/c-decl.cc:12075 c/c-decl.cc:12513 c/c-decl.cc:12971 #, gcc-internal-format msgid "two or more data types in declaration specifiers" msgstr "" -#: c/c-decl.cc:12086 cp/parser.cc:35086 +#: c/c-decl.cc:12087 cp/parser.cc:35091 #, gcc-internal-format msgid "%<long long long%> is too long for GCC" msgstr "" -#: c/c-decl.cc:12099 +#: c/c-decl.cc:12100 #, gcc-internal-format msgid "ISO C90 does not support %<long long%>" msgstr "" -#: c/c-decl.cc:12352 c/c-parser.cc:12542 +#: c/c-decl.cc:12353 c/c-parser.cc:12542 #, gcc-internal-format msgid "ISO C90 does not support complex types" msgstr "" -#: c/c-decl.cc:12406 +#: c/c-decl.cc:12407 #, gcc-internal-format msgid "ISO C does not support saturating types" msgstr "" -#: c/c-decl.cc:12485 c/c-decl.cc:13110 c/c-decl.cc:13169 +#: c/c-decl.cc:12486 c/c-decl.cc:13111 c/c-decl.cc:13170 #, gcc-internal-format msgid "duplicate %qE" msgstr "" -#: c/c-decl.cc:12502 +#: c/c-decl.cc:12503 #, gcc-internal-format msgid "%qs cannot be defined via %<typedef%>" msgstr "" -#: c/c-decl.cc:12506 +#: c/c-decl.cc:12507 #, gcc-internal-format msgid "%qs cannot be used here" msgstr "" -#: c/c-decl.cc:12559 +#: c/c-decl.cc:12560 #, gcc-internal-format msgid "ISO C does not support %<__int%d%> types" msgstr "" -#: c/c-decl.cc:12581 +#: c/c-decl.cc:12582 #, gcc-internal-format msgid "%<__int%d%> is not supported on this target" msgstr "" -#: c/c-decl.cc:12624 +#: c/c-decl.cc:12625 #, gcc-internal-format msgid "ISO C90 does not support boolean types" msgstr "" -#: c/c-decl.cc:12743 +#: c/c-decl.cc:12744 #, gcc-internal-format msgid "ISO C does not support the %<_Float%d%s%> type before C23" msgstr "" -#: c/c-decl.cc:12794 cp/parser.cc:20889 +#: c/c-decl.cc:12795 cp/parser.cc:20889 #, gcc-internal-format msgid "%<_Float%d%s%> is not supported on this target" msgstr "" -#: c/c-decl.cc:12870 +#: c/c-decl.cc:12871 #, gcc-internal-format msgid "ISO C does not support decimal floating-point before C23" msgstr "" -#: c/c-decl.cc:12894 c/c-decl.cc:13271 c/c-parser.cc:11443 +#: c/c-decl.cc:12895 c/c-decl.cc:13272 c/c-parser.cc:11443 #, gcc-internal-format msgid "fixed-point types not supported for this target" msgstr "" -#: c/c-decl.cc:12896 +#: c/c-decl.cc:12897 #, gcc-internal-format msgid "ISO C does not support fixed-point types" msgstr "" -#: c/c-decl.cc:12925 +#: c/c-decl.cc:12926 #, gcc-internal-format msgid "%<_BitInt%> argument is not an integer constant expression" msgstr "" -#: c/c-decl.cc:12931 +#: c/c-decl.cc:12932 #, gcc-internal-format msgid "%<_BitInt%> argument %qE is not a positive integer constant expression" msgstr "" -#: c/c-decl.cc:12938 +#: c/c-decl.cc:12939 #, gcc-internal-format msgid "%<_BitInt%> argument %qE is larger than %<BITINT_MAXWIDTH%> %qd" msgstr "" -#: c/c-decl.cc:12986 +#: c/c-decl.cc:12987 #, gcc-internal-format msgid "C++ lookup of %qD would return a field, not a type" msgstr "" -#: c/c-decl.cc:12999 +#: c/c-decl.cc:13000 #, gcc-internal-format msgid "%qE fails to be a typedef or built in type" msgstr "" -#: c/c-decl.cc:13054 +#: c/c-decl.cc:13055 #, gcc-internal-format msgid "%qE is not at beginning of declaration" msgstr "" #. auto may only be used with another storage class specifier, #. such as constexpr, if the type is inferred. -#: c/c-decl.cc:13075 c/c-decl.cc:13152 +#: c/c-decl.cc:13076 c/c-decl.cc:13153 #, gcc-internal-format msgid "%qE used with %<auto%>" msgstr "" -#: c/c-decl.cc:13077 +#: c/c-decl.cc:13078 #, gcc-internal-format msgid "%qE used with %<register%>" msgstr "" -#: c/c-decl.cc:13079 c/c-decl.cc:13148 +#: c/c-decl.cc:13080 c/c-decl.cc:13149 #, gcc-internal-format msgid "%qE used with %<typedef%>" msgstr "" -#: c/c-decl.cc:13081 c/c-decl.cc:13118 +#: c/c-decl.cc:13082 c/c-decl.cc:13119 #, gcc-internal-format msgid "%qE used with %<constexpr%>" msgstr "" -#: c/c-decl.cc:13095 c/c-parser.cc:3320 c/c-parser.cc:4691 c/c-parser.cc:10707 +#: c/c-decl.cc:13096 c/c-parser.cc:3320 c/c-parser.cc:4691 c/c-parser.cc:10707 #, gcc-internal-format msgid "ISO C99 does not support %qE" msgstr "" -#: c/c-decl.cc:13098 c/c-parser.cc:3323 c/c-parser.cc:4694 c/c-parser.cc:10710 +#: c/c-decl.cc:13099 c/c-parser.cc:3323 c/c-parser.cc:4694 c/c-parser.cc:10710 #, gcc-internal-format msgid "ISO C90 does not support %qE" msgstr "" -#: c/c-decl.cc:13124 +#: c/c-decl.cc:13125 #, gcc-internal-format msgid "%<__thread%> before %<extern%>" msgstr "" -#: c/c-decl.cc:13133 +#: c/c-decl.cc:13134 #, gcc-internal-format msgid "%<__thread%> before %<static%>" msgstr "" -#: c/c-decl.cc:13139 +#: c/c-decl.cc:13140 #, gcc-internal-format msgid "%<typedef%> used with %<auto%>" msgstr "" -#: c/c-decl.cc:13146 +#: c/c-decl.cc:13147 #, gcc-internal-format msgid "%qE used with %<extern%>" msgstr "" -#: c/c-decl.cc:13154 +#: c/c-decl.cc:13155 #, gcc-internal-format msgid "%qE used with %qs" msgstr "" -#: c/c-decl.cc:13167 +#: c/c-decl.cc:13168 #, gcc-internal-format msgid "duplicate %<_Thread_local%> or %<__thread%>" msgstr "" -#: c/c-decl.cc:13183 +#: c/c-decl.cc:13184 #, gcc-internal-format msgid "%qs used with %qE" msgstr "" -#: c/c-decl.cc:13191 +#: c/c-decl.cc:13192 #, gcc-internal-format msgid "%<constexpr%> used with %qE" msgstr "" -#: c/c-decl.cc:13268 +#: c/c-decl.cc:13269 #, gcc-internal-format msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>" msgstr "" -#: c/c-decl.cc:13283 +#: c/c-decl.cc:13284 #, gcc-internal-format msgid "ISO C does not support plain %<complex%> meaning %<double complex%>" msgstr "" -#: c/c-decl.cc:13294 +#: c/c-decl.cc:13295 #, gcc-internal-format msgid "ISO C does not support %<auto%> type deduction before C23" msgstr "" -#: c/c-decl.cc:13323 +#: c/c-decl.cc:13324 #, gcc-internal-format msgid "%<__auto_type%> followed by %<[[]]%> attributes" msgstr "" -#: c/c-decl.cc:13349 c/c-decl.cc:13365 c/c-decl.cc:13391 +#: c/c-decl.cc:13350 c/c-decl.cc:13366 c/c-decl.cc:13392 #, gcc-internal-format msgid "ISO C does not support complex integer types" msgstr "" -#: c/c-decl.cc:13537 +#: c/c-decl.cc:13538 #, gcc-internal-format msgid "%<signed _BitInt%> argument must be at least 2" msgstr "" -#: c/c-decl.cc:13546 +#: c/c-decl.cc:13547 #, gcc-internal-format msgid "ISO C does not support %<%s_BitInt(%d)%> before C23" msgstr "" -#: c/c-decl.cc:13846 cp/semantics.cc:6784 +#: c/c-decl.cc:13847 cp/semantics.cc:6798 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> combiner refers to variable %qD which is " "not %<omp_out%> nor %<omp_in%>" msgstr "" -#: c/c-decl.cc:13850 cp/semantics.cc:6788 +#: c/c-decl.cc:13851 cp/semantics.cc:6802 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> initializer refers to variable %qD which " "is not %<omp_priv%> nor %<omp_orig%>" msgstr "" -#: c/c-decl.cc:13974 +#: c/c-decl.cc:13975 #, gcc-internal-format msgid "" "ISO C does not support %qs statement with an identifier operand before C2Y" msgstr "" -#: c/c-decl.cc:14026 +#: c/c-decl.cc:14027 #, gcc-internal-format msgid "" "%<break%> statement operand %qE does not refer to a named loop or " "%<switch%>; did you mean %qs?" msgstr "" -#: c/c-decl.cc:14030 +#: c/c-decl.cc:14031 #, gcc-internal-format msgid "" "%<continue%> statement operand %qE does not refer to a named loop; did you " "mean %qs?" msgstr "" -#: c/c-decl.cc:14035 +#: c/c-decl.cc:14036 #, gcc-internal-format msgid "" "%<break%> statement operand %qE does not refer to a named loop or %<switch%>" msgstr "" -#: c/c-decl.cc:14038 +#: c/c-decl.cc:14039 #, gcc-internal-format msgid "%<continue%> statement operand %qE does not refer to a named loop" msgstr "" -#: c/c-decl.cc:14044 +#: c/c-decl.cc:14045 #, gcc-internal-format msgid "%<continue%> statement operand %qE refers to a named %<switch%>" msgstr "" -#: c/c-decl.cc:14046 c/c-decl.cc:14063 +#: c/c-decl.cc:14047 c/c-decl.cc:14064 #, gcc-internal-format msgid "%<switch%> name defined here" msgstr "" -#: c/c-decl.cc:14054 +#: c/c-decl.cc:14055 #, gcc-internal-format msgid "%qs statement operand %qE refers to a loop outside of its body" msgstr "" -#: c/c-decl.cc:14056 +#: c/c-decl.cc:14057 #, gcc-internal-format msgid "loop name defined here" msgstr "" -#: c/c-decl.cc:14060 +#: c/c-decl.cc:14061 #, gcc-internal-format msgid "" "%<break%> statement operand %qE refers to a %<switch%> outside of its body" @@ -50413,37 +50414,37 @@ msgstr "" msgid "%qs is a keyword with %qs onwards" msgstr "" -#: c/c-fold.cc:392 c/c-typeck.cc:14120 cp/typeck.cc:5803 +#: c/c-fold.cc:392 c/c-typeck.cc:14134 cp/typeck.cc:5803 #, gcc-internal-format msgid "left shift of negative value" msgstr "" -#: c/c-fold.cc:405 c/c-typeck.cc:14129 cp/typeck.cc:5811 +#: c/c-fold.cc:405 c/c-typeck.cc:14143 cp/typeck.cc:5811 #, gcc-internal-format msgid "left shift count is negative" msgstr "" -#: c/c-fold.cc:406 c/c-typeck.cc:14056 cp/typeck.cc:5750 +#: c/c-fold.cc:406 c/c-typeck.cc:14070 cp/typeck.cc:5750 #, gcc-internal-format msgid "right shift count is negative" msgstr "" -#: c/c-fold.cc:416 c/c-typeck.cc:14148 cp/typeck.cc:5819 +#: c/c-fold.cc:416 c/c-typeck.cc:14162 cp/typeck.cc:5819 #, gcc-internal-format msgid "left shift count >= width of type" msgstr "" -#: c/c-fold.cc:417 c/c-typeck.cc:14080 cp/typeck.cc:5761 +#: c/c-fold.cc:417 c/c-typeck.cc:14094 cp/typeck.cc:5761 #, gcc-internal-format msgid "right shift count >= width of type" msgstr "" -#: c/c-fold.cc:424 c/c-typeck.cc:14140 +#: c/c-fold.cc:424 c/c-typeck.cc:14154 #, gcc-internal-format msgid "left shift count >= width of vector element" msgstr "" -#: c/c-fold.cc:425 c/c-typeck.cc:14067 +#: c/c-fold.cc:425 c/c-typeck.cc:14081 #, gcc-internal-format msgid "right shift count >= width of vector element" msgstr "" @@ -50463,7 +50464,7 @@ msgstr "" msgid "to match this %qs" msgstr "" -#: c/c-parser.cc:1431 cp/parser.cc:35323 +#: c/c-parser.cc:1431 cp/parser.cc:35328 #, gcc-internal-format msgid "expected end of line" msgstr "" @@ -50473,8 +50474,8 @@ msgstr "" msgid "ISO C forbids an empty translation unit" msgstr "" -#: c/c-parser.cc:1976 c/c-parser.cc:1985 c/c-parser.cc:27770 cp/parser.cc:51245 -#: cp/semantics.cc:4007 cp/semantics.cc:4016 +#: c/c-parser.cc:1976 c/c-parser.cc:1985 c/c-parser.cc:27770 cp/parser.cc:51250 +#: cp/semantics.cc:4011 cp/semantics.cc:4020 #, gcc-internal-format msgid "%qs without corresponding %qs" msgstr "" @@ -50515,8 +50516,8 @@ msgid "unknown type name %qE" msgstr "" #: c/c-parser.cc:2424 c/c-parser.cc:15911 c/c-parser.cc:24927 -#: c/c-parser.cc:25670 c/c-parser.cc:26256 cp/parser.cc:48088 -#: cp/parser.cc:53866 +#: c/c-parser.cc:25670 c/c-parser.cc:26256 cp/parser.cc:48093 +#: cp/parser.cc:53871 #, gcc-internal-format msgid "expected declaration specifiers" msgstr "" @@ -50552,7 +50553,7 @@ msgstr "" msgid "expected %<;%>, identifier or %<(%>" msgstr "" -#: c/c-parser.cc:2575 cp/parser.cc:37581 cp/parser.cc:37653 +#: c/c-parser.cc:2575 cp/parser.cc:37586 cp/parser.cc:37658 #, gcc-internal-format msgid "prefix attributes are ignored for methods" msgstr "" @@ -50572,7 +50573,7 @@ msgstr "" msgid "%<fallthrough%> attribute not followed by %<;%>" msgstr "" -#: c/c-parser.cc:2644 c/c-parser.cc:8283 cp/cp-gimplify.cc:3679 +#: c/c-parser.cc:2644 c/c-parser.cc:8283 cp/cp-gimplify.cc:3684 #, gcc-internal-format msgid "%<assume%> attribute not followed by %<;%>" msgstr "" @@ -50641,7 +50642,7 @@ msgid "ISO C forbids nested functions" msgstr "" #: c/c-parser.cc:3346 c/c-parser.cc:9636 c/c-parser.cc:15984 -#: c/c-parser.cc:20710 cp/parser.cc:42978 +#: c/c-parser.cc:20710 cp/parser.cc:42983 #, gcc-internal-format msgid "expected string literal" msgstr "" @@ -50671,7 +50672,7 @@ msgstr "" msgid "static assertion failed: %E" msgstr "" -#: c/c-parser.cc:3384 cp/semantics.cc:12469 +#: c/c-parser.cc:3384 cp/semantics.cc:12483 #, gcc-internal-format msgid "static assertion failed" msgstr "" @@ -50725,8 +50726,8 @@ msgstr "" #: c/c-parser.cc:19478 c/c-parser.cc:19615 c/c-parser.cc:20481 #: c/c-parser.cc:23540 c/c-parser.cc:26738 c/c-parser.cc:26924 #: c/gimple-parser.cc:1981 c/gimple-parser.cc:2028 cp/parser.cc:9871 -#: cp/parser.cc:35326 cp/parser.cc:38558 cp/parser.cc:41803 cp/parser.cc:41995 -#: cp/parser.cc:49785 cp/parser.cc:53093 +#: cp/parser.cc:35331 cp/parser.cc:38563 cp/parser.cc:41808 cp/parser.cc:42000 +#: cp/parser.cc:49790 cp/parser.cc:53098 #, gcc-internal-format msgid "expected identifier" msgstr "" @@ -50761,7 +50762,7 @@ msgstr "" msgid "comma at end of enumerator list" msgstr "" -#: c/c-parser.cc:4109 c/c-parser.cc:20758 cp/parser.cc:43041 +#: c/c-parser.cc:4109 c/c-parser.cc:20758 cp/parser.cc:43046 #: go/gofrontend/embed.cc:424 #, gcc-internal-format msgid "expected %<,%> or %<}%>" @@ -50868,7 +50869,7 @@ msgstr "" msgid "ISO C does not support %<[[]]%> attributes before C23" msgstr "" -#: c/c-parser.cc:6397 c/c-parser.cc:6463 c/c-typeck.cc:9628 +#: c/c-parser.cc:6397 c/c-parser.cc:6463 c/c-typeck.cc:9642 #, gcc-internal-format msgid "" "variable-sized object may not be initialized except with an empty initializer" @@ -50921,7 +50922,7 @@ msgid "inner loops must be perfectly nested in %<pragma omp tile%>" msgstr "" #: c/c-parser.cc:7084 c/c-parser.cc:7239 cp/parser.cc:12633 cp/parser.cc:12783 -#: cp/parser.cc:50772 +#: cp/parser.cc:50777 #, gcc-internal-format msgid "" "mixing OpenMP directives with attribute and pragma syntax on the same " @@ -50934,7 +50935,7 @@ msgid "OpenMP %<omp::decl%> attribute on a statement" msgstr "" #: c/c-parser.cc:7116 c/c-parser.cc:7337 c/c-parser.cc:27447 cp/parser.cc:12665 -#: cp/parser.cc:50752 cp/parser.cc:50891 +#: cp/parser.cc:50757 cp/parser.cc:50896 #, gcc-internal-format msgid "unknown OpenMP directive name in %qs attribute argument" msgstr "" @@ -51301,7 +51302,7 @@ msgstr "" #: c/c-parser.cc:11517 c/c-parser.cc:13256 c/c-parser.cc:13278 #: c/c-parser.cc:22957 c/gimple-parser.cc:1897 c/gimple-parser.cc:2537 -#: cp/parser.cc:44511 +#: cp/parser.cc:44516 #, gcc-internal-format msgid "expected expression" msgstr "" @@ -51688,12 +51689,12 @@ msgstr "" msgid "no type or storage class may be specified here," msgstr "" -#: c/c-parser.cc:15275 cp/parser.cc:38415 +#: c/c-parser.cc:15275 cp/parser.cc:38420 #, gcc-internal-format msgid "empty property attribute list" msgstr "" -#: c/c-parser.cc:15289 cp/parser.cc:38428 +#: c/c-parser.cc:15289 cp/parser.cc:38433 #, gcc-internal-format msgid "missing property attribute" msgstr "" @@ -51703,61 +51704,61 @@ msgstr "" msgid "unknown property attribute %<%s%s%>" msgstr "" -#: c/c-parser.cc:15331 cp/parser.cc:38465 +#: c/c-parser.cc:15331 cp/parser.cc:38470 #, gcc-internal-format msgid "unknown property attribute" msgstr "" -#: c/c-parser.cc:15340 cp/parser.cc:38474 +#: c/c-parser.cc:15340 cp/parser.cc:38479 #, gcc-internal-format msgid "expected %<=%> after Objective-C %qE" msgstr "" -#: c/c-parser.cc:15351 cp/parser.cc:38488 +#: c/c-parser.cc:15351 cp/parser.cc:38493 #, gcc-internal-format msgid "expected %qE selector name" msgstr "" -#: c/c-parser.cc:15367 cp/parser.cc:38507 +#: c/c-parser.cc:15367 cp/parser.cc:38512 #, gcc-internal-format msgid "setter method names must terminate with %<:%>" msgstr "" -#: c/c-parser.cc:15591 cp/semantics.cc:14071 +#: c/c-parser.cc:15591 cp/semantics.cc:14085 #, gcc-internal-format msgid "" "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a " "non-negative integral constant less than %u" msgstr "" -#: c/c-parser.cc:15629 cp/parser.cc:53448 +#: c/c-parser.cc:15629 cp/parser.cc:53453 #, gcc-internal-format msgid "intervening code must not contain OpenMP directives" msgstr "" #: c/c-parser.cc:15649 c/c-parser.cc:25667 c/c-parser.cc:25976 -#: c/c-parser.cc:26039 c/c-parser.cc:26149 cp/parser.cc:48085 -#: cp/parser.cc:48433 cp/parser.cc:48548 cp/parser.cc:48647 cp/parser.cc:53480 -#: cp/parser.cc:53496 cp/parser.cc:53512 cp/parser.cc:53528 cp/parser.cc:53545 -#: cp/parser.cc:53562 cp/parser.cc:53579 cp/parser.cc:53606 cp/parser.cc:53620 -#: cp/parser.cc:53645 cp/parser.cc:53659 +#: c/c-parser.cc:26039 c/c-parser.cc:26149 cp/parser.cc:48090 +#: cp/parser.cc:48438 cp/parser.cc:48553 cp/parser.cc:48652 cp/parser.cc:53485 +#: cp/parser.cc:53501 cp/parser.cc:53517 cp/parser.cc:53533 cp/parser.cc:53550 +#: cp/parser.cc:53567 cp/parser.cc:53584 cp/parser.cc:53611 cp/parser.cc:53625 +#: cp/parser.cc:53650 cp/parser.cc:53664 #, gcc-internal-format msgid "%<#pragma %s%> may only be used in compound statements" msgstr "" -#: c/c-parser.cc:15672 cp/parser.cc:53634 +#: c/c-parser.cc:15672 cp/parser.cc:53639 #, gcc-internal-format msgid "%<#pragma acc routine%> must be at file scope" msgstr "" -#: c/c-parser.cc:15771 cp/parser.cc:53764 +#: c/c-parser.cc:15771 cp/parser.cc:53769 #, gcc-internal-format msgid "" "%<#pragma omp scan%> may only be used in a loop construct with %<inscan%> " "%<reduction%> clause" msgstr "" -#: c/c-parser.cc:15778 cp/parser.cc:53770 +#: c/c-parser.cc:15778 cp/parser.cc:53775 #, gcc-internal-format msgid "" "%<#pragma omp section%> may only be used in %<#pragma omp sections%> " @@ -51769,12 +51770,12 @@ msgstr "" msgid "%<#pragma %s%> may only be used at file scope" msgstr "" -#: c/c-parser.cc:15877 cp/parser.cc:53853 +#: c/c-parser.cc:15877 cp/parser.cc:53858 #, gcc-internal-format msgid "for, while or do statement expected" msgstr "" -#: c/c-parser.cc:15893 cp/parser.cc:53470 +#: c/c-parser.cc:15893 cp/parser.cc:53475 #, gcc-internal-format msgid "%<#pragma GCC pch_preprocess%> must be first" msgstr "" @@ -51784,11 +51785,11 @@ msgstr "" #: c/c-parser.cc:22762 c/c-parser.cc:22769 c/c-parser.cc:27120 #: c/c-parser.cc:28325 c/c-parser.cc:28333 c/c-parser.cc:28709 #: c/c-parser.cc:28719 c/c-parser.cc:28813 c/c-parser.cc:28820 -#: c/c-parser.cc:28827 cp/parser.cc:38954 cp/parser.cc:42635 cp/parser.cc:44037 -#: cp/parser.cc:44074 cp/parser.cc:44263 cp/parser.cc:44326 cp/parser.cc:44333 -#: cp/parser.cc:44340 cp/parser.cc:50006 cp/parser.cc:50013 cp/parser.cc:50020 -#: cp/parser.cc:50553 cp/parser.cc:52334 cp/parser.cc:52342 cp/parser.cc:52494 -#: cp/parser.cc:52504 +#: c/c-parser.cc:28827 cp/parser.cc:38959 cp/parser.cc:42640 cp/parser.cc:44042 +#: cp/parser.cc:44079 cp/parser.cc:44268 cp/parser.cc:44331 cp/parser.cc:44338 +#: cp/parser.cc:44345 cp/parser.cc:50011 cp/parser.cc:50018 cp/parser.cc:50025 +#: cp/parser.cc:50558 cp/parser.cc:52339 cp/parser.cc:52347 cp/parser.cc:52499 +#: cp/parser.cc:52509 #, gcc-internal-format msgid "too many %qs clauses" msgstr "" @@ -51803,58 +51804,58 @@ msgstr "" msgid "%qD is not a variable" msgstr "" -#: c/c-parser.cc:16914 cp/semantics.cc:9112 +#: c/c-parser.cc:16914 cp/semantics.cc:9126 #, gcc-internal-format msgid "%qD is not a pointer variable" msgstr "" -#: c/c-parser.cc:16956 cp/parser.cc:39845 +#: c/c-parser.cc:16956 cp/parser.cc:39850 #, gcc-internal-format msgid "collapse argument needs positive constant integer expression" msgstr "" -#: c/c-parser.cc:17051 cp/parser.cc:39923 +#: c/c-parser.cc:17051 cp/parser.cc:39928 #, gcc-internal-format msgid "expected %<none%> or %<present%>" msgstr "" -#: c/c-parser.cc:17053 cp/parser.cc:39925 +#: c/c-parser.cc:17053 cp/parser.cc:39930 #, gcc-internal-format msgid "expected %<none%>, %<shared%>, %<private%> or %<firstprivate%>" msgstr "" -#: c/c-parser.cc:17138 cp/parser.cc:39995 +#: c/c-parser.cc:17138 cp/parser.cc:40000 #, gcc-internal-format msgid "expected constant logical expression" msgstr "" -#: c/c-parser.cc:17215 cp/parser.cc:40077 +#: c/c-parser.cc:17215 cp/parser.cc:40082 #, gcc-internal-format msgid "expected %<data%>, %<update%>, %<enter%> or %<exit%>" msgstr "" #: c/c-parser.cc:17235 c/c-parser.cc:26032 c/c-parser.cc:26142 -#: cp/parser.cc:40095 cp/parser.cc:48425 cp/parser.cc:48540 +#: cp/parser.cc:40100 cp/parser.cc:48430 cp/parser.cc:48545 #, gcc-internal-format msgid "expected %<data%>" msgstr "" -#: c/c-parser.cc:17288 cp/parser.cc:40150 +#: c/c-parser.cc:17288 cp/parser.cc:40155 #, gcc-internal-format msgid "too many %<if%> clauses with %qs modifier" msgstr "" -#: c/c-parser.cc:17295 cp/parser.cc:40157 +#: c/c-parser.cc:17295 cp/parser.cc:40162 #, gcc-internal-format msgid "too many %<if%> clauses" msgstr "" -#: c/c-parser.cc:17297 cp/parser.cc:40159 +#: c/c-parser.cc:17297 cp/parser.cc:40164 #, gcc-internal-format msgid "too many %<if%> clauses without modifier" msgstr "" -#: c/c-parser.cc:17303 cp/parser.cc:40165 +#: c/c-parser.cc:17303 cp/parser.cc:40170 #, gcc-internal-format msgid "" "if any %<if%> clause has modifier, then all %<if%> clauses have to use " @@ -51879,22 +51880,22 @@ msgstr "" msgid "%<num_tasks%> value must be positive" msgstr "" -#: c/c-parser.cc:17542 cp/semantics.cc:9327 +#: c/c-parser.cc:17542 cp/semantics.cc:9341 #, gcc-internal-format msgid "%<grainsize%> value must be positive" msgstr "" -#: c/c-parser.cc:17591 cp/semantics.cc:9357 +#: c/c-parser.cc:17591 cp/semantics.cc:9371 #, gcc-internal-format msgid "%<priority%> value must be non-negative" msgstr "" -#: c/c-parser.cc:17625 cp/parser.cc:40391 +#: c/c-parser.cc:17625 cp/parser.cc:40396 #, gcc-internal-format msgid "expected constant integer expression with valid sync-hint value" msgstr "" -#: c/c-parser.cc:17697 cp/parser.cc:40461 +#: c/c-parser.cc:17697 cp/parser.cc:40466 #, gcc-internal-format msgid "" "expected %<alloc%>, %<to%>, %<from%>, %<tofrom%>, %<firstprivate%>, %<none%> " @@ -51906,96 +51907,96 @@ msgstr "" msgid "expected %<scalar%>, %<aggregate%>, %<pointer%> or %<all%>" msgstr "" -#: c/c-parser.cc:17842 cp/parser.cc:40613 +#: c/c-parser.cc:17842 cp/parser.cc:40618 #, gcc-internal-format msgid "too many %<defaultmap%> clauses with %qs category" msgstr "" -#: c/c-parser.cc:17845 cp/parser.cc:40616 +#: c/c-parser.cc:17845 cp/parser.cc:40621 #, gcc-internal-format msgid "too many %<defaultmap%> clauses with unspecified category" msgstr "" -#: c/c-parser.cc:17929 cp/semantics.cc:8181 cp/semantics.cc:8236 +#: c/c-parser.cc:17929 cp/semantics.cc:8195 cp/semantics.cc:8250 #, gcc-internal-format msgid "%qs expression must be integral" msgstr "" -#: c/c-parser.cc:17941 c/c-parser.cc:18064 cp/semantics.cc:8215 -#: cp/semantics.cc:8250 +#: c/c-parser.cc:17941 c/c-parser.cc:18064 cp/semantics.cc:8229 +#: cp/semantics.cc:8264 #, gcc-internal-format msgid "%qs value must be positive" msgstr "" -#: c/c-parser.cc:18003 cp/parser.cc:39608 +#: c/c-parser.cc:18003 cp/parser.cc:39613 #, gcc-internal-format msgid "too many %<static%> arguments" msgstr "" -#: c/c-parser.cc:18037 cp/parser.cc:39641 +#: c/c-parser.cc:18037 cp/parser.cc:39646 #, gcc-internal-format msgid "unexpected argument" msgstr "" -#: c/c-parser.cc:18204 cp/semantics.cc:9543 +#: c/c-parser.cc:18204 cp/semantics.cc:9557 #, gcc-internal-format msgid "%<tile%> argument needs positive integral constant" msgstr "" -#: c/c-parser.cc:18272 cp/parser.cc:43254 +#: c/c-parser.cc:18272 cp/parser.cc:43259 #, gcc-internal-format msgid "too many %<self%> clauses" msgstr "" -#: c/c-parser.cc:18314 cp/parser.cc:40666 +#: c/c-parser.cc:18314 cp/parser.cc:40671 #, gcc-internal-format msgid "expected %<reproducible%> or %<unconstrained%>" msgstr "" -#: c/c-parser.cc:18323 c/c-parser.cc:18329 cp/parser.cc:40675 -#: cp/parser.cc:40685 +#: c/c-parser.cc:18323 c/c-parser.cc:18329 cp/parser.cc:40680 +#: cp/parser.cc:40690 #, gcc-internal-format msgid "expected %<concurrent%>" msgstr "" -#: c/c-parser.cc:18365 cp/parser.cc:40725 +#: c/c-parser.cc:18365 cp/parser.cc:40730 #, gcc-internal-format msgid "expected %<teams%>, %<parallel%> or %<thread%>" msgstr "" -#: c/c-parser.cc:18418 cp/parser.cc:40793 +#: c/c-parser.cc:18418 cp/parser.cc:40798 #, gcc-internal-format msgid "ordered argument needs positive constant integer expression" msgstr "" -#: c/c-parser.cc:18543 c/c-parser.cc:27870 cp/parser.cc:51944 +#: c/c-parser.cc:18543 c/c-parser.cc:27870 cp/parser.cc:51949 #, gcc-internal-format msgid "" "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or " "identifier" msgstr "" -#: c/c-parser.cc:18665 cp/parser.cc:41051 +#: c/c-parser.cc:18665 cp/parser.cc:41056 #, gcc-internal-format msgid "both %<monotonic%> and %<nonmonotonic%> modifiers specified" msgstr "" -#: c/c-parser.cc:18719 cp/parser.cc:41067 +#: c/c-parser.cc:18719 cp/parser.cc:41072 #, gcc-internal-format msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter" msgstr "" -#: c/c-parser.cc:18723 cp/parser.cc:41070 +#: c/c-parser.cc:18723 cp/parser.cc:41075 #, gcc-internal-format msgid "schedule %<auto%> does not take a %<chunk_size%> parameter" msgstr "" -#: c/c-parser.cc:18736 cp/semantics.cc:8297 +#: c/c-parser.cc:18736 cp/semantics.cc:8311 #, gcc-internal-format msgid "chunk size value must be positive" msgstr "" -#: c/c-parser.cc:18759 cp/parser.cc:41090 +#: c/c-parser.cc:18759 cp/parser.cc:41095 #, gcc-internal-format msgid "invalid schedule kind" msgstr "" @@ -52005,24 +52006,24 @@ msgstr "" msgid "%<num_teams%> value must be positive" msgstr "" -#: c/c-parser.cc:18917 cp/semantics.cc:8264 +#: c/c-parser.cc:18917 cp/semantics.cc:8278 #, gcc-internal-format msgid "%<num_teams%> lower bound %qE bigger than upper bound %qE" msgstr "" -#: c/c-parser.cc:18966 cp/semantics.cc:8393 +#: c/c-parser.cc:18966 cp/semantics.cc:8407 #, gcc-internal-format msgid "%<thread_limit%> value must be positive" msgstr "" -#: c/c-parser.cc:19011 cp/semantics.cc:8521 +#: c/c-parser.cc:19011 cp/semantics.cc:8535 #, gcc-internal-format msgid "" "%<aligned%> clause alignment expression must be positive constant integer " "expression" msgstr "" -#: c/c-parser.cc:19123 c/c-parser.cc:22412 cp/parser.cc:44029 +#: c/c-parser.cc:19123 c/c-parser.cc:22412 cp/parser.cc:44034 #, gcc-internal-format msgid "expected %<allocator%> or %<align%>" msgstr "" @@ -52032,26 +52033,26 @@ msgstr "" msgid "duplicate %qs modifier" msgstr "" -#: c/c-parser.cc:19178 cp/semantics.cc:8654 +#: c/c-parser.cc:19178 cp/semantics.cc:8668 #, gcc-internal-format msgid "" "%<allocate%> clause allocator expression has type %qT rather than " "%<omp_allocator_handle_t%>" msgstr "" -#: c/c-parser.cc:19189 cp/semantics.cc:8609 cp/semantics.cc:8625 +#: c/c-parser.cc:19189 cp/semantics.cc:8623 cp/semantics.cc:8639 #, gcc-internal-format msgid "" "%<allocate%> clause %<align%> modifier argument needs to be positive " "constant power of two integer expression" msgstr "" -#: c/c-parser.cc:19308 cp/parser.cc:41629 +#: c/c-parser.cc:19308 cp/parser.cc:41634 #, gcc-internal-format msgid "multiple linear modifiers" msgstr "" -#: c/c-parser.cc:19320 cp/parser.cc:41642 +#: c/c-parser.cc:19320 cp/parser.cc:41647 #, gcc-internal-format msgid "multiple %<step%> modifiers" msgstr "" @@ -52073,66 +52074,66 @@ msgid "" "%<simdlen%> clause expression must be positive constant integer expression" msgstr "" -#: c/c-parser.cc:19807 cp/parser.cc:42189 +#: c/c-parser.cc:19807 cp/parser.cc:42194 #, gcc-internal-format msgid "%<iterator%> modifier incompatible with %qs" msgstr "" -#: c/c-parser.cc:19855 cp/parser.cc:42244 cp/parser.cc:42696 cp/parser.cc:42763 +#: c/c-parser.cc:19855 cp/parser.cc:42249 cp/parser.cc:42701 cp/parser.cc:42768 #, gcc-internal-format msgid "invalid depend kind" msgstr "" -#: c/c-parser.cc:19916 cp/parser.cc:42274 +#: c/c-parser.cc:19916 cp/parser.cc:42279 #, gcc-internal-format msgid "invalid doacross kind" msgstr "" -#: c/c-parser.cc:19985 cp/parser.cc:42417 +#: c/c-parser.cc:19985 cp/parser.cc:42422 #, gcc-internal-format msgid "too many %<always%> modifiers" msgstr "" -#: c/c-parser.cc:19995 cp/parser.cc:42430 +#: c/c-parser.cc:19995 cp/parser.cc:42435 #, gcc-internal-format msgid "too many %<close%> modifiers" msgstr "" -#: c/c-parser.cc:20005 cp/parser.cc:42443 +#: c/c-parser.cc:20005 cp/parser.cc:42448 #, gcc-internal-format msgid "too many %<present%> modifiers" msgstr "" -#: c/c-parser.cc:20013 cp/parser.cc:42454 +#: c/c-parser.cc:20013 cp/parser.cc:42459 #, gcc-internal-format msgid "" "%<map%> clause with map-type modifier other than %<always%>, %<close%> or " "%<present%>" msgstr "" -#: c/c-parser.cc:20051 cp/parser.cc:42494 +#: c/c-parser.cc:20051 cp/parser.cc:42499 #, gcc-internal-format msgid "invalid map kind" msgstr "" -#: c/c-parser.cc:20103 cp/parser.cc:42558 +#: c/c-parser.cc:20103 cp/parser.cc:42563 #, gcc-internal-format msgid "" "%<ancestor%> device modifier not preceded by %<requires%> directive with " "%<reverse_offload%> clause" msgstr "" -#: c/c-parser.cc:20115 cp/parser.cc:42569 +#: c/c-parser.cc:20115 cp/parser.cc:42574 #, gcc-internal-format msgid "expected %<ancestor%> or %<device_num%>" msgstr "" -#: c/c-parser.cc:20138 cp/semantics.cc:8418 +#: c/c-parser.cc:20138 cp/semantics.cc:8432 #, gcc-internal-format msgid "the %<device%> clause expression must evaluate to %<1%>" msgstr "" -#: c/c-parser.cc:20171 cp/parser.cc:42640 +#: c/c-parser.cc:20171 cp/parser.cc:42645 #, gcc-internal-format msgid "invalid dist_schedule kind" msgstr "" @@ -52147,171 +52148,171 @@ msgstr "" msgid "expected %<host%>, %<nohost%> or %<any%>" msgstr "" -#: c/c-parser.cc:20400 cp/semantics.cc:9665 cp/semantics.cc:9683 +#: c/c-parser.cc:20400 cp/semantics.cc:9679 cp/semantics.cc:9697 #, gcc-internal-format msgid "%<partial%> argument needs positive constant integer expression" msgstr "" -#: c/c-parser.cc:20501 cp/semantics.cc:8837 +#: c/c-parser.cc:20501 cp/semantics.cc:8851 #, gcc-internal-format msgid "" "%<detach%> clause event handle has type %qT rather than " "%<omp_event_handle_t%>" msgstr "" -#: c/c-parser.cc:20572 c/c-parser.cc:20666 cp/parser.cc:42823 -#: cp/parser.cc:42935 +#: c/c-parser.cc:20572 c/c-parser.cc:20666 cp/parser.cc:42828 +#: cp/parser.cc:42940 #, gcc-internal-format msgid "string literal must not contain %<\\0%>" msgstr "" -#: c/c-parser.cc:20581 c/c-parser.cc:20702 cp/parser.cc:42830 -#: cp/parser.cc:42970 +#: c/c-parser.cc:20581 c/c-parser.cc:20702 cp/parser.cc:42835 +#: cp/parser.cc:42975 #, gcc-internal-format msgid "unknown foreign runtime identifier %qs" msgstr "" -#: c/c-parser.cc:20596 c/c-parser.cc:20725 cp/parser.cc:42845 -#: cp/parser.cc:42992 +#: c/c-parser.cc:20596 c/c-parser.cc:20725 cp/parser.cc:42850 +#: cp/parser.cc:42997 #, gcc-internal-format msgid "expected string literal or constant integer expression" msgstr "" -#: c/c-parser.cc:20604 c/c-parser.cc:20733 cp/parser.cc:42853 -#: cp/parser.cc:43000 cp/semantics.cc:7513 +#: c/c-parser.cc:20604 c/c-parser.cc:20733 cp/parser.cc:42858 +#: cp/parser.cc:43005 cp/semantics.cc:7527 #, gcc-internal-format msgid "unknown foreign runtime identifier %qwd" msgstr "" -#: c/c-parser.cc:20642 cp/parser.cc:42912 +#: c/c-parser.cc:20642 cp/parser.cc:42917 #, gcc-internal-format msgid "expected %<fr%> or %<attr%> preference selector" msgstr "" -#: c/c-parser.cc:20650 cp/parser.cc:42920 +#: c/c-parser.cc:20650 cp/parser.cc:42925 #, gcc-internal-format msgid "duplicated %<fr%> preference selector" msgstr "" -#: c/c-parser.cc:20676 cp/parser.cc:42944 +#: c/c-parser.cc:20676 cp/parser.cc:42949 #, gcc-internal-format msgid "%<attr%> string literal must start with %<ompx_%>" msgstr "" -#: c/c-parser.cc:20684 cp/parser.cc:42951 +#: c/c-parser.cc:20684 cp/parser.cc:42956 #, gcc-internal-format msgid "%<attr%> string literal must not contain a comma" msgstr "" -#: c/c-parser.cc:20696 cp/parser.cc:42963 +#: c/c-parser.cc:20696 cp/parser.cc:42968 #, gcc-internal-format msgid "non-empty string literal expected" msgstr "" -#: c/c-parser.cc:20806 cp/parser.cc:43103 +#: c/c-parser.cc:20806 cp/parser.cc:43108 #, gcc-internal-format msgid "duplicate %<targetsync%> modifier" msgstr "" -#: c/c-parser.cc:20813 cp/parser.cc:43110 +#: c/c-parser.cc:20813 cp/parser.cc:43115 #, gcc-internal-format msgid "duplicate %<target%> modifier" msgstr "" -#: c/c-parser.cc:20820 cp/parser.cc:43117 +#: c/c-parser.cc:20820 cp/parser.cc:43122 #, gcc-internal-format msgid "duplicate %<prefer_type%> modifier" msgstr "" -#: c/c-parser.cc:20841 cp/parser.cc:43138 +#: c/c-parser.cc:20841 cp/parser.cc:43143 #, gcc-internal-format msgid "expected %<prefer_type%>, %<target%>, or %<targetsync%>" msgstr "" -#: c/c-parser.cc:20877 c/c-parser.cc:27149 cp/parser.cc:43175 -#: cp/parser.cc:50578 +#: c/c-parser.cc:20877 c/c-parser.cc:27149 cp/parser.cc:43180 +#: cp/parser.cc:50583 #, gcc-internal-format msgid "missing required %<target%> and/or %<targetsync%> modifier" msgstr "" -#: c/c-parser.cc:21118 cp/parser.cc:43470 +#: c/c-parser.cc:21118 cp/parser.cc:43475 #, gcc-internal-format msgid "expected an OpenACC clause" msgstr "" #: c/c-parser.cc:21129 c/c-parser.cc:21526 c/c-parser.cc:29112 -#: cp/parser.cc:43481 cp/parser.cc:43934 cp/parser.cc:51422 +#: cp/parser.cc:43486 cp/parser.cc:43939 cp/parser.cc:51427 #, gcc-internal-format msgid "%qs is not valid for %qs" msgstr "" -#: c/c-parser.cc:21174 cp/parser.cc:43529 +#: c/c-parser.cc:21174 cp/parser.cc:43534 #, gcc-internal-format msgid "clauses in %<simd%> trait should be separated by %<,%>" msgstr "" -#: c/c-parser.cc:21327 cp/parser.cc:43722 +#: c/c-parser.cc:21327 cp/parser.cc:43727 #, gcc-internal-format msgid "%qs must be the first clause of %qs" msgstr "" -#: c/c-parser.cc:21515 cp/parser.cc:43923 +#: c/c-parser.cc:21515 cp/parser.cc:43928 #, gcc-internal-format msgid "expected an OpenMP clause" msgstr "" -#: c/c-parser.cc:21676 cp/parser.cc:49110 +#: c/c-parser.cc:21676 cp/parser.cc:49115 #, gcc-internal-format msgid "no valid clauses specified in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.cc:21686 cp/parser.cc:49120 +#: c/c-parser.cc:21686 cp/parser.cc:49125 #, gcc-internal-format msgid "array section in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.cc:21706 cp/parser.cc:49140 +#: c/c-parser.cc:21706 cp/parser.cc:49145 #, gcc-internal-format msgid "%qD must be a global variable in %<#pragma acc declare link%>" msgstr "" -#: c/c-parser.cc:21717 cp/parser.cc:49151 +#: c/c-parser.cc:21717 cp/parser.cc:49156 #, gcc-internal-format msgid "invalid OpenACC clause at file scope" msgstr "" -#: c/c-parser.cc:21724 cp/parser.cc:49158 +#: c/c-parser.cc:21724 cp/parser.cc:49163 #, gcc-internal-format msgid "invalid use of %<extern%> variable %qD in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.cc:21732 cp/parser.cc:49166 +#: c/c-parser.cc:21732 cp/parser.cc:49171 #, gcc-internal-format msgid "invalid use of %<global%> variable %qD in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.cc:21743 cp/parser.cc:49188 +#: c/c-parser.cc:21743 cp/parser.cc:49193 #, gcc-internal-format msgid "" "%qD must be a variable declared in the same scope as %<#pragma acc declare%>" msgstr "" -#: c/c-parser.cc:21753 cp/parser.cc:49211 +#: c/c-parser.cc:21753 cp/parser.cc:49216 #, gcc-internal-format msgid "variable %qD used more than once with %<#pragma acc declare%>" msgstr "" -#: c/c-parser.cc:21846 cp/parser.cc:49295 +#: c/c-parser.cc:21846 cp/parser.cc:49300 #, gcc-internal-format msgid "expected %<data%> after %<#pragma acc %s%>" msgstr "" -#: c/c-parser.cc:21862 cp/parser.cc:49312 +#: c/c-parser.cc:21862 cp/parser.cc:49317 #, gcc-internal-format msgid "%<#pragma acc %s data%> has no data movement clause" msgstr "" -#: c/c-parser.cc:21894 cp/parser.cc:49070 +#: c/c-parser.cc:21894 cp/parser.cc:49075 #, gcc-internal-format msgid "%<host_data%> construct requires %<use_device%> clause" msgstr "" @@ -52326,7 +52327,7 @@ msgstr "" msgid "expected function name" msgstr "" -#: c/c-parser.cc:22145 cp/parser.cc:52761 +#: c/c-parser.cc:22145 cp/parser.cc:52766 #, gcc-internal-format msgid "%qD does not refer to a function" msgstr "" @@ -52338,24 +52339,24 @@ msgid "" "definition" msgstr "" -#: c/c-parser.cc:22208 cp/parser.cc:52812 cp/parser.cc:52859 +#: c/c-parser.cc:22208 cp/parser.cc:52817 cp/parser.cc:52864 #, gcc-internal-format msgid "" "%<#pragma acc routine%> not immediately followed by a single function " "declaration or definition" msgstr "" -#: c/c-parser.cc:22239 cp/parser.cc:52887 +#: c/c-parser.cc:22239 cp/parser.cc:52892 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before use" msgstr "" -#: c/c-parser.cc:22240 cp/parser.cc:52889 +#: c/c-parser.cc:22240 cp/parser.cc:52894 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before definition" msgstr "" -#: c/c-parser.cc:22285 cp/parser.cc:49528 +#: c/c-parser.cc:22285 cp/parser.cc:49533 #, gcc-internal-format msgid "" "%<#pragma acc update%> must contain at least one %<device%> or %<host%> or " @@ -52385,7 +52386,7 @@ msgstr "" msgid "modified here" msgstr "" -#: c/c-parser.cc:22436 cp/parser.cc:44049 cp/parser.cc:44064 +#: c/c-parser.cc:22436 cp/parser.cc:44054 cp/parser.cc:44069 #, gcc-internal-format msgid "" "%<align%> clause argument needs to be positive constant power of two integer " @@ -52426,17 +52427,17 @@ msgstr "" msgid "%<allocator%> clause requires a predefined allocator as %qD is static" msgstr "" -#: c/c-parser.cc:22663 cp/parser.cc:44229 +#: c/c-parser.cc:22663 cp/parser.cc:44234 #, gcc-internal-format msgid "expected %<read%>, %<write%>, %<update%>, or %<capture%> clause" msgstr "" -#: c/c-parser.cc:22702 cp/parser.cc:44268 +#: c/c-parser.cc:22702 cp/parser.cc:44273 #, gcc-internal-format msgid "expected %<seq_cst%>, %<acquire%> or %<relaxed%>" msgstr "" -#: c/c-parser.cc:22726 cp/parser.cc:44297 +#: c/c-parser.cc:22726 cp/parser.cc:44302 #, gcc-internal-format msgid "" "expected %<read%>, %<write%>, %<update%>, %<capture%>, %<compare%>, " @@ -52444,100 +52445,100 @@ msgid "" "%<hint%> clause" msgstr "" -#: c/c-parser.cc:22741 cp/parser.cc:44312 +#: c/c-parser.cc:22741 cp/parser.cc:44317 #, gcc-internal-format msgid "too many atomic clauses" msgstr "" -#: c/c-parser.cc:22748 cp/parser.cc:44319 +#: c/c-parser.cc:22748 cp/parser.cc:44324 #, gcc-internal-format msgid "too many memory order clauses" msgstr "" -#: c/c-parser.cc:22786 c/c-parser.cc:22793 cp/parser.cc:44357 -#: cp/parser.cc:44364 +#: c/c-parser.cc:22786 c/c-parser.cc:22793 cp/parser.cc:44362 +#: cp/parser.cc:44369 #, gcc-internal-format msgid "%qs clause is incompatible with %<read%> or %<write%> clauses" msgstr "" -#: c/c-parser.cc:22799 c/c-parser.cc:22804 cp/parser.cc:44370 -#: cp/parser.cc:44375 +#: c/c-parser.cc:22799 c/c-parser.cc:22804 cp/parser.cc:44375 +#: cp/parser.cc:44380 #, gcc-internal-format msgid "%qs clause requires %qs clause" msgstr "" -#: c/c-parser.cc:22827 cp/parser.cc:44398 +#: c/c-parser.cc:22827 cp/parser.cc:44403 #, gcc-internal-format msgid "" "%<#pragma omp atomic write%> incompatible with %<acquire%> clause implicitly " "provided by a %<requires%> directive" msgstr "" -#: c/c-parser.cc:22838 cp/parser.cc:44409 +#: c/c-parser.cc:22838 cp/parser.cc:44414 #, gcc-internal-format msgid "" "%<#pragma omp atomic read%> incompatible with %<release%> clause implicitly " "provided by a %<requires%> directive" msgstr "" -#: c/c-parser.cc:22870 cp/parser.cc:44441 +#: c/c-parser.cc:22870 cp/parser.cc:44446 #, gcc-internal-format msgid "%<#pragma omp atomic read%> incompatible with %<release%> clause" msgstr "" -#: c/c-parser.cc:22880 cp/parser.cc:44451 +#: c/c-parser.cc:22880 cp/parser.cc:44456 #, gcc-internal-format msgid "%<#pragma omp atomic write%> incompatible with %<acquire%> clause" msgstr "" -#: c/c-parser.cc:23001 cp/parser.cc:44551 +#: c/c-parser.cc:23001 cp/parser.cc:44556 #, gcc-internal-format msgid "expected %<==%> comparison in %<if%> condition" msgstr "" -#: c/c-parser.cc:23008 cp/parser.cc:44558 +#: c/c-parser.cc:23008 cp/parser.cc:44563 #, gcc-internal-format msgid "expected %<==%>, %<<%> or %<>%> comparison in %<if%> condition" msgstr "" -#: c/c-parser.cc:23081 cp/parser.cc:44623 cp/parser.cc:44906 cp/parser.cc:45000 -#: cp/parser.cc:45018 +#: c/c-parser.cc:23081 cp/parser.cc:44628 cp/parser.cc:44911 cp/parser.cc:45005 +#: cp/parser.cc:45023 #, gcc-internal-format msgid "invalid form of %<#pragma omp atomic compare%>" msgstr "" -#: c/c-parser.cc:23092 cp/parser.cc:44634 +#: c/c-parser.cc:23092 cp/parser.cc:44639 #, gcc-internal-format msgid "unexpected %<else%>" msgstr "" -#: c/c-parser.cc:23152 cp/parser.cc:45073 +#: c/c-parser.cc:23152 cp/parser.cc:45078 #, gcc-internal-format msgid "invalid form of %<pragma omp atomic compare%>" msgstr "" -#: c/c-parser.cc:23423 cp/parser.cc:44927 cp/parser.cc:44953 +#: c/c-parser.cc:23423 cp/parser.cc:44932 cp/parser.cc:44958 #, gcc-internal-format msgid "invalid form of %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.cc:23427 cp/parser.cc:44993 cp/parser.cc:45027 +#: c/c-parser.cc:23427 cp/parser.cc:44998 cp/parser.cc:45032 #, gcc-internal-format msgid "invalid operator for %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.cc:23478 cp/parser.cc:45062 +#: c/c-parser.cc:23478 cp/parser.cc:45067 #, gcc-internal-format msgid "%<weak%> clause requires atomic equality comparison" msgstr "" -#: c/c-parser.cc:23484 cp/semantics.cc:11909 cp/semantics.cc:11919 +#: c/c-parser.cc:23484 cp/semantics.cc:11923 cp/semantics.cc:11933 #, gcc-internal-format msgid "" "%<#pragma omp atomic capture%> uses two different expressions for memory" msgstr "" -#: c/c-parser.cc:23587 cp/semantics.cc:11996 +#: c/c-parser.cc:23587 cp/semantics.cc:12010 #, gcc-internal-format msgid "%<depobj%> expression is not lvalue expression" msgstr "" @@ -52547,29 +52548,29 @@ msgstr "" msgid "%<destroy%> expression is not lvalue expression" msgstr "" -#: c/c-parser.cc:23636 cp/parser.cc:45215 +#: c/c-parser.cc:23636 cp/parser.cc:45220 #, gcc-internal-format msgid "" "the %<destroy%> expression %qE should be the same as the %<depobj%> argument " "%qE" msgstr "" -#: c/c-parser.cc:23667 cp/parser.cc:45251 +#: c/c-parser.cc:23667 cp/parser.cc:45256 #, gcc-internal-format msgid "expected %<in%>, %<out%>, %<inout%>, %<mutexinoutset%> or %<inoutset%>" msgstr "" -#: c/c-parser.cc:23679 cp/parser.cc:45267 +#: c/c-parser.cc:23679 cp/parser.cc:45272 #, gcc-internal-format msgid "expected %<depend%>, %<destroy%> or %<update%> clause" msgstr "" -#: c/c-parser.cc:23720 cp/parser.cc:45305 +#: c/c-parser.cc:23720 cp/parser.cc:45310 #, gcc-internal-format msgid "expected %<seq_cst%>, %<acq_rel%>, %<release%> or %<acquire%>" msgstr "" -#: c/c-parser.cc:23728 cp/parser.cc:45313 +#: c/c-parser.cc:23728 cp/parser.cc:45318 #, gcc-internal-format msgid "%<flush%> list specified together with memory order clause" msgstr "" @@ -52579,34 +52580,34 @@ msgstr "" msgid "expected %<(%> or end of line" msgstr "" -#: c/c-parser.cc:23804 cp/parser.cc:46034 +#: c/c-parser.cc:23804 cp/parser.cc:46039 #, gcc-internal-format msgid "" "%<[[omp::directive(%s)]]%> must be the only specified attribute on a " "statement" msgstr "" -#: c/c-parser.cc:23871 cp/parser.cc:46103 +#: c/c-parser.cc:23871 cp/parser.cc:46108 #, gcc-internal-format msgid "%<#pragma omp scan%> with zero preceding executable statements" msgstr "" -#: c/c-parser.cc:23905 cp/parser.cc:46136 +#: c/c-parser.cc:23905 cp/parser.cc:46141 #, gcc-internal-format msgid "expected %<inclusive%> or %<exclusive%> clause" msgstr "" -#: c/c-parser.cc:23910 cp/parser.cc:46142 +#: c/c-parser.cc:23910 cp/parser.cc:46147 #, gcc-internal-format msgid "expected %<#pragma omp scan%>" msgstr "" -#: c/c-parser.cc:23919 cp/parser.cc:46151 +#: c/c-parser.cc:23919 cp/parser.cc:46156 #, gcc-internal-format msgid "%<#pragma omp scan%> with zero succeeding executable statements" msgstr "" -#: c/c-parser.cc:23944 cp/parser.cc:46174 +#: c/c-parser.cc:23944 cp/parser.cc:46179 #, gcc-internal-format msgid "for statement expected" msgstr "" @@ -52614,73 +52615,73 @@ msgstr "" #. Don't call cp_parser_error here since it overrides the #. provided message with a more confusing one if there was #. a bad pragma or attribute directive. -#: c/c-parser.cc:23973 cp/parser.cc:46196 cp/parser.cc:46198 cp/parser.cc:46383 +#: c/c-parser.cc:23973 cp/parser.cc:46201 cp/parser.cc:46203 cp/parser.cc:46388 #, gcc-internal-format msgid "loop nest expected" msgstr "" -#: c/c-parser.cc:24025 cp/parser.cc:46271 +#: c/c-parser.cc:24025 cp/parser.cc:46276 #, gcc-internal-format msgid "" "attributes other than OpenMP directives are not allowed on %<for%> in loop " "nest" msgstr "" -#: c/c-parser.cc:24054 cp/parser.cc:46302 +#: c/c-parser.cc:24054 cp/parser.cc:46307 #, gcc-internal-format msgid "" "%<unroll%> construct with %<partial%> clause generates just one loop with " "canonical form but %d loops are needed" msgstr "" -#: c/c-parser.cc:24065 cp/parser.cc:46313 +#: c/c-parser.cc:24065 cp/parser.cc:46318 #, gcc-internal-format msgid "" "generated loop of %<unroll%> construct without %<partial%> clause does not " "have canonical form" msgstr "" -#: c/c-parser.cc:24088 cp/parser.cc:46339 +#: c/c-parser.cc:24088 cp/parser.cc:46344 #, gcc-internal-format msgid "" "%<tile%> construct generates %d loops with canonical form but %d loops are " "needed" msgstr "" -#: c/c-parser.cc:24099 cp/parser.cc:46350 +#: c/c-parser.cc:24099 cp/parser.cc:46355 #, gcc-internal-format msgid "expected %<for%> loop or OpenMP loop transformation construct" msgstr "" -#: c/c-parser.cc:24187 cp/semantics.cc:11471 cp/semantics.cc:11564 +#: c/c-parser.cc:24187 cp/semantics.cc:11485 cp/semantics.cc:11578 #, gcc-internal-format msgid "expected iteration declaration or initialization" msgstr "" -#: c/c-parser.cc:24276 c/c-parser.cc:24291 cp/parser.cc:46677 -#: cp/parser.cc:46692 +#: c/c-parser.cc:24276 c/c-parser.cc:24291 cp/parser.cc:46682 +#: cp/parser.cc:46697 #, gcc-internal-format msgid "not enough nested loops" msgstr "" -#: c/c-parser.cc:24394 cp/parser.cc:46977 +#: c/c-parser.cc:24394 cp/parser.cc:46982 #, gcc-internal-format msgid "%<ordered%> clause parameter is less than %<collapse%>" msgstr "" -#: c/c-parser.cc:24517 cp/parser.cc:46512 cp/parser.cc:46555 cp/pt.cc:18542 +#: c/c-parser.cc:24517 cp/parser.cc:46517 cp/parser.cc:46560 cp/pt.cc:18586 #, gcc-internal-format msgid "iteration variable %qD should not be firstprivate" msgstr "" -#: c/c-parser.cc:24951 cp/parser.cc:47523 +#: c/c-parser.cc:24951 cp/parser.cc:47528 #, gcc-internal-format msgid "" "%<#pragma omp ordered%> with %qs clause may only be used in compound " "statements" msgstr "" -#: c/c-parser.cc:25167 cp/parser.cc:47729 +#: c/c-parser.cc:25167 cp/parser.cc:47734 #, gcc-internal-format msgid "expected %<for%> after %qs" msgstr "" @@ -52690,7 +52691,7 @@ msgstr "" msgid "expected a function name" msgstr "" -#: c/c-parser.cc:25401 cp/parser.cc:50212 +#: c/c-parser.cc:25401 cp/parser.cc:50217 #, gcc-internal-format msgid "expected target-function call" msgstr "" @@ -52702,59 +52703,59 @@ msgid "" "assignment" msgstr "" -#: c/c-parser.cc:25658 cp/parser.cc:48076 +#: c/c-parser.cc:25658 cp/parser.cc:48081 #, gcc-internal-format msgid "expected %<point%>" msgstr "" -#: c/c-parser.cc:25925 cp/parser.cc:48363 +#: c/c-parser.cc:25925 cp/parser.cc:48368 #, gcc-internal-format msgid "" "%<#pragma omp target data%> with map-type other than %<to%>, %<from%>, " "%<tofrom%> or %<alloc%> on %<map%> clause" msgstr "" -#: c/c-parser.cc:25941 cp/parser.cc:48379 +#: c/c-parser.cc:25941 cp/parser.cc:48384 #, gcc-internal-format msgid "" "%<#pragma omp target data%> must contain at least one %<map%>, " "%<use_device_ptr%> or %<use_device_addr%> clause" msgstr "" -#: c/c-parser.cc:25989 cp/parser.cc:48660 +#: c/c-parser.cc:25989 cp/parser.cc:48665 #, gcc-internal-format msgid "" "%<#pragma omp target update%> must contain at least one %<from%> or %<to%> " "clauses" msgstr "" -#: c/c-parser.cc:26091 cp/parser.cc:48486 +#: c/c-parser.cc:26091 cp/parser.cc:48491 #, gcc-internal-format msgid "" "%<#pragma omp target enter data%> with map-type other than %<to%>, " "%<tofrom%> or %<alloc%> on %<map%> clause" msgstr "" -#: c/c-parser.cc:26103 cp/parser.cc:48498 +#: c/c-parser.cc:26103 cp/parser.cc:48503 #, gcc-internal-format msgid "" "%<#pragma omp target enter data%> must contain at least one %<map%> clause" msgstr "" -#: c/c-parser.cc:26202 cp/parser.cc:48603 +#: c/c-parser.cc:26202 cp/parser.cc:48608 #, gcc-internal-format msgid "" "%<#pragma omp target exit data%> with map-type other than %<from%>, " "%<tofrom%>, %<release%> or %<delete%> on %<map%> clause" msgstr "" -#: c/c-parser.cc:26215 cp/parser.cc:48616 +#: c/c-parser.cc:26215 cp/parser.cc:48621 #, gcc-internal-format msgid "" "%<#pragma omp target exit data%> must contain at least one %<map%> clause" msgstr "" -#: c/c-parser.cc:26460 cp/semantics.cc:10974 +#: c/c-parser.cc:26460 cp/semantics.cc:10988 #, gcc-internal-format msgid "" "%<#pragma omp target%> with map-type other than %<to%>, %<from%>, %<tofrom%> " @@ -52775,68 +52776,68 @@ msgid "" "definition" msgstr "" -#: c/c-parser.cc:26643 cp/parser.cc:49672 +#: c/c-parser.cc:26643 cp/parser.cc:49677 #, gcc-internal-format msgid "expected trait selector name" msgstr "" -#: c/c-parser.cc:26655 cp/parser.cc:49686 +#: c/c-parser.cc:26655 cp/parser.cc:49691 #, gcc-internal-format msgid "unknown selector %qs for context selector set %qs" msgstr "" -#: c/c-parser.cc:26683 cp/parser.cc:49715 +#: c/c-parser.cc:26683 cp/parser.cc:49720 #, gcc-internal-format msgid "selector %qs does not accept any properties" msgstr "" -#: c/c-parser.cc:26705 cp/parser.cc:49747 +#: c/c-parser.cc:26705 cp/parser.cc:49752 #, gcc-internal-format msgid "%<score%> cannot be specified in traits in the %qs trait-selector-set" msgstr "" -#: c/c-parser.cc:26714 cp/parser.cc:49757 cp/pt.cc:18210 +#: c/c-parser.cc:26714 cp/parser.cc:49762 cp/pt.cc:18254 #, gcc-internal-format msgid "%<score%> argument must be constant integer expression" msgstr "" -#: c/c-parser.cc:26717 cp/parser.cc:49760 cp/pt.cc:18217 +#: c/c-parser.cc:26717 cp/parser.cc:49765 cp/pt.cc:18261 #, gcc-internal-format msgid "%<score%> argument must be non-negative" msgstr "" -#: c/c-parser.cc:26758 cp/parser.cc:49806 +#: c/c-parser.cc:26758 cp/parser.cc:49811 #, gcc-internal-format msgid "expected identifier or string literal" msgstr "" -#: c/c-parser.cc:26781 cp/parser.cc:49836 cp/pt.cc:18234 +#: c/c-parser.cc:26781 cp/parser.cc:49841 cp/pt.cc:18278 #, gcc-internal-format msgid "property must be integer expression" msgstr "" -#: c/c-parser.cc:26794 cp/parser.cc:49847 +#: c/c-parser.cc:26794 cp/parser.cc:49852 #, gcc-internal-format msgid "" "properties for %<simd%> selector may not be specified in %<metadirective%>" msgstr "" -#: c/c-parser.cc:26815 cp/parser.cc:49863 fortran/openmp.cc:6534 +#: c/c-parser.cc:26815 cp/parser.cc:49868 fortran/openmp.cc:6534 #, gcc-internal-format msgid "%<requires%> selector is not supported yet" msgstr "" -#: c/c-parser.cc:26874 cp/parser.cc:49926 +#: c/c-parser.cc:26874 cp/parser.cc:49931 #, gcc-internal-format msgid "expected context selector set name" msgstr "" -#: c/c-parser.cc:26986 cp/parser.cc:50430 +#: c/c-parser.cc:26986 cp/parser.cc:50435 #, gcc-internal-format msgid "expected %<match%>, %<adjust_args%> or %<append_args%> clause" msgstr "" -#: c/c-parser.cc:27002 cp/parser.cc:50443 +#: c/c-parser.cc:27002 cp/parser.cc:50448 #, gcc-internal-format msgid "too many %<match%> clauses" msgstr "" @@ -52846,12 +52847,12 @@ msgstr "" msgid "variant %qD is not a function" msgstr "" -#: c/c-parser.cc:27028 cp/decl.cc:8621 +#: c/c-parser.cc:27028 cp/decl.cc:8623 #, gcc-internal-format msgid "variant %qD is a built-in" msgstr "" -#: c/c-parser.cc:27074 cp/parser.cc:50505 +#: c/c-parser.cc:27074 cp/parser.cc:50510 #, gcc-internal-format msgid "%qD is specified more than once" msgstr "" @@ -52861,7 +52862,7 @@ msgstr "" msgid "%qD is not of pointer type" msgstr "" -#: c/c-parser.cc:27101 cp/parser.cc:50538 +#: c/c-parser.cc:27101 cp/parser.cc:50543 #, gcc-internal-format msgid "expected %<nothing%> or %<need_device_ptr%>" msgstr "" @@ -52871,32 +52872,32 @@ msgstr "" msgid "%<need_device_addr%> is not valid for C" msgstr "" -#: c/c-parser.cc:27111 cp/parser.cc:50545 +#: c/c-parser.cc:27111 cp/parser.cc:50550 #, gcc-internal-format msgid "expected %<nothing%> or %<need_device_ptr%> followed by %<:%>" msgstr "" -#: c/c-parser.cc:27131 cp/parser.cc:50562 +#: c/c-parser.cc:27131 cp/parser.cc:50567 #, gcc-internal-format msgid "expected %<interop%>" msgstr "" -#: c/c-parser.cc:27229 cp/decl.cc:8603 +#: c/c-parser.cc:27229 cp/decl.cc:8605 #, gcc-internal-format msgid "argument %d of %qD must be of %<omp_interop_t%>" msgstr "" -#: c/c-parser.cc:27231 cp/decl.cc:8500 cp/decl.cc:8606 +#: c/c-parser.cc:27231 cp/decl.cc:8502 cp/decl.cc:8608 #, gcc-internal-format msgid "%<append_args%> specified here" msgstr "" -#: c/c-parser.cc:27277 cp/decl.cc:8612 +#: c/c-parser.cc:27277 cp/decl.cc:8614 #, gcc-internal-format msgid "variant %qD and base %qD have incompatible types" msgstr "" -#: c/c-parser.cc:27302 cp/parser.cc:50630 +#: c/c-parser.cc:27302 cp/parser.cc:50635 #, gcc-internal-format msgid "an %qs clause requires a %<match%> clause" msgstr "" @@ -52915,67 +52916,67 @@ msgid "" "declaration or definition" msgstr "" -#: c/c-parser.cc:27366 cp/parser.cc:50675 +#: c/c-parser.cc:27366 cp/parser.cc:50680 #, gcc-internal-format msgid "" "%<#pragma omp declare %s%> not immediately followed by a single function " "declaration or definition" msgstr "" -#: c/c-parser.cc:27573 cp/parser.cc:50964 +#: c/c-parser.cc:27573 cp/parser.cc:50969 #, gcc-internal-format msgid "%qD specified both in declare target %<link%> and %qs clauses" msgstr "" -#: c/c-parser.cc:27577 cp/parser.cc:50968 +#: c/c-parser.cc:27577 cp/parser.cc:50973 #, gcc-internal-format msgid "" "%qD specified both in declare target %<link%> and %<to%> or %<enter%> clauses" msgstr "" -#: c/c-parser.cc:27637 cp/parser.cc:51101 +#: c/c-parser.cc:27637 cp/parser.cc:51106 #, gcc-internal-format msgid "directive with only %<device_type%> or %<indirect%> clauses" msgstr "" -#: c/c-parser.cc:27640 cp/parser.cc:51104 +#: c/c-parser.cc:27640 cp/parser.cc:51109 #, gcc-internal-format msgid "" "%<device_type%> clause must specify 'any' when used with an %<indirect%> " "clause" msgstr "" -#: c/c-parser.cc:27689 c/c-parser.cc:27731 cp/parser.cc:51159 -#: cp/parser.cc:51206 +#: c/c-parser.cc:27689 c/c-parser.cc:27731 cp/parser.cc:51164 +#: cp/parser.cc:51211 #, gcc-internal-format msgid "expected %<target%>" msgstr "" -#: c/c-parser.cc:27703 cp/parser.cc:51172 +#: c/c-parser.cc:27703 cp/parser.cc:51177 #, gcc-internal-format msgid "expected %<declare target%> or %<assumes%>" msgstr "" -#: c/c-parser.cc:27738 cp/parser.cc:51213 +#: c/c-parser.cc:27738 cp/parser.cc:51218 #, gcc-internal-format msgid "" "%<#pragma omp end declare target%> without corresponding %<#pragma omp " "declare target%> or %<#pragma omp begin declare target%>" msgstr "" -#: c/c-parser.cc:27749 c/c-parser.cc:27780 cp/parser.cc:51224 -#: cp/parser.cc:51255 +#: c/c-parser.cc:27749 c/c-parser.cc:27780 cp/parser.cc:51229 +#: cp/parser.cc:51260 #, gcc-internal-format msgid "%qs in attribute syntax terminated with %qs in pragma syntax" msgstr "" -#: c/c-parser.cc:27756 c/c-parser.cc:27785 cp/parser.cc:51231 -#: cp/parser.cc:51260 +#: c/c-parser.cc:27756 c/c-parser.cc:27785 cp/parser.cc:51236 +#: cp/parser.cc:51265 #, gcc-internal-format msgid "%qs in pragma syntax terminated with %qs in attribute syntax" msgstr "" -#: c/c-parser.cc:27793 cp/parser.cc:51268 +#: c/c-parser.cc:27793 cp/parser.cc:51273 #, gcc-internal-format msgid "expected %<declare%> or %<assumes%>" msgstr "" @@ -53032,18 +53033,18 @@ msgstr "" msgid "one of the initializer call arguments should be %<&omp_priv%>" msgstr "" -#: c/c-parser.cc:28209 cp/parser.cc:52190 +#: c/c-parser.cc:28209 cp/parser.cc:52195 #, gcc-internal-format msgid "expected %<simd%>, %<reduction%>, %<target%> or %<variant%>" msgstr "" -#: c/c-parser.cc:28280 cp/parser.cc:52283 +#: c/c-parser.cc:28280 cp/parser.cc:52288 #, gcc-internal-format msgid "" "expected %<acq_rel%>, %<acquire%>, %<relaxed%>, %<release%> or %<seq_cst%>" msgstr "" -#: c/c-parser.cc:28309 cp/parser.cc:52318 +#: c/c-parser.cc:28309 cp/parser.cc:52323 #, gcc-internal-format msgid "" "expected %<unified_address%>, %<unified_shared_memory%>, %<self_maps%>, " @@ -53051,27 +53052,27 @@ msgid "" "clause" msgstr "" -#: c/c-parser.cc:28328 cp/parser.cc:52337 +#: c/c-parser.cc:28328 cp/parser.cc:52342 #, gcc-internal-format msgid "" "%qs clause used lexically after first target construct or offloading API" msgstr "" -#: c/c-parser.cc:28340 cp/parser.cc:52349 +#: c/c-parser.cc:28340 cp/parser.cc:52354 #, gcc-internal-format msgid "" "more than one %<atomic_default_mem_order%> clause in a single compilation " "unit" msgstr "" -#: c/c-parser.cc:28349 cp/parser.cc:52358 +#: c/c-parser.cc:28349 cp/parser.cc:52363 #, gcc-internal-format msgid "" "%<atomic_default_mem_order%> clause used lexically after first %<atomic%> " "construct without memory order clause" msgstr "" -#: c/c-parser.cc:28363 cp/parser.cc:52372 +#: c/c-parser.cc:28363 cp/parser.cc:52377 #, gcc-internal-format msgid "%<pragma omp requires%> requires at least one clause" msgstr "" @@ -53086,140 +53087,140 @@ msgstr "" msgid "variable sized type %qT in %<reduction%> clause" msgstr "" -#: c/c-parser.cc:28506 cp/parser.cc:48879 +#: c/c-parser.cc:28506 cp/parser.cc:48884 #, gcc-internal-format msgid "expected %<sizes%>" msgstr "" -#: c/c-parser.cc:28535 cp/semantics.cc:9567 cp/semantics.cc:9584 +#: c/c-parser.cc:28535 cp/semantics.cc:9581 cp/semantics.cc:9598 #, gcc-internal-format msgid "%<sizes%> argument needs positive integral constant" msgstr "" -#: c/c-parser.cc:28651 cp/parser.cc:52429 +#: c/c-parser.cc:28651 cp/parser.cc:52434 #, gcc-internal-format msgid "expected %<at%>, %<severity%> or %<message%> clause" msgstr "" -#: c/c-parser.cc:28684 cp/parser.cc:52464 +#: c/c-parser.cc:28684 cp/parser.cc:52469 #, gcc-internal-format msgid "expected %qs or %qs" msgstr "" -#: c/c-parser.cc:28741 cp/parser.cc:52526 +#: c/c-parser.cc:28741 cp/parser.cc:52531 #, gcc-internal-format msgid "" "%<#pragma omp error%> with %<at(execution)%> clause may only be used in " "compound statements" msgstr "" -#: c/c-parser.cc:28764 cp/parser.cc:52553 +#: c/c-parser.cc:28764 cp/parser.cc:52558 #, gcc-internal-format msgid "%<pragma omp error%> encountered: %s" msgstr "" -#: c/c-parser.cc:28767 cp/parser.cc:52556 +#: c/c-parser.cc:28767 cp/parser.cc:52561 #, gcc-internal-format msgid "%<pragma omp error%> encountered" msgstr "" -#: c/c-parser.cc:28794 cp/parser.cc:49987 +#: c/c-parser.cc:28794 cp/parser.cc:49992 #, gcc-internal-format msgid "expected at least one assumption clause" msgstr "" -#: c/c-parser.cc:28880 c/c-parser.cc:29181 cp/parser.cc:50073 -#: cp/parser.cc:51492 cp/parser.cc:51520 +#: c/c-parser.cc:28880 c/c-parser.cc:29181 cp/parser.cc:50078 +#: cp/parser.cc:51497 cp/parser.cc:51525 #, gcc-internal-format msgid "expected directive name" msgstr "" -#: c/c-parser.cc:28891 cp/parser.cc:50084 +#: c/c-parser.cc:28891 cp/parser.cc:50089 #, gcc-internal-format msgid "" "invalid OpenMP directive name in %qs clause argument: declarative, " "informational, and meta directives not permitted" msgstr "" -#: c/c-parser.cc:28899 cp/parser.cc:50092 +#: c/c-parser.cc:28899 cp/parser.cc:50097 #, gcc-internal-format msgid "unknown OpenMP directive name in %qs clause argument" msgstr "" -#: c/c-parser.cc:28906 cp/parser.cc:50099 +#: c/c-parser.cc:28906 cp/parser.cc:50104 #, gcc-internal-format msgid "" "%<%s%s%s%s%s%> directive mentioned in both %<absent%> and %<contains%> " "clauses" msgstr "" -#: c/c-parser.cc:28917 cp/parser.cc:50110 +#: c/c-parser.cc:28917 cp/parser.cc:50115 #, gcc-internal-format msgid "%<%s%s%s%s%s%> directive mentioned multiple times in %qs clauses" msgstr "" -#: c/c-parser.cc:28940 cp/parser.cc:50137 +#: c/c-parser.cc:28940 cp/parser.cc:50142 #, gcc-internal-format msgid "unknown assumption clause %qs" msgstr "" -#: c/c-parser.cc:28953 cp/parser.cc:50147 +#: c/c-parser.cc:28953 cp/parser.cc:50152 #, gcc-internal-format msgid "expected assumption clause" msgstr "" -#: c/c-parser.cc:29082 cp/parser.cc:51390 +#: c/c-parser.cc:29082 cp/parser.cc:51395 #, gcc-internal-format msgid "expected %<when%>, %<otherwise%>, or %<default%> clause" msgstr "" -#: c/c-parser.cc:29096 cp/parser.cc:51405 +#: c/c-parser.cc:29096 cp/parser.cc:51410 #, gcc-internal-format msgid "too many %<otherwise%> or %<default%> clauses in %<metadirective%>" msgstr "" -#: c/c-parser.cc:29105 cp/parser.cc:51415 +#: c/c-parser.cc:29105 cp/parser.cc:51420 #, gcc-internal-format msgid "" "%<otherwise%> or %<default%> clause must appear last in %<metadirective%>" msgstr "" -#: c/c-parser.cc:29195 cp/parser.cc:51506 +#: c/c-parser.cc:29195 cp/parser.cc:51511 #, gcc-internal-format msgid "unknown directive name" msgstr "" -#: c/c-parser.cc:29210 cp/parser.cc:51526 +#: c/c-parser.cc:29210 cp/parser.cc:51531 #, gcc-internal-format msgid "metadirectives cannot be used as variants of a %<metadirective%>" msgstr "" -#: c/c-parser.cc:29216 cp/parser.cc:51532 +#: c/c-parser.cc:29216 cp/parser.cc:51537 #, gcc-internal-format msgid "declarative directive variants of a %<metadirective%> are not supported" msgstr "" -#: c/c-parser.cc:29541 cp/semantics.cc:10340 +#: c/c-parser.cc:29541 cp/semantics.cc:10354 #, gcc-internal-format msgid "%qE declared %<threadprivate%> after first use" msgstr "" -#: c/c-parser.cc:29543 cp/semantics.cc:10342 +#: c/c-parser.cc:29543 cp/semantics.cc:10356 #, gcc-internal-format msgid "automatic variable %qE cannot be %<threadprivate%>" msgstr "" -#: c/c-parser.cc:29547 cp/semantics.cc:10344 +#: c/c-parser.cc:29547 cp/semantics.cc:10358 #, gcc-internal-format msgid "%<threadprivate%> %qE has incomplete type" msgstr "" -#: c/c-parser.cc:29727 cp/parser.cc:53315 +#: c/c-parser.cc:29727 cp/parser.cc:53320 #, gcc-internal-format msgid "%<__transaction_cancel%> without transactional memory support enabled" msgstr "" -#: c/c-parser.cc:29733 cp/parser.cc:53321 +#: c/c-parser.cc:29733 cp/parser.cc:53326 #, gcc-internal-format msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>" msgstr "" @@ -53231,7 +53232,7 @@ msgid "" "a %<transaction_may_cancel_outer%> function" msgstr "" -#: c/c-parser.cc:29750 cp/parser.cc:53339 +#: c/c-parser.cc:29750 cp/parser.cc:53344 #, gcc-internal-format msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>" msgstr "" @@ -53246,7 +53247,7 @@ msgstr "" msgid "%qD has an incomplete type %qT" msgstr "" -#: c/c-typeck.cc:252 c/c-typeck.cc:12528 c/c-typeck.cc:12603 cp/call.cc:5062 +#: c/c-typeck.cc:252 c/c-typeck.cc:12542 c/c-typeck.cc:12617 cp/call.cc:5062 #, gcc-internal-format msgid "invalid use of void expression" msgstr "" @@ -53282,153 +53283,153 @@ msgstr "" msgid "%qs attribute can only be applied to variadic functions" msgstr "" -#: c/c-typeck.cc:938 c/c-typeck.cc:961 +#: c/c-typeck.cc:958 c/c-typeck.cc:981 #, gcc-internal-format msgid "function types not truly compatible in ISO C" msgstr "" -#: c/c-typeck.cc:1117 +#: c/c-typeck.cc:1137 #, gcc-internal-format msgid "cannot mix operands of decimal floating and vector types" msgstr "" -#: c/c-typeck.cc:1122 +#: c/c-typeck.cc:1142 #, gcc-internal-format msgid "cannot mix operands of decimal floating and complex types" msgstr "" -#: c/c-typeck.cc:1127 +#: c/c-typeck.cc:1147 #, gcc-internal-format msgid "cannot mix operands of decimal floating and other floating types" msgstr "" -#: c/c-typeck.cc:1157 +#: c/c-typeck.cc:1177 #, gcc-internal-format msgid "%<_Complex _BitInt(%d)%> unsupported" msgstr "" -#: c/c-typeck.cc:1785 +#: c/c-typeck.cc:1805 #, gcc-internal-format msgid "" "invalid use of pointers to arrays with different qualifiers in ISO C before " "C23" msgstr "" -#: c/c-typeck.cc:1789 +#: c/c-typeck.cc:1809 #, gcc-internal-format msgid "types are not quite compatible" msgstr "" -#: c/c-typeck.cc:1793 +#: c/c-typeck.cc:1813 #, gcc-internal-format msgid "pointer target types incompatible in C++" msgstr "" -#: c/c-typeck.cc:2024 +#: c/c-typeck.cc:2034 #, gcc-internal-format msgid "function return types not compatible due to %<volatile%>" msgstr "" -#: c/c-typeck.cc:2274 +#: c/c-typeck.cc:2284 #, gcc-internal-format msgid "" "converting an array compound literal to a pointer leads to a dangling " "pointer in C++" msgstr "" -#: c/c-typeck.cc:3095 c/c-typeck.cc:10679 +#: c/c-typeck.cc:3109 c/c-typeck.cc:10693 #, gcc-internal-format msgid "%qT has no member named %qE; did you mean %qE?" msgstr "" -#: c/c-typeck.cc:3099 c/c-typeck.cc:10683 +#: c/c-typeck.cc:3113 c/c-typeck.cc:10697 #, gcc-internal-format msgid "%qT has no member named %qE" msgstr "" -#: c/c-typeck.cc:3108 +#: c/c-typeck.cc:3122 #, gcc-internal-format msgid "accessing a member %qE of an atomic structure %qE" msgstr "" -#: c/c-typeck.cc:3111 +#: c/c-typeck.cc:3125 #, gcc-internal-format msgid "accessing a member %qE of an atomic union %qE" msgstr "" -#: c/c-typeck.cc:3181 +#: c/c-typeck.cc:3195 #, gcc-internal-format msgid "" "%qE is a pointer to pointer; did you mean to dereference it before applying " "%<->%> to it?" msgstr "" -#: c/c-typeck.cc:3190 +#: c/c-typeck.cc:3204 #, gcc-internal-format msgid "%qE is a pointer; did you mean to use %<->%>?" msgstr "" -#: c/c-typeck.cc:3197 +#: c/c-typeck.cc:3211 #, gcc-internal-format msgid "request for member %qE in something not a structure or union" msgstr "" -#: c/c-typeck.cc:3245 +#: c/c-typeck.cc:3259 #, gcc-internal-format msgid "dereferencing %<void *%> pointer" msgstr "" -#: c/c-typeck.cc:3300 +#: c/c-typeck.cc:3314 #, gcc-internal-format msgid "subscripted value is neither array nor pointer nor vector" msgstr "" -#: c/c-typeck.cc:3310 cp/typeck.cc:4035 cp/typeck.cc:4130 +#: c/c-typeck.cc:3324 cp/typeck.cc:4035 cp/typeck.cc:4130 #, gcc-internal-format msgid "array subscript is not an integer" msgstr "" -#: c/c-typeck.cc:3316 +#: c/c-typeck.cc:3330 #, gcc-internal-format msgid "subscripted value is pointer to function" msgstr "" -#: c/c-typeck.cc:3371 +#: c/c-typeck.cc:3385 #, gcc-internal-format msgid "ISO C forbids subscripting %<register%> array" msgstr "" -#: c/c-typeck.cc:3374 +#: c/c-typeck.cc:3388 #, gcc-internal-format msgid "ISO C90 forbids subscripting non-lvalue array" msgstr "" -#: c/c-typeck.cc:3493 +#: c/c-typeck.cc:3507 #, gcc-internal-format msgid "underspecified %qD referenced in its initializer" msgstr "" -#: c/c-typeck.cc:3548 +#: c/c-typeck.cc:3562 #, gcc-internal-format msgid "enum constant defined here" msgstr "" -#: c/c-typeck.cc:3656 cp/typeck.cc:2162 +#: c/c-typeck.cc:3670 cp/typeck.cc:2162 #, gcc-internal-format msgid "%<sizeof%> on array function parameter %qE will return size of %qT" msgstr "" -#: c/c-typeck.cc:3841 +#: c/c-typeck.cc:3855 #, gcc-internal-format msgid "called object %qE is not a function or function pointer" msgstr "" -#: c/c-typeck.cc:3847 +#: c/c-typeck.cc:3861 #, gcc-internal-format msgid "called object %qD is not a function or function pointer" msgstr "" -#: c/c-typeck.cc:3853 +#: c/c-typeck.cc:3867 #, gcc-internal-format msgid "called object is not a function or function pointer" msgstr "" @@ -53436,1882 +53437,1882 @@ msgstr "" #. This situation leads to run-time undefined behavior. We can't, #. therefore, simply error unless we can prove that all possible #. executions of the program must execute the code. -#: c/c-typeck.cc:3882 +#: c/c-typeck.cc:3896 #, gcc-internal-format msgid "function called through a non-compatible type" msgstr "" -#: c/c-typeck.cc:3887 c/c-typeck.cc:3943 +#: c/c-typeck.cc:3901 c/c-typeck.cc:3957 #, gcc-internal-format msgid "function with qualified void return type called" msgstr "" -#: c/c-typeck.cc:3998 +#: c/c-typeck.cc:4012 #, gcc-internal-format, gfc-internal-format msgid "type of formal parameter %d is incomplete" msgstr "" -#: c/c-typeck.cc:4010 +#: c/c-typeck.cc:4024 #, gcc-internal-format msgid "" "passing argument %d of %qE as integer rather than floating due to prototype" msgstr "" -#: c/c-typeck.cc:4016 +#: c/c-typeck.cc:4030 #, gcc-internal-format msgid "" "passing argument %d of %qE as integer rather than complex due to prototype" msgstr "" -#: c/c-typeck.cc:4022 +#: c/c-typeck.cc:4036 #, gcc-internal-format msgid "" "passing argument %d of %qE as complex rather than floating due to prototype" msgstr "" -#: c/c-typeck.cc:4028 +#: c/c-typeck.cc:4042 #, gcc-internal-format msgid "" "passing argument %d of %qE as floating rather than integer due to prototype" msgstr "" -#: c/c-typeck.cc:4034 +#: c/c-typeck.cc:4048 #, gcc-internal-format msgid "" "passing argument %d of %qE as complex rather than integer due to prototype" msgstr "" -#: c/c-typeck.cc:4040 +#: c/c-typeck.cc:4054 #, gcc-internal-format msgid "" "passing argument %d of %qE as floating rather than complex due to prototype" msgstr "" -#: c/c-typeck.cc:4056 +#: c/c-typeck.cc:4070 #, gcc-internal-format msgid "" "passing argument %d of %qE as %<float%> rather than %<double%> due to " "prototype" msgstr "" -#: c/c-typeck.cc:4082 +#: c/c-typeck.cc:4096 #, gcc-internal-format msgid "passing argument %d of %qE as %qT rather than %qT due to prototype" msgstr "" -#: c/c-typeck.cc:4108 +#: c/c-typeck.cc:4122 #, gcc-internal-format msgid "passing argument %d of %qE with different width due to prototype" msgstr "" -#: c/c-typeck.cc:4132 +#: c/c-typeck.cc:4146 #, gcc-internal-format msgid "passing argument %d of %qE as unsigned due to prototype" msgstr "" -#: c/c-typeck.cc:4137 +#: c/c-typeck.cc:4151 #, gcc-internal-format msgid "passing argument %d of %qE as signed due to prototype" msgstr "" -#: c/c-typeck.cc:4311 +#: c/c-typeck.cc:4325 #, gcc-internal-format msgid "too many arguments to method %qE; expected %i, have %i" msgstr "" -#: c/c-typeck.cc:4315 +#: c/c-typeck.cc:4329 #, gcc-internal-format msgid "too many arguments to function %qE; expected %i, have %i" msgstr "" -#: c/c-typeck.cc:4325 +#: c/c-typeck.cc:4339 #, gcc-internal-format msgid "too many arguments to built-in function %qE expecting %d" msgstr "" -#: c/c-typeck.cc:4337 +#: c/c-typeck.cc:4351 #, gcc-internal-format msgid "" "ISO C23 does not allow arguments for method %qE declared without parameters" msgstr "" -#: c/c-typeck.cc:4342 +#: c/c-typeck.cc:4356 #, gcc-internal-format msgid "" "ISO C23 does not allow arguments for function %qE declared without parameters" msgstr "" -#: c/c-typeck.cc:4418 +#: c/c-typeck.cc:4432 #, gcc-internal-format msgid "implicit conversion from %qT to %qT when passing argument to function" msgstr "" -#: c/c-typeck.cc:4499 +#: c/c-typeck.cc:4513 #, gcc-internal-format msgid "too few arguments to function %qE; expected at least %i, have %i" msgstr "" -#: c/c-typeck.cc:4500 +#: c/c-typeck.cc:4514 #, gcc-internal-format msgid "too few arguments to function %qE; expected %i, have %i" msgstr "" -#: c/c-typeck.cc:4514 +#: c/c-typeck.cc:4528 #, gcc-internal-format msgid "too few arguments to built-in function %qE expecting %u" msgstr "" -#: c/c-typeck.cc:4692 c/c-typeck.cc:4720 cp/typeck.cc:5849 cp/typeck.cc:6137 +#: c/c-typeck.cc:4706 c/c-typeck.cc:4734 cp/typeck.cc:5849 cp/typeck.cc:6137 #, gcc-internal-format msgid "comparison with string literal results in unspecified behavior" msgstr "" -#: c/c-typeck.cc:4700 c/c-typeck.cc:4711 cp/typeck.cc:5886 cp/typeck.cc:5910 +#: c/c-typeck.cc:4714 c/c-typeck.cc:4725 cp/typeck.cc:5886 cp/typeck.cc:5910 #, gcc-internal-format msgid "comparison between pointer and zero character constant" msgstr "" -#: c/c-typeck.cc:4703 c/c-typeck.cc:4714 cp/typeck.cc:5889 cp/typeck.cc:5913 +#: c/c-typeck.cc:4717 c/c-typeck.cc:4728 cp/typeck.cc:5889 cp/typeck.cc:5913 #, gcc-internal-format msgid "did you mean to dereference the pointer?" msgstr "" -#: c/c-typeck.cc:4732 c/c-typeck.cc:4739 c/c-typeck.cc:6116 c/c-typeck.cc:6121 -#: c/c-typeck.cc:8669 cp/tree.cc:6464 +#: c/c-typeck.cc:4746 c/c-typeck.cc:4753 c/c-typeck.cc:6130 c/c-typeck.cc:6135 +#: c/c-typeck.cc:8683 cp/tree.cc:6464 #, gcc-internal-format msgid "zero as null pointer constant" msgstr "" -#: c/c-typeck.cc:4760 +#: c/c-typeck.cc:4774 #, gcc-internal-format msgid "comparison between %qT and %qT" msgstr "" -#: c/c-typeck.cc:4819 +#: c/c-typeck.cc:4833 #, gcc-internal-format msgid "pointer of type %<void *%> used in subtraction" msgstr "" -#: c/c-typeck.cc:4822 +#: c/c-typeck.cc:4836 #, gcc-internal-format msgid "pointer to a function used in subtraction" msgstr "" -#: c/c-typeck.cc:4856 +#: c/c-typeck.cc:4870 #, gcc-internal-format msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c/c-typeck.cc:4865 cp/typeck.cc:6937 +#: c/c-typeck.cc:4879 cp/typeck.cc:6937 #, gcc-internal-format msgid "arithmetic on pointer to an empty aggregate" msgstr "" -#: c/c-typeck.cc:5314 +#: c/c-typeck.cc:5328 #, gcc-internal-format msgid "%<~%> on a boolean expression" msgstr "" -#: c/c-typeck.cc:5318 +#: c/c-typeck.cc:5332 #, gcc-internal-format msgid "did you mean to use logical not?" msgstr "" -#: c/c-typeck.cc:5328 +#: c/c-typeck.cc:5342 #, gcc-internal-format msgid "ISO C does not support %<~%> for complex conjugation" msgstr "" -#: c/c-typeck.cc:5352 +#: c/c-typeck.cc:5366 #, gcc-internal-format msgid "wrong type argument to absu" msgstr "" -#: c/c-typeck.cc:5378 +#: c/c-typeck.cc:5392 #, gcc-internal-format msgid "wrong type argument to unary exclamation mark" msgstr "" -#: c/c-typeck.cc:5436 +#: c/c-typeck.cc:5450 #, gcc-internal-format msgid "increment of enumeration value is invalid in C++" msgstr "" -#: c/c-typeck.cc:5439 +#: c/c-typeck.cc:5453 #, gcc-internal-format msgid "decrement of enumeration value is invalid in C++" msgstr "" -#: c/c-typeck.cc:5446 +#: c/c-typeck.cc:5460 #, gcc-internal-format msgid "increment of a boolean expression" msgstr "" -#: c/c-typeck.cc:5449 +#: c/c-typeck.cc:5463 #, gcc-internal-format msgid "decrement of a boolean expression" msgstr "" -#: c/c-typeck.cc:5465 +#: c/c-typeck.cc:5479 #, gcc-internal-format msgid "ISO C does not support %<++%> and %<--%> on complex types before C2Y" msgstr "" -#: c/c-typeck.cc:5492 c/c-typeck.cc:5526 +#: c/c-typeck.cc:5506 c/c-typeck.cc:5540 #, gcc-internal-format msgid "wrong type argument to increment" msgstr "" -#: c/c-typeck.cc:5494 c/c-typeck.cc:5529 +#: c/c-typeck.cc:5508 c/c-typeck.cc:5543 #, gcc-internal-format msgid "wrong type argument to decrement" msgstr "" -#: c/c-typeck.cc:5514 +#: c/c-typeck.cc:5528 #, gcc-internal-format msgid "increment of pointer to an incomplete type %qT" msgstr "" -#: c/c-typeck.cc:5518 +#: c/c-typeck.cc:5532 #, gcc-internal-format msgid "decrement of pointer to an incomplete type %qT" msgstr "" -#: c/c-typeck.cc:5626 +#: c/c-typeck.cc:5640 #, gcc-internal-format msgid "taking address of expression of type %<void%>" msgstr "" -#: c/c-typeck.cc:5689 c/c-typeck.cc:5885 +#: c/c-typeck.cc:5703 c/c-typeck.cc:5899 #, gcc-internal-format msgid "cannot take address of bit-field %qD" msgstr "" -#: c/c-typeck.cc:5703 +#: c/c-typeck.cc:5717 #, gcc-internal-format msgid "cannot take address of scalar with reverse storage order" msgstr "" -#: c/c-typeck.cc:5711 +#: c/c-typeck.cc:5725 #, gcc-internal-format msgid "address of array with reverse scalar storage order requested" msgstr "" -#: c/c-typeck.cc:5900 +#: c/c-typeck.cc:5914 #, gcc-internal-format msgid "address of register compound literal requested" msgstr "" -#: c/c-typeck.cc:5921 +#: c/c-typeck.cc:5935 #, gcc-internal-format msgid "global register variable %qD used in nested function" msgstr "" -#: c/c-typeck.cc:5924 +#: c/c-typeck.cc:5938 #, gcc-internal-format msgid "register variable %qD used in nested function" msgstr "" -#: c/c-typeck.cc:5929 +#: c/c-typeck.cc:5943 #, gcc-internal-format msgid "address of global register variable %qD requested" msgstr "" -#: c/c-typeck.cc:5931 d/d-codegen.cc:761 +#: c/c-typeck.cc:5945 d/d-codegen.cc:761 #, gcc-internal-format msgid "address of register variable %qD requested" msgstr "" -#: c/c-typeck.cc:6070 +#: c/c-typeck.cc:6084 #, gcc-internal-format msgid "non-lvalue array in conditional expression" msgstr "" -#: c/c-typeck.cc:6166 +#: c/c-typeck.cc:6180 #, gcc-internal-format msgid "" "implicit conversion from %qT to %qT to match other result of conditional" msgstr "" -#: c/c-typeck.cc:6225 c/c-typeck.cc:6231 +#: c/c-typeck.cc:6239 c/c-typeck.cc:6245 #, gcc-internal-format msgid "" "operand of %<?:%> changes signedness from %qT to %qT due to unsignedness of " "other operand" msgstr "" -#: c/c-typeck.cc:6248 +#: c/c-typeck.cc:6262 #, gcc-internal-format msgid "ISO C forbids conditional expr with only one void side" msgstr "" -#: c/c-typeck.cc:6265 +#: c/c-typeck.cc:6279 #, gcc-internal-format msgid "pointers to disjoint address spaces used in conditional expression" msgstr "" -#: c/c-typeck.cc:6289 +#: c/c-typeck.cc:6303 #, gcc-internal-format msgid "pointer to array loses qualifier in conditional expression" msgstr "" -#: c/c-typeck.cc:6293 +#: c/c-typeck.cc:6307 #, gcc-internal-format msgid "" "pointer to array loses qualifier in conditional expression in ISO C before " "C23" msgstr "" -#: c/c-typeck.cc:6298 +#: c/c-typeck.cc:6312 #, gcc-internal-format msgid "ISO C forbids conditional expr between %<void *%> and function pointer" msgstr "" -#: c/c-typeck.cc:6320 +#: c/c-typeck.cc:6334 #, gcc-internal-format msgid "pointer type mismatch in conditional expression" msgstr "" -#: c/c-typeck.cc:6323 +#: c/c-typeck.cc:6337 #, gcc-internal-format msgid "first expression has type %qT" msgstr "" -#: c/c-typeck.cc:6324 +#: c/c-typeck.cc:6338 #, gcc-internal-format msgid "second expression has type %qT" msgstr "" -#: c/c-typeck.cc:6335 c/c-typeck.cc:6348 +#: c/c-typeck.cc:6349 c/c-typeck.cc:6362 #, gcc-internal-format msgid "pointer/integer type mismatch in conditional expression" msgstr "" -#: c/c-typeck.cc:6375 +#: c/c-typeck.cc:6389 #, gcc-internal-format msgid "type mismatch in conditional expression" msgstr "" -#: c/c-typeck.cc:6491 +#: c/c-typeck.cc:6505 #, gcc-internal-format msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>: %E" msgstr "" -#: c/c-typeck.cc:6495 +#: c/c-typeck.cc:6509 #, gcc-internal-format msgid "ignoring return value of %qD, declared with attribute %<nodiscard%>" msgstr "" -#: c/c-typeck.cc:6514 +#: c/c-typeck.cc:6528 #, gcc-internal-format msgid "" "ignoring return value of type %qT, declared with attribute %<nodiscard%>: %E" msgstr "" -#: c/c-typeck.cc:6519 +#: c/c-typeck.cc:6533 #, gcc-internal-format msgid "" "ignoring return value of type %qT, declared with attribute %<nodiscard%>" msgstr "" -#: c/c-typeck.cc:6528 cp/cvt.cc:1132 rust/backend/rust-tree.cc:640 +#: c/c-typeck.cc:6542 cp/cvt.cc:1132 rust/backend/rust-tree.cc:640 #, gcc-internal-format msgid "in call to %qD, declared here" msgstr "" -#: c/c-typeck.cc:6577 +#: c/c-typeck.cc:6591 #, gcc-internal-format msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c/c-typeck.cc:6595 c/c-typeck.cc:13195 +#: c/c-typeck.cc:6609 c/c-typeck.cc:13209 #, gcc-internal-format msgid "right-hand operand of comma expression has no effect" msgstr "" -#: c/c-typeck.cc:6666 +#: c/c-typeck.cc:6680 msgid "cast adds %q#v qualifier to function type" msgstr "" -#: c/c-typeck.cc:6672 +#: c/c-typeck.cc:6686 msgid "cast discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.cc:6707 +#: c/c-typeck.cc:6721 #, gcc-internal-format msgid "" "to be safe all intermediate pointers in cast from %qT to %qT must be " "%<const%> qualified" msgstr "" -#: c/c-typeck.cc:6804 +#: c/c-typeck.cc:6818 #, gcc-internal-format msgid "cast specifies array type" msgstr "" -#: c/c-typeck.cc:6810 +#: c/c-typeck.cc:6824 #, gcc-internal-format msgid "cast specifies function type" msgstr "" -#: c/c-typeck.cc:6825 +#: c/c-typeck.cc:6839 #, gcc-internal-format msgid "ISO C forbids casting nonscalar to the same type" msgstr "" -#: c/c-typeck.cc:6829 +#: c/c-typeck.cc:6843 #, gcc-internal-format msgid "useless cast to type %qT" msgstr "" -#: c/c-typeck.cc:6849 +#: c/c-typeck.cc:6863 #, gcc-internal-format msgid "ISO C forbids casts to union type" msgstr "" -#: c/c-typeck.cc:6859 +#: c/c-typeck.cc:6873 #, gcc-internal-format msgid "cast to union type from type not present in union" msgstr "" -#: c/c-typeck.cc:6894 +#: c/c-typeck.cc:6908 #, gcc-internal-format msgid "" "cast to %qs address space pointer from disjoint generic address space pointer" msgstr "" -#: c/c-typeck.cc:6899 +#: c/c-typeck.cc:6913 #, gcc-internal-format msgid "" "cast to generic address space pointer from disjoint %qs address space pointer" msgstr "" -#: c/c-typeck.cc:6904 +#: c/c-typeck.cc:6918 #, gcc-internal-format msgid "" "cast to %qs address space pointer from disjoint %qs address space pointer" msgstr "" -#: c/c-typeck.cc:6937 +#: c/c-typeck.cc:6951 #, gcc-internal-format msgid "cast increases required alignment of target type" msgstr "" -#: c/c-typeck.cc:6949 +#: c/c-typeck.cc:6963 #, gcc-internal-format msgid "cast from pointer to integer of different size" msgstr "" -#: c/c-typeck.cc:6954 +#: c/c-typeck.cc:6968 #, gcc-internal-format msgid "cast from function call of type %qT to non-matching type %qT" msgstr "" -#: c/c-typeck.cc:6964 cp/typeck.cc:9383 +#: c/c-typeck.cc:6978 cp/typeck.cc:9383 #, gcc-internal-format msgid "cast to pointer from integer of different size" msgstr "" -#: c/c-typeck.cc:6978 +#: c/c-typeck.cc:6992 #, gcc-internal-format msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "" -#: c/c-typeck.cc:6987 +#: c/c-typeck.cc:7001 #, gcc-internal-format msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "" -#: c/c-typeck.cc:6997 +#: c/c-typeck.cc:7011 #, gcc-internal-format msgid "cast between incompatible function types from %qT to %qT" msgstr "" -#: c/c-typeck.cc:7112 +#: c/c-typeck.cc:7126 #, gcc-internal-format msgid "defining a type in a cast is invalid in C++" msgstr "" -#: c/c-typeck.cc:7154 +#: c/c-typeck.cc:7168 #, gcc-internal-format msgid "assignment to expression with array type" msgstr "" -#: c/c-typeck.cc:7280 +#: c/c-typeck.cc:7294 #, gcc-internal-format msgid "enum conversion in assignment is invalid in C++" msgstr "" -#: c/c-typeck.cc:7482 c/c-typeck.cc:7501 c/c-typeck.cc:7558 +#: c/c-typeck.cc:7496 c/c-typeck.cc:7515 c/c-typeck.cc:7572 #, gcc-internal-format msgid "(near initialization for %qs)" msgstr "" -#: c/c-typeck.cc:7574 +#: c/c-typeck.cc:7588 #, gcc-internal-format msgid "array initialized from parenthesized string constant" msgstr "" -#: c/c-typeck.cc:7624 +#: c/c-typeck.cc:7638 msgid "expected %e but argument is of type %e" msgstr "" -#: c/c-typeck.cc:7658 +#: c/c-typeck.cc:7672 #, gcc-internal-format msgid "" "%qD argument %d type is %qT where %qT is expected in a call to built-in " "function declared without prototype" msgstr "" -#: c/c-typeck.cc:7661 +#: c/c-typeck.cc:7675 #, gcc-internal-format msgid "" "%qD argument %d promotes to %qT where %qT is expected in a call to built-in " "function declared without prototype" msgstr "" -#: c/c-typeck.cc:7666 +#: c/c-typeck.cc:7680 #, gcc-internal-format msgid "built-in %qD declared here" msgstr "" -#: c/c-typeck.cc:7723 c/c-typeck.cc:8631 +#: c/c-typeck.cc:7737 c/c-typeck.cc:8645 msgid "%e declared here" msgstr "" -#: c/c-typeck.cc:7916 +#: c/c-typeck.cc:7930 #, gcc-internal-format msgid "enum conversion when passing argument %d of %qE is invalid in C++" msgstr "" -#: c/c-typeck.cc:7921 +#: c/c-typeck.cc:7935 #, gcc-internal-format msgid "expected %qT but argument is of type %qT" msgstr "" -#: c/c-typeck.cc:7925 +#: c/c-typeck.cc:7939 #, gcc-internal-format msgid "enum conversion from %qT to %qT in assignment is invalid in C++" msgstr "" -#: c/c-typeck.cc:7930 +#: c/c-typeck.cc:7944 #, gcc-internal-format msgid "enum conversion from %qT to %qT in initialization is invalid in C++" msgstr "" -#: c/c-typeck.cc:7935 +#: c/c-typeck.cc:7949 #, gcc-internal-format msgid "enum conversion from %qT to %qT in return is invalid in C++" msgstr "" -#: c/c-typeck.cc:7953 +#: c/c-typeck.cc:7967 #, gcc-internal-format msgid "implicit conversion from %qT to %qT" msgstr "" -#: c/c-typeck.cc:8135 c/c-typeck.cc:8534 +#: c/c-typeck.cc:8149 c/c-typeck.cc:8548 msgid "" "passing argument %d of %qE makes %q#v qualified function pointer from " "unqualified" msgstr "" -#: c/c-typeck.cc:8138 c/c-typeck.cc:8537 +#: c/c-typeck.cc:8152 c/c-typeck.cc:8551 msgid "assignment makes %q#v qualified function pointer from unqualified" msgstr "" -#: c/c-typeck.cc:8141 c/c-typeck.cc:8539 +#: c/c-typeck.cc:8155 c/c-typeck.cc:8553 msgid "initialization makes %q#v qualified function pointer from unqualified" msgstr "" -#: c/c-typeck.cc:8144 c/c-typeck.cc:8541 +#: c/c-typeck.cc:8158 c/c-typeck.cc:8555 msgid "return makes %q#v qualified function pointer from unqualified" msgstr "" -#: c/c-typeck.cc:8152 c/c-typeck.cc:8424 c/c-typeck.cc:8467 +#: c/c-typeck.cc:8166 c/c-typeck.cc:8438 c/c-typeck.cc:8481 msgid "" "passing argument %d of %qE discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.cc:8154 c/c-typeck.cc:8426 c/c-typeck.cc:8469 +#: c/c-typeck.cc:8168 c/c-typeck.cc:8440 c/c-typeck.cc:8483 msgid "assignment discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.cc:8156 c/c-typeck.cc:8428 c/c-typeck.cc:8471 +#: c/c-typeck.cc:8170 c/c-typeck.cc:8442 c/c-typeck.cc:8485 msgid "initialization discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.cc:8158 c/c-typeck.cc:8430 c/c-typeck.cc:8473 +#: c/c-typeck.cc:8172 c/c-typeck.cc:8444 c/c-typeck.cc:8487 msgid "return discards %qv qualifier from pointer target type" msgstr "" -#: c/c-typeck.cc:8167 +#: c/c-typeck.cc:8181 #, gcc-internal-format msgid "ISO C prohibits argument conversion to union type" msgstr "" -#: c/c-typeck.cc:8235 +#: c/c-typeck.cc:8249 #, gcc-internal-format msgid "request for implicit conversion from %qT to %qT not permitted in C++" msgstr "" -#: c/c-typeck.cc:8262 +#: c/c-typeck.cc:8276 #, gcc-internal-format msgid "passing argument %d of %qE from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.cc:8273 +#: c/c-typeck.cc:8287 #, gcc-internal-format msgid "assignment from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.cc:8284 +#: c/c-typeck.cc:8298 #, gcc-internal-format msgid "initialization from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.cc:8294 +#: c/c-typeck.cc:8308 #, gcc-internal-format msgid "return from pointer to non-enclosed address space" msgstr "" -#: c/c-typeck.cc:8310 +#: c/c-typeck.cc:8324 #, gcc-internal-format msgid "expected %qT but pointer is of type %qT" msgstr "" -#: c/c-typeck.cc:8325 +#: c/c-typeck.cc:8339 #, gcc-internal-format msgid "argument %d of %qE might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.cc:8331 +#: c/c-typeck.cc:8345 #, gcc-internal-format msgid "assignment left-hand side might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.cc:8337 +#: c/c-typeck.cc:8351 #, gcc-internal-format msgid "" "initialization left-hand side might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.cc:8342 cp/typeck.cc:10559 +#: c/c-typeck.cc:8356 cp/typeck.cc:10559 #, gcc-internal-format msgid "return type might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.cc:8366 +#: c/c-typeck.cc:8380 #, gcc-internal-format msgid "passing argument %d of %qE from incompatible scalar storage order" msgstr "" -#: c/c-typeck.cc:8376 +#: c/c-typeck.cc:8390 #, gcc-internal-format msgid "" "assignment to %qT from pointer type %qT with incompatible scalar storage " "order" msgstr "" -#: c/c-typeck.cc:8386 +#: c/c-typeck.cc:8400 #, gcc-internal-format msgid "" "initialization of %qT from pointer type %qT with incompatible scalar storage " "order" msgstr "" -#: c/c-typeck.cc:8391 +#: c/c-typeck.cc:8405 #, gcc-internal-format msgid "" "returning %qT from pointer type with incompatible scalar storage order %qT" msgstr "" -#: c/c-typeck.cc:8441 +#: c/c-typeck.cc:8455 #, gcc-internal-format msgid "" "ISO C forbids passing argument %d of %qE between function pointer and %<void " "*%>" msgstr "" -#: c/c-typeck.cc:8444 +#: c/c-typeck.cc:8458 #, gcc-internal-format msgid "ISO C forbids assignment between function pointer and %<void *%>" msgstr "" -#: c/c-typeck.cc:8446 +#: c/c-typeck.cc:8460 #, gcc-internal-format msgid "ISO C forbids initialization between function pointer and %<void *%>" msgstr "" -#: c/c-typeck.cc:8448 +#: c/c-typeck.cc:8462 #, gcc-internal-format msgid "ISO C forbids return between function pointer and %<void *%>" msgstr "" -#: c/c-typeck.cc:8478 +#: c/c-typeck.cc:8492 #, gcc-internal-format msgid "array with qualifier on the element is not qualified before C23" msgstr "" -#: c/c-typeck.cc:8496 +#: c/c-typeck.cc:8510 #, gcc-internal-format msgid "pointer targets in passing argument %d of %qE differ in signedness" msgstr "" -#: c/c-typeck.cc:8504 +#: c/c-typeck.cc:8518 #, gcc-internal-format msgid "pointer targets in assignment from %qT to %qT differ in signedness" msgstr "" -#: c/c-typeck.cc:8510 +#: c/c-typeck.cc:8524 #, gcc-internal-format msgid "pointer targets in initialization of %qT from %qT differ in signedness" msgstr "" -#: c/c-typeck.cc:8515 +#: c/c-typeck.cc:8529 #, gcc-internal-format msgid "" "pointer targets in returning %qT from a function with return type %qT differ " "in signedness" msgstr "" -#: c/c-typeck.cc:8562 +#: c/c-typeck.cc:8576 #, gcc-internal-format msgid "passing argument %d of %qE from incompatible pointer type" msgstr "" -#: c/c-typeck.cc:8573 +#: c/c-typeck.cc:8587 msgid "assignment to %e from pointer to %qD with incompatible type %e" msgstr "" -#: c/c-typeck.cc:8579 +#: c/c-typeck.cc:8593 msgid "assignment to %e from incompatible pointer type %e" msgstr "" -#: c/c-typeck.cc:8588 +#: c/c-typeck.cc:8602 msgid "initialization of %e from pointer to %qD with incompatible type %e" msgstr "" -#: c/c-typeck.cc:8594 +#: c/c-typeck.cc:8608 msgid "initialization of %e from incompatible pointer type %e" msgstr "" -#: c/c-typeck.cc:8602 +#: c/c-typeck.cc:8616 msgid "" "returning pointer to %qD of type %e from a function with incompatible type %e" msgstr "" -#: c/c-typeck.cc:8608 +#: c/c-typeck.cc:8622 msgid "returning %e from a function with incompatible return type %e" msgstr "" -#: c/c-typeck.cc:8684 +#: c/c-typeck.cc:8698 #, gcc-internal-format msgid "passing argument %d of %qE makes pointer from integer without a cast" msgstr "" -#: c/c-typeck.cc:8694 +#: c/c-typeck.cc:8708 #, gcc-internal-format msgid "assignment to %qT from %qT makes pointer from integer without a cast" msgstr "" -#: c/c-typeck.cc:8700 +#: c/c-typeck.cc:8714 #, gcc-internal-format msgid "" "initialization of %qT from %qT makes pointer from integer without a cast" msgstr "" -#: c/c-typeck.cc:8705 +#: c/c-typeck.cc:8719 #, gcc-internal-format msgid "" "returning %qT from a function with return type %qT makes pointer from " "integer without a cast" msgstr "" -#: c/c-typeck.cc:8727 +#: c/c-typeck.cc:8741 #, gcc-internal-format msgid "passing argument %d of %qE makes integer from pointer without a cast" msgstr "" -#: c/c-typeck.cc:8737 +#: c/c-typeck.cc:8751 #, gcc-internal-format msgid "assignment to %qT from %qT makes integer from pointer without a cast" msgstr "" -#: c/c-typeck.cc:8743 +#: c/c-typeck.cc:8757 #, gcc-internal-format msgid "" "initialization of %qT from %qT makes integer from pointer without a cast" msgstr "" -#: c/c-typeck.cc:8747 +#: c/c-typeck.cc:8761 #, gcc-internal-format msgid "" "returning %qT from a function with return type %qT makes integer from " "pointer without a cast" msgstr "" -#: c/c-typeck.cc:8780 +#: c/c-typeck.cc:8794 #, gcc-internal-format msgid "incompatible type for argument %d of %qE" msgstr "" -#: c/c-typeck.cc:8791 +#: c/c-typeck.cc:8805 #, gcc-internal-format msgid "incompatible types when assigning to type %qT from type %qT" msgstr "" -#: c/c-typeck.cc:8802 +#: c/c-typeck.cc:8816 #, gcc-internal-format msgid "incompatible types when initializing type %qT using type %qT" msgstr "" -#: c/c-typeck.cc:8812 +#: c/c-typeck.cc:8826 #, gcc-internal-format msgid "incompatible types when returning type %qT but %qT was expected" msgstr "" -#: c/c-typeck.cc:8892 +#: c/c-typeck.cc:8906 #, gcc-internal-format msgid "traditional C rejects automatic aggregate initialization" msgstr "" -#: c/c-typeck.cc:9134 +#: c/c-typeck.cc:9148 #, gcc-internal-format msgid "%<constexpr%> pointer initializer is not null" msgstr "" -#: c/c-typeck.cc:9142 +#: c/c-typeck.cc:9156 #, gcc-internal-format msgid "%<constexpr%> integer initializer is not an integer constant expression" msgstr "" -#: c/c-typeck.cc:9145 c/c-typeck.cc:9207 c/c-typeck.cc:9360 +#: c/c-typeck.cc:9159 c/c-typeck.cc:9221 c/c-typeck.cc:9374 #, gcc-internal-format msgid "%<constexpr%> initializer not representable in type of object" msgstr "" -#: c/c-typeck.cc:9155 +#: c/c-typeck.cc:9169 #, gcc-internal-format msgid "%<constexpr%> initializer is not an arithmetic constant expression" msgstr "" -#: c/c-typeck.cc:9172 +#: c/c-typeck.cc:9186 #, gcc-internal-format msgid "%<constexpr%> initializer for a real type is of complex type" msgstr "" -#: c/c-typeck.cc:9181 +#: c/c-typeck.cc:9195 #, gcc-internal-format msgid "" "%<constexpr%> initializer for a binary floating-point type is of decimal type" msgstr "" -#: c/c-typeck.cc:9325 c/c-typeck.cc:10293 cp/typeck2.cc:1241 +#: c/c-typeck.cc:9339 c/c-typeck.cc:10307 cp/typeck2.cc:1241 #, gcc-internal-format msgid "initialization of a flexible array member" msgstr "" -#: c/c-typeck.cc:9341 cp/typeck2.cc:1258 +#: c/c-typeck.cc:9355 cp/typeck2.cc:1258 #, gcc-internal-format msgid "" "cannot initialize array of %qT from a string literal with type array of %qT" msgstr "" -#: c/c-typeck.cc:9387 +#: c/c-typeck.cc:9401 #, gcc-internal-format msgid "" "initializer-string for array of %qT is too long (%wu chars into %wu " "available)" msgstr "" -#: c/c-typeck.cc:9392 +#: c/c-typeck.cc:9406 #, gcc-internal-format msgid "" "initializer-string for array of %qT is too long for C++ (%wu chars into %wu " "available)" msgstr "" -#: c/c-typeck.cc:9399 +#: c/c-typeck.cc:9413 #, gcc-internal-format msgid "" "initializer-string for array of %qT truncates NUL terminator but destination " "lacks %qs attribute (%wu chars into %wu available)" msgstr "" -#: c/c-typeck.cc:9411 +#: c/c-typeck.cc:9425 #, gcc-internal-format msgid "array of inappropriate type initialized from string constant" msgstr "" -#: c/c-typeck.cc:9479 cp/typeck.cc:2556 +#: c/c-typeck.cc:9493 cp/typeck.cc:2556 #, gcc-internal-format msgid "invalid use of non-lvalue array" msgstr "" -#: c/c-typeck.cc:9493 c/c-typeck.cc:9633 c/c-typeck.cc:10387 +#: c/c-typeck.cc:9507 c/c-typeck.cc:9647 c/c-typeck.cc:10401 #, gcc-internal-format msgid "invalid initializer" msgstr "" -#: c/c-typeck.cc:9505 c/c-typeck.cc:9529 c/c-typeck.cc:9532 c/c-typeck.cc:9540 -#: c/c-typeck.cc:9602 c/c-typeck.cc:11370 c/c-typeck.cc:11454 +#: c/c-typeck.cc:9519 c/c-typeck.cc:9543 c/c-typeck.cc:9546 c/c-typeck.cc:9554 +#: c/c-typeck.cc:9616 c/c-typeck.cc:11384 c/c-typeck.cc:11468 #, gcc-internal-format msgid "initializer element is not constant" msgstr "" -#: c/c-typeck.cc:9514 +#: c/c-typeck.cc:9528 #, gcc-internal-format msgid "array initialized from non-constant array expression" msgstr "" -#: c/c-typeck.cc:9545 c/c-typeck.cc:9615 c/c-typeck.cc:11464 +#: c/c-typeck.cc:9559 c/c-typeck.cc:9629 c/c-typeck.cc:11478 #, gcc-internal-format msgid "initializer element is not a constant expression" msgstr "" -#: c/c-typeck.cc:9567 cp/typeck2.cc:1340 +#: c/c-typeck.cc:9581 cp/typeck2.cc:1340 #, gcc-internal-format msgid "conversion from %qT to %qT changes value from %qd to %qd" msgstr "" -#: c/c-typeck.cc:9609 c/c-typeck.cc:11459 +#: c/c-typeck.cc:9623 c/c-typeck.cc:11473 #, gcc-internal-format msgid "initializer element is not computable at load time" msgstr "" -#: c/c-typeck.cc:9915 cp/decl.cc:7906 +#: c/c-typeck.cc:9929 cp/decl.cc:7908 #, gcc-internal-format msgid "opaque vector types cannot be initialized" msgstr "" -#: c/c-typeck.cc:10141 +#: c/c-typeck.cc:10155 #, gcc-internal-format msgid "extra brace group at end of initializer" msgstr "" -#: c/c-typeck.cc:10225 +#: c/c-typeck.cc:10239 #, gcc-internal-format msgid "braces around scalar initializer" msgstr "" -#: c/c-typeck.cc:10295 c/c-typeck.cc:10299 c/c-typeck.cc:12062 -#: c/c-typeck.cc:12187 cp/typeck2.cc:1268 cp/typeck2.cc:1621 +#: c/c-typeck.cc:10309 c/c-typeck.cc:10313 c/c-typeck.cc:12076 +#: c/c-typeck.cc:12201 cp/typeck2.cc:1268 cp/typeck2.cc:1621 #, gcc-internal-format msgid "initialization of flexible array member in a nested context" msgstr "" -#: c/c-typeck.cc:10336 +#: c/c-typeck.cc:10350 #, gcc-internal-format msgid "missing braces around initializer" msgstr "" -#: c/c-typeck.cc:10359 +#: c/c-typeck.cc:10373 #, gcc-internal-format msgid "missing initializer for field %qD of %qT" msgstr "" -#: c/c-typeck.cc:10399 +#: c/c-typeck.cc:10413 #, gcc-internal-format msgid "extra elements in scalar initializer" msgstr "" -#: c/c-typeck.cc:10521 c/c-typeck.cc:10603 +#: c/c-typeck.cc:10535 c/c-typeck.cc:10617 #, gcc-internal-format msgid "array index in non-array initializer" msgstr "" -#: c/c-typeck.cc:10526 c/c-typeck.cc:10665 +#: c/c-typeck.cc:10540 c/c-typeck.cc:10679 #, gcc-internal-format msgid "field name not in record or union initializer" msgstr "" -#: c/c-typeck.cc:10576 +#: c/c-typeck.cc:10590 #, gcc-internal-format msgid "array index in initializer not of integer type" msgstr "" -#: c/c-typeck.cc:10585 c/c-typeck.cc:10594 +#: c/c-typeck.cc:10599 c/c-typeck.cc:10608 #, gcc-internal-format msgid "array index in initializer is not an integer constant expression" msgstr "" -#: c/c-typeck.cc:10599 c/c-typeck.cc:10601 +#: c/c-typeck.cc:10613 c/c-typeck.cc:10615 #, gcc-internal-format msgid "nonconstant array index in initializer" msgstr "" -#: c/c-typeck.cc:10605 c/c-typeck.cc:10608 +#: c/c-typeck.cc:10619 c/c-typeck.cc:10622 #, gcc-internal-format msgid "array index in initializer exceeds array bounds" msgstr "" -#: c/c-typeck.cc:10627 +#: c/c-typeck.cc:10641 #, gcc-internal-format msgid "empty index range in initializer" msgstr "" -#: c/c-typeck.cc:10636 +#: c/c-typeck.cc:10650 #, gcc-internal-format msgid "array index range in initializer exceeds array bounds" msgstr "" -#: c/c-typeck.cc:10770 c/c-typeck.cc:10825 c/c-typeck.cc:10866 -#: c/c-typeck.cc:10926 c/c-typeck.cc:10973 c/c-typeck.cc:11561 +#: c/c-typeck.cc:10784 c/c-typeck.cc:10839 c/c-typeck.cc:10880 +#: c/c-typeck.cc:10940 c/c-typeck.cc:10987 c/c-typeck.cc:11575 #, gcc-internal-format msgid "initialized field overwritten" msgstr "" -#: c/c-typeck.cc:10861 c/c-typeck.cc:10922 c/c-typeck.cc:10969 -#: c/c-typeck.cc:11558 +#: c/c-typeck.cc:10875 c/c-typeck.cc:10936 c/c-typeck.cc:10983 +#: c/c-typeck.cc:11572 #, gcc-internal-format msgid "initialized field with side-effects overwritten" msgstr "" -#: c/c-typeck.cc:11486 +#: c/c-typeck.cc:11500 #, gcc-internal-format msgid "enum conversion in initialization is invalid in C++" msgstr "" -#: c/c-typeck.cc:11932 +#: c/c-typeck.cc:11946 #, gcc-internal-format msgid "excess elements in %qT initializer" msgstr "" -#: c/c-typeck.cc:11944 c/c-typeck.cc:12021 +#: c/c-typeck.cc:11958 c/c-typeck.cc:12035 #, gcc-internal-format msgid "excess elements in struct initializer" msgstr "" -#: c/c-typeck.cc:11965 +#: c/c-typeck.cc:11979 #, gcc-internal-format msgid "" "positional initialization of field in %<struct%> declared with " "%<designated_init%> attribute" msgstr "" -#: c/c-typeck.cc:12036 c/c-typeck.cc:12162 cp/typeck2.cc:1245 +#: c/c-typeck.cc:12050 c/c-typeck.cc:12176 cp/typeck2.cc:1245 #, gcc-internal-format msgid "non-static initialization of a flexible array member" msgstr "" -#: c/c-typeck.cc:12132 +#: c/c-typeck.cc:12146 #, gcc-internal-format msgid "excess elements in union initializer" msgstr "" -#: c/c-typeck.cc:12154 +#: c/c-typeck.cc:12168 #, gcc-internal-format msgid "traditional C rejects initialization of unions" msgstr "" -#: c/c-typeck.cc:12253 +#: c/c-typeck.cc:12267 #, gcc-internal-format msgid "excess elements in array initializer" msgstr "" -#: c/c-typeck.cc:12330 c/c-typeck.cc:12332 +#: c/c-typeck.cc:12344 c/c-typeck.cc:12346 #, gcc-internal-format msgid "excess elements in vector initializer" msgstr "" -#: c/c-typeck.cc:12366 +#: c/c-typeck.cc:12380 #, gcc-internal-format msgid "excess elements in scalar initializer" msgstr "" -#: c/c-typeck.cc:12533 c/c-typeck.cc:12609 cp/semantics.cc:2346 -#: cp/semantics.cc:2455 +#: c/c-typeck.cc:12547 c/c-typeck.cc:12623 cp/semantics.cc:2349 +#: cp/semantics.cc:2458 #, gcc-internal-format msgid "constraint allows registers outside of a function" msgstr "" -#: c/c-typeck.cc:12545 cp/semantics.cc:2358 +#: c/c-typeck.cc:12559 cp/semantics.cc:2361 #, gcc-internal-format msgid "side-effects in output operand outside of a function" msgstr "" -#: c/c-typeck.cc:12556 cp/semantics.cc:2374 +#: c/c-typeck.cc:12570 cp/semantics.cc:2377 #, gcc-internal-format msgid "output operand outside of a function is not constant" msgstr "" -#: c/c-typeck.cc:12564 c/c-typeck.cc:12654 cp/semantics.cc:2385 -#: cp/semantics.cc:2518 +#: c/c-typeck.cc:12578 c/c-typeck.cc:12668 cp/semantics.cc:2388 +#: cp/semantics.cc:2521 #, gcc-internal-format msgid "%<-%> modifier used inside of a function" msgstr "" -#: c/c-typeck.cc:12622 cp/semantics.cc:2468 +#: c/c-typeck.cc:12636 cp/semantics.cc:2471 #, gcc-internal-format msgid "" "%<:%> constraint operand is not address of a function or non-automatic " "variable" msgstr "" -#: c/c-typeck.cc:12635 cp/semantics.cc:2481 +#: c/c-typeck.cc:12649 cp/semantics.cc:2484 #, gcc-internal-format msgid "side-effects in input operand outside of a function" msgstr "" -#: c/c-typeck.cc:12646 cp/semantics.cc:2496 cp/semantics.cc:2510 +#: c/c-typeck.cc:12660 cp/semantics.cc:2499 cp/semantics.cc:2513 #, gcc-internal-format msgid "input operand outside of a function is not constant" msgstr "" -#: c/c-typeck.cc:12698 +#: c/c-typeck.cc:12712 #, gcc-internal-format msgid "ISO C forbids %<goto *expr;%>" msgstr "" -#: c/c-typeck.cc:12704 +#: c/c-typeck.cc:12718 #, gcc-internal-format msgid "computed goto must be pointer type" msgstr "" -#: c/c-typeck.cc:12734 c/gimple-parser.cc:2648 cp/typeck.cc:11159 +#: c/c-typeck.cc:12748 c/gimple-parser.cc:2648 cp/typeck.cc:11159 #, gcc-internal-format msgid "function declared %<noreturn%> has a %<return%> statement" msgstr "" -#: c/c-typeck.cc:12763 +#: c/c-typeck.cc:12777 #, gcc-internal-format msgid "%<return%> with no value, in function returning non-void" msgstr "" -#: c/c-typeck.cc:12776 c/gimple-parser.cc:2658 +#: c/c-typeck.cc:12790 c/gimple-parser.cc:2658 #, gcc-internal-format msgid "%<return%> with a value, in function returning void" msgstr "" -#: c/c-typeck.cc:12779 +#: c/c-typeck.cc:12793 #, gcc-internal-format msgid "ISO C forbids %<return%> with expression, in function returning void" msgstr "" -#: c/c-typeck.cc:12861 +#: c/c-typeck.cc:12875 #, gcc-internal-format msgid "function returns address of label" msgstr "" -#: c/c-typeck.cc:12952 cp/semantics.cc:1921 +#: c/c-typeck.cc:12966 cp/semantics.cc:1924 #, gcc-internal-format msgid "switch quantity not an integer" msgstr "" -#: c/c-typeck.cc:12977 +#: c/c-typeck.cc:12991 #, gcc-internal-format msgid "%<long%> switch expression not converted to %<int%> in ISO C" msgstr "" -#: c/c-typeck.cc:13015 c/c-typeck.cc:13023 +#: c/c-typeck.cc:13029 c/c-typeck.cc:13037 #, gcc-internal-format msgid "case label is not an integer constant expression" msgstr "" -#: c/c-typeck.cc:13029 cp/parser.cc:13521 +#: c/c-typeck.cc:13043 cp/parser.cc:13521 #, gcc-internal-format msgid "case label not within a switch statement" msgstr "" -#: c/c-typeck.cc:13031 +#: c/c-typeck.cc:13045 #, gcc-internal-format msgid "%<default%> label not within a switch statement" msgstr "" -#: c/c-typeck.cc:13107 cp/parser.cc:15291 +#: c/c-typeck.cc:13121 cp/parser.cc:15291 #, gcc-internal-format msgid "break statement not within loop or switch" msgstr "" -#: c/c-typeck.cc:13110 c/c-typeck.cc:13130 cp/decl.cc:4107 cp/parser.cc:15301 +#: c/c-typeck.cc:13124 c/c-typeck.cc:13144 cp/decl.cc:4107 cp/parser.cc:15301 #: cp/parser.cc:15322 #, gcc-internal-format msgid "invalid exit from OpenMP structured block" msgstr "" -#: c/c-typeck.cc:13113 cp/parser.cc:15304 +#: c/c-typeck.cc:13127 cp/parser.cc:15304 #, gcc-internal-format msgid "break statement used with OpenMP for loop" msgstr "" -#: c/c-typeck.cc:13127 cp/parser.cc:15314 +#: c/c-typeck.cc:13141 cp/parser.cc:15314 #, gcc-internal-format msgid "continue statement not within a loop" msgstr "" -#: c/c-typeck.cc:13177 cp/cp-gimplify.cc:277 +#: c/c-typeck.cc:13191 cp/cp-gimplify.cc:277 #, gcc-internal-format msgid "statement with no effect" msgstr "" -#: c/c-typeck.cc:13221 +#: c/c-typeck.cc:13235 #, gcc-internal-format msgid "expression statement has incomplete type" msgstr "" -#: c/c-typeck.cc:13512 +#: c/c-typeck.cc:13526 #, gcc-internal-format msgid "" "the comparison will always evaluate as %<false%> for the pointer operand in " "%qE must not be NULL" msgstr "" -#: c/c-typeck.cc:13517 +#: c/c-typeck.cc:13531 #, gcc-internal-format msgid "" "the comparison will always evaluate as %<true%> for the pointer operand in " "%qE must not be NULL" msgstr "" -#: c/c-typeck.cc:13535 c/c-typeck.cc:13573 +#: c/c-typeck.cc:13549 c/c-typeck.cc:13587 #, gcc-internal-format msgid "" "the comparison will always evaluate as %<false%> for the address of %qE will " "never be NULL" msgstr "" -#: c/c-typeck.cc:13540 c/c-typeck.cc:13578 +#: c/c-typeck.cc:13554 c/c-typeck.cc:13592 #, gcc-internal-format msgid "" "the comparison will always evaluate as %<true%> for the address of %qE will " "never be NULL" msgstr "" -#: c/c-typeck.cc:14170 c/c-typeck.cc:14334 cp/typeck.cc:6163 +#: c/c-typeck.cc:14184 c/c-typeck.cc:14348 cp/typeck.cc:6163 #, gcc-internal-format msgid "comparing vectors with different element types" msgstr "" -#: c/c-typeck.cc:14178 c/c-typeck.cc:14342 cp/typeck.cc:6177 +#: c/c-typeck.cc:14192 c/c-typeck.cc:14356 cp/typeck.cc:6177 #, gcc-internal-format msgid "comparing vectors with different number of elements" msgstr "" -#: c/c-typeck.cc:14193 c/c-typeck.cc:14357 cp/typeck.cc:6195 +#: c/c-typeck.cc:14207 c/c-typeck.cc:14371 cp/typeck.cc:6195 #, gcc-internal-format msgid "comparison between types %qT and %qT" msgstr "" -#: c/c-typeck.cc:14203 c/c-typeck.cc:14367 cp/typeck.cc:6212 +#: c/c-typeck.cc:14217 c/c-typeck.cc:14381 cp/typeck.cc:6212 #, gcc-internal-format msgid "could not find an integer type of the same size as %qT" msgstr "" -#: c/c-typeck.cc:14217 cp/typeck.cc:5838 +#: c/c-typeck.cc:14231 cp/typeck.cc:5838 #, gcc-internal-format msgid "comparing floating-point with %<==%> or %<!=%> is unsafe" msgstr "" -#: c/c-typeck.cc:14256 c/c-typeck.cc:14408 +#: c/c-typeck.cc:14270 c/c-typeck.cc:14422 #, gcc-internal-format msgid "comparison of pointers to disjoint address spaces" msgstr "" -#: c/c-typeck.cc:14263 c/c-typeck.cc:14269 +#: c/c-typeck.cc:14277 c/c-typeck.cc:14283 #, gcc-internal-format msgid "ISO C forbids comparison of %<void *%> with function pointer" msgstr "" -#: c/c-typeck.cc:14276 c/c-typeck.cc:14418 +#: c/c-typeck.cc:14290 c/c-typeck.cc:14432 #, gcc-internal-format msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c/c-typeck.cc:14289 c/c-typeck.cc:14295 c/c-typeck.cc:14445 -#: c/c-typeck.cc:14451 +#: c/c-typeck.cc:14303 c/c-typeck.cc:14309 c/c-typeck.cc:14459 +#: c/c-typeck.cc:14465 #, gcc-internal-format msgid "comparison between pointer and integer" msgstr "" -#: c/c-typeck.cc:14396 +#: c/c-typeck.cc:14410 #, gcc-internal-format msgid "comparison of complete and incomplete pointers" msgstr "" -#: c/c-typeck.cc:14398 +#: c/c-typeck.cc:14412 #, gcc-internal-format msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c/c-typeck.cc:14403 +#: c/c-typeck.cc:14417 #, gcc-internal-format msgid "ordered comparison of pointer with null pointer" msgstr "" -#: c/c-typeck.cc:14426 c/c-typeck.cc:14429 c/c-typeck.cc:14436 -#: c/c-typeck.cc:14439 +#: c/c-typeck.cc:14440 c/c-typeck.cc:14443 c/c-typeck.cc:14450 +#: c/c-typeck.cc:14453 #, gcc-internal-format msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c/c-typeck.cc:14516 +#: c/c-typeck.cc:14530 #, gcc-internal-format msgid "" "implicit conversion from %qT to %qT to match other operand of binary " "expression" msgstr "" -#: c/c-typeck.cc:14834 +#: c/c-typeck.cc:14848 #, gcc-internal-format msgid "used array that cannot be converted to pointer where scalar is required" msgstr "" -#: c/c-typeck.cc:14838 +#: c/c-typeck.cc:14852 #, gcc-internal-format msgid "used struct type value where scalar is required" msgstr "" -#: c/c-typeck.cc:14842 +#: c/c-typeck.cc:14856 #, gcc-internal-format msgid "used union type value where scalar is required" msgstr "" -#: c/c-typeck.cc:14858 +#: c/c-typeck.cc:14872 #, gcc-internal-format msgid "used vector type where scalar is required" msgstr "" -#: c/c-typeck.cc:15061 cp/semantics.cc:12069 +#: c/c-typeck.cc:15075 cp/semantics.cc:12083 #, gcc-internal-format msgid "" "%<#pragma omp cancel%> must specify one of %<parallel%>, %<for%>, " "%<sections%> or %<taskgroup%> clauses" msgstr "" -#: c/c-typeck.cc:15072 c/c-typeck.cc:15082 cp/semantics.cc:12080 -#: cp/semantics.cc:12090 +#: c/c-typeck.cc:15086 c/c-typeck.cc:15096 cp/semantics.cc:12094 +#: cp/semantics.cc:12104 #, gcc-internal-format msgid "expected %<cancel%> %<if%> clause modifier" msgstr "" -#: c/c-typeck.cc:15117 cp/semantics.cc:12125 +#: c/c-typeck.cc:15131 cp/semantics.cc:12139 #, gcc-internal-format msgid "" "%<#pragma omp cancellation point%> must specify one of %<parallel%>, " "%<for%>, %<sections%> or %<taskgroup%> clauses" msgstr "" -#: c/c-typeck.cc:15185 cp/semantics.cc:5948 cp/semantics.cc:9059 +#: c/c-typeck.cc:15199 cp/semantics.cc:5962 cp/semantics.cc:9073 #, gcc-internal-format msgid "%qD is not a variable in %qs clause" msgstr "" -#: c/c-typeck.cc:15189 c/c-typeck.cc:17006 cp/semantics.cc:5952 -#: cp/semantics.cc:9063 +#: c/c-typeck.cc:15203 c/c-typeck.cc:17020 cp/semantics.cc:5966 +#: cp/semantics.cc:9077 #, gcc-internal-format msgid "%qE is not a variable in %qs clause" msgstr "" -#: c/c-typeck.cc:15197 +#: c/c-typeck.cc:15211 #, gcc-internal-format msgid "%<_Atomic%> %qD in %qs clause" msgstr "" -#: c/c-typeck.cc:15207 c/c-typeck.cc:17013 c/c-typeck.cc:17167 -#: cp/semantics.cc:5961 cp/semantics.cc:9070 cp/semantics.cc:9259 +#: c/c-typeck.cc:15221 c/c-typeck.cc:17027 c/c-typeck.cc:17181 +#: cp/semantics.cc:5975 cp/semantics.cc:9084 cp/semantics.cc:9273 #, gcc-internal-format msgid "%qD is threadprivate variable in %qs clause" msgstr "" -#: c/c-typeck.cc:15244 cp/semantics.cc:5995 +#: c/c-typeck.cc:15258 cp/semantics.cc:6009 #, gcc-internal-format msgid "low bound %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.cc:15251 cp/semantics.cc:6002 +#: c/c-typeck.cc:15265 cp/semantics.cc:6016 #, gcc-internal-format msgid "length %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.cc:15274 cp/semantics.cc:6035 +#: c/c-typeck.cc:15288 cp/semantics.cc:6049 #, gcc-internal-format msgid "expected single pointer in %qs clause" msgstr "" -#: c/c-typeck.cc:15292 c/c-typeck.cc:15359 c/c-typeck.cc:15652 -#: cp/semantics.cc:6053 cp/semantics.cc:6120 +#: c/c-typeck.cc:15306 c/c-typeck.cc:15373 c/c-typeck.cc:15666 +#: cp/semantics.cc:6067 cp/semantics.cc:6134 #, gcc-internal-format msgid "zero length array section in %qs clause" msgstr "" -#: c/c-typeck.cc:15311 cp/semantics.cc:6072 +#: c/c-typeck.cc:15325 cp/semantics.cc:6086 #, gcc-internal-format msgid "for unknown bound array type length expression must be specified" msgstr "" -#: c/c-typeck.cc:15319 cp/semantics.cc:6080 +#: c/c-typeck.cc:15333 cp/semantics.cc:6094 #, gcc-internal-format msgid "negative low bound in array section in %qs clause" msgstr "" -#: c/c-typeck.cc:15328 c/c-typeck.cc:15452 cp/semantics.cc:6089 -#: cp/semantics.cc:6213 +#: c/c-typeck.cc:15342 c/c-typeck.cc:15466 cp/semantics.cc:6103 +#: cp/semantics.cc:6227 #, gcc-internal-format msgid "negative length in array section in %qs clause" msgstr "" -#: c/c-typeck.cc:15345 cp/semantics.cc:6106 +#: c/c-typeck.cc:15359 cp/semantics.cc:6120 #, gcc-internal-format msgid "low bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.cc:15388 cp/semantics.cc:6149 +#: c/c-typeck.cc:15402 cp/semantics.cc:6163 #, gcc-internal-format msgid "length %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.cc:15403 cp/semantics.cc:6164 +#: c/c-typeck.cc:15417 cp/semantics.cc:6178 #, gcc-internal-format msgid "high bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.cc:15440 cp/semantics.cc:6201 +#: c/c-typeck.cc:15454 cp/semantics.cc:6215 #, gcc-internal-format msgid "for array function parameter length expression must be specified" msgstr "" -#: c/c-typeck.cc:15444 cp/semantics.cc:6205 +#: c/c-typeck.cc:15458 cp/semantics.cc:6219 #, gcc-internal-format msgid "for pointer type length expression must be specified" msgstr "" -#: c/c-typeck.cc:15472 c/c-typeck.cc:15591 cp/semantics.cc:6232 -#: cp/semantics.cc:6368 +#: c/c-typeck.cc:15486 c/c-typeck.cc:15605 cp/semantics.cc:6246 +#: cp/semantics.cc:6382 #, gcc-internal-format msgid "array section is not contiguous in %qs clause" msgstr "" -#: c/c-typeck.cc:15482 cp/semantics.cc:6242 +#: c/c-typeck.cc:15496 cp/semantics.cc:6256 #, gcc-internal-format msgid "%qE does not have pointer or array type" msgstr "" -#: c/c-typeck.cc:15858 cp/semantics.cc:7305 +#: c/c-typeck.cc:15872 cp/semantics.cc:7319 #, gcc-internal-format msgid "iterator %qD has neither integral nor pointer type" msgstr "" -#: c/c-typeck.cc:15865 +#: c/c-typeck.cc:15879 #, gcc-internal-format msgid "iterator %qD has %<_Atomic%> qualified type" msgstr "" -#: c/c-typeck.cc:15871 cp/semantics.cc:7312 +#: c/c-typeck.cc:15885 cp/semantics.cc:7326 #, gcc-internal-format msgid "iterator %qD has const qualified type" msgstr "" -#: c/c-typeck.cc:15884 cp/semantics.cc:7328 +#: c/c-typeck.cc:15898 cp/semantics.cc:7342 #, gcc-internal-format msgid "iterator step with non-integral type" msgstr "" -#: c/c-typeck.cc:15904 cp/semantics.cc:7364 +#: c/c-typeck.cc:15918 cp/semantics.cc:7378 #, gcc-internal-format msgid "iterator %qD has zero step" msgstr "" -#: c/c-typeck.cc:15931 +#: c/c-typeck.cc:15945 #, gcc-internal-format msgid "type of iterator %qD refers to outer iterator %qD" msgstr "" -#: c/c-typeck.cc:15938 cp/semantics.cc:7398 +#: c/c-typeck.cc:15952 cp/semantics.cc:7412 #, gcc-internal-format msgid "begin expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.cc:15944 cp/semantics.cc:7404 +#: c/c-typeck.cc:15958 cp/semantics.cc:7418 #, gcc-internal-format msgid "end expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.cc:15950 cp/semantics.cc:7410 +#: c/c-typeck.cc:15964 cp/semantics.cc:7424 #, gcc-internal-format msgid "step expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.cc:15987 cp/semantics.cc:7458 +#: c/c-typeck.cc:16001 cp/semantics.cc:7472 #, gcc-internal-format msgid "expected pointer in %qs clause" msgstr "" -#: c/c-typeck.cc:16090 cp/semantics.cc:7624 +#: c/c-typeck.cc:16104 cp/semantics.cc:7638 #, gcc-internal-format msgid "" "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct" msgstr "" -#: c/c-typeck.cc:16112 cp/semantics.cc:7644 +#: c/c-typeck.cc:16126 cp/semantics.cc:7658 #, gcc-internal-format msgid "%<inscan%> %<reduction%> clause with array section" msgstr "" -#: c/c-typeck.cc:16138 c/c-typeck.cc:16148 +#: c/c-typeck.cc:16152 c/c-typeck.cc:16162 #, gcc-internal-format msgid "%qD in %<reduction%> clause is a zero size array" msgstr "" -#: c/c-typeck.cc:16168 +#: c/c-typeck.cc:16182 #, gcc-internal-format msgid "%<_Atomic%> %qE in %<reduction%> clause" msgstr "" -#: c/c-typeck.cc:16180 +#: c/c-typeck.cc:16194 #, gcc-internal-format msgid "zero sized type %qT in %qs clause" msgstr "" -#: c/c-typeck.cc:16188 +#: c/c-typeck.cc:16202 #, gcc-internal-format msgid "variable sized type %qT in %qs clause" msgstr "" -#: c/c-typeck.cc:16232 +#: c/c-typeck.cc:16246 #, gcc-internal-format msgid "%qE has invalid type for %<reduction(%s)%>" msgstr "" -#: c/c-typeck.cc:16241 cp/semantics.cc:7197 +#: c/c-typeck.cc:16255 cp/semantics.cc:7211 #, gcc-internal-format msgid "user defined reduction not found for %qE" msgstr "" -#: c/c-typeck.cc:16329 +#: c/c-typeck.cc:16343 #, gcc-internal-format msgid "variable length element type in array %<reduction%> clause" msgstr "" -#: c/c-typeck.cc:16347 c/c-typeck.cc:17261 cp/semantics.cc:9943 +#: c/c-typeck.cc:16361 c/c-typeck.cc:17275 cp/semantics.cc:9957 #, gcc-internal-format msgid "%<nowait%> clause must not be used together with %<copyprivate%> clause" msgstr "" -#: c/c-typeck.cc:16359 cp/semantics.cc:10011 +#: c/c-typeck.cc:16373 cp/semantics.cc:10025 #, gcc-internal-format msgid "%qE must be %<threadprivate%> for %<copyin%>" msgstr "" -#: c/c-typeck.cc:16374 cp/semantics.cc:7687 +#: c/c-typeck.cc:16388 cp/semantics.cc:7701 #, gcc-internal-format msgid "" "modifier should not be specified in %<linear%> clause on %<simd%> or %<for%> " "constructs when not using OpenMP 5.2 modifiers" msgstr "" -#: c/c-typeck.cc:16383 +#: c/c-typeck.cc:16397 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with type %qT" msgstr "" -#: c/c-typeck.cc:16391 +#: c/c-typeck.cc:16405 #, gcc-internal-format msgid "%<_Atomic%> %qD in %<linear%> clause" msgstr "" -#: c/c-typeck.cc:16410 cp/semantics.cc:7771 +#: c/c-typeck.cc:16424 cp/semantics.cc:7785 #, gcc-internal-format msgid "%<linear%> clause step %qE is neither constant nor a parameter" msgstr "" -#: c/c-typeck.cc:16440 c/c-typeck.cc:17161 c/c-typeck.cc:17432 -#: cp/semantics.cc:7858 cp/semantics.cc:9253 cp/semantics.cc:9644 +#: c/c-typeck.cc:16454 c/c-typeck.cc:17175 c/c-typeck.cc:17446 +#: cp/semantics.cc:7872 cp/semantics.cc:9267 cp/semantics.cc:9658 #, gcc-internal-format msgid "%qE is not a variable in clause %qs" msgstr "" -#: c/c-typeck.cc:16457 cp/semantics.cc:7876 +#: c/c-typeck.cc:16471 cp/semantics.cc:7890 #, gcc-internal-format msgid "%qD appears more than once in data-sharing clauses" msgstr "" -#: c/c-typeck.cc:16468 cp/semantics.cc:7887 +#: c/c-typeck.cc:16482 cp/semantics.cc:7901 #, gcc-internal-format msgid "%qD appears more than once in reduction clauses" msgstr "" -#: c/c-typeck.cc:16482 c/c-typeck.cc:16552 c/c-typeck.cc:16587 +#: c/c-typeck.cc:16496 c/c-typeck.cc:16566 c/c-typeck.cc:16601 #, gcc-internal-format msgid "%qE appears more than once in data clauses" msgstr "" -#: c/c-typeck.cc:16492 c/c-typeck.cc:16560 c/c-typeck.cc:16909 -#: c/c-typeck.cc:17061 c/c-typeck.cc:17069 c/c-typeck.cc:17085 -#: c/c-typeck.cc:17094 c/c-typeck.cc:17102 cp/semantics.cc:7901 -#: cp/semantics.cc:7911 cp/semantics.cc:8004 cp/semantics.cc:8012 -#: cp/semantics.cc:8059 cp/semantics.cc:8941 cp/semantics.cc:9131 -#: cp/semantics.cc:9139 cp/semantics.cc:9159 cp/semantics.cc:9168 -#: cp/semantics.cc:9176 +#: c/c-typeck.cc:16506 c/c-typeck.cc:16574 c/c-typeck.cc:16923 +#: c/c-typeck.cc:17075 c/c-typeck.cc:17083 c/c-typeck.cc:17099 +#: c/c-typeck.cc:17108 c/c-typeck.cc:17116 cp/semantics.cc:7915 +#: cp/semantics.cc:7925 cp/semantics.cc:8018 cp/semantics.cc:8026 +#: cp/semantics.cc:8073 cp/semantics.cc:8955 cp/semantics.cc:9145 +#: cp/semantics.cc:9153 cp/semantics.cc:9173 cp/semantics.cc:9182 +#: cp/semantics.cc:9190 #, gcc-internal-format msgid "%qD appears more than once in data clauses" msgstr "" -#: c/c-typeck.cc:16495 c/c-typeck.cc:16566 c/c-typeck.cc:17105 -#: cp/semantics.cc:7914 cp/semantics.cc:8018 cp/semantics.cc:9179 +#: c/c-typeck.cc:16509 c/c-typeck.cc:16580 c/c-typeck.cc:17119 +#: cp/semantics.cc:7928 cp/semantics.cc:8032 cp/semantics.cc:9193 #, gcc-internal-format msgid "%qD appears both in data and map clauses" msgstr "" -#: c/c-typeck.cc:16540 cp/semantics.cc:7991 +#: c/c-typeck.cc:16554 cp/semantics.cc:8005 #, gcc-internal-format msgid "%qE is not a variable in clause %<firstprivate%>" msgstr "" -#: c/c-typeck.cc:16580 cp/semantics.cc:8051 +#: c/c-typeck.cc:16594 cp/semantics.cc:8065 #, gcc-internal-format msgid "%qE is not a variable in clause %<lastprivate%>" msgstr "" -#: c/c-typeck.cc:16599 cp/semantics.cc:8473 +#: c/c-typeck.cc:16613 cp/semantics.cc:8487 #, gcc-internal-format msgid "%qE is not a variable in %<aligned%> clause" msgstr "" -#: c/c-typeck.cc:16606 +#: c/c-typeck.cc:16620 #, gcc-internal-format msgid "%qE in %<aligned%> clause is neither a pointer nor an array" msgstr "" -#: c/c-typeck.cc:16613 +#: c/c-typeck.cc:16627 #, gcc-internal-format msgid "%<_Atomic%> %qD in %<aligned%> clause" msgstr "" -#: c/c-typeck.cc:16620 +#: c/c-typeck.cc:16634 #, gcc-internal-format msgid "%qE appears more than once in %<aligned%> clauses" msgstr "" -#: c/c-typeck.cc:16633 cp/semantics.cc:8542 +#: c/c-typeck.cc:16647 cp/semantics.cc:8556 #, gcc-internal-format msgid "%qE is not a variable in %<nontemporal%> clause" msgstr "" -#: c/c-typeck.cc:16639 +#: c/c-typeck.cc:16653 #, gcc-internal-format msgid "%qE appears more than once in %<nontemporal%> clauses" msgstr "" -#: c/c-typeck.cc:16652 cp/semantics.cc:8581 +#: c/c-typeck.cc:16666 cp/semantics.cc:8595 #, gcc-internal-format msgid "%qE is not a variable in %<allocate%> clause" msgstr "" -#: c/c-typeck.cc:16658 +#: c/c-typeck.cc:16672 #, gcc-internal-format msgid "%qE appears more than once in %<allocate%> clauses" msgstr "" -#: c/c-typeck.cc:16730 cp/semantics.cc:8709 +#: c/c-typeck.cc:16744 cp/semantics.cc:8723 #, gcc-internal-format msgid "%<depend%> clause with %<depobj%> dependence type on array section" msgstr "" -#: c/c-typeck.cc:16745 cp/semantics.cc:8724 +#: c/c-typeck.cc:16759 cp/semantics.cc:8738 #, gcc-internal-format msgid "" "%<omp_all_memory%> used with %<depend%> kind other than %<out%> or %<inout%>" msgstr "" -#: c/c-typeck.cc:16753 cp/semantics.cc:8742 +#: c/c-typeck.cc:16767 cp/semantics.cc:8756 #, gcc-internal-format msgid "%qE is not lvalue expression nor array section in %qs clause" msgstr "" -#: c/c-typeck.cc:16774 cp/semantics.cc:8764 +#: c/c-typeck.cc:16788 cp/semantics.cc:8778 #, gcc-internal-format msgid "" "%qE does not have %<omp_depend_t%> type in %<depend%> clause with %<depobj%> " "dependence type" msgstr "" -#: c/c-typeck.cc:16784 cp/semantics.cc:8776 +#: c/c-typeck.cc:16798 cp/semantics.cc:8790 #, gcc-internal-format msgid "" "%qE should not have %<omp_depend_t%> type in %<depend%> clause with " "dependence type other than %<depobj%>" msgstr "" -#: c/c-typeck.cc:16845 cp/semantics.cc:8876 +#: c/c-typeck.cc:16859 cp/semantics.cc:8890 #, gcc-internal-format msgid "array section does not have mappable type in %qs clause" msgstr "" -#: c/c-typeck.cc:16865 c/c-typeck.cc:16941 c/c-typeck.cc:16977 -#: cp/semantics.cc:8896 cp/semantics.cc:8975 cp/semantics.cc:9011 +#: c/c-typeck.cc:16879 c/c-typeck.cc:16955 c/c-typeck.cc:16991 +#: cp/semantics.cc:8910 cp/semantics.cc:8989 cp/semantics.cc:9025 #, gcc-internal-format msgid "unsupported map expression %qE" msgstr "" -#: c/c-typeck.cc:16905 c/c-typeck.cc:17082 cp/semantics.cc:8937 -#: cp/semantics.cc:9156 +#: c/c-typeck.cc:16919 c/c-typeck.cc:17096 cp/semantics.cc:8951 +#: cp/semantics.cc:9170 #, gcc-internal-format msgid "%qD appears more than once in motion clauses" msgstr "" -#: c/c-typeck.cc:16913 c/c-typeck.cc:17088 cp/semantics.cc:8945 -#: cp/semantics.cc:9162 +#: c/c-typeck.cc:16927 c/c-typeck.cc:17102 cp/semantics.cc:8959 +#: cp/semantics.cc:9176 #, gcc-internal-format msgid "%qD appears more than once in map clauses" msgstr "" -#: c/c-typeck.cc:17032 c/c-typeck.cc:17174 cp/semantics.cc:9099 -#: cp/semantics.cc:9267 +#: c/c-typeck.cc:17046 c/c-typeck.cc:17188 cp/semantics.cc:9113 +#: cp/semantics.cc:9281 #, gcc-internal-format msgid "%qD does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.cc:17157 cp/semantics.cc:9248 +#: c/c-typeck.cc:17171 cp/semantics.cc:9262 #, gcc-internal-format msgid "%qE is neither a variable nor a function name in clause %qs" msgstr "" -#: c/c-typeck.cc:17183 cp/semantics.cc:9279 +#: c/c-typeck.cc:17197 cp/semantics.cc:9293 #, gcc-internal-format msgid "%qE appears more than once on the same %<declare target%> directive" msgstr "" -#: c/c-typeck.cc:17197 cp/semantics.cc:9295 +#: c/c-typeck.cc:17211 cp/semantics.cc:9309 #, gcc-internal-format msgid "%qD is not an argument in %<uniform%> clause" msgstr "" -#: c/c-typeck.cc:17200 cp/semantics.cc:9298 +#: c/c-typeck.cc:17214 cp/semantics.cc:9312 #, gcc-internal-format msgid "%qE is not an argument in %<uniform%> clause" msgstr "" -#: c/c-typeck.cc:17219 +#: c/c-typeck.cc:17233 #, gcc-internal-format msgid "%qs variable is not a pointer" msgstr "" -#: c/c-typeck.cc:17226 +#: c/c-typeck.cc:17240 #, gcc-internal-format msgid "%qs variable is neither a pointer nor an array" msgstr "" -#: c/c-typeck.cc:17274 c/c-typeck.cc:17379 cp/semantics.cc:9894 +#: c/c-typeck.cc:17288 c/c-typeck.cc:17393 cp/semantics.cc:9908 #, gcc-internal-format msgid "%<order%> clause must not be used together with %<ordered%> clause" msgstr "" -#: c/c-typeck.cc:17294 cp/semantics.cc:8816 +#: c/c-typeck.cc:17308 cp/semantics.cc:8830 #, gcc-internal-format msgid "too many %qs clauses on a task construct" msgstr "" -#: c/c-typeck.cc:17415 cp/semantics.cc:9612 +#: c/c-typeck.cc:17429 cp/semantics.cc:9626 #, gcc-internal-format msgid "%<inbranch%> clause is incompatible with %<notinbranch%>" msgstr "" -#: c/c-typeck.cc:17450 cp/semantics.cc:9706 +#: c/c-typeck.cc:17464 cp/semantics.cc:9720 #, gcc-internal-format msgid "%qD appears more than once in action clauses" msgstr "" -#: c/c-typeck.cc:17461 cp/semantics.cc:9720 +#: c/c-typeck.cc:17475 cp/semantics.cc:9734 #, gcc-internal-format msgid "%qD must be of %<omp_interop_t%>" msgstr "" -#: c/c-typeck.cc:17470 cp/semantics.cc:9729 +#: c/c-typeck.cc:17484 cp/semantics.cc:9743 #, gcc-internal-format msgid "%qD shall not be const" msgstr "" -#: c/c-typeck.cc:17519 cp/semantics.cc:10082 +#: c/c-typeck.cc:17533 cp/semantics.cc:10096 #, gcc-internal-format msgid "%qE is predetermined %qs for %qs" msgstr "" -#: c/c-typeck.cc:17529 +#: c/c-typeck.cc:17543 #, gcc-internal-format msgid "" "%<const%> qualified %qE may appear only in %<shared%> or %<firstprivate%> " "clauses" msgstr "" -#: c/c-typeck.cc:17560 cp/semantics.cc:9835 +#: c/c-typeck.cc:17574 cp/semantics.cc:9849 #, gcc-internal-format msgid "%<simdlen%> clause value is bigger than %<safelen%> clause value" msgstr "" -#: c/c-typeck.cc:17572 cp/semantics.cc:9848 +#: c/c-typeck.cc:17586 cp/semantics.cc:9862 #, gcc-internal-format msgid "" "%<nonmonotonic%> schedule modifier specified together with %<ordered%> clause" msgstr "" -#: c/c-typeck.cc:17583 c/c-typeck.cc:17591 cp/semantics.cc:9857 -#: cp/semantics.cc:9886 +#: c/c-typeck.cc:17597 c/c-typeck.cc:17605 cp/semantics.cc:9871 +#: cp/semantics.cc:9900 #, gcc-internal-format msgid "%qs clause specified together with %<inscan%> %<reduction%> clause" msgstr "" -#: c/c-typeck.cc:17639 cp/semantics.cc:9815 +#: c/c-typeck.cc:17653 cp/semantics.cc:9829 #, gcc-internal-format msgid "" "%<linear%> clause step is a parameter %qD not specified in %<uniform%> clause" msgstr "" -#: c/c-typeck.cc:17690 cp/semantics.cc:9865 +#: c/c-typeck.cc:17704 cp/semantics.cc:9879 #, gcc-internal-format msgid "%<nogroup%> clause must not be used together with %<reduction%> clause" msgstr "" -#: c/c-typeck.cc:17698 cp/semantics.cc:9876 +#: c/c-typeck.cc:17712 cp/semantics.cc:9890 #, gcc-internal-format msgid "" "%<grainsize%> clause must not be used together with %<num_tasks%> clause" msgstr "" -#: c/c-typeck.cc:17706 cp/semantics.cc:9932 +#: c/c-typeck.cc:17720 cp/semantics.cc:9946 #, gcc-internal-format msgid "%<full%> clause must not be used together with %<partial%> clause" msgstr "" -#: c/c-typeck.cc:17716 cp/semantics.cc:9905 +#: c/c-typeck.cc:17730 cp/semantics.cc:9919 #, gcc-internal-format msgid "%<detach%> clause must not be used together with %<mergeable%> clause" msgstr "" -#: c/c-typeck.cc:17734 cp/semantics.cc:10107 +#: c/c-typeck.cc:17748 cp/semantics.cc:10121 #, gcc-internal-format msgid "" "the event handle of a %<detach%> clause should not be in a data-sharing " "clause" msgstr "" -#: c/c-typeck.cc:17752 cp/semantics.cc:10178 +#: c/c-typeck.cc:17766 cp/semantics.cc:10192 #, gcc-internal-format msgid "" "%<depend%> clause requires action clauses with %<targetsync%> interop-type" msgstr "" -#: c/c-typeck.cc:17756 cp/semantics.cc:10182 +#: c/c-typeck.cc:17770 cp/semantics.cc:10196 #, gcc-internal-format msgid "%<init%> clause lacks the %<targetsync%> modifier" msgstr "" -#: c/c-typeck.cc:17928 +#: c/c-typeck.cc:17942 #, gcc-internal-format msgid "cannot use %<va_arg%> with reverse storage order" msgstr "" -#: c/c-typeck.cc:17933 +#: c/c-typeck.cc:17947 #, gcc-internal-format msgid "second argument to %<va_arg%> is of incomplete type %qT" msgstr "" -#: c/c-typeck.cc:17939 +#: c/c-typeck.cc:17953 #, gcc-internal-format msgid "second argument to %<va_arg%> is a function type %qT" msgstr "" -#: c/c-typeck.cc:17945 +#: c/c-typeck.cc:17959 #, gcc-internal-format msgid "C++ requires promoted type, not enum type, in %<va_arg%>" msgstr "" @@ -55541,18 +55542,18 @@ msgstr "" msgid "exception '%s'" msgstr "" -#: cobol/cobol1.cc:412 +#: cobol/cobol1.cc:408 #, gcc-internal-format, gfc-internal-format msgid "could not execute preprocessor %s" msgstr "" -#: cobol/cobol1.cc:417 +#: cobol/cobol1.cc:413 #, gcc-internal-format, gfc-internal-format msgid "could not include %s" msgstr "" #. This isn't right. All OPT_main should be replaced -#: cobol/cobol1.cc:423 +#: cobol/cobol1.cc:419 #, gcc-internal-format msgid "We should never see a non-equal dash-main in cobol1.c" msgstr "" @@ -55561,245 +55562,245 @@ msgstr "" msgid "no such exception: 0x%04x" msgstr "" -#: cobol/genapi.cc:331 +#: cobol/genapi.cc:332 #, gcc-internal-format msgid "Probable cause: it was referenced without being defined." msgstr "" -#: cobol/genapi.cc:570 +#: cobol/genapi.cc:571 #, gcc-internal-format msgid "Nice try, but you can't fire me. I quit!" msgstr "" -#: cobol/genapi.cc:1485 +#: cobol/genapi.cc:1486 #, gcc-internal-format, gfc-internal-format msgid "%s(): Knows not the variable type %s for %s" msgstr "" -#: cobol/genapi.cc:2172 +#: cobol/genapi.cc:2176 #, gcc-internal-format, gfc-internal-format msgid "I don't know how to MOVE an alphabetical string to %s(%s) \n" msgstr "" -#: cobol/genapi.cc:2240 +#: cobol/genapi.cc:2244 #, gcc-internal-format, gfc-internal-format msgid "%s(): field->type %s must be literal or alphanumeric" msgstr "" -#: cobol/genapi.cc:5720 +#: cobol/genapi.cc:5728 #, gcc-internal-format, gfc-internal-format msgid "%s(): Invalid field type %s:" msgstr "" -#: cobol/genapi.cc:6937 cobol/genapi.cc:6943 cobol/genapi.cc:6949 +#: cobol/genapi.cc:6929 cobol/genapi.cc:6935 cobol/genapi.cc:6941 #, gcc-internal-format, gfc-internal-format msgid "" "parser_logop() was called with variable %s on line %d, which is not a " "FldConditional\n" msgstr "" -#: cobol/genapi.cc:7056 cobol/genapi.cc:7120 +#: cobol/genapi.cc:7048 cobol/genapi.cc:7112 #, gcc-internal-format, gfc-internal-format msgid "" "parser_relop() was called with variable %s, which is not a FldConditional\n" msgstr "" -#: cobol/genapi.cc:7166 +#: cobol/genapi.cc:7158 #, gcc-internal-format, gfc-internal-format msgid "" "parser_if() was called with variable %s, which is not a FldConditional\n" msgstr "" -#: cobol/genapi.cc:7419 +#: cobol/genapi.cc:7411 #, gcc-internal-format, gfc-internal-format msgid "###### candidate %s has unimplemented CVT_type %d(%s)\n" msgstr "" -#: cobol/genapi.cc:7430 +#: cobol/genapi.cc:7422 #, gcc-internal-format, gfc-internal-format msgid "###### unknown setop_t code %d\n" msgstr "" -#: cobol/genapi.cc:7626 +#: cobol/genapi.cc:7618 msgid "%s:%d: %zu exceeds MAXIMUM_UNTILS of %d, line %d" msgstr "" -#: cobol/genapi.cc:8632 +#: cobol/genapi.cc:8624 #, gcc-internal-format, gfc-internal-format msgid "%s:%d: ignoring subscripts" msgstr "" -#: cobol/genapi.cc:8854 cobol/genapi.cc:9314 +#: cobol/genapi.cc:8846 cobol/genapi.cc:9306 #, gcc-internal-format, gfc-internal-format msgid "%s(): called with NULL *file" msgstr "" -#: cobol/genapi.cc:8979 +#: cobol/genapi.cc:8971 #, gcc-internal-format, gfc-internal-format msgid "%s:%d file %s access mode is 'file_inaccessible_e' in %s" msgstr "" -#: cobol/genapi.cc:9052 +#: cobol/genapi.cc:9044 #, gcc-internal-format msgid "parser_file_open called with NULL *file" msgstr "" -#: cobol/genapi.cc:9057 +#: cobol/genapi.cc:9049 #, gcc-internal-format, gfc-internal-format msgid "parser_file_open for %s called with NULL var_decl_node" msgstr "" -#: cobol/genapi.cc:9062 +#: cobol/genapi.cc:9054 #, gcc-internal-format, gfc-internal-format msgid "EXTEND can only be used where %s is ACCESS MODE SEQUENTIAL" msgstr "" -#: cobol/genapi.cc:9130 +#: cobol/genapi.cc:9122 #, gcc-internal-format msgid "parser_file_close called with NULL *file" msgstr "" -#: cobol/genapi.cc:9135 +#: cobol/genapi.cc:9127 #, gcc-internal-format, gfc-internal-format msgid "parser_file_close for %s called with NULL file->var_decl_node" msgstr "" -#: cobol/genapi.cc:9188 +#: cobol/genapi.cc:9180 #, gcc-internal-format, gfc-internal-format msgid "%s:%d file %s 'where' is zero in %s" msgstr "" -#: cobol/genapi.cc:9198 +#: cobol/genapi.cc:9190 #, gcc-internal-format msgid "parser_file_read called with NULL *file" msgstr "" -#: cobol/genapi.cc:9203 +#: cobol/genapi.cc:9195 #, gcc-internal-format, gfc-internal-format msgid "parser_file_read for %s called with NULL file->var_decl_node" msgstr "" -#: cobol/genapi.cc:9208 +#: cobol/genapi.cc:9200 #, gcc-internal-format msgid "parser_file_read called with NULL *field" msgstr "" -#: cobol/genapi.cc:9213 +#: cobol/genapi.cc:9205 #, gcc-internal-format, gfc-internal-format msgid "parser_file_read for %s called with NULL field->var_decl_node" msgstr "" -#: cobol/genapi.cc:9218 +#: cobol/genapi.cc:9210 #, gcc-internal-format, gfc-internal-format msgid "%s:%d file %s is RELATIVE/SEQUENTIAL, but 'where' >= 0" msgstr "" -#: cobol/genapi.cc:9227 +#: cobol/genapi.cc:9219 #, gcc-internal-format, gfc-internal-format msgid "%s:%d file %s is RELATIVE/RANDOM, but 'where' < 0" msgstr "" -#: cobol/genapi.cc:9270 +#: cobol/genapi.cc:9262 #, gcc-internal-format, gfc-internal-format msgid "%s:%d file %s 'sequentially' is %d in %s" msgstr "" -#: cobol/genapi.cc:9319 +#: cobol/genapi.cc:9311 #, gcc-internal-format, gfc-internal-format msgid "%s(): for %s called with NULL file->var_decl_node" msgstr "" -#: cobol/genapi.cc:9325 +#: cobol/genapi.cc:9317 #, gcc-internal-format, gfc-internal-format msgid "%s(): called with NULL *field" msgstr "" -#: cobol/genapi.cc:9330 +#: cobol/genapi.cc:9322 #, gcc-internal-format, gfc-internal-format msgid "%s(): for %s called with NULL field->var_decl_node" msgstr "" -#: cobol/genapi.cc:9465 +#: cobol/genapi.cc:9457 #, gcc-internal-format, gfc-internal-format msgid "%s:%d file %s is INDEXED/SEQUENTIAL, but 'sequentially' is false" msgstr "" -#: cobol/genapi.cc:11124 +#: cobol/genapi.cc:11122 #, gcc-internal-format, gfc-internal-format msgid "%s(): asked to sort %s, but it's not a table" msgstr "" #. Having both or neither violates SORT syntax -#: cobol/genapi.cc:11252 +#: cobol/genapi.cc:11250 #, gcc-internal-format, gfc-internal-format msgid "" "%s(): syntax error -- both (or neither) USING and input-proc are specified" msgstr "" -#: cobol/genapi.cc:11381 +#: cobol/genapi.cc:11379 #, gcc-internal-format, gfc-internal-format msgid "" "%s(): syntax error -- both (or neither) GIVING and output-proc are specified" msgstr "" -#: cobol/genapi.cc:11787 +#: cobol/genapi.cc:11786 #, gcc-internal-format, gfc-internal-format msgid "" "%s(): syntax error -- both (or neither) files and output-proc are specified" msgstr "" -#: cobol/genapi.cc:12188 +#: cobol/genapi.cc:12187 #, gcc-internal-format msgid "CALL USING BY CONTENT <temporary> would require REPOSITORY PROTOTYPES." msgstr "" -#: cobol/genapi.cc:12440 +#: cobol/genapi.cc:12439 #, gcc-internal-format, gfc-internal-format msgid "%s(): What in the name of Nero's fiddle are we doing here?" msgstr "" -#: cobol/genapi.cc:13949 +#: cobol/genapi.cc:13948 #, gcc-internal-format, gfc-internal-format msgid "" "In parser_move(%s to %s), the move of FldLiteralN to %s hasn't been " "implemented" msgstr "" -#: cobol/genapi.cc:14185 +#: cobol/genapi.cc:14184 #, gcc-internal-format, gfc-internal-format msgid "" "In mh_dest_is_float(%s to %s), the move of %s to %s hasn't been implemented" msgstr "" -#: cobol/genapi.cc:16312 +#: cobol/genapi.cc:16279 #, gcc-internal-format, gfc-internal-format msgid "LEVEL 01 (%s) OCCURS has insufficient data.memsize" msgstr "" -#: cobol/genapi.cc:16384 +#: cobol/genapi.cc:16351 #, gcc-internal-format msgid "parser_symbol_add() was called with a NULL new_var\n" msgstr "" -#: cobol/genapi.cc:16412 +#: cobol/genapi.cc:16379 msgid "%s(): %2.2d %s is a table, but it improperly has a capacity of zero" msgstr "" -#: cobol/genapi.cc:16452 +#: cobol/genapi.cc:16419 #, gcc-internal-format, gfc-internal-format msgid "parser_symbol_add(): %s is its own ancestor" msgstr "" -#: cobol/genapi.cc:16458 +#: cobol/genapi.cc:16425 msgid "parser_symbol_add(): %2.2d %s has null ancestor" msgstr "" -#: cobol/genapi.cc:16466 +#: cobol/genapi.cc:16433 #, gcc-internal-format, gfc-internal-format msgid "parser_symbol_add( %s ) improperly has a non-null var_decl_node\n" msgstr "" -#: cobol/genapi.cc:16671 +#: cobol/genapi.cc:16638 msgid "%s(): %2.2d %s<%s> improperly has a data.capacity of zero" msgstr "" @@ -55833,26 +55834,26 @@ msgstr "" msgid "Too many subscripts" msgstr "" -#: cobol/lexio.cc:1488 +#: cobol/lexio.cc:1490 #, gcc-internal-format, gfc-internal-format msgid "%s pid %d terminated by %s" msgstr "" -#: cobol/lexio.cc:1493 +#: cobol/lexio.cc:1495 #, gcc-internal-format, gfc-internal-format msgid "%s exited with status %d" msgstr "" -#: cobol/symbols.cc:456 +#: cobol/symbols.cc:450 msgid "%s:%d: LblNone '%s' has parent #%zu" msgstr "" -#: cobol/symbols.cc:1968 +#: cobol/symbols.cc:1907 #, gcc-internal-format, gfc-internal-format msgid "%s: key must be field" msgstr "" -#: cobol/symbols.cc:3855 cobol/symbols.cc:3976 cobol/symbols.cc:4011 +#: cobol/symbols.cc:3709 cobol/symbols.cc:3816 cobol/symbols.cc:3846 #, gcc-internal-format, gfc-internal-format msgid "%s:%d: could not add '%s'" msgstr "" @@ -55862,17 +55863,17 @@ msgstr "" msgid "logic error: MOVE %s %s invalid type:" msgstr "" -#: cobol/util.cc:1726 +#: cobol/util.cc:1705 #, gcc-internal-format, gfc-internal-format msgid "%s: regcomp: %s" msgstr "" -#: cobol/util.cc:1836 +#: cobol/util.cc:1815 #, gcc-internal-format, gfc-internal-format msgid "logic error: missing inode for %s" msgstr "" -#: cobol/util.cc:2174 +#: cobol/util.cc:2141 #, gcc-internal-format, gfc-internal-format msgid "failed compiling %s" msgstr "" @@ -56343,7 +56344,7 @@ msgstr "" msgid "%q#D is private within this context" msgstr "" -#: cp/call.cc:8377 cp/decl.cc:9615 +#: cp/call.cc:8377 cp/decl.cc:9617 #, gcc-internal-format msgid "declared private here" msgstr "" @@ -56353,7 +56354,7 @@ msgstr "" msgid "%q#D is protected within this context" msgstr "" -#: cp/call.cc:8383 cp/decl.cc:9616 +#: cp/call.cc:8383 cp/decl.cc:9618 #, gcc-internal-format msgid "declared protected here" msgstr "" @@ -56728,7 +56729,7 @@ msgstr "" msgid "call to non-function %qD" msgstr "" -#: cp/call.cc:11947 cp/pt.cc:17448 cp/typeck.cc:3508 +#: cp/call.cc:11947 cp/pt.cc:17467 cp/typeck.cc:3508 #, gcc-internal-format msgid "cannot call constructor %<%T::%D%> directly" msgstr "" @@ -57330,7 +57331,7 @@ msgstr "" msgid "next member %q#D declared here" msgstr "" -#: cp/class.cc:7840 cp/decl.cc:18273 cp/parser.cc:28411 +#: cp/class.cc:7840 cp/decl.cc:18275 cp/parser.cc:28411 #, gcc-internal-format msgid "redefinition of %q#T" msgstr "" @@ -57468,7 +57469,7 @@ msgstr "" msgid "lambdas are implicitly %<constexpr%> only in C++17 and later" msgstr "" -#: cp/constexpr.cc:270 cp/decl.cc:15267 +#: cp/constexpr.cc:270 cp/decl.cc:15269 #, gcc-internal-format msgid "" "%<constexpr%> destructors only available with %<-std=c++20%> or %<-std=gnu+" @@ -57481,134 +57482,139 @@ msgstr "" msgid "invalid return type %qT of %<constexpr%> function %q+D" msgstr "" -#: cp/constexpr.cc:310 +#: cp/constexpr.cc:312 #, gcc-internal-format -msgid "%q#T has virtual base classes" +msgid "%<constexpr%> constructor in %q#T that has virtual base classes" msgstr "" -#: cp/constexpr.cc:568 +#: cp/constexpr.cc:315 +#, gcc-internal-format +msgid "%<constexpr%> destructor in %q#T that has virtual base classes" +msgstr "" + +#: cp/constexpr.cc:575 #, gcc-internal-format msgid "%<constexpr%> constructor does not have empty body" msgstr "" -#: cp/constexpr.cc:826 +#: cp/constexpr.cc:833 #, gcc-internal-format msgid "" "%<constexpr%> constructor for union %qT must initialize exactly one non-" "static data member" msgstr "" -#: cp/constexpr.cc:887 +#: cp/constexpr.cc:894 #, gcc-internal-format msgid "" "member %qD must be initialized by mem-initializer in %<constexpr%> " "constructor" msgstr "" -#: cp/constexpr.cc:950 +#: cp/constexpr.cc:957 #, gcc-internal-format msgid "body of %<constexpr%> function %qD not a return-statement" msgstr "" -#: cp/constexpr.cc:1069 +#: cp/constexpr.cc:1082 #, gcc-internal-format msgid "%<-fimplicit-constexpr%> only affects %<inline%> functions" msgstr "" -#: cp/constexpr.cc:1085 +#: cp/constexpr.cc:1098 #, gcc-internal-format msgid "%qD is not usable as a %<constexpr%> function because:" msgstr "" -#: cp/constexpr.cc:1339 cp/constexpr.cc:6558 +#: cp/constexpr.cc:1354 cp/constexpr.cc:6586 #, gcc-internal-format msgid "destroying %qE outside its lifetime" msgstr "" -#: cp/constexpr.cc:1631 cp/constexpr.cc:3389 +#: cp/constexpr.cc:1644 cp/constexpr.cc:3402 #: rust/backend/rust-constexpr.cc:3329 #, gcc-internal-format msgid "%<constexpr%> call flows off the end of the function" msgstr "" -#: cp/constexpr.cc:1633 cp/constexpr.cc:1732 cp/constexpr.cc:1741 -#: cp/constexpr.cc:3683 rust/backend/rust-constexpr.cc:3334 +#: cp/constexpr.cc:1646 cp/constexpr.cc:1745 cp/constexpr.cc:1754 +#: cp/constexpr.cc:3711 rust/backend/rust-constexpr.cc:3334 #: rust/backend/rust-constexpr.cc:3344 rust/backend/rust-constexpr.cc:4324 #, gcc-internal-format msgid "%q+E is not a constant expression" msgstr "" -#: cp/constexpr.cc:1891 cp/constexpr.cc:2790 cp/constexpr.cc:3077 -#: cp/constexpr.cc:10075 rust/backend/rust-constexpr.cc:5789 +#: cp/constexpr.cc:1904 cp/constexpr.cc:2803 cp/constexpr.cc:3086 +#: cp/constexpr.cc:10141 rust/backend/rust-constexpr.cc:5789 #, gcc-internal-format msgid "call to non-%<constexpr%> function %qD" msgstr "" -#: cp/constexpr.cc:1938 cp/constexpr.cc:6116 cp/constexpr.cc:8564 +#: cp/constexpr.cc:1951 cp/constexpr.cc:6144 cp/constexpr.cc:8592 #: rust/backend/rust-constexpr.cc:875 rust/backend/rust-constexpr.cc:2494 #, gcc-internal-format msgid "dereferencing a null pointer" msgstr "" -#: cp/constexpr.cc:2126 +#: cp/constexpr.cc:2139 #, gcc-internal-format msgid "the comparison reduces to %qE" msgstr "" -#: cp/constexpr.cc:2129 +#: cp/constexpr.cc:2142 #, gcc-internal-format msgid "%qE evaluates to false" msgstr "" -#: cp/constexpr.cc:2208 +#: cp/constexpr.cc:2221 #, gcc-internal-format msgid "failed %<assume%> attribute assumption" msgstr "" -#: cp/constexpr.cc:2243 cp/constexpr.cc:10039 +#: cp/constexpr.cc:2256 cp/constexpr.cc:10105 #: rust/backend/rust-constexpr.cc:5758 #, gcc-internal-format msgid "call to internal function %qE" msgstr "" -#: cp/constexpr.cc:2297 rust/backend/rust-constexpr.cc:2615 +#: cp/constexpr.cc:2310 rust/backend/rust-constexpr.cc:2615 #, gcc-internal-format msgid "modifying a const object %qE is not allowed in a constant expression" msgstr "" -#: cp/constexpr.cc:2325 rust/backend/rust-constexpr.cc:2618 +#: cp/constexpr.cc:2338 rust/backend/rust-constexpr.cc:2618 #, gcc-internal-format msgid "originally declared %<const%> here" msgstr "" -#: cp/constexpr.cc:2578 cp/constexpr.cc:2634 cp/constexpr.cc:2667 -#: cp/constexpr.cc:2689 +#: cp/constexpr.cc:2591 cp/constexpr.cc:2647 cp/constexpr.cc:2680 +#: cp/constexpr.cc:2702 #, gcc-internal-format msgid "reference %<dynamic_cast%> failed" msgstr "" -#: cp/constexpr.cc:2579 +#: cp/constexpr.cc:2592 #, gcc-internal-format msgid "dynamic type %qT of its operand does not have a base class of type %qT" msgstr "" -#: cp/constexpr.cc:2603 +#: cp/constexpr.cc:2616 #, gcc-internal-format msgid "virtual table pointer is used uninitialized" msgstr "" -#: cp/constexpr.cc:2635 cp/constexpr.cc:2668 +#: cp/constexpr.cc:2648 cp/constexpr.cc:2681 #, gcc-internal-format msgid "" "static type %qT of its operand is a non-public base class of dynamic type %qT" msgstr "" -#: cp/constexpr.cc:2691 +#: cp/constexpr.cc:2704 #, gcc-internal-format msgid "%qT is an ambiguous base class of dynamic type %qT of its operand" msgstr "" -#: cp/constexpr.cc:2694 +#: cp/constexpr.cc:2707 #, gcc-internal-format msgid "" "dynamic type %qT of its operand does not have an unambiguous public base " @@ -57617,154 +57623,154 @@ msgstr "" #. virtual_offset is only set for virtual bases, which make the #. class non-literal, so we don't need to handle it here. -#: cp/constexpr.cc:2796 +#: cp/constexpr.cc:2809 #, gcc-internal-format msgid "calling constexpr member function %qD through virtual base subobject" msgstr "" -#: cp/constexpr.cc:2908 rust/backend/rust-constexpr.cc:3390 +#: cp/constexpr.cc:2918 rust/backend/rust-constexpr.cc:3390 #, gcc-internal-format msgid "expression %qE does not designate a %<constexpr%> function" msgstr "" -#: cp/constexpr.cc:2956 +#: cp/constexpr.cc:2965 #, gcc-internal-format msgid "cannot allocate array: size not constant" msgstr "" -#: cp/constexpr.cc:2997 +#: cp/constexpr.cc:3006 #, gcc-internal-format msgid "array deallocation of object allocated with non-array allocation" msgstr "" -#: cp/constexpr.cc:3001 cp/constexpr.cc:3024 +#: cp/constexpr.cc:3010 cp/constexpr.cc:3033 #, gcc-internal-format msgid "allocation performed here" msgstr "" -#: cp/constexpr.cc:3020 +#: cp/constexpr.cc:3029 #, gcc-internal-format msgid "non-array deallocation of object allocated with array allocation" msgstr "" -#: cp/constexpr.cc:3037 +#: cp/constexpr.cc:3046 #, gcc-internal-format msgid "deallocation of already deallocated storage" msgstr "" -#: cp/constexpr.cc:3044 +#: cp/constexpr.cc:3053 #, gcc-internal-format msgid "deallocation of storage that was not previously allocated" msgstr "" -#: cp/constexpr.cc:3170 rust/backend/rust-constexpr.cc:3445 +#: cp/constexpr.cc:3179 rust/backend/rust-constexpr.cc:3445 #, gcc-internal-format msgid "%qD called in a constant expression before its definition is complete" msgstr "" -#: cp/constexpr.cc:3177 +#: cp/constexpr.cc:3186 #, gcc-internal-format msgid "%qD called in a constant expression" msgstr "" -#: cp/constexpr.cc:3181 rust/backend/rust-constexpr.cc:3459 +#: cp/constexpr.cc:3190 rust/backend/rust-constexpr.cc:3459 #, gcc-internal-format msgid "%qD used before its definition" msgstr "" -#: cp/constexpr.cc:3259 rust/backend/rust-constexpr.cc:3501 +#: cp/constexpr.cc:3272 rust/backend/rust-constexpr.cc:3501 #, gcc-internal-format msgid "call has circular dependency" msgstr "" -#: cp/constexpr.cc:3270 rust/backend/rust-constexpr.cc:3512 +#: cp/constexpr.cc:3283 rust/backend/rust-constexpr.cc:3512 #, gcc-internal-format msgid "" "%<constexpr%> evaluation depth exceeds maximum of %d (use %<-fconstexpr-" "depth=%> to increase the maximum)" msgstr "" -#: cp/constexpr.cc:3641 +#: cp/constexpr.cc:3669 #, gcc-internal-format msgid "reference to %qD is not a constant expression" msgstr "" -#: cp/constexpr.cc:3644 +#: cp/constexpr.cc:3672 #, gcc-internal-format msgid "pointer to %qD is not a constant expression" msgstr "" -#: cp/constexpr.cc:3650 +#: cp/constexpr.cc:3678 #, gcc-internal-format msgid "" "address of non-static constexpr variable %qD may differ on each invocation " "of the enclosing function; add %<static%> to give it a constant address" msgstr "" -#: cp/constexpr.cc:3726 +#: cp/constexpr.cc:3754 #, gcc-internal-format msgid "right operand of shift expression %q+E is negative" msgstr "" -#: cp/constexpr.cc:3733 +#: cp/constexpr.cc:3761 #, gcc-internal-format msgid "" "right operand of shift expression %q+E is greater than or equal to the " "precision %wu of the left operand" msgstr "" -#: cp/constexpr.cc:3756 +#: cp/constexpr.cc:3784 #, gcc-internal-format msgid "left operand of shift expression %q+E is negative" msgstr "" -#: cp/constexpr.cc:3775 +#: cp/constexpr.cc:3803 #, gcc-internal-format msgid "shift expression %q+E overflows" msgstr "" -#: cp/constexpr.cc:3974 +#: cp/constexpr.cc:4002 #, gcc-internal-format msgid "arithmetic involving a null pointer in %qE" msgstr "" -#: cp/constexpr.cc:4484 rust/backend/rust-constexpr.cc:4399 +#: cp/constexpr.cc:4512 rust/backend/rust-constexpr.cc:4399 #, gcc-internal-format msgid "" "array subscript value %qE is outside the bounds of array %qD of type %qT" msgstr "" -#: cp/constexpr.cc:4487 rust/backend/rust-constexpr.cc:4404 +#: cp/constexpr.cc:4515 rust/backend/rust-constexpr.cc:4404 #, gcc-internal-format msgid "" "nonzero array subscript %qE is used with array %qD of type %qT with unknown " "bounds" msgstr "" -#: cp/constexpr.cc:4492 rust/backend/rust-constexpr.cc:4411 +#: cp/constexpr.cc:4520 rust/backend/rust-constexpr.cc:4411 #, gcc-internal-format msgid "array subscript value %qE is outside the bounds of array type %qT" msgstr "" -#: cp/constexpr.cc:4495 rust/backend/rust-constexpr.cc:4416 +#: cp/constexpr.cc:4523 rust/backend/rust-constexpr.cc:4416 #, gcc-internal-format msgid "" "nonzero array subscript %qE is used with array of type %qT with unknown " "bounds" msgstr "" -#: cp/constexpr.cc:4694 rust/backend/rust-constexpr.cc:1667 +#: cp/constexpr.cc:4722 rust/backend/rust-constexpr.cc:1667 #, gcc-internal-format msgid "accessing uninitialized array element" msgstr "" -#: cp/constexpr.cc:4756 rust/backend/rust-constexpr.cc:1724 +#: cp/constexpr.cc:4784 rust/backend/rust-constexpr.cc:1724 #, gcc-internal-format msgid "dereferencing a null pointer in %qE" msgstr "" -#: cp/constexpr.cc:4775 cp/constexpr.cc:4891 cp/constexpr.cc:4903 -#: cp/constexpr.cc:7739 cp/constexpr.cc:7870 cp/constexpr.cc:9989 +#: cp/constexpr.cc:4803 cp/constexpr.cc:4919 cp/constexpr.cc:4931 +#: cp/constexpr.cc:7767 cp/constexpr.cc:7898 cp/constexpr.cc:10055 #: rust/backend/rust-constexpr.cc:1738 rust/backend/rust-constexpr.cc:1983 #: rust/backend/rust-constexpr.cc:2225 rust/backend/rust-constexpr.cc:4743 #: rust/backend/rust-constexpr.cc:5712 @@ -57772,269 +57778,269 @@ msgstr "" msgid "%qE is not a constant expression" msgstr "" -#: cp/constexpr.cc:4783 rust/backend/rust-constexpr.cc:1744 +#: cp/constexpr.cc:4811 rust/backend/rust-constexpr.cc:1744 #, gcc-internal-format msgid "mutable %qD is not usable in a constant expression" msgstr "" -#: cp/constexpr.cc:4815 cp/constexpr.cc:4851 cp/constexpr.cc:6726 +#: cp/constexpr.cc:4843 cp/constexpr.cc:4879 cp/constexpr.cc:6754 #: rust/backend/rust-constexpr.cc:1774 rust/backend/rust-constexpr.cc:1797 #, gcc-internal-format msgid "accessing uninitialized member %qD" msgstr "" -#: cp/constexpr.cc:4817 cp/constexpr.cc:4830 cp/constexpr.cc:6721 +#: cp/constexpr.cc:4845 cp/constexpr.cc:4858 cp/constexpr.cc:6749 #: rust/backend/rust-constexpr.cc:1776 #, gcc-internal-format msgid "" "accessing %qD member instead of initialized %qD member in constant expression" msgstr "" -#: cp/constexpr.cc:4969 +#: cp/constexpr.cc:4997 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is a union type" msgstr "" -#: cp/constexpr.cc:4972 +#: cp/constexpr.cc:5000 #, gcc-internal-format msgid "%qs is not a constant expression because %qT contains a union type" msgstr "" -#: cp/constexpr.cc:4983 +#: cp/constexpr.cc:5011 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is a pointer type" msgstr "" -#: cp/constexpr.cc:4986 +#: cp/constexpr.cc:5014 #, gcc-internal-format msgid "%qs is not a constant expression because %qT contains a pointer type" msgstr "" -#: cp/constexpr.cc:4997 +#: cp/constexpr.cc:5025 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is a reference type" msgstr "" -#: cp/constexpr.cc:5000 +#: cp/constexpr.cc:5028 #, gcc-internal-format msgid "%qs is not a constant expression because %qT contains a reference type" msgstr "" -#: cp/constexpr.cc:5011 +#: cp/constexpr.cc:5039 #, gcc-internal-format msgid "" "%qs is not a constant expression because %qT is a pointer to member type" msgstr "" -#: cp/constexpr.cc:5015 +#: cp/constexpr.cc:5043 #, gcc-internal-format msgid "" "%qs is not a constant expression because %qT contains a pointer to member " "type" msgstr "" -#: cp/constexpr.cc:5026 +#: cp/constexpr.cc:5054 #, gcc-internal-format msgid "%qs is not a constant expression because %qT is volatile" msgstr "" -#: cp/constexpr.cc:5029 +#: cp/constexpr.cc:5057 #, gcc-internal-format msgid "" "%qs is not a constant expression because %qT contains a volatile subobject" msgstr "" -#: cp/constexpr.cc:5184 +#: cp/constexpr.cc:5212 #, gcc-internal-format msgid "%qs cannot be constant evaluated on the target" msgstr "" -#: cp/constexpr.cc:5193 cp/constexpr.cc:5203 +#: cp/constexpr.cc:5221 cp/constexpr.cc:5231 #, gcc-internal-format msgid "%qs cannot be constant evaluated because the type is too large" msgstr "" -#: cp/constexpr.cc:5223 +#: cp/constexpr.cc:5251 #, gcc-internal-format msgid "%qs cannot be constant evaluated because the argument cannot be encoded" msgstr "" -#: cp/constexpr.cc:5269 +#: cp/constexpr.cc:5297 #, gcc-internal-format msgid "%qs accessing uninitialized byte at offset %d" msgstr "" -#: cp/constexpr.cc:5281 +#: cp/constexpr.cc:5309 #, gcc-internal-format msgid "" "%qs cannot be constant evaluated because the argument cannot be interpreted" msgstr "" -#: cp/constexpr.cc:6136 rust/backend/rust-constexpr.cc:895 +#: cp/constexpr.cc:6164 rust/backend/rust-constexpr.cc:895 #, gcc-internal-format msgid "accessing value of %qE through a %qT glvalue in a constant expression" msgstr "" #. Provide a more accurate message for deleted variables. -#: cp/constexpr.cc:6176 cp/constexpr.cc:6209 +#: cp/constexpr.cc:6204 cp/constexpr.cc:6237 #, gcc-internal-format msgid "use of allocated storage after deallocation in a constant expression" msgstr "" -#: cp/constexpr.cc:6178 cp/constexpr.cc:6204 cp/constexpr.cc:6211 -#: cp/constexpr.cc:6553 +#: cp/constexpr.cc:6206 cp/constexpr.cc:6232 cp/constexpr.cc:6239 +#: cp/constexpr.cc:6581 cp/constexpr.cc:9260 cp/constexpr.cc:9273 #, gcc-internal-format msgid "allocated here" msgstr "" -#: cp/constexpr.cc:6182 +#: cp/constexpr.cc:6210 #, gcc-internal-format msgid "accessing %qE outside its lifetime" msgstr "" -#: cp/constexpr.cc:6202 +#: cp/constexpr.cc:6230 #, gcc-internal-format msgid "" "the content of uninitialized storage is not usable in a constant expression" msgstr "" -#: cp/constexpr.cc:6214 rust/backend/rust-constexpr.cc:4041 +#: cp/constexpr.cc:6242 rust/backend/rust-constexpr.cc:4041 #, gcc-internal-format msgid "the value of %qD is not usable in a constant expression" msgstr "" -#: cp/constexpr.cc:6222 +#: cp/constexpr.cc:6250 #, gcc-internal-format msgid "%qD used in its own initializer" msgstr "" -#: cp/constexpr.cc:6227 +#: cp/constexpr.cc:6255 #, gcc-internal-format msgid "%q#D is not const" msgstr "" -#: cp/constexpr.cc:6230 +#: cp/constexpr.cc:6258 #, gcc-internal-format msgid "%q#D is volatile" msgstr "" -#: cp/constexpr.cc:6235 cp/constexpr.cc:6242 +#: cp/constexpr.cc:6263 cp/constexpr.cc:6270 #, gcc-internal-format msgid "%qD was not initialized with a constant expression" msgstr "" -#: cp/constexpr.cc:6248 +#: cp/constexpr.cc:6276 #, gcc-internal-format msgid "%qD was not declared %<constexpr%>" msgstr "" -#: cp/constexpr.cc:6251 +#: cp/constexpr.cc:6279 #, gcc-internal-format msgid "%qD does not have integral or enumeration type" msgstr "" -#: cp/constexpr.cc:6551 +#: cp/constexpr.cc:6579 #, gcc-internal-format msgid "" "modification of allocated storage after deallocation is not a constant " "expression" msgstr "" -#: cp/constexpr.cc:6560 +#: cp/constexpr.cc:6588 #, gcc-internal-format msgid "modification of %qE outside its lifetime is not a constant expression" msgstr "" -#: cp/constexpr.cc:6567 +#: cp/constexpr.cc:6595 #, gcc-internal-format msgid "" "destroying %qE from outside current evaluation is not a constant expression" msgstr "" -#: cp/constexpr.cc:6570 +#: cp/constexpr.cc:6598 #, gcc-internal-format msgid "" "modification of %qE from outside current evaluation is not a constant " "expression" msgstr "" -#: cp/constexpr.cc:6701 +#: cp/constexpr.cc:6729 #, gcc-internal-format msgid "" "change of the active member of a union from %qD to %qD is not a constant " "expression before C++20" msgstr "" -#: cp/constexpr.cc:6730 +#: cp/constexpr.cc:6758 #, gcc-internal-format msgid "" "%qD does not implicitly begin its lifetime because %qT does not have a non-" "deleted trivial default constructor, use %<std::construct_at%> instead" msgstr "" -#: cp/constexpr.cc:6737 +#: cp/constexpr.cc:6765 #, gcc-internal-format msgid "" "initializing %qD requires a member access expression as the left operand of " "the assignment" msgstr "" -#: cp/constexpr.cc:6749 rust/backend/rust-constexpr.cc:2820 +#: cp/constexpr.cc:6777 rust/backend/rust-constexpr.cc:2820 #, gcc-internal-format msgid "" "change of the active member of a union from %qD to %qD during initialization" msgstr "" -#: cp/constexpr.cc:7201 cp/constexpr.cc:8906 cp/constexpr.cc:8918 +#: cp/constexpr.cc:7229 cp/constexpr.cc:8934 cp/constexpr.cc:8946 #: rust/backend/rust-constexpr.cc:4668 #, gcc-internal-format msgid "statement is not a constant expression" msgstr "" -#: cp/constexpr.cc:7408 rust/backend/rust-constexpr.cc:4933 +#: cp/constexpr.cc:7436 rust/backend/rust-constexpr.cc:4933 #, gcc-internal-format msgid "" "%<constexpr%> loop iteration count exceeds limit of %d (use %<-fconstexpr-" "loop-limit=%> to increase the limit)" msgstr "" -#: cp/constexpr.cc:7517 rust/backend/rust-constexpr.cc:999 +#: cp/constexpr.cc:7545 rust/backend/rust-constexpr.cc:999 #, gcc-internal-format msgid "inline assembly is not a constant expression" msgstr "" -#: cp/constexpr.cc:7519 rust/backend/rust-constexpr.cc:1000 +#: cp/constexpr.cc:7547 rust/backend/rust-constexpr.cc:1000 #, gcc-internal-format msgid "" "only unevaluated inline assembly is allowed in a %<constexpr%> function in C+" "+20" msgstr "" -#: cp/constexpr.cc:7538 +#: cp/constexpr.cc:7566 #, gcc-internal-format msgid "use of %qD" msgstr "" -#: cp/constexpr.cc:7542 +#: cp/constexpr.cc:7570 #, gcc-internal-format msgid "" "its value can vary between compiler versions or with different %<-mtune%> or " "%<-mcpu%> flags" msgstr "" -#: cp/constexpr.cc:7544 +#: cp/constexpr.cc:7572 #, gcc-internal-format msgid "" "if this use is part of a public ABI, change it to instead use a constant " "variable you define" msgstr "" -#: cp/constexpr.cc:7546 +#: cp/constexpr.cc:7574 #, gcc-internal-format, gfc-internal-format msgid "the default value for the current CPU tuning is %d bytes" msgstr "" -#: cp/constexpr.cc:7548 +#: cp/constexpr.cc:7576 #, gcc-internal-format msgid "" "you can stabilize this value with %<--param " @@ -58042,239 +58048,234 @@ msgid "" "Wno-interference-size%>" msgstr "" -#: cp/constexpr.cc:7701 +#: cp/constexpr.cc:7729 #, gcc-internal-format msgid "value %qE of type %qT is not a constant expression" msgstr "" -#: cp/constexpr.cc:7714 +#: cp/constexpr.cc:7742 #, gcc-internal-format msgid "" "%<constexpr%> evaluation operation count exceeds limit of %wd (use %<-" "fconstexpr-ops-limit=%> to increase the limit)" msgstr "" -#: cp/constexpr.cc:7900 +#: cp/constexpr.cc:7928 #, gcc-internal-format msgid "control passes through definition of %qD with thread storage duration" msgstr "" -#: cp/constexpr.cc:7903 +#: cp/constexpr.cc:7931 #, gcc-internal-format msgid "control passes through definition of %qD with static storage duration" msgstr "" -#: cp/constexpr.cc:7968 cp/constexpr.cc:10700 +#: cp/constexpr.cc:7996 cp/constexpr.cc:10751 #: rust/backend/rust-constexpr.cc:2056 rust/backend/rust-constexpr.cc:6206 #, gcc-internal-format msgid "temporary of non-literal type %qT in a constant expression" msgstr "" -#: cp/constexpr.cc:8426 cp/constexpr.cc:10190 +#: cp/constexpr.cc:8454 cp/constexpr.cc:10256 #, gcc-internal-format msgid "%<reinterpret_cast%> is not a constant expression" msgstr "" -#: cp/constexpr.cc:8457 rust/backend/rust-constexpr.cc:2461 +#: cp/constexpr.cc:8485 rust/backend/rust-constexpr.cc:2461 #, gcc-internal-format msgid "" "conversion from pointer type %qT to arithmetic type %qT in a constant " "expression" msgstr "" -#: cp/constexpr.cc:8509 +#: cp/constexpr.cc:8537 #, gcc-internal-format msgid "" "cast from %qT is not allowed in a constant expression because pointed-to " "type %qT is not similar to %qT" msgstr "" -#: cp/constexpr.cc:8519 +#: cp/constexpr.cc:8547 #, gcc-internal-format msgid "pointed-to object declared here" msgstr "" -#: cp/constexpr.cc:8527 +#: cp/constexpr.cc:8555 #, gcc-internal-format msgid "cast from %qT is not allowed in a constant expression before C++26" msgstr "" -#: cp/constexpr.cc:8541 +#: cp/constexpr.cc:8569 #, gcc-internal-format msgid "%qE is not a constant expression when the class %qT is still incomplete" msgstr "" -#: cp/constexpr.cc:8581 rust/backend/rust-constexpr.cc:2506 +#: cp/constexpr.cc:8609 rust/backend/rust-constexpr.cc:2506 #, gcc-internal-format msgid "%<reinterpret_cast<%T>(%E)%> is not a constant expression" msgstr "" -#: cp/constexpr.cc:8719 cp/constexpr.cc:10512 cp/constexpr.cc:10923 +#: cp/constexpr.cc:8747 cp/constexpr.cc:10563 cp/constexpr.cc:10974 #: rust/backend/rust-constexpr.cc:6100 rust/backend/rust-constexpr.cc:6415 #, gcc-internal-format msgid "expression %qE is not a constant expression" msgstr "" -#: cp/constexpr.cc:8763 cp/constexpr.cc:10964 +#: cp/constexpr.cc:8791 cp/constexpr.cc:11015 #, gcc-internal-format msgid "%<goto%> is not a constant expression" msgstr "" -#: cp/constexpr.cc:8821 +#: cp/constexpr.cc:8849 #, gcc-internal-format msgid "contract predicate is false in constant expression" msgstr "" -#: cp/constexpr.cc:8856 +#: cp/constexpr.cc:8884 #, gcc-internal-format msgid "address of a call to %qs is not a constant expression" msgstr "" -#: cp/constexpr.cc:8921 +#: cp/constexpr.cc:8949 #, gcc-internal-format msgid "unexpected expression %qE of kind %s" msgstr "" -#: cp/constexpr.cc:9211 rust/backend/rust-constexpr.cc:5158 +#: cp/constexpr.cc:9243 rust/backend/rust-constexpr.cc:5158 #, gcc-internal-format msgid "" "%qE is not a constant expression because it refers to mutable subobjects of " "%qT" msgstr "" -#: cp/constexpr.cc:9219 rust/backend/rust-constexpr.cc:5167 -#, gcc-internal-format -msgid "" -"%qE is not a constant expression because it refers to an incompletely " -"initialized variable" -msgstr "" - -#: cp/constexpr.cc:9235 rust/backend/rust-constexpr.cc:5183 +#: cp/constexpr.cc:9258 rust/backend/rust-constexpr.cc:5183 #, gcc-internal-format msgid "" "%qE is not a constant expression because it refers to a result of %<operator " "new%>" msgstr "" -#: cp/constexpr.cc:9246 rust/backend/rust-constexpr.cc:5195 +#: cp/constexpr.cc:9271 rust/backend/rust-constexpr.cc:5195 #, gcc-internal-format msgid "" "%qE is not a constant expression because allocated storage has not been " "deallocated" msgstr "" -#: cp/constexpr.cc:9266 rust/backend/rust-constexpr.cc:5213 +#: cp/constexpr.cc:9293 rust/backend/rust-constexpr.cc:5213 #, gcc-internal-format msgid "immediate evaluation returns address of immediate function %qD" msgstr "" -#: cp/constexpr.cc:9270 +#: cp/constexpr.cc:9297 #, gcc-internal-format msgid "constant evaluation returns address of immediate function %qD" msgstr "" -#: cp/constexpr.cc:9305 +#: cp/constexpr.cc:9313 rust/backend/rust-constexpr.cc:5167 +#, gcc-internal-format +msgid "" +"%qE is not a constant expression because it refers to an incompletely " +"initialized variable" +msgstr "" + +#: cp/constexpr.cc:9351 #, gcc-internal-format msgid "" "%qE is not a constant expression because it initializes a %qT rather than %qT" msgstr "" -#: cp/constexpr.cc:9926 rust/backend/rust-constexpr.cc:5667 +#: cp/constexpr.cc:9992 rust/backend/rust-constexpr.cc:5667 #, gcc-internal-format msgid "lvalue-to-rvalue conversion of a volatile lvalue %qE with type %qT" msgstr "" -#: cp/constexpr.cc:10155 +#: cp/constexpr.cc:10221 #, gcc-internal-format msgid "lambda capture of %qE is not a constant expression" msgstr "" -#: cp/constexpr.cc:10158 +#: cp/constexpr.cc:10224 #, gcc-internal-format msgid "because it is used as a glvalue" msgstr "" -#: cp/constexpr.cc:10214 rust/backend/rust-constexpr.cc:5893 +#: cp/constexpr.cc:10280 rust/backend/rust-constexpr.cc:5893 #, gcc-internal-format msgid "%<reinterpret_cast%> from integer to pointer" msgstr "" -#: cp/constexpr.cc:10248 rust/backend/rust-constexpr.cc:5921 +#: cp/constexpr.cc:10314 rust/backend/rust-constexpr.cc:5921 #, gcc-internal-format msgid "" "address-of an object %qE with thread local or automatic storage is not a " "constant expression" msgstr "" -#: cp/constexpr.cc:10290 -#, gcc-internal-format -msgid "use of %<this%> in a constant expression" -msgstr "" - -#: cp/constexpr.cc:10447 +#: cp/constexpr.cc:10498 #, gcc-internal-format msgid "lambda-expression is not a constant expression before C++17" msgstr "" -#: cp/constexpr.cc:10459 +#: cp/constexpr.cc:10510 #, gcc-internal-format msgid "new-expression is not a constant expression before C++20" msgstr "" -#: cp/constexpr.cc:10526 +#: cp/constexpr.cc:10577 #, gcc-internal-format msgid "virtual functions cannot be %<constexpr%> before C++20" msgstr "" -#: cp/constexpr.cc:10542 +#: cp/constexpr.cc:10593 #, gcc-internal-format msgid "" "%<typeid%> is not a constant expression because %qE is of polymorphic type" msgstr "" -#: cp/constexpr.cc:10606 +#: cp/constexpr.cc:10657 #, gcc-internal-format msgid "cast to non-integral type %qT in a constant expression" msgstr "" -#: cp/constexpr.cc:10664 +#: cp/constexpr.cc:10715 #, gcc-internal-format msgid "%qD defined %<thread_local%> in %<constexpr%> context" msgstr "" -#: cp/constexpr.cc:10672 +#: cp/constexpr.cc:10723 #, gcc-internal-format msgid "%qD defined %<static%> in %<constexpr%> context" msgstr "" -#: cp/constexpr.cc:10750 rust/backend/rust-constexpr.cc:6251 +#: cp/constexpr.cc:10801 rust/backend/rust-constexpr.cc:6251 #, gcc-internal-format msgid "division by zero is not a constant expression" msgstr "" -#: cp/constexpr.cc:10851 rust/backend/rust-constexpr.cc:6349 +#: cp/constexpr.cc:10902 rust/backend/rust-constexpr.cc:6349 #, gcc-internal-format msgid "%<delete[]%> is not a constant expression" msgstr "" -#: cp/constexpr.cc:10920 +#: cp/constexpr.cc:10971 #, gcc-internal-format msgid "neither branch of %<if%> is a constant expression" msgstr "" -#: cp/constexpr.cc:10933 +#: cp/constexpr.cc:10984 #, gcc-internal-format msgid "non-constant array initialization" msgstr "" -#: cp/constexpr.cc:10981 +#: cp/constexpr.cc:11032 #, gcc-internal-format msgid "" "label definition in %<constexpr%> function only available with %<-std=c+" "+23%> or %<-std=gnu++23%>" msgstr "" -#: cp/constexpr.cc:11017 rust/backend/rust-constexpr.cc:6438 +#: cp/constexpr.cc:11068 rust/backend/rust-constexpr.cc:6438 #, gcc-internal-format, gfc-internal-format msgid "unexpected AST of kind %s" msgstr "" @@ -58396,316 +58397,316 @@ msgstr "" msgid "the operand %qE is unsatisfied because" msgstr "" -#: cp/constraint.cc:3042 +#: cp/constraint.cc:3044 #, gcc-internal-format msgid " %qT is not nothrow copy assignable" msgstr "" -#: cp/constraint.cc:3045 cp/constraint.cc:3139 +#: cp/constraint.cc:3047 cp/constraint.cc:3141 #, gcc-internal-format msgid " %qT is not nothrow default constructible" msgstr "" -#: cp/constraint.cc:3048 +#: cp/constraint.cc:3050 #, gcc-internal-format msgid " %qT is not nothrow copy constructible" msgstr "" -#: cp/constraint.cc:3051 +#: cp/constraint.cc:3053 #, gcc-internal-format msgid " %qT is not trivially copy assignable" msgstr "" -#: cp/constraint.cc:3054 cp/constraint.cc:3188 +#: cp/constraint.cc:3056 cp/constraint.cc:3190 #, gcc-internal-format msgid " %qT is not trivially default constructible" msgstr "" -#: cp/constraint.cc:3057 +#: cp/constraint.cc:3059 #, gcc-internal-format msgid " %qT is not trivially copy constructible" msgstr "" -#: cp/constraint.cc:3060 +#: cp/constraint.cc:3062 #, gcc-internal-format msgid " %qT is not trivially destructible" msgstr "" -#: cp/constraint.cc:3063 +#: cp/constraint.cc:3065 #, gcc-internal-format msgid " %qT does not have unique object representations" msgstr "" -#: cp/constraint.cc:3066 +#: cp/constraint.cc:3068 #, gcc-internal-format msgid " %qT does not have a virtual destructor" msgstr "" -#: cp/constraint.cc:3069 +#: cp/constraint.cc:3071 #, gcc-internal-format msgid " %qT is not an abstract class" msgstr "" -#: cp/constraint.cc:3072 +#: cp/constraint.cc:3074 #, gcc-internal-format msgid " %qT is not an aggregate" msgstr "" -#: cp/constraint.cc:3075 +#: cp/constraint.cc:3077 #, gcc-internal-format msgid " %qT is not an array" msgstr "" -#: cp/constraint.cc:3078 +#: cp/constraint.cc:3080 #, gcc-internal-format msgid " %qT is not assignable from %qT" msgstr "" -#: cp/constraint.cc:3081 +#: cp/constraint.cc:3083 #, gcc-internal-format msgid " %qT is not a base of %qT" msgstr "" -#: cp/constraint.cc:3084 +#: cp/constraint.cc:3086 #, gcc-internal-format msgid " %qT is not a bounded array" msgstr "" -#: cp/constraint.cc:3087 +#: cp/constraint.cc:3089 #, gcc-internal-format msgid " %qT is not a class" msgstr "" -#: cp/constraint.cc:3090 +#: cp/constraint.cc:3092 #, gcc-internal-format msgid " %qT is not a const type" msgstr "" -#: cp/constraint.cc:3094 +#: cp/constraint.cc:3096 #, gcc-internal-format msgid " %qT is not default constructible" msgstr "" -#: cp/constraint.cc:3096 +#: cp/constraint.cc:3098 #, gcc-internal-format msgid " %qT is not constructible from %qE" msgstr "" -#: cp/constraint.cc:3099 +#: cp/constraint.cc:3101 #, gcc-internal-format msgid " %qT is not convertible from %qE" msgstr "" -#: cp/constraint.cc:3102 +#: cp/constraint.cc:3104 #, gcc-internal-format msgid " %qT is not an empty class" msgstr "" -#: cp/constraint.cc:3105 +#: cp/constraint.cc:3107 #, gcc-internal-format msgid " %qT is not an enum" msgstr "" -#: cp/constraint.cc:3108 +#: cp/constraint.cc:3110 #, gcc-internal-format msgid " %qT is not a final class" msgstr "" -#: cp/constraint.cc:3111 +#: cp/constraint.cc:3113 #, gcc-internal-format msgid " %qT is not a function" msgstr "" -#: cp/constraint.cc:3115 +#: cp/constraint.cc:3117 #, gcc-internal-format msgid " %qT is not invocable" msgstr "" -#: cp/constraint.cc:3117 +#: cp/constraint.cc:3119 #, gcc-internal-format msgid " %qT is not invocable by %qE" msgstr "" -#: cp/constraint.cc:3120 +#: cp/constraint.cc:3122 #, gcc-internal-format msgid " %qT is not layout compatible with %qT" msgstr "" -#: cp/constraint.cc:3123 +#: cp/constraint.cc:3125 #, gcc-internal-format msgid " %qT is not a literal type" msgstr "" -#: cp/constraint.cc:3126 +#: cp/constraint.cc:3128 #, gcc-internal-format msgid " %qT is not a member function pointer" msgstr "" -#: cp/constraint.cc:3129 +#: cp/constraint.cc:3131 #, gcc-internal-format msgid " %qT is not a member object pointer" msgstr "" -#: cp/constraint.cc:3132 +#: cp/constraint.cc:3134 #, gcc-internal-format msgid " %qT is not a member pointer" msgstr "" -#: cp/constraint.cc:3135 +#: cp/constraint.cc:3137 #, gcc-internal-format msgid " %qT is not nothrow assignable from %qT" msgstr "" -#: cp/constraint.cc:3141 +#: cp/constraint.cc:3143 #, gcc-internal-format msgid " %qT is not nothrow constructible from %qE" msgstr "" -#: cp/constraint.cc:3144 +#: cp/constraint.cc:3146 #, gcc-internal-format msgid " %qT is not nothrow convertible from %qE" msgstr "" -#: cp/constraint.cc:3148 +#: cp/constraint.cc:3150 #, gcc-internal-format msgid " %qT is not nothrow invocable" msgstr "" -#: cp/constraint.cc:3150 +#: cp/constraint.cc:3152 #, gcc-internal-format msgid " %qT is not nothrow invocable by %qE" msgstr "" -#: cp/constraint.cc:3153 +#: cp/constraint.cc:3155 #, gcc-internal-format msgid " %qT is not an object type" msgstr "" -#: cp/constraint.cc:3156 +#: cp/constraint.cc:3158 #, gcc-internal-format msgid " %qT is not pointer-interconvertible base of %qT" msgstr "" -#: cp/constraint.cc:3160 +#: cp/constraint.cc:3162 #, gcc-internal-format msgid " %qT is not a POD type" msgstr "" -#: cp/constraint.cc:3163 +#: cp/constraint.cc:3165 #, gcc-internal-format msgid " %qT is not a pointer" msgstr "" -#: cp/constraint.cc:3166 +#: cp/constraint.cc:3168 #, gcc-internal-format msgid " %qT is not a polymorphic type" msgstr "" -#: cp/constraint.cc:3169 +#: cp/constraint.cc:3171 #, gcc-internal-format msgid " %qT is not a reference" msgstr "" -#: cp/constraint.cc:3172 +#: cp/constraint.cc:3174 #, gcc-internal-format msgid " %qT is not the same as %qT" msgstr "" -#: cp/constraint.cc:3175 +#: cp/constraint.cc:3177 #, gcc-internal-format msgid " %qT is not a scoped enum" msgstr "" -#: cp/constraint.cc:3178 +#: cp/constraint.cc:3180 #, gcc-internal-format msgid " %qT is not an standard layout type" msgstr "" -#: cp/constraint.cc:3181 +#: cp/constraint.cc:3183 #, gcc-internal-format msgid " %qT is not a trivial type" msgstr "" -#: cp/constraint.cc:3184 +#: cp/constraint.cc:3186 #, gcc-internal-format msgid " %qT is not trivially assignable from %qT" msgstr "" -#: cp/constraint.cc:3190 +#: cp/constraint.cc:3192 #, gcc-internal-format msgid " %qT is not trivially constructible from %qE" msgstr "" -#: cp/constraint.cc:3193 +#: cp/constraint.cc:3195 #, gcc-internal-format msgid " %qT is not trivially copyable" msgstr "" -#: cp/constraint.cc:3196 +#: cp/constraint.cc:3198 #, gcc-internal-format msgid " %qT is not an unbounded array" msgstr "" -#: cp/constraint.cc:3199 +#: cp/constraint.cc:3201 #, gcc-internal-format msgid " %qT is not a union" msgstr "" -#: cp/constraint.cc:3202 +#: cp/constraint.cc:3204 #, gcc-internal-format msgid " %qT is not a virtual base of %qT" msgstr "" -#: cp/constraint.cc:3205 +#: cp/constraint.cc:3207 #, gcc-internal-format msgid " %qT is not a volatile type" msgstr "" -#: cp/constraint.cc:3208 +#: cp/constraint.cc:3210 #, gcc-internal-format msgid " %qT cannot yield a rank" msgstr "" -#: cp/constraint.cc:3211 +#: cp/constraint.cc:3213 #, gcc-internal-format msgid "" " %qT is not a reference that binds to a temporary object of type %qT " "(direct-initialization)" msgstr "" -#: cp/constraint.cc:3215 +#: cp/constraint.cc:3217 #, gcc-internal-format msgid "" " %qT is not a reference that binds to a temporary object of type %qT (copy-" "initialization)" msgstr "" -#: cp/constraint.cc:3219 +#: cp/constraint.cc:3221 #, gcc-internal-format msgid " %qD is not deducible from %qT" msgstr "" -#: cp/constraint.cc:3246 +#: cp/constraint.cc:3248 #, gcc-internal-format msgid "invalid constraints" msgstr "" -#: cp/constraint.cc:3271 +#: cp/constraint.cc:3273 #, gcc-internal-format msgid "constraint %qE has type %qT, not %<bool%>" msgstr "" -#: cp/constraint.cc:3274 +#: cp/constraint.cc:3276 #, gcc-internal-format msgid "the expression %qE evaluated to %<false%>" msgstr "" -#: cp/constraint.cc:3325 +#: cp/constraint.cc:3327 #, gcc-internal-format msgid "constraints not satisfied" msgstr "" -#: cp/constraint.cc:3342 +#: cp/constraint.cc:3344 #, gcc-internal-format msgid "set %qs to at least %d for more detail" msgstr "" @@ -58813,58 +58814,58 @@ msgstr "" msgid "function does not return a value to test" msgstr "" -#: cp/contracts.cc:1139 +#: cp/contracts.cc:1143 #, gcc-internal-format msgid "mismatched contract attribute in declaration" msgstr "" -#: cp/contracts.cc:1141 cp/contracts.cc:1172 +#: cp/contracts.cc:1145 cp/contracts.cc:1176 #, gcc-internal-format msgid "previous contract here" msgstr "" -#: cp/contracts.cc:1169 +#: cp/contracts.cc:1173 #, gcc-internal-format msgid "mismatched contract condition in declaration" msgstr "" -#: cp/contracts.cc:1212 +#: cp/contracts.cc:1216 #, gcc-internal-format msgid "" "declaration has a different number of contracts than previously declared" msgstr "" -#: cp/contracts.cc:1218 +#: cp/contracts.cc:1222 #, gcc-internal-format msgid "original declaration with fewer contracts here" msgstr "" -#: cp/contracts.cc:1964 +#: cp/contracts.cc:1968 #, gcc-internal-format msgid "contracts must appertain to a function type" msgstr "" -#: cp/contracts.cc:2261 +#: cp/contracts.cc:2265 #, gcc-internal-format msgid "cannot add contracts after definition" msgstr "" -#: cp/contracts.cc:2262 +#: cp/contracts.cc:2266 #, gcc-internal-format msgid "original definition here" msgstr "" -#: cp/contracts.cc:2270 +#: cp/contracts.cc:2274 #, gcc-internal-format msgid "cannot add contracts to a virtual function" msgstr "" -#: cp/contracts.cc:2271 +#: cp/contracts.cc:2275 #, gcc-internal-format msgid "original declaration here" msgstr "" -#: cp/contracts.cc:2281 +#: cp/contracts.cc:2285 #, gcc-internal-format msgid "declaration adds contracts to %q#D" msgstr "" @@ -58936,7 +58937,7 @@ msgstr "" msgid "%<return_void%> declared here" msgstr "" -#: cp/coroutines.cc:919 cp/coroutines.cc:997 cp/coroutines.cc:4553 +#: cp/coroutines.cc:919 cp/coroutines.cc:997 cp/coroutines.cc:4536 #, gcc-internal-format msgid "no member named %qE in %qT" msgstr "" @@ -59025,39 +59026,39 @@ msgstr "" msgid "the direction argument to %<__builtin_coro_promise%> must be a constant" msgstr "" -#: cp/coroutines.cc:2267 +#: cp/coroutines.cc:2252 #, gcc-internal-format msgid "no suspend point info for %qD" msgstr "" -#: cp/coroutines.cc:2829 +#: cp/coroutines.cc:2812 #, gcc-internal-format msgid "duplicate info for %qE" msgstr "" -#: cp/coroutines.cc:3958 +#: cp/coroutines.cc:3941 #, gcc-internal-format msgid "await expressions are not permitted in handlers" msgstr "" -#: cp/coroutines.cc:4183 +#: cp/coroutines.cc:4166 #, gcc-internal-format msgid "variable length arrays are not yet supported in coroutines" msgstr "" -#: cp/coroutines.cc:4701 +#: cp/coroutines.cc:4684 #, gcc-internal-format msgid "" "%qE is provided by %qT but is not usable with the function signature %qD" msgstr "" -#: cp/coroutines.cc:4708 +#: cp/coroutines.cc:4691 #, gcc-internal-format msgid "" "%qE is provided by %qT but %qE is not marked %<throw()%> or %<noexcept%>" msgstr "" -#: cp/coroutines.cc:4713 +#: cp/coroutines.cc:4696 #, gcc-internal-format msgid "" "%qE is marked %<throw()%> or %<noexcept%> but no usable " @@ -59065,17 +59066,17 @@ msgid "" msgstr "" #. Something is seriously wrong, punt. -#: cp/coroutines.cc:4744 +#: cp/coroutines.cc:4727 #, gcc-internal-format msgid "%qE is provided by %qT but %<std::nothrow%> cannot be found" msgstr "" -#: cp/coroutines.cc:4840 +#: cp/coroutines.cc:4823 #, gcc-internal-format msgid "%qE is provided by %qT but is not usable with the function %qD" msgstr "" -#: cp/coroutines.cc:5146 +#: cp/coroutines.cc:5129 #, gcc-internal-format msgid "" "no viable conversion from %<void%> provided by %<get_return_object%> to " @@ -59104,65 +59105,65 @@ msgstr "" msgid "taking address of an immediate function %qD" msgstr "" -#: cp/cp-gimplify.cc:1315 +#: cp/cp-gimplify.cc:1318 #, gcc-internal-format msgid "call to consteval function %qE is not a constant expression" msgstr "" -#: cp/cp-gimplify.cc:2045 +#: cp/cp-gimplify.cc:2050 #, gcc-internal-format msgid "%<throw%> will always call %<terminate%>" msgstr "" -#: cp/cp-gimplify.cc:2048 +#: cp/cp-gimplify.cc:2053 #, gcc-internal-format msgid "in C++11 destructors default to %<noexcept%>" msgstr "" -#: cp/cp-gimplify.cc:2060 +#: cp/cp-gimplify.cc:2065 #, gcc-internal-format msgid "" "in C++11 this %<throw%> will call %<terminate%> because destructors default " "to %<noexcept%>" msgstr "" -#: cp/cp-gimplify.cc:3645 +#: cp/cp-gimplify.cc:3650 #, gcc-internal-format msgid "ignoring attribute %qE after earlier %qE" msgstr "" -#: cp/cp-gimplify.cc:3688 +#: cp/cp-gimplify.cc:3693 #, gcc-internal-format msgid "pack expansion of %qE attribute" msgstr "" -#: cp/cp-gimplify.cc:3691 +#: cp/cp-gimplify.cc:3696 #, gcc-internal-format msgid "use fold expression in the attribute argument instead" msgstr "" -#: cp/cp-gimplify.cc:3730 cp/cp-gimplify.cc:3742 cp/decl.cc:4511 +#: cp/cp-gimplify.cc:3735 cp/cp-gimplify.cc:3747 cp/decl.cc:4511 #: cp/method.cc:990 #, gcc-internal-format msgid "%qD is not a type" msgstr "" -#: cp/cp-gimplify.cc:3748 +#: cp/cp-gimplify.cc:3753 #, gcc-internal-format msgid "%qD is not a class type" msgstr "" -#: cp/cp-gimplify.cc:3765 +#: cp/cp-gimplify.cc:3770 #, gcc-internal-format msgid "%qD does not have %<const char *%> type" msgstr "" -#: cp/cp-gimplify.cc:3775 +#: cp/cp-gimplify.cc:3780 #, gcc-internal-format msgid "%qD does not have integral type" msgstr "" -#: cp/cp-gimplify.cc:3787 +#: cp/cp-gimplify.cc:3792 #, gcc-internal-format msgid "" "%<std::source_location::__impl%> does not contain only non-static data " @@ -59655,7 +59656,7 @@ msgstr "" msgid "redeclaration %qD differs in %qs from previous declaration" msgstr "" -#: cp/decl.cc:1492 cp/decl.cc:17249 +#: cp/decl.cc:1492 cp/decl.cc:17251 #, gcc-internal-format msgid "previous declaration %qD" msgstr "" @@ -59868,12 +59869,12 @@ msgstr "" msgid "previous specification in %q#D here" msgstr "" -#: cp/decl.cc:2321 cp/decl.cc:17267 +#: cp/decl.cc:2321 cp/decl.cc:17269 #, gcc-internal-format msgid "conflicting exporting for declaration %qD" msgstr "" -#: cp/decl.cc:2323 cp/decl.cc:17269 +#: cp/decl.cc:2323 cp/decl.cc:17271 #, gcc-internal-format msgid "previously declared here without exporting" msgstr "" @@ -60150,848 +60151,848 @@ msgid "" "cache-line-size=%d%>" msgstr "" -#: cp/decl.cc:5567 +#: cp/decl.cc:5569 #, gcc-internal-format msgid "" "%q#D invalid; an anonymous union may only have public non-static data members" msgstr "" -#: cp/decl.cc:5577 cp/parser.cc:24254 +#: cp/decl.cc:5579 cp/parser.cc:24254 #, gcc-internal-format msgid "this flexibility is deprecated and will be removed" msgstr "" -#: cp/decl.cc:5606 +#: cp/decl.cc:5608 #, gcc-internal-format msgid "anonymous struct with base classes" msgstr "" -#: cp/decl.cc:5618 +#: cp/decl.cc:5620 #, gcc-internal-format msgid "member %q+#D with constructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.cc:5621 +#: cp/decl.cc:5623 #, gcc-internal-format msgid "member %q+#D with destructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.cc:5624 +#: cp/decl.cc:5626 #, gcc-internal-format msgid "" "member %q+#D with copy assignment operator not allowed in anonymous aggregate" msgstr "" -#: cp/decl.cc:5643 +#: cp/decl.cc:5645 #, gcc-internal-format msgid "attribute ignored in declaration of %q#T" msgstr "" -#: cp/decl.cc:5646 +#: cp/decl.cc:5648 #, gcc-internal-format msgid "attribute for %q#T must follow the %qs keyword" msgstr "" -#: cp/decl.cc:5688 +#: cp/decl.cc:5690 #, gcc-internal-format msgid "multiple types in one declaration" msgstr "" -#: cp/decl.cc:5693 +#: cp/decl.cc:5695 #, gcc-internal-format msgid "redeclaration of C++ built-in type %qT" msgstr "" -#: cp/decl.cc:5710 +#: cp/decl.cc:5712 #, gcc-internal-format msgid "%<auto%> can only be specified for variables or function declarations" msgstr "" -#: cp/decl.cc:5743 +#: cp/decl.cc:5745 #, gcc-internal-format msgid "missing type-name in typedef-declaration" msgstr "" -#: cp/decl.cc:5751 +#: cp/decl.cc:5753 #, gcc-internal-format msgid "ISO C++ prohibits anonymous structs" msgstr "" -#: cp/decl.cc:5758 +#: cp/decl.cc:5760 #, gcc-internal-format msgid "%<inline%> can only be specified for functions" msgstr "" -#: cp/decl.cc:5761 +#: cp/decl.cc:5763 #, gcc-internal-format msgid "%<virtual%> can only be specified for functions" msgstr "" -#: cp/decl.cc:5766 +#: cp/decl.cc:5768 #, gcc-internal-format msgid "%<friend%> can only be specified inside a class" msgstr "" -#: cp/decl.cc:5769 +#: cp/decl.cc:5771 #, gcc-internal-format msgid "%<explicit%> can only be specified for constructors" msgstr "" -#: cp/decl.cc:5772 +#: cp/decl.cc:5774 #, gcc-internal-format msgid "a storage class can only be specified for objects and functions" msgstr "" -#: cp/decl.cc:5776 +#: cp/decl.cc:5778 #, gcc-internal-format msgid "%<const%> can only be specified for objects and functions" msgstr "" -#: cp/decl.cc:5780 +#: cp/decl.cc:5782 #, gcc-internal-format msgid "%<volatile%> can only be specified for objects and functions" msgstr "" -#: cp/decl.cc:5784 +#: cp/decl.cc:5786 #, gcc-internal-format msgid "%<__restrict%> can only be specified for objects and functions" msgstr "" -#: cp/decl.cc:5788 +#: cp/decl.cc:5790 #, gcc-internal-format msgid "%<__thread%> can only be specified for objects and functions" msgstr "" -#: cp/decl.cc:5792 +#: cp/decl.cc:5794 #, gcc-internal-format msgid "%<typedef%> was ignored in this declaration" msgstr "" -#: cp/decl.cc:5795 cp/decl.cc:5798 cp/decl.cc:5801 +#: cp/decl.cc:5797 cp/decl.cc:5800 cp/decl.cc:5803 #, gcc-internal-format msgid "%qs cannot be used for type declarations" msgstr "" -#: cp/decl.cc:5824 +#: cp/decl.cc:5826 #, gcc-internal-format msgid "attribute ignored in explicit instantiation %q#T" msgstr "" -#: cp/decl.cc:5827 +#: cp/decl.cc:5829 #, gcc-internal-format msgid "no attribute can be applied to an explicit instantiation" msgstr "" -#: cp/decl.cc:5840 cp/decl.cc:13780 cp/decl.cc:15427 cp/parser.cc:16037 +#: cp/decl.cc:5842 cp/decl.cc:13782 cp/decl.cc:15429 cp/parser.cc:16037 #: cp/parser.cc:21975 cp/parser.cc:28867 #, gcc-internal-format msgid "attribute ignored" msgstr "" -#: cp/decl.cc:5842 cp/decl.cc:13781 +#: cp/decl.cc:5844 cp/decl.cc:13783 #, gcc-internal-format msgid "an attribute that appertains to a type-specifier is ignored" msgstr "" -#: cp/decl.cc:5917 +#: cp/decl.cc:5919 #, gcc-internal-format msgid "ignoring attributes applied to class type %qT outside of definition" msgstr "" #. A template type parameter or other dependent type. -#: cp/decl.cc:5921 +#: cp/decl.cc:5923 #, gcc-internal-format msgid "" "ignoring attributes applied to dependent type %qT without an associated " "declaration" msgstr "" -#: cp/decl.cc:5987 cp/decl2.cc:1069 cp/decl2.cc:1271 +#: cp/decl.cc:5989 cp/decl2.cc:1069 cp/decl2.cc:1271 #, gcc-internal-format msgid "typedef %qD is initialized (use %qs instead)" msgstr "" -#: cp/decl.cc:6000 +#: cp/decl.cc:6002 #, gcc-internal-format msgid "declaration of %q#D has %<extern%> and is initialized" msgstr "" -#: cp/decl.cc:6038 +#: cp/decl.cc:6040 #, gcc-internal-format msgid "definition of %q#D is marked %<dllimport%>" msgstr "" -#: cp/decl.cc:6065 +#: cp/decl.cc:6067 #, gcc-internal-format msgid "%q+#D is not a static data member of %q#T" msgstr "" -#: cp/decl.cc:6074 +#: cp/decl.cc:6076 #, gcc-internal-format msgid "non-member-template declaration of %qD" msgstr "" -#: cp/decl.cc:6075 +#: cp/decl.cc:6077 #, gcc-internal-format msgid "does not match member template declaration here" msgstr "" -#: cp/decl.cc:6087 +#: cp/decl.cc:6089 #, gcc-internal-format msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>" msgstr "" -#: cp/decl.cc:6099 +#: cp/decl.cc:6101 #, gcc-internal-format msgid "duplicate initialization of %qD" msgstr "" -#: cp/decl.cc:6149 cp/decl.cc:6153 +#: cp/decl.cc:6151 cp/decl.cc:6155 #, gcc-internal-format msgid "declaration of %q#D outside of class is not definition" msgstr "" -#: cp/decl.cc:6171 +#: cp/decl.cc:6173 #, gcc-internal-format msgid "" "block-scope extern declaration %q#D must not be attached to a named module" msgstr "" -#: cp/decl.cc:6207 +#: cp/decl.cc:6209 #, gcc-internal-format msgid "" "%qD defined %<thread_local%> in %qs function only available with %<-std=c+" "+23%> or %<-std=gnu++23%>" msgstr "" -#: cp/decl.cc:6213 +#: cp/decl.cc:6215 #, gcc-internal-format msgid "" "%qD defined %<static%> in %qs function only available with %<-std=c++23%> or " "%<-std=gnu++23%>" msgstr "" -#: cp/decl.cc:6279 +#: cp/decl.cc:6281 #, gcc-internal-format msgid "variable %q#D has initializer but incomplete type" msgstr "" -#: cp/decl.cc:6288 cp/decl.cc:7763 +#: cp/decl.cc:6290 cp/decl.cc:7765 #, gcc-internal-format msgid "elements of array %q#D have incomplete type" msgstr "" -#: cp/decl.cc:6299 +#: cp/decl.cc:6301 #, gcc-internal-format msgid "aggregate %q#D has incomplete type and cannot be defined" msgstr "" -#: cp/decl.cc:6369 +#: cp/decl.cc:6371 #, gcc-internal-format msgid "%qD declared as reference but not initialized" msgstr "" -#: cp/decl.cc:6452 +#: cp/decl.cc:6454 #, gcc-internal-format msgid "name used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.cc:6458 +#: cp/decl.cc:6460 #, gcc-internal-format msgid "name %qD used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.cc:6477 +#: cp/decl.cc:6479 #, gcc-internal-format msgid "non-trivial designated initializers not supported" msgstr "" -#: cp/decl.cc:6481 +#: cp/decl.cc:6483 #, gcc-internal-format msgid "C99 designator %qE is not an integral constant-expression" msgstr "" -#: cp/decl.cc:6546 +#: cp/decl.cc:6548 #, gcc-internal-format msgid "initializer fails to determine size of %qD" msgstr "" -#: cp/decl.cc:6553 +#: cp/decl.cc:6555 #, gcc-internal-format msgid "array size missing in %qD" msgstr "" -#: cp/decl.cc:6565 +#: cp/decl.cc:6567 #, gcc-internal-format msgid "zero-size array %qD" msgstr "" -#: cp/decl.cc:6605 +#: cp/decl.cc:6607 #, gcc-internal-format msgid "storage size of %qD isn%'t known" msgstr "" -#: cp/decl.cc:6630 +#: cp/decl.cc:6632 #, gcc-internal-format msgid "storage size of %qD isn%'t constant" msgstr "" -#: cp/decl.cc:6732 +#: cp/decl.cc:6734 #, gcc-internal-format msgid "" "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with " "multiple copies)" msgstr "" -#: cp/decl.cc:6736 +#: cp/decl.cc:6738 #, gcc-internal-format msgid "" "sorry: semantics of inline function static data %q#D are wrong (you%'ll wind " "up with multiple copies)" msgstr "" -#: cp/decl.cc:6743 +#: cp/decl.cc:6745 #, gcc-internal-format msgid "you can work around this by removing the initializer" msgstr "" -#: cp/decl.cc:6786 rust/backend/rust-tree.cc:3265 +#: cp/decl.cc:6788 rust/backend/rust-tree.cc:3265 #, gcc-internal-format msgid "uninitialized %<const %D%>" msgstr "" -#: cp/decl.cc:6793 rust/backend/rust-tree.cc:3272 +#: cp/decl.cc:6795 rust/backend/rust-tree.cc:3272 #, gcc-internal-format msgid "uninitialized variable %qD in %<constexpr%> function" msgstr "" -#: cp/decl.cc:6802 rust/backend/rust-tree.cc:3281 +#: cp/decl.cc:6804 rust/backend/rust-tree.cc:3281 #, gcc-internal-format msgid "uninitialized variable %qD in %<constexpr%> context" msgstr "" -#: cp/decl.cc:6810 +#: cp/decl.cc:6812 #, gcc-internal-format msgid "%q#T has no user-provided default constructor" msgstr "" -#: cp/decl.cc:6814 +#: cp/decl.cc:6816 #, gcc-internal-format msgid "" "constructor is not user-provided because it is explicitly defaulted in the " "class body" msgstr "" -#: cp/decl.cc:6817 +#: cp/decl.cc:6819 #, gcc-internal-format msgid "and the implicitly-defined constructor does not initialize %q#D" msgstr "" -#: cp/decl.cc:7117 +#: cp/decl.cc:7119 #, gcc-internal-format msgid "invalid type %qT as initializer for a vector of type %qT" msgstr "" -#: cp/decl.cc:7189 +#: cp/decl.cc:7191 #, gcc-internal-format msgid "initializer for %qT must be brace-enclosed" msgstr "" -#: cp/decl.cc:7234 +#: cp/decl.cc:7236 #, gcc-internal-format msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT" msgstr "" -#: cp/decl.cc:7251 cp/init.cc:3424 cp/search.cc:1244 +#: cp/decl.cc:7253 cp/init.cc:3424 cp/search.cc:1244 #, gcc-internal-format msgid "request for member %qD is ambiguous" msgstr "" -#: cp/decl.cc:7256 +#: cp/decl.cc:7258 #, gcc-internal-format msgid "%qT has no non-static data member named %qD" msgstr "" -#: cp/decl.cc:7281 +#: cp/decl.cc:7283 #, gcc-internal-format msgid "%qD is not a direct member of %qT" msgstr "" -#: cp/decl.cc:7337 +#: cp/decl.cc:7339 #, gcc-internal-format msgid "invalid initializer for %q#D" msgstr "" -#: cp/decl.cc:7391 +#: cp/decl.cc:7393 #, gcc-internal-format msgid "C99 designator %qE outside aggregate initializer" msgstr "" -#: cp/decl.cc:7430 cp/decl.cc:7721 cp/typeck2.cc:1634 cp/typeck2.cc:1969 +#: cp/decl.cc:7432 cp/decl.cc:7723 cp/typeck2.cc:1634 cp/typeck2.cc:1969 #: cp/typeck2.cc:2017 cp/typeck2.cc:2064 #, gcc-internal-format msgid "too many initializers for %qT" msgstr "" -#: cp/decl.cc:7473 +#: cp/decl.cc:7475 #, gcc-internal-format msgid "braces around scalar initializer for type %qT" msgstr "" -#: cp/decl.cc:7483 +#: cp/decl.cc:7485 #, gcc-internal-format msgid "too many braces around scalar initializer for type %qT" msgstr "" -#: cp/decl.cc:7617 +#: cp/decl.cc:7619 #, gcc-internal-format msgid "missing braces around initializer for %qT" msgstr "" -#: cp/decl.cc:7751 +#: cp/decl.cc:7753 #, gcc-internal-format msgid "structured binding has incomplete type %qT" msgstr "" -#: cp/decl.cc:7765 +#: cp/decl.cc:7767 #, gcc-internal-format msgid "elements of array %q#T have incomplete type" msgstr "" -#: cp/decl.cc:7778 +#: cp/decl.cc:7780 #, gcc-internal-format msgid "variable-sized compound literal" msgstr "" -#: cp/decl.cc:7834 +#: cp/decl.cc:7836 #, gcc-internal-format msgid "%q#D has incomplete type" msgstr "" -#: cp/decl.cc:7855 +#: cp/decl.cc:7857 #, gcc-internal-format msgid "scalar object %qD requires one element in initializer" msgstr "" -#: cp/decl.cc:7900 +#: cp/decl.cc:7902 #, gcc-internal-format msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>" msgstr "" -#: cp/decl.cc:8043 +#: cp/decl.cc:8045 #, gcc-internal-format msgid "array %qD initialized by parenthesized string literal %qE" msgstr "" -#: cp/decl.cc:8083 +#: cp/decl.cc:8085 #, gcc-internal-format msgid "initializer invalid for static member with constructor" msgstr "" -#: cp/decl.cc:8085 +#: cp/decl.cc:8087 #, gcc-internal-format msgid "non-constant in-class initialization invalid for static member %qD" msgstr "" -#: cp/decl.cc:8088 +#: cp/decl.cc:8090 #, gcc-internal-format msgid "" "non-constant in-class initialization invalid for non-inline static member %qD" msgstr "" -#: cp/decl.cc:8093 +#: cp/decl.cc:8095 #, gcc-internal-format msgid "(an out of class initialization is required)" msgstr "" -#: cp/decl.cc:8295 +#: cp/decl.cc:8297 #, gcc-internal-format msgid "reference %qD is initialized with itself" msgstr "" -#: cp/decl.cc:8497 +#: cp/decl.cc:8499 #, gcc-internal-format msgid "argument %d of %qE must be of %<omp_interop_t%>" msgstr "" -#: cp/decl.cc:8668 +#: cp/decl.cc:8670 #, gcc-internal-format msgid "could not find variant declaration" msgstr "" -#: cp/decl.cc:8692 +#: cp/decl.cc:8694 #, gcc-internal-format msgid "%<declare variant%> on constructor %qD" msgstr "" -#: cp/decl.cc:8697 +#: cp/decl.cc:8699 #, gcc-internal-format msgid "%<declare variant%> on destructor %qD" msgstr "" -#: cp/decl.cc:8702 +#: cp/decl.cc:8704 #, gcc-internal-format msgid "%<declare variant%> on defaulted %qD" msgstr "" -#: cp/decl.cc:8707 +#: cp/decl.cc:8709 #, gcc-internal-format msgid "%<declare variant%> on deleted %qD" msgstr "" -#: cp/decl.cc:8712 +#: cp/decl.cc:8714 #, gcc-internal-format msgid "%<declare variant%> on virtual %qD" msgstr "" -#: cp/decl.cc:8777 +#: cp/decl.cc:8779 #, gcc-internal-format msgid "assignment (not initialization) in declaration" msgstr "" -#: cp/decl.cc:8798 cp/decl.cc:15827 +#: cp/decl.cc:8800 cp/decl.cc:15829 #, gcc-internal-format msgid "ISO C++17 does not allow %<register%> storage class specifier" msgstr "" -#: cp/decl.cc:8802 cp/decl.cc:15831 +#: cp/decl.cc:8804 cp/decl.cc:15833 #, gcc-internal-format msgid "%<register%> storage class specifier used" msgstr "" -#: cp/decl.cc:8847 cp/decl.cc:15794 +#: cp/decl.cc:8849 cp/decl.cc:15796 #, gcc-internal-format msgid "declaration of %q#D has no initializer" msgstr "" -#: cp/decl.cc:8883 +#: cp/decl.cc:8885 #, gcc-internal-format msgid "" "initializer for %<decltype(auto) %D%> has function type; did you forget the " "%<()%>?" msgstr "" -#: cp/decl.cc:8895 +#: cp/decl.cc:8897 #, gcc-internal-format msgid "deduced type %qT for %qD is incomplete" msgstr "" #. [basic.start.main]/3: A program that defines main as deleted #. is ill-formed. -#: cp/decl.cc:8946 +#: cp/decl.cc:8948 #, gcc-internal-format msgid "%<::main%> cannot be deleted" msgstr "" -#: cp/decl.cc:9100 +#: cp/decl.cc:9102 #, gcc-internal-format msgid "shadowing previous type declaration of %q#D" msgstr "" -#: cp/decl.cc:9143 +#: cp/decl.cc:9145 #, gcc-internal-format msgid "" "%<constinit%> can only be applied to a variable with static or thread " "storage duration" msgstr "" -#: cp/decl.cc:9351 +#: cp/decl.cc:9353 #, gcc-internal-format msgid "function %q#D is initialized like a variable" msgstr "" -#: cp/decl.cc:9583 +#: cp/decl.cc:9585 #, gcc-internal-format msgid "cannot decompose lambda closure type %qT" msgstr "" -#: cp/decl.cc:9584 +#: cp/decl.cc:9586 #, gcc-internal-format msgid "lambda declared here" msgstr "" -#: cp/decl.cc:9600 +#: cp/decl.cc:9602 #, gcc-internal-format msgid "" "cannot decompose class type %qT because it has an anonymous struct member" msgstr "" -#: cp/decl.cc:9603 +#: cp/decl.cc:9605 #, gcc-internal-format msgid "" "cannot decompose class type %qT because it has an anonymous union member" msgstr "" -#: cp/decl.cc:9611 +#: cp/decl.cc:9613 #, gcc-internal-format msgid "cannot decompose inaccessible member %qD of %qT" msgstr "" -#: cp/decl.cc:9634 +#: cp/decl.cc:9636 #, gcc-internal-format msgid "in base class of %qT" msgstr "" -#: cp/decl.cc:9641 +#: cp/decl.cc:9643 #, gcc-internal-format msgid "" "cannot decompose class type %qT: both it and its base class %qT have non-" "static data members" msgstr "" -#: cp/decl.cc:9650 +#: cp/decl.cc:9652 #, gcc-internal-format msgid "" "cannot decompose class type %qT: its base classes %qT and %qT have non-" "static data members" msgstr "" -#: cp/decl.cc:9888 +#: cp/decl.cc:9890 #, gcc-internal-format msgid "structured binding refers to incomplete type %qT" msgstr "" -#: cp/decl.cc:9904 +#: cp/decl.cc:9906 #, gcc-internal-format msgid "array initializer for structured binding declaration in condition" msgstr "" -#: cp/decl.cc:9910 +#: cp/decl.cc:9912 #, gcc-internal-format msgid "cannot decompose variable length array %qT" msgstr "" -#: cp/decl.cc:9920 cp/decl.cc:10000 +#: cp/decl.cc:9922 cp/decl.cc:10002 #, gcc-internal-format, gfc-internal-format msgid "%u name provided for structured binding" msgid_plural "%u names provided for structured binding" msgstr[0] "" msgstr[1] "" -#: cp/decl.cc:9924 +#: cp/decl.cc:9926 #, gcc-internal-format, gfc-internal-format msgid "only %u name provided for structured binding" msgid_plural "only %u names provided for structured binding" msgstr[0] "" msgstr[1] "" -#: cp/decl.cc:9927 +#: cp/decl.cc:9929 #, gcc-internal-format msgid "while %qT decomposes into %wu element" msgid_plural "while %qT decomposes into %wu elements" msgstr[0] "" msgstr[1] "" -#: cp/decl.cc:9968 +#: cp/decl.cc:9970 #, gcc-internal-format msgid "cannot decompose variable length vector %qT" msgstr "" -#: cp/decl.cc:9992 +#: cp/decl.cc:9994 #, gcc-internal-format msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression" msgstr "" -#: cp/decl.cc:10002 +#: cp/decl.cc:10004 #, gcc-internal-format msgid "while %qT decomposes into %E elements" msgstr "" -#: cp/decl.cc:10049 +#: cp/decl.cc:10051 #, gcc-internal-format msgid "%<std::tuple_element<%u, %T>::type%> is %<void%>" msgstr "" -#: cp/decl.cc:10055 +#: cp/decl.cc:10057 #, gcc-internal-format msgid "in initialization of structured binding variable %qD" msgstr "" -#: cp/decl.cc:10084 +#: cp/decl.cc:10086 #, gcc-internal-format msgid "cannot decompose union type %qT" msgstr "" -#: cp/decl.cc:10089 +#: cp/decl.cc:10091 #, gcc-internal-format msgid "cannot decompose non-array non-class type %qT" msgstr "" -#: cp/decl.cc:10095 +#: cp/decl.cc:10097 #, gcc-internal-format msgid "structured binding refers to incomplete class type %qT" msgstr "" -#: cp/decl.cc:10104 +#: cp/decl.cc:10106 #, gcc-internal-format msgid "cannot decompose class type %qT without non-static data members" msgstr "" -#: cp/decl.cc:10600 +#: cp/decl.cc:10602 #, gcc-internal-format msgid "" "non-local variable %qD declared %<__thread%> needs dynamic initialization" msgstr "" -#: cp/decl.cc:10603 +#: cp/decl.cc:10605 #, gcc-internal-format msgid "" "non-local variable %qD declared %<__thread%> has a non-trivial destructor" msgstr "" -#: cp/decl.cc:10608 +#: cp/decl.cc:10610 #, gcc-internal-format msgid "C++11 %<thread_local%> allows dynamic initialization and destruction" msgstr "" -#: cp/decl.cc:10827 +#: cp/decl.cc:10829 #, gcc-internal-format msgid "initializer fails to determine size of %qT" msgstr "" -#: cp/decl.cc:10831 +#: cp/decl.cc:10833 #, gcc-internal-format msgid "array size missing in %qT" msgstr "" -#: cp/decl.cc:10834 +#: cp/decl.cc:10836 #, gcc-internal-format msgid "zero-size array %qT" msgstr "" -#: cp/decl.cc:10850 +#: cp/decl.cc:10852 #, gcc-internal-format msgid "destructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.cc:10852 +#: cp/decl.cc:10854 #, gcc-internal-format msgid "constructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.cc:10878 +#: cp/decl.cc:10880 #, gcc-internal-format msgid "%qD declared as a %<virtual%> variable" msgstr "" -#: cp/decl.cc:10880 +#: cp/decl.cc:10882 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in variable " "declaration" msgstr "" -#: cp/decl.cc:10886 +#: cp/decl.cc:10888 #, gcc-internal-format msgid "%qD declared as a %<virtual%> parameter" msgstr "" -#: cp/decl.cc:10889 +#: cp/decl.cc:10891 #, gcc-internal-format msgid "%qD declared as an %<inline%> parameter" msgstr "" -#: cp/decl.cc:10891 +#: cp/decl.cc:10893 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in parameter " "declaration" msgstr "" -#: cp/decl.cc:10897 +#: cp/decl.cc:10899 #, gcc-internal-format msgid "%qD declared as a %<virtual%> type" msgstr "" -#: cp/decl.cc:10900 +#: cp/decl.cc:10902 #, gcc-internal-format msgid "%qD declared as an %<inline%> type" msgstr "" -#: cp/decl.cc:10902 +#: cp/decl.cc:10904 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in type " "declaration" msgstr "" -#: cp/decl.cc:10908 +#: cp/decl.cc:10910 #, gcc-internal-format msgid "%qD declared as a %<virtual%> field" msgstr "" -#: cp/decl.cc:10911 +#: cp/decl.cc:10913 #, gcc-internal-format msgid "%qD declared as an %<inline%> field" msgstr "" -#: cp/decl.cc:10913 +#: cp/decl.cc:10915 #, gcc-internal-format msgid "" "%<const%> and %<volatile%> function specifiers on %qD invalid in field " "declaration" msgstr "" -#: cp/decl.cc:10920 +#: cp/decl.cc:10922 #, gcc-internal-format msgid "%q+D declared as a friend" msgstr "" -#: cp/decl.cc:10927 +#: cp/decl.cc:10929 #, gcc-internal-format msgid "%q+D declared with an exception specification" msgstr "" -#: cp/decl.cc:10959 +#: cp/decl.cc:10961 #, gcc-internal-format msgid "definition of %qD is not in namespace enclosing %qT" msgstr "" -#: cp/decl.cc:10999 +#: cp/decl.cc:11001 #, gcc-internal-format msgid "static member function %q#D declared with type qualifiers" msgstr "" -#: cp/decl.cc:11075 +#: cp/decl.cc:11077 #, gcc-internal-format msgid "function concepts are no longer supported" msgstr "" -#: cp/decl.cc:11113 +#: cp/decl.cc:11115 #, gcc-internal-format msgid "constraints on a non-templated function" msgstr "" -#: cp/decl.cc:11115 +#: cp/decl.cc:11117 #, gcc-internal-format msgid "constrained non-template friend declaration must be a definition" msgstr "" -#: cp/decl.cc:11122 +#: cp/decl.cc:11124 #, gcc-internal-format msgid "" "friend function template with constraints that depend on outer template " "parameters must be a definition" msgstr "" -#: cp/decl.cc:11174 +#: cp/decl.cc:11176 #, gcc-internal-format msgid "defining explicit specialization %qD in friend declaration" msgstr "" -#: cp/decl.cc:11185 +#: cp/decl.cc:11187 #, gcc-internal-format msgid "invalid use of template-id %qD in declaration of primary template" msgstr "" -#: cp/decl.cc:11203 +#: cp/decl.cc:11205 #, gcc-internal-format msgid "" "default arguments are not allowed in declaration of friend template " "specialization %qD" msgstr "" -#: cp/decl.cc:11212 +#: cp/decl.cc:11214 #, gcc-internal-format msgid "" "%<inline%> is not allowed in declaration of friend template specialization " @@ -60999,1593 +61000,1593 @@ msgid "" msgstr "" #. diagnostic_option_id= -#: cp/decl.cc:11243 +#: cp/decl.cc:11245 #, gcc-internal-format msgid "" "friend declaration of %qD specifies default arguments and isn%'t a definition" msgstr "" -#: cp/decl.cc:11285 +#: cp/decl.cc:11287 #, gcc-internal-format msgid "cannot declare %<::main%> to be a template" msgstr "" -#: cp/decl.cc:11288 +#: cp/decl.cc:11290 #, gcc-internal-format msgid "cannot declare %<::main%> to be inline" msgstr "" -#: cp/decl.cc:11291 cp/decl.cc:11294 +#: cp/decl.cc:11293 cp/decl.cc:11296 #, gcc-internal-format msgid "cannot declare %<::main%> to be %qs" msgstr "" -#: cp/decl.cc:11296 +#: cp/decl.cc:11298 #, gcc-internal-format msgid "cannot declare %<::main%> to be static" msgstr "" -#: cp/decl.cc:11298 +#: cp/decl.cc:11300 #, gcc-internal-format msgid "cannot declare %<::main%> with a linkage specification" msgstr "" -#: cp/decl.cc:11301 +#: cp/decl.cc:11303 #, gcc-internal-format msgid "cannot attach %<::main%> to a named module" msgstr "" -#: cp/decl.cc:11360 +#: cp/decl.cc:11362 #, gcc-internal-format msgid "non-member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.cc:11362 +#: cp/decl.cc:11364 #, gcc-internal-format msgid "static member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.cc:11363 +#: cp/decl.cc:11365 #, gcc-internal-format msgid "explicit object member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.cc:11368 +#: cp/decl.cc:11370 #, gcc-internal-format msgid "non-member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.cc:11370 +#: cp/decl.cc:11372 #, gcc-internal-format msgid "static member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.cc:11371 +#: cp/decl.cc:11373 #, gcc-internal-format msgid "explicit object member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.cc:11377 cp/decl.cc:14310 cp/decl.cc:14320 cp/parser.cc:12368 +#: cp/decl.cc:11379 cp/decl.cc:14312 cp/decl.cc:14322 cp/parser.cc:12368 #, gcc-internal-format msgid "explicit object parameter declared here" msgstr "" -#: cp/decl.cc:11390 +#: cp/decl.cc:11392 #, gcc-internal-format msgid "deduction guide %qD must be declared in the same scope as %qT" msgstr "" -#: cp/decl.cc:11392 cp/decl.cc:11401 cp/typeck.cc:4667 +#: cp/decl.cc:11394 cp/decl.cc:11403 cp/typeck.cc:4667 #, gcc-internal-format msgid " declared here" msgstr "" -#: cp/decl.cc:11399 +#: cp/decl.cc:11401 #, gcc-internal-format msgid "deduction guide %qD must have the same access as %qT" msgstr "" -#: cp/decl.cc:11405 +#: cp/decl.cc:11407 #, gcc-internal-format msgid "deduction guide %qD must not have a function body" msgstr "" -#: cp/decl.cc:11419 +#: cp/decl.cc:11421 #, gcc-internal-format msgid "literal operator with C linkage" msgstr "" -#: cp/decl.cc:11429 +#: cp/decl.cc:11431 #, gcc-internal-format msgid "%qD has invalid argument list" msgstr "" -#: cp/decl.cc:11437 +#: cp/decl.cc:11439 #, gcc-internal-format msgid "integer suffix %qs shadowed by implementation" msgstr "" -#: cp/decl.cc:11443 +#: cp/decl.cc:11445 #, gcc-internal-format msgid "floating-point suffix %qs shadowed by implementation" msgstr "" -#: cp/decl.cc:11450 +#: cp/decl.cc:11452 #, gcc-internal-format msgid "" "literal operator suffixes not preceded by %<_%> are reserved for future " "standardization" msgstr "" -#: cp/decl.cc:11455 +#: cp/decl.cc:11457 #, gcc-internal-format msgid "%qD must be a non-member function" msgstr "" -#: cp/decl.cc:11540 +#: cp/decl.cc:11542 #, gcc-internal-format msgid "%<::main%> must return %<int%>" msgstr "" -#: cp/decl.cc:11580 +#: cp/decl.cc:11582 #, gcc-internal-format msgid "definition of implicitly-declared %qD" msgstr "" -#: cp/decl.cc:11586 +#: cp/decl.cc:11588 #, gcc-internal-format msgid "definition of explicitly-defaulted %q+D" msgstr "" -#: cp/decl.cc:11588 +#: cp/decl.cc:11590 #, gcc-internal-format msgid "%q#D explicitly defaulted here" msgstr "" -#: cp/decl.cc:11605 +#: cp/decl.cc:11607 #, gcc-internal-format msgid "no %q#D member function declared in class %qT" msgstr "" -#: cp/decl.cc:11802 +#: cp/decl.cc:11804 #, gcc-internal-format msgid "cannot declare %<::main%> to be a global variable" msgstr "" -#: cp/decl.cc:11805 +#: cp/decl.cc:11807 #, gcc-internal-format msgid "an entity named %<main%> cannot be declared with C language linkage" msgstr "" -#: cp/decl.cc:11814 +#: cp/decl.cc:11816 #, gcc-internal-format msgid "a non-template variable cannot be %<concept%>" msgstr "" -#: cp/decl.cc:11817 +#: cp/decl.cc:11819 #, gcc-internal-format msgid "concept must be defined at namespace scope" msgstr "" -#: cp/decl.cc:11820 +#: cp/decl.cc:11822 #, gcc-internal-format msgid "variable concepts are no longer supported" msgstr "" -#: cp/decl.cc:11941 +#: cp/decl.cc:11943 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of incomplete type" msgstr "" -#: cp/decl.cc:11945 +#: cp/decl.cc:11947 #, gcc-internal-format msgid "" "%<constexpr%> needed for in-class initialization of static data member %q#D " "of non-integral type" msgstr "" -#: cp/decl.cc:11949 +#: cp/decl.cc:11951 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of non-literal type" msgstr "" -#: cp/decl.cc:11960 +#: cp/decl.cc:11962 #, gcc-internal-format msgid "" "invalid in-class initialization of static data member of non-integral type " "%qT" msgstr "" -#: cp/decl.cc:11965 +#: cp/decl.cc:11967 #, gcc-internal-format msgid "ISO C++ forbids in-class initialization of non-const static member %qD" msgstr "" -#: cp/decl.cc:11970 +#: cp/decl.cc:11972 #, gcc-internal-format msgid "" "ISO C++ forbids initialization of member constant %qD of non-integral type " "%qT" msgstr "" -#: cp/decl.cc:12082 +#: cp/decl.cc:12084 #, gcc-internal-format msgid "size of array %qD has non-integral type %qT" msgstr "" -#: cp/decl.cc:12085 +#: cp/decl.cc:12087 #, gcc-internal-format msgid "size of array has non-integral type %qT" msgstr "" -#: cp/decl.cc:12116 cp/decl.cc:12188 +#: cp/decl.cc:12118 cp/decl.cc:12190 #, gcc-internal-format msgid "size of array %qD is not an integral constant-expression" msgstr "" -#: cp/decl.cc:12120 cp/decl.cc:12191 +#: cp/decl.cc:12122 cp/decl.cc:12193 #, gcc-internal-format msgid "size of array is not an integral constant-expression" msgstr "" -#: cp/decl.cc:12171 +#: cp/decl.cc:12173 #, gcc-internal-format msgid "ISO C++ forbids zero-size array %qD" msgstr "" -#: cp/decl.cc:12174 +#: cp/decl.cc:12176 #, gcc-internal-format msgid "ISO C++ forbids zero-size array" msgstr "" -#: cp/decl.cc:12198 +#: cp/decl.cc:12200 #, gcc-internal-format msgid "ISO C++ forbids variable length array %qD" msgstr "" -#: cp/decl.cc:12201 +#: cp/decl.cc:12203 #, gcc-internal-format msgid "ISO C++ forbids variable length array" msgstr "" -#: cp/decl.cc:12207 +#: cp/decl.cc:12209 #, gcc-internal-format msgid "variable length array %qD is used" msgstr "" -#: cp/decl.cc:12210 +#: cp/decl.cc:12212 #, gcc-internal-format msgid "variable length array is used" msgstr "" -#: cp/decl.cc:12262 +#: cp/decl.cc:12264 #, gcc-internal-format msgid "overflow in array dimension" msgstr "" -#: cp/decl.cc:12322 +#: cp/decl.cc:12324 #, gcc-internal-format msgid "%qD declared as array of template placeholder type %qT" msgstr "" -#: cp/decl.cc:12325 +#: cp/decl.cc:12327 #, gcc-internal-format msgid "creating array of template placeholder type %qT" msgstr "" -#: cp/decl.cc:12335 +#: cp/decl.cc:12337 #, gcc-internal-format msgid "declaration of %qD as array of void" msgstr "" -#: cp/decl.cc:12337 +#: cp/decl.cc:12339 #, gcc-internal-format msgid "creating array of void" msgstr "" -#: cp/decl.cc:12342 +#: cp/decl.cc:12344 #, gcc-internal-format msgid "declaration of %qD as array of functions" msgstr "" -#: cp/decl.cc:12344 +#: cp/decl.cc:12346 #, gcc-internal-format msgid "creating array of functions" msgstr "" -#: cp/decl.cc:12349 +#: cp/decl.cc:12351 #, gcc-internal-format msgid "declaration of %qD as array of references" msgstr "" -#: cp/decl.cc:12351 +#: cp/decl.cc:12353 #, gcc-internal-format msgid "creating array of references" msgstr "" -#: cp/decl.cc:12356 +#: cp/decl.cc:12358 #, gcc-internal-format msgid "declaration of %qD as array of function members" msgstr "" -#: cp/decl.cc:12359 +#: cp/decl.cc:12361 #, gcc-internal-format msgid "creating array of function members" msgstr "" -#: cp/decl.cc:12377 +#: cp/decl.cc:12379 #, gcc-internal-format msgid "" "declaration of %qD as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: cp/decl.cc:12381 +#: cp/decl.cc:12383 #, gcc-internal-format msgid "" "multidimensional array must have bounds for all dimensions except the first" msgstr "" -#: cp/decl.cc:12395 +#: cp/decl.cc:12397 #, gcc-internal-format msgid "variable-length array of %<auto%>" msgstr "" -#: cp/decl.cc:12493 +#: cp/decl.cc:12495 #, gcc-internal-format msgid "return type specification for constructor invalid" msgstr "" -#: cp/decl.cc:12496 +#: cp/decl.cc:12498 #, gcc-internal-format msgid "qualifiers are not allowed on constructor declaration" msgstr "" -#: cp/decl.cc:12507 +#: cp/decl.cc:12509 #, gcc-internal-format msgid "return type specification for destructor invalid" msgstr "" -#: cp/decl.cc:12510 +#: cp/decl.cc:12512 #, gcc-internal-format msgid "qualifiers are not allowed on destructor declaration" msgstr "" -#: cp/decl.cc:12523 +#: cp/decl.cc:12525 #, gcc-internal-format msgid "return type specified for %<operator %T%>" msgstr "" -#: cp/decl.cc:12526 +#: cp/decl.cc:12528 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of %<operator %T%>" msgstr "" -#: cp/decl.cc:12535 +#: cp/decl.cc:12537 #, gcc-internal-format msgid "return type specified for deduction guide" msgstr "" -#: cp/decl.cc:12538 +#: cp/decl.cc:12540 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of deduction guide" msgstr "" -#: cp/decl.cc:12542 +#: cp/decl.cc:12544 #, gcc-internal-format msgid "template template parameter %qT in declaration of deduction guide" msgstr "" -#: cp/decl.cc:12551 +#: cp/decl.cc:12553 #, gcc-internal-format msgid "%<decl-specifier%> in declaration of deduction guide" msgstr "" -#: cp/decl.cc:12572 +#: cp/decl.cc:12574 #, gcc-internal-format msgid "unnamed variable or field declared void" msgstr "" -#: cp/decl.cc:12580 +#: cp/decl.cc:12582 #, gcc-internal-format msgid "variable or field declared void" msgstr "" -#: cp/decl.cc:12595 +#: cp/decl.cc:12597 #, gcc-internal-format msgid "%<inline%> specifier invalid for variable %qD declared at block scope" msgstr "" -#: cp/decl.cc:12600 +#: cp/decl.cc:12602 #, gcc-internal-format msgid "" "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/decl.cc:12656 +#: cp/decl.cc:12658 #, gcc-internal-format msgid "%qT as type rather than plain %<decltype(auto)%>" msgstr "" -#: cp/decl.cc:12662 +#: cp/decl.cc:12664 #, gcc-internal-format msgid "%<decltype(auto)%> cannot be cv-qualified" msgstr "" -#: cp/decl.cc:12683 +#: cp/decl.cc:12685 msgid "%e and %e specified together" msgstr "" -#: cp/decl.cc:12895 +#: cp/decl.cc:12897 #, gcc-internal-format msgid "invalid use of qualified-name %<::%D%>" msgstr "" -#: cp/decl.cc:12898 cp/decl.cc:12920 +#: cp/decl.cc:12900 cp/decl.cc:12922 #, gcc-internal-format msgid "invalid use of qualified-name %<%T::%D%>" msgstr "" -#: cp/decl.cc:12901 +#: cp/decl.cc:12903 #, gcc-internal-format msgid "invalid use of qualified-name %<%D::%D%>" msgstr "" -#: cp/decl.cc:12911 +#: cp/decl.cc:12913 #, gcc-internal-format msgid "%q#T is not a class or namespace" msgstr "" -#: cp/decl.cc:12935 +#: cp/decl.cc:12937 #, gcc-internal-format msgid "declaration of %qE as non-function" msgstr "" -#: cp/decl.cc:12942 +#: cp/decl.cc:12944 #, gcc-internal-format msgid "declaration of %qE as non-member" msgstr "" -#: cp/decl.cc:12970 +#: cp/decl.cc:12972 #, gcc-internal-format msgid "declarator-id missing; using reserved word %qD" msgstr "" -#: cp/decl.cc:13021 +#: cp/decl.cc:13023 #, gcc-internal-format msgid "function definition does not declare parameters" msgstr "" -#: cp/decl.cc:13029 cp/decl.cc:13038 cp/decl.cc:15034 +#: cp/decl.cc:13031 cp/decl.cc:13040 cp/decl.cc:15036 #, gcc-internal-format msgid "declaration of %qD as non-function" msgstr "" -#: cp/decl.cc:13046 +#: cp/decl.cc:13048 #, gcc-internal-format msgid "declaration of %qD as %<typedef%>" msgstr "" -#: cp/decl.cc:13051 +#: cp/decl.cc:13053 #, gcc-internal-format msgid "declaration of %qD as parameter" msgstr "" -#: cp/decl.cc:13086 +#: cp/decl.cc:13088 #, gcc-internal-format msgid "both %qs and %qs specified" msgstr "" -#: cp/decl.cc:13093 cp/decl.cc:13100 cp/decl.cc:13107 cp/decl.cc:13114 +#: cp/decl.cc:13095 cp/decl.cc:13102 cp/decl.cc:13109 cp/decl.cc:13116 #, gcc-internal-format msgid "%qs cannot appear in a typedef declaration" msgstr "" -#: cp/decl.cc:13125 +#: cp/decl.cc:13127 #, gcc-internal-format msgid "can use at most one of the %<constinit%> and %<constexpr%> specifiers" msgstr "" -#: cp/decl.cc:13135 +#: cp/decl.cc:13137 #, gcc-internal-format msgid "two or more data types in declaration of %qs" msgstr "" -#: cp/decl.cc:13189 +#: cp/decl.cc:13191 #, gcc-internal-format msgid "ISO C++ does not support plain %<complex%> meaning %<double complex%>" msgstr "" -#: cp/decl.cc:13239 cp/decl.cc:13243 cp/decl.cc:13246 +#: cp/decl.cc:13241 cp/decl.cc:13245 cp/decl.cc:13248 #, gcc-internal-format msgid "ISO C++ forbids declaration of %qs with no type" msgstr "" -#: cp/decl.cc:13263 +#: cp/decl.cc:13265 #, gcc-internal-format msgid "%<__int%d%> is not supported by this target" msgstr "" -#: cp/decl.cc:13271 +#: cp/decl.cc:13273 #, gcc-internal-format msgid "ISO C++ does not support %<__int%d%> for %qs" msgstr "" -#: cp/decl.cc:13334 +#: cp/decl.cc:13336 #, gcc-internal-format msgid "%qs specified with %qT" msgstr "" -#: cp/decl.cc:13341 +#: cp/decl.cc:13343 #, gcc-internal-format msgid "%qs specified with typedef-name %qD" msgstr "" -#: cp/decl.cc:13350 +#: cp/decl.cc:13352 #, gcc-internal-format msgid "%qs specified with %<decltype%>" msgstr "" -#: cp/decl.cc:13352 +#: cp/decl.cc:13354 #, gcc-internal-format msgid "%qs specified with %<typeof%>" msgstr "" -#: cp/decl.cc:13421 +#: cp/decl.cc:13423 #, gcc-internal-format msgid "complex invalid for %qs" msgstr "" -#: cp/decl.cc:13465 +#: cp/decl.cc:13467 #, gcc-internal-format msgid "" "missing template argument list after %qE; for deduction, template " "placeholder must be followed by a simple declarator-id" msgstr "" -#: cp/decl.cc:13491 +#: cp/decl.cc:13493 #, gcc-internal-format msgid "member %qD cannot be declared both %<virtual%> and %<static%>" msgstr "" -#: cp/decl.cc:13500 +#: cp/decl.cc:13502 #, gcc-internal-format msgid "" "member %qD can be declared both %<virtual%> and %<constexpr%> only in %<-" "std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/decl.cc:13513 +#: cp/decl.cc:13515 #, gcc-internal-format msgid "typedef declaration invalid in parameter declaration" msgstr "" -#: cp/decl.cc:13520 +#: cp/decl.cc:13522 #, gcc-internal-format msgid "storage class specified for template parameter %qs" msgstr "" -#: cp/decl.cc:13530 cp/decl.cc:13707 +#: cp/decl.cc:13532 cp/decl.cc:13709 #, gcc-internal-format msgid "storage class specified for parameter %qs" msgstr "" -#: cp/decl.cc:13538 cp/decl.cc:13547 cp/decl.cc:13553 cp/decl.cc:13559 +#: cp/decl.cc:13540 cp/decl.cc:13549 cp/decl.cc:13555 cp/decl.cc:13561 #, gcc-internal-format msgid "a parameter cannot be declared %qs" msgstr "" -#: cp/decl.cc:13569 +#: cp/decl.cc:13571 #, gcc-internal-format msgid "%<virtual%> outside class declaration" msgstr "" -#: cp/decl.cc:13579 cp/decl.cc:13582 cp/decl.cc:13584 cp/decl.cc:13587 -#: cp/decl.cc:13597 cp/decl.cc:13607 cp/decl.cc:13617 cp/decl.cc:13621 +#: cp/decl.cc:13581 cp/decl.cc:13584 cp/decl.cc:13586 cp/decl.cc:13589 +#: cp/decl.cc:13599 cp/decl.cc:13609 cp/decl.cc:13619 cp/decl.cc:13623 #, gcc-internal-format msgid "structured binding declaration cannot be %qs" msgstr "" -#: cp/decl.cc:13591 cp/decl.cc:13613 +#: cp/decl.cc:13593 cp/decl.cc:13615 #, gcc-internal-format msgid "" "structured binding declaration can be %qs only in %<-std=c++20%> or %<-" "std=gnu++20%>" msgstr "" -#: cp/decl.cc:13601 +#: cp/decl.cc:13603 #, gcc-internal-format msgid "%<volatile%>-qualified structured binding is deprecated" msgstr "" -#: cp/decl.cc:13625 +#: cp/decl.cc:13627 #, gcc-internal-format msgid "structured binding declaration cannot be C++98 %<auto%>" msgstr "" -#: cp/decl.cc:13637 +#: cp/decl.cc:13639 #, gcc-internal-format msgid "structured binding declaration cannot have type %qT" msgstr "" -#: cp/decl.cc:13640 +#: cp/decl.cc:13642 #, gcc-internal-format msgid "" "type must be cv-qualified %<auto%> or reference to cv-qualified %<auto%>" msgstr "" -#: cp/decl.cc:13648 +#: cp/decl.cc:13650 #, gcc-internal-format msgid "" "structured binding declaration cannot have constrained %<auto%> type %qT" msgstr "" -#: cp/decl.cc:13679 +#: cp/decl.cc:13681 #, gcc-internal-format msgid "multiple storage classes in declaration of %qs" msgstr "" -#: cp/decl.cc:13705 +#: cp/decl.cc:13707 #, gcc-internal-format msgid "storage class specified for %qs" msgstr "" -#: cp/decl.cc:13719 +#: cp/decl.cc:13721 #, gcc-internal-format msgid "nested function %qs declared %<extern%>" msgstr "" -#: cp/decl.cc:13724 +#: cp/decl.cc:13726 #, gcc-internal-format msgid "top-level declaration of %qs specifies %<auto%>" msgstr "" -#: cp/decl.cc:13732 +#: cp/decl.cc:13734 #, gcc-internal-format msgid "function-scope %qs implicitly auto and declared %<__thread%>" msgstr "" -#: cp/decl.cc:13746 +#: cp/decl.cc:13748 #, gcc-internal-format msgid "storage class specifiers invalid in friend function declarations" msgstr "" -#: cp/decl.cc:13852 +#: cp/decl.cc:13854 #, gcc-internal-format msgid "unnecessary parentheses in declaration of %qs" msgstr "" -#: cp/decl.cc:13858 +#: cp/decl.cc:13860 #, gcc-internal-format msgid "remove parentheses" msgstr "" -#: cp/decl.cc:13925 +#: cp/decl.cc:13927 #, gcc-internal-format msgid "" "explicit object member function only available with %<-std=c++23%> or %<-" "std=gnu++23%>" msgstr "" -#: cp/decl.cc:13939 +#: cp/decl.cc:13941 #, gcc-internal-format msgid "a function type cannot have an explicit object parameter" msgstr "" -#: cp/decl.cc:13945 +#: cp/decl.cc:13947 #, gcc-internal-format msgid "a pointer to function type cannot have an explicit object parameter" msgstr "" -#: cp/decl.cc:13949 +#: cp/decl.cc:13951 #, gcc-internal-format msgid "" "a pointer to member function type cannot have an explicit object parameter" msgstr "" -#: cp/decl.cc:13957 +#: cp/decl.cc:13959 #, gcc-internal-format msgid "" "the type of a pointer to explicit object member function is a regular " "pointer to function type" msgstr "" -#: cp/decl.cc:13961 +#: cp/decl.cc:13963 #, gcc-internal-format msgid "" "the type of an explicit object member function is a regular function type" msgstr "" -#: cp/decl.cc:13982 +#: cp/decl.cc:13984 #, gcc-internal-format msgid "" "only the first parameter of a member function can be declared as an explicit " "object parameter" msgstr "" -#: cp/decl.cc:13987 +#: cp/decl.cc:13989 #, gcc-internal-format msgid "valid explicit object parameter declared here" msgstr "" -#: cp/decl.cc:13991 +#: cp/decl.cc:13993 #, gcc-internal-format msgid "requires-clause on return type" msgstr "" -#: cp/decl.cc:14012 +#: cp/decl.cc:14014 #, gcc-internal-format msgid "%qs function uses %<auto%> type specifier without trailing return type" msgstr "" -#: cp/decl.cc:14016 +#: cp/decl.cc:14018 #, gcc-internal-format msgid "" "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>" msgstr "" -#: cp/decl.cc:14021 +#: cp/decl.cc:14023 #, gcc-internal-format msgid "virtual function cannot have deduced return type" msgstr "" -#: cp/decl.cc:14028 +#: cp/decl.cc:14030 #, gcc-internal-format msgid "" "%qs function with trailing return type has %qT as its type rather than plain " "%<auto%>" msgstr "" -#: cp/decl.cc:14037 +#: cp/decl.cc:14039 #, gcc-internal-format msgid "" "%qs function with trailing return type has %<decltype(auto)%> as its type " "rather than plain %<auto%>" msgstr "" -#: cp/decl.cc:14042 +#: cp/decl.cc:14044 #, gcc-internal-format msgid "invalid use of %<decltype(auto)%>" msgstr "" -#: cp/decl.cc:14049 +#: cp/decl.cc:14051 #, gcc-internal-format msgid "" "%qs function with trailing return type has constrained %<auto%> type " "specifier rather than plain %<auto%>" msgstr "" -#: cp/decl.cc:14055 +#: cp/decl.cc:14057 #, gcc-internal-format msgid "invalid use of constrained %<auto%> type" msgstr "" -#: cp/decl.cc:14067 +#: cp/decl.cc:14069 #, gcc-internal-format msgid "deduced class type %qD in function return type" msgstr "" -#: cp/decl.cc:14077 +#: cp/decl.cc:14079 #, gcc-internal-format msgid "deduction guide for %qT must have trailing return type" msgstr "" -#: cp/decl.cc:14090 +#: cp/decl.cc:14092 #, gcc-internal-format msgid "" "trailing return type %qT of deduction guide is not a specialization of %qT" msgstr "" -#: cp/decl.cc:14104 +#: cp/decl.cc:14106 #, gcc-internal-format msgid "" "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/decl.cc:14107 +#: cp/decl.cc:14109 #, gcc-internal-format msgid "" "%qs function with trailing return type not declared with %<auto%> type " "specifier" msgstr "" -#: cp/decl.cc:14114 +#: cp/decl.cc:14116 #, gcc-internal-format msgid "a conversion function cannot have a trailing return type" msgstr "" -#: cp/decl.cc:14140 +#: cp/decl.cc:14142 #, gcc-internal-format msgid "%<volatile%>-qualified return type is deprecated" msgstr "" -#: cp/decl.cc:14152 +#: cp/decl.cc:14154 #, gcc-internal-format msgid "%qs declared as function returning a function" msgstr "" -#: cp/decl.cc:14158 +#: cp/decl.cc:14160 #, gcc-internal-format msgid "%qs declared as function returning an array" msgstr "" -#: cp/decl.cc:14165 +#: cp/decl.cc:14167 #, gcc-internal-format msgid "%<constinit%> on function return type is not allowed" msgstr "" -#: cp/decl.cc:14198 +#: cp/decl.cc:14200 #, gcc-internal-format msgid "destructor cannot be static member function" msgstr "" -#: cp/decl.cc:14200 +#: cp/decl.cc:14202 #, gcc-internal-format msgid "constructor cannot be static member function" msgstr "" -#: cp/decl.cc:14205 +#: cp/decl.cc:14207 #, gcc-internal-format msgid "destructors may not be cv-qualified" msgstr "" -#: cp/decl.cc:14206 +#: cp/decl.cc:14208 #, gcc-internal-format msgid "constructors may not be cv-qualified" msgstr "" -#: cp/decl.cc:14214 +#: cp/decl.cc:14216 #, gcc-internal-format msgid "destructors may not be ref-qualified" msgstr "" -#: cp/decl.cc:14215 +#: cp/decl.cc:14217 #, gcc-internal-format msgid "constructors may not be ref-qualified" msgstr "" -#: cp/decl.cc:14233 +#: cp/decl.cc:14235 #, gcc-internal-format msgid "constructors cannot be declared %<virtual%>" msgstr "" -#: cp/decl.cc:14250 +#: cp/decl.cc:14252 #, gcc-internal-format msgid "virtual functions cannot be friends" msgstr "" -#: cp/decl.cc:14255 +#: cp/decl.cc:14257 #, gcc-internal-format msgid "friend declaration not in class definition" msgstr "" -#: cp/decl.cc:14259 +#: cp/decl.cc:14261 #, gcc-internal-format msgid "cannot define friend function %qs in a local class definition" msgstr "" -#: cp/decl.cc:14269 +#: cp/decl.cc:14271 #, gcc-internal-format msgid "friend function definition %qs cannot have a name qualified with %<::%>" msgstr "" -#: cp/decl.cc:14273 +#: cp/decl.cc:14275 #, gcc-internal-format msgid "" "friend function definition %qs cannot have a name qualified with %<%D::%>" msgstr "" -#: cp/decl.cc:14299 +#: cp/decl.cc:14301 #, gcc-internal-format msgid "a non-member function cannot have an explicit object parameter" msgstr "" -#: cp/decl.cc:14307 +#: cp/decl.cc:14309 #, gcc-internal-format msgid "an explicit object member function cannot be %<virtual%>" msgstr "" -#: cp/decl.cc:14317 +#: cp/decl.cc:14319 #, gcc-internal-format msgid "an explicit object member function cannot be %<static%>" msgstr "" -#: cp/decl.cc:14326 +#: cp/decl.cc:14328 #, gcc-internal-format msgid "%qD cannot be an explicit object member function" msgstr "" -#: cp/decl.cc:14349 +#: cp/decl.cc:14351 #, gcc-internal-format msgid "destructors may not have parameters" msgstr "" -#: cp/decl.cc:14407 +#: cp/decl.cc:14409 #, gcc-internal-format msgid "cannot declare pointer to %q#T" msgstr "" -#: cp/decl.cc:14420 cp/decl.cc:14427 +#: cp/decl.cc:14422 cp/decl.cc:14429 #, gcc-internal-format msgid "cannot declare reference to %q#T" msgstr "" -#: cp/decl.cc:14429 +#: cp/decl.cc:14431 #, gcc-internal-format msgid "cannot declare pointer to %q#T member" msgstr "" -#: cp/decl.cc:14458 +#: cp/decl.cc:14460 #, gcc-internal-format msgid "cannot declare reference to qualified function type %qT" msgstr "" -#: cp/decl.cc:14459 +#: cp/decl.cc:14461 #, gcc-internal-format msgid "cannot declare pointer to qualified function type %qT" msgstr "" -#: cp/decl.cc:14532 +#: cp/decl.cc:14534 #, gcc-internal-format msgid "" "cannot declare reference to %q#T, which is not a typedef or a template type " "argument" msgstr "" -#: cp/decl.cc:14611 +#: cp/decl.cc:14613 #, gcc-internal-format msgid "template-id %qD used as a declarator" msgstr "" -#: cp/decl.cc:14637 +#: cp/decl.cc:14639 #, gcc-internal-format msgid "member functions are implicitly friends of their class" msgstr "" -#: cp/decl.cc:14642 +#: cp/decl.cc:14644 #, gcc-internal-format msgid "extra qualification %<%T::%> on member %qs" msgstr "" -#: cp/decl.cc:14672 +#: cp/decl.cc:14674 #, gcc-internal-format msgid "cannot define member function %<%T::%s%> within %qT" msgstr "" -#: cp/decl.cc:14674 +#: cp/decl.cc:14676 #, gcc-internal-format msgid "cannot declare member function %<%T::%s%> within %qT" msgstr "" -#: cp/decl.cc:14682 +#: cp/decl.cc:14684 #, gcc-internal-format msgid "cannot declare member %<%T::%s%> within %qT" msgstr "" -#: cp/decl.cc:14722 +#: cp/decl.cc:14724 #, gcc-internal-format msgid "non-parameter %qs cannot be a parameter pack" msgstr "" -#: cp/decl.cc:14731 +#: cp/decl.cc:14733 #, gcc-internal-format msgid "data member may not have variably modified type %qT" msgstr "" -#: cp/decl.cc:14734 +#: cp/decl.cc:14736 #, gcc-internal-format msgid "parameter may not have variably modified type %qT" msgstr "" -#: cp/decl.cc:14745 +#: cp/decl.cc:14747 #, gcc-internal-format msgid "%<explicit%> outside class declaration" msgstr "" -#: cp/decl.cc:14748 +#: cp/decl.cc:14750 #, gcc-internal-format msgid "%<explicit%> in friend declaration" msgstr "" -#: cp/decl.cc:14751 +#: cp/decl.cc:14753 #, gcc-internal-format msgid "" "only declarations of constructors and conversion operators can be " "%<explicit%>" msgstr "" -#: cp/decl.cc:14761 +#: cp/decl.cc:14763 #, gcc-internal-format msgid "non-member %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.cc:14768 +#: cp/decl.cc:14770 #, gcc-internal-format msgid "non-object member %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.cc:14774 +#: cp/decl.cc:14776 #, gcc-internal-format msgid "function %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.cc:14780 +#: cp/decl.cc:14782 #, gcc-internal-format msgid "%<static%> %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.cc:14786 +#: cp/decl.cc:14788 #, gcc-internal-format msgid "%<const%> %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.cc:14792 +#: cp/decl.cc:14794 #, gcc-internal-format msgid "reference %qs cannot be declared %<mutable%>" msgstr "" -#: cp/decl.cc:14808 +#: cp/decl.cc:14810 #, gcc-internal-format msgid "typedef may not be a function definition" msgstr "" -#: cp/decl.cc:14811 +#: cp/decl.cc:14813 #, gcc-internal-format msgid "typedef may not be a member function definition" msgstr "" -#: cp/decl.cc:14837 +#: cp/decl.cc:14839 #, gcc-internal-format msgid "%<auto%> not allowed in alias declaration" msgstr "" -#: cp/decl.cc:14840 +#: cp/decl.cc:14842 #, gcc-internal-format msgid "typedef declared %<auto%>" msgstr "" -#: cp/decl.cc:14845 +#: cp/decl.cc:14847 #, gcc-internal-format msgid "requires-clause on typedef" msgstr "" -#: cp/decl.cc:14849 +#: cp/decl.cc:14851 #, gcc-internal-format msgid "typedef name may not be a nested-name-specifier" msgstr "" -#: cp/decl.cc:14875 +#: cp/decl.cc:14877 #, gcc-internal-format msgid "ISO C++ forbids nested type %qD with same name as enclosing class" msgstr "" -#: cp/decl.cc:14964 +#: cp/decl.cc:14966 #, gcc-internal-format msgid "%<inline%> specified for friend class declaration" msgstr "" -#: cp/decl.cc:14972 +#: cp/decl.cc:14974 #, gcc-internal-format msgid "template parameters cannot be friends" msgstr "" -#: cp/decl.cc:14974 +#: cp/decl.cc:14976 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>" msgstr "" -#: cp/decl.cc:14978 +#: cp/decl.cc:14980 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %<friend %#T%>" msgstr "" -#: cp/decl.cc:14991 +#: cp/decl.cc:14993 #, gcc-internal-format msgid "trying to make class %qT a friend of global scope" msgstr "" -#: cp/decl.cc:15011 +#: cp/decl.cc:15013 #, gcc-internal-format msgid "invalid qualifiers on non-member function type" msgstr "" -#: cp/decl.cc:15015 +#: cp/decl.cc:15017 #, gcc-internal-format msgid "requires-clause on type-id" msgstr "" -#: cp/decl.cc:15025 +#: cp/decl.cc:15027 #, gcc-internal-format msgid "abstract declarator %qT used as declaration" msgstr "" -#: cp/decl.cc:15040 +#: cp/decl.cc:15042 #, gcc-internal-format msgid "requires-clause on declaration of non-function type %qT" msgstr "" -#: cp/decl.cc:15059 +#: cp/decl.cc:15061 #, gcc-internal-format msgid "cannot use %<::%> in parameter declaration" msgstr "" -#: cp/decl.cc:15069 cp/parser.cc:21410 +#: cp/decl.cc:15071 cp/parser.cc:21410 #, gcc-internal-format msgid "cannot declare a parameter with %<decltype(auto)%>" msgstr "" -#: cp/decl.cc:15076 +#: cp/decl.cc:15078 #, gcc-internal-format msgid "" "missing template argument list after %qE; template placeholder not permitted " "in parameter" msgstr "" -#: cp/decl.cc:15079 +#: cp/decl.cc:15081 #, gcc-internal-format msgid "or use %<auto%> for an abbreviated function template" msgstr "" -#: cp/decl.cc:15085 cp/parser.cc:26076 +#: cp/decl.cc:15087 cp/parser.cc:26076 #, gcc-internal-format msgid "%<auto%> parameter not permitted in this context" msgstr "" -#: cp/decl.cc:15095 +#: cp/decl.cc:15097 #, gcc-internal-format msgid "parameter declared %<auto%>" msgstr "" -#: cp/decl.cc:15149 cp/parser.cc:3855 +#: cp/decl.cc:15151 cp/parser.cc:3855 #, gcc-internal-format msgid "invalid use of template-name %qE without an argument list" msgstr "" -#: cp/decl.cc:15153 +#: cp/decl.cc:15155 #, gcc-internal-format msgid "non-static data member declared with placeholder %qT" msgstr "" -#: cp/decl.cc:15173 +#: cp/decl.cc:15175 #, gcc-internal-format msgid "ISO C++ forbids flexible array member %qs" msgstr "" -#: cp/decl.cc:15176 +#: cp/decl.cc:15178 #, gcc-internal-format msgid "ISO C++ forbids flexible array members" msgstr "" #. Something like struct S { int N::j; }; -#: cp/decl.cc:15192 +#: cp/decl.cc:15194 #, gcc-internal-format msgid "invalid use of %<::%>" msgstr "" -#: cp/decl.cc:15213 +#: cp/decl.cc:15215 #, gcc-internal-format msgid "declaration of function %qD in invalid context" msgstr "" -#: cp/decl.cc:15223 +#: cp/decl.cc:15225 #, gcc-internal-format msgid "function %qD declared %<virtual%> inside a union" msgstr "" -#: cp/decl.cc:15233 +#: cp/decl.cc:15235 #, gcc-internal-format msgid "%qD cannot be declared %<virtual%>, since it is always static" msgstr "" -#: cp/decl.cc:15247 +#: cp/decl.cc:15249 #, gcc-internal-format msgid "expected qualified name in friend declaration for destructor %qD" msgstr "" -#: cp/decl.cc:15254 +#: cp/decl.cc:15256 #, gcc-internal-format msgid "declaration of %qD as member of %qT" msgstr "" -#: cp/decl.cc:15261 cp/decl.cc:15274 +#: cp/decl.cc:15263 cp/decl.cc:15276 #, gcc-internal-format msgid "a destructor cannot be %qs" msgstr "" -#: cp/decl.cc:15280 +#: cp/decl.cc:15282 #, gcc-internal-format msgid "expected qualified name in friend declaration for constructor %qD" msgstr "" -#: cp/decl.cc:15289 +#: cp/decl.cc:15291 #, gcc-internal-format msgid "a constructor cannot be %<concept%>" msgstr "" -#: cp/decl.cc:15295 +#: cp/decl.cc:15297 #, gcc-internal-format msgid "a concept cannot be a member function" msgstr "" -#: cp/decl.cc:15303 cp/decl.cc:15662 +#: cp/decl.cc:15305 cp/decl.cc:15664 #, gcc-internal-format msgid "%qD cannot be %qs" msgstr "" -#: cp/decl.cc:15313 +#: cp/decl.cc:15315 #, gcc-internal-format msgid "specialization of variable template %qD declared as function" msgstr "" -#: cp/decl.cc:15316 +#: cp/decl.cc:15318 #, gcc-internal-format msgid "variable template declared here" msgstr "" -#: cp/decl.cc:15381 +#: cp/decl.cc:15383 #, gcc-internal-format msgid "field %qD has incomplete type %qT" msgstr "" -#: cp/decl.cc:15386 +#: cp/decl.cc:15388 #, gcc-internal-format msgid "name %qT has incomplete type" msgstr "" -#: cp/decl.cc:15406 +#: cp/decl.cc:15408 #, gcc-internal-format msgid "%qE is neither function nor member function; cannot be declared friend" msgstr "" -#: cp/decl.cc:15409 +#: cp/decl.cc:15411 #, gcc-internal-format msgid "" "unnamed field is neither function nor member function; cannot be declared " "friend" msgstr "" -#: cp/decl.cc:15428 cp/parser.cc:21976 cp/parser.cc:28868 +#: cp/decl.cc:15430 cp/parser.cc:21976 cp/parser.cc:28868 #, gcc-internal-format msgid "" "an attribute that appertains to a friend declaration that is not a " "definition is ignored" msgstr "" -#: cp/decl.cc:15478 cp/decl.cc:15489 +#: cp/decl.cc:15480 cp/decl.cc:15491 #, gcc-internal-format msgid "static data member %qE declared %qs" msgstr "" -#: cp/decl.cc:15483 +#: cp/decl.cc:15485 #, gcc-internal-format msgid "%<constexpr%> static data member %qD must have an initializer" msgstr "" -#: cp/decl.cc:15526 cp/decl.cc:15534 cp/decl.cc:15541 cp/decl.cc:15548 +#: cp/decl.cc:15528 cp/decl.cc:15536 cp/decl.cc:15543 cp/decl.cc:15550 #, gcc-internal-format msgid "non-static data member %qE declared %qs" msgstr "" -#: cp/decl.cc:15600 +#: cp/decl.cc:15602 #, gcc-internal-format msgid "storage class %<auto%> invalid for function %qs" msgstr "" -#: cp/decl.cc:15603 +#: cp/decl.cc:15605 #, gcc-internal-format msgid "storage class %<register%> invalid for function %qs" msgstr "" -#: cp/decl.cc:15609 +#: cp/decl.cc:15611 #, gcc-internal-format msgid "storage class %<__thread%> invalid for function %qs" msgstr "" -#: cp/decl.cc:15613 +#: cp/decl.cc:15615 #, gcc-internal-format msgid "storage class %<thread_local%> invalid for function %qs" msgstr "" -#: cp/decl.cc:15618 +#: cp/decl.cc:15620 #, gcc-internal-format msgid "%<constinit%> specifier invalid for function %qs" msgstr "" -#: cp/decl.cc:15621 +#: cp/decl.cc:15623 #, gcc-internal-format msgid "virt-specifiers in %qs not allowed outside a class definition" msgstr "" -#: cp/decl.cc:15633 +#: cp/decl.cc:15635 #, gcc-internal-format msgid "" "%<static%> specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.cc:15637 +#: cp/decl.cc:15639 #, gcc-internal-format msgid "" "%<inline%> specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.cc:15645 +#: cp/decl.cc:15647 #, gcc-internal-format msgid "virtual non-class function %qs" msgstr "" -#: cp/decl.cc:15652 +#: cp/decl.cc:15654 #, gcc-internal-format msgid "%qs defined in a non-class scope" msgstr "" -#: cp/decl.cc:15653 +#: cp/decl.cc:15655 #, gcc-internal-format msgid "%qs declared in a non-class scope" msgstr "" -#: cp/decl.cc:15696 +#: cp/decl.cc:15698 #, gcc-internal-format msgid "cannot declare member function %qD to have static linkage" msgstr "" -#: cp/decl.cc:15705 +#: cp/decl.cc:15707 #, gcc-internal-format msgid "cannot declare static function inside another function" msgstr "" -#: cp/decl.cc:15746 +#: cp/decl.cc:15748 #, gcc-internal-format msgid "" "%<static%> may not be used when defining (as opposed to declaring) a static " "data member" msgstr "" -#: cp/decl.cc:15753 +#: cp/decl.cc:15755 #, gcc-internal-format msgid "static member %qD declared %<register%>" msgstr "" -#: cp/decl.cc:15759 +#: cp/decl.cc:15761 #, gcc-internal-format msgid "cannot explicitly declare member %q#D to have extern linkage" msgstr "" -#: cp/decl.cc:15767 +#: cp/decl.cc:15769 #, gcc-internal-format msgid "declaration of %<constexpr%> variable %qD is not a definition" msgstr "" -#: cp/decl.cc:15774 +#: cp/decl.cc:15776 #, gcc-internal-format msgid "a variable cannot be declared %<consteval%>" msgstr "" -#: cp/decl.cc:15806 +#: cp/decl.cc:15808 #, gcc-internal-format msgid "%qs initialized and declared %<extern%>" msgstr "" -#: cp/decl.cc:15811 +#: cp/decl.cc:15813 #, gcc-internal-format msgid "%qs has both %<extern%> and initializer" msgstr "" -#: cp/decl.cc:16013 +#: cp/decl.cc:16015 #, gcc-internal-format msgid "default argument %qE uses %qD" msgstr "" -#: cp/decl.cc:16016 +#: cp/decl.cc:16018 #, gcc-internal-format msgid "default argument %qE uses local variable %qD" msgstr "" -#: cp/decl.cc:16143 +#: cp/decl.cc:16145 #, gcc-internal-format msgid "invalid use of cv-qualified type %qT in parameter declaration" msgstr "" -#: cp/decl.cc:16147 +#: cp/decl.cc:16149 #, gcc-internal-format msgid "invalid use of type %<void%> in parameter declaration" msgstr "" -#: cp/decl.cc:16176 +#: cp/decl.cc:16178 #, gcc-internal-format msgid "%<volatile%>-qualified parameter is deprecated" msgstr "" -#: cp/decl.cc:16184 +#: cp/decl.cc:16186 #, gcc-internal-format msgid "parameter %qD invalidly declared method type" msgstr "" -#: cp/decl.cc:16209 +#: cp/decl.cc:16211 #, gcc-internal-format msgid "parameter %qD includes pointer to array of unknown bound %qT" msgstr "" -#: cp/decl.cc:16211 +#: cp/decl.cc:16213 #, gcc-internal-format msgid "parameter %qD includes reference to array of unknown bound %qT" msgstr "" -#: cp/decl.cc:16494 +#: cp/decl.cc:16496 #, gcc-internal-format msgid "invalid constructor; you probably meant %<%T (const %T&)%>" msgstr "" -#: cp/decl.cc:16573 +#: cp/decl.cc:16575 #, gcc-internal-format msgid "%qD may not be declared within a namespace" msgstr "" -#: cp/decl.cc:16580 +#: cp/decl.cc:16582 #, gcc-internal-format msgid "%qD may not be declared as static" msgstr "" -#: cp/decl.cc:16638 +#: cp/decl.cc:16640 #, gcc-internal-format msgid "%qD must be a non-static member function" msgstr "" -#: cp/decl.cc:16646 +#: cp/decl.cc:16648 #, gcc-internal-format msgid "%qD must be a member function" msgstr "" -#: cp/decl.cc:16654 +#: cp/decl.cc:16656 #, gcc-internal-format msgid "" "%qD may be a static member function only with %<-std=c++23%> or %<-std=gnu+" "+23%>" msgstr "" -#: cp/decl.cc:16664 +#: cp/decl.cc:16666 #, gcc-internal-format msgid "" "%qD must be either a non-static member function or a non-member function" msgstr "" -#: cp/decl.cc:16674 +#: cp/decl.cc:16676 #, gcc-internal-format msgid "%qD must have an argument of class or enumerated type" msgstr "" #. 13.4.0.3 -#: cp/decl.cc:16705 +#: cp/decl.cc:16707 #, gcc-internal-format msgid "ISO C++ prohibits overloading %<operator ?:%>" msgstr "" -#: cp/decl.cc:16715 +#: cp/decl.cc:16717 #, gcc-internal-format msgid "%qD must not have variable number of arguments" msgstr "" -#: cp/decl.cc:16741 +#: cp/decl.cc:16743 #, gcc-internal-format msgid "%qD must have either zero or one argument" msgstr "" -#: cp/decl.cc:16742 +#: cp/decl.cc:16744 #, gcc-internal-format msgid "%qD must have either one or two arguments" msgstr "" -#: cp/decl.cc:16754 +#: cp/decl.cc:16756 #, gcc-internal-format msgid "postfix %qD must have %<int%> as its argument" msgstr "" -#: cp/decl.cc:16755 +#: cp/decl.cc:16757 #, gcc-internal-format msgid "postfix %qD must have %<int%> as its second argument" msgstr "" -#: cp/decl.cc:16766 +#: cp/decl.cc:16768 #, gcc-internal-format msgid "%qD must have no arguments" msgstr "" -#: cp/decl.cc:16767 cp/decl.cc:16777 +#: cp/decl.cc:16769 cp/decl.cc:16779 #, gcc-internal-format msgid "%qD must have exactly one argument" msgstr "" -#: cp/decl.cc:16778 +#: cp/decl.cc:16780 #, gcc-internal-format msgid "%qD must have exactly two arguments" msgstr "" -#: cp/decl.cc:16793 +#: cp/decl.cc:16795 #, gcc-internal-format msgid "%qD cannot have default arguments" msgstr "" -#: cp/decl.cc:16817 +#: cp/decl.cc:16819 #, gcc-internal-format msgid "converting %qT to %<void%> will never use a type conversion operator" msgstr "" -#: cp/decl.cc:16824 +#: cp/decl.cc:16826 #, gcc-internal-format msgid "" "converting %qT to a reference to the same type will never use a type " "conversion operator" msgstr "" -#: cp/decl.cc:16826 +#: cp/decl.cc:16828 #, gcc-internal-format msgid "" "converting %qT to the same type will never use a type conversion operator" msgstr "" -#: cp/decl.cc:16835 +#: cp/decl.cc:16837 #, gcc-internal-format msgid "" "converting %qT to a reference to a base class %qT will never use a type " "conversion operator" msgstr "" -#: cp/decl.cc:16837 +#: cp/decl.cc:16839 #, gcc-internal-format msgid "" "converting %qT to a base class %qT will never use a type conversion operator" msgstr "" -#: cp/decl.cc:16853 +#: cp/decl.cc:16855 #, gcc-internal-format msgid "user-defined %qD always evaluates both arguments" msgstr "" -#: cp/decl.cc:16872 +#: cp/decl.cc:16874 #, gcc-internal-format msgid "prefix %qD should return %qT" msgstr "" -#: cp/decl.cc:16879 +#: cp/decl.cc:16881 #, gcc-internal-format msgid "postfix %qD should return %qT" msgstr "" -#: cp/decl.cc:16891 +#: cp/decl.cc:16893 #, gcc-internal-format msgid "%qD should return by value" msgstr "" -#: cp/decl.cc:16946 +#: cp/decl.cc:16948 #, gcc-internal-format msgid "using template type parameter %qT after %qs" msgstr "" -#: cp/decl.cc:16970 +#: cp/decl.cc:16972 #, gcc-internal-format msgid "using alias template specialization %qT after %qs" msgstr "" -#: cp/decl.cc:16973 +#: cp/decl.cc:16975 #, gcc-internal-format msgid "using typedef-name %qD after %qs" msgstr "" -#: cp/decl.cc:16975 +#: cp/decl.cc:16977 #, gcc-internal-format msgid "%qD has a previous declaration here" msgstr "" -#: cp/decl.cc:16984 +#: cp/decl.cc:16986 #, gcc-internal-format msgid "%qT referred to as %qs" msgstr "" -#: cp/decl.cc:16985 cp/decl.cc:16993 +#: cp/decl.cc:16987 cp/decl.cc:16995 #, gcc-internal-format msgid "%qT has a previous declaration here" msgstr "" -#: cp/decl.cc:16992 +#: cp/decl.cc:16994 #, gcc-internal-format msgid "%qT referred to as enum" msgstr "" @@ -62597,100 +62598,100 @@ msgstr "" #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.cc:17007 +#: cp/decl.cc:17009 #, gcc-internal-format msgid "template argument required for %<%s %T%>" msgstr "" -#: cp/decl.cc:17050 cp/name-lookup.cc:6232 cp/name-lookup.cc:6365 +#: cp/decl.cc:17052 cp/name-lookup.cc:6235 cp/name-lookup.cc:6368 #: cp/parser.cc:7477 cp/parser.cc:33034 #, gcc-internal-format msgid "reference to %qD is ambiguous" msgstr "" -#: cp/decl.cc:17060 +#: cp/decl.cc:17062 #, gcc-internal-format msgid "class template %qD redeclared as non-template" msgstr "" -#: cp/decl.cc:17082 cp/name-lookup.cc:5921 +#: cp/decl.cc:17084 cp/name-lookup.cc:5924 #, gcc-internal-format msgid "%qD has the same name as the class in which it is declared" msgstr "" -#: cp/decl.cc:17111 cp/friend.cc:318 cp/parser.cc:3680 cp/parser.cc:7181 +#: cp/decl.cc:17113 cp/friend.cc:318 cp/parser.cc:3680 cp/parser.cc:7181 #: cp/pt.cc:10128 #, gcc-internal-format msgid "%qT is not a template" msgstr "" -#: cp/decl.cc:17116 +#: cp/decl.cc:17118 #, gcc-internal-format msgid "perhaps you want to explicitly add %<%T::%>" msgstr "" -#: cp/decl.cc:17221 +#: cp/decl.cc:17223 #, gcc-internal-format msgid "use of enum %q#D without previous declaration" msgstr "" -#: cp/decl.cc:17248 +#: cp/decl.cc:17250 #, gcc-internal-format msgid "redeclaration of %qT as a non-template" msgstr "" -#: cp/decl.cc:17385 +#: cp/decl.cc:17387 #, gcc-internal-format msgid "derived union %qT invalid" msgstr "" -#: cp/decl.cc:17392 +#: cp/decl.cc:17394 #, gcc-internal-format msgid "%qT defined with multiple direct bases" msgstr "" -#: cp/decl.cc:17403 +#: cp/decl.cc:17405 #, gcc-internal-format msgid "%qT defined with direct virtual base" msgstr "" -#: cp/decl.cc:17428 +#: cp/decl.cc:17430 #, gcc-internal-format msgid "base type %qT fails to be a struct or class type" msgstr "" -#: cp/decl.cc:17458 +#: cp/decl.cc:17460 #, gcc-internal-format msgid "recursive type %qT undefined" msgstr "" -#: cp/decl.cc:17460 +#: cp/decl.cc:17462 #, gcc-internal-format msgid "duplicate base type %qT invalid" msgstr "" -#: cp/decl.cc:17618 +#: cp/decl.cc:17620 #, gcc-internal-format msgid "scoped/unscoped mismatch in enum %q#T" msgstr "" -#: cp/decl.cc:17621 cp/decl.cc:17630 cp/decl.cc:17641 cp/decl.cc:18242 +#: cp/decl.cc:17623 cp/decl.cc:17632 cp/decl.cc:17643 cp/decl.cc:18244 #: cp/parser.cc:22331 #, gcc-internal-format msgid "previous definition here" msgstr "" -#: cp/decl.cc:17627 +#: cp/decl.cc:17629 #, gcc-internal-format msgid "underlying type mismatch in enum %q#T" msgstr "" -#: cp/decl.cc:17638 +#: cp/decl.cc:17640 #, gcc-internal-format msgid "different underlying type in enum %q#T" msgstr "" -#: cp/decl.cc:17713 +#: cp/decl.cc:17715 #, gcc-internal-format msgid "underlying type %qT of %qT must be an integral type" msgstr "" @@ -62699,83 +62700,83 @@ msgstr "" #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.cc:17862 +#: cp/decl.cc:17864 #, gcc-internal-format msgid "no integral type can represent all of the enumerator values for %qT" msgstr "" -#: cp/decl.cc:18049 +#: cp/decl.cc:18051 #, gcc-internal-format msgid "" "enumerator value for %qD must have integral or unscoped enumeration type" msgstr "" -#: cp/decl.cc:18059 +#: cp/decl.cc:18061 #, gcc-internal-format msgid "enumerator value for %qD is not an integer constant" msgstr "" -#: cp/decl.cc:18108 +#: cp/decl.cc:18110 #, gcc-internal-format msgid "incremented enumerator value is too large for %<unsigned long%>" msgstr "" -#: cp/decl.cc:18109 +#: cp/decl.cc:18111 #, gcc-internal-format msgid "incremented enumerator value is too large for %<long%>" msgstr "" -#: cp/decl.cc:18120 +#: cp/decl.cc:18122 #, gcc-internal-format msgid "overflow in enumeration values at %qD" msgstr "" -#: cp/decl.cc:18140 +#: cp/decl.cc:18142 #, gcc-internal-format msgid "enumerator value %qE is outside the range of underlying type %qT" msgstr "" -#: cp/decl.cc:18240 cp/parser.cc:22329 +#: cp/decl.cc:18242 cp/parser.cc:22329 #, gcc-internal-format msgid "multiple definition of %q#T" msgstr "" -#: cp/decl.cc:18314 +#: cp/decl.cc:18316 #, gcc-internal-format msgid "return type %q#T is incomplete" msgstr "" -#: cp/decl.cc:18481 cp/typeck.cc:11344 +#: cp/decl.cc:18483 cp/typeck.cc:11344 #, gcc-internal-format msgid "%<operator=%> should return a reference to %<*this%>" msgstr "" -#: cp/decl.cc:19300 +#: cp/decl.cc:19302 #, gcc-internal-format msgid "no return statements in function returning %qT" msgstr "" -#: cp/decl.cc:19302 cp/typeck.cc:11222 +#: cp/decl.cc:19304 cp/typeck.cc:11222 #, gcc-internal-format msgid "only plain %<auto%> return type can be deduced to %<void%>" msgstr "" -#: cp/decl.cc:19358 +#: cp/decl.cc:19360 #, gcc-internal-format msgid "no return statement in %<constexpr%> function returning non-void" msgstr "" -#: cp/decl.cc:19549 +#: cp/decl.cc:19551 #, gcc-internal-format msgid "%qD is already defined in class %qT" msgstr "" -#: cp/decl.cc:19946 +#: cp/decl.cc:19949 #, gcc-internal-format msgid "using %qs" msgstr "" -#: cp/decl.cc:19958 +#: cp/decl.cc:19961 #, gcc-internal-format msgid "use of %qD before deduction of %<auto%>" msgstr "" @@ -63205,145 +63206,280 @@ msgstr "" msgid "use of built-in parameter pack %qD outside of a template" msgstr "" -#: cp/error.cc:4305 +#: cp/error.cc:3791 +msgid " inlined from %qD at %r%s:%d:%d%R" +msgstr "" + +#: cp/error.cc:3796 +msgid " inlined from %qD at %r%s:%d%R" +msgstr "" + +#: cp/error.cc:3802 +#, gcc-internal-format +msgid " inlined from %qD" +msgstr "" + +#: cp/error.cc:3828 +#, gcc-internal-format +msgid "In static member function %qD" +msgstr "" + +#: cp/error.cc:3830 +#, gcc-internal-format +msgid "In copy constructor %qD" +msgstr "" + +#: cp/error.cc:3832 +#, gcc-internal-format +msgid "In constructor %qD" +msgstr "" + +#: cp/error.cc:3834 +#, gcc-internal-format +msgid "In destructor %qD" +msgstr "" + +#: cp/error.cc:3836 +#, gcc-internal-format +msgid "In lambda function" +msgstr "" + +#: cp/error.cc:3838 +#, gcc-internal-format +msgid "In explicit object member function %qD" +msgstr "" + +#: cp/error.cc:3840 +#, gcc-internal-format +msgid "In member function %qD" +msgstr "" + +#: cp/error.cc:3843 +#, gcc-internal-format +msgid "In function %qD" +msgstr "" + +#: cp/error.cc:3870 +msgid "%s%s%sIn substitution of %qS:\n" +msgstr "" + +#: cp/error.cc:3871 +#, gcc-internal-format +msgid "%s%s%sIn instantiation of %q#D:\n" +msgstr "" + +#: cp/error.cc:3891 +msgid "%r%s:%d:%d:%R " +msgstr "" + +#: cp/error.cc:3894 +msgid "%r%s:%d:%R " +msgstr "" + +#: cp/error.cc:3987 +msgid "recursively required by substitution of %qS\n" +msgstr "" + +#: cp/error.cc:3988 +msgid "required by substitution of %qS\n" +msgstr "" + +#: cp/error.cc:3993 +#, gcc-internal-format +msgid "recursively required from %q#D\n" +msgstr "" + +#: cp/error.cc:3994 +#, gcc-internal-format +msgid "required from %q#D\n" +msgstr "" + +#: cp/error.cc:4001 +#, gcc-internal-format +msgid "recursively required from here\n" +msgstr "" + +#: cp/error.cc:4002 +#, gcc-internal-format +msgid "required from here\n" +msgstr "" + +#: cp/error.cc:4052 +#, gcc-internal-format, gfc-internal-format +msgid "" +"[ skipping %d instantiation contexts, use -ftemplate-backtrace-limit=0 to " +"disable ]\n" +msgstr "" + +#: cp/error.cc:4104 +#, gcc-internal-format +msgid "in %<constexpr%> expansion of %qs" +msgstr "" + +#: cp/error.cc:4117 +#, gcc-internal-format +msgid "required by the constraints of %q#D\n" +msgstr "" + +#: cp/error.cc:4132 +#, gcc-internal-format +msgid "required for the satisfaction of %qE" +msgstr "" + +#: cp/error.cc:4154 +#, gcc-internal-format +msgid "required for constraint satisfaction\n" +msgstr "" + +#: cp/error.cc:4185 +#, gcc-internal-format +msgid "in requirements with " +msgstr "" + +#: cp/error.cc:4186 +#, gcc-internal-format +msgid "in requirements " +msgstr "" + +#: cp/error.cc:4304 #, gcc-internal-format msgid "(no argument)" msgstr "" -#: cp/error.cc:4399 +#: cp/error.cc:4398 #, gcc-internal-format msgid "[...]" msgstr "" -#: cp/error.cc:4751 +#: cp/error.cc:4750 #, gcc-internal-format msgid "" "extended initializer lists only available with %<-std=c++11%> or %<-std=gnu+" "+11%>" msgstr "" -#: cp/error.cc:4756 +#: cp/error.cc:4755 #, gcc-internal-format msgid "" "explicit conversion operators only available with %<-std=c++11%> or %<-" "std=gnu++11%>" msgstr "" -#: cp/error.cc:4761 +#: cp/error.cc:4760 #, gcc-internal-format msgid "" "variadic templates only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4766 +#: cp/error.cc:4765 #, gcc-internal-format msgid "" "lambda expressions only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4771 +#: cp/error.cc:4770 #, gcc-internal-format msgid "C++11 auto only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4776 +#: cp/error.cc:4775 #, gcc-internal-format msgid "scoped enums only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4781 +#: cp/error.cc:4780 #, gcc-internal-format msgid "" "defaulted and deleted functions only available with %<-std=c++11%> or %<-" "std=gnu++11%>" msgstr "" -#: cp/error.cc:4787 +#: cp/error.cc:4786 #, gcc-internal-format msgid "" "inline namespaces only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4792 +#: cp/error.cc:4791 #, gcc-internal-format msgid "" "override controls (override/final) only available with %<-std=c++11%> or %<-" "std=gnu++11%>" msgstr "" -#: cp/error.cc:4797 +#: cp/error.cc:4796 #, gcc-internal-format msgid "" "non-static data member initializers only available with %<-std=c++11%> or %<-" "std=gnu++11%>" msgstr "" -#: cp/error.cc:4802 +#: cp/error.cc:4801 #, gcc-internal-format msgid "" "user-defined literals only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4807 +#: cp/error.cc:4806 #, gcc-internal-format msgid "" "delegating constructors only available with %<-std=c++11%> or %<-std=gnu+" "+11%>" msgstr "" -#: cp/error.cc:4812 +#: cp/error.cc:4811 #, gcc-internal-format msgid "" "inheriting constructors only available with %<-std=c++11%> or %<-std=gnu+" "+11%>" msgstr "" -#: cp/error.cc:4818 +#: cp/error.cc:4817 #, gcc-internal-format msgid "C++11 attributes only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4823 +#: cp/error.cc:4822 #, gcc-internal-format msgid "ref-qualifiers only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/error.cc:4876 +#: cp/error.cc:4875 #, gcc-internal-format msgid "incomplete type %qT used in nested name specifier" msgstr "" -#: cp/error.cc:4881 +#: cp/error.cc:4880 #, gcc-internal-format msgid "reference to %<%T::%D%> is ambiguous" msgstr "" -#: cp/error.cc:4896 +#: cp/error.cc:4895 #, gcc-internal-format msgid "%qD is not a member of %qT; did you mean %qs?" msgstr "" -#: cp/error.cc:4900 cp/typeck.cc:2897 +#: cp/error.cc:4899 cp/typeck.cc:2897 #, gcc-internal-format msgid "%qD is not a member of %qT" msgstr "" -#: cp/error.cc:4922 +#: cp/error.cc:4921 #, gcc-internal-format msgid "%qD is not a member of %qD; did you mean %qs?" msgstr "" -#: cp/error.cc:4926 cp/typeck.cc:3492 +#: cp/error.cc:4925 cp/typeck.cc:3492 #, gcc-internal-format msgid "%qD is not a member of %qD" msgstr "" -#: cp/error.cc:4937 +#: cp/error.cc:4936 #, gcc-internal-format msgid "%<::%D%> has not been declared; did you mean %qs?" msgstr "" -#: cp/error.cc:4941 +#: cp/error.cc:4940 #, gcc-internal-format msgid "%<::%D%> has not been declared" msgstr "" @@ -63683,7 +63819,7 @@ msgstr "" msgid "type %qT is not a direct base of %qT" msgstr "" -#: cp/init.cc:2376 cp/semantics.cc:4430 rust/backend/rust-tree.cc:4155 +#: cp/init.cc:2376 cp/semantics.cc:4434 rust/backend/rust-tree.cc:4155 #, gcc-internal-format msgid "%qT is not a class type" msgstr "" @@ -63703,7 +63839,7 @@ msgstr "" msgid "invalid use of non-static member function %qD" msgstr "" -#: cp/init.cc:2541 cp/semantics.cc:2752 +#: cp/init.cc:2541 cp/semantics.cc:2755 #, gcc-internal-format msgid "invalid use of non-static data member %qD" msgstr "" @@ -64026,24 +64162,29 @@ msgstr "" msgid "%qD not defined" msgstr "" -#: cp/lex.cc:763 +#: cp/lex.cc:753 cp/parser.cc:3922 cp/parser.cc:32272 +#, gcc-internal-format +msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>" +msgstr "" + +#: cp/lex.cc:766 #, gcc-internal-format msgid "%qD was not declared in this scope; did you mean %qs?" msgstr "" -#: cp/lex.cc:767 +#: cp/lex.cc:770 #, gcc-internal-format msgid "%qD was not declared in this scope" msgstr "" -#: cp/lex.cc:810 +#: cp/lex.cc:813 #, gcc-internal-format msgid "" "there are no arguments to %qD that depend on a template parameter, so a " "declaration of %qD must be available" msgstr "" -#: cp/lex.cc:819 +#: cp/lex.cc:822 #, gcc-internal-format msgid "" "(if you use %<-fpermissive%>, G++ will accept your code, but allowing the " @@ -64055,12 +64196,12 @@ msgstr "" msgid " # %E" msgstr "" -#: cp/mangle.cc:2663 +#: cp/mangle.cc:2669 #, gcc-internal-format msgid "mangling %<typeof%>, use %<decltype%> instead" msgstr "" -#: cp/mangle.cc:2667 +#: cp/mangle.cc:2673 #, gcc-internal-format msgid "" "use of built-in trait %qT in function signature; use library traits instead" @@ -64068,61 +64209,61 @@ msgstr "" #. TODO Mangle pack indexing #. <https://github.com/itanium-cxx-abi/cxx-abi/issues/175>. -#: cp/mangle.cc:2674 +#: cp/mangle.cc:2680 #, gcc-internal-format msgid "mangling type pack index" msgstr "" -#: cp/mangle.cc:3887 +#: cp/mangle.cc:3893 #, gcc-internal-format msgid "" "use of built-in trait %qE in function signature; use library traits instead" msgstr "" -#: cp/mangle.cc:3892 +#: cp/mangle.cc:3898 #, gcc-internal-format, gfc-internal-format msgid "mangling %C" msgstr "" -#: cp/mangle.cc:3966 +#: cp/mangle.cc:3972 #, gcc-internal-format msgid "omitted middle operand to %<?:%> operand cannot be mangled" msgstr "" -#: cp/mangle.cc:4539 +#: cp/mangle.cc:4545 #, gcc-internal-format msgid "" "mangled name for %qD will change in C++17 because the exception " "specification is part of a function type" msgstr "" -#: cp/mangle.cc:4585 cp/mangle.cc:4764 +#: cp/mangle.cc:4591 cp/mangle.cc:4770 #, gcc-internal-format msgid "" "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)" msgstr "" -#: cp/mangle.cc:4591 cp/mangle.cc:4770 +#: cp/mangle.cc:4597 cp/mangle.cc:4776 #, gcc-internal-format msgid "" "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)" msgstr "" -#: cp/mangle.cc:4917 +#: cp/mangle.cc:4923 #, gcc-internal-format msgid "" "the mangled name of a thunk for %qD changes between %<-fabi-version=%d%> and " "%<-fabi-version=%d%>" msgstr "" -#: cp/mangle.cc:4922 +#: cp/mangle.cc:4928 #, gcc-internal-format msgid "" "the mangled name of %qD changes between %<-fabi-version=%d%> and %<-fabi-" "version=%d%>" msgstr "" -#: cp/mangle.cc:4927 +#: cp/mangle.cc:4933 #, gcc-internal-format msgid "" "the mangled name of the initialization guard variable for %qD changes " @@ -64451,405 +64592,440 @@ msgstr "" msgid "unable to represent further imported source locations" msgstr "" -#: cp/module.cc:12041 +#: cp/module.cc:12044 #, gcc-internal-format msgid "mismatching abi tags for %qD with tags %qE" msgstr "" -#: cp/module.cc:12045 +#: cp/module.cc:12048 #, gcc-internal-format msgid "mismatching abi tags for %qD with no tags" msgstr "" -#: cp/module.cc:12048 +#: cp/module.cc:12051 #, gcc-internal-format msgid "existing declaration here with tags %qE" msgstr "" -#: cp/module.cc:12051 +#: cp/module.cc:12054 #, gcc-internal-format msgid "existing declaration here with no tags" msgstr "" -#: cp/module.cc:12193 +#: cp/module.cc:12105 cp/module.cc:12229 +#, gcc-internal-format +msgid "conflicting type for imported declaration %#qD" +msgstr "" + +#: cp/module.cc:12114 #, gcc-internal-format -msgid "conflicting global module declaration %#qD" +msgid "conflicting language linkage for imported declaration %#qD" msgstr "" -#: cp/module.cc:12195 +#: cp/module.cc:12126 +#, gcc-internal-format +msgid "conflicting argument list for imported declaration %#qD" +msgstr "" + +#: cp/module.cc:12133 +#, gcc-internal-format +msgid "conflicting argument types for imported declaration %#qD" +msgstr "" + +#: cp/module.cc:12171 +#, gcc-internal-format +msgid "conflicting %<noexcept%> specifier for imported declaration %#qD" +msgstr "" + +#: cp/module.cc:12189 +#, gcc-internal-format +msgid "conflicting deduced return type for imported declaration %#qD" +msgstr "" + +#: cp/module.cc:12204 +#, gcc-internal-format +msgid "conflicting %<constexpr%> for imported declaration %#qD" +msgstr "" + +#: cp/module.cc:12220 +#, gcc-internal-format +msgid "conflicting imported declaration %q#D" +msgstr "" + +#: cp/module.cc:12246 #, gcc-internal-format msgid "existing declaration %#qD" msgstr "" -#: cp/module.cc:12298 +#: cp/module.cc:12349 #, gcc-internal-format msgid "conflicting default argument for %#qD" msgstr "" -#: cp/module.cc:12300 cp/module.cc:12327 +#: cp/module.cc:12351 cp/module.cc:12378 #, gcc-internal-format msgid "existing default declared here" msgstr "" -#: cp/module.cc:12324 +#: cp/module.cc:12375 #, gcc-internal-format msgid "conflicting default argument for parameter %P of %#qD" msgstr "" -#: cp/module.cc:13383 +#: cp/module.cc:13434 #, gcc-internal-format msgid "definition of %qD does not match" msgstr "" -#: cp/module.cc:13385 +#: cp/module.cc:13436 #, gcc-internal-format msgid "existing definition %qD" msgstr "" -#: cp/module.cc:13397 +#: cp/module.cc:13448 #, gcc-internal-format msgid "enumerator %qD does not match ..." msgstr "" -#: cp/module.cc:13399 +#: cp/module.cc:13450 #, gcc-internal-format msgid "... this enumerator %qD" msgstr "" -#: cp/module.cc:13405 +#: cp/module.cc:13456 #, gcc-internal-format msgid "additional enumerators beginning with %qD" msgstr "" -#: cp/module.cc:13409 +#: cp/module.cc:13460 #, gcc-internal-format msgid "enumeration range differs" msgstr "" -#: cp/module.cc:13622 +#: cp/module.cc:13673 #, gcc-internal-format msgid "%qD is an alias of TU-local type %qT" msgstr "" -#: cp/module.cc:13640 +#: cp/module.cc:13691 #, gcc-internal-format msgid "%qD is a specialization of TU-local template %qD" msgstr "" -#: cp/module.cc:13664 +#: cp/module.cc:13715 #, gcc-internal-format msgid "%qD declared with internal linkage" msgstr "" -#: cp/module.cc:13682 +#: cp/module.cc:13733 #, gcc-internal-format msgid "%qD has no linkage and is declared in an anonymous namespace" msgstr "" -#: cp/module.cc:13694 +#: cp/module.cc:13745 #, gcc-internal-format msgid "%qD has no linkage and is declared within TU-local entity %qT" msgstr "" -#: cp/module.cc:13705 +#: cp/module.cc:13756 #, gcc-internal-format msgid "%qD has no linkage and is declared within TU-local entity %qD" msgstr "" -#: cp/module.cc:13737 +#: cp/module.cc:13788 #, gcc-internal-format msgid "" "%qT has no name and cannot be differentiated from similar lambdas in other " "TUs" msgstr "" -#: cp/module.cc:13746 +#: cp/module.cc:13797 #, gcc-internal-format msgid "" "%qT has no name and is not defined within a class, function, or initializer" msgstr "" -#: cp/module.cc:13782 +#: cp/module.cc:13833 #, gcc-internal-format msgid "%qD has TU-local template argument %qD" msgstr "" -#: cp/module.cc:13794 +#: cp/module.cc:13845 #, gcc-internal-format msgid "%qD has TU-local template argument %qT" msgstr "" -#: cp/module.cc:13846 +#: cp/module.cc:13897 #, gcc-internal-format msgid "%qD refers to TU-local object %qD" msgstr "" -#: cp/module.cc:13848 +#: cp/module.cc:13899 #, gcc-internal-format msgid "%qD refers to TU-local function %qD" msgstr "" -#: cp/module.cc:14970 +#: cp/module.cc:15021 #, gcc-internal-format msgid "%qD exposes TU-local entity %qD" msgstr "" -#: cp/module.cc:14981 +#: cp/module.cc:15032 #, gcc-internal-format msgid "%qD is declared %<constexpr%> and is initialized to a TU-local value" msgstr "" -#: cp/module.cc:15019 +#: cp/module.cc:15070 #, gcc-internal-format msgid "" "%qD refers to TU-local entity %qD and cannot be instantiated in other TUs" msgstr "" -#: cp/module.cc:15616 +#: cp/module.cc:15667 #, gcc-internal-format msgid "recursive lazy load" msgstr "" -#: cp/module.cc:15636 +#: cp/module.cc:15687 #, gcc-internal-format msgid "cannot import module in its own purview" msgstr "" -#: cp/module.cc:15637 cp/module.cc:21219 +#: cp/module.cc:15688 cp/module.cc:21270 #, gcc-internal-format msgid "module %qs declared here" msgstr "" -#: cp/module.cc:15986 +#: cp/module.cc:16037 #, gcc-internal-format msgid "indirect import %qs is not already loaded" msgstr "" -#: cp/module.cc:15992 +#: cp/module.cc:16043 #, gcc-internal-format msgid "import %qs has CRC mismatch" msgstr "" -#: cp/module.cc:18759 +#: cp/module.cc:18810 #, gcc-internal-format msgid "not exporting %<#define %E%> as it is a keyword" msgstr "" -#: cp/module.cc:18999 +#: cp/module.cc:19050 #, gcc-internal-format msgid "macro definitions of %qE corrupted" msgstr "" -#: cp/module.cc:19024 cp/module.cc:19027 +#: cp/module.cc:19075 cp/module.cc:19078 #, gcc-internal-format msgid "inconsistent imported macro definition %qE" msgstr "" -#: cp/module.cc:19033 +#: cp/module.cc:19084 #, gcc-internal-format msgid "%<#undef %E%>" msgstr "" -#: cp/module.cc:19035 +#: cp/module.cc:19086 #, gcc-internal-format msgid "%<#define %s%>" msgstr "" -#: cp/module.cc:19367 +#: cp/module.cc:19418 #, gcc-internal-format msgid "compiled module file is %qs" msgstr "" -#: cp/module.cc:19405 cp/module.cc:19410 +#: cp/module.cc:19456 cp/module.cc:19461 #, gcc-internal-format, gfc-internal-format msgid "compiled module is %sversion %s" msgstr "" -#: cp/module.cc:19416 +#: cp/module.cc:19467 #, gcc-internal-format, gfc-internal-format msgid "compiler is %sversion %s%s%s" msgstr "" -#: cp/module.cc:19446 +#: cp/module.cc:19497 #, gcc-internal-format msgid "module %qs found" msgstr "" -#: cp/module.cc:19448 +#: cp/module.cc:19499 #, gcc-internal-format msgid "header module expected, module %qs found" msgstr "" -#: cp/module.cc:19449 +#: cp/module.cc:19500 #, gcc-internal-format msgid "module %qs expected, header module found" msgstr "" -#: cp/module.cc:19464 +#: cp/module.cc:19515 #, gcc-internal-format msgid "module %qs CRC mismatch" msgstr "" -#: cp/module.cc:19478 +#: cp/module.cc:19529 #, gcc-internal-format msgid "target & host is %qs:%qs, expected %qs:%qs" msgstr "" -#: cp/module.cc:19490 +#: cp/module.cc:19541 #, gcc-internal-format msgid "language dialect differs %qs, expected %qs" msgstr "" -#: cp/module.cc:19510 +#: cp/module.cc:19561 #, gcc-internal-format msgid "module contains OpenMP, use %<-fopenmp%> to enable" msgstr "" -#: cp/module.cc:19512 +#: cp/module.cc:19563 #, gcc-internal-format msgid "module contains OpenMP, use %<-fopenmp%> or %<-fopenmp-simd%> to enable" msgstr "" -#: cp/module.cc:19515 +#: cp/module.cc:19566 #, gcc-internal-format msgid "module contains OpenACC, use %<-fopenacc%> to enable" msgstr "" -#: cp/module.cc:19533 +#: cp/module.cc:19584 #, gcc-internal-format msgid "fixed tree mismatch" msgstr "" -#: cp/module.cc:19624 +#: cp/module.cc:19675 #, gcc-internal-format msgid "interface partition is not exported" msgstr "" -#: cp/module.cc:20181 +#: cp/module.cc:20232 #, gcc-internal-format, gfc-internal-format msgid "failed to read compiled module cluster %u: %s" msgstr "" -#: cp/module.cc:20220 +#: cp/module.cc:20271 #, gcc-internal-format, gfc-internal-format msgid "failed to read compiled module: %s" msgstr "" -#: cp/module.cc:20230 +#: cp/module.cc:20281 #, gcc-internal-format msgid "" "consider using %<-fno-module-lazy%>, increasing %<-param-lazy-modules=%u%> " "value, or increasing the per-process file descriptor limit" msgstr "" -#: cp/module.cc:20235 +#: cp/module.cc:20286 #, gcc-internal-format msgid "imports must be built before being imported" msgstr "" -#: cp/module.cc:20238 +#: cp/module.cc:20289 #, gcc-internal-format msgid "returning to the gate for a mechanical issue" msgstr "" -#: cp/module.cc:20559 +#: cp/module.cc:20610 #, gcc-internal-format msgid "declaring %qD in module %qs conflicts with builtin in global module" msgstr "" -#: cp/module.cc:20562 +#: cp/module.cc:20613 #, gcc-internal-format msgid "declaration %qD conflicts with builtin" msgstr "" -#: cp/module.cc:20568 +#: cp/module.cc:20619 #, gcc-internal-format msgid "redeclaring %qD in module %qs conflicts with import" msgstr "" -#: cp/module.cc:20571 +#: cp/module.cc:20622 #, gcc-internal-format msgid "redeclaring %qD in global module conflicts with import" msgstr "" -#: cp/module.cc:20576 +#: cp/module.cc:20627 #, gcc-internal-format msgid "import declared attached to module %qs" msgstr "" -#: cp/module.cc:20580 +#: cp/module.cc:20631 #, gcc-internal-format msgid "import declared in global module" msgstr "" -#: cp/module.cc:20586 +#: cp/module.cc:20637 #, gcc-internal-format msgid "conflicting declaration of %qD in module %qs" msgstr "" -#: cp/module.cc:20589 +#: cp/module.cc:20640 #, gcc-internal-format msgid "conflicting declaration of %qD in global module" msgstr "" -#: cp/module.cc:20594 +#: cp/module.cc:20645 #, gcc-internal-format msgid "previously declared in module %qs" msgstr "" -#: cp/module.cc:20598 +#: cp/module.cc:20649 #, gcc-internal-format msgid "previously declared in global module" msgstr "" -#: cp/module.cc:20737 +#: cp/module.cc:20788 #, gcc-internal-format msgid "" "external linkage definition of %qD in header module must be declared " "%<inline%>" msgstr "" -#: cp/module.cc:20752 +#: cp/module.cc:20803 #, gcc-internal-format msgid "exporting declaration %qD declared in unnamed namespace" msgstr "" -#: cp/module.cc:20759 +#: cp/module.cc:20810 #, gcc-internal-format msgid "exporting declaration %qD with internal linkage" msgstr "" -#: cp/module.cc:20912 +#: cp/module.cc:20963 #, gcc-internal-format msgid "reading CMI %qs" msgstr "" -#: cp/module.cc:21063 +#: cp/module.cc:21114 #, gcc-internal-format msgid "failed to load binding %<%E%s%E%>" msgstr "" -#: cp/module.cc:21064 +#: cp/module.cc:21115 #, gcc-internal-format msgid "failed to load binding %<%E%s%E@%s%>" msgstr "" -#: cp/module.cc:21071 +#: cp/module.cc:21122 #, gcc-internal-format msgid "during load of binding %<%E%s%E%>" msgstr "" -#: cp/module.cc:21072 +#: cp/module.cc:21123 #, gcc-internal-format msgid "during load of binding %<%E%s%E@%s%>" msgstr "" -#: cp/module.cc:21134 +#: cp/module.cc:21185 #, gcc-internal-format msgid "failed to load pendings for %<%E%s%E%>" msgstr "" -#: cp/module.cc:21138 +#: cp/module.cc:21189 #, gcc-internal-format msgid "during load of pendings for %<%E%s%E%>" msgstr "" @@ -64861,102 +65037,102 @@ msgstr "" #. module, so we don't want to confuse things by having to think #. about whether 'extern "C++" { import foo; }' puts foo's #. contents into the global module all of a sudden. -#: cp/module.cc:21183 +#: cp/module.cc:21234 #, gcc-internal-format msgid "import of named module %qs inside language-linkage block" msgstr "" -#: cp/module.cc:21214 +#: cp/module.cc:21265 #, gcc-internal-format msgid "module already declared" msgstr "" -#: cp/module.cc:21215 +#: cp/module.cc:21266 #, gcc-internal-format msgid "module already imported" msgstr "" -#: cp/module.cc:21220 +#: cp/module.cc:21271 #, gcc-internal-format msgid "module %qs imported here" msgstr "" -#: cp/module.cc:21428 +#: cp/module.cc:21479 #, gcc-internal-format msgid "mismatching compiled module interface: had %qs, got %qs" msgstr "" -#: cp/module.cc:21434 +#: cp/module.cc:21485 #, gcc-internal-format, gfc-internal-format msgid "unknown compiled module interface: %s" msgstr "" -#: cp/module.cc:21478 +#: cp/module.cc:21529 #, gcc-internal-format msgid "cannot determine %<#include%> translation of %s: %s" msgstr "" -#: cp/module.cc:21496 +#: cp/module.cc:21547 #, gcc-internal-format msgid "include %qs translated to import" msgstr "" -#: cp/module.cc:21497 +#: cp/module.cc:21548 #, gcc-internal-format msgid "include %qs processed textually" msgstr "" -#: cp/module.cc:21857 +#: cp/module.cc:21908 #, gcc-internal-format msgid "C++ modules are incompatible with precompiled headers" msgstr "" -#: cp/module.cc:21861 +#: cp/module.cc:21912 #, gcc-internal-format msgid "C++ modules are incompatible with traditional preprocessing" msgstr "" -#: cp/module.cc:21893 cp/module.cc:21922 +#: cp/module.cc:21944 cp/module.cc:21973 #, gcc-internal-format msgid "invalid header name %qs" msgstr "" -#: cp/module.cc:21932 +#: cp/module.cc:21983 #, gcc-internal-format msgid "invalid module name %qs" msgstr "" -#: cp/module.cc:22132 +#: cp/module.cc:22183 #, gcc-internal-format msgid "%<-fmodule-only%> used for non-interface" msgstr "" -#: cp/module.cc:22172 +#: cp/module.cc:22223 #, gcc-internal-format msgid "writing CMI %qs" msgstr "" -#: cp/module.cc:22187 +#: cp/module.cc:22238 #, gcc-internal-format msgid "not writing module %qs due to errors in template bodies" msgstr "" -#: cp/module.cc:22190 +#: cp/module.cc:22241 #, gcc-internal-format msgid "enable %<-Wtemplate-body%> for more details" msgstr "" -#: cp/module.cc:22192 +#: cp/module.cc:22243 #, gcc-internal-format msgid "first error in %qD appeared here" msgstr "" -#: cp/module.cc:22256 +#: cp/module.cc:22307 #, gcc-internal-format, gfc-internal-format msgid "failed to write compiled module: %s" msgstr "" -#: cp/module.cc:22353 +#: cp/module.cc:22404 #, gcc-internal-format msgid "unknown header kind %qs" msgstr "" @@ -65013,259 +65189,259 @@ msgstr "" msgid "friend declaration %qD in local class without prior local declaration" msgstr "" -#: cp/name-lookup.cc:4653 +#: cp/name-lookup.cc:4654 #, gcc-internal-format msgid "%s %<%s(%E)%> %p %d" msgstr "" -#: cp/name-lookup.cc:4656 +#: cp/name-lookup.cc:4657 #, gcc-internal-format msgid "%s %s %p %d" msgstr "" -#: cp/name-lookup.cc:5250 +#: cp/name-lookup.cc:5253 #, gcc-internal-format msgid "exporting %q#D that does not have external linkage" msgstr "" -#: cp/name-lookup.cc:5254 +#: cp/name-lookup.cc:5257 #, gcc-internal-format msgid "%q#D declared here with no linkage" msgstr "" -#: cp/name-lookup.cc:5257 +#: cp/name-lookup.cc:5260 #, gcc-internal-format msgid "%q#D declared here with internal linkage" msgstr "" -#: cp/name-lookup.cc:5260 +#: cp/name-lookup.cc:5263 #, gcc-internal-format msgid "%q#D declared here with module linkage" msgstr "" -#: cp/name-lookup.cc:6068 +#: cp/name-lookup.cc:6071 #, gcc-internal-format msgid "%<%T%s%D%> names destructor" msgstr "" -#: cp/name-lookup.cc:6084 +#: cp/name-lookup.cc:6087 #, gcc-internal-format msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.cc:6092 +#: cp/name-lookup.cc:6095 #, gcc-internal-format msgid "" "%<using%> with enumeration scope %q#T only available with %<-std=c++20%> or " "%<-std=gnu++20%>" msgstr "" -#: cp/name-lookup.cc:6108 cp/pt.cc:18889 +#: cp/name-lookup.cc:6111 cp/pt.cc:18933 #, gcc-internal-format msgid "%qT is not a class, namespace, or enumeration" msgstr "" -#: cp/name-lookup.cc:6118 +#: cp/name-lookup.cc:6121 #, gcc-internal-format msgid "non-member using-declaration names constructor of %qT" msgstr "" -#: cp/name-lookup.cc:6129 cp/name-lookup.cc:6202 +#: cp/name-lookup.cc:6132 cp/name-lookup.cc:6205 #, gcc-internal-format msgid "using-declaration for member at non-class scope" msgstr "" -#: cp/name-lookup.cc:6152 +#: cp/name-lookup.cc:6155 #, gcc-internal-format msgid "%qT is not a direct base of %qT" msgstr "" -#: cp/name-lookup.cc:6212 +#: cp/name-lookup.cc:6215 #, gcc-internal-format msgid "did you mean %<using enum %T::%D%>?" msgstr "" -#: cp/name-lookup.cc:6224 +#: cp/name-lookup.cc:6227 #, gcc-internal-format msgid "%qD has not been declared in %qD" msgstr "" -#: cp/name-lookup.cc:6239 +#: cp/name-lookup.cc:6242 #, gcc-internal-format msgid "using-declaration may not name namespace %qD" msgstr "" -#: cp/name-lookup.cc:6250 +#: cp/name-lookup.cc:6253 #, gcc-internal-format msgid "%<%T::%D%> names constructor in %qT" msgstr "" -#: cp/name-lookup.cc:6343 +#: cp/name-lookup.cc:6346 #, gcc-internal-format msgid "declaration of %qD not in a namespace surrounding %qD" msgstr "" -#: cp/name-lookup.cc:6385 +#: cp/name-lookup.cc:6388 #, gcc-internal-format msgid "explicit qualification in declaration of %qD" msgstr "" -#: cp/name-lookup.cc:6395 +#: cp/name-lookup.cc:6398 #, gcc-internal-format msgid "%qD should have been declared inside %qD" msgstr "" -#: cp/name-lookup.cc:6465 +#: cp/name-lookup.cc:6468 #, gcc-internal-format msgid "%qD has not been declared within %qD" msgstr "" -#: cp/name-lookup.cc:6467 +#: cp/name-lookup.cc:6470 #, gcc-internal-format msgid "only here as a %<friend%>" msgstr "" -#: cp/name-lookup.cc:6521 +#: cp/name-lookup.cc:6524 #, gcc-internal-format msgid "%qD attribute requires a single NTBS argument" msgstr "" -#: cp/name-lookup.cc:6528 +#: cp/name-lookup.cc:6531 #, gcc-internal-format msgid "" "%qD attribute is meaningless since members of the anonymous namespace get " "local symbols" msgstr "" -#: cp/name-lookup.cc:6538 cp/name-lookup.cc:6565 +#: cp/name-lookup.cc:6541 cp/name-lookup.cc:6568 #, gcc-internal-format msgid "ignoring %qD attribute on anonymous namespace" msgstr "" -#: cp/name-lookup.cc:6544 +#: cp/name-lookup.cc:6547 #, gcc-internal-format msgid "ignoring %qD attribute on non-inline namespace" msgstr "" -#: cp/name-lookup.cc:6581 cp/name-lookup.cc:9002 +#: cp/name-lookup.cc:6584 cp/name-lookup.cc:9005 #, gcc-internal-format msgid "%qD attribute directive ignored" msgstr "" -#: cp/name-lookup.cc:6910 +#: cp/name-lookup.cc:6913 #, gcc-internal-format msgid "maximum limit of %d namespaces searched for %qE" msgstr "" -#: cp/name-lookup.cc:6962 +#: cp/name-lookup.cc:6965 #, gcc-internal-format msgid "suggested alternative:" msgid_plural "suggested alternatives:" msgstr[0] "" msgstr[1] "" -#: cp/name-lookup.cc:6968 +#: cp/name-lookup.cc:6971 #, gcc-internal-format msgid " %qE" msgstr "" -#: cp/name-lookup.cc:7293 +#: cp/name-lookup.cc:7296 #, gcc-internal-format msgid "" "%<std::%s%> is defined in header %qs; this is probably fixable by adding " "%<#include %s%>" msgstr "" -#: cp/name-lookup.cc:7299 +#: cp/name-lookup.cc:7302 #, gcc-internal-format msgid "%<std::%s%> is only available from %s onwards" msgstr "" -#: cp/name-lookup.cc:7737 +#: cp/name-lookup.cc:7740 #, gcc-internal-format msgid "the macro %qs had not yet been defined" msgstr "" -#: cp/name-lookup.cc:7740 +#: cp/name-lookup.cc:7743 #, gcc-internal-format msgid "it was later defined here" msgstr "" -#: cp/name-lookup.cc:8536 +#: cp/name-lookup.cc:8539 #, gcc-internal-format msgid "" "declaration of %<std::initializer_list%> does not match %<#include " "<initializer_list>%>, isn%'t a template" msgstr "" -#: cp/name-lookup.cc:8974 +#: cp/name-lookup.cc:8977 #, gcc-internal-format msgid "%<strong%> using directive no longer supported" msgstr "" -#: cp/name-lookup.cc:8977 +#: cp/name-lookup.cc:8980 #, gcc-internal-format msgid "you can use an inline namespace instead" msgstr "" -#: cp/name-lookup.cc:8996 +#: cp/name-lookup.cc:8999 #, gcc-internal-format msgid "%<omp::%E%> not allowed to be specified in this context" msgstr "" #. We only allow depth 255. -#: cp/name-lookup.cc:9088 +#: cp/name-lookup.cc:9091 #, gcc-internal-format, gfc-internal-format msgid "cannot nest more than %d namespaces" msgstr "" -#: cp/name-lookup.cc:9190 +#: cp/name-lookup.cc:9193 #, gcc-internal-format msgid "%<namespace %E%> is ambiguous" msgstr "" -#: cp/name-lookup.cc:9206 +#: cp/name-lookup.cc:9209 #, gcc-internal-format msgid "namespace alias %qD not allowed here, assuming %qD" msgstr "" -#: cp/name-lookup.cc:9289 +#: cp/name-lookup.cc:9292 #, gcc-internal-format msgid "exporting namespace %qD with internal linkage" msgstr "" -#: cp/name-lookup.cc:9291 +#: cp/name-lookup.cc:9294 #, gcc-internal-format msgid "" "%qD has internal linkage because it was declared in an unnamed namespace" msgstr "" -#: cp/name-lookup.cc:9295 +#: cp/name-lookup.cc:9298 #, gcc-internal-format msgid "exporting unnamed namespace" msgstr "" -#: cp/name-lookup.cc:9305 +#: cp/name-lookup.cc:9308 #, gcc-internal-format msgid "inline namespace must be specified at initial definition" msgstr "" -#: cp/name-lookup.cc:9355 +#: cp/name-lookup.cc:9358 #, gcc-internal-format msgid "%s namespace %qD conflicts with reachable definition" msgstr "" -#: cp/name-lookup.cc:9357 +#: cp/name-lookup.cc:9360 #, gcc-internal-format, gfc-internal-format msgid "reachable %s definition here" msgstr "" -#: cp/name-lookup.cc:9400 +#: cp/name-lookup.cc:9403 #, gcc-internal-format msgid "XXX entering %<pop_everything ()%>" msgstr "" -#: cp/name-lookup.cc:9409 +#: cp/name-lookup.cc:9412 #, gcc-internal-format msgid "XXX leaving %<pop_everything ()%>" msgstr "" @@ -65290,7 +65466,7 @@ msgstr "" msgid "%<LEXER_DEBUGGING_ENABLED_P%> is not set to true" msgstr "" -#: cp/parser.cc:1724 cp/parser.cc:49640 +#: cp/parser.cc:1724 cp/parser.cc:49645 #, gcc-internal-format msgid "" "%<#pragma omp declare %s%> not immediately followed by function declaration " @@ -65572,11 +65748,6 @@ msgstr "" msgid "%<concept%> only available with %<-std=c++20%> or %<-fconcepts%>" msgstr "" -#: cp/parser.cc:3922 cp/parser.cc:32272 -#, gcc-internal-format -msgid "%<requires%> only available with %<-std=c++20%> or %<-fconcepts%>" -msgstr "" - #: cp/parser.cc:3944 #, gcc-internal-format msgid "(perhaps %<typename %T::%E%> was intended)" @@ -65764,7 +65935,7 @@ msgstr "" msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.cc:6241 cp/parser.cc:6396 cp/parser.cc:6585 cp/semantics.cc:4779 +#: cp/parser.cc:6241 cp/parser.cc:6396 cp/parser.cc:6585 cp/semantics.cc:4783 #, gcc-internal-format msgid "expected primary-expression" msgstr "" @@ -65889,7 +66060,7 @@ msgstr "" msgid "wrong number of arguments to %<__builtin_addressof%>" msgstr "" -#: cp/parser.cc:8002 cp/pt.cc:21478 +#: cp/parser.cc:8002 cp/pt.cc:21522 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_launder%>" msgstr "" @@ -65904,21 +66075,21 @@ msgstr "" msgid "wrong number of arguments to %<__builtin_shufflevector%>" msgstr "" -#: cp/parser.cc:8069 cp/pt.cc:21593 +#: cp/parser.cc:8069 cp/pt.cc:21637 #, gcc-internal-format msgid "" "call to %<__builtin_operator_new%> does not select replaceable global " "allocation function" msgstr "" -#: cp/parser.cc:8073 cp/pt.cc:21597 +#: cp/parser.cc:8073 cp/pt.cc:21641 #, gcc-internal-format msgid "" "call to %<__builtin_operator_delete%> does not select replaceable global " "deallocation function" msgstr "" -#: cp/parser.cc:8078 cp/pt.cc:21602 +#: cp/parser.cc:8078 cp/pt.cc:21646 #, gcc-internal-format msgid "selected function declared here" msgstr "" @@ -65973,7 +66144,7 @@ msgstr "" msgid "%<co_await%> cannot be used in default arguments" msgstr "" -#: cp/parser.cc:9791 cp/parser.cc:34817 +#: cp/parser.cc:9791 cp/parser.cc:34822 #, gcc-internal-format msgid "types may not be defined in %qs expressions" msgstr "" @@ -66140,8 +66311,8 @@ msgstr "" msgid "capture of non-variable %qE" msgstr "" -#: cp/parser.cc:12078 cp/parser.cc:12089 cp/semantics.cc:4618 -#: cp/semantics.cc:4634 +#: cp/parser.cc:12078 cp/parser.cc:12089 cp/semantics.cc:4622 +#: cp/semantics.cc:4638 #, gcc-internal-format msgid "%q#D declared here" msgstr "" @@ -66186,7 +66357,7 @@ msgid "" "with %<-std=c++23%> or %<-std=gnu++23%>" msgstr "" -#: cp/parser.cc:12328 cp/pt.cc:14968 +#: cp/parser.cc:12328 cp/pt.cc:14987 #, gcc-internal-format msgid "" "a lambda with captures may not have an explicit object parameter of an " @@ -66331,7 +66502,7 @@ msgid "" "%<-std=gnu++17%>" msgstr "" -#: cp/parser.cc:14260 cp/parser.cc:35329 +#: cp/parser.cc:14260 cp/parser.cc:35334 #, gcc-internal-format msgid "expected selection-statement" msgstr "" @@ -66399,7 +66570,7 @@ msgid "" "inconsistent begin/end types in range-based %<for%> statement: %qT and %qT" msgstr "" -#: cp/parser.cc:15171 cp/parser.cc:35332 +#: cp/parser.cc:15171 cp/parser.cc:35337 #, gcc-internal-format msgid "expected iteration-statement" msgstr "" @@ -66431,7 +66602,7 @@ msgstr "" msgid "ISO C++ forbids computed gotos" msgstr "" -#: cp/parser.cc:15423 cp/parser.cc:35335 +#: cp/parser.cc:15423 cp/parser.cc:35340 #, gcc-internal-format msgid "expected jump-statement" msgstr "" @@ -66792,12 +66963,12 @@ msgstr "" msgid "cannot expand initializer for member %qD" msgstr "" -#: cp/parser.cc:18185 cp/pt.cc:28232 +#: cp/parser.cc:18185 cp/pt.cc:28283 #, gcc-internal-format msgid "mem-initializer for %qD follows constructor delegation" msgstr "" -#: cp/parser.cc:18197 cp/pt.cc:28244 +#: cp/parser.cc:18197 cp/pt.cc:28295 #, gcc-internal-format msgid "constructor delegation follows mem-initializer for %qD" msgstr "" @@ -67702,7 +67873,7 @@ msgstr "" msgid "unexpanded parameter pack in local class in lambda" msgstr "" -#: cp/parser.cc:28533 cp/parser.cc:35338 +#: cp/parser.cc:28533 cp/parser.cc:35343 #, gcc-internal-format msgid "expected class-key" msgstr "" @@ -67992,14 +68163,14 @@ msgstr "" msgid "named return values are no longer supported" msgstr "" -#: cp/parser.cc:33786 +#: cp/parser.cc:33791 #, gcc-internal-format msgid "" "ISO C++ did not adopt string literal operator templates taking an argument " "pack of characters" msgstr "" -#: cp/parser.cc:33795 +#: cp/parser.cc:33800 #, gcc-internal-format msgid "" "literal operator template %qD has invalid parameter list; expected non-type " @@ -68007,406 +68178,406 @@ msgid "" "type" msgstr "" -#: cp/parser.cc:33801 +#: cp/parser.cc:33806 #, gcc-internal-format msgid "" "literal operator template %qD has invalid parameter list; expected non-type " "template parameter pack %<<char...>%>" msgstr "" -#: cp/parser.cc:33841 +#: cp/parser.cc:33846 #, gcc-internal-format msgid "invalid declaration of member template in local class" msgstr "" -#: cp/parser.cc:33851 +#: cp/parser.cc:33856 #, gcc-internal-format msgid "template with C linkage" msgstr "" -#: cp/parser.cc:33871 +#: cp/parser.cc:33876 #, gcc-internal-format msgid "invalid explicit specialization" msgstr "" -#: cp/parser.cc:33981 +#: cp/parser.cc:33986 #, gcc-internal-format msgid "template declaration of %<typedef%>" msgstr "" -#: cp/parser.cc:34032 +#: cp/parser.cc:34037 #, gcc-internal-format msgid "a class template declaration must not declare anything else" msgstr "" -#: cp/parser.cc:34084 +#: cp/parser.cc:34089 #, gcc-internal-format msgid "explicit template specialization cannot have a storage class" msgstr "" -#: cp/parser.cc:34403 +#: cp/parser.cc:34408 #, gcc-internal-format msgid "%<>>%> should be %<> >%> within a nested template argument list" msgstr "" -#: cp/parser.cc:34416 +#: cp/parser.cc:34421 #, gcc-internal-format msgid "spurious %<>>%>, use %<>%> to terminate a template argument list" msgstr "" -#: cp/parser.cc:34447 +#: cp/parser.cc:34452 #, gcc-internal-format msgid "%qs should be %qs to terminate a template argument list" msgstr "" -#: cp/parser.cc:34764 +#: cp/parser.cc:34769 #, gcc-internal-format msgid "%<sizeof...%> argument must be surrounded by parentheses" msgstr "" -#: cp/parser.cc:34939 +#: cp/parser.cc:34944 #, gcc-internal-format msgid "invalid use of %qD in linkage specification" msgstr "" -#: cp/parser.cc:34951 +#: cp/parser.cc:34956 #, gcc-internal-format msgid "duplicate %qD specifier" msgstr "" -#: cp/parser.cc:34954 +#: cp/parser.cc:34959 #, gcc-internal-format msgid "%qD specifier conflicts with %qs" msgstr "" -#: cp/parser.cc:34966 +#: cp/parser.cc:34971 #, gcc-internal-format msgid "%<__thread%> before %qD" msgstr "" -#: cp/parser.cc:34983 +#: cp/parser.cc:34988 #, gcc-internal-format msgid "%qD specifier conflicts with %<typedef%>" msgstr "" -#: cp/parser.cc:35092 +#: cp/parser.cc:35097 #, gcc-internal-format msgid "ISO C++ 1998 does not support %<long long%>" msgstr "" -#: cp/parser.cc:35103 +#: cp/parser.cc:35108 #, gcc-internal-format msgid "both %<__thread%> and %<thread_local%> specified" msgstr "" -#: cp/parser.cc:35108 +#: cp/parser.cc:35113 #, gcc-internal-format msgid "duplicate %qD" msgstr "" -#: cp/parser.cc:35137 +#: cp/parser.cc:35142 #, gcc-internal-format msgid "duplicate %qs" msgstr "" -#: cp/parser.cc:35189 +#: cp/parser.cc:35194 #, gcc-internal-format msgid "expected %<new%>" msgstr "" -#: cp/parser.cc:35192 +#: cp/parser.cc:35197 #, gcc-internal-format msgid "expected %<delete%>" msgstr "" -#: cp/parser.cc:35195 +#: cp/parser.cc:35200 #, gcc-internal-format msgid "expected %<return%>" msgstr "" -#: cp/parser.cc:35201 +#: cp/parser.cc:35206 #, gcc-internal-format msgid "expected %<extern%>" msgstr "" -#: cp/parser.cc:35204 +#: cp/parser.cc:35209 #, gcc-internal-format msgid "expected %<static_assert%>" msgstr "" -#: cp/parser.cc:35207 +#: cp/parser.cc:35212 #, gcc-internal-format msgid "expected %<decltype%>" msgstr "" -#: cp/parser.cc:35210 +#: cp/parser.cc:35215 #, gcc-internal-format msgid "expected %<operator%>" msgstr "" -#: cp/parser.cc:35213 +#: cp/parser.cc:35218 #, gcc-internal-format msgid "expected %<class%>" msgstr "" -#: cp/parser.cc:35216 +#: cp/parser.cc:35221 #, gcc-internal-format msgid "expected %<template%>" msgstr "" -#: cp/parser.cc:35219 +#: cp/parser.cc:35224 #, gcc-internal-format msgid "expected %<namespace%>" msgstr "" -#: cp/parser.cc:35222 +#: cp/parser.cc:35227 #, gcc-internal-format msgid "expected %<using%>" msgstr "" -#: cp/parser.cc:35225 +#: cp/parser.cc:35230 #, gcc-internal-format msgid "expected %<asm%>" msgstr "" -#: cp/parser.cc:35228 +#: cp/parser.cc:35233 #, gcc-internal-format msgid "expected %<try%>" msgstr "" -#: cp/parser.cc:35231 +#: cp/parser.cc:35236 #, gcc-internal-format msgid "expected %<catch%>" msgstr "" -#: cp/parser.cc:35234 +#: cp/parser.cc:35239 #, gcc-internal-format msgid "expected %<throw%>" msgstr "" -#: cp/parser.cc:35237 +#: cp/parser.cc:35242 #, gcc-internal-format msgid "expected %<auto%>" msgstr "" -#: cp/parser.cc:35240 +#: cp/parser.cc:35245 #, gcc-internal-format msgid "expected %<__label__%>" msgstr "" -#: cp/parser.cc:35243 +#: cp/parser.cc:35248 #, gcc-internal-format msgid "expected %<@try%>" msgstr "" -#: cp/parser.cc:35246 +#: cp/parser.cc:35251 #, gcc-internal-format msgid "expected %<@synchronized%>" msgstr "" -#: cp/parser.cc:35249 +#: cp/parser.cc:35254 #, gcc-internal-format msgid "expected %<@throw%>" msgstr "" -#: cp/parser.cc:35252 +#: cp/parser.cc:35257 #, gcc-internal-format msgid "expected %<__transaction_atomic%>" msgstr "" -#: cp/parser.cc:35255 +#: cp/parser.cc:35260 #, gcc-internal-format msgid "expected %<__transaction_relaxed%>" msgstr "" -#: cp/parser.cc:35258 +#: cp/parser.cc:35263 #, gcc-internal-format msgid "expected %<co_yield%>" msgstr "" -#: cp/parser.cc:35290 +#: cp/parser.cc:35295 #, gcc-internal-format msgid "expected %<::%>" msgstr "" -#: cp/parser.cc:35302 +#: cp/parser.cc:35307 #, gcc-internal-format msgid "expected %<...%>" msgstr "" -#: cp/parser.cc:35305 +#: cp/parser.cc:35310 #, gcc-internal-format msgid "expected %<*%>" msgstr "" -#: cp/parser.cc:35308 +#: cp/parser.cc:35313 #, gcc-internal-format msgid "expected %<~%>" msgstr "" -#: cp/parser.cc:35314 +#: cp/parser.cc:35319 #, gcc-internal-format msgid "expected %<:%> or %<::%>" msgstr "" -#: cp/parser.cc:35341 +#: cp/parser.cc:35346 #, gcc-internal-format msgid "expected %<class%>, %<typename%>, or %<template%>" msgstr "" -#: cp/parser.cc:35676 +#: cp/parser.cc:35681 #, gcc-internal-format msgid "redundant enum-key %<enum%s%> in reference to %q#T" msgstr "" -#: cp/parser.cc:35828 +#: cp/parser.cc:35833 #, gcc-internal-format msgid "%qs tag used in naming %q#T" msgstr "" -#: cp/parser.cc:35833 +#: cp/parser.cc:35838 #, gcc-internal-format msgid "%q#T was previously declared here" msgstr "" -#: cp/parser.cc:35954 +#: cp/parser.cc:35959 #, gcc-internal-format msgid "redundant class-key %qs in reference to %q#T" msgstr "" -#: cp/parser.cc:36112 cp/parser.cc:36146 +#: cp/parser.cc:36117 cp/parser.cc:36151 #, gcc-internal-format msgid "%qT declared with a mismatched class-key %qs" msgstr "" -#: cp/parser.cc:36119 cp/parser.cc:36152 +#: cp/parser.cc:36124 cp/parser.cc:36157 #, gcc-internal-format msgid "remove the class-key or replace it with %qs" msgstr "" -#: cp/parser.cc:36120 cp/parser.cc:36153 +#: cp/parser.cc:36125 cp/parser.cc:36158 #, gcc-internal-format msgid "replace the class-key with %qs" msgstr "" -#: cp/parser.cc:36127 +#: cp/parser.cc:36132 #, gcc-internal-format msgid "%qT defined as %qs here" msgstr "" -#: cp/parser.cc:36128 +#: cp/parser.cc:36133 #, gcc-internal-format msgid "%qT first declared as %qs here" msgstr "" -#: cp/parser.cc:36211 +#: cp/parser.cc:36216 #, gcc-internal-format msgid "%qD redeclared with different access" msgstr "" -#: cp/parser.cc:36232 +#: cp/parser.cc:36237 #, gcc-internal-format msgid "" "in C++98 %<template%> (as a disambiguator) is only allowed within templates" msgstr "" -#: cp/parser.cc:36481 +#: cp/parser.cc:36486 #, gcc-internal-format msgid "file ends in default argument" msgstr "" -#: cp/parser.cc:36722 cp/parser.cc:38034 cp/parser.cc:38223 +#: cp/parser.cc:36727 cp/parser.cc:38039 cp/parser.cc:38228 #, gcc-internal-format msgid "misplaced %<@%D%> Objective-C++ construct" msgstr "" -#: cp/parser.cc:36793 +#: cp/parser.cc:36798 #, gcc-internal-format msgid "objective-c++ message receiver expected" msgstr "" -#: cp/parser.cc:36867 +#: cp/parser.cc:36872 #, gcc-internal-format msgid "objective-c++ message argument(s) are expected" msgstr "" -#: cp/parser.cc:36898 +#: cp/parser.cc:36903 #, gcc-internal-format msgid "%<@encode%> must specify a type as an argument" msgstr "" -#: cp/parser.cc:37302 +#: cp/parser.cc:37307 #, gcc-internal-format msgid "invalid Objective-C++ selector name" msgstr "" -#: cp/parser.cc:37377 cp/parser.cc:37395 +#: cp/parser.cc:37382 cp/parser.cc:37400 #, gcc-internal-format msgid "objective-c++ method declaration is expected" msgstr "" -#: cp/parser.cc:37389 cp/parser.cc:37455 +#: cp/parser.cc:37394 cp/parser.cc:37460 #, gcc-internal-format msgid "method attributes must be specified at the end" msgstr "" -#: cp/parser.cc:37498 +#: cp/parser.cc:37503 #, gcc-internal-format msgid "stray %qs between Objective-C++ methods" msgstr "" -#: cp/parser.cc:37695 cp/parser.cc:37702 cp/parser.cc:37709 +#: cp/parser.cc:37700 cp/parser.cc:37707 cp/parser.cc:37714 #, gcc-internal-format msgid "invalid type for instance variable" msgstr "" -#: cp/parser.cc:37826 +#: cp/parser.cc:37831 #, gcc-internal-format msgid "identifier expected after %<@protocol%>" msgstr "" -#: cp/parser.cc:37999 +#: cp/parser.cc:38004 #, gcc-internal-format msgid "" "attributes may not be specified before the %<@%D%> Objective-C++ keyword" msgstr "" -#: cp/parser.cc:38006 +#: cp/parser.cc:38011 #, gcc-internal-format msgid "prefix attributes are ignored before %<@%D%>" msgstr "" -#: cp/parser.cc:38286 cp/parser.cc:38293 cp/parser.cc:38300 +#: cp/parser.cc:38291 cp/parser.cc:38298 cp/parser.cc:38305 #, gcc-internal-format msgid "invalid type for property" msgstr "" -#: cp/parser.cc:38462 +#: cp/parser.cc:38467 #, gcc-internal-format msgid "unknown property attribute %qE" msgstr "" -#: cp/parser.cc:39760 +#: cp/parser.cc:39765 #, gcc-internal-format msgid "expected integer expression list" msgstr "" -#: cp/parser.cc:39777 +#: cp/parser.cc:39782 #, gcc-internal-format msgid "%<wait%> expression must be integral" msgstr "" -#: cp/parser.cc:40533 +#: cp/parser.cc:40538 #, gcc-internal-format msgid "expected %<scalar%>, %<aggregate%>, %<all%>" msgstr "" -#: cp/parser.cc:40924 +#: cp/parser.cc:40929 #, gcc-internal-format msgid "invalid reduction-identifier" msgstr "" -#: cp/parser.cc:41985 +#: cp/parser.cc:41990 #, gcc-internal-format msgid "types may not be defined in iterator type" msgstr "" @@ -68415,178 +68586,178 @@ msgstr "" #. check above and add one in semantics.cc (to properly handle templates). #. Base this on the allocator/align modifiers check for the 'allocate' clause #. in semantics.cc's finish_omp_clauses. -#: cp/parser.cc:44097 +#: cp/parser.cc:44102 #, gcc-internal-format msgid "%<#pragma omp allocate%> not yet supported" msgstr "" -#: cp/parser.cc:45548 +#: cp/parser.cc:45553 #, gcc-internal-format msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop" msgstr "" -#: cp/parser.cc:46479 +#: cp/parser.cc:46484 #, gcc-internal-format msgid "%<ordered%> clause with parameter on range-based %<for%> loop" msgstr "" -#: cp/parser.cc:46561 cp/pt.cc:18549 +#: cp/parser.cc:46566 cp/pt.cc:18593 #, gcc-internal-format msgid "iteration variable %qD should not be reduction" msgstr "" -#: cp/parser.cc:49602 +#: cp/parser.cc:49607 #, gcc-internal-format msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>" msgstr "" -#: cp/parser.cc:50289 +#: cp/parser.cc:50294 #, gcc-internal-format msgid "" "%<#pragma omp dispatch%> must be followed by a direct function call with " "optional assignment" msgstr "" -#: cp/parser.cc:50516 +#: cp/parser.cc:50521 #, gcc-internal-format msgid "%qD is not a C pointer" msgstr "" -#: cp/parser.cc:50642 +#: cp/parser.cc:50647 #, gcc-internal-format msgid "" "an %qs clause can only be specified if the %<dispatch%> selector of the " "construct selector set appears in the %<match%> clause" msgstr "" -#: cp/parser.cc:50763 +#: cp/parser.cc:50768 #, gcc-internal-format msgid "" "OpenMP directive other than %<declare simd%> or %<declare variant%> " "appertains to a declaration" msgstr "" -#: cp/parser.cc:51817 +#: cp/parser.cc:51822 #, gcc-internal-format msgid "invalid initializer clause" msgstr "" -#: cp/parser.cc:51848 +#: cp/parser.cc:51853 #, gcc-internal-format msgid "expected id-expression (arguments)" msgstr "" -#: cp/parser.cc:51860 +#: cp/parser.cc:51865 #, gcc-internal-format msgid "" "one of the initializer call arguments should be %<omp_priv%> or %<&omp_priv%>" msgstr "" -#: cp/parser.cc:51963 +#: cp/parser.cc:51968 #, gcc-internal-format msgid "types may not be defined in declare reduction type list" msgstr "" -#: cp/parser.cc:51983 cp/semantics.cc:6841 +#: cp/parser.cc:51988 cp/semantics.cc:6855 #, gcc-internal-format msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.cc:51987 cp/semantics.cc:6849 +#: cp/parser.cc:51992 cp/semantics.cc:6863 #, gcc-internal-format msgid "function or array type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.cc:51990 cp/pt.cc:14861 cp/semantics.cc:6855 +#: cp/parser.cc:51995 cp/pt.cc:14880 cp/semantics.cc:6869 #, gcc-internal-format msgid "reference type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.cc:51993 cp/semantics.cc:6861 +#: cp/parser.cc:51998 cp/semantics.cc:6875 #, gcc-internal-format msgid "" "%<const%>, %<volatile%> or %<__restrict%>-qualified type %qT in %<#pragma " "omp declare reduction%>" msgstr "" -#: cp/parser.cc:52744 +#: cp/parser.cc:52749 #, gcc-internal-format msgid "%<#pragma acc routine%> names a set of overloads" msgstr "" -#: cp/parser.cc:52754 +#: cp/parser.cc:52759 #, gcc-internal-format msgid "%qD does not refer to a namespace scope function" msgstr "" -#: cp/parser.cc:52924 cp/parser.cc:53459 +#: cp/parser.cc:52929 cp/parser.cc:53464 #, gcc-internal-format msgid "OpenMP directives may not appear in %<constexpr%> functions" msgstr "" #. cancel-and-throw is unimplemented. -#: cp/parser.cc:53135 +#: cp/parser.cc:53140 #, gcc-internal-format msgid "%<atomic_cancel%>" msgstr "" -#: cp/parser.cc:53182 cp/semantics.cc:12154 +#: cp/parser.cc:53187 cp/semantics.cc:12168 #, gcc-internal-format msgid "%<__transaction_relaxed%> without transactional memory support enabled" msgstr "" -#: cp/parser.cc:53184 cp/semantics.cc:12156 +#: cp/parser.cc:53189 cp/semantics.cc:12170 #, gcc-internal-format msgid "%<__transaction_atomic%> without transactional memory support enabled" msgstr "" -#: cp/parser.cc:53330 +#: cp/parser.cc:53335 #, gcc-internal-format msgid "" "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>" msgstr "" -#: cp/parser.cc:53333 +#: cp/parser.cc:53338 #, gcc-internal-format msgid " or a %<transaction_may_cancel_outer%> function" msgstr "" -#: cp/parser.cc:53380 +#: cp/parser.cc:53385 #, gcc-internal-format msgid "malformed %<#pragma GCC pch_preprocess%>" msgstr "" -#: cp/parser.cc:53709 +#: cp/parser.cc:53714 #, gcc-internal-format msgid "%<#pragma omp requires%> may only be used at file or namespace scope" msgstr "" -#: cp/parser.cc:53720 +#: cp/parser.cc:53725 #, gcc-internal-format msgid "%<#pragma omp assumes%> may only be used at file or namespace scope" msgstr "" -#: cp/parser.cc:53807 +#: cp/parser.cc:53812 #, gcc-internal-format msgid "%<#pragma GCC %s%> must be inside a function" msgstr "" -#: cp/parser.cc:53949 +#: cp/parser.cc:53954 #, gcc-internal-format msgid "multi-source compilation not implemented for C++" msgstr "" -#: cp/parser.cc:53986 +#: cp/parser.cc:53991 #, gcc-internal-format msgid "placeholder type not allowed in this context" msgstr "" -#: cp/parser.cc:54195 +#: cp/parser.cc:54200 #, gcc-internal-format msgid "implicit templates may not be %<virtual%>" msgstr "" -#: cp/parser.cc:54251 +#: cp/parser.cc:54256 #, gcc-internal-format msgid "%<extern \"C\"%> linkage started here" msgstr "" @@ -68675,7 +68846,7 @@ msgstr "" msgid "specialization of %qD after instantiation" msgstr "" -#: cp/pt.cc:2067 cp/semantics.cc:6711 +#: cp/pt.cc:2067 cp/semantics.cc:6725 #, gcc-internal-format msgid "%s %#qD" msgstr "" @@ -69508,7 +69679,7 @@ msgstr "" msgid "for template declaration %q+D" msgstr "" -#: cp/pt.cc:10311 cp/pt.cc:22795 +#: cp/pt.cc:10311 cp/pt.cc:22841 #, gcc-internal-format msgid "template constraint failure for %qD" msgstr "" @@ -69518,84 +69689,84 @@ msgstr "" msgid "use of invalid variable template %qE" msgstr "" -#: cp/pt.cc:11380 +#: cp/pt.cc:11392 #, gcc-internal-format msgid "" "template instantiation depth exceeds maximum of %d (use %<-ftemplate-" "depth=%> to increase the maximum)" msgstr "" -#: cp/pt.cc:12200 +#: cp/pt.cc:12216 #, gcc-internal-format msgid "score argument must be constant integer expression" msgstr "" -#: cp/pt.cc:12209 +#: cp/pt.cc:12225 #, gcc-internal-format msgid "score argument must be non-negative" msgstr "" -#: cp/pt.cc:12236 +#: cp/pt.cc:12252 #, gcc-internal-format msgid "property must be constant integer expression or string literal" msgstr "" -#: cp/pt.cc:12240 +#: cp/pt.cc:12256 #, gcc-internal-format msgid "property must be constant integer expression" msgstr "" -#: cp/pt.cc:12466 +#: cp/pt.cc:12484 #, gcc-internal-format msgid "instantiating erroneous template" msgstr "" -#: cp/pt.cc:12467 +#: cp/pt.cc:12485 #, gcc-internal-format msgid "first error appeared here" msgstr "" -#: cp/pt.cc:12818 +#: cp/pt.cc:12836 #, gcc-internal-format msgid "flexible array member %qD in union" msgstr "" -#: cp/pt.cc:13337 +#: cp/pt.cc:13355 #, gcc-internal-format msgid "fold of empty expansion over %O" msgstr "" -#: cp/pt.cc:13807 +#: cp/pt.cc:13826 #, gcc-internal-format msgid "%qE is not the entire pattern of the pack expansion" msgstr "" -#: cp/pt.cc:13895 +#: cp/pt.cc:13914 #, gcc-internal-format msgid "mismatched argument pack lengths while expanding %qT" msgstr "" -#: cp/pt.cc:13898 +#: cp/pt.cc:13917 #, gcc-internal-format msgid "mismatched argument pack lengths while expanding %qE" msgstr "" -#: cp/pt.cc:14083 +#: cp/pt.cc:14102 #, gcc-internal-format msgid "cannot index an empty pack" msgstr "" -#: cp/pt.cc:14534 +#: cp/pt.cc:14553 #, gcc-internal-format msgid " when instantiating default argument for call to %qD" msgstr "" -#: cp/pt.cc:14631 +#: cp/pt.cc:14650 #, gcc-internal-format msgid "creating pointer to member function of non-class type %qT" msgstr "" -#: cp/pt.cc:15621 +#: cp/pt.cc:15640 #, gcc-internal-format, gfc-internal-format msgid "mismatched argument pack lengths (%d vs %d)" msgstr "" @@ -69613,305 +69784,305 @@ msgstr "" #. #. is an attempt to declare a variable with function #. type. -#: cp/pt.cc:15809 +#: cp/pt.cc:15828 #, gcc-internal-format msgid "variable %qD has function type" msgstr "" -#: cp/pt.cc:16015 +#: cp/pt.cc:16034 #, gcc-internal-format msgid "invalid parameter type %qT" msgstr "" -#: cp/pt.cc:16017 +#: cp/pt.cc:16036 #, gcc-internal-format msgid "in declaration %q+D" msgstr "" -#: cp/pt.cc:16144 +#: cp/pt.cc:16163 #, gcc-internal-format msgid "function returning an array" msgstr "" -#: cp/pt.cc:16146 +#: cp/pt.cc:16165 #, gcc-internal-format msgid "function returning a function" msgstr "" -#: cp/pt.cc:16877 +#: cp/pt.cc:16896 #, gcc-internal-format msgid "forming reference to void" msgstr "" -#: cp/pt.cc:16879 +#: cp/pt.cc:16898 #, gcc-internal-format msgid "forming pointer to reference type %qT" msgstr "" -#: cp/pt.cc:16881 +#: cp/pt.cc:16900 #, gcc-internal-format msgid "forming reference to reference type %qT" msgstr "" -#: cp/pt.cc:16894 +#: cp/pt.cc:16913 #, gcc-internal-format msgid "forming pointer to qualified function type %qT" msgstr "" -#: cp/pt.cc:16897 +#: cp/pt.cc:16916 #, gcc-internal-format msgid "forming reference to qualified function type %qT" msgstr "" -#: cp/pt.cc:16950 +#: cp/pt.cc:16969 #, gcc-internal-format msgid "creating pointer to member of non-class type %qT" msgstr "" -#: cp/pt.cc:16956 +#: cp/pt.cc:16975 #, gcc-internal-format msgid "creating pointer to member reference type %qT" msgstr "" -#: cp/pt.cc:16962 +#: cp/pt.cc:16981 #, gcc-internal-format msgid "creating pointer to member of type void" msgstr "" -#: cp/pt.cc:17031 +#: cp/pt.cc:17050 #, gcc-internal-format msgid "creating array of %qT" msgstr "" -#: cp/pt.cc:17072 +#: cp/pt.cc:17091 #, gcc-internal-format msgid "%qD expanded to more than one element" msgstr "" -#: cp/pt.cc:17079 +#: cp/pt.cc:17098 #, gcc-internal-format msgid "%qD is instantiated for an empty pack" msgstr "" -#: cp/pt.cc:17100 +#: cp/pt.cc:17119 #, gcc-internal-format msgid "%qT is not a class, struct, or union type" msgstr "" -#: cp/pt.cc:17140 +#: cp/pt.cc:17159 #, gcc-internal-format msgid "%qT resolves to %qT, which is not an enumeration type" msgstr "" -#: cp/pt.cc:17148 +#: cp/pt.cc:17167 #, gcc-internal-format msgid "%qT resolves to %qT, which is not a class type" msgstr "" -#: cp/pt.cc:17271 +#: cp/pt.cc:17290 #, gcc-internal-format msgid "use of %qs in template" msgstr "" -#: cp/pt.cc:17590 +#: cp/pt.cc:17609 #, gcc-internal-format msgid "qualifying type %qT does not match destructor name ~%qT" msgstr "" -#: cp/pt.cc:17606 +#: cp/pt.cc:17625 #, gcc-internal-format msgid "" "dependent-name %qE is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.cc:17608 +#: cp/pt.cc:17627 #, gcc-internal-format msgid "say %<typename %E%> if a type is meant" msgstr "" -#: cp/pt.cc:17692 +#: cp/pt.cc:17711 #, gcc-internal-format msgid "initializer for %q#D expands to an empty list of expressions" msgstr "" -#: cp/pt.cc:19936 cp/pt.cc:22157 +#: cp/pt.cc:19980 cp/pt.cc:22201 #, gcc-internal-format msgid "invalid use of pack expansion expression" msgstr "" -#: cp/pt.cc:19940 cp/pt.cc:22161 +#: cp/pt.cc:19984 cp/pt.cc:22205 #, gcc-internal-format msgid "use %<...%> to expand argument pack" msgstr "" -#: cp/pt.cc:20087 +#: cp/pt.cc:20131 #, gcc-internal-format msgid "empty initializer in lambda init-capture" msgstr "" -#: cp/pt.cc:21393 +#: cp/pt.cc:21437 #, gcc-internal-format msgid "" "%qD was not declared in this scope, and no declarations were found by " "argument-dependent lookup at the point of instantiation" msgstr "" -#: cp/pt.cc:21428 +#: cp/pt.cc:21472 #, gcc-internal-format msgid "declarations in dependent base %qT are not found by unqualified lookup" msgstr "" -#: cp/pt.cc:21433 +#: cp/pt.cc:21477 #, gcc-internal-format msgid "use %<this->%D%> instead" msgstr "" -#: cp/pt.cc:21436 +#: cp/pt.cc:21480 #, gcc-internal-format msgid "use %<%T::%D%> instead" msgstr "" -#: cp/pt.cc:21441 +#: cp/pt.cc:21485 #, gcc-internal-format msgid "%qD declared here, later in the translation unit" msgstr "" -#: cp/pt.cc:21492 +#: cp/pt.cc:21536 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_convertvector%>" msgstr "" -#: cp/pt.cc:21519 +#: cp/pt.cc:21563 #, gcc-internal-format msgid "wrong number of arguments to %<assume%> attribute" msgstr "" -#: cp/pt.cc:21758 +#: cp/pt.cc:21802 #, gcc-internal-format msgid "%qT is not a class or namespace" msgstr "" -#: cp/pt.cc:21761 +#: cp/pt.cc:21805 #, gcc-internal-format msgid "%qD is not a class or namespace" msgstr "" -#: cp/pt.cc:22077 +#: cp/pt.cc:22121 #, gcc-internal-format msgid "using invalid field %qD" msgstr "" -#: cp/pt.cc:22427 +#: cp/pt.cc:22471 #, gcc-internal-format msgid "%qT is/uses unnamed type" msgstr "" -#: cp/pt.cc:22429 +#: cp/pt.cc:22473 #, gcc-internal-format msgid "template argument for %qD uses local type %qT" msgstr "" -#: cp/pt.cc:22439 +#: cp/pt.cc:22483 #, gcc-internal-format msgid "%qT is a variably modified type" msgstr "" -#: cp/pt.cc:22454 +#: cp/pt.cc:22498 #, gcc-internal-format msgid "integral expression %qE is not constant" msgstr "" -#: cp/pt.cc:22472 +#: cp/pt.cc:22516 #, gcc-internal-format msgid " trying to instantiate %qD" msgstr "" -#: cp/pt.cc:26907 +#: cp/pt.cc:26953 #, gcc-internal-format msgid "ambiguous template instantiation for %q#T" msgstr "" -#: cp/pt.cc:26909 +#: cp/pt.cc:26955 #, gcc-internal-format msgid "ambiguous template instantiation for %q#D" msgstr "" -#: cp/pt.cc:26915 +#: cp/pt.cc:26961 msgid "%s %#qS" msgstr "" -#: cp/pt.cc:26942 cp/pt.cc:27029 +#: cp/pt.cc:26988 cp/pt.cc:27075 #, gcc-internal-format msgid "explicit instantiation of non-template %q#D" msgstr "" -#: cp/pt.cc:26961 +#: cp/pt.cc:27007 #, gcc-internal-format msgid "%qD is not a static data member of a class template" msgstr "" -#: cp/pt.cc:26967 cp/pt.cc:27024 +#: cp/pt.cc:27013 cp/pt.cc:27070 #, gcc-internal-format msgid "no matching template for %qD found" msgstr "" -#: cp/pt.cc:26972 +#: cp/pt.cc:27018 #, gcc-internal-format msgid "" "type %qT for explicit instantiation %qD does not match declared type %qT" msgstr "" -#: cp/pt.cc:26980 +#: cp/pt.cc:27026 #, gcc-internal-format msgid "explicit instantiation of %q#D" msgstr "" -#: cp/pt.cc:27016 +#: cp/pt.cc:27062 #, gcc-internal-format msgid "duplicate explicit instantiation of %q#D" msgstr "" -#: cp/pt.cc:27039 cp/pt.cc:27106 +#: cp/pt.cc:27085 cp/pt.cc:27152 #, gcc-internal-format msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations" msgstr "" -#: cp/pt.cc:27044 cp/pt.cc:27121 +#: cp/pt.cc:27090 cp/pt.cc:27167 #, gcc-internal-format msgid "storage class %qD applied to template instantiation" msgstr "" -#: cp/pt.cc:27078 +#: cp/pt.cc:27124 #, gcc-internal-format msgid "explicit instantiation of non-class template %qD" msgstr "" -#: cp/pt.cc:27081 +#: cp/pt.cc:27127 #, gcc-internal-format msgid "explicit instantiation of non-template type %qT" msgstr "" -#: cp/pt.cc:27090 +#: cp/pt.cc:27136 #, gcc-internal-format msgid "explicit instantiation of %q#T before definition of template" msgstr "" -#: cp/pt.cc:27111 +#: cp/pt.cc:27157 #, gcc-internal-format msgid "ISO C++ forbids the use of %qE on explicit instantiations" msgstr "" -#: cp/pt.cc:27151 +#: cp/pt.cc:27197 #, gcc-internal-format msgid "duplicate explicit instantiation of %q#T" msgstr "" -#: cp/pt.cc:27481 +#: cp/pt.cc:27527 #, gcc-internal-format msgid "exception specification of %qD depends on itself" msgstr "" -#: cp/pt.cc:27487 +#: cp/pt.cc:27533 #, gcc-internal-format msgid "" "exception specification of %qD is not available until end of class definition" @@ -69924,12 +70095,12 @@ msgstr "" #. member function or static data member of a class template #. shall be present in every translation unit in which it is #. explicitly instantiated. -#: cp/pt.cc:27958 +#: cp/pt.cc:28009 #, gcc-internal-format msgid "explicit instantiation of %qD but no definition available" msgstr "" -#: cp/pt.cc:28004 +#: cp/pt.cc:28055 #, gcc-internal-format msgid "" "template instantiation depth exceeds maximum of %d instantiating %q+D, " @@ -69937,164 +70108,164 @@ msgid "" "increase the maximum)" msgstr "" -#: cp/pt.cc:28379 +#: cp/pt.cc:28430 #, gcc-internal-format msgid "" "non-type template parameters of deduced class type only available with %<-" "std=c++20%> or %<-std=gnu++20%>" msgstr "" -#: cp/pt.cc:28409 +#: cp/pt.cc:28460 #, gcc-internal-format msgid "" "%qT is not a valid type for a template non-type parameter because it is not " "structural" msgstr "" -#: cp/pt.cc:28418 +#: cp/pt.cc:28469 #, gcc-internal-format msgid "" "non-type template parameters of class type only available with %<-std=c+" "+20%> or %<-std=gnu++20%>" msgstr "" -#: cp/pt.cc:28426 +#: cp/pt.cc:28477 #, gcc-internal-format msgid "invalid template non-type parameter" msgstr "" -#: cp/pt.cc:28428 +#: cp/pt.cc:28479 #, gcc-internal-format msgid "%q#T is not a valid type for a template non-type parameter" msgstr "" -#: cp/pt.cc:29891 +#: cp/pt.cc:29942 #, gcc-internal-format msgid "keyword %<template%> not allowed in declarator-id" msgstr "" -#: cp/pt.cc:30076 +#: cp/pt.cc:30127 #, gcc-internal-format msgid "a concept cannot be constrained" msgstr "" -#: cp/pt.cc:30085 +#: cp/pt.cc:30136 #, gcc-internal-format msgid "concept %qE not in namespace scope" msgstr "" -#: cp/pt.cc:30091 +#: cp/pt.cc:30142 #, gcc-internal-format msgid "concept %qE has multiple template parameter lists" msgstr "" -#: cp/pt.cc:30135 +#: cp/pt.cc:30186 #, gcc-internal-format msgid "" "deducing from brace-enclosed initializer list requires %<#include " "<initializer_list>%>" msgstr "" -#: cp/pt.cc:31407 +#: cp/pt.cc:31457 #, gcc-internal-format msgid "non-deducible template %qT used without template arguments" msgstr "" -#: cp/pt.cc:31420 +#: cp/pt.cc:31470 #, gcc-internal-format msgid "" "alias template deduction only available with %<-std=c++20%> or %<-std=gnu+" "+20%>" msgstr "" -#: cp/pt.cc:31426 +#: cp/pt.cc:31476 #, gcc-internal-format msgid "use %qD directly instead" msgstr "" -#: cp/pt.cc:31554 +#: cp/pt.cc:31604 #, gcc-internal-format msgid "" "cannot deduce template arguments for copy-initialization of %qT, as it has " "no non-explicit deduction guides or user-declared constructors" msgstr "" -#: cp/pt.cc:31561 +#: cp/pt.cc:31611 #, gcc-internal-format msgid "" "cannot deduce template arguments of %qT, as it has no viable deduction guides" msgstr "" -#: cp/pt.cc:31574 +#: cp/pt.cc:31624 #, gcc-internal-format msgid "class template argument deduction failed:" msgstr "" -#: cp/pt.cc:31577 +#: cp/pt.cc:31627 #, gcc-internal-format msgid "explicit deduction guides not considered for copy-initialization" msgstr "" -#: cp/pt.cc:31592 +#: cp/pt.cc:31642 #, gcc-internal-format msgid "" "class template argument deduction for %qT failed: explicit deduction guide " "selected in copy-list-initialization" msgstr "" -#: cp/pt.cc:31596 +#: cp/pt.cc:31646 #, gcc-internal-format msgid "explicit deduction guide declared here" msgstr "" -#: cp/pt.cc:31611 +#: cp/pt.cc:31661 #, gcc-internal-format msgid "%qT may not intend to support class template argument deduction" msgstr "" -#: cp/pt.cc:31613 +#: cp/pt.cc:31663 #, gcc-internal-format msgid "add a deduction guide to suppress this warning" msgstr "" -#: cp/pt.cc:31736 +#: cp/pt.cc:31786 #, gcc-internal-format msgid "direct-list-initialization of %<auto%> requires exactly one element" msgstr "" -#: cp/pt.cc:31739 +#: cp/pt.cc:31789 #, gcc-internal-format msgid "" "for deduction to %<std::initializer_list%>, use copy-list-initialization (i." "e. add %<=%> before the %<{%>)" msgstr "" -#: cp/pt.cc:31799 +#: cp/pt.cc:31849 #, gcc-internal-format msgid "unable to deduce lambda return type from %qE" msgstr "" -#: cp/pt.cc:31802 +#: cp/pt.cc:31852 #, gcc-internal-format msgid "unable to deduce %qT from %qE" msgstr "" -#: cp/pt.cc:31877 +#: cp/pt.cc:31927 #, gcc-internal-format msgid "placeholder constraints not satisfied" msgstr "" -#: cp/pt.cc:31881 +#: cp/pt.cc:31931 #, gcc-internal-format msgid "deduced initializer does not satisfy placeholder constraints" msgstr "" -#: cp/pt.cc:31885 +#: cp/pt.cc:31935 #, gcc-internal-format msgid "deduced return type does not satisfy placeholder constraints" msgstr "" -#: cp/pt.cc:31889 +#: cp/pt.cc:31939 #, gcc-internal-format msgid "deduced expression type does not satisfy placeholder constraints" msgstr "" @@ -70247,724 +70418,729 @@ msgstr "" msgid "virtual function declared here" msgstr "" -#: cp/semantics.cc:1291 +#: cp/semantics.cc:1294 #, gcc-internal-format msgid "" "%<std::is_constant_evaluated%> always evaluates to true in %<if constexpr%>" msgstr "" -#: cp/semantics.cc:1297 +#: cp/semantics.cc:1300 #, gcc-internal-format msgid "" "%<std::is_constant_evaluated%> evaluates to true when checking if trivially " "empty iteration statement is trivial infinite loop" msgstr "" -#: cp/semantics.cc:1302 +#: cp/semantics.cc:1305 #, gcc-internal-format msgid "" "and evaluates to false when actually evaluating the condition in non-" "%<constexpr%> function" msgstr "" -#: cp/semantics.cc:1307 +#: cp/semantics.cc:1310 #, gcc-internal-format msgid "" "%<std::is_constant_evaluated%> always evaluates to false in a non-" "%<constexpr%> function" msgstr "" -#: cp/semantics.cc:1311 +#: cp/semantics.cc:1314 #, gcc-internal-format msgid "" "%<std::is_constant_evaluated%> always evaluates to true in a %<consteval%> " "function" msgstr "" -#: cp/semantics.cc:1537 +#: cp/semantics.cc:1540 #, gcc-internal-format msgid "suggest explicit braces around empty body in %<do%> statement" msgstr "" -#: cp/semantics.cc:2105 +#: cp/semantics.cc:2108 #, gcc-internal-format msgid "catching polymorphic type %q#T by value" msgstr "" -#: cp/semantics.cc:2110 +#: cp/semantics.cc:2113 #, gcc-internal-format msgid "catching type %q#T by value" msgstr "" -#: cp/semantics.cc:2115 +#: cp/semantics.cc:2118 #, gcc-internal-format msgid "catching non-reference type %q#T" msgstr "" -#: cp/semantics.cc:2412 +#: cp/semantics.cc:2415 #, gcc-internal-format msgid "type of %<asm%> operand %qE could not be determined" msgstr "" -#: cp/semantics.cc:2564 +#: cp/semantics.cc:2567 #, gcc-internal-format msgid "%<__label__%> declarations are only allowed in function scopes" msgstr "" -#: cp/semantics.cc:2742 +#: cp/semantics.cc:2745 #, gcc-internal-format msgid "invalid use of member %qD in static member function" msgstr "" -#: cp/semantics.cc:2746 +#: cp/semantics.cc:2749 #, gcc-internal-format msgid "invalid use of member %qD in constructor %<pre%> contract" msgstr "" -#: cp/semantics.cc:2750 +#: cp/semantics.cc:2753 #, gcc-internal-format msgid "invalid use of member %qD in destructor %<post%> contract" msgstr "" -#: cp/semantics.cc:3018 +#: cp/semantics.cc:3021 #, gcc-internal-format msgid "%qE missing template arguments" msgstr "" -#: cp/semantics.cc:3078 +#: cp/semantics.cc:3081 #, gcc-internal-format msgid "" "a statement expression is an insufficient context for overload resolution" msgstr "" -#: cp/semantics.cc:3430 +#: cp/semantics.cc:3434 #, gcc-internal-format msgid "cannot call a concept as a function" msgstr "" -#: cp/semantics.cc:3510 +#: cp/semantics.cc:3514 #, gcc-internal-format msgid "arguments to destructor are not allowed" msgstr "" -#: cp/semantics.cc:3615 +#: cp/semantics.cc:3619 #, gcc-internal-format msgid "%<this%> is unavailable for explicit object member functions" msgstr "" -#: cp/semantics.cc:3627 +#: cp/semantics.cc:3631 #, gcc-internal-format msgid "use explicit object parameter %qs instead" msgstr "" -#: cp/semantics.cc:3631 +#: cp/semantics.cc:3635 #, gcc-internal-format msgid "name the explicit object parameter" msgstr "" -#: cp/semantics.cc:3636 +#: cp/semantics.cc:3640 #, gcc-internal-format msgid "%<this%> is unavailable for static member functions" msgstr "" -#: cp/semantics.cc:3638 +#: cp/semantics.cc:3642 #, gcc-internal-format msgid "invalid use of %<this%> before it is valid" msgstr "" -#: cp/semantics.cc:3640 +#: cp/semantics.cc:3644 #, gcc-internal-format msgid "invalid use of %<this%> after it is valid" msgstr "" -#: cp/semantics.cc:3642 +#: cp/semantics.cc:3646 #, gcc-internal-format msgid "invalid use of %<this%> in non-member function" msgstr "" -#: cp/semantics.cc:3644 +#: cp/semantics.cc:3648 #, gcc-internal-format msgid "invalid use of %<this%> at top level" msgstr "" -#: cp/semantics.cc:3667 +#: cp/semantics.cc:3671 #, gcc-internal-format msgid "invalid qualifying scope in pseudo-destructor name" msgstr "" -#: cp/semantics.cc:3676 cp/typeck.cc:3109 +#: cp/semantics.cc:3680 cp/typeck.cc:3109 #, gcc-internal-format msgid "qualified type %qT does not match destructor name ~%qT" msgstr "" -#: cp/semantics.cc:3699 +#: cp/semantics.cc:3703 #, gcc-internal-format msgid "%qE is not of type %qT" msgstr "" -#: cp/semantics.cc:3813 +#: cp/semantics.cc:3817 #, gcc-internal-format msgid "compound literal of non-object type %qT" msgstr "" -#: cp/semantics.cc:3833 +#: cp/semantics.cc:3837 #, gcc-internal-format msgid "%<auto{x}%> cannot be constrained" msgstr "" -#: cp/semantics.cc:3838 +#: cp/semantics.cc:3842 #, gcc-internal-format msgid "%<auto{x}%> only available with %<-std=c++23%> or %<-std=gnu++23%>" msgstr "" -#: cp/semantics.cc:4030 +#: cp/semantics.cc:4034 #, gcc-internal-format msgid "template type parameters must use the keyword %<class%> or %<typename%>" msgstr "" -#: cp/semantics.cc:4083 +#: cp/semantics.cc:4087 #, gcc-internal-format msgid "" "invalid use of type %qT as a default value for a template template-parameter" msgstr "" -#: cp/semantics.cc:4087 +#: cp/semantics.cc:4091 #, gcc-internal-format msgid "invalid default argument for a template template parameter" msgstr "" -#: cp/semantics.cc:4104 +#: cp/semantics.cc:4108 #, gcc-internal-format msgid "definition of %q#T inside template parameter list" msgstr "" -#: cp/semantics.cc:4135 +#: cp/semantics.cc:4139 #, gcc-internal-format msgid "invalid definition of qualified type %qT" msgstr "" -#: cp/semantics.cc:4425 +#: cp/semantics.cc:4429 #, gcc-internal-format msgid "invalid base-class specification" msgstr "" -#: cp/semantics.cc:4591 +#: cp/semantics.cc:4595 #, gcc-internal-format msgid "cannot capture member %qD of anonymous union" msgstr "" -#: cp/semantics.cc:4609 +#: cp/semantics.cc:4613 #, gcc-internal-format msgid "%qD is not captured" msgstr "" -#: cp/semantics.cc:4613 +#: cp/semantics.cc:4617 #, gcc-internal-format msgid "the lambda has no capture-default" msgstr "" -#: cp/semantics.cc:4615 +#: cp/semantics.cc:4619 #, gcc-internal-format msgid "" "lambda in local class %q+T cannot capture variables from the enclosing " "context" msgstr "" -#: cp/semantics.cc:4631 +#: cp/semantics.cc:4635 #, gcc-internal-format msgid "use of local variable with automatic storage from containing function" msgstr "" -#: cp/semantics.cc:4633 +#: cp/semantics.cc:4637 #, gcc-internal-format msgid "use of parameter from containing function" msgstr "" -#: cp/semantics.cc:4763 +#: cp/semantics.cc:4767 #, gcc-internal-format msgid "use of parameter outside function body" msgstr "" -#: cp/semantics.cc:4773 +#: cp/semantics.cc:4777 #, gcc-internal-format msgid "missing template arguments" msgstr "" -#: cp/semantics.cc:4809 +#: cp/semantics.cc:4813 #, gcc-internal-format msgid "" "template parameter %qD of type %qT is not allowed in an integral constant " "expression because it is not of integral or enumeration type" msgstr "" -#: cp/semantics.cc:4860 +#: cp/semantics.cc:4864 #, gcc-internal-format msgid "use of class template %qT as expression" msgstr "" -#: cp/semantics.cc:4868 +#: cp/semantics.cc:4872 #, gcc-internal-format msgid "request for member %qD is ambiguous in multiple inheritance lattice" msgstr "" -#: cp/semantics.cc:4896 +#: cp/semantics.cc:4900 #, gcc-internal-format msgid "%qD cannot appear in a constant-expression" msgstr "" -#: cp/semantics.cc:5049 +#: cp/semantics.cc:5053 #, gcc-internal-format msgid "type of %qE is unknown" msgstr "" -#: cp/semantics.cc:5067 rust/backend/rust-tree.cc:5498 +#: cp/semantics.cc:5071 rust/backend/rust-tree.cc:5498 #, gcc-internal-format msgid "%qT is not an enumeration type" msgstr "" -#: cp/semantics.cc:5094 +#: cp/semantics.cc:5098 +#, gcc-internal-format +msgid "pack index has non-integral type %qT" +msgstr "" + +#: cp/semantics.cc:5105 #, gcc-internal-format msgid "pack index is not an integral constant" msgstr "" -#: cp/semantics.cc:5100 +#: cp/semantics.cc:5113 #, gcc-internal-format -msgid "pack index is negative" +msgid "pack index %qE is negative" msgstr "" -#: cp/semantics.cc:5106 +#: cp/semantics.cc:5119 #, gcc-internal-format -msgid "pack index is out of range" +msgid "pack index %qE is out of range for pack of length %qd" msgstr "" #. Parameter packs can only be used in templates -#: cp/semantics.cc:5243 +#: cp/semantics.cc:5257 #, gcc-internal-format msgid "parameter pack %<__bases%> only valid in template declaration" msgstr "" -#: cp/semantics.cc:5275 +#: cp/semantics.cc:5289 #, gcc-internal-format msgid "cannot apply %<offsetof%> to destructor %<~%T%>" msgstr "" -#: cp/semantics.cc:5289 +#: cp/semantics.cc:5303 #, gcc-internal-format msgid "cannot apply %<offsetof%> to member function %qD" msgstr "" -#: cp/semantics.cc:5293 +#: cp/semantics.cc:5307 #, gcc-internal-format msgid "cannot apply %<offsetof%> to member function" msgstr "" -#: cp/semantics.cc:5298 +#: cp/semantics.cc:5312 #, gcc-internal-format msgid "cannot apply %<offsetof%> to an enumerator %qD" msgstr "" -#: cp/semantics.cc:5309 +#: cp/semantics.cc:5323 #, gcc-internal-format msgid "" "%<offsetof%> within non-standard-layout type %qT is conditionally-supported" msgstr "" -#: cp/semantics.cc:6513 +#: cp/semantics.cc:6527 #, gcc-internal-format msgid "pointer-to-member mapping %qE not supported" msgstr "" -#: cp/semantics.cc:6708 +#: cp/semantics.cc:6722 #, gcc-internal-format msgid "user defined reduction lookup is ambiguous" msgstr "" -#: cp/semantics.cc:6981 +#: cp/semantics.cc:6995 #, gcc-internal-format msgid "%qE in %<reduction%> clause is a zero size array" msgstr "" -#: cp/semantics.cc:7027 +#: cp/semantics.cc:7041 #, gcc-internal-format msgid "%qE has const type for %<reduction%>" msgstr "" -#: cp/semantics.cc:7146 +#: cp/semantics.cc:7160 #, gcc-internal-format msgid "user defined reduction with constructor initializer for base class %qT" msgstr "" -#: cp/semantics.cc:7505 +#: cp/semantics.cc:7519 #, gcc-internal-format msgid "expected string literal or constant integer expression instead of %qE" msgstr "" -#: cp/semantics.cc:7695 +#: cp/semantics.cc:7709 #, gcc-internal-format msgid "" "modifier other than %<val%> specified in %<linear%> clause on %<simd%> or " "%<for%> constructs when using OpenMP 5.2 modifiers" msgstr "" -#: cp/semantics.cc:7710 +#: cp/semantics.cc:7724 #, gcc-internal-format msgid "" "linear clause with %qs modifier applied to non-reference variable with %qT " "type" msgstr "" -#: cp/semantics.cc:7725 +#: cp/semantics.cc:7739 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with %qT type" msgstr "" -#: cp/semantics.cc:7749 +#: cp/semantics.cc:7763 #, gcc-internal-format msgid "linear step expression must be integral" msgstr "" -#: cp/semantics.cc:7842 cp/semantics.cc:7974 cp/semantics.cc:8034 -#: cp/semantics.cc:8459 cp/semantics.cc:9627 +#: cp/semantics.cc:7856 cp/semantics.cc:7988 cp/semantics.cc:8048 +#: cp/semantics.cc:8473 cp/semantics.cc:9641 #, gcc-internal-format msgid "%<this%> allowed in OpenMP only in %<declare simd%> clauses" msgstr "" -#: cp/semantics.cc:7854 cp/semantics.cc:9640 +#: cp/semantics.cc:7868 cp/semantics.cc:9654 #, gcc-internal-format msgid "%qD is not a variable in clause %qs" msgstr "" -#: cp/semantics.cc:7987 +#: cp/semantics.cc:8001 #, gcc-internal-format msgid "%qD is not a variable in clause %<firstprivate%>" msgstr "" -#: cp/semantics.cc:8047 +#: cp/semantics.cc:8061 #, gcc-internal-format msgid "%qD is not a variable in clause %<lastprivate%>" msgstr "" -#: cp/semantics.cc:8118 +#: cp/semantics.cc:8132 #, gcc-internal-format msgid "%<gang%> static expression must be integral" msgstr "" -#: cp/semantics.cc:8132 +#: cp/semantics.cc:8146 #, gcc-internal-format msgid "%<gang%> static value must be positive" msgstr "" -#: cp/semantics.cc:8170 +#: cp/semantics.cc:8184 #, gcc-internal-format msgid "%<gang%> num expression must be integral" msgstr "" -#: cp/semantics.cc:8173 +#: cp/semantics.cc:8187 #, gcc-internal-format msgid "%<vector%> length expression must be integral" msgstr "" -#: cp/semantics.cc:8177 +#: cp/semantics.cc:8191 #, gcc-internal-format msgid "%<worker%> num expression must be integral" msgstr "" -#: cp/semantics.cc:8199 +#: cp/semantics.cc:8213 #, gcc-internal-format msgid "%<gang%> num value must be positive" msgstr "" -#: cp/semantics.cc:8203 +#: cp/semantics.cc:8217 #, gcc-internal-format msgid "%<vector%> length value must be positive" msgstr "" -#: cp/semantics.cc:8208 +#: cp/semantics.cc:8222 #, gcc-internal-format msgid "%<worker%> num value must be positive" msgstr "" -#: cp/semantics.cc:8284 +#: cp/semantics.cc:8298 #, gcc-internal-format msgid "schedule chunk size expression must be integral" msgstr "" -#: cp/semantics.cc:8317 +#: cp/semantics.cc:8331 #, gcc-internal-format msgid "%qs length expression must be integral" msgstr "" -#: cp/semantics.cc:8331 +#: cp/semantics.cc:8345 #, gcc-internal-format msgid "%qs length expression must be positive constant integer expression" msgstr "" -#: cp/semantics.cc:8351 +#: cp/semantics.cc:8365 #, gcc-internal-format msgid "%<async%> expression must be integral" msgstr "" -#: cp/semantics.cc:8380 +#: cp/semantics.cc:8394 #, gcc-internal-format msgid "%<thread_limit%> expression must be integral" msgstr "" -#: cp/semantics.cc:8410 +#: cp/semantics.cc:8424 #, gcc-internal-format msgid "%<device%> id must be integral" msgstr "" -#: cp/semantics.cc:8441 +#: cp/semantics.cc:8455 #, gcc-internal-format msgid "%<dist_schedule%> chunk size expression must be integral" msgstr "" -#: cp/semantics.cc:8470 +#: cp/semantics.cc:8484 #, gcc-internal-format msgid "%qD is not a variable in %<aligned%> clause" msgstr "" -#: cp/semantics.cc:8485 +#: cp/semantics.cc:8499 #, gcc-internal-format msgid "" "%qE in %<aligned%> clause is neither a pointer nor an array nor a reference " "to pointer or array" msgstr "" -#: cp/semantics.cc:8492 +#: cp/semantics.cc:8506 #, gcc-internal-format msgid "%qD appears more than once in %<aligned%> clauses" msgstr "" -#: cp/semantics.cc:8507 +#: cp/semantics.cc:8521 #, gcc-internal-format msgid "%<aligned%> clause alignment expression must be integral" msgstr "" -#: cp/semantics.cc:8538 +#: cp/semantics.cc:8552 #, gcc-internal-format msgid "%qD is not a variable in %<nontemporal%> clause" msgstr "" -#: cp/semantics.cc:8549 +#: cp/semantics.cc:8563 #, gcc-internal-format msgid "%qD appears more than once in %<nontemporal%> clauses" msgstr "" -#: cp/semantics.cc:8566 +#: cp/semantics.cc:8580 #, gcc-internal-format msgid "%<this%> not allowed in %<allocate%> clause" msgstr "" -#: cp/semantics.cc:8578 +#: cp/semantics.cc:8592 #, gcc-internal-format msgid "%qD is not a variable in %<allocate%> clause" msgstr "" -#: cp/semantics.cc:8587 +#: cp/semantics.cc:8601 #, gcc-internal-format msgid "%qD appears more than once in %<allocate%> clauses" msgstr "" -#: cp/semantics.cc:8737 +#: cp/semantics.cc:8751 #, gcc-internal-format msgid "%qD is not lvalue expression nor array section in %qs clause" msgstr "" -#: cp/semantics.cc:9241 +#: cp/semantics.cc:9255 #, gcc-internal-format msgid "template %qE in clause %qs" msgstr "" -#: cp/semantics.cc:9244 +#: cp/semantics.cc:9258 #, gcc-internal-format msgid "overloaded function name %qE in clause %qs" msgstr "" -#: cp/semantics.cc:9314 +#: cp/semantics.cc:9328 #, gcc-internal-format msgid "%<grainsize%> expression must be integral" msgstr "" -#: cp/semantics.cc:9344 +#: cp/semantics.cc:9358 #, gcc-internal-format msgid "%<priority%> expression must be integral" msgstr "" -#: cp/semantics.cc:9374 +#: cp/semantics.cc:9388 #, gcc-internal-format msgid "%<hint%> expression must be integral" msgstr "" -#: cp/semantics.cc:9386 +#: cp/semantics.cc:9400 #, gcc-internal-format msgid "%<hint%> expression must be constant integer expression" msgstr "" -#: cp/semantics.cc:9403 +#: cp/semantics.cc:9417 #, gcc-internal-format msgid "%<filter%> expression must be integral" msgstr "" -#: cp/semantics.cc:9434 +#: cp/semantics.cc:9448 #, gcc-internal-format msgid "%qs variable is neither a pointer nor reference to pointer" msgstr "" -#: cp/semantics.cc:9444 +#: cp/semantics.cc:9458 #, gcc-internal-format msgid "" "%qs variable is neither a pointer, nor an array nor reference to pointer or " "array" msgstr "" -#: cp/semantics.cc:9528 +#: cp/semantics.cc:9542 #, gcc-internal-format msgid "%<tile%> argument needs integral type" msgstr "" -#: cp/semantics.cc:10092 +#: cp/semantics.cc:10106 #, gcc-internal-format msgid "" "%<const%> qualified %qE without %<mutable%> member may appear only in " "%<shared%> or %<firstprivate%> clauses" msgstr "" -#: cp/semantics.cc:10333 +#: cp/semantics.cc:10347 #, gcc-internal-format msgid "%<threadprivate%> %qD is not file, namespace or block scope variable" msgstr "" -#: cp/semantics.cc:10347 +#: cp/semantics.cc:10361 #, gcc-internal-format msgid "%<threadprivate%> %qE directive not in %qT definition" msgstr "" -#: cp/semantics.cc:11084 +#: cp/semantics.cc:11098 #, gcc-internal-format msgid "difference between %qE and %qD does not have integer type" msgstr "" -#: cp/semantics.cc:11582 +#: cp/semantics.cc:11596 #, gcc-internal-format msgid "%<#pragma omp simd%> used with class iteration variable %qE" msgstr "" -#: cp/semantics.cc:11906 cp/semantics.cc:11916 +#: cp/semantics.cc:11920 cp/semantics.cc:11930 #, gcc-internal-format msgid "%<#pragma omp atomic update%> uses two different expressions for memory" msgstr "" -#: cp/semantics.cc:12248 +#: cp/semantics.cc:12262 #, gcc-internal-format msgid "" "constexpr string must be a string literal or object with %<size%> and " "%<data%> members" msgstr "" -#: cp/semantics.cc:12264 +#: cp/semantics.cc:12278 #, gcc-internal-format msgid "" "constexpr string %<size()%> must be implicitly convertible to %<std::size_t%>" msgstr "" -#: cp/semantics.cc:12273 +#: cp/semantics.cc:12287 #, gcc-internal-format msgid "" "constexpr string %<data()%> must be implicitly convertible to %<const char*%>" msgstr "" -#: cp/semantics.cc:12311 +#: cp/semantics.cc:12325 #, gcc-internal-format msgid "constexpr string %<size()%> must be a constant expression" msgstr "" -#: cp/semantics.cc:12319 +#: cp/semantics.cc:12333 #, gcc-internal-format msgid "constexpr string message %<size()%> %qE too large" msgstr "" -#: cp/semantics.cc:12346 +#: cp/semantics.cc:12360 #, gcc-internal-format msgid "constexpr string %<data()[%d]%> must be a constant expression" msgstr "" -#: cp/semantics.cc:12372 +#: cp/semantics.cc:12386 #, gcc-internal-format msgid "constexpr string %<data()%> must be a core constant expression" msgstr "" -#: cp/semantics.cc:12471 +#: cp/semantics.cc:12485 #, gcc-internal-format msgid "static assertion failed: %.*s" msgstr "" -#: cp/semantics.cc:12477 +#: cp/semantics.cc:12491 #, gcc-internal-format msgid "non-constant condition for static assertion" msgstr "" -#: cp/semantics.cc:12506 +#: cp/semantics.cc:12520 #, gcc-internal-format msgid "argument to %<decltype%> must be an expression" msgstr "" -#: cp/semantics.cc:12552 +#: cp/semantics.cc:12566 #, gcc-internal-format msgid "%<decltype%> cannot resolve address of overloaded function" msgstr "" -#: cp/semantics.cc:12856 rust/backend/rust-tree.cc:5212 +#: cp/semantics.cc:12870 rust/backend/rust-tree.cc:5212 #, gcc-internal-format msgid "" "%<__builtin_is_pointer_interconvertible_with_class%> needs a single argument" msgstr "" -#: cp/semantics.cc:12865 rust/backend/rust-tree.cc:5221 +#: cp/semantics.cc:12879 rust/backend/rust-tree.cc:5221 #, gcc-internal-format msgid "" "%<__builtin_is_pointer_interconvertible_with_class%> argument is not pointer " "to member" msgstr "" -#: cp/semantics.cc:13036 rust/backend/rust-tree.cc:5825 +#: cp/semantics.cc:13050 rust/backend/rust-tree.cc:5825 #, gcc-internal-format msgid "" "%<__builtin_is_corresponding_member%> not well defined for anonymous unions" msgstr "" -#: cp/semantics.cc:13060 rust/backend/rust-tree.cc:5869 +#: cp/semantics.cc:13074 rust/backend/rust-tree.cc:5869 #, gcc-internal-format msgid "%<__builtin_is_corresponding_member%> needs two arguments" msgstr "" -#: cp/semantics.cc:13071 rust/backend/rust-tree.cc:5879 +#: cp/semantics.cc:13085 rust/backend/rust-tree.cc:5879 #, gcc-internal-format msgid "%<__builtin_is_corresponding_member%> argument is not pointer to member" msgstr "" -#: cp/semantics.cc:13628 +#: cp/semantics.cc:13642 #, gcc-internal-format msgid "%qD is not a class or alias template" msgstr "" -#: cp/semantics.cc:13869 +#: cp/semantics.cc:13883 #, gcc-internal-format msgid "operand of fold expression has no unexpanded parameter packs" msgstr "" -#: cp/semantics.cc:13929 +#: cp/semantics.cc:13943 #, gcc-internal-format msgid "both arguments in binary fold have unexpanded parameter packs" msgstr "" -#: cp/semantics.cc:13931 +#: cp/semantics.cc:13945 #, gcc-internal-format msgid "no unexpanded parameter packs in binary fold" msgstr "" -#: cp/semantics.cc:13948 +#: cp/semantics.cc:13962 #, gcc-internal-format msgid "" "type %qT of argument to %<__builtin_launder%> is not a pointer to object type" @@ -70973,22 +71149,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.cc:13998 +#: cp/semantics.cc:14012 #, gcc-internal-format msgid "%<__builtin_bit_cast%> destination type %qT is an array type" msgstr "" -#: cp/semantics.cc:14004 +#: cp/semantics.cc:14018 #, gcc-internal-format msgid "%<__builtin_bit_cast%> destination type %qT is not trivially copyable" msgstr "" -#: cp/semantics.cc:14031 +#: cp/semantics.cc:14045 #, gcc-internal-format msgid "%<__builtin_bit_cast%> source type %qT is not trivially copyable" msgstr "" -#: cp/semantics.cc:14039 +#: cp/semantics.cc:14053 #, gcc-internal-format msgid "" "%<__builtin_bit_cast%> source size %qE not equal to destination type size %qE" @@ -72639,53 +72815,53 @@ msgstr "" msgid "cannot determine the length of a %qs" msgstr "" -#: d/d-codegen.cc:1282 +#: d/d-codegen.cc:1285 #, gcc-internal-format msgid "overlapping initializer for field %qT.%qD" msgstr "" -#: d/d-codegen.cc:1477 +#: d/d-codegen.cc:1491 #, gcc-internal-format msgid "the address of %qD will never be %<null%>" msgstr "" -#: d/d-codegen.cc:2262 +#: d/d-codegen.cc:2276 #, gcc-internal-format msgid "need %<this%> to access member %qE" msgstr "" -#: d/d-codegen.cc:2412 +#: d/d-codegen.cc:2426 #, gcc-internal-format msgid "tried to perform floating-point modulo division on %qT" msgstr "" -#: d/d-codegen.cc:2463 +#: d/d-codegen.cc:2477 #, gcc-internal-format msgid "cannot get frame pointer to %qs" msgstr "" #. Should instead error on line that references `fd'. -#: d/d-codegen.cc:2489 +#: d/d-codegen.cc:2503 #, gcc-internal-format msgid "nested function missing body" msgstr "" -#: d/d-codegen.cc:2531 +#: d/d-codegen.cc:2545 #, gcc-internal-format msgid "%qs is a nested function and cannot be accessed from %qs" msgstr "" -#: d/d-codegen.cc:2840 +#: d/d-codegen.cc:2854 #, gcc-internal-format msgid "variable %qs has scoped destruction, cannot build closure" msgstr "" -#: d/d-codegen.cc:2848 +#: d/d-codegen.cc:2862 #, gcc-internal-format msgid "explicit register variable %qs cannot be used in nested function" msgstr "" -#: d/d-codegen.cc:3073 +#: d/d-codegen.cc:3087 #, gcc-internal-format msgid "forward reference to frame of %qs" msgstr "" @@ -72756,42 +72932,42 @@ msgstr "" msgid "bad argument for %<-fextern-std%>: %qs" msgstr "" -#: d/d-lang.cc:537 +#: d/d-lang.cc:541 #, gcc-internal-format msgid "bad argument for %<-fmodule-file=%>: %qs" msgstr "" -#: d/d-lang.cc:704 +#: d/d-lang.cc:708 #, gcc-internal-format msgid "bad argument for %<-fversion=%>: %qs" msgstr "" -#: d/d-lang.cc:980 +#: d/d-lang.cc:984 #, gcc-internal-format msgid "unable to open %s for writing: %m" msgstr "" -#: d/d-lang.cc:987 +#: d/d-lang.cc:991 #, gcc-internal-format msgid "writing output file %s: %m" msgstr "" -#: d/d-lang.cc:1007 +#: d/d-lang.cc:1011 #, gcc-internal-format msgid "unable to open %s for reading: %m" msgstr "" -#: d/d-lang.cc:1032 +#: d/d-lang.cc:1036 #, gcc-internal-format msgid "reading ddoc file %s: %m" msgstr "" -#: d/d-lang.cc:1091 +#: d/d-lang.cc:1095 #, gcc-internal-format msgid "%<-fonly=%> argument is different from first input file name" msgstr "" -#: d/d-lang.cc:1274 +#: d/d-lang.cc:1278 #, gcc-internal-format msgid "unable to resolve forward reference in definition" msgstr "" @@ -72832,27 +73008,27 @@ msgstr "" msgid "use %<alias %s = %s.%s;%> to introduce base class overload set" msgstr "" -#: d/decl.cc:811 +#: d/decl.cc:815 #, gcc-internal-format msgid "size is too large" msgstr "" -#: d/decl.cc:1423 +#: d/decl.cc:1428 #, gcc-internal-format msgid "function requires a dual-context, which is not yet supported by GDC" msgstr "" -#: d/decl.cc:1600 +#: d/decl.cc:1605 #, gcc-internal-format msgid "explicit register variable %qs declared %<extern%>" msgstr "" -#: d/decl.cc:1603 +#: d/decl.cc:1608 #, gcc-internal-format msgid "explicit register variable %qs declared thread local" msgstr "" -#: d/decl.cc:1816 +#: d/decl.cc:1821 #, gcc-internal-format msgid "" "mismatch between declaration %qE size (%wd) and its initializer size (%wd)" @@ -72913,17 +73089,17 @@ msgstr "" msgid "recursive reference %qs" msgstr "" -#: d/expr.cc:2157 d/expr.cc:3055 +#: d/expr.cc:2157 d/expr.cc:3057 #, gcc-internal-format msgid "non-constant expression %qs" msgstr "" -#: d/expr.cc:3022 +#: d/expr.cc:3024 #, gcc-internal-format msgid "%qs is not an expression" msgstr "" -#: d/expr.cc:3029 +#: d/expr.cc:3031 #, gcc-internal-format msgid "type %qs is not an expression" msgstr "" @@ -72966,7 +73142,7 @@ msgstr "" msgid "intrinsic function %qE must be directly called" msgstr "" -#: d/modules.cc:417 +#: d/modules.cc:418 #, gcc-internal-format msgid "%<-fmoduleinfo%> is not supported on this target" msgstr "" @@ -73035,17 +73211,17 @@ msgstr "" msgid "%<object.TypeInfo%> could not be found, but is implicitly used" msgstr "" -#: d/types.cc:161 +#: d/types.cc:160 #, gcc-internal-format msgid "missing or corrupt object.d" msgstr "" -#: d/types.cc:902 +#: d/types.cc:896 #, gcc-internal-format, gfc-internal-format msgid "invalid expression for static array dimension: %s" msgstr "" -#: d/types.cc:1110 +#: d/types.cc:1104 #, gcc-internal-format msgid "size of %qs (%wd) differ from its declared size (%wd)" msgstr "" @@ -73359,12 +73535,10 @@ msgstr "" msgid "Array reference at %C cannot have more than %d dimensions" msgstr "" -#: fortran/array.cc:335 fortran/array.cc:805 fortran/check.cc:3813 -#: fortran/check.cc:6539 fortran/check.cc:6582 fortran/check.cc:6624 -#: fortran/check.cc:6651 fortran/check.cc:6914 fortran/match.cc:1859 -#: fortran/match.cc:3656 fortran/match.cc:3998 fortran/match.cc:4194 -#: fortran/simplify.cc:3099 fortran/simplify.cc:3129 fortran/simplify.cc:6736 -#: fortran/simplify.cc:9043 +#: fortran/array.cc:335 fortran/array.cc:805 fortran/match.cc:1917 +#: fortran/match.cc:3811 fortran/match.cc:4298 fortran/match.cc:4494 +#: fortran/simplify.cc:3099 fortran/simplify.cc:3129 fortran/simplify.cc:6738 +#: fortran/simplify.cc:9039 #, gcc-internal-format msgid "Coarrays disabled at %C, use %<-fcoarray=%> to enable" msgstr "" @@ -73521,7 +73695,7 @@ msgstr "" msgid "Array constructor including type specification at %C" msgstr "" -#: fortran/array.cc:1372 fortran/match.cc:4630 +#: fortran/array.cc:1372 fortran/match.cc:4930 #, gcc-internal-format, gfc-internal-format msgid "Type-spec at %L cannot contain a deferred type parameter" msgstr "" @@ -73641,7 +73815,7 @@ msgstr "" msgid "Arguments of %qs at %L and %L cannot both be BOZ literal constants" msgstr "" -#: fortran/check.cc:123 fortran/resolve.cc:12315 +#: fortran/check.cc:123 fortran/resolve.cc:12453 #, gcc-internal-format, gfc-internal-format msgid "Invalid use of BOZ literal constant at %L" msgstr "" @@ -73704,7 +73878,7 @@ msgstr "" msgid "%qs argument of %qs intrinsic at %L must be INTEGER or REAL or UNSIGNED" msgstr "" -#: fortran/check.cc:681 fortran/check.cc:3768 +#: fortran/check.cc:681 fortran/check.cc:3793 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be of intrinsic type" msgstr "" @@ -73719,7 +73893,7 @@ msgstr "" msgid "%qs argument of %qs intrinsic at %L must be INTEGER or PROCEDURE" msgstr "" -#: fortran/check.cc:742 fortran/check.cc:8216 +#: fortran/check.cc:742 fortran/check.cc:8278 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be a constant" msgstr "" @@ -73853,7 +74027,7 @@ msgstr "" msgid "%qs and %qs arguments of %qs intrinsic at %L must have the same type" msgstr "" -#: fortran/check.cc:1531 fortran/check.cc:1564 fortran/check.cc:4085 +#: fortran/check.cc:1531 fortran/check.cc:1564 fortran/check.cc:4111 #, gcc-internal-format, gfc-internal-format msgid "Different type kinds at %L" msgstr "" @@ -73869,7 +74043,7 @@ msgstr "" msgid "%qs argument of %qs intrinsic at %L must be a POINTER" msgstr "" -#: fortran/check.cc:1618 fortran/check.cc:1653 fortran/check.cc:4870 +#: fortran/check.cc:1618 fortran/check.cc:1653 fortran/check.cc:4906 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L shall not be coindexed" msgstr "" @@ -73913,17 +74087,17 @@ msgid "" "%qs argument of %qs intrinsic at %L shall have the same type as %qs at %L" msgstr "" -#: fortran/check.cc:1751 fortran/check.cc:2000 +#: fortran/check.cc:1751 fortran/check.cc:2025 #, gcc-internal-format, gfc-internal-format msgid "STAT= argument to %s at %L" msgstr "" -#: fortran/check.cc:1770 fortran/check.cc:1940 fortran/check.cc:2037 +#: fortran/check.cc:1770 fortran/check.cc:1965 fortran/check.cc:2062 #, gcc-internal-format, gfc-internal-format msgid "ATOM argument of the %s intrinsic function at %L shall be definable" msgstr "" -#: fortran/check.cc:1784 fortran/check.cc:2020 +#: fortran/check.cc:1784 fortran/check.cc:2045 #, gcc-internal-format, gfc-internal-format msgid "" "ATOM argument at %L to intrinsic function %s shall be an integer of " @@ -73935,112 +74109,129 @@ msgstr "" msgid "VALUE argument of the %s intrinsic function at %L shall be definable" msgstr "" -#: fortran/check.cc:1823 fortran/check.cc:1873 fortran/check.cc:1908 +#: fortran/check.cc:1819 #, gcc-internal-format -msgid "%qs argument of %qs intrinsic at %L not yet supported" +msgid "" +"%qs argument of %qs intrinsic at %L shall be of type %<team_type%> from the " +"intrinsic module %<ISO_FORTRAN_ENV%>" msgstr "" -#: fortran/check.cc:1848 +#: fortran/check.cc:1858 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L shall have a type of " "CHARACTER(KIND=C_CHAR)" msgstr "" -#: fortran/check.cc:1893 +#: fortran/check.cc:1883 +#, gcc-internal-format +msgid "%qs argument of %qs intrinsic at %L not yet supported" +msgstr "" + +#: fortran/check.cc:1903 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L shall specify a valid integer kind" msgstr "" -#: fortran/check.cc:1947 fortran/check.cc:2044 +#: fortran/check.cc:1930 +#, gcc-internal-format +msgid "" +"%qs argument of %qs intrinsic at %L shall specify one of the INITIAL_TEAM, " +"PARENT_TEAM or CURRENT_TEAM constants from the intrinsic module " +"ISO_FORTRAN_ENV" +msgstr "" + +#: fortran/check.cc:1972 fortran/check.cc:2069 #, gcc-internal-format, gfc-internal-format msgid "OLD argument of the %s intrinsic function at %L shall be definable" msgstr "" -#: fortran/check.cc:1962 +#: fortran/check.cc:1987 #, gcc-internal-format, gfc-internal-format msgid "" "EVENT argument at %L to the intrinsic EVENT_QUERY shall be of type EVENT_TYPE" msgstr "" -#: fortran/check.cc:1972 +#: fortran/check.cc:1997 #, gcc-internal-format, gfc-internal-format msgid "" "COUNT argument of the EVENT_QUERY intrinsic function at %L shall be definable" msgstr "" -#: fortran/check.cc:1985 +#: fortran/check.cc:2010 #, gcc-internal-format, gfc-internal-format msgid "" "COUNT argument of the EVENT_QUERY intrinsic function at %L shall have at " "least the range of the default integer" msgstr "" -#: fortran/check.cc:2064 +#: fortran/check.cc:2089 #, gcc-internal-format, gfc-internal-format msgid "Negative argument N at %L" msgstr "" -#: fortran/check.cc:2195 +#: fortran/check.cc:2220 #, gcc-internal-format, gfc-internal-format msgid "BOZ literal constant at %L cannot appear in CHAR intrinsic subprogram" msgstr "" -#: fortran/check.cc:2319 fortran/check.cc:2839 +#: fortran/check.cc:2344 fortran/check.cc:2864 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must not be present if %<x%> is COMPLEX" msgstr "" -#: fortran/check.cc:2328 fortran/check.cc:2848 +#: fortran/check.cc:2353 fortran/check.cc:2873 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must have a type of either REAL or " "INTEGER" msgstr "" -#: fortran/check.cc:2338 fortran/check.cc:2344 +#: fortran/check.cc:2363 fortran/check.cc:2369 #, gcc-internal-format, gfc-internal-format msgid "" "Conversion from %s to default-kind COMPLEX(%d) at %L might lose precision, " "consider using the KIND argument" msgstr "" -#: fortran/check.cc:2366 +#: fortran/check.cc:2391 #, gcc-internal-format msgid "" "Argument %<A%> with INTENT(INOUT) at %L of the intrinsic subroutine %s shall " "not have a vector subscript" msgstr "" -#: fortran/check.cc:2374 +#: fortran/check.cc:2399 #, gcc-internal-format, gfc-internal-format msgid "The A argument at %L to the intrinsic %s shall not be coindexed" msgstr "" -#: fortran/check.cc:2397 +#: fortran/check.cc:2422 #, gcc-internal-format, gfc-internal-format msgid "The stat= argument at %L must be a kind=4 integer variable" msgstr "" -#: fortran/check.cc:2413 +#: fortran/check.cc:2438 #, gcc-internal-format, gfc-internal-format msgid "The errmsg= argument at %L must be a default-kind character variable" msgstr "" -#: fortran/check.cc:2421 +#: fortran/check.cc:2446 fortran/check.cc:3838 fortran/check.cc:6576 +#: fortran/check.cc:6627 fortran/check.cc:6657 fortran/check.cc:6675 +#: fortran/check.cc:6975 #, gcc-internal-format msgid "Coarrays disabled at %L, use %<-fcoarray=%> to enable" msgstr "" -#: fortran/check.cc:2436 +#: fortran/check.cc:2461 #, gcc-internal-format, gfc-internal-format msgid "" "Support for the A argument at %L which is polymorphic A argument or has " "allocatable components is not yet implemented" msgstr "" -#: fortran/check.cc:2469 +#: fortran/check.cc:2494 #, gcc-internal-format, gfc-internal-format msgid "OPERATION argument at %L must be a PURE function" msgstr "" @@ -74048,903 +74239,903 @@ msgstr "" #. None of the intrinsics fulfills the criteria of taking two arguments, #. returning the same type and kind as the arguments and being permitted #. as actual argument. -#: fortran/check.cc:2479 +#: fortran/check.cc:2504 #, gcc-internal-format, gfc-internal-format msgid "Intrinsic function %s at %L is not permitted for %s" msgstr "" -#: fortran/check.cc:2497 +#: fortran/check.cc:2522 #, gcc-internal-format, gfc-internal-format msgid "The function passed as OPERATION at %L shall have two arguments" msgstr "" -#: fortran/check.cc:2507 +#: fortran/check.cc:2532 #, gcc-internal-format, gfc-internal-format msgid "" "The %s argument at %L has type %s but the function passed as OPERATION at %L " "returns %s" msgstr "" -#: fortran/check.cc:2518 +#: fortran/check.cc:2543 #, gcc-internal-format, gfc-internal-format msgid "" "The function passed as OPERATION at %L has arguments of type %s and %s but " "shall have type %s" msgstr "" -#: fortran/check.cc:2529 +#: fortran/check.cc:2554 #, gcc-internal-format, gfc-internal-format msgid "" "The function passed as OPERATION at %L shall have scalar nonallocatable " "nonpointer arguments and return a nonallocatable nonpointer scalar" msgstr "" -#: fortran/check.cc:2537 +#: fortran/check.cc:2562 #, gcc-internal-format, gfc-internal-format msgid "" "The function passed as OPERATION at %L shall have the VALUE attribute either " "for none or both arguments" msgstr "" -#: fortran/check.cc:2544 +#: fortran/check.cc:2569 #, gcc-internal-format, gfc-internal-format msgid "" "The function passed as OPERATION at %L shall have the TARGET attribute " "either for none or both arguments" msgstr "" -#: fortran/check.cc:2551 +#: fortran/check.cc:2576 #, gcc-internal-format, gfc-internal-format msgid "" "The function passed as OPERATION at %L shall have the ASYNCHRONOUS attribute " "either for none or both arguments" msgstr "" -#: fortran/check.cc:2559 +#: fortran/check.cc:2584 #, gcc-internal-format, gfc-internal-format msgid "" "The function passed as OPERATION at %L shall not have the OPTIONAL attribute " "for either of the arguments" msgstr "" -#: fortran/check.cc:2577 +#: fortran/check.cc:2602 #, gcc-internal-format, gfc-internal-format msgid "" "The character length of the %s argument at %L and of the arguments of the " "OPERATION at %L shall be the same" msgstr "" -#: fortran/check.cc:2585 +#: fortran/check.cc:2610 #, gcc-internal-format, gfc-internal-format msgid "" "The character length of the %s argument at %L and of the function result of " "the OPERATION at %L shall be the same" msgstr "" -#: fortran/check.cc:2602 +#: fortran/check.cc:2627 #, gcc-internal-format, gfc-internal-format msgid "The A argument at %L of CO_REDUCE shall not be polymorphic" msgstr "" -#: fortran/check.cc:2609 +#: fortran/check.cc:2634 #, gcc-internal-format, gfc-internal-format msgid "" "Support for the A argument at %L with allocatable components is not yet " "implemented" msgstr "" -#: fortran/check.cc:2631 +#: fortran/check.cc:2656 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L shall be of type integer, real or " "character" msgstr "" -#: fortran/check.cc:2660 fortran/check.cc:2668 +#: fortran/check.cc:2685 fortran/check.cc:2693 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L shall not be UNSIGNED" msgstr "" -#: fortran/check.cc:2676 fortran/check.cc:2690 +#: fortran/check.cc:2701 fortran/check.cc:2715 #, gcc-internal-format, gfc-internal-format msgid "BOZ constant at %L cannot appear in the COMPLEX intrinsic subprogram" msgstr "" -#: fortran/check.cc:2727 fortran/check.cc:3454 fortran/check.cc:3537 -#: fortran/check.cc:3799 fortran/check.cc:3847 fortran/check.cc:5515 -#: fortran/check.cc:5639 fortran/check.cc:5717 fortran/check.cc:6900 -#: fortran/check.cc:7031 +#: fortran/check.cc:2752 fortran/check.cc:3479 fortran/check.cc:3562 +#: fortran/check.cc:3824 fortran/check.cc:3873 fortran/check.cc:5551 +#: fortran/check.cc:5675 fortran/check.cc:5753 fortran/check.cc:6961 +#: fortran/check.cc:7093 #, gcc-internal-format msgid "%qs intrinsic with KIND argument at %L" msgstr "" -#: fortran/check.cc:2774 fortran/check.cc:3082 fortran/check.cc:3142 +#: fortran/check.cc:2799 fortran/check.cc:3107 fortran/check.cc:3167 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L has invalid shape in dimension %d (%ld/" "%ld)" msgstr "" -#: fortran/check.cc:2789 fortran/check.cc:3097 fortran/check.cc:3157 +#: fortran/check.cc:2814 fortran/check.cc:3122 fortran/check.cc:3182 #, gcc-internal-format msgid "%qs argument of intrinsic %qs at %L of must have rank %d or be a scalar" msgstr "" -#: fortran/check.cc:2911 fortran/check.cc:4197 fortran/check.cc:4205 +#: fortran/check.cc:2936 fortran/check.cc:4223 fortran/check.cc:4231 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be numeric or LOGICAL" msgstr "" -#: fortran/check.cc:2919 fortran/check.cc:4215 +#: fortran/check.cc:2944 fortran/check.cc:4241 #, gcc-internal-format msgid "Argument types of %qs intrinsic at %L must match (%s/%s)" msgstr "" -#: fortran/check.cc:2933 +#: fortran/check.cc:2958 #, gcc-internal-format msgid "" "Different shape for arguments %qs and %qs at %L for intrinsic %<dot_product%>" msgstr "" -#: fortran/check.cc:2953 fortran/check.cc:2961 +#: fortran/check.cc:2978 fortran/check.cc:2986 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be default real" msgstr "" -#: fortran/check.cc:3118 +#: fortran/check.cc:3143 #, gcc-internal-format msgid "%qs must be of same type and kind as %qs at %L in %qs" msgstr "" -#: fortran/check.cc:3182 +#: fortran/check.cc:3207 #, gcc-internal-format msgid "Missing %qs argument to %qs intrinsic at %L for %qs of type %qs" msgstr "" -#: fortran/check.cc:3200 +#: fortran/check.cc:3225 #, gcc-internal-format, gfc-internal-format msgid "" "BOZ literal constant at %L cannot appear in the FLOAT intrinsic subprogram" msgstr "" -#: fortran/check.cc:3214 +#: fortran/check.cc:3239 #, gcc-internal-format, gfc-internal-format msgid "non-default INTEGER kind argument to %s intrinsic at %L" msgstr "" -#: fortran/check.cc:3275 +#: fortran/check.cc:3300 #, gcc-internal-format msgid "COMPLEX argument %qs of %qs intrinsic at %L" msgstr "" -#: fortran/check.cc:3401 +#: fortran/check.cc:3426 #, gcc-internal-format msgid "Arguments of %qs have different kind type parameters at %L" msgstr "" -#: fortran/check.cc:3505 +#: fortran/check.cc:3530 #, gcc-internal-format, gfc-internal-format msgid "Argument of %s at %L must be of length one" msgstr "" -#: fortran/check.cc:3544 +#: fortran/check.cc:3569 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be the same kind as %qs" msgstr "" -#: fortran/check.cc:3577 +#: fortran/check.cc:3602 #, gcc-internal-format msgid "UINT intrinsic only valid with %<-funsigned%> at %L" msgstr "" -#: fortran/check.cc:3601 +#: fortran/check.cc:3626 #, gcc-internal-format msgid "" "%qs intrinsic subprogram at %L has been removed. Use INT intrinsic " "subprogram." msgstr "" -#: fortran/check.cc:3670 +#: fortran/check.cc:3695 #, gcc-internal-format, gfc-internal-format msgid "SIZE at %L must be positive" msgstr "" -#: fortran/check.cc:3682 +#: fortran/check.cc:3707 #, gcc-internal-format, gfc-internal-format msgid "" "The absolute value of SHIFT at %L must be less than or equal to SIZE at %L" msgstr "" -#: fortran/check.cc:3741 +#: fortran/check.cc:3766 #, gcc-internal-format, gfc-internal-format msgid "STATUS at %L shall be an INTENT(OUT) variable" msgstr "" -#: fortran/check.cc:3750 +#: fortran/check.cc:3775 #, gcc-internal-format msgid "%qs at %L shall be an INTENT(OUT) variable" msgstr "" -#: fortran/check.cc:3775 +#: fortran/check.cc:3800 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be a data entity" msgstr "" -#: fortran/check.cc:3989 +#: fortran/check.cc:4015 #, gcc-internal-format msgid "Intrinsic %qs at %L must have at least two arguments" msgstr "" -#: fortran/check.cc:4037 +#: fortran/check.cc:4063 #, gcc-internal-format msgid "Missing %qs argument to the %s intrinsic at %L" msgstr "" -#: fortran/check.cc:4052 +#: fortran/check.cc:4078 #, gcc-internal-format msgid "Duplicate argument %qs at %L to intrinsic %s" msgstr "" -#: fortran/check.cc:4057 +#: fortran/check.cc:4083 #, gcc-internal-format msgid "Unknown argument %qs at %L to intrinsic %s" msgstr "" -#: fortran/check.cc:4082 +#: fortran/check.cc:4108 #, gcc-internal-format, gfc-internal-format msgid "Different character kinds at %L" msgstr "" -#: fortran/check.cc:4091 +#: fortran/check.cc:4117 #, gcc-internal-format msgid "%<a%d%> argument of %qs intrinsic at %L must be %s(%d)" msgstr "" -#: fortran/check.cc:4122 +#: fortran/check.cc:4148 #, gcc-internal-format msgid "%qs intrinsic with CHARACTER argument at %L" msgstr "" -#: fortran/check.cc:4134 +#: fortran/check.cc:4160 #, gcc-internal-format msgid "" "%<a1%> argument of %qs intrinsic at %L must be INTEGER, REAL, CHARACTER or " "UNSIGNED" msgstr "" -#: fortran/check.cc:4144 +#: fortran/check.cc:4170 #, gcc-internal-format msgid "" "%<a1%> argument of %qs intrinsic at %L must be INTEGER, REAL or CHARACTER" msgstr "" -#: fortran/check.cc:4229 +#: fortran/check.cc:4255 #, gcc-internal-format msgid "" "Different shape on dimension 1 for arguments %qs and %qs at %L for intrinsic " "matmul" msgstr "" -#: fortran/check.cc:4248 +#: fortran/check.cc:4274 #, gcc-internal-format msgid "" "Different shape on dimension 2 for argument %qs and dimension 1 for argument " "%qs at %L for intrinsic matmul" msgstr "" -#: fortran/check.cc:4257 +#: fortran/check.cc:4283 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be of rank 1 or 2" msgstr "" -#: fortran/check.cc:4435 +#: fortran/check.cc:4461 #, gcc-internal-format msgid "" "Argument %qs of %qs intrinsic at %L must be in type conformance to argument " "%qs at %L" msgstr "" -#: fortran/check.cc:4569 +#: fortran/check.cc:4595 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be INTEGER or UNSIGNED" msgstr "" -#: fortran/check.cc:4577 fortran/check.cc:8136 fortran/check.cc:8151 +#: fortran/check.cc:4603 fortran/check.cc:8198 fortran/check.cc:8213 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be INTEGER" msgstr "" -#: fortran/check.cc:4694 +#: fortran/check.cc:4718 +#, gcc-internal-format, gfc-internal-format +msgid "STAT= or ERRMSG= at %L not supported" +msgstr "" + +#: fortran/check.cc:4730 #, gcc-internal-format, gfc-internal-format msgid "The FROM argument to MOVE_ALLOC at %L shall not be coindexed" msgstr "" -#: fortran/check.cc:4705 +#: fortran/check.cc:4741 #, gcc-internal-format, gfc-internal-format msgid "The TO argument to MOVE_ALLOC at %L shall not be coindexed" msgstr "" -#: fortran/check.cc:4712 +#: fortran/check.cc:4748 #, gcc-internal-format, gfc-internal-format msgid "" "The TO arguments in MOVE_ALLOC at %L must be polymorphic if FROM is " "polymorphic" msgstr "" -#: fortran/check.cc:4723 +#: fortran/check.cc:4759 #, gcc-internal-format, gfc-internal-format msgid "" "The FROM and TO arguments of the MOVE_ALLOC intrinsic at %L must have the " "same rank %d/%d" msgstr "" -#: fortran/check.cc:4732 +#: fortran/check.cc:4768 #, gcc-internal-format, gfc-internal-format msgid "" "The FROM and TO arguments of the MOVE_ALLOC intrinsic at %L must have the " "same corank %d/%d" msgstr "" -#: fortran/check.cc:4772 +#: fortran/check.cc:4808 #, gcc-internal-format, gfc-internal-format msgid "" "The FROM and TO arguments at %L violate aliasing restrictions (F2003 " "12.4.1.7)" msgstr "" -#: fortran/check.cc:4799 +#: fortran/check.cc:4835 #, gcc-internal-format msgid "Argument %<S%> of NEAREST at %L shall not be zero" msgstr "" -#: fortran/check.cc:4855 +#: fortran/check.cc:4891 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must be a POINTER, ALLOCATABLE or " "procedure pointer" msgstr "" -#: fortran/check.cc:4863 +#: fortran/check.cc:4899 #, gcc-internal-format, gfc-internal-format msgid "NULL intrinsic with allocatable MOLD at %L" msgstr "" -#: fortran/check.cc:4906 +#: fortran/check.cc:4942 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L shall appear only if %qs is of type REAL " "and %qs is of type INTEGER or UNSIGNED" msgstr "" -#: fortran/check.cc:4984 fortran/check.cc:6978 +#: fortran/check.cc:5020 fortran/check.cc:7040 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must provide at least as many elements " "as there are .TRUE. values in %qs (%ld/%d)" msgstr "" -#: fortran/check.cc:5045 +#: fortran/check.cc:5081 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be of a dummy variable" msgstr "" -#: fortran/check.cc:5055 +#: fortran/check.cc:5091 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must be of an OPTIONAL dummy variable" msgstr "" -#: fortran/check.cc:5074 +#: fortran/check.cc:5110 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must not be a subobject of %qs" msgstr "" -#: fortran/check.cc:5125 +#: fortran/check.cc:5161 #, gcc-internal-format, gfc-internal-format msgid "The argument of the RANK intrinsic at %L must be a data object" msgstr "" -#: fortran/check.cc:5157 +#: fortran/check.cc:5193 #, gcc-internal-format, gfc-internal-format msgid "The ARRAY argument at %L of REDUCE shall not be polymorphic" msgstr "" -#: fortran/check.cc:5167 +#: fortran/check.cc:5203 #, gcc-internal-format, gfc-internal-format msgid "The DIM argument at %L, if present, must be an integer scalar" msgstr "" -#: fortran/check.cc:5174 +#: fortran/check.cc:5210 #, gcc-internal-format, gfc-internal-format msgid "" "The MASK argument at %L, if present, must be a logical array with the same " "rank as ARRAY" msgstr "" -#: fortran/check.cc:5186 +#: fortran/check.cc:5222 #, gcc-internal-format, gfc-internal-format msgid "MASK present at %L without IDENTITY" msgstr "" -#: fortran/check.cc:5190 +#: fortran/check.cc:5226 #, gcc-internal-format, gfc-internal-format msgid "The ORDERED argument at %L, if present, must be a logical scalar" msgstr "" -#: fortran/check.cc:5198 +#: fortran/check.cc:5234 #, gcc-internal-format, gfc-internal-format msgid "" "The IDENTITY argument at %L, if present, must be a scalar with the same type " "as ARRAY" msgstr "" -#: fortran/check.cc:5289 +#: fortran/check.cc:5325 #, gcc-internal-format msgid "" "%<shape%> argument of %<reshape%> intrinsic at %L must be an array of " "constant size" msgstr "" -#: fortran/check.cc:5299 +#: fortran/check.cc:5335 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L is empty" msgstr "" -#: fortran/check.cc:5306 +#: fortran/check.cc:5342 #, gcc-internal-format msgid "" "%<shape%> argument of %<reshape%> intrinsic at %L has more than %d elements" msgstr "" -#: fortran/check.cc:5329 +#: fortran/check.cc:5365 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L has negative element (%d)" msgstr "" -#: fortran/check.cc:5369 +#: fortran/check.cc:5405 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L has wrong number of elements (%d/%d)" msgstr "" -#: fortran/check.cc:5387 +#: fortran/check.cc:5423 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L has out-of-range dimension (%d)" msgstr "" -#: fortran/check.cc:5396 +#: fortran/check.cc:5432 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L has invalid permutation of dimensions " "(dimension %qd duplicated)" msgstr "" -#: fortran/check.cc:5431 fortran/simplify.cc:7594 +#: fortran/check.cc:5467 fortran/simplify.cc:7589 #, gcc-internal-format, gfc-internal-format msgid "" "Without padding, there are not enough elements in the intrinsic RESHAPE " "source at %L to match the shape" msgstr "" -#: fortran/check.cc:5448 fortran/check.cc:5467 +#: fortran/check.cc:5484 fortran/check.cc:5503 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L cannot be of type %s" msgstr "" -#: fortran/check.cc:5458 fortran/check.cc:5477 +#: fortran/check.cc:5494 fortran/check.cc:5513 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be of an extensible type" msgstr "" -#: fortran/check.cc:5575 +#: fortran/check.cc:5611 #, gcc-internal-format msgid "SELECTED_REAL_KIND with neither %<P%> nor %<R%> argument at %L" msgstr "" -#: fortran/check.cc:5606 +#: fortran/check.cc:5642 #, gcc-internal-format msgid "%qs intrinsic with RADIX argument at %L" msgstr "" -#: fortran/check.cc:5654 +#: fortran/check.cc:5690 #, gcc-internal-format msgid "" "%<source%> argument of %<shape%> intrinsic at %L must not be an assumed size " "array" msgstr "" -#: fortran/check.cc:5735 fortran/check.cc:8196 +#: fortran/check.cc:5771 fortran/check.cc:8258 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L shall not be a procedure" msgstr "" -#: fortran/check.cc:5751 fortran/check.cc:5897 fortran/check.cc:8188 +#: fortran/check.cc:5787 fortran/check.cc:5933 fortran/check.cc:8250 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L shall not be TYPE(*)" msgstr "" -#: fortran/check.cc:5762 fortran/check.cc:5909 +#: fortran/check.cc:5798 fortran/check.cc:5945 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L shall not be an assumed-size array" msgstr "" -#: fortran/check.cc:5844 +#: fortran/check.cc:5880 #, gcc-internal-format msgid "is_c_interoperable(): gfc_simplify_expr failed" msgstr "" -#: fortran/check.cc:5888 +#: fortran/check.cc:5924 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must be an interoperable data entity: %s" msgstr "" -#: fortran/check.cc:5927 +#: fortran/check.cc:5963 #, gcc-internal-format, gfc-internal-format msgid "" "Argument C_PTR_1 at %L to C_ASSOCIATED shall have the type TYPE(C_PTR) or " "TYPE(C_FUNPTR)" msgstr "" -#: fortran/check.cc:5941 +#: fortran/check.cc:5977 #, gcc-internal-format, gfc-internal-format msgid "" "Argument C_PTR_2 at %L to C_ASSOCIATED shall have the same type as C_PTR_1: " "%s instead of %s" msgstr "" -#: fortran/check.cc:5965 +#: fortran/check.cc:6001 #, gcc-internal-format, gfc-internal-format msgid "Argument CPTR at %L to C_F_POINTER shall have the type TYPE(C_PTR)" msgstr "" -#: fortran/check.cc:5977 +#: fortran/check.cc:6013 #, gcc-internal-format, gfc-internal-format msgid "Argument FPTR at %L to C_F_POINTER must be a pointer" msgstr "" -#: fortran/check.cc:5984 +#: fortran/check.cc:6020 #, gcc-internal-format, gfc-internal-format msgid "FPTR argument at %L to C_F_POINTER shall not be polymorphic" msgstr "" -#: fortran/check.cc:5991 +#: fortran/check.cc:6027 #, gcc-internal-format, gfc-internal-format msgid "Argument FPTR at %L to C_F_POINTER shall not be coindexed" msgstr "" -#: fortran/check.cc:5998 +#: fortran/check.cc:6034 #, gcc-internal-format, gfc-internal-format msgid "Unexpected SHAPE argument at %L to C_F_POINTER with scalar FPTR" msgstr "" -#: fortran/check.cc:6004 +#: fortran/check.cc:6040 #, gcc-internal-format, gfc-internal-format msgid "Expected SHAPE argument to C_F_POINTER with array FPTR at %L" msgstr "" -#: fortran/check.cc:6023 +#: fortran/check.cc:6059 #, gcc-internal-format, gfc-internal-format msgid "" "SHAPE argument at %L to C_F_POINTER must have the same size as the RANK of " "FPTR" msgstr "" -#: fortran/check.cc:6033 +#: fortran/check.cc:6069 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic FPTR at %L to C_F_POINTER" msgstr "" -#: fortran/check.cc:6039 +#: fortran/check.cc:6075 #, gcc-internal-format, gfc-internal-format msgid "FPTR argument to C_F_POINTER at %L is a function returning a pointer" msgstr "" -#: fortran/check.cc:6046 +#: fortran/check.cc:6082 #, gcc-internal-format, gfc-internal-format msgid "Noninteroperable array FPTR argument to C_F_POINTER at %L: %s" msgstr "" -#: fortran/check.cc:6062 +#: fortran/check.cc:6098 #, gcc-internal-format, gfc-internal-format msgid "" "Argument CPTR at %L to C_F_PROCPOINTER shall have the type TYPE(C_FUNPTR)" msgstr "" -#: fortran/check.cc:6074 +#: fortran/check.cc:6110 #, gcc-internal-format, gfc-internal-format msgid "Argument FPTR at %L to C_F_PROCPOINTER shall be a procedure pointer" msgstr "" -#: fortran/check.cc:6081 +#: fortran/check.cc:6117 #, gcc-internal-format, gfc-internal-format msgid "Argument FPTR at %L to C_F_PROCPOINTER shall not be coindexed" msgstr "" -#: fortran/check.cc:6087 +#: fortran/check.cc:6123 #, gcc-internal-format, gfc-internal-format msgid "Noninteroperable procedure pointer at %L to C_F_PROCPOINTER" msgstr "" -#: fortran/check.cc:6101 +#: fortran/check.cc:6137 #, gcc-internal-format, gfc-internal-format msgid "Argument X at %L to C_FUNLOC shall not be coindexed" msgstr "" -#: fortran/check.cc:6113 +#: fortran/check.cc:6149 #, gcc-internal-format msgid "Function result %qs at %L is invalid as X argument to C_FUNLOC" msgstr "" -#: fortran/check.cc:6120 +#: fortran/check.cc:6156 #, gcc-internal-format, gfc-internal-format msgid "" "Argument X at %L to C_FUNLOC shall be a procedure or a procedure pointer" msgstr "" -#: fortran/check.cc:6126 +#: fortran/check.cc:6162 #, gcc-internal-format, gfc-internal-format msgid "Noninteroperable procedure at %L to C_FUNLOC" msgstr "" -#: fortran/check.cc:6140 +#: fortran/check.cc:6176 #, gcc-internal-format, gfc-internal-format msgid "Argument X at %L to C_LOC shall not be coindexed" msgstr "" -#: fortran/check.cc:6146 +#: fortran/check.cc:6182 #, gcc-internal-format, gfc-internal-format msgid "X argument at %L to C_LOC shall not be polymorphic" msgstr "" -#: fortran/check.cc:6157 +#: fortran/check.cc:6193 #, gcc-internal-format, gfc-internal-format msgid "" "Argument X at %L to C_LOC shall have either the POINTER or the TARGET " "attribute" msgstr "" -#: fortran/check.cc:6165 +#: fortran/check.cc:6201 #, gcc-internal-format, gfc-internal-format msgid "Argument X at %L to C_LOC shall be not be a zero-sized string" msgstr "" -#: fortran/check.cc:6174 +#: fortran/check.cc:6210 #, gcc-internal-format, gfc-internal-format msgid "Argument at %L to C_LOC shall not be polymorphic" msgstr "" -#: fortran/check.cc:6181 +#: fortran/check.cc:6217 #, gcc-internal-format, gfc-internal-format msgid "Noninteroperable array at %L as argument to C_LOC: %s" msgstr "" -#: fortran/check.cc:6192 +#: fortran/check.cc:6228 #, gcc-internal-format, gfc-internal-format msgid "" "Array of interoperable type at %L to C_LOC which is nonallocatable and " "neither assumed size nor explicit size" msgstr "" -#: fortran/check.cc:6197 +#: fortran/check.cc:6233 #, gcc-internal-format, gfc-internal-format msgid "Array section at %L to C_LOC" msgstr "" -#: fortran/check.cc:6225 +#: fortran/check.cc:6261 #, gcc-internal-format, gfc-internal-format msgid "non double precision REAL argument to %s intrinsic at %L" msgstr "" -#: fortran/check.cc:6241 +#: fortran/check.cc:6277 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must be less than rank %d" msgstr "" -#: fortran/check.cc:6260 +#: fortran/check.cc:6296 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L is not a valid dimension index" msgstr "" -#: fortran/check.cc:6284 +#: fortran/check.cc:6320 #, gcc-internal-format msgid "%qs argument of %qs intrinsic at %L must have length at least 1" msgstr "" -#: fortran/check.cc:6548 +#: fortran/check.cc:6586 #, gcc-internal-format, gfc-internal-format msgid "%s argument to IMAGE_INDEX must be a rank one array at %L" msgstr "" -#: fortran/check.cc:6555 -#, gcc-internal-format, gfc-internal-format -msgid "Type of %s argument of IMAGE_INDEX at %L shall be INTEGER" -msgstr "" - -#: fortran/check.cc:6564 +#: fortran/check.cc:6598 #, gcc-internal-format, gfc-internal-format msgid "" "The number of array elements of the SUB argument to IMAGE_INDEX at %L shall " "be %d (corank) not %d" msgstr "" -#: fortran/check.cc:6597 -#, gcc-internal-format, gfc-internal-format -msgid "DISTANCE= argument to NUM_IMAGES at %L" -msgstr "" - -#: fortran/check.cc:6610 -#, gcc-internal-format, gfc-internal-format -msgid "FAILED= argument to NUM_IMAGES at %L" +#: fortran/check.cc:6636 +#, gcc-internal-format +msgid "%<team%> or %<team_number%> argument to %qs at %L" msgstr "" -#: fortran/check.cc:6634 -#, gcc-internal-format, gfc-internal-format +#: fortran/check.cc:6696 +#, gcc-internal-format msgid "" -"TEAM argument at %L to the intrinsic TEAM_NUMBER shall be of type TEAM_TYPE" +"First argument of %<this_image%> intrinsic at %L must be a coarray variable " +"or an object of type %<team_type%> from the intrinsic module " +"%<ISO_FORTRAN_ENV%>" msgstr "" -#: fortran/check.cc:6660 -#, gcc-internal-format, gfc-internal-format +#: fortran/check.cc:6725 +#, gcc-internal-format msgid "" -"DIM argument without COARRAY argument not allowed for THIS_IMAGE intrinsic " -"at %L" +"Second argument of %<this_image%> intrinsic at %L must be an %<INTEGER%> " +"typed scalar or an object of type %<team_type%> from the intrinsic module " +"%<ISO_FORTRAN_ENV%>" msgstr "" -#: fortran/check.cc:6667 -#, gcc-internal-format, gfc-internal-format +#: fortran/check.cc:6751 +#, gcc-internal-format msgid "" -"The DISTANCE argument may not be specified together with the COARRAY or DIM " -"argument in intrinsic at %L" +"%<dim%> argument without %<coarray%> argument not allowed for %<this_image%> " +"intrinsic at %L" msgstr "" -#: fortran/check.cc:6678 -#, gcc-internal-format, gfc-internal-format -msgid "Unexpected DIM argument with noncoarray argument at %L" +#: fortran/check.cc:6762 +#, gcc-internal-format +msgid "%<team%> argument to %<this_image%> at %L" msgstr "" -#: fortran/check.cc:6696 -#, gcc-internal-format, gfc-internal-format -msgid "DISTANCE= argument to THIS_IMAGE at %L" +#: fortran/check.cc:6773 +#, gcc-internal-format +msgid "" +"At most one argument of type %<team_type%> from the intrinsic module " +"%<ISO_FORTRAN_ENV%> to %<this_image%> at %L allowed" msgstr "" -#: fortran/check.cc:6754 +#: fortran/check.cc:6815 #, gcc-internal-format msgid "" "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L is an array and shall not " "have storage size 0 when %<SOURCE%> argument has size greater than 0" msgstr "" -#: fortran/check.cc:6806 +#: fortran/check.cc:6867 #, gcc-internal-format msgid "%<SOURCE%> argument of %<TRANSFER%> intrinsic at %L must not be a %s" msgstr "" -#: fortran/check.cc:6825 +#: fortran/check.cc:6886 #, gcc-internal-format msgid "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L must not be a %s" msgstr "" -#: fortran/check.cc:6833 +#: fortran/check.cc:6894 #, gcc-internal-format msgid "%<MOLD%> argument of %<TRANSFER%> intrinsic at %L must not be %s" msgstr "" -#: fortran/check.cc:6868 +#: fortran/check.cc:6929 msgid "" "Intrinsic TRANSFER at %L has partly undefined result: source size %zd < " "result size %zd" msgstr "" -#: fortran/check.cc:6992 +#: fortran/check.cc:7054 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must have the same rank as %qs or be a " "scalar" msgstr "" -#: fortran/check.cc:7005 +#: fortran/check.cc:7067 #, gcc-internal-format msgid "%qs and %qs arguments of %qs intrinsic at %L must have identical shape." msgstr "" -#: fortran/check.cc:7141 +#: fortran/check.cc:7203 #, gcc-internal-format, gfc-internal-format msgid "VALUES argument of DATE_AND_TIME at %L has non-default kind" msgstr "" -#: fortran/check.cc:7153 +#: fortran/check.cc:7215 #, gcc-internal-format, gfc-internal-format msgid "" "VALUES argument of DATE_AND_TIME at %L must have a decimal exponent range of " "at least four" msgstr "" -#: fortran/check.cc:7308 fortran/check.cc:7344 +#: fortran/check.cc:7370 fortran/check.cc:7406 #, gcc-internal-format msgid "Size of %qs argument of %qs intrinsic at %L too small (%i/%i)" msgstr "" -#: fortran/check.cc:7355 +#: fortran/check.cc:7417 #, gcc-internal-format, gfc-internal-format msgid "Too many arguments to %s at %L" msgstr "" -#: fortran/check.cc:7373 +#: fortran/check.cc:7435 #, gcc-internal-format msgid "fe_runtime_error string must be null terminated" msgstr "" -#: fortran/check.cc:7385 +#: fortran/check.cc:7447 #, gcc-internal-format, gfc-internal-format msgid "fe_runtime_error: Wrong number of arguments (%d instead of %d)" msgstr "" -#: fortran/check.cc:7427 +#: fortran/check.cc:7489 #, gcc-internal-format, gfc-internal-format msgid "COUNT argument to SYSTEM_CLOCK at %L has non-default kind" msgstr "" -#: fortran/check.cc:7434 +#: fortran/check.cc:7496 #, gcc-internal-format, gfc-internal-format msgid "" "COUNT argument to SYSTEM_CLOCK at %L with kind smaller than default integer" msgstr "" -#: fortran/check.cc:7455 +#: fortran/check.cc:7517 #, gcc-internal-format, gfc-internal-format msgid "Real COUNT_RATE argument to SYSTEM_CLOCK at %L" msgstr "" -#: fortran/check.cc:7465 +#: fortran/check.cc:7527 #, gcc-internal-format, gfc-internal-format msgid "COUNT_RATE argument to SYSTEM_CLOCK at %L has non-default kind" msgstr "" -#: fortran/check.cc:7472 +#: fortran/check.cc:7534 #, gcc-internal-format, gfc-internal-format msgid "" "COUNT_RATE argument to SYSTEM_CLOCK at %L with kind smaller than default " "integer" msgstr "" -#: fortran/check.cc:7492 +#: fortran/check.cc:7554 #, gcc-internal-format, gfc-internal-format msgid "COUNT_MAX argument to SYSTEM_CLOCK at %L has non-default kind" msgstr "" -#: fortran/check.cc:7502 +#: fortran/check.cc:7564 #, gcc-internal-format, gfc-internal-format msgid "" "COUNT_MAX argument to SYSTEM_CLOCK at %L with kind smaller than default " "integer" msgstr "" -#: fortran/check.cc:7517 fortran/check.cc:7524 +#: fortran/check.cc:7579 fortran/check.cc:7586 #, gcc-internal-format, gfc-internal-format msgid "integer arguments to SYSTEM_CLOCK at %L with different kind parameters" msgstr "" -#: fortran/check.cc:7738 +#: fortran/check.cc:7800 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must be of a kind not wider than the " "default kind (%d)" msgstr "" -#: fortran/check.cc:7920 +#: fortran/check.cc:7982 #, gcc-internal-format msgid "Actual argument at %L of %qs intrinsic shall be an associated pointer" msgstr "" -#: fortran/check.cc:8109 fortran/check.cc:8120 +#: fortran/check.cc:8171 fortran/check.cc:8182 #, gcc-internal-format msgid "" "%qs argument of %qs intrinsic at %L must be INTEGER, LOGICAL, or a BOZ " "literal constant" msgstr "" -#: fortran/check.cc:8180 +#: fortran/check.cc:8242 #, gcc-internal-format, gfc-internal-format msgid "" "Intrinsic function NULL at %L cannot be an actual argument to STORAGE_SIZE, " @@ -74953,7 +75144,7 @@ msgstr "" #. Since the extension field is 8 bit wide, we can only have #. up to 255 extension levels. -#: fortran/class.cc:811 fortran/decl.cc:4106 fortran/decl.cc:10866 +#: fortran/class.cc:811 fortran/decl.cc:4106 fortran/decl.cc:10878 #, gcc-internal-format msgid "Maximum extension level reached with type %qs at %L" msgstr "" @@ -75003,12 +75194,12 @@ msgstr "" msgid "Initialization string at %L was truncated to fit the variable (%wd/%wd)" msgstr "" -#: fortran/data.cc:220 fortran/resolve.cc:5568 +#: fortran/data.cc:220 fortran/resolve.cc:5604 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L is less than one" msgstr "" -#: fortran/data.cc:226 fortran/resolve.cc:5598 +#: fortran/data.cc:226 fortran/resolve.cc:5634 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L exceeds the string length" msgstr "" @@ -75204,7 +75395,7 @@ msgstr "" msgid "deferred type parameter at %C" msgstr "" -#: fortran/decl.cc:1166 fortran/resolve.cc:14128 +#: fortran/decl.cc:1166 fortran/resolve.cc:14246 #, gcc-internal-format, gfc-internal-format msgid "Scalar INTEGER expression expected at %L" msgstr "" @@ -75604,7 +75795,7 @@ msgstr "" msgid "Pointer initialization at %C requires %<=>%>, not %<=%>" msgstr "" -#: fortran/decl.cc:3089 fortran/decl.cc:11040 +#: fortran/decl.cc:3089 fortran/decl.cc:11052 #, gcc-internal-format, gfc-internal-format msgid "Expected an initialization expression at %C" msgstr "" @@ -75988,7 +76179,7 @@ msgstr "" msgid "CONTIGUOUS attribute at %C" msgstr "" -#: fortran/decl.cc:5858 fortran/decl.cc:9389 +#: fortran/decl.cc:5858 fortran/decl.cc:9401 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED at %C only allowed in specification part of a module" msgstr "" @@ -76258,12 +76449,12 @@ msgstr "" msgid "Procedure %qs at %L already has basic type of %s" msgstr "" -#: fortran/decl.cc:7292 fortran/decl.cc:7480 fortran/decl.cc:11524 +#: fortran/decl.cc:7292 fortran/decl.cc:7480 fortran/decl.cc:11536 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in PROCEDURE statement at %C" msgstr "" -#: fortran/decl.cc:7341 fortran/decl.cc:11424 +#: fortran/decl.cc:7341 fortran/decl.cc:11436 #, gcc-internal-format msgid "Expected %<::%> after binding-attributes at %C" msgstr "" @@ -76288,7 +76479,7 @@ msgstr "" msgid "PROCEDURE at %C must be in a generic interface" msgstr "" -#: fortran/decl.cc:7451 fortran/decl.cc:10164 +#: fortran/decl.cc:7451 fortran/decl.cc:10176 #, gcc-internal-format, gfc-internal-format msgid "double colon in MODULE PROCEDURE statement at %L" msgstr "" @@ -76451,682 +76642,682 @@ msgstr "" msgid "NAME not allowed on BIND(C) for ABSTRACT INTERFACE at %C" msgstr "" -#: fortran/decl.cc:8650 +#: fortran/decl.cc:8657 #, gcc-internal-format, gfc-internal-format msgid "Unexpected END statement at %C" msgstr "" -#: fortran/decl.cc:8659 +#: fortran/decl.cc:8666 #, gcc-internal-format, gfc-internal-format msgid "END statement instead of %s statement at %L" msgstr "" #. We would have required END [something]. -#: fortran/decl.cc:8668 +#: fortran/decl.cc:8675 #, gcc-internal-format, gfc-internal-format msgid "%s statement expected at %L" msgstr "" -#: fortran/decl.cc:8679 +#: fortran/decl.cc:8686 #, gcc-internal-format, gfc-internal-format msgid "Expecting %s statement at %L" msgstr "" -#: fortran/decl.cc:8699 +#: fortran/decl.cc:8711 #, gcc-internal-format msgid "Expected block name of %qs in %s statement at %L" msgstr "" -#: fortran/decl.cc:8716 +#: fortran/decl.cc:8728 #, gcc-internal-format, gfc-internal-format msgid "Expected terminating name at %C" msgstr "" -#: fortran/decl.cc:8730 fortran/decl.cc:8738 +#: fortran/decl.cc:8742 fortran/decl.cc:8750 #, gcc-internal-format msgid "Expected label %qs for %s statement at %C" msgstr "" -#: fortran/decl.cc:8837 +#: fortran/decl.cc:8849 #, gcc-internal-format, gfc-internal-format msgid "Missing array specification at %L in DIMENSION statement" msgstr "" -#: fortran/decl.cc:8845 +#: fortran/decl.cc:8857 #, gcc-internal-format, gfc-internal-format msgid "Dimensions specified for %s at %L after its initialization" msgstr "" -#: fortran/decl.cc:8853 +#: fortran/decl.cc:8865 #, gcc-internal-format, gfc-internal-format msgid "Missing array specification at %L in CODIMENSION statement" msgstr "" -#: fortran/decl.cc:8862 +#: fortran/decl.cc:8874 #, gcc-internal-format, gfc-internal-format msgid "Array specification must be deferred at %L" msgstr "" -#: fortran/decl.cc:8967 +#: fortran/decl.cc:8979 #, gcc-internal-format, gfc-internal-format msgid "Unexpected character in variable list at %C" msgstr "" -#: fortran/decl.cc:9004 +#: fortran/decl.cc:9016 #, gcc-internal-format msgid "Expected %<(%> at %C" msgstr "" -#: fortran/decl.cc:9018 fortran/decl.cc:9058 +#: fortran/decl.cc:9030 fortran/decl.cc:9070 #, gcc-internal-format, gfc-internal-format msgid "Expected variable name at %C" msgstr "" -#: fortran/decl.cc:9034 +#: fortran/decl.cc:9046 #, gcc-internal-format, gfc-internal-format msgid "Cray pointer at %C must be an integer" msgstr "" -#: fortran/decl.cc:9038 +#: fortran/decl.cc:9050 #, gcc-internal-format, gfc-internal-format msgid "" "Cray pointer at %C has %d bytes of precision; memory addresses require %d " "bytes" msgstr "" -#: fortran/decl.cc:9044 +#: fortran/decl.cc:9056 #, gcc-internal-format, gfc-internal-format msgid "Expected \",\" at %C" msgstr "" -#: fortran/decl.cc:9083 +#: fortran/decl.cc:9095 #, gcc-internal-format msgid "Cannot set Cray pointee array spec." msgstr "" -#: fortran/decl.cc:9087 +#: fortran/decl.cc:9099 #, gcc-internal-format, gfc-internal-format msgid "Duplicate array spec for Cray pointee at %C" msgstr "" -#: fortran/decl.cc:9107 +#: fortran/decl.cc:9119 #, gcc-internal-format, gfc-internal-format msgid "Expected \")\" at %C" msgstr "" -#: fortran/decl.cc:9119 +#: fortran/decl.cc:9131 #, gcc-internal-format msgid "Expected %<,%> or end of statement at %C" msgstr "" -#: fortran/decl.cc:9145 +#: fortran/decl.cc:9157 #, gcc-internal-format, gfc-internal-format msgid "INTENT is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/decl.cc:9177 +#: fortran/decl.cc:9189 #, gcc-internal-format, gfc-internal-format msgid "OPTIONAL is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/decl.cc:9196 +#: fortran/decl.cc:9208 #, gcc-internal-format msgid "Cray pointer declaration at %C requires %<-fcray-pointer%> flag" msgstr "" -#: fortran/decl.cc:9235 +#: fortran/decl.cc:9247 #, gcc-internal-format, gfc-internal-format msgid "CONTIGUOUS statement at %C" msgstr "" -#: fortran/decl.cc:9333 +#: fortran/decl.cc:9345 #, gcc-internal-format, gfc-internal-format msgid "" "Access specification of the %s operator at %C has already been specified" msgstr "" -#: fortran/decl.cc:9349 +#: fortran/decl.cc:9361 #, gcc-internal-format, gfc-internal-format msgid "" "Access specification of the .%s. operator at %C has already been specified" msgstr "" -#: fortran/decl.cc:9397 +#: fortran/decl.cc:9409 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED statement at %C" msgstr "" -#: fortran/decl.cc:9431 +#: fortran/decl.cc:9443 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in PROTECTED statement at %C" msgstr "" -#: fortran/decl.cc:9458 fortran/decl.cc:9483 +#: fortran/decl.cc:9470 fortran/decl.cc:9495 #, gcc-internal-format, gfc-internal-format msgid "" "PRIVATE statement at %C is only allowed in the specification part of a module" msgstr "" -#: fortran/decl.cc:9504 fortran/decl.cc:9524 +#: fortran/decl.cc:9516 fortran/decl.cc:9536 #, gcc-internal-format, gfc-internal-format msgid "" "PUBLIC statement at %C is only allowed in the specification part of a module" msgstr "" -#: fortran/decl.cc:9546 +#: fortran/decl.cc:9558 #, gcc-internal-format, gfc-internal-format msgid "Expected variable name at %C in PARAMETER statement" msgstr "" -#: fortran/decl.cc:9553 +#: fortran/decl.cc:9565 #, gcc-internal-format, gfc-internal-format msgid "Expected = sign in PARAMETER statement at %C" msgstr "" -#: fortran/decl.cc:9559 +#: fortran/decl.cc:9571 #, gcc-internal-format, gfc-internal-format msgid "Expected expression at %C in PARAMETER statement" msgstr "" -#: fortran/decl.cc:9579 +#: fortran/decl.cc:9591 #, gcc-internal-format, gfc-internal-format msgid "Initializing already initialized variable at %C" msgstr "" #. With legacy PARAMETER statements, don't expect a terminating ')'. -#: fortran/decl.cc:9604 +#: fortran/decl.cc:9616 #, gcc-internal-format, gfc-internal-format msgid "PARAMETER without '()' at %C" msgstr "" -#: fortran/decl.cc:9620 +#: fortran/decl.cc:9632 #, gcc-internal-format, gfc-internal-format msgid "Unexpected characters in PARAMETER statement at %C" msgstr "" -#: fortran/decl.cc:9639 fortran/decl.cc:9695 +#: fortran/decl.cc:9651 fortran/decl.cc:9707 #, gcc-internal-format msgid "%s at %C is a DEC extension, enable with %<-fdec-static%>" msgstr "" -#: fortran/decl.cc:9674 +#: fortran/decl.cc:9686 #, gcc-internal-format, gfc-internal-format msgid "Expected entity-list in AUTOMATIC statement at %C" msgstr "" -#: fortran/decl.cc:9681 +#: fortran/decl.cc:9693 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in AUTOMATIC statement at %C" msgstr "" -#: fortran/decl.cc:9730 +#: fortran/decl.cc:9742 #, gcc-internal-format, gfc-internal-format msgid "Expected entity-list in STATIC statement at %C" msgstr "" -#: fortran/decl.cc:9737 +#: fortran/decl.cc:9749 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in STATIC statement at %C" msgstr "" -#: fortran/decl.cc:9756 +#: fortran/decl.cc:9768 #, gcc-internal-format, gfc-internal-format msgid "Blanket SAVE statement at %C follows previous SAVE statement" msgstr "" -#: fortran/decl.cc:9767 +#: fortran/decl.cc:9779 #, gcc-internal-format, gfc-internal-format msgid "SAVE statement at %C follows blanket SAVE statement" msgstr "" -#: fortran/decl.cc:9802 +#: fortran/decl.cc:9814 #, gcc-internal-format msgid "SAVE of COMMON block %qs at %C is not allowed in a BLOCK construct" msgstr "" -#: fortran/decl.cc:9824 +#: fortran/decl.cc:9836 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in SAVE statement at %C" msgstr "" -#: fortran/decl.cc:9841 +#: fortran/decl.cc:9853 #, gcc-internal-format, gfc-internal-format msgid "VALUE is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/decl.cc:9845 +#: fortran/decl.cc:9857 #, gcc-internal-format, gfc-internal-format msgid "VALUE statement at %C" msgstr "" -#: fortran/decl.cc:9883 +#: fortran/decl.cc:9895 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in VALUE statement at %C" msgstr "" -#: fortran/decl.cc:9895 +#: fortran/decl.cc:9907 #, gcc-internal-format, gfc-internal-format msgid "VOLATILE statement at %C" msgstr "" -#: fortran/decl.cc:9922 +#: fortran/decl.cc:9934 #, gcc-internal-format msgid "" "Specifying VOLATILE for coarray variable %qs at %C, which is use-/host-" "associated" msgstr "" -#: fortran/decl.cc:9947 +#: fortran/decl.cc:9959 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in VOLATILE statement at %C" msgstr "" -#: fortran/decl.cc:9959 +#: fortran/decl.cc:9971 #, gcc-internal-format, gfc-internal-format msgid "ASYNCHRONOUS statement at %C" msgstr "" -#: fortran/decl.cc:10003 +#: fortran/decl.cc:10015 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in ASYNCHRONOUS statement at %C" msgstr "" -#: fortran/decl.cc:10028 +#: fortran/decl.cc:10040 #, gcc-internal-format, gfc-internal-format msgid "MODULE PROCEDURE declaration at %C" msgstr "" -#: fortran/decl.cc:10139 +#: fortran/decl.cc:10151 #, gcc-internal-format, gfc-internal-format msgid "MODULE PROCEDURE at %C must be in a generic module interface" msgstr "" -#: fortran/decl.cc:10197 +#: fortran/decl.cc:10209 #, gcc-internal-format, gfc-internal-format msgid "Intrinsic procedure at %L cannot be a MODULE PROCEDURE" msgstr "" -#: fortran/decl.cc:10246 +#: fortran/decl.cc:10258 #, gcc-internal-format, gfc-internal-format msgid "Ambiguous symbol in TYPE definition at %C" msgstr "" -#: fortran/decl.cc:10255 +#: fortran/decl.cc:10267 #, gcc-internal-format msgid "Symbol %qs at %C has not been previously defined" msgstr "" -#: fortran/decl.cc:10261 +#: fortran/decl.cc:10273 #, gcc-internal-format msgid "%qs in EXTENDS expression at %C is not a derived type" msgstr "" -#: fortran/decl.cc:10268 +#: fortran/decl.cc:10280 #, gcc-internal-format msgid "%qs cannot be extended at %C because it is BIND(C)" msgstr "" -#: fortran/decl.cc:10275 +#: fortran/decl.cc:10287 #, gcc-internal-format msgid "%qs cannot be extended at %C because it is a SEQUENCE type" msgstr "" -#: fortran/decl.cc:10298 +#: fortran/decl.cc:10310 #, gcc-internal-format, gfc-internal-format msgid "" "Derived type at %C can only be PRIVATE in the specification part of a module" msgstr "" -#: fortran/decl.cc:10310 +#: fortran/decl.cc:10322 #, gcc-internal-format, gfc-internal-format msgid "" "Derived type at %C can only be PUBLIC in the specification part of a module" msgstr "" -#: fortran/decl.cc:10331 +#: fortran/decl.cc:10343 #, gcc-internal-format, gfc-internal-format msgid "ABSTRACT type at %C" msgstr "" -#: fortran/decl.cc:10377 +#: fortran/decl.cc:10389 #, gcc-internal-format, gfc-internal-format msgid "Failed to create structure type '%s' at %C" msgstr "" -#: fortran/decl.cc:10383 +#: fortran/decl.cc:10395 #, gcc-internal-format msgid "Type definition of %qs at %C was already defined at %L" msgstr "" -#: fortran/decl.cc:10430 +#: fortran/decl.cc:10442 #, gcc-internal-format, gfc-internal-format msgid "Junk after MAP statement at %C" msgstr "" -#: fortran/decl.cc:10463 +#: fortran/decl.cc:10475 #, gcc-internal-format, gfc-internal-format msgid "Junk after UNION statement at %C" msgstr "" -#: fortran/decl.cc:10498 +#: fortran/decl.cc:10510 #, gcc-internal-format msgid "%s at %C is a DEC extension, enable with %<-fdec-structure%>" msgstr "" -#: fortran/decl.cc:10512 +#: fortran/decl.cc:10524 #, gcc-internal-format, gfc-internal-format msgid "Structure name expected in non-nested structure declaration at %C" msgstr "" -#: fortran/decl.cc:10530 +#: fortran/decl.cc:10542 #, gcc-internal-format, gfc-internal-format msgid "Junk after non-nested STRUCTURE statement at %C" msgstr "" -#: fortran/decl.cc:10537 +#: fortran/decl.cc:10549 #, gcc-internal-format msgid "Structure name %qs at %C cannot be the same as an intrinsic type" msgstr "" -#: fortran/decl.cc:10700 +#: fortran/decl.cc:10712 #, gcc-internal-format, gfc-internal-format msgid "Expected :: in TYPE definition at %C" msgstr "" -#: fortran/decl.cc:10713 +#: fortran/decl.cc:10725 #, gcc-internal-format, gfc-internal-format msgid "Mangled derived type definition at %C" msgstr "" -#: fortran/decl.cc:10742 +#: fortran/decl.cc:10754 #, gcc-internal-format msgid "Type name %qs at %C cannot be the same as an intrinsic type" msgstr "" -#: fortran/decl.cc:10753 +#: fortran/decl.cc:10765 #, gcc-internal-format msgid "Derived type name %qs at %C already has a basic type of %s" msgstr "" -#: fortran/decl.cc:10756 +#: fortran/decl.cc:10768 #, gcc-internal-format msgid "Derived type name %qs at %C already has a basic type" msgstr "" -#: fortran/decl.cc:10771 +#: fortran/decl.cc:10783 #, gcc-internal-format msgid "Dummy argument %qs at %L cannot be a derived type at %C" msgstr "" -#: fortran/decl.cc:10780 +#: fortran/decl.cc:10792 #, gcc-internal-format msgid "Derived type definition of %qs at %C has already been defined" msgstr "" -#: fortran/decl.cc:10843 +#: fortran/decl.cc:10855 #, gcc-internal-format, gfc-internal-format msgid "Garbage after PARAMETERIZED TYPE declaration at %C" msgstr "" -#: fortran/decl.cc:10926 +#: fortran/decl.cc:10938 #, gcc-internal-format, gfc-internal-format msgid "Cray Pointee at %C cannot be assumed shape array" msgstr "" -#: fortran/decl.cc:10946 +#: fortran/decl.cc:10958 #, gcc-internal-format, gfc-internal-format msgid "ENUM and ENUMERATOR at %C" msgstr "" -#: fortran/decl.cc:10978 +#: fortran/decl.cc:10990 #, gcc-internal-format, gfc-internal-format msgid "Enumerator exceeds the C integer type at %C" msgstr "" -#: fortran/decl.cc:11057 +#: fortran/decl.cc:11069 #, gcc-internal-format, gfc-internal-format msgid "ENUMERATOR %L not initialized with integer expression" msgstr "" -#: fortran/decl.cc:11105 +#: fortran/decl.cc:11117 #, gcc-internal-format, gfc-internal-format msgid "ENUM definition statement expected before %C" msgstr "" -#: fortran/decl.cc:11141 +#: fortran/decl.cc:11153 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in ENUMERATOR definition at %C" msgstr "" -#: fortran/decl.cc:11188 fortran/decl.cc:11203 +#: fortran/decl.cc:11200 fortran/decl.cc:11215 #, gcc-internal-format, gfc-internal-format msgid "Duplicate access-specifier at %C" msgstr "" -#: fortran/decl.cc:11223 +#: fortran/decl.cc:11235 #, gcc-internal-format, gfc-internal-format msgid "Binding attributes already specify passing, illegal NOPASS at %C" msgstr "" -#: fortran/decl.cc:11243 +#: fortran/decl.cc:11255 #, gcc-internal-format, gfc-internal-format msgid "Binding attributes already specify passing, illegal PASS at %C" msgstr "" -#: fortran/decl.cc:11270 +#: fortran/decl.cc:11282 #, gcc-internal-format, gfc-internal-format msgid "Duplicate POINTER attribute at %C" msgstr "" -#: fortran/decl.cc:11288 +#: fortran/decl.cc:11300 #, gcc-internal-format, gfc-internal-format msgid "Duplicate NON_OVERRIDABLE at %C" msgstr "" -#: fortran/decl.cc:11304 +#: fortran/decl.cc:11316 #, gcc-internal-format, gfc-internal-format msgid "Duplicate DEFERRED at %C" msgstr "" -#: fortran/decl.cc:11317 +#: fortran/decl.cc:11329 #, gcc-internal-format, gfc-internal-format msgid "Expected access-specifier at %C" msgstr "" -#: fortran/decl.cc:11319 +#: fortran/decl.cc:11331 #, gcc-internal-format, gfc-internal-format msgid "Expected binding attribute at %C" msgstr "" -#: fortran/decl.cc:11327 +#: fortran/decl.cc:11339 #, gcc-internal-format, gfc-internal-format msgid "NON_OVERRIDABLE and DEFERRED cannot both appear at %C" msgstr "" -#: fortran/decl.cc:11340 +#: fortran/decl.cc:11352 #, gcc-internal-format, gfc-internal-format msgid "POINTER attribute is required for procedure pointer component at %C" msgstr "" -#: fortran/decl.cc:11382 +#: fortran/decl.cc:11394 #, gcc-internal-format msgid "Interface-name expected after %<(%> at %C" msgstr "" -#: fortran/decl.cc:11388 +#: fortran/decl.cc:11400 #, gcc-internal-format msgid "%<)%> expected at %C" msgstr "" -#: fortran/decl.cc:11408 +#: fortran/decl.cc:11420 #, gcc-internal-format, gfc-internal-format msgid "Interface must be specified for DEFERRED binding at %C" msgstr "" -#: fortran/decl.cc:11413 +#: fortran/decl.cc:11425 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE(interface) at %C should be declared DEFERRED" msgstr "" -#: fortran/decl.cc:11436 +#: fortran/decl.cc:11448 #, gcc-internal-format, gfc-internal-format msgid "Expected binding name at %C" msgstr "" -#: fortran/decl.cc:11440 +#: fortran/decl.cc:11452 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE list at %C" msgstr "" -#: fortran/decl.cc:11452 +#: fortran/decl.cc:11464 #, gcc-internal-format msgid "%<=> target%> is invalid for DEFERRED binding at %C" msgstr "" -#: fortran/decl.cc:11458 +#: fortran/decl.cc:11470 #, gcc-internal-format msgid "%<::%> needed in PROCEDURE binding with explicit target at %C" msgstr "" -#: fortran/decl.cc:11468 +#: fortran/decl.cc:11480 #, gcc-internal-format msgid "Expected binding target after %<=>%> at %C" msgstr "" -#: fortran/decl.cc:11485 +#: fortran/decl.cc:11497 #, gcc-internal-format msgid "Type %qs containing DEFERRED binding at %C is not ABSTRACT" msgstr "" -#: fortran/decl.cc:11496 +#: fortran/decl.cc:11508 #, gcc-internal-format msgid "" "There is already a procedure with binding name %qs for the derived type %qs " "at %C" msgstr "" -#: fortran/decl.cc:11547 +#: fortran/decl.cc:11559 #, gcc-internal-format, gfc-internal-format msgid "GENERIC at %C must be inside a derived-type CONTAINS" msgstr "" -#: fortran/decl.cc:11567 +#: fortran/decl.cc:11579 #, gcc-internal-format msgid "Expected %<::%> at %C" msgstr "" -#: fortran/decl.cc:11579 +#: fortran/decl.cc:11591 #, gcc-internal-format, gfc-internal-format msgid "Expected generic name or operator descriptor at %C" msgstr "" -#: fortran/decl.cc:11600 +#: fortran/decl.cc:11612 #, gcc-internal-format, gfc-internal-format msgid "Malformed GENERIC statement at %C" msgstr "" -#: fortran/decl.cc:11611 +#: fortran/decl.cc:11623 #, gcc-internal-format msgid "Expected %<=>%> at %C" msgstr "" -#: fortran/decl.cc:11647 +#: fortran/decl.cc:11659 #, gcc-internal-format msgid "" "There's already a non-generic procedure with binding name %qs for the " "derived type %qs at %C" msgstr "" -#: fortran/decl.cc:11655 +#: fortran/decl.cc:11667 #, gcc-internal-format msgid "Binding at %C must have the same access as already defined binding %qs" msgstr "" -#: fortran/decl.cc:11703 +#: fortran/decl.cc:11715 #, gcc-internal-format, gfc-internal-format msgid "Expected specific binding name at %C" msgstr "" -#: fortran/decl.cc:11713 +#: fortran/decl.cc:11725 #, gcc-internal-format msgid "%qs already defined as specific binding for the generic %qs at %C" msgstr "" -#: fortran/decl.cc:11731 +#: fortran/decl.cc:11743 #, gcc-internal-format, gfc-internal-format msgid "Junk after GENERIC binding at %C" msgstr "" -#: fortran/decl.cc:11766 +#: fortran/decl.cc:11778 #, gcc-internal-format, gfc-internal-format msgid "FINAL declaration at %C must be inside a derived type CONTAINS section" msgstr "" -#: fortran/decl.cc:11778 +#: fortran/decl.cc:11790 #, gcc-internal-format, gfc-internal-format msgid "" "Derived type declaration with FINAL at %C must be in the specification part " "of a MODULE" msgstr "" -#: fortran/decl.cc:11800 +#: fortran/decl.cc:11812 #, gcc-internal-format, gfc-internal-format msgid "Empty FINAL at %C" msgstr "" -#: fortran/decl.cc:11807 +#: fortran/decl.cc:11819 #, gcc-internal-format, gfc-internal-format msgid "Expected module procedure name at %C" msgstr "" -#: fortran/decl.cc:11817 +#: fortran/decl.cc:11829 #, gcc-internal-format msgid "Expected %<,%> at %C" msgstr "" -#: fortran/decl.cc:11823 +#: fortran/decl.cc:11835 #, gcc-internal-format msgid "Unknown procedure name %qs at %C" msgstr "" -#: fortran/decl.cc:11836 +#: fortran/decl.cc:11848 #, gcc-internal-format msgid "%qs at %C is already defined as FINAL procedure" msgstr "" -#: fortran/decl.cc:11910 +#: fortran/decl.cc:11922 #, gcc-internal-format, gfc-internal-format msgid "Unknown attribute in !GCC$ ATTRIBUTES statement at %C" msgstr "" -#: fortran/decl.cc:11956 +#: fortran/decl.cc:11968 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ ATTRIBUTES statement at %C" msgstr "" -#: fortran/decl.cc:11977 +#: fortran/decl.cc:11989 #, gcc-internal-format msgid "" "%<GCC unroll%> directive requires a non-negative integral constant less than " "or equal to %u at %C" msgstr "" -#: fortran/decl.cc:11991 +#: fortran/decl.cc:12003 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ UNROLL directive at %C" msgstr "" -#: fortran/decl.cc:12055 +#: fortran/decl.cc:12067 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ IVDEP directive at %C" msgstr "" -#: fortran/decl.cc:12072 +#: fortran/decl.cc:12084 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ VECTOR directive at %C" msgstr "" -#: fortran/decl.cc:12089 +#: fortran/decl.cc:12101 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ NOVECTOR directive at %C" msgstr "" @@ -77177,12 +77368,12 @@ msgstr "" msgid "show_expr(): Don't know how to show expr" msgstr "" -#: fortran/dump-parse-tree.cc:3893 +#: fortran/dump-parse-tree.cc:3928 #, gcc-internal-format msgid "show_code_node(): Bad statement code" msgstr "" -#: fortran/dump-parse-tree.cc:4356 fortran/dump-parse-tree.cc:4450 +#: fortran/dump-parse-tree.cc:4391 fortran/dump-parse-tree.cc:4485 #, gcc-internal-format msgid "Cannot convert %qs to interoperable type at %L" msgstr "" @@ -77507,161 +77698,161 @@ msgstr "" msgid "Variable type is UNKNOWN in assignment at %L" msgstr "" -#: fortran/expr.cc:3841 +#: fortran/expr.cc:3847 #, gcc-internal-format, gfc-internal-format msgid "NULL appears on right-hand side in assignment at %L" msgstr "" -#: fortran/expr.cc:3851 +#: fortran/expr.cc:3857 #, gcc-internal-format, gfc-internal-format msgid "POINTER-valued function appears on right-hand side of assignment at %L" msgstr "" -#: fortran/expr.cc:3894 +#: fortran/expr.cc:3900 #, gcc-internal-format msgid "BOZ literal constant near %L cannot be assigned to a %qs variable" msgstr "" -#: fortran/expr.cc:3901 +#: fortran/expr.cc:3907 #, gcc-internal-format, gfc-internal-format msgid "" "The assignment to a KIND or LEN component of a parameterized type at %L is " "not allowed" msgstr "" -#: fortran/expr.cc:3932 +#: fortran/expr.cc:3938 #, gcc-internal-format, gfc-internal-format msgid "" "Incompatible types in DATA statement at %L; attempted conversion of %s to %s" msgstr "" -#: fortran/expr.cc:3976 +#: fortran/expr.cc:3982 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target is not a POINTER at %L" msgstr "" -#: fortran/expr.cc:3984 +#: fortran/expr.cc:3990 #, gcc-internal-format msgid "" "%qs in the pointer assignment at %L cannot be an l-value since it is a " "procedure" msgstr "" -#: fortran/expr.cc:4008 +#: fortran/expr.cc:4014 #, gcc-internal-format msgid "Expected bounds specification for %qs at %L" msgstr "" -#: fortran/expr.cc:4013 +#: fortran/expr.cc:4019 #, gcc-internal-format msgid "Bounds specification for %qs in pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4042 +#: fortran/expr.cc:4048 #, gcc-internal-format, gfc-internal-format msgid "Stride must not be present at %L" msgstr "" -#: fortran/expr.cc:4048 fortran/expr.cc:4068 +#: fortran/expr.cc:4054 fortran/expr.cc:4074 #, gcc-internal-format msgid "" "Rank remapping requires a list of %<lower-bound : upper-bound%> " "specifications at %L" msgstr "" -#: fortran/expr.cc:4056 fortran/expr.cc:4075 +#: fortran/expr.cc:4062 fortran/expr.cc:4081 #, gcc-internal-format msgid "" "Expected list of %<lower-bound :%> or list of %<lower-bound : upper-bound%> " "specifications at %L" msgstr "" -#: fortran/expr.cc:4102 +#: fortran/expr.cc:4108 #, gcc-internal-format, gfc-internal-format msgid "Pointer object at %L shall not have a coindex" msgstr "" -#: fortran/expr.cc:4123 +#: fortran/expr.cc:4129 #, gcc-internal-format, gfc-internal-format msgid "Invalid procedure pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4148 +#: fortran/expr.cc:4154 #, gcc-internal-format msgid "" "Function result %qs is invalid as proc-target in procedure pointer " "assignment at %L" msgstr "" -#: fortran/expr.cc:4157 +#: fortran/expr.cc:4163 #, gcc-internal-format msgid "Abstract interface %qs is invalid in procedure pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4167 +#: fortran/expr.cc:4173 #, gcc-internal-format msgid "Statement function %qs is invalid in procedure pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4173 +#: fortran/expr.cc:4179 #, gcc-internal-format msgid "Internal procedure %qs is invalid in procedure pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4180 +#: fortran/expr.cc:4186 #, gcc-internal-format msgid "Intrinsic %qs at %L is invalid in procedure pointer assignment" msgstr "" -#: fortran/expr.cc:4188 +#: fortran/expr.cc:4194 #, gcc-internal-format msgid "" "Nonintrinsic elemental procedure %qs is invalid in procedure pointer " "assignment at %L" msgstr "" -#: fortran/expr.cc:4211 +#: fortran/expr.cc:4217 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in the procedure pointer assignment at %L: mismatch in the calling " "convention" msgstr "" -#: fortran/expr.cc:4264 +#: fortran/expr.cc:4270 #, gcc-internal-format msgid "" "Interface mismatch in procedure pointer assignment at %L: %qs is not a " "subroutine" msgstr "" -#: fortran/expr.cc:4274 fortran/expr.cc:4289 +#: fortran/expr.cc:4280 fortran/expr.cc:4295 #, gcc-internal-format msgid "Explicit interface required for component %qs at %L: %s" msgstr "" -#: fortran/expr.cc:4280 fortran/expr.cc:4295 fortran/resolve.cc:2764 +#: fortran/expr.cc:4286 fortran/expr.cc:4301 fortran/resolve.cc:2764 #, gcc-internal-format msgid "Explicit interface required for %qs at %L: %s" msgstr "" -#: fortran/expr.cc:4307 +#: fortran/expr.cc:4313 #, gcc-internal-format, gfc-internal-format msgid "Interface mismatch in procedure pointer assignment at %L: %s" msgstr "" -#: fortran/expr.cc:4316 +#: fortran/expr.cc:4322 #, gcc-internal-format msgid "" "Procedure pointer target %qs at %L must be either an intrinsic, host or use " "associated, referenced or have the EXTERNAL attribute" msgstr "" -#: fortran/expr.cc:4329 +#: fortran/expr.cc:4335 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target cannot be a constant at %L" msgstr "" -#: fortran/expr.cc:4343 +#: fortran/expr.cc:4349 #, gcc-internal-format, gfc-internal-format msgid "" "Data-pointer-object at %L must be unlimited polymorphic, or of a type with " @@ -77669,46 +77860,46 @@ msgid "" "polymorphic target" msgstr "" -#: fortran/expr.cc:4348 +#: fortran/expr.cc:4354 #, gcc-internal-format, gfc-internal-format msgid "" "Different types in pointer assignment at %L; attempted assignment of %s to %s" msgstr "" -#: fortran/expr.cc:4356 +#: fortran/expr.cc:4362 #, gcc-internal-format, gfc-internal-format msgid "Different kind type parameters in pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4363 +#: fortran/expr.cc:4369 #, gcc-internal-format, gfc-internal-format msgid "Different ranks in pointer assignment at %L" msgstr "" -#: fortran/expr.cc:4384 +#: fortran/expr.cc:4390 #, gcc-internal-format, gfc-internal-format msgid "" "Rank remapping target is smaller than size of the pointer (%ld < %ld) at %L" msgstr "" -#: fortran/expr.cc:4400 +#: fortran/expr.cc:4406 #, gcc-internal-format, gfc-internal-format msgid "" "The assumed rank target at %L is an experimental F202y feature. Use option -" "std=f202y to enable" msgstr "" -#: fortran/expr.cc:4412 +#: fortran/expr.cc:4418 #, gcc-internal-format, gfc-internal-format msgid "Rank remapping target must be rank 1 or simply contiguous at %L" msgstr "" -#: fortran/expr.cc:4416 +#: fortran/expr.cc:4422 #, gcc-internal-format, gfc-internal-format msgid "Rank remapping target is not rank 1 at %L" msgstr "" -#: fortran/expr.cc:4423 +#: fortran/expr.cc:4429 #, gcc-internal-format, gfc-internal-format msgid "" "The data-target at %L is an assumed rank object and so the data-pointer-" @@ -77716,7 +77907,7 @@ msgid "" "dimension)" msgstr "" -#: fortran/expr.cc:4432 +#: fortran/expr.cc:4438 #, gcc-internal-format, gfc-internal-format msgid "The assumed rank data-target at %L must be contiguous" msgstr "" @@ -77724,222 +77915,222 @@ msgstr "" #. The test above might need to be extend when F08, Note 5.4 has to be #. interpreted in the way that target and pointer with the same coindex #. are allowed. -#: fortran/expr.cc:4456 fortran/expr.cc:4582 +#: fortran/expr.cc:4462 fortran/expr.cc:4588 #, gcc-internal-format, gfc-internal-format msgid "Data target at %L shall not have a coindex" msgstr "" -#: fortran/expr.cc:4459 +#: fortran/expr.cc:4465 #, gcc-internal-format, gfc-internal-format msgid "" "Target expression in pointer assignment at %L must deliver a pointer result" msgstr "" -#: fortran/expr.cc:4473 +#: fortran/expr.cc:4479 #, gcc-internal-format, gfc-internal-format msgid "" "Zero-sized array detected at %L where an entity with the TARGET attribute is " "expected" msgstr "" -#: fortran/expr.cc:4479 fortran/expr.cc:4494 +#: fortran/expr.cc:4485 fortran/expr.cc:4500 #, gcc-internal-format, gfc-internal-format msgid "" "Pointer assignment target in initialization expression does not have the " "TARGET attribute at %L" msgstr "" -#: fortran/expr.cc:4510 +#: fortran/expr.cc:4516 #, gcc-internal-format, gfc-internal-format msgid "" "Every subscript of target specification at %L must be a constant expression" msgstr "" -#: fortran/expr.cc:4521 +#: fortran/expr.cc:4527 #, gcc-internal-format, gfc-internal-format msgid "" "Substring starting and ending points of target specification at %L must be " "constant expressions" msgstr "" -#: fortran/expr.cc:4537 +#: fortran/expr.cc:4543 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target is neither TARGET nor POINTER at %L" msgstr "" -#: fortran/expr.cc:4552 +#: fortran/expr.cc:4558 #, gcc-internal-format, gfc-internal-format msgid "Bad target in pointer assignment in PURE procedure at %L" msgstr "" -#: fortran/expr.cc:4561 +#: fortran/expr.cc:4567 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment with vector subscript on rhs at %L" msgstr "" -#: fortran/expr.cc:4569 +#: fortran/expr.cc:4575 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target has PROTECTED attribute at %L" msgstr "" -#: fortran/expr.cc:4597 fortran/expr.cc:4602 +#: fortran/expr.cc:4603 fortran/expr.cc:4608 #, gcc-internal-format, gfc-internal-format msgid "Assignment to contiguous pointer from non-contiguous target at %L" msgstr "" -#: fortran/expr.cc:4642 +#: fortran/expr.cc:4648 #, gcc-internal-format, gfc-internal-format msgid "Pointer at %L in pointer assignment might outlive the pointer target" msgstr "" -#: fortran/expr.cc:4722 fortran/resolve.cc:1573 +#: fortran/expr.cc:4728 fortran/resolve.cc:1573 #, gcc-internal-format, gfc-internal-format msgid "Pointer initialization target at %L must not be ALLOCATABLE" msgstr "" -#: fortran/expr.cc:4728 +#: fortran/expr.cc:4734 #, gcc-internal-format, gfc-internal-format msgid "Pointer initialization target at %L must have the TARGET attribute" msgstr "" -#: fortran/expr.cc:4743 fortran/resolve.cc:1579 +#: fortran/expr.cc:4749 fortran/resolve.cc:1579 #, gcc-internal-format, gfc-internal-format msgid "Pointer initialization target at %L must have the SAVE attribute" msgstr "" -#: fortran/expr.cc:4755 +#: fortran/expr.cc:4761 #, gcc-internal-format, gfc-internal-format msgid "" "Procedure pointer initialization target at %L may not be a procedure pointer" msgstr "" -#: fortran/expr.cc:4761 +#: fortran/expr.cc:4767 #, gcc-internal-format msgid "" "Internal procedure %qs is invalid in procedure pointer initialization at %L" msgstr "" -#: fortran/expr.cc:4768 +#: fortran/expr.cc:4774 #, gcc-internal-format msgid "" "Dummy procedure %qs is invalid in procedure pointer initialization at %L" msgstr "" -#: fortran/expr.cc:5252 +#: fortran/expr.cc:5258 #, gcc-internal-format msgid "" "generate_isocbinding_initializer(): bad iso_c_binding type, expected " "%<c_ptr%> or %<c_funptr%>" msgstr "" -#: fortran/expr.cc:6385 +#: fortran/expr.cc:6391 #, gcc-internal-format, gfc-internal-format msgid "" "Fortran 2008: Pointer functions in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6393 +#: fortran/expr.cc:6399 #, gcc-internal-format, gfc-internal-format msgid "Non-variable expression in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6401 +#: fortran/expr.cc:6407 #, gcc-internal-format msgid "Named constant %qs in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6412 +#: fortran/expr.cc:6418 #, gcc-internal-format msgid "%qs in variable definition context (%s) at %L is not a variable" msgstr "" -#: fortran/expr.cc:6423 +#: fortran/expr.cc:6429 #, gcc-internal-format, gfc-internal-format msgid "Non-POINTER in pointer association context (%s) at %L" msgstr "" -#: fortran/expr.cc:6432 +#: fortran/expr.cc:6438 #, gcc-internal-format, gfc-internal-format msgid "Type inaccessible in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6445 +#: fortran/expr.cc:6451 #, gcc-internal-format, gfc-internal-format msgid "LOCK_TYPE in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6458 +#: fortran/expr.cc:6464 #, gcc-internal-format, gfc-internal-format msgid "LOCK_EVENT in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6489 +#: fortran/expr.cc:6495 #, gcc-internal-format msgid "%qs parameter inquiry for %qs in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6506 +#: fortran/expr.cc:6512 #, gcc-internal-format msgid "" "Dummy argument %qs with INTENT(IN) in pointer association context (%s) at %L" msgstr "" -#: fortran/expr.cc:6516 +#: fortran/expr.cc:6522 #, gcc-internal-format msgid "" "Dummy argument %qs with INTENT(IN) in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.cc:6532 +#: fortran/expr.cc:6538 #, gcc-internal-format msgid "" "Variable %qs is PROTECTED and cannot appear in a pointer association context " "(%s) at %L" msgstr "" -#: fortran/expr.cc:6540 +#: fortran/expr.cc:6546 #, gcc-internal-format msgid "" "Variable %qs is PROTECTED and cannot appear in a variable definition context " "(%s) at %L" msgstr "" -#: fortran/expr.cc:6555 +#: fortran/expr.cc:6561 #, gcc-internal-format msgid "" "Variable %qs cannot appear in a variable definition context (%s) at %L in " "PURE procedure" msgstr "" -#: fortran/expr.cc:6615 fortran/expr.cc:6636 +#: fortran/expr.cc:6621 fortran/expr.cc:6642 #, gcc-internal-format msgid "" "%qs at %L associated to vector-indexed target cannot be used in a variable " "definition context (%s)" msgstr "" -#: fortran/expr.cc:6620 +#: fortran/expr.cc:6626 #, gcc-internal-format msgid "" "%qs at %L associated to expression cannot be used in a variable definition " "context (%s)" msgstr "" -#: fortran/expr.cc:6629 +#: fortran/expr.cc:6635 #, gcc-internal-format msgid "" "%qs at %L associated to pointer function target being used in a variable " "definition context (%s)" msgstr "" -#: fortran/expr.cc:6648 +#: fortran/expr.cc:6654 #, gcc-internal-format msgid "" "Associate-name %qs cannot appear in a variable definition context (%s) at %L " "because its target at %L cannot, either" msgstr "" -#: fortran/expr.cc:6690 +#: fortran/expr.cc:6696 #, gcc-internal-format, gfc-internal-format msgid "" "Elements with the same value at %L and %L in vector subscript in a variable " @@ -77963,7 +78154,7 @@ msgstr "" #: fortran/frontend-passes.cc:874 fortran/trans-array.cc:1565 #: fortran/trans-array.cc:7434 fortran/trans-array.cc:9248 -#: fortran/trans-intrinsic.cc:8570 +#: fortran/trans-intrinsic.cc:8576 #, gcc-internal-format, gfc-internal-format msgid "Creating array temporary at %L" msgstr "" @@ -78074,7 +78265,7 @@ msgstr "" msgid "Interchanging loops at %L" msgstr "" -#: fortran/frontend-passes.cc:5827 +#: fortran/frontend-passes.cc:5828 #, gcc-internal-format, gfc-internal-format msgid "%s between %L and %L" msgstr "" @@ -78198,12 +78389,12 @@ msgstr "" msgid "Second argument of defined assignment at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.cc:1042 fortran/resolve.cc:19107 +#: fortran/interface.cc:1042 fortran/resolve.cc:19225 #, gcc-internal-format, gfc-internal-format msgid "First argument of operator interface at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.cc:1049 fortran/resolve.cc:19125 +#: fortran/interface.cc:1049 fortran/resolve.cc:19243 #, gcc-internal-format, gfc-internal-format msgid "Second argument of operator interface at %L must be INTENT(IN)" msgstr "" @@ -78346,7 +78537,7 @@ msgid "Interface mismatch in dummy procedure at %L conflicts with %L: %s" msgstr "" #: fortran/interface.cc:2484 fortran/interface.cc:2500 -#: fortran/interface.cc:2573 +#: fortran/interface.cc:2590 #, gcc-internal-format msgid "Interface mismatch in dummy procedure %qs at %L: %s" msgstr "" @@ -78361,55 +78552,60 @@ msgstr "" msgid "Passing global function %qs declared at %L as subroutine at %L" msgstr "" -#: fortran/interface.cc:2540 +#: fortran/interface.cc:2539 +#, gcc-internal-format, gfc-internal-format +msgid "Mismatch between subroutine and function at %L" +msgstr "" + +#: fortran/interface.cc:2548 #, gcc-internal-format msgid "Type mismatch at %L passing global function %qs declared at %L (%s/%s)" msgstr "" -#: fortran/interface.cc:2584 +#: fortran/interface.cc:2601 #, gcc-internal-format msgid "" "Actual argument to contiguous pointer dummy %qs at %L must be simply " "contiguous" msgstr "" -#: fortran/interface.cc:2607 +#: fortran/interface.cc:2624 #, gcc-internal-format, gfc-internal-format msgid "" "Type mismatch between actual argument at %L and actual argument at %L (%s/" "%s)." msgstr "" -#: fortran/interface.cc:2617 +#: fortran/interface.cc:2634 #, gcc-internal-format msgid "Type mismatch in argument %qs at %L; passed %s to %s" msgstr "" -#: fortran/interface.cc:2627 +#: fortran/interface.cc:2644 #, gcc-internal-format msgid "" "Assumed-type actual argument at %L requires that dummy argument %qs is of " "assumed type" msgstr "" -#: fortran/interface.cc:2641 +#: fortran/interface.cc:2658 #, gcc-internal-format msgid "" "Assumed-type actual argument at %L corresponding to assumed-rank dummy " "argument %qs must be assumed-shape or assumed-rank" msgstr "" -#: fortran/interface.cc:2658 +#: fortran/interface.cc:2675 #, gcc-internal-format msgid "Actual argument to %qs at %L must be polymorphic" msgstr "" -#: fortran/interface.cc:2668 +#: fortran/interface.cc:2685 #, gcc-internal-format msgid "Actual argument to %qs at %L must have the same declared type" msgstr "" -#: fortran/interface.cc:2683 +#: fortran/interface.cc:2700 #, gcc-internal-format msgid "" "Actual argument to %qs at %L must be unlimited polymorphic since the formal " @@ -78417,38 +78613,38 @@ msgid "" "12.5.2.5]" msgstr "" -#: fortran/interface.cc:2699 +#: fortran/interface.cc:2716 #, gcc-internal-format msgid "Actual argument to %qs at %L must be a coarray" msgstr "" -#: fortran/interface.cc:2721 +#: fortran/interface.cc:2738 #, gcc-internal-format msgid "Corank mismatch in argument %qs at %L (%d and %d)" msgstr "" -#: fortran/interface.cc:2739 +#: fortran/interface.cc:2756 #, gcc-internal-format msgid "" "Actual argument to %qs at %L must be simply contiguous or an element of such " "an array" msgstr "" -#: fortran/interface.cc:2754 +#: fortran/interface.cc:2771 #, gcc-internal-format msgid "" "Actual argument to non-INTENT(INOUT) dummy %qs at %L, which is LOCK_TYPE or " "has a LOCK_TYPE component" msgstr "" -#: fortran/interface.cc:2769 +#: fortran/interface.cc:2786 #, gcc-internal-format msgid "" "Actual argument to non-INTENT(INOUT) dummy %qs at %L, which is EVENT_TYPE or " "has a EVENT_TYPE component" msgstr "" -#: fortran/interface.cc:2788 +#: fortran/interface.cc:2805 #, gcc-internal-format msgid "" "Dummy argument %qs has to be a pointer, assumed-shape or assumed-rank array " @@ -78456,250 +78652,250 @@ msgid "" "contiguous and both are ASYNCHRONOUS or VOLATILE" msgstr "" -#: fortran/interface.cc:2801 +#: fortran/interface.cc:2818 #, gcc-internal-format msgid "" "Passing coarray at %L to allocatable, noncoarray, INTENT(OUT) dummy argument " "%qs" msgstr "" -#: fortran/interface.cc:2808 +#: fortran/interface.cc:2825 #, gcc-internal-format msgid "" "Passing coarray at %L to allocatable, noncoarray dummy argument %qs, which " "is invalid if the allocation status is modified" msgstr "" -#: fortran/interface.cc:2895 +#: fortran/interface.cc:2912 #, gcc-internal-format msgid "Polymorphic scalar passed to array dummy argument %qs at %L" msgstr "" -#: fortran/interface.cc:2906 +#: fortran/interface.cc:2923 #, gcc-internal-format, gfc-internal-format msgid "" "Element of assumed-shape or pointer array as actual argument at %L cannot " "correspond to actual argument at %L" msgstr "" -#: fortran/interface.cc:2911 +#: fortran/interface.cc:2928 #, gcc-internal-format msgid "" "Element of assumed-shape or pointer array passed to array dummy argument %qs " "at %L" msgstr "" -#: fortran/interface.cc:2924 +#: fortran/interface.cc:2941 #, gcc-internal-format msgid "" "Extension: Scalar non-default-kind, non-C_CHAR-kind CHARACTER actual " "argument with array dummy argument %qs at %L" msgstr "" -#: fortran/interface.cc:2932 +#: fortran/interface.cc:2949 #, gcc-internal-format msgid "" "Fortran 2003: Scalar CHARACTER actual argument with array dummy argument %qs " "at %L" msgstr "" -#: fortran/interface.cc:3321 +#: fortran/interface.cc:3338 #, gcc-internal-format msgid "Keyword argument %qs at %L is invalid in a statement function" msgstr "" -#: fortran/interface.cc:3344 +#: fortran/interface.cc:3361 #, gcc-internal-format msgid "Keyword argument %qs at %L is not in the procedure; did you mean %qs?" msgstr "" -#: fortran/interface.cc:3348 +#: fortran/interface.cc:3365 #, gcc-internal-format msgid "Keyword argument %qs at %L is not in the procedure" msgstr "" -#: fortran/interface.cc:3357 +#: fortran/interface.cc:3374 #, gcc-internal-format msgid "" "Keyword argument %qs at %L is already associated with another actual argument" msgstr "" -#: fortran/interface.cc:3367 +#: fortran/interface.cc:3384 #, gcc-internal-format, gfc-internal-format msgid "More actual than formal arguments in procedure call at %L" msgstr "" -#: fortran/interface.cc:3380 +#: fortran/interface.cc:3397 #, gcc-internal-format, gfc-internal-format msgid "Missing alternate return specifier in subroutine call at %L" msgstr "" -#: fortran/interface.cc:3394 +#: fortran/interface.cc:3415 #, gcc-internal-format, gfc-internal-format msgid "Unexpected alternate return specifier in subroutine call at %L" msgstr "" -#: fortran/interface.cc:3417 +#: fortran/interface.cc:3438 #, gcc-internal-format msgid "" "Intrinsic %<NULL()%> without %<MOLD%> argument at %L passed to assumed-rank " "dummy %qs" msgstr "" -#: fortran/interface.cc:3430 +#: fortran/interface.cc:3451 #, gcc-internal-format msgid "" "The assumed-size dummy %qs is being passed at %L to an assumed-rank dummy %qs" msgstr "" -#: fortran/interface.cc:3441 +#: fortran/interface.cc:3462 #, gcc-internal-format msgid "" "Intrinsic %<NULL()%> without %<MOLD%> argument at %L passed to assumed-" "length dummy %qs" msgstr "" -#: fortran/interface.cc:3481 +#: fortran/interface.cc:3502 #, gcc-internal-format msgid "Unexpected NULL() intrinsic at %L to dummy %qs" msgstr "" -#: fortran/interface.cc:3484 +#: fortran/interface.cc:3505 #, gcc-internal-format msgid "Fortran 2008: Null pointer at %L to non-pointer dummy %qs" msgstr "" -#: fortran/interface.cc:3510 +#: fortran/interface.cc:3531 #, gcc-internal-format, gfc-internal-format msgid "" "Actual argument at %L to assumed-type dummy has type parameters or is of " "derived type with type-bound or FINAL procedures" msgstr "" -#: fortran/interface.cc:3522 +#: fortran/interface.cc:3543 #, gcc-internal-format, gfc-internal-format msgid "" "Unlimited polymorphic actual argument at %L is not matched with either an " "unlimited polymorphic or assumed type dummy argument" msgstr "" -#: fortran/interface.cc:3546 +#: fortran/interface.cc:3567 #, gcc-internal-format msgid "" "Character length mismatch (%ld/%ld) between actual argument and pointer or " "allocatable dummy argument %qs at %L" msgstr "" -#: fortran/interface.cc:3553 +#: fortran/interface.cc:3574 #, gcc-internal-format msgid "" "Character length mismatch (%ld/%ld) between actual argument and assumed-" "shape dummy argument %qs at %L" msgstr "" -#: fortran/interface.cc:3568 +#: fortran/interface.cc:3589 #, gcc-internal-format msgid "" "Actual argument at %L to allocatable or pointer dummy argument %qs must have " "a deferred length type parameter if and only if the dummy has one" msgstr "" -#: fortran/interface.cc:3591 +#: fortran/interface.cc:3612 #, gcc-internal-format msgid "" "Character length of actual argument shorter than of dummy argument %qs (%lu/" "%lu) at %L" msgstr "" -#: fortran/interface.cc:3601 fortran/interface.cc:3606 +#: fortran/interface.cc:3622 fortran/interface.cc:3627 #, gcc-internal-format msgid "" "Actual argument contains too few elements for dummy argument %qs (%lu/%lu) " "at %L" msgstr "" -#: fortran/interface.cc:3632 +#: fortran/interface.cc:3653 #, gcc-internal-format msgid "Expected a procedure pointer for argument %qs at %L" msgstr "" -#: fortran/interface.cc:3649 +#: fortran/interface.cc:3670 #, gcc-internal-format msgid "Expected a procedure for argument %qs at %L" msgstr "" -#: fortran/interface.cc:3716 +#: fortran/interface.cc:3737 #, gcc-internal-format msgid "Actual argument for %qs cannot be an assumed-size array at %L" msgstr "" -#: fortran/interface.cc:3745 +#: fortran/interface.cc:3766 #, gcc-internal-format msgid "" "Actual argument to assumed-rank INTENT(OUT) dummy %qs at %L cannot be of " "unknown size" msgstr "" -#: fortran/interface.cc:3760 +#: fortran/interface.cc:3781 #, gcc-internal-format msgid "Actual argument for %qs at %L must be a pointer" msgstr "" -#: fortran/interface.cc:3769 +#: fortran/interface.cc:3790 #, gcc-internal-format msgid "Fortran 2008: Non-pointer actual argument at %L to pointer dummy %qs" msgstr "" -#: fortran/interface.cc:3778 +#: fortran/interface.cc:3799 #, gcc-internal-format msgid "" "Actual argument for %qs at %L must be a pointer or a valid target for the " "dummy pointer in a pointer assignment statement" msgstr "" -#: fortran/interface.cc:3792 +#: fortran/interface.cc:3813 #, gcc-internal-format msgid "Coindexed actual argument at %L to pointer dummy %qs" msgstr "" -#: fortran/interface.cc:3806 +#: fortran/interface.cc:3827 #, gcc-internal-format msgid "" "Coindexed actual argument at %L to allocatable dummy %qs requires INTENT(IN)" msgstr "" -#: fortran/interface.cc:3821 +#: fortran/interface.cc:3842 #, gcc-internal-format msgid "" "Coindexed ASYNCHRONOUS or VOLATILE actual argument at %L requires that dummy " "%qs has neither ASYNCHRONOUS nor VOLATILE" msgstr "" -#: fortran/interface.cc:3836 +#: fortran/interface.cc:3857 #, gcc-internal-format msgid "" "Coindexed actual argument at %L with allocatable ultimate component to dummy " "%qs requires either VALUE or INTENT(IN)" msgstr "" -#: fortran/interface.cc:3849 +#: fortran/interface.cc:3870 #, gcc-internal-format msgid "Actual CLASS array argument for %qs must be a full array at %L" msgstr "" -#: fortran/interface.cc:3860 +#: fortran/interface.cc:3881 #, gcc-internal-format msgid "Actual argument for %qs must be ALLOCATABLE at %L" msgstr "" -#: fortran/interface.cc:3871 +#: fortran/interface.cc:3892 #, gcc-internal-format msgid "" "Actual argument for %qs at %L is a function result and the dummy argument is " "ALLOCATABLE" msgstr "" -#: fortran/interface.cc:3909 +#: fortran/interface.cc:3930 #, gcc-internal-format msgid "" "Array-section actual argument with vector subscripts at %L is incompatible " @@ -78707,341 +78903,341 @@ msgid "" "dummy argument %qs" msgstr "" -#: fortran/interface.cc:3929 +#: fortran/interface.cc:3950 #, gcc-internal-format msgid "" "Assumed-shape actual argument at %L is incompatible with the non-assumed-" "shape dummy argument %qs due to VOLATILE attribute" msgstr "" -#: fortran/interface.cc:3947 +#: fortran/interface.cc:3968 #, gcc-internal-format msgid "" "Array-section actual argument at %L is incompatible with the non-assumed-" "shape dummy argument %qs due to VOLATILE attribute" msgstr "" -#: fortran/interface.cc:3968 +#: fortran/interface.cc:3989 #, gcc-internal-format msgid "" "Pointer-array actual argument at %L requires an assumed-shape or pointer-" "array dummy argument %qs due to VOLATILE attribute" msgstr "" -#: fortran/interface.cc:3996 +#: fortran/interface.cc:4017 #, gcc-internal-format, gfc-internal-format msgid "Missing alternate return spec in subroutine call at %L" msgstr "" -#: fortran/interface.cc:4009 +#: fortran/interface.cc:4030 #, gcc-internal-format msgid "Missing actual argument for argument %qs at %L" msgstr "" -#: fortran/interface.cc:4137 +#: fortran/interface.cc:4158 #, gcc-internal-format msgid "compare_actual_expr(): Bad component code" msgstr "" -#: fortran/interface.cc:4166 +#: fortran/interface.cc:4187 #, gcc-internal-format msgid "check_some_aliasing(): List mismatch" msgstr "" -#: fortran/interface.cc:4192 +#: fortran/interface.cc:4213 #, gcc-internal-format msgid "check_some_aliasing(): corrupted data" msgstr "" -#: fortran/interface.cc:4202 +#: fortran/interface.cc:4223 #, gcc-internal-format msgid "" "Same actual argument associated with INTENT(%s) argument %qs and INTENT(%s) " "argument %qs at %L" msgstr "" -#: fortran/interface.cc:4232 +#: fortran/interface.cc:4253 #, gcc-internal-format msgid "check_intents(): List mismatch" msgstr "" -#: fortran/interface.cc:4252 +#: fortran/interface.cc:4273 #, gcc-internal-format, gfc-internal-format msgid "" "Procedure argument at %L is local to a PURE procedure and has the POINTER " "attribute" msgstr "" -#: fortran/interface.cc:4264 +#: fortran/interface.cc:4285 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed actual argument at %L in PURE procedure is passed to an INTENT(%s) " "argument" msgstr "" -#: fortran/interface.cc:4274 +#: fortran/interface.cc:4295 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed actual argument at %L in PURE procedure is passed to a POINTER " "dummy argument" msgstr "" -#: fortran/interface.cc:4285 +#: fortran/interface.cc:4306 #, gcc-internal-format msgid "" "Coindexed polymorphic actual argument at %L is passed polymorphic dummy " "argument %qs" msgstr "" -#: fortran/interface.cc:4327 +#: fortran/interface.cc:4348 #, gcc-internal-format msgid "" "Procedure %qs called at %L is not explicitly declared; did you mean %qs?" msgstr "" -#: fortran/interface.cc:4331 fortran/interface.cc:4341 +#: fortran/interface.cc:4352 fortran/interface.cc:4362 #, gcc-internal-format msgid "Procedure %qs called at %L is not explicitly declared" msgstr "" -#: fortran/interface.cc:4337 +#: fortran/interface.cc:4358 #, gcc-internal-format msgid "Procedure %qs called with an implicit interface at %L" msgstr "" -#: fortran/interface.cc:4350 +#: fortran/interface.cc:4371 #, gcc-internal-format msgid "" "The pointer object %qs at %L must have an explicit function interface or be " "declared as array" msgstr "" -#: fortran/interface.cc:4358 +#: fortran/interface.cc:4379 #, gcc-internal-format msgid "" "The allocatable object %qs at %L must have an explicit function interface or " "be declared as array" msgstr "" -#: fortran/interface.cc:4366 +#: fortran/interface.cc:4387 #, gcc-internal-format msgid "Allocatable function %qs at %L must have an explicit function interface" msgstr "" -#: fortran/interface.cc:4383 +#: fortran/interface.cc:4404 #, gcc-internal-format, gfc-internal-format msgid "Explicit interface required for polymorphic argument at %L" msgstr "" -#: fortran/interface.cc:4392 +#: fortran/interface.cc:4413 #, gcc-internal-format msgid "Keyword argument requires explicit interface for procedure %qs at %L" msgstr "" -#: fortran/interface.cc:4401 +#: fortran/interface.cc:4422 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type argument %s at %L requires an explicit interface" msgstr "" -#: fortran/interface.cc:4416 +#: fortran/interface.cc:4437 #, gcc-internal-format msgid "" "Actual argument of LOCK_TYPE or with LOCK_TYPE component at %L requires an " "explicit interface for procedure %qs" msgstr "" -#: fortran/interface.cc:4431 +#: fortran/interface.cc:4452 #, gcc-internal-format msgid "" "Actual argument of EVENT_TYPE or with EVENT_TYPE component at %L requires an " "explicit interface for procedure %qs" msgstr "" -#: fortran/interface.cc:4441 +#: fortran/interface.cc:4462 #, gcc-internal-format, gfc-internal-format msgid "MOLD argument to NULL required at %L" msgstr "" -#: fortran/interface.cc:4449 +#: fortran/interface.cc:4470 #, gcc-internal-format, gfc-internal-format msgid "" "Passing intrinsic NULL as actual argument at %L requires an explicit " "interface" msgstr "" -#: fortran/interface.cc:4459 +#: fortran/interface.cc:4480 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank argument requires an explicit interface at %L" msgstr "" -#: fortran/interface.cc:4501 +#: fortran/interface.cc:4522 #, gcc-internal-format msgid "Procedure pointer component %qs called with an implicit interface at %L" msgstr "" -#: fortran/interface.cc:4512 +#: fortran/interface.cc:4533 #, gcc-internal-format msgid "" "Keyword argument requires explicit interface for procedure pointer component " "%qs at %L" msgstr "" -#: fortran/interface.cc:4597 +#: fortran/interface.cc:4618 #, gcc-internal-format, gfc-internal-format msgid "" "MOLD= required in NULL() argument at %L: Ambiguity between specific " "functions %s and %s" msgstr "" -#: fortran/interface.cc:4667 +#: fortran/interface.cc:4688 #, gcc-internal-format msgid "Unable to find symbol %qs" msgstr "" -#: fortran/interface.cc:5051 +#: fortran/interface.cc:5072 #, gcc-internal-format msgid "Entity %qs at %L is already present in the interface" msgstr "" -#: fortran/interface.cc:5168 +#: fortran/interface.cc:5189 #, gcc-internal-format msgid "gfc_add_interface(): Bad interface type" msgstr "" -#: fortran/interface.cc:5262 +#: fortran/interface.cc:5283 #, gcc-internal-format msgid "Cannot overwrite GENERIC %qs at %L" msgstr "" -#: fortran/interface.cc:5274 +#: fortran/interface.cc:5295 #, gcc-internal-format msgid "%qs at %L overrides a procedure binding declared NON_OVERRIDABLE" msgstr "" -#: fortran/interface.cc:5282 +#: fortran/interface.cc:5303 #, gcc-internal-format msgid "%qs at %L must not be DEFERRED as it overrides a non-DEFERRED binding" msgstr "" -#: fortran/interface.cc:5290 +#: fortran/interface.cc:5311 #, gcc-internal-format msgid "%qs at %L overrides a PURE procedure and must also be PURE" msgstr "" -#: fortran/interface.cc:5299 +#: fortran/interface.cc:5320 #, gcc-internal-format msgid "%qs at %L overrides an ELEMENTAL procedure and must also be ELEMENTAL" msgstr "" -#: fortran/interface.cc:5305 +#: fortran/interface.cc:5326 #, gcc-internal-format msgid "" "%qs at %L overrides a non-ELEMENTAL procedure and must not be ELEMENTAL, " "either" msgstr "" -#: fortran/interface.cc:5314 +#: fortran/interface.cc:5335 #, gcc-internal-format msgid "%qs at %L overrides a SUBROUTINE and must also be a SUBROUTINE" msgstr "" -#: fortran/interface.cc:5325 +#: fortran/interface.cc:5346 #, gcc-internal-format msgid "%qs at %L overrides a FUNCTION and must also be a FUNCTION" msgstr "" -#: fortran/interface.cc:5333 +#: fortran/interface.cc:5354 #, gcc-internal-format msgid "Result mismatch for the overriding procedure %qs at %L: %s" msgstr "" -#: fortran/interface.cc:5344 +#: fortran/interface.cc:5365 #, gcc-internal-format msgid "%qs at %L overrides a PUBLIC procedure and must not be PRIVATE" msgstr "" -#: fortran/interface.cc:5374 +#: fortran/interface.cc:5395 #, gcc-internal-format msgid "" "Dummy argument %qs of %qs at %L should be named %qs as to match the " "corresponding argument of the overridden procedure" msgstr "" -#: fortran/interface.cc:5385 +#: fortran/interface.cc:5406 #, gcc-internal-format msgid "Argument mismatch for the overriding procedure %qs at %L: %s" msgstr "" -#: fortran/interface.cc:5394 +#: fortran/interface.cc:5415 #, gcc-internal-format msgid "" "%qs at %L must have the same number of formal arguments as the overridden " "procedure" msgstr "" -#: fortran/interface.cc:5403 +#: fortran/interface.cc:5424 #, gcc-internal-format msgid "%qs at %L overrides a NOPASS binding and must also be NOPASS" msgstr "" -#: fortran/interface.cc:5414 +#: fortran/interface.cc:5435 #, gcc-internal-format msgid "%qs at %L overrides a binding with PASS and must also be PASS" msgstr "" -#: fortran/interface.cc:5421 +#: fortran/interface.cc:5442 #, gcc-internal-format msgid "" "Passed-object dummy argument of %qs at %L must be at the same position as " "the passed-object dummy argument of the overridden procedure" msgstr "" -#: fortran/interface.cc:5442 +#: fortran/interface.cc:5463 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be of type %s" msgstr "" -#: fortran/interface.cc:5449 +#: fortran/interface.cc:5470 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be of KIND = %d" msgstr "" -#: fortran/interface.cc:5456 +#: fortran/interface.cc:5477 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be a scalar" msgstr "" -#: fortran/interface.cc:5460 +#: fortran/interface.cc:5481 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must be an ASSUMED SHAPE ARRAY" msgstr "" -#: fortran/interface.cc:5464 +#: fortran/interface.cc:5485 #, gcc-internal-format, gfc-internal-format msgid "DTIO character argument at %L must have assumed length" msgstr "" -#: fortran/interface.cc:5468 +#: fortran/interface.cc:5489 #, gcc-internal-format, gfc-internal-format msgid "DTIO dummy argument at %L must have INTENT %s" msgstr "" -#: fortran/interface.cc:5526 fortran/interface.cc:5572 +#: fortran/interface.cc:5547 fortran/interface.cc:5593 #, gcc-internal-format, gfc-internal-format msgid "Alternate return at %L is not permitted in a DTIO procedure" msgstr "" -#: fortran/interface.cc:5538 +#: fortran/interface.cc:5559 #, gcc-internal-format msgid "DTIO procedure %qs at %L must be a subroutine" msgstr "" -#: fortran/interface.cc:5550 +#: fortran/interface.cc:5571 #, gcc-internal-format msgid "Too few dummy arguments in DTIO procedure %qs at %L" msgstr "" -#: fortran/interface.cc:5557 +#: fortran/interface.cc:5578 #, gcc-internal-format msgid "Too many dummy arguments in DTIO procedure %qs at %L" msgstr "" @@ -79188,63 +79384,63 @@ msgstr "" msgid "init_arglist(): too many arguments" msgstr "" -#: fortran/intrinsic.cc:5065 +#: fortran/intrinsic.cc:5068 #, gcc-internal-format msgid "Invalid standard code on intrinsic %qs (%d)" msgstr "" -#: fortran/intrinsic.cc:5074 +#: fortran/intrinsic.cc:5077 #, gcc-internal-format msgid "Intrinsic %qs (%s) used at %L" msgstr "" -#: fortran/intrinsic.cc:5146 +#: fortran/intrinsic.cc:5149 #, gcc-internal-format msgid "Function %qs as initialization expression at %L" msgstr "" -#: fortran/intrinsic.cc:5165 +#: fortran/intrinsic.cc:5168 #, gcc-internal-format msgid "" "Transformational function %qs at %L is invalid in an initialization " "expression" msgstr "" -#: fortran/intrinsic.cc:5241 +#: fortran/intrinsic.cc:5244 #, gcc-internal-format, gfc-internal-format msgid "" "Elemental function as initialization expression with non-integer/non-" "character arguments at %L" msgstr "" -#: fortran/intrinsic.cc:5332 +#: fortran/intrinsic.cc:5335 #, gcc-internal-format msgid "" "Subroutine call to intrinsic %qs in DO CONCURRENT block at %L is not PURE" msgstr "" -#: fortran/intrinsic.cc:5339 +#: fortran/intrinsic.cc:5342 #, gcc-internal-format msgid "Subroutine call to intrinsic %qs at %L is not PURE" msgstr "" -#: fortran/intrinsic.cc:5442 +#: fortran/intrinsic.cc:5445 #, gcc-internal-format, gfc-internal-format msgid "Extension: Conversion from %s to %s at %L" msgstr "" -#: fortran/intrinsic.cc:5463 +#: fortran/intrinsic.cc:5466 #, gcc-internal-format, gfc-internal-format msgid "Nonstandard conversion from %s to %s at %L" msgstr "" -#: fortran/intrinsic.cc:5481 fortran/intrinsic.cc:5498 +#: fortran/intrinsic.cc:5484 fortran/intrinsic.cc:5501 #, gcc-internal-format, gfc-internal-format msgid "Possible change of value in conversion from %s to %s at %L" msgstr "" #. If HOLLERITH is involved, all bets are off. -#: fortran/intrinsic.cc:5486 fortran/intrinsic.cc:5506 +#: fortran/intrinsic.cc:5489 fortran/intrinsic.cc:5509 #, gcc-internal-format, gfc-internal-format msgid "Conversion from %s to %s at %L" msgstr "" @@ -79252,24 +79448,24 @@ msgstr "" #. Use of -fdec-char-conversions allows assignment of character data #. to non-character variables. This not permitted for nonconstant #. strings. -#: fortran/intrinsic.cc:5573 fortran/resolve.cc:12283 +#: fortran/intrinsic.cc:5576 fortran/resolve.cc:12421 #, gcc-internal-format, gfc-internal-format msgid "Cannot convert %s to %s at %L" msgstr "" -#: fortran/intrinsic.cc:5578 +#: fortran/intrinsic.cc:5581 #, gcc-internal-format msgid "Cannot convert %qs to %qs at %L" msgstr "" -#: fortran/intrinsic.cc:5671 +#: fortran/intrinsic.cc:5674 #, gcc-internal-format msgid "" "%qs declared at %L may shadow the intrinsic of the same name. In order to " "call the intrinsic, explicit INTRINSIC declarations may be required." msgstr "" -#: fortran/intrinsic.cc:5677 +#: fortran/intrinsic.cc:5680 #, gcc-internal-format msgid "" "%qs declared at %L is also the name of an intrinsic. It can only be called " @@ -79719,7 +79915,7 @@ msgstr "" msgid "UNIT number in CLOSE statement at %L must be non-negative" msgstr "" -#: fortran/io.cc:2846 fortran/match.cc:3471 +#: fortran/io.cc:2846 fortran/match.cc:3626 #, gcc-internal-format, gfc-internal-format msgid "%s statement not allowed in PURE procedure at %C" msgstr "" @@ -79820,7 +80016,7 @@ msgid "" "defined input/output procedure" msgstr "" -#: fortran/io.cc:3422 fortran/resolve.cc:16912 +#: fortran/io.cc:3422 fortran/resolve.cc:17030 #, gcc-internal-format msgid "" "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER " @@ -79992,7 +80188,14 @@ msgstr "" msgid "check_charlen_present(): length not set" msgstr "" -#: fortran/iresolve.cc:3323 +#: fortran/iresolve.cc:3218 +#, gcc-internal-format, gfc-internal-format +msgid "" +"GET_TEAM at %L needs USE of the intrinsic module ISO_FORTRAN_ENV to define " +"its result type TEAM_TYPE" +msgstr "" + +#: fortran/iresolve.cc:3349 #, gcc-internal-format, gfc-internal-format msgid "TODO: unlimited polymorphic MOLD in TRANSFER intrinsic at %L" msgstr "" @@ -80024,7 +80227,7 @@ msgstr "" msgid "Integer too large at %C" msgstr "" -#: fortran/match.cc:553 fortran/parse.cc:1550 +#: fortran/match.cc:553 fortran/parse.cc:1549 #, gcc-internal-format, gfc-internal-format msgid "Too many digits in statement label at %C" msgstr "" @@ -80178,662 +80381,684 @@ msgstr "" msgid "Label %qs after %L doesn't match IF label %qs" msgstr "" -#: fortran/match.cc:1841 +#: fortran/match.cc:1834 +#, gcc-internal-format, gfc-internal-format +msgid "Duplicate %s attribute in %C" +msgstr "" + +#: fortran/match.cc:1899 #, gcc-internal-format, gfc-internal-format msgid "Image control statement CRITICAL at %C in PURE procedure" msgstr "" -#: fortran/match.cc:1847 +#: fortran/match.cc:1905 #, gcc-internal-format, gfc-internal-format msgid "Image control statement CRITICAL at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:1854 +#: fortran/match.cc:1912 #, gcc-internal-format, gfc-internal-format msgid "CRITICAL statement at %C" msgstr "" -#: fortran/match.cc:1866 +#: fortran/match.cc:1924 #, gcc-internal-format, gfc-internal-format msgid "Nested CRITICAL block at %C" msgstr "" -#: fortran/match.cc:1918 -#, gcc-internal-format, gfc-internal-format -msgid "Expected association list at %C" +#: fortran/match.cc:1975 +#, gcc-internal-format +msgid "" +"Codimension decl name %qs in association at %L must not be the same as a " +"selector" msgstr "" -#: fortran/match.cc:1930 +#: fortran/match.cc:1996 #, gcc-internal-format, gfc-internal-format msgid "Expected associate name at %C" msgstr "" -#: fortran/match.cc:1940 +#: fortran/match.cc:2006 #, gcc-internal-format, gfc-internal-format msgid "Bad bounds remapping list at %C" msgstr "" -#: fortran/match.cc:1946 +#: fortran/match.cc:2012 #, gcc-internal-format, gfc-internal-format msgid "" "The bounds remapping list at %C is an experimental F202y feature. Use " "std=f202y to enable" msgstr "" -#: fortran/match.cc:1952 +#: fortran/match.cc:2043 #, gcc-internal-format, gfc-internal-format -msgid "Expected association at %C" +msgid "Invalid association target at %C" msgstr "" -#: fortran/match.cc:1963 +#: fortran/match.cc:2057 #, gcc-internal-format, gfc-internal-format -msgid "Invalid association target at %C" +msgid "Selector in coarray association as %C shall be a named coarray" msgstr "" -#: fortran/match.cc:1974 +#: fortran/match.cc:2067 #, gcc-internal-format msgid "Duplicate name %qs in association at %C" msgstr "" -#: fortran/match.cc:1982 +#: fortran/match.cc:2094 +#, gcc-internal-format, gfc-internal-format +msgid "Selector at %L duplicates selector at %L" +msgstr "" + +#: fortran/match.cc:2104 #, gcc-internal-format, gfc-internal-format msgid "Association target at %C must not be coindexed" msgstr "" -#: fortran/match.cc:1989 +#: fortran/match.cc:2111 #, gcc-internal-format, gfc-internal-format msgid "Association target at %L cannot be a BOZ literal constant" msgstr "" -#: fortran/match.cc:2009 +#: fortran/match.cc:2131 #, gcc-internal-format, gfc-internal-format msgid "" "The associate name %s with an assumed rank target at %L must have a bounds " "remapping list (list of lbound:ubound for each dimension)" msgstr "" -#: fortran/match.cc:2018 +#: fortran/match.cc:2140 #, gcc-internal-format, gfc-internal-format msgid "The assumed rank target at %C must be contiguous" msgstr "" -#: fortran/match.cc:2037 +#: fortran/match.cc:2159 #, gcc-internal-format msgid "Expected %<)%> or %<,%> at %C" msgstr "" -#: fortran/match.cc:2055 +#: fortran/match.cc:2188 +#, gcc-internal-format, gfc-internal-format +msgid "Expected association list at %C" +msgstr "" + +#: fortran/match.cc:2197 +#, gcc-internal-format, gfc-internal-format +msgid "Expected association at %C" +msgstr "" + +#: fortran/match.cc:2209 #, gcc-internal-format, gfc-internal-format msgid "Junk after ASSOCIATE statement at %C" msgstr "" -#: fortran/match.cc:2177 +#: fortran/match.cc:2331 #, gcc-internal-format msgid "Derived type %qs at %L may not be ABSTRACT" msgstr "" -#: fortran/match.cc:2256 fortran/match.cc:2328 fortran/match.cc:2351 +#: fortran/match.cc:2410 fortran/match.cc:2482 fortran/match.cc:2505 #, gcc-internal-format, gfc-internal-format msgid "Invalid type-spec at %C" msgstr "" -#: fortran/match.cc:2446 +#: fortran/match.cc:2600 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in FORALL iterator at %C" msgstr "" -#: fortran/match.cc:2722 +#: fortran/match.cc:2876 #, gcc-internal-format, gfc-internal-format msgid "DO CONCURRENT construct at %C" msgstr "" -#: fortran/match.cc:2826 +#: fortran/match.cc:2980 #, gcc-internal-format, gfc-internal-format msgid "DEFAULT (NONE) specified more than once in DO CONCURRENT at %C" msgstr "" -#: fortran/match.cc:2915 +#: fortran/match.cc:3069 #, gcc-internal-format, gfc-internal-format msgid "Expected reduction operator or function name at %C" msgstr "" -#: fortran/match.cc:2935 fortran/openmp.cc:2439 fortran/openmp.cc:2475 +#: fortran/match.cc:3089 fortran/openmp.cc:2439 fortran/openmp.cc:2475 #: fortran/openmp.cc:2885 fortran/openmp.cc:2910 #, gcc-internal-format msgid "Expected %<:%> at %C" msgstr "" -#: fortran/match.cc:2945 +#: fortran/match.cc:3099 #, gcc-internal-format, gfc-internal-format msgid "Expected variable name in reduction list at %C" msgstr "" -#: fortran/match.cc:2964 +#: fortran/match.cc:3118 #, gcc-internal-format, gfc-internal-format msgid "Expected ',' or ')' in reduction list at %C" msgstr "" -#: fortran/match.cc:2970 +#: fortran/match.cc:3124 #, gcc-internal-format, gfc-internal-format msgid "REDUCE locality spec at %L" msgstr "" -#: fortran/match.cc:2977 +#: fortran/match.cc:3131 #, gcc-internal-format, gfc-internal-format msgid "Locality spec at %L" msgstr "" -#: fortran/match.cc:3112 +#: fortran/match.cc:3266 #, gcc-internal-format msgid "Name %qs in %s statement at %C is unknown" msgstr "" -#: fortran/match.cc:3120 +#: fortran/match.cc:3274 #, gcc-internal-format msgid "Name %qs in %s statement at %C is not a construct name" msgstr "" -#: fortran/match.cc:3132 +#: fortran/match.cc:3286 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaves CRITICAL construct" msgstr "" #. F2008, C821 & C845. -#: fortran/match.cc:3140 +#: fortran/match.cc:3294 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaves DO CONCURRENT construct" msgstr "" -#: fortran/match.cc:3152 +#: fortran/match.cc:3306 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C is not within a construct" msgstr "" -#: fortran/match.cc:3155 +#: fortran/match.cc:3309 #, gcc-internal-format msgid "%s statement at %C is not within construct %qs" msgstr "" -#: fortran/match.cc:3181 +#: fortran/match.cc:3336 #, gcc-internal-format msgid "CYCLE statement at %C is not applicable to non-loop construct %qs" msgstr "" -#: fortran/match.cc:3186 +#: fortran/match.cc:3341 #, gcc-internal-format, gfc-internal-format msgid "EXIT statement with no do-construct-name at %C" msgstr "" -#: fortran/match.cc:3192 +#: fortran/match.cc:3347 #, gcc-internal-format msgid "%s statement at %C is not applicable to construct %qs" msgstr "" -#: fortran/match.cc:3200 +#: fortran/match.cc:3355 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaving OpenACC structured block" msgstr "" -#: fortran/match.cc:3201 +#: fortran/match.cc:3356 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaving OpenMP structured block" msgstr "" -#: fortran/match.cc:3241 +#: fortran/match.cc:3396 #, gcc-internal-format, gfc-internal-format msgid "EXIT statement at %C terminating !$ACC LOOP loop" msgstr "" -#: fortran/match.cc:3247 +#: fortran/match.cc:3402 #, gcc-internal-format, gfc-internal-format msgid "CYCLE statement at %C to non-innermost tiled !$ACC LOOP loop" msgstr "" -#: fortran/match.cc:3249 +#: fortran/match.cc:3404 #, gcc-internal-format, gfc-internal-format msgid "CYCLE statement at %C to non-innermost collapsed !$ACC LOOP loop" msgstr "" -#: fortran/match.cc:3296 +#: fortran/match.cc:3451 #, gcc-internal-format, gfc-internal-format msgid "EXIT statement at %C terminating !$OMP DO loop" msgstr "" -#: fortran/match.cc:3301 +#: fortran/match.cc:3456 #, gcc-internal-format, gfc-internal-format msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop" msgstr "" -#: fortran/match.cc:3406 +#: fortran/match.cc:3561 #, gcc-internal-format, gfc-internal-format msgid "Blank required in %s statement near %C" msgstr "" -#: fortran/match.cc:3429 +#: fortran/match.cc:3584 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %C cannot be negative" msgstr "" -#: fortran/match.cc:3435 +#: fortran/match.cc:3590 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %C contains too many digits" msgstr "" -#: fortran/match.cc:3451 +#: fortran/match.cc:3606 #, gcc-internal-format, gfc-internal-format msgid "QUIET= specifier for %s at %L" msgstr "" -#: fortran/match.cc:3465 +#: fortran/match.cc:3620 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C in PURE procedure" msgstr "" -#: fortran/match.cc:3481 +#: fortran/match.cc:3636 #, gcc-internal-format, gfc-internal-format msgid "Image control statement STOP at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:3486 +#: fortran/match.cc:3641 #, gcc-internal-format, gfc-internal-format msgid "Image control statement STOP at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:3498 +#: fortran/match.cc:3653 #, gcc-internal-format, gfc-internal-format msgid "" "STOP code at %L must be a scalar CHARACTER constant or " "digit[digit[digit[digit[digit]]]]" msgstr "" -#: fortran/match.cc:3510 +#: fortran/match.cc:3665 #, gcc-internal-format, gfc-internal-format msgid "" "STOP code at %L must be a scalar default CHARACTER or INTEGER constant " "expression" msgstr "" -#: fortran/match.cc:3517 +#: fortran/match.cc:3672 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be either INTEGER or CHARACTER type" msgstr "" -#: fortran/match.cc:3524 +#: fortran/match.cc:3679 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be scalar" msgstr "" -#: fortran/match.cc:3531 +#: fortran/match.cc:3686 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be default character KIND=%d" msgstr "" -#: fortran/match.cc:3538 +#: fortran/match.cc:3693 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be default integer KIND=%d" msgstr "" -#: fortran/match.cc:3550 fortran/resolve.cc:13424 +#: fortran/match.cc:3705 fortran/resolve.cc:13545 #, gcc-internal-format, gfc-internal-format msgid "QUIET specifier at %L must be a scalar LOGICAL" msgstr "" -#: fortran/match.cc:3600 +#: fortran/match.cc:3755 #, gcc-internal-format, gfc-internal-format msgid "PAUSE statement at %C" msgstr "" -#: fortran/match.cc:3621 +#: fortran/match.cc:3776 #, gcc-internal-format, gfc-internal-format msgid "ERROR STOP statement at %C" msgstr "" -#: fortran/match.cc:3647 +#: fortran/match.cc:3802 #, gcc-internal-format, gfc-internal-format msgid "Image control statement EVENT %s at %C in PURE procedure" msgstr "" -#: fortran/match.cc:3662 +#: fortran/match.cc:3817 #, gcc-internal-format, gfc-internal-format msgid "Image control statement EVENT %s at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:3669 +#: fortran/match.cc:3824 #, gcc-internal-format, gfc-internal-format msgid "Image control statement EVENT %s at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:3699 fortran/match.cc:4041 fortran/match.cc:4253 -#: fortran/match.cc:4805 fortran/match.cc:5177 +#: fortran/match.cc:3854 fortran/match.cc:4341 fortran/match.cc:4553 +#: fortran/match.cc:5105 fortran/match.cc:5477 #, gcc-internal-format, gfc-internal-format msgid "Redundant STAT tag found at %L" msgstr "" -#: fortran/match.cc:3720 fortran/match.cc:4062 fortran/match.cc:4273 -#: fortran/match.cc:4837 fortran/match.cc:5202 +#: fortran/match.cc:3875 fortran/match.cc:4362 fortran/match.cc:4573 +#: fortran/match.cc:5137 fortran/match.cc:5502 #, gcc-internal-format, gfc-internal-format msgid "Redundant ERRMSG tag found at %L" msgstr "" -#: fortran/match.cc:3741 +#: fortran/match.cc:3896 #, gcc-internal-format, gfc-internal-format msgid "Redundant UNTIL_COUNT tag found at %L" msgstr "" -#: fortran/match.cc:3807 +#: fortran/match.cc:3962 #, gcc-internal-format, gfc-internal-format msgid "EVENT POST statement at %C" msgstr "" -#: fortran/match.cc:3817 +#: fortran/match.cc:3972 #, gcc-internal-format, gfc-internal-format msgid "EVENT WAIT statement at %C" msgstr "" -#: fortran/match.cc:3829 +#: fortran/match.cc:3984 #, gcc-internal-format, gfc-internal-format msgid "FAIL IMAGE statement at %C" msgstr "" -#: fortran/match.cc:3853 +#: fortran/match.cc:4010 #, gcc-internal-format, gfc-internal-format msgid "FORM TEAM statement at %C" msgstr "" -#: fortran/match.cc:3892 +#: fortran/match.cc:4098 #, gcc-internal-format, gfc-internal-format msgid "CHANGE TEAM statement at %C" msgstr "" -#: fortran/match.cc:3922 -#, gcc-internal-format, gfc-internal-format -msgid "END TEAM statement at %C" -msgstr "" - -#: fortran/match.cc:3946 +#: fortran/match.cc:4215 #, gcc-internal-format, gfc-internal-format msgid "SYNC TEAM statement at %C" msgstr "" -#: fortran/match.cc:3989 +#: fortran/match.cc:4289 #, gcc-internal-format, gfc-internal-format msgid "Image control statement %s at %C in PURE procedure" msgstr "" -#: fortran/match.cc:4004 +#: fortran/match.cc:4304 #, gcc-internal-format, gfc-internal-format msgid "Image control statement %s at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:4011 +#: fortran/match.cc:4311 #, gcc-internal-format, gfc-internal-format msgid "Image control statement %s at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:4083 +#: fortran/match.cc:4383 #, gcc-internal-format, gfc-internal-format msgid "Redundant ACQUIRED_LOCK tag found at %L" msgstr "" -#: fortran/match.cc:4148 +#: fortran/match.cc:4448 #, gcc-internal-format, gfc-internal-format msgid "LOCK statement at %C" msgstr "" -#: fortran/match.cc:4158 +#: fortran/match.cc:4458 #, gcc-internal-format, gfc-internal-format msgid "UNLOCK statement at %C" msgstr "" -#: fortran/match.cc:4183 +#: fortran/match.cc:4483 #, gcc-internal-format, gfc-internal-format msgid "Image control statement SYNC at %C in PURE procedure" msgstr "" -#: fortran/match.cc:4189 +#: fortran/match.cc:4489 #, gcc-internal-format, gfc-internal-format msgid "SYNC statement at %C" msgstr "" -#: fortran/match.cc:4201 +#: fortran/match.cc:4501 #, gcc-internal-format, gfc-internal-format msgid "Image control statement SYNC at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:4207 +#: fortran/match.cc:4507 #, gcc-internal-format, gfc-internal-format msgid "Image control statement SYNC at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:4387 +#: fortran/match.cc:4687 #, gcc-internal-format, gfc-internal-format msgid "ASSIGN statement at %C" msgstr "" -#: fortran/match.cc:4431 +#: fortran/match.cc:4731 #, gcc-internal-format, gfc-internal-format msgid "Assigned GOTO statement at %C" msgstr "" -#: fortran/match.cc:4475 fortran/match.cc:4526 +#: fortran/match.cc:4775 fortran/match.cc:4826 #, gcc-internal-format, gfc-internal-format msgid "Statement label list in GOTO at %C cannot be empty" msgstr "" -#: fortran/match.cc:4536 +#: fortran/match.cc:4836 #, gcc-internal-format, gfc-internal-format msgid "Computed GOTO at %C" msgstr "" -#: fortran/match.cc:4611 +#: fortran/match.cc:4911 #, gcc-internal-format, gfc-internal-format msgid "Error in type-spec at %L" msgstr "" -#: fortran/match.cc:4624 +#: fortran/match.cc:4924 #, gcc-internal-format, gfc-internal-format msgid "typespec in ALLOCATE at %L" msgstr "" -#: fortran/match.cc:4647 +#: fortran/match.cc:4947 #, gcc-internal-format, gfc-internal-format msgid "" "The type parameter spec list in the type-spec at %L cannot contain DEFERRED " "parameters" msgstr "" -#: fortran/match.cc:4677 fortran/match.cc:5115 +#: fortran/match.cc:4977 fortran/match.cc:5415 #, gcc-internal-format, gfc-internal-format msgid "Unexpected constant at %C" msgstr "" -#: fortran/match.cc:4687 +#: fortran/match.cc:4987 #, gcc-internal-format, gfc-internal-format msgid "Bad allocate-object at %C for a PURE procedure" msgstr "" -#: fortran/match.cc:4702 +#: fortran/match.cc:5002 #, gcc-internal-format, gfc-internal-format msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L" msgstr "" -#: fortran/match.cc:4724 +#: fortran/match.cc:5024 #, gcc-internal-format, gfc-internal-format msgid "ALLOCATE of coarray at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:4729 +#: fortran/match.cc:5029 #, gcc-internal-format, gfc-internal-format msgid "ALLOCATE of coarray at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:4751 +#: fortran/match.cc:5051 #, gcc-internal-format, gfc-internal-format msgid "" "Allocate-object at %L is neither a data pointer nor an allocatable variable" msgstr "" -#: fortran/match.cc:4763 +#: fortran/match.cc:5063 #, gcc-internal-format, gfc-internal-format msgid "Type of entity at %L is type incompatible with typespec" msgstr "" -#: fortran/match.cc:4771 +#: fortran/match.cc:5071 #, gcc-internal-format, gfc-internal-format msgid "" "Kind type parameter for entity at %L differs from the kind type parameter of " "the typespec" msgstr "" -#: fortran/match.cc:4788 +#: fortran/match.cc:5088 #, gcc-internal-format, gfc-internal-format msgid "Shape specification for allocatable scalar at %C" msgstr "" -#: fortran/match.cc:4815 +#: fortran/match.cc:5115 #, gcc-internal-format, gfc-internal-format msgid "STAT tag at %L cannot be a constant" msgstr "" -#: fortran/match.cc:4831 +#: fortran/match.cc:5131 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG tag at %L" msgstr "" -#: fortran/match.cc:4854 +#: fortran/match.cc:5154 #, gcc-internal-format, gfc-internal-format msgid "SOURCE tag at %L" msgstr "" -#: fortran/match.cc:4860 +#: fortran/match.cc:5160 #, gcc-internal-format, gfc-internal-format msgid "Redundant SOURCE tag found at %L" msgstr "" -#: fortran/match.cc:4867 +#: fortran/match.cc:5167 #, gcc-internal-format, gfc-internal-format msgid "SOURCE tag at %L conflicts with the typespec at %L" msgstr "" -#: fortran/match.cc:4873 +#: fortran/match.cc:5173 #, gcc-internal-format, gfc-internal-format msgid "SOURCE tag at %L with more than a single allocate object" msgstr "" -#: fortran/match.cc:4891 +#: fortran/match.cc:5191 #, gcc-internal-format, gfc-internal-format msgid "MOLD tag at %L" msgstr "" -#: fortran/match.cc:4897 +#: fortran/match.cc:5197 #, gcc-internal-format, gfc-internal-format msgid "Redundant MOLD tag found at %L" msgstr "" -#: fortran/match.cc:4904 +#: fortran/match.cc:5204 #, gcc-internal-format, gfc-internal-format msgid "MOLD tag at %L conflicts with the typespec at %L" msgstr "" -#: fortran/match.cc:4930 +#: fortran/match.cc:5230 #, gcc-internal-format, gfc-internal-format msgid "MOLD tag at %L conflicts with SOURCE tag at %L" msgstr "" -#: fortran/match.cc:4938 +#: fortran/match.cc:5238 #, gcc-internal-format, gfc-internal-format msgid "" "Allocate-object at %L with a deferred type parameter requires either a type-" "spec or SOURCE tag or a MOLD tag" msgstr "" -#: fortran/match.cc:4950 +#: fortran/match.cc:5250 #, gcc-internal-format, gfc-internal-format msgid "" "Unlimited polymorphic allocate-object at %L requires either a type-spec or " "SOURCE tag or a MOLD tag" msgstr "" -#: fortran/match.cc:5017 +#: fortran/match.cc:5317 #, gcc-internal-format, gfc-internal-format msgid "Pointer object at %C shall not be coindexed" msgstr "" -#: fortran/match.cc:5032 +#: fortran/match.cc:5332 #, gcc-internal-format, gfc-internal-format msgid "NULLIFY does not allow bounds remapping for pointer object at %C" msgstr "" -#: fortran/match.cc:5127 +#: fortran/match.cc:5427 #, gcc-internal-format, gfc-internal-format msgid "Illegal allocate-object at %C for a PURE procedure" msgstr "" -#: fortran/match.cc:5137 +#: fortran/match.cc:5437 #, gcc-internal-format, gfc-internal-format msgid "DEALLOCATE of coarray at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:5144 +#: fortran/match.cc:5444 #, gcc-internal-format, gfc-internal-format msgid "DEALLOCATE of coarray at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:5160 +#: fortran/match.cc:5460 #, gcc-internal-format, gfc-internal-format msgid "" "Allocate-object at %C is not a nonprocedure pointer nor an allocatable " "variable" msgstr "" -#: fortran/match.cc:5197 +#: fortran/match.cc:5497 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG at %L" msgstr "" -#: fortran/match.cc:5254 +#: fortran/match.cc:5554 #, gcc-internal-format, gfc-internal-format msgid "Image control statement RETURN at %C in CRITICAL block" msgstr "" -#: fortran/match.cc:5260 +#: fortran/match.cc:5560 #, gcc-internal-format, gfc-internal-format msgid "Image control statement RETURN at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.cc:5269 +#: fortran/match.cc:5569 +#, gcc-internal-format, gfc-internal-format +msgid "Image control statement RETURN at %C in CHANGE TEAM-END TEAM block" +msgstr "" + +#: fortran/match.cc:5578 #, gcc-internal-format, gfc-internal-format msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE" msgstr "" -#: fortran/match.cc:5300 +#: fortran/match.cc:5609 #, gcc-internal-format, gfc-internal-format msgid "RETURN statement in main program at %C" msgstr "" -#: fortran/match.cc:5328 +#: fortran/match.cc:5637 #, gcc-internal-format, gfc-internal-format msgid "Expected component reference at %C" msgstr "" -#: fortran/match.cc:5337 +#: fortran/match.cc:5646 #, gcc-internal-format, gfc-internal-format msgid "Junk after CALL at %C" msgstr "" -#: fortran/match.cc:5348 +#: fortran/match.cc:5657 #, gcc-internal-format, gfc-internal-format msgid "Expected type-bound procedure or procedure pointer component at %C" msgstr "" -#: fortran/match.cc:5446 +#: fortran/match.cc:5755 #, gcc-internal-format, gfc-internal-format msgid "" "A BOZ literal constant at %L cannot appear as an actual argument in a " "subroutine reference" msgstr "" -#: fortran/match.cc:5587 +#: fortran/match.cc:5896 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in common block name at %C" msgstr "" @@ -80841,69 +81066,69 @@ msgstr "" #. If we find an error, just print it and continue, #. cause it's just semantic, and we can see if there #. are more errors. -#: fortran/match.cc:5662 +#: fortran/match.cc:5971 #, gcc-internal-format msgid "" "Variable %qs at %L in common block %qs at %C must be declared with a C " "interoperable kind since common block %qs is bind(c)" msgstr "" -#: fortran/match.cc:5671 +#: fortran/match.cc:5980 #, gcc-internal-format msgid "" "Variable %qs in common block %qs at %C cannot be bind(c) since it is not " "global" msgstr "" -#: fortran/match.cc:5678 +#: fortran/match.cc:5987 #, gcc-internal-format msgid "Symbol %qs at %C is already in a COMMON block" msgstr "" -#: fortran/match.cc:5686 +#: fortran/match.cc:5995 #, gcc-internal-format msgid "Initialized symbol %qs at %C can only be COMMON in BLOCK DATA" msgstr "" -#: fortran/match.cc:5697 +#: fortran/match.cc:6006 #, gcc-internal-format msgid "" "Symbol %qs at %C is USE associated from module %qs and cannot occur in COMMON" msgstr "" -#: fortran/match.cc:5712 +#: fortran/match.cc:6021 #, gcc-internal-format msgid "Array specification for symbol %qs in COMMON at %C must be explicit" msgstr "" -#: fortran/match.cc:5719 +#: fortran/match.cc:6028 #, gcc-internal-format msgid "Symbol %qs in COMMON at %C cannot be a coarray" msgstr "" -#: fortran/match.cc:5729 +#: fortran/match.cc:6038 #, gcc-internal-format msgid "Symbol %qs in COMMON at %C cannot be a POINTER array" msgstr "" -#: fortran/match.cc:5775 +#: fortran/match.cc:6084 #, gcc-internal-format msgid "" "Symbol %qs, in COMMON block %qs at %C is being indirectly equivalenced to " "another COMMON block %qs" msgstr "" -#: fortran/match.cc:5837 +#: fortran/match.cc:6146 #, gcc-internal-format, gfc-internal-format msgid "BLOCK DATA construct at %L" msgstr "" -#: fortran/match.cc:5950 +#: fortran/match.cc:6259 #, gcc-internal-format msgid "Namelist group name %qs at %C already has a basic type of %s" msgstr "" -#: fortran/match.cc:5960 +#: fortran/match.cc:6269 #, gcc-internal-format msgid "" "Namelist group name %qs at %C already is USE associated and cannot be " @@ -80913,197 +81138,197 @@ msgstr "" #. It is required that members of a namelist be declared #. before the namelist. We check this by checking if the #. symbol has a defined type for IMPLICIT NONE. -#: fortran/match.cc:5985 +#: fortran/match.cc:6294 #, gcc-internal-format msgid "" "Symbol %qs in namelist %qs at %C must be declared before the namelist is " "declared." msgstr "" -#: fortran/match.cc:6005 +#: fortran/match.cc:6314 #, gcc-internal-format msgid "Derived type %qs at %L conflicts with namelist object %qs at %C" msgstr "" -#: fortran/match.cc:6025 +#: fortran/match.cc:6334 #, gcc-internal-format msgid "Assumed size array %qs in namelist %qs at %C is not allowed" msgstr "" -#: fortran/match.cc:6168 +#: fortran/match.cc:6477 #, gcc-internal-format, gfc-internal-format msgid "Derived type component %C is not a permitted EQUIVALENCE member" msgstr "" -#: fortran/match.cc:6176 +#: fortran/match.cc:6485 #, gcc-internal-format, gfc-internal-format msgid "Array reference in EQUIVALENCE at %C cannot be an array section" msgstr "" -#: fortran/match.cc:6209 +#: fortran/match.cc:6518 #, gcc-internal-format, gfc-internal-format msgid "EQUIVALENCE at %C requires two or more objects" msgstr "" -#: fortran/match.cc:6223 +#: fortran/match.cc:6532 #, gcc-internal-format, gfc-internal-format msgid "" "Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C" msgstr "" -#: fortran/match.cc:6236 +#: fortran/match.cc:6545 #, gcc-internal-format, gfc-internal-format msgid "Expecting a comma in EQUIVALENCE at %C" msgstr "" -#: fortran/match.cc:6241 +#: fortran/match.cc:6550 #, gcc-internal-format, gfc-internal-format msgid "EQUIVALENCE statement at %C" msgstr "" -#: fortran/match.cc:6334 +#: fortran/match.cc:6643 #, gcc-internal-format, gfc-internal-format msgid "Invalid use of statement function argument at %L" msgstr "" -#: fortran/match.cc:6401 +#: fortran/match.cc:6710 #, gcc-internal-format, gfc-internal-format msgid "Statement function at %L is recursive" msgstr "" -#: fortran/match.cc:6407 +#: fortran/match.cc:6716 #, gcc-internal-format msgid "Statement function %qs at %L conflicts with function name" msgstr "" -#: fortran/match.cc:6421 +#: fortran/match.cc:6730 #, gcc-internal-format, gfc-internal-format msgid "Statement function at %L cannot appear within an INTERFACE" msgstr "" -#: fortran/match.cc:6426 +#: fortran/match.cc:6735 #, gcc-internal-format, gfc-internal-format msgid "Statement function at %C" msgstr "" -#: fortran/match.cc:6553 fortran/match.cc:6571 fortran/match.cc:6592 +#: fortran/match.cc:6862 fortran/match.cc:6880 fortran/match.cc:6901 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE selector at %L cannot be %s" msgstr "" -#: fortran/match.cc:6602 fortran/match.cc:6608 +#: fortran/match.cc:6911 fortran/match.cc:6917 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE selector at %L must be scalar" msgstr "" -#: fortran/match.cc:6617 +#: fortran/match.cc:6926 #, gcc-internal-format, gfc-internal-format msgid "Expected initialization expression in CASE at %C" msgstr "" -#: fortran/match.cc:6649 +#: fortran/match.cc:6958 #, gcc-internal-format msgid "Expected block name %qs of SELECT construct at %C" msgstr "" -#: fortran/match.cc:7029 +#: fortran/match.cc:7338 #, gcc-internal-format, gfc-internal-format msgid "SELECT TYPE at %C cannot appear in this scope" msgstr "" -#: fortran/match.cc:7057 +#: fortran/match.cc:7366 #, gcc-internal-format, gfc-internal-format msgid "parse error in SELECT TYPE statement at %C" msgstr "" -#: fortran/match.cc:7082 +#: fortran/match.cc:7391 #, gcc-internal-format, gfc-internal-format msgid "" "Selector in SELECT TYPE at %C is not a named variable; use associate-name=>" msgstr "" -#: fortran/match.cc:7270 +#: fortran/match.cc:7579 #, gcc-internal-format, gfc-internal-format msgid "SELECT RANK statement at %C" msgstr "" -#: fortran/match.cc:7311 fortran/match.cc:7365 +#: fortran/match.cc:7620 fortran/match.cc:7674 #, gcc-internal-format, gfc-internal-format msgid "The SELECT RANK selector at %C must be an assumed rank variable" msgstr "" -#: fortran/match.cc:7375 +#: fortran/match.cc:7684 #, gcc-internal-format, gfc-internal-format msgid "parse error in SELECT RANK statement at %C" msgstr "" -#: fortran/match.cc:7411 +#: fortran/match.cc:7720 #, gcc-internal-format, gfc-internal-format msgid "Unexpected CASE statement at %C" msgstr "" -#: fortran/match.cc:7463 +#: fortran/match.cc:7772 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in CASE specification at %C" msgstr "" -#: fortran/match.cc:7481 +#: fortran/match.cc:7790 #, gcc-internal-format, gfc-internal-format msgid "Unexpected TYPE IS statement at %C" msgstr "" -#: fortran/match.cc:7513 +#: fortran/match.cc:7822 #, gcc-internal-format, gfc-internal-format msgid "" "The type-spec shall not specify a sequence derived type or a type with the " "BIND attribute in SELECT TYPE at %C [F2003:C815]" msgstr "" -#: fortran/match.cc:7524 +#: fortran/match.cc:7833 #, gcc-internal-format, gfc-internal-format msgid "" "All the LEN type parameters in the TYPE IS statement at %C must be ASSUMED" msgstr "" -#: fortran/match.cc:7535 +#: fortran/match.cc:7844 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in TYPE IS specification at %C" msgstr "" -#: fortran/match.cc:7611 +#: fortran/match.cc:7920 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in CLASS IS specification at %C" msgstr "" -#: fortran/match.cc:7631 +#: fortran/match.cc:7940 #, gcc-internal-format, gfc-internal-format msgid "Unexpected RANK statement at %C" msgstr "" -#: fortran/match.cc:7677 +#: fortran/match.cc:7986 #, gcc-internal-format, gfc-internal-format msgid "" "The SELECT RANK CASE expression at %C must be a scalar, integer constant" msgstr "" -#: fortran/match.cc:7686 +#: fortran/match.cc:7995 #, gcc-internal-format, gfc-internal-format msgid "" "The value of the SELECT RANK CASE expression at %C must not be less than " "zero or greater than %d" msgstr "" -#: fortran/match.cc:7713 +#: fortran/match.cc:8022 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in RANK specification at %C" msgstr "" -#: fortran/match.cc:7835 +#: fortran/match.cc:8144 #, gcc-internal-format, gfc-internal-format msgid "ELSEWHERE statement at %C not enclosed in WHERE block" msgstr "" -#: fortran/match.cc:7873 +#: fortran/match.cc:8182 #, gcc-internal-format msgid "Label %qs at %C doesn't match WHERE label %qs" msgstr "" @@ -82087,7 +82312,7 @@ msgid "" "DEPEND clause at %L of OMP DEPOBJ construct shall have only a single locator" msgstr "" -#: fortran/openmp.cc:5536 fortran/openmp.cc:10390 +#: fortran/openmp.cc:5536 fortran/openmp.cc:10386 #, gcc-internal-format, gfc-internal-format msgid "" "MESSAGE clause at %L requires a scalar default-kind CHARACTER expression" @@ -82124,12 +82349,12 @@ msgstr "" msgid "Unexpected junk after $OMP FLUSH statement at %C" msgstr "" -#: fortran/openmp.cc:6013 fortran/openmp.cc:13208 +#: fortran/openmp.cc:6013 fortran/openmp.cc:13204 #, gcc-internal-format, gfc-internal-format msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L" msgstr "" -#: fortran/openmp.cc:6017 fortran/openmp.cc:13212 +#: fortran/openmp.cc:6017 fortran/openmp.cc:13208 #, gcc-internal-format, gfc-internal-format msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L" msgstr "" @@ -82634,7 +82859,7 @@ msgstr "" msgid "%s clause at %L requires a scalar INTEGER expression" msgstr "" -#: fortran/openmp.cc:8219 fortran/openmp.cc:10425 +#: fortran/openmp.cc:8219 fortran/openmp.cc:10421 #, gcc-internal-format, gfc-internal-format msgid "INTEGER expression of %s clause at %L must be positive" msgstr "" @@ -82654,7 +82879,7 @@ msgstr "" msgid "Cray pointee object %qs of derived type in %s clause at %L" msgstr "" -#: fortran/openmp.cc:8251 fortran/openmp.cc:10248 +#: fortran/openmp.cc:8251 fortran/openmp.cc:10244 #, gcc-internal-format msgid "POINTER object %qs of polymorphic type in %s clause at %L" msgstr "" @@ -82669,7 +82894,7 @@ msgstr "" msgid "Cray pointee object %qs of polymorphic type in %s clause at %L" msgstr "" -#: fortran/openmp.cc:8271 fortran/openmp.cc:9682 fortran/openmp.cc:9983 +#: fortran/openmp.cc:8271 fortran/openmp.cc:9682 fortran/openmp.cc:9967 #, gcc-internal-format msgid "Assumed size array %qs in %s clause at %L" msgstr "" @@ -82679,22 +82904,22 @@ msgstr "" msgid "Assumed rank array %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:8290 fortran/openmp.cc:9970 +#: fortran/openmp.cc:8290 fortran/openmp.cc:9954 #, gcc-internal-format msgid "POINTER object %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:8295 fortran/openmp.cc:10252 +#: fortran/openmp.cc:8295 fortran/openmp.cc:10248 #, gcc-internal-format msgid "Cray pointer object %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:8300 fortran/openmp.cc:10255 +#: fortran/openmp.cc:8300 fortran/openmp.cc:10251 #, gcc-internal-format msgid "Cray pointee object %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:8305 fortran/openmp.cc:10243 +#: fortran/openmp.cc:8305 fortran/openmp.cc:10239 #, gcc-internal-format msgid "ALLOCATABLE object %qs in %s clause at %L" msgstr "" @@ -82828,8 +83053,8 @@ msgstr "" msgid "ORDER clause must not be used together with ORDERED at %L" msgstr "" -#: fortran/openmp.cc:8630 fortran/openmp.cc:8641 fortran/resolve.cc:12061 -#: fortran/resolve.cc:13670 +#: fortran/openmp.cc:8630 fortran/openmp.cc:8641 fortran/resolve.cc:12199 +#: fortran/resolve.cc:13788 #, gcc-internal-format, gfc-internal-format msgid "IF clause at %L requires a scalar LOGICAL expression" msgstr "" @@ -82913,7 +83138,7 @@ msgid "" "mapped" msgstr "" -#: fortran/openmp.cc:8908 fortran/openmp.cc:12763 +#: fortran/openmp.cc:8908 fortran/openmp.cc:12759 #, gcc-internal-format msgid "Object %qs is not a variable at %L" msgstr "" @@ -82940,7 +83165,7 @@ msgstr "" #: fortran/openmp.cc:8958 fortran/openmp.cc:8970 fortran/openmp.cc:8991 #: fortran/openmp.cc:9003 fortran/openmp.cc:9065 fortran/openmp.cc:9073 #: fortran/openmp.cc:9094 fortran/openmp.cc:9105 fortran/openmp.cc:9117 -#: fortran/openmp.cc:9352 fortran/openmp.cc:12787 +#: fortran/openmp.cc:9352 fortran/openmp.cc:12783 #, gcc-internal-format msgid "Symbol %qs present on multiple clauses at %L" msgstr "" @@ -82985,7 +83210,7 @@ msgstr "" msgid "%qs appears more than once in %<allocate%> at %L" msgstr "" -#: fortran/openmp.cc:9216 fortran/trans-openmp.cc:7432 +#: fortran/openmp.cc:9216 fortran/trans-openmp.cc:8309 #, gcc-internal-format msgid "" "%qs specified in %<allocate%> clause at %L but not in an explicit " @@ -83189,669 +83414,666 @@ msgstr "" msgid "%qs in %s clause at %L is a zero size array section" msgstr "" -#: fortran/openmp.cc:9688 -#, gcc-internal-format -msgid "" -"List item %qs with allocatable components is not permitted in map clause at " -"%L" -msgstr "" - -#: fortran/openmp.cc:9698 -#, gcc-internal-format, gfc-internal-format -msgid "Mapping polymorphic list item at %L is unspecified behavior" -msgstr "" - -#: fortran/openmp.cc:9734 +#: fortran/openmp.cc:9718 #, gcc-internal-format, gfc-internal-format msgid "" "TARGET%s with map-type other than TO, FROM, TOFROM, or ALLOC on MAP clause " "at %L" msgstr "" -#: fortran/openmp.cc:9765 +#: fortran/openmp.cc:9749 #, gcc-internal-format, gfc-internal-format msgid "" "TARGET ENTER DATA with map-type other than TO, TOFROM or ALLOC on MAP clause " "at %L" msgstr "" -#: fortran/openmp.cc:9794 +#: fortran/openmp.cc:9778 #, gcc-internal-format, gfc-internal-format msgid "" "TARGET EXIT DATA with map-type other than FROM, TOFROM, RELEASE, or DELETE " "on MAP clause at %L" msgstr "" -#: fortran/openmp.cc:9810 fortran/openmp.cc:9954 +#: fortran/openmp.cc:9794 fortran/openmp.cc:9938 #, gcc-internal-format msgid "THREADPRIVATE object %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:9813 fortran/openmp.cc:9957 +#: fortran/openmp.cc:9797 fortran/openmp.cc:9941 #, gcc-internal-format msgid "Cray pointee %qs in %s clause at %L" msgstr "" #. Non-TARGET (i.e. DISPATCH) requires a C_PTR. -#: fortran/openmp.cc:9827 +#: fortran/openmp.cc:9811 #, gcc-internal-format msgid "List item %qs in %s clause at %L must be of TYPE(C_PTR)" msgstr "" -#: fortran/openmp.cc:9886 +#: fortran/openmp.cc:9870 #, gcc-internal-format msgid "Memspace %qs at %L in USES_ALLOCATORS must be a predefined memory space" msgstr "" -#: fortran/openmp.cc:9894 +#: fortran/openmp.cc:9878 #, gcc-internal-format msgid "" "Allocator %qs at %L in USES_ALLOCATORS must be a scalar integer of kind " "%<omp_allocator_handle_kind%>" msgstr "" -#: fortran/openmp.cc:9902 +#: fortran/openmp.cc:9886 #, gcc-internal-format msgid "" "Allocator %qs at %L in USES_ALLOCATORS must either a variable or a " "predefined allocator" msgstr "" -#: fortran/openmp.cc:9907 +#: fortran/openmp.cc:9891 #, gcc-internal-format msgid "" "A memory space or traits array may not be specified for predefined allocator " "%qs at %L" msgstr "" -#: fortran/openmp.cc:9918 +#: fortran/openmp.cc:9902 #, gcc-internal-format msgid "" "Traits array %qs in USES_ALLOCATORS %L must be a one-dimensional named " "constant array of type %<omp_alloctrait%>" msgstr "" -#: fortran/openmp.cc:9948 +#: fortran/openmp.cc:9932 #, gcc-internal-format msgid "" "%<inscan%> and non-%<inscan%> %<reduction%> clauses on the same construct at " "%L" msgstr "" -#: fortran/openmp.cc:9960 +#: fortran/openmp.cc:9944 #, gcc-internal-format msgid "Associate name %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:9967 +#: fortran/openmp.cc:9951 #, gcc-internal-format msgid "Procedure pointer %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:9973 +#: fortran/openmp.cc:9957 #, gcc-internal-format msgid "Cray pointer %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:9986 +#: fortran/openmp.cc:9970 #, gcc-internal-format msgid "Variable %qs in %s clause is used in NAMELIST statement at %L" msgstr "" #. case OMP_LIST_REDUCTION: -#: fortran/openmp.cc:9996 +#: fortran/openmp.cc:9980 #, gcc-internal-format msgid "INTENT(IN) POINTER %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:10007 +#: fortran/openmp.cc:9991 #, gcc-internal-format msgid "DETACH event handle %qs in %s clause at %L" msgstr "" -#: fortran/openmp.cc:10029 -#, gcc-internal-format, gfc-internal-format -msgid "FIRSTPRIVATE with polymorphic list item at %L is unspecified behavior" +#: fortran/openmp.cc:10016 +#, gcc-internal-format +msgid "" +"Sorry, list item %qs at %L with allocatable components is not yet supported " +"in %s clause" msgstr "" -#: fortran/openmp.cc:10058 +#: fortran/openmp.cc:10022 +#, gcc-internal-format +msgid "" +"Polymorphic list item %qs at %L in %s clause has unspecified behavior and " +"unsupported" +msgstr "" + +#: fortran/openmp.cc:10054 #, gcc-internal-format, gfc-internal-format msgid "Only DEFAULT permitted as reduction-modifier in REDUCTION clause at %L" msgstr "" -#: fortran/openmp.cc:10151 +#: fortran/openmp.cc:10147 #, gcc-internal-format, gfc-internal-format msgid "!$OMP DECLARE REDUCTION %s not found for type %s at %L" msgstr "" -#: fortran/openmp.cc:10179 +#: fortran/openmp.cc:10175 #, gcc-internal-format, gfc-internal-format msgid "LINEAR clause modifier used on DO or SIMD construct at %L" msgstr "" -#: fortran/openmp.cc:10185 +#: fortran/openmp.cc:10181 #, gcc-internal-format, gfc-internal-format msgid "" "LINEAR clause modifier other than VAL used on DO or SIMD construct at %L" msgstr "" -#: fortran/openmp.cc:10193 +#: fortran/openmp.cc:10189 #, gcc-internal-format msgid "LINEAR variable %qs must be INTEGER at %L" msgstr "" -#: fortran/openmp.cc:10198 +#: fortran/openmp.cc:10194 #, gcc-internal-format msgid "LINEAR dummy argument %qs with VALUE attribute with %s modifier at %L" msgstr "" -#: fortran/openmp.cc:10209 +#: fortran/openmp.cc:10205 #, gcc-internal-format msgid "" "%qs in LINEAR clause at %L requires a scalar integer linear-step expression" msgstr "" -#: fortran/openmp.cc:10226 +#: fortran/openmp.cc:10222 #, gcc-internal-format msgid "" "%qs in LINEAR clause at %L requires a constant integer linear-step " "expression or dummy argument specified in UNIFORM clause" msgstr "" -#: fortran/openmp.cc:10260 +#: fortran/openmp.cc:10256 #, gcc-internal-format msgid "%s clause variable %qs at %L is neither a POINTER nor an array" msgstr "" -#: fortran/openmp.cc:10320 +#: fortran/openmp.cc:10316 #, gcc-internal-format, gfc-internal-format msgid "NUM_TEAMS lower bound at %L larger than upper bound at %L" msgstr "" -#: fortran/openmp.cc:10333 +#: fortran/openmp.cc:10329 #, gcc-internal-format, gfc-internal-format msgid "Value of HINT clause at %L shall be a valid constant hint expression" msgstr "" -#: fortran/openmp.cc:10343 +#: fortran/openmp.cc:10339 #, gcc-internal-format, gfc-internal-format msgid "" "DIST_SCHEDULE clause's chunk_size at %L requires a scalar INTEGER expression" msgstr "" -#: fortran/openmp.cc:10353 +#: fortran/openmp.cc:10349 #, gcc-internal-format msgid "" "%<GRAINSIZE%> clause at %L must not be used together with %<NUM_TASKS%> " "clause" msgstr "" -#: fortran/openmp.cc:10356 +#: fortran/openmp.cc:10352 #, gcc-internal-format msgid "" "%<REDUCTION%> clause at %L must not be used together with %<NOGROUP%> clause" msgstr "" -#: fortran/openmp.cc:10360 +#: fortran/openmp.cc:10356 #, gcc-internal-format msgid "%<FULL%> clause at %C must not be used together with %<PARTIAL%> clause" msgstr "" -#: fortran/openmp.cc:10383 +#: fortran/openmp.cc:10379 #, gcc-internal-format, gfc-internal-format msgid "Incompatible use of TILE and COLLAPSE at %L" msgstr "" -#: fortran/openmp.cc:10407 +#: fortran/openmp.cc:10403 #, gcc-internal-format, gfc-internal-format msgid "" "TARGET DATA must contain at least one MAP, USE_DEVICE_PTR, or " "USE_DEVICE_ADDR clause at %L" msgstr "" -#: fortran/openmp.cc:10410 +#: fortran/openmp.cc:10406 #, gcc-internal-format, gfc-internal-format msgid "%s must contain at least one MAP clause at %L" msgstr "" -#: fortran/openmp.cc:10420 +#: fortran/openmp.cc:10416 #, gcc-internal-format, gfc-internal-format msgid "SIZES requires constant expression at %L" msgstr "" -#: fortran/openmp.cc:10436 +#: fortran/openmp.cc:10432 #, gcc-internal-format msgid "" "%qs at %L should be a scalar of type integer(kind=omp_event_handle_kind)" msgstr "" -#: fortran/openmp.cc:10441 +#: fortran/openmp.cc:10437 #, gcc-internal-format, gfc-internal-format msgid "The event handle at %L must not be an array element" msgstr "" -#: fortran/openmp.cc:10445 +#: fortran/openmp.cc:10441 #, gcc-internal-format, gfc-internal-format msgid "The event handle at %L must not be part of a derived type or class" msgstr "" -#: fortran/openmp.cc:10449 +#: fortran/openmp.cc:10445 #, gcc-internal-format msgid "" "%<DETACH%> clause at %L must not be used together with %<MERGEABLE%> clause" msgstr "" -#: fortran/openmp.cc:10456 +#: fortran/openmp.cc:10452 #, gcc-internal-format msgid "%<host_data%> construct at %L requires %<use_device%> clause" msgstr "" -#: fortran/openmp.cc:10610 +#: fortran/openmp.cc:10606 #, gcc-internal-format, gfc-internal-format msgid "Expected IF at %L in atomic compare capture" msgstr "" -#: fortran/openmp.cc:10618 +#: fortran/openmp.cc:10614 #, gcc-internal-format, gfc-internal-format msgid "Expected ELSE at %L in atomic compare capture" msgstr "" -#: fortran/openmp.cc:10730 +#: fortran/openmp.cc:10726 #, gcc-internal-format msgid "" "Expected %<==%>, %<.EQ.%> or %<.EQV.%> atomic comparison expression at %L" msgstr "" -#: fortran/openmp.cc:10736 +#: fortran/openmp.cc:10732 #, gcc-internal-format, gfc-internal-format msgid "Expected scalar intrinsic variable at %L in atomic comparison" msgstr "" -#: fortran/openmp.cc:10744 +#: fortran/openmp.cc:10740 #, gcc-internal-format, gfc-internal-format msgid "Expected scalar intrinsic expression at %L in atomic comparison" msgstr "" -#: fortran/openmp.cc:10752 +#: fortran/openmp.cc:10748 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC statement must set a scalar variable of intrinsic type at %L" msgstr "" -#: fortran/openmp.cc:10761 +#: fortran/openmp.cc:10757 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC statement must assign an expression of intrinsic type at %L" msgstr "" -#: fortran/openmp.cc:10768 +#: fortran/openmp.cc:10764 #, gcc-internal-format, gfc-internal-format msgid "!$OMP ATOMIC with ALLOCATABLE variable at %L" msgstr "" -#: fortran/openmp.cc:10785 +#: fortran/openmp.cc:10781 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC READ statement must read from a scalar variable of intrinsic " "type at %L" msgstr "" -#: fortran/openmp.cc:10790 +#: fortran/openmp.cc:10786 #, gcc-internal-format, gfc-internal-format msgid "" "expr in !$OMP ATOMIC WRITE assignment var = expr must be scalar and cannot " "reference var at %L" msgstr "" -#: fortran/openmp.cc:10802 +#: fortran/openmp.cc:10798 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC capture-statement must set a scalar variable of intrinsic type " "at %L" msgstr "" -#: fortran/openmp.cc:10810 +#: fortran/openmp.cc:10806 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC capture-statement requires a scalar variable of intrinsic type " "at %L" msgstr "" -#: fortran/openmp.cc:10820 +#: fortran/openmp.cc:10816 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC CAPTURE capture statement reads from different variable than " "update statement writes into at %L" msgstr "" -#: fortran/openmp.cc:10836 +#: fortran/openmp.cc:10832 #, gcc-internal-format msgid "" "For !$OMP ATOMIC COMPARE, the first operand in comparison at %L must be the " "variable %qs that the update statement writes into at %L" msgstr "" -#: fortran/openmp.cc:10844 +#: fortran/openmp.cc:10840 #, gcc-internal-format, gfc-internal-format msgid "" "expr in !$OMP ATOMIC COMPARE assignment var = expr must be scalar and cannot " "reference var at %L" msgstr "" -#: fortran/openmp.cc:10862 +#: fortran/openmp.cc:10858 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC UPDATE at %L with FAIL clause requires either the COMPARE " "clause or using the intrinsic MIN/MAX procedure" msgstr "" -#: fortran/openmp.cc:10889 +#: fortran/openmp.cc:10885 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC assignment operator must be binary +, *, -, /, .AND., .OR., ." "EQV. or .NEQV. at %L" msgstr "" -#: fortran/openmp.cc:10937 +#: fortran/openmp.cc:10933 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC assignment must be var = var op expr or var = expr op var at %L" msgstr "" -#: fortran/openmp.cc:10951 +#: fortran/openmp.cc:10947 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC var = var op expr not mathematically equivalent to var = var op " "(expr) at %L" msgstr "" -#: fortran/openmp.cc:10984 +#: fortran/openmp.cc:10980 #, gcc-internal-format, gfc-internal-format msgid "" "expr in !$OMP ATOMIC assignment var = var op expr must be scalar and cannot " "reference var at %L" msgstr "" -#: fortran/openmp.cc:11008 +#: fortran/openmp.cc:11004 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC assignment intrinsic IAND, IOR or IEOR must have two arguments " "at %L" msgstr "" -#: fortran/openmp.cc:11015 +#: fortran/openmp.cc:11011 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC assignment intrinsic must be MIN, MAX, IAND, IOR or IEOR at %L" msgstr "" -#: fortran/openmp.cc:11038 +#: fortran/openmp.cc:11034 #, gcc-internal-format msgid "" "!$OMP ATOMIC intrinsic arguments except one must not reference %qs at %L" msgstr "" -#: fortran/openmp.cc:11045 +#: fortran/openmp.cc:11041 #, gcc-internal-format, gfc-internal-format msgid "!$OMP ATOMIC intrinsic arguments must be scalar at %L" msgstr "" -#: fortran/openmp.cc:11053 +#: fortran/openmp.cc:11049 #, gcc-internal-format msgid "First or last !$OMP ATOMIC intrinsic argument must be %qs at %L" msgstr "" -#: fortran/openmp.cc:11071 +#: fortran/openmp.cc:11067 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP ATOMIC assignment must have an operator or intrinsic on right hand " "side at %L" msgstr "" -#: fortran/openmp.cc:11076 +#: fortran/openmp.cc:11072 #, gcc-internal-format, gfc-internal-format msgid "unexpected !$OMP ATOMIC expression at %L" msgstr "" -#: fortran/openmp.cc:11184 +#: fortran/openmp.cc:11180 #, gcc-internal-format, gfc-internal-format msgid "" "With INSCAN at %L, expected loop body with !$OMP SCAN between two structured " "block sequences" msgstr "" -#: fortran/openmp.cc:11191 +#: fortran/openmp.cc:11187 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP SCAN at %L with zero executable statements in preceding structured " "block sequence" msgstr "" -#: fortran/openmp.cc:11198 +#: fortran/openmp.cc:11194 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP SCAN at %L with zero executable statements in succeeding structured " "block sequence" msgstr "" -#: fortran/openmp.cc:11414 +#: fortran/openmp.cc:11410 #, gcc-internal-format, gfc-internal-format msgid "%s cannot contain loop in intervening code at %L" msgstr "" -#: fortran/openmp.cc:11495 +#: fortran/openmp.cc:11491 #, gcc-internal-format, gfc-internal-format msgid "%s cannot contain OpenMP directive in intervening code at %L" msgstr "" -#: fortran/openmp.cc:11507 fortran/openmp.cc:11533 +#: fortran/openmp.cc:11503 fortran/openmp.cc:11529 #, gcc-internal-format, gfc-internal-format msgid "%s cannot contain OpenMP API call in intervening code at %L" msgstr "" -#: fortran/openmp.cc:12056 +#: fortran/openmp.cc:12052 #, gcc-internal-format, gfc-internal-format msgid "SIZES clause is required on !$OMP TILE construct at %L" msgstr "" -#: fortran/openmp.cc:12083 +#: fortran/openmp.cc:12079 #, gcc-internal-format, gfc-internal-format msgid "%s cannot be a DO WHILE or DO without loop control at %L" msgstr "" -#: fortran/openmp.cc:12089 +#: fortran/openmp.cc:12085 #, gcc-internal-format, gfc-internal-format msgid "%s cannot be a DO CONCURRENT loop at %L" msgstr "" -#: fortran/openmp.cc:12099 +#: fortran/openmp.cc:12095 #, gcc-internal-format, gfc-internal-format msgid "" "Generated loop of UNROLL construct at %L without PARTIAL clause does not " "have canonical form" msgstr "" -#: fortran/openmp.cc:12106 +#: fortran/openmp.cc:12102 #, gcc-internal-format, gfc-internal-format msgid "" "UNROLL construct at %L with PARTIAL clause generates just one loop with " "canonical form but %d loops are needed" msgstr "" -#: fortran/openmp.cc:12121 +#: fortran/openmp.cc:12117 #, gcc-internal-format, gfc-internal-format msgid "" "TILE construct at %L generates %d loops with canonical form but %d loops are " "needed" msgstr "" -#: fortran/openmp.cc:12132 +#: fortran/openmp.cc:12128 #, gcc-internal-format msgid "Imperfectly nested loop using generated loops" msgstr "" -#: fortran/openmp.cc:12144 +#: fortran/openmp.cc:12140 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable must be of type integer at %L" msgstr "" -#: fortran/openmp.cc:12151 +#: fortran/openmp.cc:12147 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable must not be THREADPRIVATE at %L" msgstr "" -#: fortran/openmp.cc:12166 +#: fortran/openmp.cc:12162 #, gcc-internal-format, gfc-internal-format msgid "" "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE or " "ALLOCATE at %L" msgstr "" -#: fortran/openmp.cc:12170 +#: fortran/openmp.cc:12166 #, gcc-internal-format, gfc-internal-format msgid "" "%s iteration variable present on clause other than PRIVATE, LASTPRIVATE, " "ALLOCATE or LINEAR at %L" msgstr "" -#: fortran/openmp.cc:12177 +#: fortran/openmp.cc:12173 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable used in more than one loop at %L" msgstr "" -#: fortran/openmp.cc:12183 +#: fortran/openmp.cc:12179 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable at %L is bound in intervening code" msgstr "" -#: fortran/openmp.cc:12192 +#: fortran/openmp.cc:12188 #, gcc-internal-format, gfc-internal-format msgid "%s loop start expression not in canonical form at %L" msgstr "" -#: fortran/openmp.cc:12199 +#: fortran/openmp.cc:12195 #, gcc-internal-format, gfc-internal-format msgid "%s loop start expression at %L uses variable bound in intervening code" msgstr "" -#: fortran/openmp.cc:12208 +#: fortran/openmp.cc:12204 #, gcc-internal-format, gfc-internal-format msgid "%s loop end expression not in canonical form at %L" msgstr "" -#: fortran/openmp.cc:12215 +#: fortran/openmp.cc:12211 #, gcc-internal-format, gfc-internal-format msgid "%s loop end expression at %L uses variable bound in intervening code" msgstr "" -#: fortran/openmp.cc:12222 +#: fortran/openmp.cc:12218 #, gcc-internal-format, gfc-internal-format msgid "%s loop bounds reference different iteration variables at %L" msgstr "" -#: fortran/openmp.cc:12228 +#: fortran/openmp.cc:12224 #, gcc-internal-format, gfc-internal-format msgid "%s loop increment not in canonical form at %L" msgstr "" -#: fortran/openmp.cc:12235 +#: fortran/openmp.cc:12231 #, gcc-internal-format, gfc-internal-format msgid "" "%s loop increment expression at %L uses variable bound in intervening code" msgstr "" -#: fortran/openmp.cc:12246 +#: fortran/openmp.cc:12242 #, gcc-internal-format msgid "Non-rectangular loops from generated loops unsupported" msgstr "" #. Parse error, can't recover from this. -#: fortran/openmp.cc:12262 +#: fortran/openmp.cc:12258 #, gcc-internal-format, gfc-internal-format msgid "not enough DO loops for collapsed %s (level %d) at %L" msgstr "" -#: fortran/openmp.cc:12274 +#: fortran/openmp.cc:12270 #, gcc-internal-format, gfc-internal-format msgid "%s inner loops must be perfectly nested with ORDERED clause at %L" msgstr "" -#: fortran/openmp.cc:12281 +#: fortran/openmp.cc:12277 #, gcc-internal-format, gfc-internal-format msgid "" "%s inner loops must be perfectly nested with REDUCTION INSCAN clause at %L" msgstr "" -#: fortran/openmp.cc:12288 +#: fortran/openmp.cc:12284 #, gcc-internal-format, gfc-internal-format msgid "%s inner loops must be perfectly nested at %L" msgstr "" -#: fortran/openmp.cc:12542 fortran/openmp.cc:12555 +#: fortran/openmp.cc:12538 fortran/openmp.cc:12551 #, gcc-internal-format, gfc-internal-format msgid "The %s directive cannot be specified within a %s region at %L" msgstr "" -#: fortran/openmp.cc:12574 +#: fortran/openmp.cc:12570 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP cannot be a DO WHILE or DO without loop control at %L" msgstr "" -#: fortran/openmp.cc:12580 +#: fortran/openmp.cc:12576 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L" msgstr "" -#: fortran/openmp.cc:12586 +#: fortran/openmp.cc:12582 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP iteration variable must be of type integer at %L" msgstr "" -#: fortran/openmp.cc:12602 +#: fortran/openmp.cc:12598 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP %s loops don't form rectangular iteration space at %L" msgstr "" -#: fortran/openmp.cc:12614 +#: fortran/openmp.cc:12610 #, gcc-internal-format, gfc-internal-format msgid "%s !$ACC LOOP loops not perfectly nested at %L" msgstr "" -#: fortran/openmp.cc:12624 fortran/openmp.cc:12633 +#: fortran/openmp.cc:12620 fortran/openmp.cc:12629 #, gcc-internal-format, gfc-internal-format msgid "not enough DO loops for %s !$ACC LOOP at %L" msgstr "" -#: fortran/openmp.cc:12649 +#: fortran/openmp.cc:12645 #, gcc-internal-format, gfc-internal-format msgid "" "Tiled loop cannot be parallelized across gangs, workers and vectors at the " "same time at %L" msgstr "" -#: fortran/openmp.cc:12670 +#: fortran/openmp.cc:12666 #, gcc-internal-format, gfc-internal-format msgid "TILE requires constant expression at %L" msgstr "" -#: fortran/openmp.cc:12770 +#: fortran/openmp.cc:12766 #, gcc-internal-format msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L" msgstr "" -#: fortran/openmp.cc:12817 +#: fortran/openmp.cc:12813 #, gcc-internal-format msgid "" "NAME %qs does not refer to a subroutine or function in !$ACC ROUTINE " "( NAME ) at %L" msgstr "" -#: fortran/openmp.cc:12823 +#: fortran/openmp.cc:12819 #, gcc-internal-format msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L" msgstr "" -#: fortran/openmp.cc:12910 +#: fortran/openmp.cc:12906 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP TARGET region at %L with a nested TEAMS at %L may not contain any " @@ -83859,113 +84081,113 @@ msgid "" "construct" msgstr "" -#: fortran/openmp.cc:12914 +#: fortran/openmp.cc:12910 #, gcc-internal-format, gfc-internal-format msgid "" "!$OMP TARGET region at %L with a nested TEAMS may not contain any other " "statement, declaration or directive outside of the single TEAMS construct" msgstr "" -#: fortran/openmp.cc:12932 +#: fortran/openmp.cc:12928 #, gcc-internal-format msgid "" "%<OMP DISPATCH%> directive at %L must be followed by a procedure call with " "optional assignment" msgstr "" -#: fortran/openmp.cc:12939 +#: fortran/openmp.cc:12935 #, gcc-internal-format msgid "" "%<OMP DISPATCH%> directive at %L cannot be followed by a procedure pointer" msgstr "" -#: fortran/openmp.cc:13034 +#: fortran/openmp.cc:13030 #, gcc-internal-format, gfc-internal-format msgid "OMP TARGET UPDATE at %L requires at least one TO or FROM clause" msgstr "" -#: fortran/openmp.cc:13048 +#: fortran/openmp.cc:13044 #, gcc-internal-format, gfc-internal-format msgid "" "OMP CRITICAL at %L with HINT clause requires a NAME, except when " "omp_sync_hint_none is used" msgstr "" -#: fortran/openmp.cc:13054 +#: fortran/openmp.cc:13050 #, gcc-internal-format msgid "" "Unexpected !$OMP SCAN at %L outside loop construct with %<inscan%> REDUCTION " "clause" msgstr "" -#: fortran/openmp.cc:13083 +#: fortran/openmp.cc:13079 #, gcc-internal-format msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L" msgstr "" -#: fortran/openmp.cc:13119 +#: fortran/openmp.cc:13115 #, gcc-internal-format, gfc-internal-format msgid "Expected constant non-negative scalar integer offset expression at %L" msgstr "" -#: fortran/openmp.cc:13122 +#: fortran/openmp.cc:13118 #, gcc-internal-format msgid "" "For range-based %<adjust_args%>, a constant positive scalar integer " "expression is required at %L" msgstr "" -#: fortran/openmp.cc:13136 +#: fortran/openmp.cc:13132 #, gcc-internal-format, gfc-internal-format msgid "Expected dummy parameter name or a positive integer at %L" msgstr "" -#: fortran/openmp.cc:13162 +#: fortran/openmp.cc:13158 #, gcc-internal-format, gfc-internal-format msgid "" "Variable other than OMP_PRIV or OMP_ORIG used in INITIALIZER clause of !$OMP " "DECLARE REDUCTION at %L" msgstr "" -#: fortran/openmp.cc:13170 +#: fortran/openmp.cc:13166 #, gcc-internal-format, gfc-internal-format msgid "" "Variable other than OMP_OUT or OMP_IN used in combiner of !$OMP DECLARE " "REDUCTION at %L" msgstr "" -#: fortran/openmp.cc:13199 +#: fortran/openmp.cc:13195 #, gcc-internal-format, gfc-internal-format msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L" msgstr "" -#: fortran/openmp.cc:13221 +#: fortran/openmp.cc:13217 #, gcc-internal-format, gfc-internal-format msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L" msgstr "" -#: fortran/openmp.cc:13237 +#: fortran/openmp.cc:13233 #, gcc-internal-format, gfc-internal-format msgid "" "Subroutine call with alternate returns in combiner of !$OMP DECLARE " "REDUCTION at %L" msgstr "" -#: fortran/openmp.cc:13252 +#: fortran/openmp.cc:13248 #, gcc-internal-format, gfc-internal-format msgid "" "Subroutine call with alternate returns in INITIALIZER clause of !$OMP " "DECLARE REDUCTION at %L" msgstr "" -#: fortran/openmp.cc:13262 +#: fortran/openmp.cc:13258 #, gcc-internal-format, gfc-internal-format msgid "" "One of actual subroutine arguments in INITIALIZER clause of !$OMP DECLARE " "REDUCTION must be OMP_PRIV at %L" msgstr "" -#: fortran/openmp.cc:13270 +#: fortran/openmp.cc:13266 #, gcc-internal-format, gfc-internal-format msgid "" "Missing INITIALIZER clause for !$OMP DECLARE REDUCTION of derived type " @@ -84078,23 +84300,23 @@ msgstr "" msgid "command-line option %<-fno-builtin-%s%> is not valid for Fortran" msgstr "" -#: fortran/parse.cc:665 +#: fortran/parse.cc:664 #, gcc-internal-format, gfc-internal-format msgid "Unclassifiable statement at %C" msgstr "" -#: fortran/parse.cc:729 +#: fortran/parse.cc:728 #, gcc-internal-format, gfc-internal-format msgid "" "OpenACC directives other than ROUTINE may not appear in PURE procedures at %C" msgstr "" -#: fortran/parse.cc:795 +#: fortran/parse.cc:794 #, gcc-internal-format, gfc-internal-format msgid "Unclassifiable OpenACC directive at %C" msgstr "" -#: fortran/parse.cc:827 +#: fortran/parse.cc:826 #, gcc-internal-format msgid "" "%qs directive at %L must either have a variable argument or, if associated " @@ -84102,7 +84324,7 @@ msgid "" "construct" msgstr "" -#: fortran/parse.cc:839 +#: fortran/parse.cc:838 #, gcc-internal-format msgid "" "Structure-component expression at %L in %qs directive not permitted in " @@ -84110,7 +84332,7 @@ msgid "" "be preceded by an executable statement or OpenMP construct" msgstr "" -#: fortran/parse.cc:865 +#: fortran/parse.cc:864 #, gcc-internal-format msgid "" "%qs directive at %L associated with an ALLOCATE stmt must be preceded by an " @@ -84118,66 +84340,66 @@ msgid "" "have the allocatable or pointer attribute" msgstr "" -#: fortran/parse.cc:1055 fortran/parse.cc:1366 +#: fortran/parse.cc:1054 fortran/parse.cc:1365 #, gcc-internal-format, gfc-internal-format msgid "" "OpenMP directive at %C is not pure and thus may not appear in a PURE " "procedure" msgstr "" -#: fortran/parse.cc:1333 +#: fortran/parse.cc:1332 #, gcc-internal-format, gfc-internal-format msgid "Unclassifiable OpenMP directive at %C" msgstr "" -#: fortran/parse.cc:1353 +#: fortran/parse.cc:1352 #, gcc-internal-format msgid "" "OpenMP ERROR directive at %L with %<at(execution)%> clause in a PURE " "procedure" msgstr "" -#: fortran/parse.cc:1491 +#: fortran/parse.cc:1490 #, gcc-internal-format, gfc-internal-format msgid "Unclassifiable GCC directive at %C" msgstr "" -#: fortran/parse.cc:1493 +#: fortran/parse.cc:1492 #, gcc-internal-format, gfc-internal-format msgid "Unclassifiable GCC directive at %C, ignored" msgstr "" -#: fortran/parse.cc:1553 fortran/parse.cc:1780 +#: fortran/parse.cc:1552 fortran/parse.cc:1779 #, gcc-internal-format, gfc-internal-format msgid "Zero is not a valid statement label at %C" msgstr "" -#: fortran/parse.cc:1560 fortran/parse.cc:1772 +#: fortran/parse.cc:1559 fortran/parse.cc:1771 #, gcc-internal-format, gfc-internal-format msgid "Non-numeric character in statement label at %C" msgstr "" -#: fortran/parse.cc:1572 fortran/parse.cc:1821 +#: fortran/parse.cc:1571 fortran/parse.cc:1820 #, gcc-internal-format, gfc-internal-format msgid "Semicolon at %C needs to be preceded by statement" msgstr "" -#: fortran/parse.cc:1579 fortran/parse.cc:1836 +#: fortran/parse.cc:1578 fortran/parse.cc:1835 #, gcc-internal-format, gfc-internal-format msgid "Statement label without statement at %L" msgstr "" -#: fortran/parse.cc:1642 fortran/parse.cc:1823 +#: fortran/parse.cc:1641 fortran/parse.cc:1822 #, gcc-internal-format, gfc-internal-format msgid "Fortran 2008: Semicolon at %C without preceding statement" msgstr "" -#: fortran/parse.cc:1665 fortran/parse.cc:1799 +#: fortran/parse.cc:1664 fortran/parse.cc:1798 #, gcc-internal-format, gfc-internal-format msgid "Bad continuation line at %C" msgstr "" -#: fortran/parse.cc:2151 +#: fortran/parse.cc:2150 #, gcc-internal-format, gfc-internal-format msgid "FORMAT statement at %L does not have a statement label" msgstr "" @@ -84187,82 +84409,82 @@ msgstr "" msgid "gfc_ascii_statement(): Bad statement code" msgstr "" -#: fortran/parse.cc:3247 +#: fortran/parse.cc:3249 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement at %C" msgstr "" -#: fortran/parse.cc:3404 +#: fortran/parse.cc:3408 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C cannot follow %s statement at %L" msgstr "" -#: fortran/parse.cc:3421 +#: fortran/parse.cc:3425 #, gcc-internal-format msgid "Unexpected end of file in %qs" msgstr "" -#: fortran/parse.cc:3456 +#: fortran/parse.cc:3460 #, gcc-internal-format msgid "Derived-type %qs with SEQUENCE must not have a CONTAINS section at %C" msgstr "" -#: fortran/parse.cc:3459 +#: fortran/parse.cc:3463 #, gcc-internal-format msgid "Derived-type %qs with BIND(C) must not have a CONTAINS section at %C" msgstr "" -#: fortran/parse.cc:3479 +#: fortran/parse.cc:3483 #, gcc-internal-format, gfc-internal-format msgid "Components in TYPE at %C must precede CONTAINS" msgstr "" -#: fortran/parse.cc:3483 +#: fortran/parse.cc:3487 #, gcc-internal-format, gfc-internal-format msgid "Type-bound procedure at %C" msgstr "" -#: fortran/parse.cc:3491 +#: fortran/parse.cc:3495 #, gcc-internal-format, gfc-internal-format msgid "GENERIC binding at %C" msgstr "" -#: fortran/parse.cc:3499 +#: fortran/parse.cc:3503 #, gcc-internal-format, gfc-internal-format msgid "FINAL procedure declaration at %C" msgstr "" -#: fortran/parse.cc:3511 +#: fortran/parse.cc:3515 #, gcc-internal-format, gfc-internal-format msgid "Derived type definition at %C with empty CONTAINS section" msgstr "" -#: fortran/parse.cc:3521 fortran/parse.cc:3976 +#: fortran/parse.cc:3525 fortran/parse.cc:3980 #, gcc-internal-format, gfc-internal-format msgid "PRIVATE statement in TYPE at %C must be inside a MODULE" msgstr "" -#: fortran/parse.cc:3528 +#: fortran/parse.cc:3532 #, gcc-internal-format, gfc-internal-format msgid "PRIVATE statement at %C must precede procedure bindings" msgstr "" -#: fortran/parse.cc:3535 fortran/parse.cc:3989 +#: fortran/parse.cc:3539 fortran/parse.cc:3993 #, gcc-internal-format, gfc-internal-format msgid "Duplicate PRIVATE statement at %C" msgstr "" -#: fortran/parse.cc:3545 +#: fortran/parse.cc:3549 #, gcc-internal-format, gfc-internal-format msgid "SEQUENCE statement at %C must precede CONTAINS" msgstr "" -#: fortran/parse.cc:3549 +#: fortran/parse.cc:3553 #, gcc-internal-format, gfc-internal-format msgid "Already inside a CONTAINS block at %C" msgstr "" -#: fortran/parse.cc:3668 +#: fortran/parse.cc:3672 #, gcc-internal-format, gfc-internal-format msgid "" "Component %s at %L of type LOCK_TYPE must have a codimension or be a " @@ -84270,27 +84492,27 @@ msgid "" "pointer attribute" msgstr "" -#: fortran/parse.cc:3674 +#: fortran/parse.cc:3678 #, gcc-internal-format, gfc-internal-format msgid "" "Pointer component %s at %L has a noncoarray subcomponent of type LOCK_TYPE, " "which must have a codimension or be a subcomponent of a coarray" msgstr "" -#: fortran/parse.cc:3679 +#: fortran/parse.cc:3683 #, gcc-internal-format, gfc-internal-format msgid "" "Allocatable component %s at %L of type LOCK_TYPE must have a codimension" msgstr "" -#: fortran/parse.cc:3683 +#: fortran/parse.cc:3687 #, gcc-internal-format, gfc-internal-format msgid "" "Allocatable component %s at %L must have a codimension as it has a " "noncoarray subcomponent of type LOCK_TYPE" msgstr "" -#: fortran/parse.cc:3688 +#: fortran/parse.cc:3692 #, gcc-internal-format, gfc-internal-format msgid "" "Noncoarray component %s at %L of type LOCK_TYPE or with subcomponent of type " @@ -84299,7 +84521,7 @@ msgid "" "subcomponent exists)" msgstr "" -#: fortran/parse.cc:3695 +#: fortran/parse.cc:3699 #, gcc-internal-format, gfc-internal-format msgid "" "Noncoarray component %s at %L of type LOCK_TYPE or with subcomponent of type " @@ -84308,7 +84530,7 @@ msgid "" "codimension or a coarray subcomponent)" msgstr "" -#: fortran/parse.cc:3705 +#: fortran/parse.cc:3709 #, gcc-internal-format, gfc-internal-format msgid "" "Component %s at %L of type EVENT_TYPE must have a codimension or be a " @@ -84316,27 +84538,27 @@ msgid "" "pointer attribute" msgstr "" -#: fortran/parse.cc:3711 +#: fortran/parse.cc:3715 #, gcc-internal-format, gfc-internal-format msgid "" "Pointer component %s at %L has a noncoarray subcomponent of type EVENT_TYPE, " "which must have a codimension or be a subcomponent of a coarray" msgstr "" -#: fortran/parse.cc:3716 +#: fortran/parse.cc:3720 #, gcc-internal-format, gfc-internal-format msgid "" "Allocatable component %s at %L of type EVENT_TYPE must have a codimension" msgstr "" -#: fortran/parse.cc:3720 +#: fortran/parse.cc:3724 #, gcc-internal-format, gfc-internal-format msgid "" "Allocatable component %s at %L must have a codimension as it has a " "noncoarray subcomponent of type EVENT_TYPE" msgstr "" -#: fortran/parse.cc:3725 +#: fortran/parse.cc:3729 #, gcc-internal-format, gfc-internal-format msgid "" "Noncoarray component %s at %L of type EVENT_TYPE or with subcomponent of " @@ -84345,7 +84567,7 @@ msgid "" "subcomponent exists)" msgstr "" -#: fortran/parse.cc:3732 +#: fortran/parse.cc:3736 #, gcc-internal-format, gfc-internal-format msgid "" "Noncoarray component %s at %L of type EVENT_TYPE or with subcomponent of " @@ -84354,201 +84576,206 @@ msgid "" "codimension or a coarray subcomponent)" msgstr "" -#: fortran/parse.cc:3784 +#: fortran/parse.cc:3788 #, gcc-internal-format, gfc-internal-format msgid "failed to create map component '%s'" msgstr "" -#: fortran/parse.cc:3817 +#: fortran/parse.cc:3821 #, gcc-internal-format, gfc-internal-format msgid "failed to create union component '%s'" msgstr "" -#: fortran/parse.cc:3872 +#: fortran/parse.cc:3876 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in nested structure declaration at %C" msgstr "" -#: fortran/parse.cc:3959 +#: fortran/parse.cc:3963 #, gcc-internal-format, gfc-internal-format msgid "FINAL declaration at %C must be inside CONTAINS" msgstr "" -#: fortran/parse.cc:3967 +#: fortran/parse.cc:3971 #, gcc-internal-format, gfc-internal-format msgid "Derived type definition at %C without components" msgstr "" -#: fortran/parse.cc:3983 +#: fortran/parse.cc:3987 #, gcc-internal-format, gfc-internal-format msgid "PRIVATE statement at %C must precede structure components" msgstr "" -#: fortran/parse.cc:4000 +#: fortran/parse.cc:4004 #, gcc-internal-format, gfc-internal-format msgid "SEQUENCE statement at %C must precede structure components" msgstr "" -#: fortran/parse.cc:4006 +#: fortran/parse.cc:4010 #, gcc-internal-format, gfc-internal-format msgid "SEQUENCE attribute at %C already specified in TYPE statement" msgstr "" -#: fortran/parse.cc:4011 +#: fortran/parse.cc:4015 #, gcc-internal-format, gfc-internal-format msgid "Duplicate SEQUENCE statement at %C" msgstr "" -#: fortran/parse.cc:4021 +#: fortran/parse.cc:4025 #, gcc-internal-format, gfc-internal-format msgid "CONTAINS block in derived type definition at %C" msgstr "" -#: fortran/parse.cc:4079 +#: fortran/parse.cc:4083 #, gcc-internal-format, gfc-internal-format msgid "ENUM declaration at %C has no ENUMERATORS" msgstr "" -#: fortran/parse.cc:4166 +#: fortran/parse.cc:4170 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in INTERFACE block at %C" msgstr "" -#: fortran/parse.cc:4191 +#: fortran/parse.cc:4195 #, gcc-internal-format msgid "" "Name %qs of ABSTRACT INTERFACE at %C cannot be the same as an intrinsic type" msgstr "" -#: fortran/parse.cc:4222 +#: fortran/parse.cc:4226 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement at %C in INTERFACE body" msgstr "" -#: fortran/parse.cc:4240 +#: fortran/parse.cc:4244 #, gcc-internal-format msgid "" "INTERFACE procedure %qs at %L has the same name as the enclosing procedure" msgstr "" -#: fortran/parse.cc:4379 +#: fortran/parse.cc:4383 #, gcc-internal-format, gfc-internal-format msgid "%s statement is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/parse.cc:4411 +#: fortran/parse.cc:4415 #, gcc-internal-format, gfc-internal-format msgid "%s statement is not allowed inside of BLOCK DATA at %C" msgstr "" -#: fortran/parse.cc:4495 +#: fortran/parse.cc:4499 #, gcc-internal-format, gfc-internal-format msgid "%s statement must appear in a MODULE" msgstr "" -#: fortran/parse.cc:4503 +#: fortran/parse.cc:4507 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C follows another accessibility specification" msgstr "" -#: fortran/parse.cc:4555 +#: fortran/parse.cc:4559 #, gcc-internal-format msgid "Bad kind expression for function %qs at %L" msgstr "" -#: fortran/parse.cc:4559 +#: fortran/parse.cc:4563 #, gcc-internal-format msgid "The type for function %qs at %L is not accessible" msgstr "" -#: fortran/parse.cc:4619 +#: fortran/parse.cc:4623 #, gcc-internal-format, gfc-internal-format msgid "ELSEWHERE statement at %C follows previous unmasked ELSEWHERE" msgstr "" -#: fortran/parse.cc:4641 +#: fortran/parse.cc:4645 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in WHERE block at %C" msgstr "" -#: fortran/parse.cc:4700 +#: fortran/parse.cc:4704 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in FORALL block at %C" msgstr "" -#: fortran/parse.cc:4751 +#: fortran/parse.cc:4755 #, gcc-internal-format, gfc-internal-format msgid "ELSE IF statement at %C cannot follow ELSE statement at %L" msgstr "" -#: fortran/parse.cc:4769 +#: fortran/parse.cc:4773 #, gcc-internal-format, gfc-internal-format msgid "Duplicate ELSE statements at %L and %C" msgstr "" -#: fortran/parse.cc:4830 +#: fortran/parse.cc:4834 #, gcc-internal-format, gfc-internal-format msgid "Expected a CASE or END SELECT statement following SELECT CASE at %C" msgstr "" -#: fortran/parse.cc:4914 +#: fortran/parse.cc:4918 #, gcc-internal-format, gfc-internal-format msgid "" "Expected TYPE IS, CLASS IS or END SELECT statement following SELECT TYPE at " "%C" msgstr "" -#: fortran/parse.cc:4990 +#: fortran/parse.cc:4994 #, gcc-internal-format, gfc-internal-format msgid "Expected RANK or RANK DEFAULT following SELECT RANK at %C" msgstr "" -#: fortran/parse.cc:5054 +#: fortran/parse.cc:5058 #, gcc-internal-format msgid "Variable %qs at %C cannot be redefined inside loop beginning at %L" msgstr "" -#: fortran/parse.cc:5087 +#: fortran/parse.cc:5091 #, gcc-internal-format, gfc-internal-format msgid "End of nonblock DO statement at %C is within another block" msgstr "" -#: fortran/parse.cc:5097 +#: fortran/parse.cc:5101 #, gcc-internal-format, gfc-internal-format msgid "End of nonblock DO statement at %C is interwoven with another DO loop" msgstr "" -#: fortran/parse.cc:5123 +#: fortran/parse.cc:5127 #, gcc-internal-format, gfc-internal-format msgid "CRITICAL block inside of OpenACC region at %C" msgstr "" -#: fortran/parse.cc:5124 +#: fortran/parse.cc:5128 #, gcc-internal-format, gfc-internal-format msgid "CRITICAL block inside of OpenMP region at %C" msgstr "" -#: fortran/parse.cc:5150 +#: fortran/parse.cc:5154 #, gcc-internal-format, gfc-internal-format msgid "Statement label in END CRITICAL at %C does not match CRITICAL label" msgstr "" -#: fortran/parse.cc:5219 fortran/parse.cc:6162 +#: fortran/parse.cc:5223 fortran/parse.cc:6210 #, gcc-internal-format, gfc-internal-format msgid "BLOCK construct at %C" msgstr "" -#: fortran/parse.cc:5254 +#: fortran/parse.cc:5445 #, gcc-internal-format, gfc-internal-format msgid "ASSOCIATE construct at %C" msgstr "" -#: fortran/parse.cc:5567 +#: fortran/parse.cc:5489 +#, gcc-internal-format, gfc-internal-format +msgid "CHANGE TEAM construct at %C" +msgstr "" + +#: fortran/parse.cc:5615 #, gcc-internal-format, gfc-internal-format msgid "Statement label in ENDDO at %C doesn't match DO label" msgstr "" -#: fortran/parse.cc:5583 +#: fortran/parse.cc:5631 #, gcc-internal-format, gfc-internal-format msgid "Named block DO at %L requires matching ENDDO name" msgstr "" @@ -84561,168 +84788,168 @@ msgstr "" #. and the "end metadirective" which is required in a #. "begin metadirective" construct, or perhaps the #. "end metadirective" is missing entirely. -#: fortran/parse.cc:5817 fortran/parse.cc:6314 +#: fortran/parse.cc:5865 fortran/parse.cc:6362 #, gcc-internal-format, gfc-internal-format msgid "Expected OMP END METADIRECTIVE at %C" msgstr "" -#: fortran/parse.cc:5827 fortran/parse.cc:6330 fortran/parse.cc:6348 +#: fortran/parse.cc:5875 fortran/parse.cc:6378 fortran/parse.cc:6396 #, gcc-internal-format, gfc-internal-format msgid "Duplicated NOWAIT clause on %s and %s at %C" msgstr "" -#: fortran/parse.cc:5931 fortran/parse.cc:5993 +#: fortran/parse.cc:5979 fortran/parse.cc:6041 #, gcc-internal-format, gfc-internal-format msgid "OpenACC directive inside of CRITICAL block at %C" msgstr "" -#: fortran/parse.cc:5968 +#: fortran/parse.cc:6016 #, gcc-internal-format, gfc-internal-format msgid "Expecting %s at %C" msgstr "" -#: fortran/parse.cc:6012 +#: fortran/parse.cc:6060 #, gcc-internal-format, gfc-internal-format msgid "Expected DO loop at %C" msgstr "" -#: fortran/parse.cc:6032 +#: fortran/parse.cc:6080 #, gcc-internal-format, gfc-internal-format msgid "Redundant !$ACC END LOOP at %C" msgstr "" -#: fortran/parse.cc:6082 +#: fortran/parse.cc:6130 #, gcc-internal-format, gfc-internal-format msgid "%s statements at %L and %L have both no list item but only one may" msgstr "" -#: fortran/parse.cc:6102 +#: fortran/parse.cc:6150 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s at %C; expected ALLOCATE or %s statement" msgstr "" -#: fortran/parse.cc:6105 +#: fortran/parse.cc:6153 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s at %C; expected ALLOCATE statement after %s" msgstr "" -#: fortran/parse.cc:6341 +#: fortran/parse.cc:6389 #, gcc-internal-format, gfc-internal-format msgid "Name after !$omp critical and !$omp end critical does not match at %C" msgstr "" -#: fortran/parse.cc:6405 +#: fortran/parse.cc:6453 #, gcc-internal-format msgid "" "%<OMP DISPATCH%> directive must be followed by a procedure call with " "optional assignment at %C" msgstr "" -#: fortran/parse.cc:6416 +#: fortran/parse.cc:6464 #, gcc-internal-format, gfc-internal-format msgid "Duplicated NOWAIT clause on !$OMP DISPATCH and !$OMP END DISPATCH at %C" msgstr "" -#: fortran/parse.cc:6488 +#: fortran/parse.cc:6536 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in OMP METADIRECTIVE block at %C" msgstr "" -#: fortran/parse.cc:6529 +#: fortran/parse.cc:6577 #, gcc-internal-format, gfc-internal-format msgid "" "Variants in a metadirective at %L have different associations; consider " "using a BLOCK construct or BEGIN/END METADIRECTIVE" msgstr "" -#: fortran/parse.cc:6534 +#: fortran/parse.cc:6582 #, gcc-internal-format, gfc-internal-format msgid "" "Variants in a metadirective at %L have different associations; consider " "using a BLOCK construct" msgstr "" -#: fortran/parse.cc:6584 +#: fortran/parse.cc:6633 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C cannot terminate a non-block DO loop" msgstr "" -#: fortran/parse.cc:6598 +#: fortran/parse.cc:6647 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %C after the first executable statement" msgstr "" -#: fortran/parse.cc:6714 +#: fortran/parse.cc:6767 #, gcc-internal-format msgid "%<GCC unroll%> directive not at the start of a loop at %C" msgstr "" -#: fortran/parse.cc:6717 +#: fortran/parse.cc:6770 #, gcc-internal-format msgid "%<GCC ivdep%> directive not at the start of a loop at %C" msgstr "" -#: fortran/parse.cc:6720 +#: fortran/parse.cc:6773 #, gcc-internal-format msgid "%<GCC vector%> directive not at the start of a loop at %C" msgstr "" -#: fortran/parse.cc:6723 +#: fortran/parse.cc:6776 #, gcc-internal-format msgid "%<GCC novector%> directive not at the start of a loop at %C" msgstr "" -#: fortran/parse.cc:6839 +#: fortran/parse.cc:6892 #, gcc-internal-format msgid "Contained procedure %qs at %C is already ambiguous" msgstr "" -#: fortran/parse.cc:6896 +#: fortran/parse.cc:6949 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in CONTAINS section at %C" msgstr "" -#: fortran/parse.cc:6921 +#: fortran/parse.cc:6974 #, gcc-internal-format, gfc-internal-format msgid "CONTAINS statement without FUNCTION or SUBROUTINE statement at %L" msgstr "" -#: fortran/parse.cc:7035 +#: fortran/parse.cc:7088 #, gcc-internal-format, gfc-internal-format msgid "CONTAINS statement at %C is already in a contained program unit" msgstr "" -#: fortran/parse.cc:7087 +#: fortran/parse.cc:7140 #, gcc-internal-format msgid "Global binding name %qs at %L is already being used as a %s at %L" msgstr "" -#: fortran/parse.cc:7091 +#: fortran/parse.cc:7144 #, gcc-internal-format msgid "Global name %qs at %L is already being used as a %s at %L" msgstr "" -#: fortran/parse.cc:7097 +#: fortran/parse.cc:7150 #, gcc-internal-format msgid "Global binding name %qs at %L is already being used at %L" msgstr "" -#: fortran/parse.cc:7100 +#: fortran/parse.cc:7153 #, gcc-internal-format msgid "Global name %qs at %L is already being used at %L" msgstr "" -#: fortran/parse.cc:7122 +#: fortran/parse.cc:7175 #, gcc-internal-format, gfc-internal-format msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L" msgstr "" -#: fortran/parse.cc:7148 +#: fortran/parse.cc:7201 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in BLOCK DATA at %C" msgstr "" -#: fortran/parse.cc:7251 +#: fortran/parse.cc:7304 #, gcc-internal-format, gfc-internal-format msgid "Unexpected %s statement in MODULE at %C" msgstr "" @@ -84730,7 +84957,7 @@ msgstr "" #. If we see a duplicate main program, shut down. If the second #. instance is an implied main program, i.e. data decls or executable #. statements, we're in for lots of errors. -#: fortran/parse.cc:7768 +#: fortran/parse.cc:7821 #, gcc-internal-format, gfc-internal-format msgid "Two main PROGRAMs at %L and %C" msgstr "" @@ -85650,14 +85877,14 @@ msgid "" "recursively in procedure %qs. Declare it RECURSIVE or use %<-frecursive%>" msgstr "" -#: fortran/resolve.cc:1994 fortran/resolve.cc:7143 +#: fortran/resolve.cc:1994 fortran/resolve.cc:7179 #, gcc-internal-format msgid "" "Non-RECURSIVE procedure %qs at %L is possibly calling itself recursively. " "Declare it RECURSIVE or use %<-frecursive%>" msgstr "" -#: fortran/resolve.cc:2053 fortran/resolve.cc:11574 fortran/resolve.cc:13597 +#: fortran/resolve.cc:2053 fortran/resolve.cc:11708 fortran/resolve.cc:13715 #, gcc-internal-format, gfc-internal-format msgid "Label %d referenced at %L is never defined" msgstr "" @@ -85790,47 +86017,47 @@ msgstr "" msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?" msgstr "" -#: fortran/resolve.cc:3129 fortran/resolve.cc:19037 +#: fortran/resolve.cc:3129 fortran/resolve.cc:19155 #, gcc-internal-format msgid "Function %qs at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.cc:3261 +#: fortran/resolve.cc:3283 #, gcc-internal-format, gfc-internal-format msgid "Reference to impure function at %L inside a DO CONCURRENT" msgstr "" -#: fortran/resolve.cc:3271 +#: fortran/resolve.cc:3294 #, gcc-internal-format msgid "Reference to impure function %qs at %L inside a FORALL %s" msgstr "" -#: fortran/resolve.cc:3278 +#: fortran/resolve.cc:3301 #, gcc-internal-format msgid "Reference to impure function %qs at %L inside a DO CONCURRENT %s" msgstr "" -#: fortran/resolve.cc:3285 +#: fortran/resolve.cc:3308 #, gcc-internal-format msgid "Reference to impure function %qs at %L within a PURE procedure" msgstr "" -#: fortran/resolve.cc:3352 +#: fortran/resolve.cc:3375 #, gcc-internal-format msgid "Unexpected junk after %qs at %L" msgstr "" -#: fortran/resolve.cc:3363 +#: fortran/resolve.cc:3386 #, gcc-internal-format msgid "%qs at %L is not a function" msgstr "" -#: fortran/resolve.cc:3371 fortran/resolve.cc:3930 +#: fortran/resolve.cc:3394 fortran/resolve.cc:3966 #, gcc-internal-format msgid "ABSTRACT INTERFACE %qs must not be referenced at %L" msgstr "" -#: fortran/resolve.cc:3383 +#: fortran/resolve.cc:3406 #, gcc-internal-format msgid "" "ABSTRACT INTERFACE %qs at %L must not have an assumed character length " @@ -85838,498 +86065,498 @@ msgid "" msgstr "" #. Internal procedures are taken care of in resolve_contained_fntype. -#: fortran/resolve.cc:3426 +#: fortran/resolve.cc:3449 #, gcc-internal-format msgid "" "Function %qs is declared CHARACTER(*) and cannot be used at %L since it is " "not a dummy argument" msgstr "" -#: fortran/resolve.cc:3447 +#: fortran/resolve.cc:3470 #, gcc-internal-format, gfc-internal-format msgid "Different argument lists in external dummy function %s at %L and %L" msgstr "" -#: fortran/resolve.cc:3486 +#: fortran/resolve.cc:3509 #, gcc-internal-format msgid "resolve_function(): bad function type" msgstr "" -#: fortran/resolve.cc:3500 +#: fortran/resolve.cc:3523 #, gcc-internal-format, gfc-internal-format msgid "" "A BOZ literal constant at %L cannot appear as an actual argument in a " "function reference" msgstr "" -#: fortran/resolve.cc:3516 +#: fortran/resolve.cc:3539 #, gcc-internal-format msgid "" "User defined non-ELEMENTAL function %qs at %L not allowed in WORKSHARE " "construct" msgstr "" -#: fortran/resolve.cc:3578 +#: fortran/resolve.cc:3601 #, gcc-internal-format msgid "" "ENTRY %qs at %L cannot be called recursively, as function %qs is not " "RECURSIVE" msgstr "" -#: fortran/resolve.cc:3582 +#: fortran/resolve.cc:3605 #, gcc-internal-format msgid "Function %qs at %L cannot be called recursively, as it is not RECURSIVE" msgstr "" -#: fortran/resolve.cc:3640 +#: fortran/resolve.cc:3663 #, gcc-internal-format msgid "Using function %qs at %L is deprecated" msgstr "" -#: fortran/resolve.cc:3666 +#: fortran/resolve.cc:3701 #, gcc-internal-format, gfc-internal-format msgid "Subroutine call at %L in a DO CONCURRENT block is not PURE" msgstr "" -#: fortran/resolve.cc:3674 +#: fortran/resolve.cc:3710 #, gcc-internal-format msgid "Subroutine call to %qs in FORALL block at %L is not PURE" msgstr "" -#: fortran/resolve.cc:3680 +#: fortran/resolve.cc:3716 #, gcc-internal-format msgid "Subroutine call to %qs in DO CONCURRENT block at %L is not PURE" msgstr "" -#: fortran/resolve.cc:3686 +#: fortran/resolve.cc:3722 #, gcc-internal-format msgid "Subroutine call to %qs at %L is not PURE" msgstr "" -#: fortran/resolve.cc:3754 +#: fortran/resolve.cc:3790 #, gcc-internal-format msgid "There is no specific subroutine for the generic %qs at %L" msgstr "" -#: fortran/resolve.cc:3763 +#: fortran/resolve.cc:3799 #, gcc-internal-format msgid "" "Generic subroutine %qs at %L is not consistent with an intrinsic subroutine " "interface" msgstr "" -#: fortran/resolve.cc:3798 +#: fortran/resolve.cc:3834 #, gcc-internal-format msgid "" "Subroutine %qs at %L is INTRINSIC but is not compatible with an intrinsic" msgstr "" -#: fortran/resolve.cc:3843 +#: fortran/resolve.cc:3879 #, gcc-internal-format msgid "Unable to resolve the specific subroutine %qs at %L" msgstr "" -#: fortran/resolve.cc:3901 +#: fortran/resolve.cc:3937 #, gcc-internal-format msgid "%qs at %L has a type, which is not consistent with the CALL at %L" msgstr "" -#: fortran/resolve.cc:3940 +#: fortran/resolve.cc:3976 #, gcc-internal-format msgid "" "ENTRY %qs at %L cannot be called recursively, as subroutine %qs is not " "RECURSIVE" msgstr "" -#: fortran/resolve.cc:3944 +#: fortran/resolve.cc:3980 #, gcc-internal-format msgid "" "SUBROUTINE %qs at %L cannot be called recursively, as it is not RECURSIVE" msgstr "" -#: fortran/resolve.cc:3995 +#: fortran/resolve.cc:4031 #, gcc-internal-format, gfc-internal-format msgid "Different argument lists in external dummy subroutine %s at %L and %L" msgstr "" -#: fortran/resolve.cc:4026 +#: fortran/resolve.cc:4062 #, gcc-internal-format msgid "resolve_subroutine(): bad function type" msgstr "" -#: fortran/resolve.cc:4043 +#: fortran/resolve.cc:4079 #, gcc-internal-format msgid "Using subroutine %qs at %L is deprecated" msgstr "" -#: fortran/resolve.cc:4070 +#: fortran/resolve.cc:4106 #, gcc-internal-format, gfc-internal-format msgid "Shapes for operands at %L and %L are not conformable" msgstr "" -#: fortran/resolve.cc:4122 +#: fortran/resolve.cc:4158 #, gcc-internal-format msgid "logical_to_bitwise(): Bad intrinsic" msgstr "" -#: fortran/resolve.cc:4225 +#: fortran/resolve.cc:4261 #, gcc-internal-format msgid "Impure function %qs at %L might not be evaluated" msgstr "" -#: fortran/resolve.cc:4229 +#: fortran/resolve.cc:4265 #, gcc-internal-format, gfc-internal-format msgid "Impure function at %L might not be evaluated" msgstr "" -#: fortran/resolve.cc:4324 +#: fortran/resolve.cc:4360 #, gcc-internal-format msgid "BOZ literal constant at %L cannot be an operand of unary operator %qs" msgstr "" -#: fortran/resolve.cc:4332 +#: fortran/resolve.cc:4368 #, gcc-internal-format, gfc-internal-format msgid "Negation of unsigned expression at %L not permitted " msgstr "" -#: fortran/resolve.cc:4353 +#: fortran/resolve.cc:4389 #, gcc-internal-format msgid "Operands at %L and %L cannot appear as operands of binary operator %qs" msgstr "" -#: fortran/resolve.cc:4363 +#: fortran/resolve.cc:4399 #, gcc-internal-format, gfc-internal-format msgid "Invalid context for NULL() pointer at %L" msgstr "" -#: fortran/resolve.cc:4381 +#: fortran/resolve.cc:4417 #, gcc-internal-format msgid "Operand of unary numeric operator %qs at %L is %s" msgstr "" -#: fortran/resolve.cc:4396 fortran/resolve.cc:4430 +#: fortran/resolve.cc:4432 fortran/resolve.cc:4466 #, gcc-internal-format msgid "Operands of binary numeric operator %qs at %L are %s/%s" msgstr "" -#: fortran/resolve.cc:4410 fortran/resolve.cc:4599 fortran/resolve.cc:4768 +#: fortran/resolve.cc:4446 fortran/resolve.cc:4635 fortran/resolve.cc:4804 #, gcc-internal-format, gfc-internal-format msgid "Inconsistent ranks for operator at %L and %L" msgstr "" -#: fortran/resolve.cc:4422 +#: fortran/resolve.cc:4458 #, gcc-internal-format msgid "" "Unexpected derived-type entities in binary intrinsic numeric operator %qs at " "%L" msgstr "" -#: fortran/resolve.cc:4446 +#: fortran/resolve.cc:4482 #, gcc-internal-format, gfc-internal-format msgid "Operands of string concatenation operator at %L are %s/%s" msgstr "" -#: fortran/resolve.cc:4489 +#: fortran/resolve.cc:4525 #, gcc-internal-format msgid "Operands of logical operator %qs at %L are %s/%s" msgstr "" -#: fortran/resolve.cc:4512 +#: fortran/resolve.cc:4548 #, gcc-internal-format, gfc-internal-format msgid "Operand of .not. operator at %L is %s" msgstr "" -#: fortran/resolve.cc:4527 +#: fortran/resolve.cc:4563 #, gcc-internal-format, gfc-internal-format msgid "COMPLEX quantities cannot be compared at %L" msgstr "" -#: fortran/resolve.cc:4557 fortran/resolve.cc:4572 +#: fortran/resolve.cc:4593 fortran/resolve.cc:4608 #, gcc-internal-format, gfc-internal-format msgid "" "BOZ literal constant near %L cannot appear as an operand of a relational " "operator" msgstr "" -#: fortran/resolve.cc:4607 +#: fortran/resolve.cc:4643 #, gcc-internal-format, gfc-internal-format msgid "Inconsistent types for operator at %L and %L: %s and %s" msgstr "" -#: fortran/resolve.cc:4631 +#: fortran/resolve.cc:4667 #, gcc-internal-format, gfc-internal-format msgid "Equality comparison for %s at %L" msgstr "" -#: fortran/resolve.cc:4633 +#: fortran/resolve.cc:4669 #, gcc-internal-format, gfc-internal-format msgid "Inequality comparison for %s at %L" msgstr "" -#: fortran/resolve.cc:4646 +#: fortran/resolve.cc:4682 #, gcc-internal-format, gfc-internal-format msgid "Logicals at %L must be compared with %s instead of %s" msgstr "" -#: fortran/resolve.cc:4654 +#: fortran/resolve.cc:4690 #, gcc-internal-format msgid "Operands of comparison operator %qs at %L are %s/%s" msgstr "" -#: fortran/resolve.cc:4669 +#: fortran/resolve.cc:4705 #, gcc-internal-format msgid "Unknown operator %qs at %L; did you mean %qs?" msgstr "" -#: fortran/resolve.cc:4672 +#: fortran/resolve.cc:4708 #, gcc-internal-format msgid "Unknown operator %qs at %L" msgstr "" -#: fortran/resolve.cc:4677 +#: fortran/resolve.cc:4713 #, gcc-internal-format msgid "Operand of user operator %qs at %L is %s" msgstr "" -#: fortran/resolve.cc:4684 +#: fortran/resolve.cc:4720 #, gcc-internal-format msgid "Operands of user operator %qs at %L are %s/%s" msgstr "" -#: fortran/resolve.cc:4698 +#: fortran/resolve.cc:4734 #, gcc-internal-format msgid "resolve_operator(): Bad intrinsic" msgstr "" -#: fortran/resolve.cc:4796 +#: fortran/resolve.cc:4832 #, gcc-internal-format, gfc-internal-format msgid "Inconsistent coranks for operator at %L and %L" msgstr "" -#: fortran/resolve.cc:4995 +#: fortran/resolve.cc:5031 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d" msgstr "" -#: fortran/resolve.cc:5000 +#: fortran/resolve.cc:5036 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d" msgstr "" -#: fortran/resolve.cc:5010 +#: fortran/resolve.cc:5046 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d" msgstr "" -#: fortran/resolve.cc:5015 +#: fortran/resolve.cc:5051 #, gcc-internal-format, gfc-internal-format msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d" msgstr "" -#: fortran/resolve.cc:5036 +#: fortran/resolve.cc:5072 #, gcc-internal-format, gfc-internal-format msgid "Illegal stride of zero at %L" msgstr "" -#: fortran/resolve.cc:5053 +#: fortran/resolve.cc:5089 #, gcc-internal-format, gfc-internal-format msgid "" "Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d" msgstr "" -#: fortran/resolve.cc:5061 +#: fortran/resolve.cc:5097 #, gcc-internal-format, gfc-internal-format msgid "" "Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d" msgstr "" -#: fortran/resolve.cc:5077 +#: fortran/resolve.cc:5113 #, gcc-internal-format, gfc-internal-format msgid "" "Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d" msgstr "" -#: fortran/resolve.cc:5086 +#: fortran/resolve.cc:5122 #, gcc-internal-format, gfc-internal-format msgid "" "Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d" msgstr "" -#: fortran/resolve.cc:5102 +#: fortran/resolve.cc:5138 #, gcc-internal-format msgid "check_dimension(): Bad array reference" msgstr "" -#: fortran/resolve.cc:5125 +#: fortran/resolve.cc:5161 #, gcc-internal-format, gfc-internal-format msgid "Rightmost upper bound of assumed size array section not specified at %L" msgstr "" -#: fortran/resolve.cc:5135 +#: fortran/resolve.cc:5171 #, gcc-internal-format, gfc-internal-format msgid "Rank mismatch in array reference at %L (%d/%d)" msgstr "" -#: fortran/resolve.cc:5143 +#: fortran/resolve.cc:5179 #, gcc-internal-format, gfc-internal-format msgid "Coindex rank mismatch in array reference at %L (%d/%d)" msgstr "" -#: fortran/resolve.cc:5159 +#: fortran/resolve.cc:5195 #, gcc-internal-format, gfc-internal-format msgid "Coindex of codimension %d must be a scalar at %L" msgstr "" -#: fortran/resolve.cc:5187 +#: fortran/resolve.cc:5223 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5193 +#: fortran/resolve.cc:5229 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L must be of INTEGER type, found %s" msgstr "" -#: fortran/resolve.cc:5199 +#: fortran/resolve.cc:5235 #, gcc-internal-format, gfc-internal-format msgid "REAL array index at %L" msgstr "" -#: fortran/resolve.cc:5239 +#: fortran/resolve.cc:5275 #, gcc-internal-format, gfc-internal-format msgid "Argument dim at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5246 +#: fortran/resolve.cc:5282 #, gcc-internal-format, gfc-internal-format msgid "Argument dim at %L must be of INTEGER type" msgstr "" -#: fortran/resolve.cc:5307 +#: fortran/resolve.cc:5343 #, gcc-internal-format, gfc-internal-format msgid "Invalid array reference of a non-array entity at %L" msgstr "" -#: fortran/resolve.cc:5322 +#: fortran/resolve.cc:5358 #, gcc-internal-format msgid "find_array_spec(): unused as(1)" msgstr "" -#: fortran/resolve.cc:5334 +#: fortran/resolve.cc:5370 #, gcc-internal-format msgid "find_array_spec(): unused as(2)" msgstr "" -#: fortran/resolve.cc:5379 +#: fortran/resolve.cc:5415 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L is an array of rank %d" msgstr "" -#: fortran/resolve.cc:5470 +#: fortran/resolve.cc:5506 #, gcc-internal-format, gfc-internal-format msgid "TEAM_NUMBER argument at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5477 +#: fortran/resolve.cc:5513 #, gcc-internal-format, gfc-internal-format msgid "TEAM_NUMBER argument at %L must be of INTEGER type, found %s" msgstr "" -#: fortran/resolve.cc:5491 +#: fortran/resolve.cc:5527 #, gcc-internal-format, gfc-internal-format msgid "TEAM argument at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5500 +#: fortran/resolve.cc:5536 #, gcc-internal-format, gfc-internal-format msgid "" "TEAM argument at %L must be of TEAM_TYPE from the intrinsic module " "ISO_FORTRAN_ENV, found %s" msgstr "" -#: fortran/resolve.cc:5514 +#: fortran/resolve.cc:5550 #, gcc-internal-format, gfc-internal-format msgid "STAT argument at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5521 +#: fortran/resolve.cc:5557 #, gcc-internal-format, gfc-internal-format msgid "STAT argument at %L must be of INTEGER type, found %s" msgstr "" -#: fortran/resolve.cc:5530 +#: fortran/resolve.cc:5566 #, gcc-internal-format, gfc-internal-format msgid "STAT's expression at %L must be a variable" msgstr "" -#: fortran/resolve.cc:5552 +#: fortran/resolve.cc:5588 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.cc:5559 +#: fortran/resolve.cc:5595 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5581 +#: fortran/resolve.cc:5617 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.cc:5588 +#: fortran/resolve.cc:5624 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L must be scalar" msgstr "" -#: fortran/resolve.cc:5608 +#: fortran/resolve.cc:5644 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L is too large" msgstr "" -#: fortran/resolve.cc:5799 +#: fortran/resolve.cc:5835 #, gcc-internal-format msgid "resolve_ref(): Bad array reference" msgstr "" -#: fortran/resolve.cc:5813 +#: fortran/resolve.cc:5849 #, gcc-internal-format, gfc-internal-format msgid "" "Component to the right of a part reference with nonzero rank must not have " "the POINTER attribute at %L" msgstr "" -#: fortran/resolve.cc:5823 +#: fortran/resolve.cc:5859 #, gcc-internal-format, gfc-internal-format msgid "" "Component to the right of a part reference with nonzero rank must not have " "the ALLOCATABLE attribute at %L" msgstr "" -#: fortran/resolve.cc:5871 +#: fortran/resolve.cc:5907 #, gcc-internal-format, gfc-internal-format msgid "" "Two or more part references with nonzero rank must not be specified at %L" msgstr "" -#: fortran/resolve.cc:5983 +#: fortran/resolve.cc:6019 #, gcc-internal-format msgid "gfc_expression_rank(): Two array specs" msgstr "" -#: fortran/resolve.cc:6012 +#: fortran/resolve.cc:6048 #, gcc-internal-format msgid "Illegal coarray index" msgstr "" -#: fortran/resolve.cc:6060 +#: fortran/resolve.cc:6096 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may only be used as actual " "argument" msgstr "" -#: fortran/resolve.cc:6070 +#: fortran/resolve.cc:6106 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L may only be used as actual argument" msgstr "" @@ -86338,14 +86565,14 @@ msgstr "" #. for all inquiry functions in resolve_function; the reason is #. that the function-name resolution happens too late in that #. function. -#: fortran/resolve.cc:6080 +#: fortran/resolve.cc:6116 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-type variable %s at %L as actual argument to an inquiry function " "shall be the first argument" msgstr "" -#: fortran/resolve.cc:6101 +#: fortran/resolve.cc:6137 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank variable %s at %L may only be used as actual argument" msgstr "" @@ -86354,457 +86581,450 @@ msgstr "" #. for all inquiry functions in resolve_function; the reason is #. that the function-name resolution happens too late in that #. function. -#: fortran/resolve.cc:6111 +#: fortran/resolve.cc:6147 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-rank variable %s at %L as actual argument to an inquiry function " "shall be the first argument" msgstr "" -#: fortran/resolve.cc:6122 +#: fortran/resolve.cc:6158 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall not have a subobject " "reference" msgstr "" -#: fortran/resolve.cc:6131 +#: fortran/resolve.cc:6167 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L shall not have a subobject reference" msgstr "" -#: fortran/resolve.cc:6148 +#: fortran/resolve.cc:6184 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank variable %s at %L shall not have a subobject reference" msgstr "" -#: fortran/resolve.cc:6209 +#: fortran/resolve.cc:6245 #, gcc-internal-format msgid "Scalar variable %qs has an array reference at %L" msgstr "" -#: fortran/resolve.cc:6365 +#: fortran/resolve.cc:6401 #, gcc-internal-format msgid "" "Variable %qs, used in a specification expression, is referenced at %L before " "the ENTRY statement in which it is a parameter" msgstr "" -#: fortran/resolve.cc:6370 +#: fortran/resolve.cc:6406 #, gcc-internal-format msgid "" "Variable %qs is used at %L before the ENTRY statement in which it is a " "parameter" msgstr "" -#: fortran/resolve.cc:6444 +#: fortran/resolve.cc:6480 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic subobject of coindexed object at %L" msgstr "" -#: fortran/resolve.cc:6457 +#: fortran/resolve.cc:6493 #, gcc-internal-format, gfc-internal-format msgid "Coindexed object with polymorphic allocatable subcomponent at %L" msgstr "" -#: fortran/resolve.cc:6470 +#: fortran/resolve.cc:6506 #, gcc-internal-format msgid "Using variable %qs at %L is deprecated" msgstr "" -#: fortran/resolve.cc:6526 fortran/resolve.cc:6614 fortran/resolve.cc:6638 +#: fortran/resolve.cc:6562 fortran/resolve.cc:6650 fortran/resolve.cc:6674 #, gcc-internal-format, gfc-internal-format msgid "Invalid array reference at %L" msgstr "" -#: fortran/resolve.cc:6723 +#: fortran/resolve.cc:6759 #, gcc-internal-format msgid "" "%qs at %L is host associated at %L into a contained procedure with an " "internal procedure of the same name" msgstr "" -#: fortran/resolve.cc:6902 fortran/resolve.cc:7054 +#: fortran/resolve.cc:6938 fortran/resolve.cc:7090 #, gcc-internal-format, gfc-internal-format msgid "Error in typebound call at %L" msgstr "" -#: fortran/resolve.cc:7018 +#: fortran/resolve.cc:7054 #, gcc-internal-format, gfc-internal-format msgid "Passed-object at %L must be scalar" msgstr "" -#: fortran/resolve.cc:7025 +#: fortran/resolve.cc:7061 #, gcc-internal-format msgid "" "Base object for procedure-pointer component call at %L is of ABSTRACT type " "%qs" msgstr "" -#: fortran/resolve.cc:7064 +#: fortran/resolve.cc:7100 #, gcc-internal-format msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs" msgstr "" -#: fortran/resolve.cc:7073 +#: fortran/resolve.cc:7109 #, gcc-internal-format, gfc-internal-format msgid "Base object for NOPASS type-bound procedure call at %L must be scalar" msgstr "" #. Nothing matching found! -#: fortran/resolve.cc:7268 +#: fortran/resolve.cc:7304 #, gcc-internal-format msgid "" "Found no matching specific binding for the call to the GENERIC %qs at %L" msgstr "" -#: fortran/resolve.cc:7302 +#: fortran/resolve.cc:7338 #, gcc-internal-format msgid "%qs at %L should be a SUBROUTINE" msgstr "" -#: fortran/resolve.cc:7355 +#: fortran/resolve.cc:7391 #, gcc-internal-format msgid "%qs at %L should be a FUNCTION" msgstr "" -#: fortran/resolve.cc:7896 +#: fortran/resolve.cc:7932 #, gcc-internal-format msgid "gfc_resolve_expr(): Bad expression type" msgstr "" -#: fortran/resolve.cc:7929 +#: fortran/resolve.cc:7965 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be a scalar" msgstr "" -#: fortran/resolve.cc:7939 +#: fortran/resolve.cc:7975 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be integer" msgstr "" -#: fortran/resolve.cc:7943 fortran/resolve.cc:7950 +#: fortran/resolve.cc:7979 fortran/resolve.cc:7986 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be INTEGER" msgstr "" -#: fortran/resolve.cc:8005 +#: fortran/resolve.cc:8041 #, gcc-internal-format, gfc-internal-format msgid "Step expression in DO loop at %L cannot be zero" msgstr "" -#: fortran/resolve.cc:8028 +#: fortran/resolve.cc:8064 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L will be executed zero times" msgstr "" -#: fortran/resolve.cc:8045 +#: fortran/resolve.cc:8081 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L is undefined as it overflows" msgstr "" -#: fortran/resolve.cc:8051 +#: fortran/resolve.cc:8087 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L is undefined as it underflows" msgstr "" -#: fortran/resolve.cc:8111 +#: fortran/resolve.cc:8147 #, gcc-internal-format msgid "" "Variable %qs referenced in concurrent-header at %L must not appear in LOCAL " "locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8147 +#: fortran/resolve.cc:8183 #, gcc-internal-format msgid "" "Variable %qs at %L not specified in a locality spec of DO CONCURRENT at %L " "but required due to DEFAULT (NONE)" msgstr "" -#: fortran/resolve.cc:8199 +#: fortran/resolve.cc:8235 #, gcc-internal-format, gfc-internal-format msgid "Expected variable name in %s locality spec at %L" msgstr "" -#: fortran/resolve.cc:8208 +#: fortran/resolve.cc:8244 #, gcc-internal-format msgid "Variable %qs at %L has already been specified in a locality-spec" msgstr "" -#: fortran/resolve.cc:8218 +#: fortran/resolve.cc:8254 #, gcc-internal-format msgid "Index variable %qs at %L cannot be specified in a locality-spec" msgstr "" -#: fortran/resolve.cc:8231 +#: fortran/resolve.cc:8267 #, gcc-internal-format msgid "OPTIONAL attribute not permitted for %qs in %s locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8238 +#: fortran/resolve.cc:8274 #, gcc-internal-format msgid "Assumed-size array not permitted for %qs in %s locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8251 +#: fortran/resolve.cc:8287 #, gcc-internal-format msgid "ALLOCATABLE attribute not permitted for %qs in %s locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8256 +#: fortran/resolve.cc:8292 #, gcc-internal-format msgid "" "Nonpointer polymorphic dummy argument not permitted for %qs in %s locality-" "spec at %L" msgstr "" -#: fortran/resolve.cc:8261 +#: fortran/resolve.cc:8297 #, gcc-internal-format msgid "Coarray not permitted for %qs in %s locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8267 +#: fortran/resolve.cc:8303 #, gcc-internal-format msgid "Finalizable type not permitted for %qs in %s locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8272 +#: fortran/resolve.cc:8308 #, gcc-internal-format msgid "" "Type with ultimate allocatable component not permitted for %qs in %s " "locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8280 +#: fortran/resolve.cc:8316 #, gcc-internal-format msgid "" "ASYNCHRONOUS attribute not permitted for %qs in REDUCE locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8284 +#: fortran/resolve.cc:8320 #, gcc-internal-format msgid "VOLATILE attribute not permitted for %qs in REDUCE locality-spec at %L" msgstr "" -#: fortran/resolve.cc:8338 +#: fortran/resolve.cc:8374 #, gcc-internal-format msgid "Expected numeric type for %qs in REDUCE at %L, got %s" msgstr "" -#: fortran/resolve.cc:8347 +#: fortran/resolve.cc:8383 #, gcc-internal-format msgid "Expected logical type for %qs in REDUCE at %L, got %qs" msgstr "" -#: fortran/resolve.cc:8365 +#: fortran/resolve.cc:8401 #, gcc-internal-format msgid "" "Expected INTEGER, REAL or CHARACTER type for %qs in REDUCE with MIN/MAX at " "%L, got %s" msgstr "" -#: fortran/resolve.cc:8374 +#: fortran/resolve.cc:8410 #, gcc-internal-format msgid "" "Expected integer type for %qs in REDUCE with IAND/IOR/IEOR at %L, got %s" msgstr "" -#: fortran/resolve.cc:8412 +#: fortran/resolve.cc:8448 #, gcc-internal-format msgid "Variable %qs in locality-spec at %L is not used" msgstr "" -#: fortran/resolve.cc:8429 -#, gcc-internal-format -msgid "" -"Sorry, LOCAL and LOCAL_INIT are not yet supported for %<do concurrent%> " -"constructs at %L" -msgstr "" - -#: fortran/resolve.cc:8450 +#: fortran/resolve.cc:8479 #, gcc-internal-format, gfc-internal-format msgid "FORALL index-name at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.cc:8455 +#: fortran/resolve.cc:8484 #, gcc-internal-format, gfc-internal-format msgid "FORALL start expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.cc:8462 +#: fortran/resolve.cc:8491 #, gcc-internal-format, gfc-internal-format msgid "FORALL end expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.cc:8470 +#: fortran/resolve.cc:8499 #, gcc-internal-format, gfc-internal-format msgid "FORALL stride expression at %L must be a scalar %s" msgstr "" -#: fortran/resolve.cc:8475 +#: fortran/resolve.cc:8504 #, gcc-internal-format, gfc-internal-format msgid "FORALL stride expression at %L cannot be zero" msgstr "" -#: fortran/resolve.cc:8488 +#: fortran/resolve.cc:8517 #, gcc-internal-format msgid "FORALL index %qs may not appear in triplet specification at %L" msgstr "" -#: fortran/resolve.cc:8593 fortran/resolve.cc:8899 +#: fortran/resolve.cc:8622 fortran/resolve.cc:8928 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER" msgstr "" -#: fortran/resolve.cc:8601 fortran/resolve.cc:8862 +#: fortran/resolve.cc:8630 fortran/resolve.cc:8891 #, gcc-internal-format, gfc-internal-format msgid "Coindexed allocatable object at %L" msgstr "" -#: fortran/resolve.cc:8719 +#: fortran/resolve.cc:8748 #, gcc-internal-format, gfc-internal-format msgid "" "Source-expr at %L must be scalar or have the same rank as the allocate-" "object at %L" msgstr "" -#: fortran/resolve.cc:8750 +#: fortran/resolve.cc:8779 #, gcc-internal-format, gfc-internal-format msgid "Source-expr at %L and allocate-object at %L must have the same shape" msgstr "" -#: fortran/resolve.cc:8914 +#: fortran/resolve.cc:8943 #, gcc-internal-format, gfc-internal-format msgid "The intrinsic NULL cannot be used as source-expr at %L" msgstr "" -#: fortran/resolve.cc:8922 +#: fortran/resolve.cc:8951 #, gcc-internal-format, gfc-internal-format msgid "Type of entity at %L is type incompatible with source-expr at %L" msgstr "" -#: fortran/resolve.cc:8934 +#: fortran/resolve.cc:8963 #, gcc-internal-format, gfc-internal-format msgid "" "The allocate-object at %L and the source-expr at %L shall have the same kind " "type parameter" msgstr "" -#: fortran/resolve.cc:8948 +#: fortran/resolve.cc:8977 #, gcc-internal-format, gfc-internal-format msgid "" "The source-expr at %L shall neither be of type LOCK_TYPE nor have a " "LOCK_TYPE component if allocate-object at %L is a coarray" msgstr "" -#: fortran/resolve.cc:8973 +#: fortran/resolve.cc:9002 #, gcc-internal-format, gfc-internal-format msgid "" "The source-expr at %L shall neither be of type EVENT_TYPE nor have a " "EVENT_TYPE component if allocate-object at %L is a coarray" msgstr "" -#: fortran/resolve.cc:8986 +#: fortran/resolve.cc:9015 #, gcc-internal-format, gfc-internal-format msgid "" "Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr" msgstr "" -#: fortran/resolve.cc:9000 +#: fortran/resolve.cc:9029 #, gcc-internal-format msgid "" "The type parameter in ALLOCATE statement with type-spec shall be an asterisk " "as allocate object %qs at %L is a dummy argument with assumed type parameter" msgstr "" -#: fortran/resolve.cc:9020 +#: fortran/resolve.cc:9049 #, gcc-internal-format, gfc-internal-format msgid "" "Allocating %s at %L with type-spec requires the same character-length " "parameter as in the declaration" msgstr "" -#: fortran/resolve.cc:9104 fortran/resolve.cc:9119 +#: fortran/resolve.cc:9133 fortran/resolve.cc:9148 #, gcc-internal-format, gfc-internal-format msgid "Array specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.cc:9111 +#: fortran/resolve.cc:9140 #, gcc-internal-format, gfc-internal-format msgid "" "Array specification or array-valued SOURCE= expression required in ALLOCATE " "statement at %L" msgstr "" -#: fortran/resolve.cc:9136 +#: fortran/resolve.cc:9165 #, gcc-internal-format, gfc-internal-format msgid "Coarray specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.cc:9146 fortran/resolve.cc:9248 +#: fortran/resolve.cc:9175 fortran/resolve.cc:9277 #, gcc-internal-format, gfc-internal-format msgid "Bad coarray specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.cc:9152 +#: fortran/resolve.cc:9181 #, gcc-internal-format, gfc-internal-format msgid "Upper cobound is less than lower cobound at %L" msgstr "" -#: fortran/resolve.cc:9164 +#: fortran/resolve.cc:9193 #, gcc-internal-format, gfc-internal-format msgid "Upper cobound is less than lower cobound of 1 at %L" msgstr "" -#: fortran/resolve.cc:9175 fortran/resolve.cc:9203 +#: fortran/resolve.cc:9204 fortran/resolve.cc:9232 #, gcc-internal-format, gfc-internal-format msgid "Bad array specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.cc:9222 +#: fortran/resolve.cc:9251 #, gcc-internal-format msgid "" "%qs must not appear in the array specification at %L in the same ALLOCATE " "statement where it is itself allocated" msgstr "" -#: fortran/resolve.cc:9237 +#: fortran/resolve.cc:9266 #, gcc-internal-format msgid "Expected %<*%> in coindex specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.cc:9279 +#: fortran/resolve.cc:9308 #, gcc-internal-format, gfc-internal-format msgid "Stat-variable at %L must be a scalar INTEGER variable" msgstr "" -#: fortran/resolve.cc:9308 +#: fortran/resolve.cc:9337 #, gcc-internal-format, gfc-internal-format msgid "Stat-variable at %L shall not be %sd within the same %s statement" msgstr "" -#: fortran/resolve.cc:9321 +#: fortran/resolve.cc:9350 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG at %L is useless without a STAT tag" msgstr "" -#: fortran/resolve.cc:9335 +#: fortran/resolve.cc:9364 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable" msgstr "" -#: fortran/resolve.cc:9364 +#: fortran/resolve.cc:9393 #, gcc-internal-format, gfc-internal-format msgid "Errmsg-variable at %L shall not be %sd within the same %s statement" msgstr "" -#: fortran/resolve.cc:9396 +#: fortran/resolve.cc:9425 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L also appears at %L" msgstr "" -#: fortran/resolve.cc:9402 fortran/resolve.cc:9408 +#: fortran/resolve.cc:9431 fortran/resolve.cc:9437 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L is subobject of object at %L" msgstr "" @@ -86813,394 +87033,416 @@ msgstr "" #. element in the list. Either way, we must #. issue an error and get the next case from P. #. FIXME: Sort P and Q by line number. -#: fortran/resolve.cc:9636 +#: fortran/resolve.cc:9665 #, gcc-internal-format, gfc-internal-format msgid "CASE label at %L overlaps with CASE label at %L" msgstr "" -#: fortran/resolve.cc:9687 +#: fortran/resolve.cc:9716 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be of type %s" msgstr "" -#: fortran/resolve.cc:9698 +#: fortran/resolve.cc:9727 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be of kind %d" msgstr "" -#: fortran/resolve.cc:9711 +#: fortran/resolve.cc:9740 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be scalar" msgstr "" -#: fortran/resolve.cc:9757 +#: fortran/resolve.cc:9786 #, gcc-internal-format, gfc-internal-format msgid "" "Selection expression in computed GOTO statement at %L must be a scalar " "integer expression" msgstr "" -#: fortran/resolve.cc:9778 +#: fortran/resolve.cc:9807 #, gcc-internal-format, gfc-internal-format msgid "Argument of SELECT statement at %L cannot be %s" msgstr "" -#: fortran/resolve.cc:9788 +#: fortran/resolve.cc:9817 #, gcc-internal-format, gfc-internal-format msgid "Argument of SELECT statement at %L must be a scalar expression" msgstr "" -#: fortran/resolve.cc:9806 fortran/resolve.cc:9814 +#: fortran/resolve.cc:9835 fortran/resolve.cc:9843 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L is not in the range of %s" msgstr "" -#: fortran/resolve.cc:9876 fortran/resolve.cc:10710 +#: fortran/resolve.cc:9905 fortran/resolve.cc:10739 #, gcc-internal-format, gfc-internal-format msgid "" "The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L" msgstr "" -#: fortran/resolve.cc:9902 +#: fortran/resolve.cc:9931 #, gcc-internal-format, gfc-internal-format msgid "Logical range in CASE statement at %L is not allowed" msgstr "" -#: fortran/resolve.cc:9915 +#: fortran/resolve.cc:9944 #, gcc-internal-format, gfc-internal-format msgid "Constant logical value in CASE statement is repeated at %L" msgstr "" -#: fortran/resolve.cc:9930 +#: fortran/resolve.cc:9959 #, gcc-internal-format, gfc-internal-format msgid "Range specification at %L can never be matched" msgstr "" -#: fortran/resolve.cc:10033 +#: fortran/resolve.cc:10062 #, gcc-internal-format, gfc-internal-format msgid "Logical SELECT CASE block at %L has more that two cases" msgstr "" -#: fortran/resolve.cc:10095 +#: fortran/resolve.cc:10124 #, gcc-internal-format, gfc-internal-format msgid "" "(F202y)Missing or invalid bound in ASSOCIATE rank remapping of associate " "name %s at %L" msgstr "" -#: fortran/resolve.cc:10111 +#: fortran/resolve.cc:10140 #, gcc-internal-format msgid "Associating entity %qs at %L is a procedure pointer" msgstr "" -#: fortran/resolve.cc:10120 +#: fortran/resolve.cc:10149 #, gcc-internal-format msgid "Derived type %qs cannot be used as a variable at %L" msgstr "" -#: fortran/resolve.cc:10137 +#: fortran/resolve.cc:10166 #, gcc-internal-format msgid "Associating entity %qs at %L is a procedure name" msgstr "" -#: fortran/resolve.cc:10153 +#: fortran/resolve.cc:10182 #, gcc-internal-format, gfc-internal-format msgid "Associating selector-expression at %L yields a procedure" msgstr "" -#: fortran/resolve.cc:10207 +#: fortran/resolve.cc:10236 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L cannot be NULL()" msgstr "" -#: fortran/resolve.cc:10212 +#: fortran/resolve.cc:10241 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L has no type" msgstr "" -#: fortran/resolve.cc:10271 +#: fortran/resolve.cc:10300 #, gcc-internal-format msgid "Associate-name %qs at %L is used as array" msgstr "" -#: fortran/resolve.cc:10282 +#: fortran/resolve.cc:10311 #, gcc-internal-format, gfc-internal-format msgid "CLASS selector at %L needs a temporary which is not yet implemented" msgstr "" -#: fortran/resolve.cc:10569 +#: fortran/resolve.cc:10598 #, gcc-internal-format, gfc-internal-format msgid "Selector shall be polymorphic in SELECT TYPE statement at %L" msgstr "" -#: fortran/resolve.cc:10618 fortran/resolve.cc:10630 +#: fortran/resolve.cc:10647 fortran/resolve.cc:10659 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L must not be coindexed" msgstr "" -#: fortran/resolve.cc:10659 +#: fortran/resolve.cc:10688 #, gcc-internal-format, gfc-internal-format msgid "TYPE IS at %L overlaps with TYPE IS at %L" msgstr "" -#: fortran/resolve.cc:10672 +#: fortran/resolve.cc:10701 #, gcc-internal-format msgid "Derived type %qs at %L must be extensible" msgstr "" -#: fortran/resolve.cc:10685 +#: fortran/resolve.cc:10714 #, gcc-internal-format msgid "Derived type %qs at %L must be an extension of %qs" msgstr "" -#: fortran/resolve.cc:10688 +#: fortran/resolve.cc:10717 #, gcc-internal-format msgid "Unexpected intrinsic type %qs at %L" msgstr "" -#: fortran/resolve.cc:10698 +#: fortran/resolve.cc:10727 #, gcc-internal-format, gfc-internal-format msgid "" "The type-spec at %L shall specify that each length type parameter is assumed" msgstr "" -#: fortran/resolve.cc:10949 +#: fortran/resolve.cc:10978 #, gcc-internal-format, gfc-internal-format msgid "Double CLASS IS block in SELECT TYPE statement at %L" msgstr "" -#: fortran/resolve.cc:11082 +#: fortran/resolve.cc:11111 #, gcc-internal-format, gfc-internal-format msgid "RANK DEFAULT at %L is repeated at %L" msgstr "" -#: fortran/resolve.cc:11091 +#: fortran/resolve.cc:11120 #, gcc-internal-format, gfc-internal-format msgid "RANK (*) at %L is repeated at %L" msgstr "" -#: fortran/resolve.cc:11094 +#: fortran/resolve.cc:11123 #, gcc-internal-format, gfc-internal-format msgid "RANK (%i) at %L is repeated at %L" msgstr "" -#: fortran/resolve.cc:11104 +#: fortran/resolve.cc:11133 #, gcc-internal-format, gfc-internal-format msgid "" "RANK (*) at %L cannot be used with the pointer or allocatable selector at %L" msgstr "" -#: fortran/resolve.cc:11213 +#: fortran/resolve.cc:11242 #, gcc-internal-format, gfc-internal-format msgid "Invalid context for NULL () intrinsic at %L" msgstr "" -#: fortran/resolve.cc:11267 +#: fortran/resolve.cc:11296 #, gcc-internal-format, gfc-internal-format msgid "DTIO %s procedure at %L must be recursive" msgstr "" -#: fortran/resolve.cc:11277 +#: fortran/resolve.cc:11306 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot be polymorphic unless it is processed by " "a defined input/output procedure" msgstr "" -#: fortran/resolve.cc:11290 +#: fortran/resolve.cc:11319 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have POINTER components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.cc:11299 +#: fortran/resolve.cc:11328 #, gcc-internal-format, gfc-internal-format msgid "Data transfer element at %L cannot have procedure pointer components" msgstr "" -#: fortran/resolve.cc:11306 +#: fortran/resolve.cc:11335 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have ALLOCATABLE components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.cc:11317 +#: fortran/resolve.cc:11346 #, gcc-internal-format, gfc-internal-format msgid "Data transfer element at %L cannot have PRIVATE components" msgstr "" -#: fortran/resolve.cc:11323 +#: fortran/resolve.cc:11352 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have PRIVATE components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.cc:11341 +#: fortran/resolve.cc:11370 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot be a full reference to an assumed-size " "array" msgstr "" -#: fortran/resolve.cc:11392 +#: fortran/resolve.cc:11421 #, gcc-internal-format, gfc-internal-format msgid "Lock variable at %L must be a scalar of type LOCK_TYPE" msgstr "" -#: fortran/resolve.cc:11402 +#: fortran/resolve.cc:11431 #, gcc-internal-format, gfc-internal-format msgid "Event variable at %L must be a scalar of type EVENT_TYPE" msgstr "" -#: fortran/resolve.cc:11406 +#: fortran/resolve.cc:11435 #, gcc-internal-format, gfc-internal-format msgid "Event variable argument at %L must be a coarray or coindexed" msgstr "" -#: fortran/resolve.cc:11409 +#: fortran/resolve.cc:11438 #, gcc-internal-format, gfc-internal-format msgid "Event variable argument at %L must be a coarray but not coindexed" msgstr "" -#: fortran/resolve.cc:11416 fortran/resolve.cc:11538 +#: fortran/resolve.cc:11445 fortran/resolve.cc:11672 #, gcc-internal-format, gfc-internal-format msgid "STAT= argument at %L must be a scalar INTEGER variable" msgstr "" -#: fortran/resolve.cc:11428 fortran/resolve.cc:11550 +#: fortran/resolve.cc:11457 fortran/resolve.cc:11684 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable" msgstr "" -#: fortran/resolve.cc:11440 +#: fortran/resolve.cc:11469 #, gcc-internal-format, gfc-internal-format msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable" msgstr "" -#: fortran/resolve.cc:11453 +#: fortran/resolve.cc:11482 #, gcc-internal-format, gfc-internal-format msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression" msgstr "" -#: fortran/resolve.cc:11514 +#: fortran/resolve.cc:11495 +#, gcc-internal-format, gfc-internal-format +msgid "" +"TEAM argument at %L must be a scalar expression of type TEAM_TYPE from the " +"intrinsic module ISO_FORTRAN_ENV" +msgstr "" + +#: fortran/resolve.cc:11509 +#, gcc-internal-format, gfc-internal-format +msgid "%s argument at %L must be a scalar %s variable of at least kind %d" +msgstr "" + +#: fortran/resolve.cc:11530 +#, gcc-internal-format, gfc-internal-format +msgid "%s argument at %L must be a scalar %s of at least kind %d" +msgstr "" + +#: fortran/resolve.cc:11648 #, gcc-internal-format, gfc-internal-format msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression" msgstr "" -#: fortran/resolve.cc:11518 fortran/resolve.cc:11528 +#: fortran/resolve.cc:11652 fortran/resolve.cc:11662 #, gcc-internal-format, gfc-internal-format msgid "Imageset argument at %L must between 1 and num_images()" msgstr "" -#: fortran/resolve.cc:11581 +#: fortran/resolve.cc:11715 #, gcc-internal-format, gfc-internal-format msgid "" "Statement at %L is not a valid branch target statement for the branch " "statement at %L" msgstr "" -#: fortran/resolve.cc:11591 +#: fortran/resolve.cc:11724 #, gcc-internal-format, gfc-internal-format msgid "Branch at %L may result in an infinite loop" msgstr "" #. Note: A label at END CRITICAL does not leave the CRITICAL #. construct as END CRITICAL is still part of it. -#: fortran/resolve.cc:11608 fortran/resolve.cc:11631 +#: fortran/resolve.cc:11742 fortran/resolve.cc:11769 #, gcc-internal-format, gfc-internal-format msgid "GOTO statement at %L leaves CRITICAL construct for label at %L" msgstr "" -#: fortran/resolve.cc:11612 fortran/resolve.cc:11637 +#: fortran/resolve.cc:11746 fortran/resolve.cc:11775 #, gcc-internal-format, gfc-internal-format msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L" msgstr "" +#: fortran/resolve.cc:11750 +#, gcc-internal-format, gfc-internal-format +msgid "GOTO statement at %L leaves CHANGE TEAM construct for label at %L" +msgstr "" + #. The label is not in an enclosing block, so illegal. This was #. allowed in Fortran 66, so we allow it as extension. No #. further checks are necessary in this case. -#: fortran/resolve.cc:11652 +#: fortran/resolve.cc:11790 #, gcc-internal-format, gfc-internal-format msgid "Label at %L is not in the same block as the GOTO statement at %L" msgstr "" -#: fortran/resolve.cc:11724 +#: fortran/resolve.cc:11862 #, gcc-internal-format, gfc-internal-format msgid "WHERE mask at %L has inconsistent shape" msgstr "" -#: fortran/resolve.cc:11740 +#: fortran/resolve.cc:11878 #, gcc-internal-format, gfc-internal-format msgid "WHERE assignment target at %L has inconsistent shape" msgstr "" -#: fortran/resolve.cc:11753 fortran/resolve.cc:11845 +#: fortran/resolve.cc:11891 fortran/resolve.cc:11983 #, gcc-internal-format, gfc-internal-format msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L" msgstr "" -#: fortran/resolve.cc:11763 fortran/resolve.cc:11855 +#: fortran/resolve.cc:11901 fortran/resolve.cc:11993 #, gcc-internal-format, gfc-internal-format msgid "Unsupported statement inside WHERE at %L" msgstr "" -#: fortran/resolve.cc:11794 +#: fortran/resolve.cc:11932 #, gcc-internal-format, gfc-internal-format msgid "Assignment to a FORALL index variable at %L" msgstr "" -#: fortran/resolve.cc:11803 +#: fortran/resolve.cc:11941 #, gcc-internal-format msgid "" "The FORALL with index %qs is not used on the left side of the assignment at " "%L and so might cause multiple assignment to this object" msgstr "" -#: fortran/resolve.cc:11960 +#: fortran/resolve.cc:12098 #, gcc-internal-format, gfc-internal-format msgid "FORALL construct at %L" msgstr "" -#: fortran/resolve.cc:11981 +#: fortran/resolve.cc:12119 #, gcc-internal-format, gfc-internal-format msgid "FORALL index-name at %L must be a scalar variable of type integer" msgstr "" -#: fortran/resolve.cc:11991 +#: fortran/resolve.cc:12129 #, gcc-internal-format, gfc-internal-format msgid "An outer FORALL construct already has an index with this name %L" msgstr "" -#: fortran/resolve.cc:12069 +#: fortran/resolve.cc:12207 #, gcc-internal-format, gfc-internal-format msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array" msgstr "" -#: fortran/resolve.cc:12190 +#: fortran/resolve.cc:12328 #, gcc-internal-format msgid "gfc_resolve_blocks(): Bad block type" msgstr "" -#: fortran/resolve.cc:12270 +#: fortran/resolve.cc:12408 #, gcc-internal-format, gfc-internal-format msgid "" "Variable in the ordinary assignment at %L is a procedure pointer component" msgstr "" -#: fortran/resolve.cc:12290 +#: fortran/resolve.cc:12428 #, gcc-internal-format, gfc-internal-format msgid "Cannot assign %s to %s at %L" msgstr "" -#: fortran/resolve.cc:12338 +#: fortran/resolve.cc:12476 #, gcc-internal-format msgid "CHARACTER expression will be truncated in assignment (%wd/%wd) at %L" msgstr "" -#: fortran/resolve.cc:12370 +#: fortran/resolve.cc:12508 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed expression at %L is assigned to a derived type variable with a " @@ -87208,7 +87450,7 @@ msgid "" msgstr "" #. F2008, C1283 (4). -#: fortran/resolve.cc:12376 +#: fortran/resolve.cc:12514 #, gcc-internal-format, gfc-internal-format msgid "" "In a pure subprogram an INTENT(IN) dummy argument shall not be used as the " @@ -87217,43 +87459,43 @@ msgid "" "component selection." msgstr "" -#: fortran/resolve.cc:12388 +#: fortran/resolve.cc:12526 #, gcc-internal-format, gfc-internal-format msgid "Assignment to coindexed variable at %L in a PURE procedure" msgstr "" -#: fortran/resolve.cc:12420 +#: fortran/resolve.cc:12558 #, gcc-internal-format, gfc-internal-format msgid "Assignment to polymorphic coarray at %L is not permitted" msgstr "" -#: fortran/resolve.cc:12424 +#: fortran/resolve.cc:12562 #, gcc-internal-format, gfc-internal-format msgid "Assignment to an allocatable polymorphic variable at %L" msgstr "" -#: fortran/resolve.cc:12429 +#: fortran/resolve.cc:12567 #, gcc-internal-format msgid "" "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-" "lhs%>" msgstr "" -#: fortran/resolve.cc:12436 +#: fortran/resolve.cc:12574 #, gcc-internal-format msgid "" "Nonallocatable variable must not be polymorphic in intrinsic assignment at " "%L - check that there is a matching specific subroutine for %<=%> operator" msgstr "" -#: fortran/resolve.cc:12447 +#: fortran/resolve.cc:12585 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed variable must not have an allocatable ultimate component in " "assignment at %L" msgstr "" -#: fortran/resolve.cc:12836 +#: fortran/resolve.cc:12974 #, gcc-internal-format, gfc-internal-format msgid "" "TODO: type-bound defined assignment(s) at %L not done because multiple part " @@ -87262,93 +87504,82 @@ msgstr "" #. Even if standard does not support this feature, continue to build #. the two statements to avoid upsetting frontend_passes.c. -#: fortran/resolve.cc:13150 +#: fortran/resolve.cc:13288 #, gcc-internal-format, gfc-internal-format msgid "Pointer procedure assignment at %L" msgstr "" -#: fortran/resolve.cc:13162 +#: fortran/resolve.cc:13300 #, gcc-internal-format, gfc-internal-format msgid "" "The function result on the lhs of the assignment at %L must have the pointer " "attribute." msgstr "" -#: fortran/resolve.cc:13258 -#, gcc-internal-format -msgid "" -"TEAM argument to %qs at %L must be a scalar expression of type TEAM_TYPE" -msgstr "" - -#: fortran/resolve.cc:13457 -#, gcc-internal-format, gfc-internal-format -msgid "TEAM NUMBER argument to FORM TEAM at %L must be a scalar INTEGER" -msgstr "" - -#: fortran/resolve.cc:13493 +#: fortran/resolve.cc:13611 #, gcc-internal-format, gfc-internal-format msgid "ASSIGNED GOTO statement at %L requires a scalar INTEGER variable" msgstr "" -#: fortran/resolve.cc:13497 +#: fortran/resolve.cc:13615 #, gcc-internal-format msgid "Variable %qs has not been assigned a target label at %L" msgstr "" -#: fortran/resolve.cc:13508 +#: fortran/resolve.cc:13626 #, gcc-internal-format, gfc-internal-format msgid "" "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier" msgstr "" -#: fortran/resolve.cc:13564 +#: fortran/resolve.cc:13682 #, gcc-internal-format, gfc-internal-format msgid "Expected intrinsic assignment in OMP WORKSHARE at %L" msgstr "" -#: fortran/resolve.cc:13606 +#: fortran/resolve.cc:13724 #, gcc-internal-format, gfc-internal-format msgid "ASSIGN statement at %L requires a scalar default INTEGER variable" msgstr "" -#: fortran/resolve.cc:13653 +#: fortran/resolve.cc:13771 #, gcc-internal-format, gfc-internal-format msgid "Invalid NULL at %L" msgstr "" -#: fortran/resolve.cc:13657 +#: fortran/resolve.cc:13775 #, gcc-internal-format, gfc-internal-format msgid "" "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression" msgstr "" -#: fortran/resolve.cc:13718 +#: fortran/resolve.cc:13836 #, gcc-internal-format msgid "gfc_resolve_code(): No expression on DO WHILE" msgstr "" -#: fortran/resolve.cc:13723 +#: fortran/resolve.cc:13841 #, gcc-internal-format, gfc-internal-format msgid "" "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.cc:13807 +#: fortran/resolve.cc:13925 #, gcc-internal-format, gfc-internal-format msgid "FORALL mask clause at %L requires a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.cc:13919 +#: fortran/resolve.cc:14037 #, gcc-internal-format msgid "gfc_resolve_code(): Bad statement code" msgstr "" -#: fortran/resolve.cc:13940 +#: fortran/resolve.cc:14058 #, gcc-internal-format msgid "Using parameter %qs declared at %L is deprecated" msgstr "" -#: fortran/resolve.cc:14036 +#: fortran/resolve.cc:14154 #, gcc-internal-format msgid "" "Variable %qs with binding label %qs at %L uses the same global identifier as " @@ -87357,7 +87588,7 @@ msgstr "" #. This can only happen if the variable is defined in a module - if it #. isn't the same module, reject it. -#: fortran/resolve.cc:14050 +#: fortran/resolve.cc:14168 #, gcc-internal-format msgid "" "Variable %qs from module %qs with binding label %qs at %L uses the same " @@ -87367,1169 +87598,1169 @@ msgstr "" #. Print an error if the procedure is defined multiple times; we have to #. exclude references to the same procedure via module association or #. multiple checks for the same procedure. -#: fortran/resolve.cc:14069 +#: fortran/resolve.cc:14187 #, gcc-internal-format msgid "" "Procedure %qs with binding label %qs at %L uses the same global identifier " "as entity at %L" msgstr "" -#: fortran/resolve.cc:14155 +#: fortran/resolve.cc:14273 #, gcc-internal-format, gfc-internal-format msgid "String length at %L is too large" msgstr "" -#: fortran/resolve.cc:14393 +#: fortran/resolve.cc:14511 #, gcc-internal-format msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank" msgstr "" -#: fortran/resolve.cc:14397 +#: fortran/resolve.cc:14515 #, gcc-internal-format msgid "Scalar object %qs at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.cc:14405 +#: fortran/resolve.cc:14523 #, gcc-internal-format msgid "Array pointer %qs at %L must have a deferred shape or assumed rank" msgstr "" -#: fortran/resolve.cc:14416 +#: fortran/resolve.cc:14534 #, gcc-internal-format msgid "Array %qs at %L cannot have a deferred shape" msgstr "" -#: fortran/resolve.cc:14434 +#: fortran/resolve.cc:14552 #, gcc-internal-format msgid "Type %qs of CLASS variable %qs at %L is not extensible" msgstr "" -#: fortran/resolve.cc:14448 +#: fortran/resolve.cc:14566 #, gcc-internal-format msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer" msgstr "" -#: fortran/resolve.cc:14481 +#: fortran/resolve.cc:14599 #, gcc-internal-format msgid "" "The type %qs cannot be host associated at %L because it is blocked by an " "incompatible object of the same name declared at %L" msgstr "" -#: fortran/resolve.cc:14503 +#: fortran/resolve.cc:14621 #, gcc-internal-format msgid "" "Implied SAVE for module variable %qs at %L, needed due to the default " "initialization" msgstr "" -#: fortran/resolve.cc:14536 +#: fortran/resolve.cc:14654 #, gcc-internal-format msgid "" "Entity %qs at %L has a deferred type parameter and requires either the " "POINTER or ALLOCATABLE attribute" msgstr "" -#: fortran/resolve.cc:14550 +#: fortran/resolve.cc:14668 #, gcc-internal-format msgid "Automatic object %qs at %L cannot have the SAVE attribute" msgstr "" #. F08:C541. The shape of an array defined in a main program or module #. * needs to be constant. -#: fortran/resolve.cc:14572 +#: fortran/resolve.cc:14690 #, gcc-internal-format msgid "The module or main program array %qs at %L must have constant shape" msgstr "" -#: fortran/resolve.cc:14597 +#: fortran/resolve.cc:14715 #, gcc-internal-format, gfc-internal-format msgid "" "Entity with assumed character length at %L must be a dummy argument or a " "PARAMETER" msgstr "" -#: fortran/resolve.cc:14618 +#: fortran/resolve.cc:14736 #, gcc-internal-format msgid "%qs at %L must have constant character length in this context" msgstr "" -#: fortran/resolve.cc:14625 +#: fortran/resolve.cc:14743 #, gcc-internal-format msgid "COMMON variable %qs at %L must have constant character length" msgstr "" -#: fortran/resolve.cc:14673 +#: fortran/resolve.cc:14791 #, gcc-internal-format msgid "Allocatable %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14676 +#: fortran/resolve.cc:14794 #, gcc-internal-format msgid "External %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14679 +#: fortran/resolve.cc:14797 #, gcc-internal-format msgid "Dummy %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14682 +#: fortran/resolve.cc:14800 #, gcc-internal-format msgid "Intrinsic %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14685 +#: fortran/resolve.cc:14803 #, gcc-internal-format msgid "Function result %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14688 +#: fortran/resolve.cc:14806 #, gcc-internal-format msgid "Automatic array %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14730 +#: fortran/resolve.cc:14848 #, gcc-internal-format, gfc-internal-format msgid "%s at %L" msgstr "" -#: fortran/resolve.cc:14762 +#: fortran/resolve.cc:14880 #, gcc-internal-format msgid "Character-valued statement function %qs at %L must have constant length" msgstr "" -#: fortran/resolve.cc:14785 +#: fortran/resolve.cc:14903 #, gcc-internal-format msgid "" "%qs is of a PRIVATE type and cannot be a dummy argument of %qs, which is " "PUBLIC at %L" msgstr "" -#: fortran/resolve.cc:14807 +#: fortran/resolve.cc:14925 #, gcc-internal-format msgid "" "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs " "which is PRIVATE" msgstr "" -#: fortran/resolve.cc:14825 +#: fortran/resolve.cc:14943 #, gcc-internal-format msgid "Function %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.cc:14837 +#: fortran/resolve.cc:14955 #, gcc-internal-format msgid "External object %qs at %L may not have an initializer" msgstr "" -#: fortran/resolve.cc:14847 +#: fortran/resolve.cc:14965 #, gcc-internal-format msgid "ELEMENTAL function %qs at %L must have a scalar result" msgstr "" -#: fortran/resolve.cc:14857 +#: fortran/resolve.cc:14975 #, gcc-internal-format msgid "" "Statement function %qs at %L may not have pointer or allocatable attribute" msgstr "" -#: fortran/resolve.cc:14876 +#: fortran/resolve.cc:14994 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be array-valued" msgstr "" -#: fortran/resolve.cc:14880 +#: fortran/resolve.cc:14998 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued" msgstr "" -#: fortran/resolve.cc:14884 +#: fortran/resolve.cc:15002 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be pure" msgstr "" -#: fortran/resolve.cc:14888 +#: fortran/resolve.cc:15006 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be recursive" msgstr "" -#: fortran/resolve.cc:14901 +#: fortran/resolve.cc:15019 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L" msgstr "" -#: fortran/resolve.cc:14912 +#: fortran/resolve.cc:15030 #, gcc-internal-format msgid "Procedure pointer %qs at %L shall not be elemental" msgstr "" -#: fortran/resolve.cc:14918 +#: fortran/resolve.cc:15036 #, gcc-internal-format msgid "Dummy procedure %qs at %L shall not be elemental" msgstr "" -#: fortran/resolve.cc:14938 +#: fortran/resolve.cc:15056 #, gcc-internal-format msgid "" "Function result variable %qs at %L of elemental function %qs shall not have " "an ALLOCATABLE or POINTER attribute" msgstr "" -#: fortran/resolve.cc:14995 +#: fortran/resolve.cc:15113 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L" msgstr "" -#: fortran/resolve.cc:15001 +#: fortran/resolve.cc:15119 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L" msgstr "" -#: fortran/resolve.cc:15007 +#: fortran/resolve.cc:15125 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L" msgstr "" -#: fortran/resolve.cc:15015 +#: fortran/resolve.cc:15133 #, gcc-internal-format msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L" msgstr "" -#: fortran/resolve.cc:15021 +#: fortran/resolve.cc:15139 #, gcc-internal-format msgid "Procedure pointer result %qs at %L is missing the pointer attribute" msgstr "" -#: fortran/resolve.cc:15064 +#: fortran/resolve.cc:15182 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its " "interface in %s" msgstr "" -#: fortran/resolve.cc:15072 +#: fortran/resolve.cc:15190 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface " "in %s" msgstr "" -#: fortran/resolve.cc:15080 +#: fortran/resolve.cc:15198 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its " "interface in %s" msgstr "" -#: fortran/resolve.cc:15089 +#: fortran/resolve.cc:15207 #, gcc-internal-format msgid "" "%s between the MODULE PROCEDURE declaration in MODULE %qs and the " "declaration at %L in (SUB)MODULE %qs" msgstr "" -#: fortran/resolve.cc:15113 +#: fortran/resolve.cc:15231 #, gcc-internal-format msgid "Interface of %qs at %L must be explicit" msgstr "" -#: fortran/resolve.cc:15183 +#: fortran/resolve.cc:15301 #, gcc-internal-format msgid "FINAL procedure %qs at %L is not a SUBROUTINE" msgstr "" -#: fortran/resolve.cc:15192 +#: fortran/resolve.cc:15310 #, gcc-internal-format, gfc-internal-format msgid "FINAL procedure at %L must have exactly one argument" msgstr "" -#: fortran/resolve.cc:15200 fortran/resolve.cc:15217 +#: fortran/resolve.cc:15318 fortran/resolve.cc:15335 #, gcc-internal-format msgid "Argument of FINAL procedure at %L must be of type %qs" msgstr "" -#: fortran/resolve.cc:15208 +#: fortran/resolve.cc:15326 #, gcc-internal-format, gfc-internal-format msgid "" "FINAL procedure at %L with assumed rank argument must be the only finalizer " "with the same kind/type (F2018: C790)" msgstr "" -#: fortran/resolve.cc:15225 +#: fortran/resolve.cc:15343 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be a POINTER" msgstr "" -#: fortran/resolve.cc:15231 +#: fortran/resolve.cc:15349 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE" msgstr "" -#: fortran/resolve.cc:15237 +#: fortran/resolve.cc:15355 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be OPTIONAL" msgstr "" -#: fortran/resolve.cc:15245 +#: fortran/resolve.cc:15363 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)" msgstr "" -#: fortran/resolve.cc:15254 +#: fortran/resolve.cc:15372 #, gcc-internal-format, gfc-internal-format msgid "Non-scalar FINAL procedure at %L should have assumed shape argument" msgstr "" -#: fortran/resolve.cc:15276 +#: fortran/resolve.cc:15394 #, gcc-internal-format msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs" msgstr "" -#: fortran/resolve.cc:15313 +#: fortran/resolve.cc:15431 #, gcc-internal-format msgid "" "Only array FINAL procedures declared for derived type %qs defined at %L, " "suggest also scalar one unless an assumed rank finalizer has been declared" msgstr "" -#: fortran/resolve.cc:15354 +#: fortran/resolve.cc:15472 #, gcc-internal-format msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L" msgstr "" -#: fortran/resolve.cc:15390 +#: fortran/resolve.cc:15508 #, gcc-internal-format msgid "%qs and %qs for GENERIC %qs at %L are ambiguous" msgstr "" -#: fortran/resolve.cc:15449 +#: fortran/resolve.cc:15567 #, gcc-internal-format msgid "Undefined specific binding %qs as target of GENERIC %qs at %L" msgstr "" -#: fortran/resolve.cc:15461 +#: fortran/resolve.cc:15579 #, gcc-internal-format msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too" msgstr "" -#: fortran/resolve.cc:15489 +#: fortran/resolve.cc:15607 #, gcc-internal-format msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name" msgstr "" -#: fortran/resolve.cc:15545 +#: fortran/resolve.cc:15663 #, gcc-internal-format, gfc-internal-format msgid "Type-bound operator at %L cannot be NOPASS" msgstr "" -#: fortran/resolve.cc:15757 +#: fortran/resolve.cc:15875 #, gcc-internal-format msgid "" "%qs must be a module procedure or an external procedure with an explicit " "interface at %L" msgstr "" -#: fortran/resolve.cc:15800 +#: fortran/resolve.cc:15918 #, gcc-internal-format msgid "Procedure %qs with PASS(%s) at %L has no argument %qs" msgstr "" -#: fortran/resolve.cc:15814 +#: fortran/resolve.cc:15932 #, gcc-internal-format msgid "Procedure %qs with PASS at %L must have at least one argument" msgstr "" -#: fortran/resolve.cc:15828 fortran/resolve.cc:16370 +#: fortran/resolve.cc:15946 fortran/resolve.cc:16488 #, gcc-internal-format msgid "Non-polymorphic passed-object dummy argument of %qs at %L" msgstr "" -#: fortran/resolve.cc:15837 +#: fortran/resolve.cc:15955 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs" msgstr "" -#: fortran/resolve.cc:15847 +#: fortran/resolve.cc:15965 #, gcc-internal-format msgid "" "Argument %qs of %qs with PASS(%s) at %L must be of the parametric derived-" "type %qs" msgstr "" -#: fortran/resolve.cc:15889 +#: fortran/resolve.cc:16007 #, gcc-internal-format msgid "" "All LEN type parameters of the passed dummy argument %qs of %qs at %L must " "be ASSUMED." msgstr "" -#: fortran/resolve.cc:15899 +#: fortran/resolve.cc:16017 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must be scalar" msgstr "" -#: fortran/resolve.cc:15905 +#: fortran/resolve.cc:16023 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE" msgstr "" -#: fortran/resolve.cc:15911 +#: fortran/resolve.cc:16029 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must not be POINTER" msgstr "" -#: fortran/resolve.cc:15940 +#: fortran/resolve.cc:16058 #, gcc-internal-format msgid "Procedure %qs at %L has the same name as a component of %qs" msgstr "" -#: fortran/resolve.cc:15950 +#: fortran/resolve.cc:16068 #, gcc-internal-format msgid "Procedure %qs at %L has the same name as an inherited component of %qs" msgstr "" -#: fortran/resolve.cc:16045 +#: fortran/resolve.cc:16163 #, gcc-internal-format msgid "" "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and " "not overridden" msgstr "" -#: fortran/resolve.cc:16150 +#: fortran/resolve.cc:16268 #, gcc-internal-format msgid "Coarray component %qs at %L must be allocatable with deferred shape" msgstr "" -#: fortran/resolve.cc:16159 +#: fortran/resolve.cc:16277 #, gcc-internal-format msgid "" "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray" msgstr "" -#: fortran/resolve.cc:16169 +#: fortran/resolve.cc:16287 #, gcc-internal-format msgid "" "Component %qs at %L with coarray component shall be a nonpointer, " "nonallocatable scalar" msgstr "" -#: fortran/resolve.cc:16194 +#: fortran/resolve.cc:16312 #, gcc-internal-format msgid "" "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer" msgstr "" -#: fortran/resolve.cc:16205 +#: fortran/resolve.cc:16323 #, gcc-internal-format msgid "Component %qs of BIND(C) type at %L must have length one" msgstr "" -#: fortran/resolve.cc:16303 +#: fortran/resolve.cc:16421 #, gcc-internal-format msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs" msgstr "" -#: fortran/resolve.cc:16317 +#: fortran/resolve.cc:16435 #, gcc-internal-format msgid "" "Procedure pointer component %qs with PASS at %L must have at least one " "argument" msgstr "" -#: fortran/resolve.cc:16333 +#: fortran/resolve.cc:16451 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs" msgstr "" -#: fortran/resolve.cc:16343 +#: fortran/resolve.cc:16461 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar" msgstr "" -#: fortran/resolve.cc:16352 +#: fortran/resolve.cc:16470 #, gcc-internal-format msgid "" "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute" msgstr "" -#: fortran/resolve.cc:16361 +#: fortran/resolve.cc:16479 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.cc:16403 +#: fortran/resolve.cc:16521 #, gcc-internal-format msgid "" "Component %qs of %qs at %L has the same name as an inherited type-bound " "procedure" msgstr "" -#: fortran/resolve.cc:16416 +#: fortran/resolve.cc:16534 #, gcc-internal-format msgid "" "Character length of component %qs needs to be a constant specification " "expression at %L" msgstr "" -#: fortran/resolve.cc:16427 +#: fortran/resolve.cc:16545 #, gcc-internal-format msgid "" "Character length expression of component %qs at %L must be of INTEGER type, " "found %s" msgstr "" -#: fortran/resolve.cc:16440 +#: fortran/resolve.cc:16558 #, gcc-internal-format msgid "" "Character component %qs of %qs at %L with deferred length must be a POINTER " "or ALLOCATABLE" msgstr "" -#: fortran/resolve.cc:16473 +#: fortran/resolve.cc:16591 #, gcc-internal-format msgid "" "the component %qs is a PRIVATE type and cannot be a component of %qs, which " "is PUBLIC at %L" msgstr "" -#: fortran/resolve.cc:16481 +#: fortran/resolve.cc:16599 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s" msgstr "" -#: fortran/resolve.cc:16490 +#: fortran/resolve.cc:16608 #, gcc-internal-format, gfc-internal-format msgid "" "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE " "attribute" msgstr "" -#: fortran/resolve.cc:16576 +#: fortran/resolve.cc:16694 #, gcc-internal-format, gfc-internal-format msgid "Conflicting initializers in union at %L and %L" msgstr "" -#: fortran/resolve.cc:16668 +#: fortran/resolve.cc:16786 #, gcc-internal-format msgid "" "As extending type %qs at %L has a coarray component, parent type %qs shall " "also have one" msgstr "" -#: fortran/resolve.cc:16681 +#: fortran/resolve.cc:16799 #, gcc-internal-format msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT" msgstr "" -#: fortran/resolve.cc:16751 +#: fortran/resolve.cc:16869 #, gcc-internal-format msgid "" "Parameterized type %qs does not have a component corresponding to parameter " "%qs at %L" msgstr "" -#: fortran/resolve.cc:16783 +#: fortran/resolve.cc:16901 #, gcc-internal-format msgid "" "Generic name %qs of function %qs at %L being the same name as derived type " "at %L" msgstr "" -#: fortran/resolve.cc:16797 +#: fortran/resolve.cc:16915 #, gcc-internal-format msgid "Derived type %qs at %L has not been declared" msgstr "" -#: fortran/resolve.cc:16865 +#: fortran/resolve.cc:16983 #, gcc-internal-format msgid "Assumed size array %qs in namelist %qs at %L is not allowed" msgstr "" -#: fortran/resolve.cc:16871 +#: fortran/resolve.cc:16989 #, gcc-internal-format msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L" msgstr "" -#: fortran/resolve.cc:16877 +#: fortran/resolve.cc:16995 #, gcc-internal-format msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L" msgstr "" -#: fortran/resolve.cc:16885 +#: fortran/resolve.cc:17003 #, gcc-internal-format msgid "" "NAMELIST object %qs with nonconstant character length in namelist %qs at %L" msgstr "" -#: fortran/resolve.cc:16902 +#: fortran/resolve.cc:17020 #, gcc-internal-format msgid "" "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC " "namelist %qs at %L" msgstr "" -#: fortran/resolve.cc:16924 +#: fortran/resolve.cc:17042 #, gcc-internal-format msgid "" "NAMELIST object %qs has use-associated PRIVATE components and cannot be " "member of namelist %qs at %L" msgstr "" -#: fortran/resolve.cc:16935 +#: fortran/resolve.cc:17053 #, gcc-internal-format msgid "" "NAMELIST object %qs has PRIVATE components and cannot be a member of PUBLIC " "namelist %qs at %L" msgstr "" -#: fortran/resolve.cc:16962 +#: fortran/resolve.cc:17080 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L" msgstr "" -#: fortran/resolve.cc:16981 +#: fortran/resolve.cc:17099 #, gcc-internal-format msgid "Parameter array %qs at %L cannot be automatic or of deferred shape" msgstr "" -#: fortran/resolve.cc:16997 +#: fortran/resolve.cc:17115 #, gcc-internal-format msgid "" "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type" msgstr "" -#: fortran/resolve.cc:17008 +#: fortran/resolve.cc:17126 #, gcc-internal-format, gfc-internal-format msgid "Incompatible derived type in PARAMETER at %L" msgstr "" -#: fortran/resolve.cc:17016 +#: fortran/resolve.cc:17134 #, gcc-internal-format msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute" msgstr "" -#: fortran/resolve.cc:17068 +#: fortran/resolve.cc:17186 #, gcc-internal-format msgid "" "Entity %qs at %L has a deferred LEN parameter %qs and requires either the " "POINTER or ALLOCATABLE attribute" msgstr "" -#: fortran/resolve.cc:17080 +#: fortran/resolve.cc:17198 #, gcc-internal-format msgid "" "The AUTOMATIC object %qs at %L must not have the SAVE attribute or be a " "variable declared in the main program, a module or a submodule(F08/C513)" msgstr "" -#: fortran/resolve.cc:17087 +#: fortran/resolve.cc:17205 #, gcc-internal-format msgid "" "The object %qs at %L with ASSUMED type parameters must be a dummy or a " "SELECT TYPE selector(F08/4.2)" msgstr "" -#: fortran/resolve.cc:17146 +#: fortran/resolve.cc:17264 #, gcc-internal-format, gfc-internal-format msgid "" "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays " "at %L are unsupported" msgstr "" -#: fortran/resolve.cc:17159 +#: fortran/resolve.cc:17277 #, gcc-internal-format msgid "" "%<omp_all_memory%>, declared at %L, may only be used in the OpenMP DEPEND " "clause" msgstr "" -#: fortran/resolve.cc:17224 +#: fortran/resolve.cc:17342 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L" msgstr "" -#: fortran/resolve.cc:17227 +#: fortran/resolve.cc:17345 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L" msgstr "" -#: fortran/resolve.cc:17333 +#: fortran/resolve.cc:17451 #, gcc-internal-format msgid "" "%qs at %L has the CONTIGUOUS attribute but is not an array pointer or an " "assumed-shape or assumed-rank array" msgstr "" -#: fortran/resolve.cc:17354 +#: fortran/resolve.cc:17472 #, gcc-internal-format, gfc-internal-format msgid "Bad specification for assumed size array at %L" msgstr "" -#: fortran/resolve.cc:17368 +#: fortran/resolve.cc:17486 #, gcc-internal-format, gfc-internal-format msgid "Assumed size array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.cc:17371 +#: fortran/resolve.cc:17489 #, gcc-internal-format, gfc-internal-format msgid "Assumed shape array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.cc:17383 +#: fortran/resolve.cc:17501 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.cc:17390 +#: fortran/resolve.cc:17508 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute" msgstr "" -#: fortran/resolve.cc:17403 +#: fortran/resolve.cc:17521 #, gcc-internal-format, gfc-internal-format msgid "Symbol at %L is not a DUMMY variable" msgstr "" -#: fortran/resolve.cc:17409 +#: fortran/resolve.cc:17527 #, gcc-internal-format msgid "" "%qs at %L cannot have the VALUE attribute because it is not a dummy argument" msgstr "" -#: fortran/resolve.cc:17419 +#: fortran/resolve.cc:17537 #, gcc-internal-format msgid "" "Character dummy variable %qs at %L with VALUE attribute must have constant " "length" msgstr "" -#: fortran/resolve.cc:17428 +#: fortran/resolve.cc:17546 #, gcc-internal-format msgid "" "C interoperable character dummy variable %qs at %L with VALUE attribute must " "have length one" msgstr "" -#: fortran/resolve.cc:17441 fortran/resolve.cc:17618 +#: fortran/resolve.cc:17559 fortran/resolve.cc:17736 #, gcc-internal-format msgid "The derived type %qs at %L is of type %qs, which has not been defined" msgstr "" -#: fortran/resolve.cc:17455 +#: fortran/resolve.cc:17573 #, gcc-internal-format, gfc-internal-format msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument" msgstr "" -#: fortran/resolve.cc:17464 +#: fortran/resolve.cc:17582 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall be of type TYPE(*) or of " "an numeric intrinsic type" msgstr "" -#: fortran/resolve.cc:17473 +#: fortran/resolve.cc:17591 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may not have the ALLOCATABLE, " "CODIMENSION, POINTER or VALUE attribute" msgstr "" -#: fortran/resolve.cc:17481 +#: fortran/resolve.cc:17599 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may not have the INTENT(OUT) " "attribute" msgstr "" -#: fortran/resolve.cc:17488 +#: fortran/resolve.cc:17606 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall either be a scalar or an " "assumed-size array" msgstr "" -#: fortran/resolve.cc:17508 +#: fortran/resolve.cc:17626 #, gcc-internal-format, gfc-internal-format msgid "Assumed type of variable %s at %L is only permitted for dummy variables" msgstr "" -#: fortran/resolve.cc:17515 +#: fortran/resolve.cc:17633 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-type variable %s at %L may not have the ALLOCATABLE, CODIMENSION, " "POINTER or VALUE attribute" msgstr "" -#: fortran/resolve.cc:17522 +#: fortran/resolve.cc:17640 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute" msgstr "" -#: fortran/resolve.cc:17529 +#: fortran/resolve.cc:17647 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L shall not be an explicit-shape array" msgstr "" -#: fortran/resolve.cc:17555 +#: fortran/resolve.cc:17673 #, gcc-internal-format msgid "" "Variable %qs at %L cannot be BIND(C) because it is neither a COMMON block " "nor declared at the module level scope" msgstr "" -#: fortran/resolve.cc:17565 +#: fortran/resolve.cc:17683 #, gcc-internal-format msgid "BIND(C) Variable %qs at %L must have length one" msgstr "" -#: fortran/resolve.cc:17644 +#: fortran/resolve.cc:17762 #, gcc-internal-format msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs" msgstr "" -#: fortran/resolve.cc:17659 +#: fortran/resolve.cc:17777 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L of type LOCK_TYPE or with subcomponent of type LOCK_TYPE " "must be a coarray" msgstr "" -#: fortran/resolve.cc:17672 +#: fortran/resolve.cc:17790 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L of type EVENT_TYPE or with subcomponent of type EVENT_TYPE " "must be a coarray" msgstr "" -#: fortran/resolve.cc:17690 +#: fortran/resolve.cc:17808 #, gcc-internal-format msgid "" "The INTENT(OUT) dummy argument %qs at %L is ASSUMED SIZE and so cannot have " "a default initializer" msgstr "" -#: fortran/resolve.cc:17702 +#: fortran/resolve.cc:17820 #, gcc-internal-format msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)" msgstr "" -#: fortran/resolve.cc:17711 +#: fortran/resolve.cc:17829 #, gcc-internal-format msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)" msgstr "" -#: fortran/resolve.cc:17724 +#: fortran/resolve.cc:17842 #, gcc-internal-format msgid "" "Function result %qs at %L shall not be a coarray or have a coarray component" msgstr "" -#: fortran/resolve.cc:17733 +#: fortran/resolve.cc:17851 #, gcc-internal-format msgid "" "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray" msgstr "" -#: fortran/resolve.cc:17746 +#: fortran/resolve.cc:17864 #, gcc-internal-format msgid "" "Variable %qs at %L with coarray component shall be a nonpointer, " "nonallocatable scalar, which is not a coarray" msgstr "" -#: fortran/resolve.cc:17762 +#: fortran/resolve.cc:17880 #, gcc-internal-format msgid "" "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy " "argument" msgstr "" -#: fortran/resolve.cc:17770 +#: fortran/resolve.cc:17888 #, gcc-internal-format msgid "" "Coarray variable %qs at %L shall not have codimensions with deferred shape " "without allocatable" msgstr "" -#: fortran/resolve.cc:17778 +#: fortran/resolve.cc:17896 #, gcc-internal-format msgid "Allocatable coarray variable %qs at %L must have deferred shape" msgstr "" -#: fortran/resolve.cc:17791 +#: fortran/resolve.cc:17909 #, gcc-internal-format msgid "" "Variable %qs at %L is INTENT(OUT) and can thus not be an allocatable coarray " "or have coarray components" msgstr "" -#: fortran/resolve.cc:17800 +#: fortran/resolve.cc:17918 #, gcc-internal-format msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs" msgstr "" -#: fortran/resolve.cc:17816 +#: fortran/resolve.cc:17934 #, gcc-internal-format msgid "" "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure " "%qs" msgstr "" -#: fortran/resolve.cc:17822 +#: fortran/resolve.cc:17940 #, gcc-internal-format msgid "" "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure " "%qs" msgstr "" -#: fortran/resolve.cc:17847 +#: fortran/resolve.cc:17965 #, gcc-internal-format msgid "Namelist %qs cannot be an argument to subroutine or function at %L" msgstr "" -#: fortran/resolve.cc:17907 +#: fortran/resolve.cc:18025 #, gcc-internal-format, gfc-internal-format msgid "Threadprivate at %L isn't SAVEd" msgstr "" -#: fortran/resolve.cc:17919 +#: fortran/resolve.cc:18037 #, gcc-internal-format msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd" msgstr "" -#: fortran/resolve.cc:18030 +#: fortran/resolve.cc:18148 #, gcc-internal-format, gfc-internal-format msgid "Expecting definable entity near %L" msgstr "" -#: fortran/resolve.cc:18038 +#: fortran/resolve.cc:18156 #, gcc-internal-format msgid "BLOCK DATA element %qs at %L must be in COMMON" msgstr "" -#: fortran/resolve.cc:18045 +#: fortran/resolve.cc:18163 #, gcc-internal-format msgid "DATA array %qs at %L must be specified in a previous declaration" msgstr "" -#: fortran/resolve.cc:18052 +#: fortran/resolve.cc:18170 #, gcc-internal-format msgid "DATA element %qs at %L cannot have a coindex" msgstr "" -#: fortran/resolve.cc:18068 +#: fortran/resolve.cc:18186 #, gcc-internal-format msgid "DATA element %qs at %L is a pointer and so must be a full array" msgstr "" -#: fortran/resolve.cc:18075 +#: fortran/resolve.cc:18193 #, gcc-internal-format, gfc-internal-format msgid "" "DATA object near %L has the pointer attribute and the corresponding DATA " "value is not a valid initial-data-target" msgstr "" -#: fortran/resolve.cc:18084 +#: fortran/resolve.cc:18202 #, gcc-internal-format msgid "DATA element %qs at %L cannot have the ALLOCATABLE attribute" msgstr "" -#: fortran/resolve.cc:18146 +#: fortran/resolve.cc:18264 #, gcc-internal-format, gfc-internal-format msgid "Nonconstant array section at %L in DATA statement" msgstr "" -#: fortran/resolve.cc:18159 +#: fortran/resolve.cc:18277 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %L has more variables than values" msgstr "" -#: fortran/resolve.cc:18235 +#: fortran/resolve.cc:18353 #, gcc-internal-format, gfc-internal-format msgid "Non-constant character length at %L in DATA statement" msgstr "" -#: fortran/resolve.cc:18263 +#: fortran/resolve.cc:18381 #, gcc-internal-format, gfc-internal-format msgid "" "start of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.cc:18271 +#: fortran/resolve.cc:18389 #, gcc-internal-format, gfc-internal-format msgid "" "end of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.cc:18279 +#: fortran/resolve.cc:18397 #, gcc-internal-format, gfc-internal-format msgid "" "step of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.cc:18286 +#: fortran/resolve.cc:18404 #, gcc-internal-format, gfc-internal-format msgid "step of implied-do loop at %L shall not be zero" msgstr "" -#: fortran/resolve.cc:18411 +#: fortran/resolve.cc:18529 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %L has more values than variables" msgstr "" -#: fortran/resolve.cc:18577 +#: fortran/resolve.cc:18695 #, gcc-internal-format, gfc-internal-format msgid "Label %d at %L defined but not used" msgstr "" -#: fortran/resolve.cc:18583 +#: fortran/resolve.cc:18701 #, gcc-internal-format, gfc-internal-format msgid "Label %d at %L defined but cannot be used" msgstr "" -#: fortran/resolve.cc:18667 +#: fortran/resolve.cc:18785 #, gcc-internal-format msgid "" "Derived type variable %qs at %L must have SEQUENCE attribute to be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.cc:18676 +#: fortran/resolve.cc:18794 #, gcc-internal-format msgid "" "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.cc:18684 +#: fortran/resolve.cc:18802 #, gcc-internal-format msgid "" "Derived type variable %qs at %L with default initialization cannot be in " "EQUIVALENCE with a variable in COMMON" msgstr "" -#: fortran/resolve.cc:18700 +#: fortran/resolve.cc:18818 #, gcc-internal-format msgid "" "Derived type variable %qs at %L with pointer component(s) cannot be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.cc:18803 +#: fortran/resolve.cc:18921 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.cc:18818 +#: fortran/resolve.cc:18936 #, gcc-internal-format, gfc-internal-format msgid "" "Either all or none of the objects in the EQUIVALENCE set at %L shall have " "the PROTECTED attribute" msgstr "" -#: fortran/resolve.cc:18843 +#: fortran/resolve.cc:18961 #, gcc-internal-format msgid "" "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure " "procedure %qs" msgstr "" -#: fortran/resolve.cc:18852 +#: fortran/resolve.cc:18970 #, gcc-internal-format msgid "Named constant %qs at %L cannot be an EQUIVALENCE object" msgstr "" #. Since the pair of objects is not of the same type, mixed or #. non-default sequences can be rejected. -#: fortran/resolve.cc:18882 +#: fortran/resolve.cc:19000 #, gcc-internal-format, gfc-internal-format msgid "" "Sequence %s with mixed components in EQUIVALENCE statement at %L with " "different type objects" msgstr "" -#: fortran/resolve.cc:18892 +#: fortran/resolve.cc:19010 #, gcc-internal-format, gfc-internal-format msgid "" "Non-default type object or sequence %s in EQUIVALENCE statement at %L with " "objects of different type" msgstr "" -#: fortran/resolve.cc:18902 +#: fortran/resolve.cc:19020 #, gcc-internal-format msgid "" "Non-CHARACTER object %qs in default CHARACTER EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.cc:18909 +#: fortran/resolve.cc:19027 #, gcc-internal-format msgid "Non-NUMERIC object %qs in default NUMERIC EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.cc:18927 +#: fortran/resolve.cc:19045 #, gcc-internal-format msgid "" "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.cc:18938 +#: fortran/resolve.cc:19056 #, gcc-internal-format msgid "Structure component %qs at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.cc:18949 +#: fortran/resolve.cc:19067 #, gcc-internal-format, gfc-internal-format msgid "Substring at %L has length zero" msgstr "" -#: fortran/resolve.cc:18980 +#: fortran/resolve.cc:19098 #, gcc-internal-format msgid "Self reference in character length expression for %qs at %L" msgstr "" -#: fortran/resolve.cc:19047 +#: fortran/resolve.cc:19165 #, gcc-internal-format msgid "PUBLIC function %qs at %L of PRIVATE type %qs" msgstr "" -#: fortran/resolve.cc:19060 +#: fortran/resolve.cc:19178 #, gcc-internal-format msgid "ENTRY %qs at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.cc:19082 +#: fortran/resolve.cc:19200 #, gcc-internal-format msgid "User operator procedure %qs at %L must be a FUNCTION" msgstr "" -#: fortran/resolve.cc:19092 +#: fortran/resolve.cc:19210 #, gcc-internal-format msgid "User operator procedure %qs at %L cannot be assumed character length" msgstr "" -#: fortran/resolve.cc:19100 +#: fortran/resolve.cc:19218 #, gcc-internal-format msgid "User operator procedure %qs at %L must have at least one argument" msgstr "" -#: fortran/resolve.cc:19114 +#: fortran/resolve.cc:19232 #, gcc-internal-format, gfc-internal-format msgid "First argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.cc:19132 +#: fortran/resolve.cc:19250 #, gcc-internal-format, gfc-internal-format msgid "Second argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.cc:19139 +#: fortran/resolve.cc:19257 #, gcc-internal-format, gfc-internal-format msgid "Operator interface at %L must have, at most, two arguments" msgstr "" -#: fortran/resolve.cc:19221 +#: fortran/resolve.cc:19339 #, gcc-internal-format msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE" msgstr "" @@ -88804,190 +89035,190 @@ msgstr "" msgid "in gfc_simplify_exp(): Bad type" msgstr "" -#: fortran/simplify.cc:3267 +#: fortran/simplify.cc:3269 #, gcc-internal-format msgid "gfc_simplify_floor(): Bad kind" msgstr "" -#: fortran/simplify.cc:3384 +#: fortran/simplify.cc:3386 #, gcc-internal-format, gfc-internal-format msgid "Argument of IACHAR at %L must be of length one" msgstr "" -#: fortran/simplify.cc:3392 +#: fortran/simplify.cc:3394 #, gcc-internal-format, gfc-internal-format msgid "Argument of IACHAR function at %L outside of range 0..127" msgstr "" -#: fortran/simplify.cc:3553 +#: fortran/simplify.cc:3555 #, gcc-internal-format, gfc-internal-format msgid "Sum of second and third arguments of IBITS exceeds bit size at %L" msgstr "" -#: fortran/simplify.cc:3579 +#: fortran/simplify.cc:3581 #, gcc-internal-format msgid "IBITS: Bad bit" msgstr "" -#: fortran/simplify.cc:3646 +#: fortran/simplify.cc:3648 #, gcc-internal-format, gfc-internal-format msgid "Argument of ICHAR at %L must be of length one" msgstr "" #. Left shift, as in SHIFTL. -#: fortran/simplify.cc:4007 fortran/simplify.cc:4015 +#: fortran/simplify.cc:4009 fortran/simplify.cc:4017 #, gcc-internal-format, gfc-internal-format msgid "Second argument of %s is negative at %L" msgstr "" -#: fortran/simplify.cc:4027 +#: fortran/simplify.cc:4029 #, gcc-internal-format, gfc-internal-format msgid "Magnitude of second argument of %s exceeds bit size at %L" msgstr "" -#: fortran/simplify.cc:4159 +#: fortran/simplify.cc:4161 #, gcc-internal-format, gfc-internal-format msgid "" "Magnitude of second argument of ISHFTC exceeds BIT_SIZE of first argument at " "%C" msgstr "" -#: fortran/simplify.cc:4162 +#: fortran/simplify.cc:4164 #, gcc-internal-format, gfc-internal-format msgid "Absolute value of SHIFT shall be less than or equal to SIZE at %C" msgstr "" -#: fortran/simplify.cc:4509 fortran/simplify.cc:4642 +#: fortran/simplify.cc:4511 fortran/simplify.cc:4644 #, gcc-internal-format, gfc-internal-format msgid "DIM argument at %L is out of bounds" msgstr "" -#: fortran/simplify.cc:4975 +#: fortran/simplify.cc:4977 #, gcc-internal-format, gfc-internal-format msgid "Argument of LOG at %L cannot be less than or equal to zero" msgstr "" -#: fortran/simplify.cc:4988 +#: fortran/simplify.cc:4990 #, gcc-internal-format, gfc-internal-format msgid "Complex argument of LOG at %L cannot be zero" msgstr "" -#: fortran/simplify.cc:4999 +#: fortran/simplify.cc:5001 #, gcc-internal-format msgid "gfc_simplify_log: bad type" msgstr "" -#: fortran/simplify.cc:5016 +#: fortran/simplify.cc:5018 #, gcc-internal-format, gfc-internal-format msgid "Argument of LOG10 at %L cannot be less than or equal to zero" msgstr "" -#: fortran/simplify.cc:5448 +#: fortran/simplify.cc:5450 #, gcc-internal-format msgid "simplify_min_max(): Bad type in arglist" msgstr "" -#: fortran/simplify.cc:6371 fortran/simplify.cc:6379 +#: fortran/simplify.cc:6373 fortran/simplify.cc:6381 #, gcc-internal-format msgid "Argument %qs of MOD at %L shall not be zero" msgstr "" -#: fortran/simplify.cc:6385 +#: fortran/simplify.cc:6387 #, gcc-internal-format msgid "gfc_simplify_mod(): Bad arguments" msgstr "" -#: fortran/simplify.cc:6424 fortran/simplify.cc:6432 +#: fortran/simplify.cc:6426 fortran/simplify.cc:6434 #, gcc-internal-format msgid "Argument %qs of MODULO at %L shall not be zero" msgstr "" -#: fortran/simplify.cc:6438 +#: fortran/simplify.cc:6440 #, gcc-internal-format msgid "gfc_simplify_modulo(): Bad arguments" msgstr "" -#: fortran/simplify.cc:6510 +#: fortran/simplify.cc:6512 #, gcc-internal-format, gfc-internal-format msgid "Result of NEAREST is NaN at %L" msgstr "" -#: fortran/simplify.cc:7304 +#: fortran/simplify.cc:7299 #, gcc-internal-format, gfc-internal-format msgid "Argument NCOPIES of REPEAT intrinsic is negative at %L" msgstr "" -#: fortran/simplify.cc:7360 +#: fortran/simplify.cc:7355 #, gcc-internal-format, gfc-internal-format msgid "Argument NCOPIES of REPEAT intrinsic is too large at %L" msgstr "" -#: fortran/simplify.cc:7397 +#: fortran/simplify.cc:7392 #, gcc-internal-format, gfc-internal-format msgid "" "Evaluation of string longer than 2**28 at %L deferred to runtime, expect bugs" msgstr "" -#: fortran/simplify.cc:7455 +#: fortran/simplify.cc:7450 #, gcc-internal-format, gfc-internal-format msgid "" "The SHAPE array for the RESHAPE intrinsic at %L has a negative value %d for " "dimension %d" msgstr "" -#: fortran/simplify.cc:7480 +#: fortran/simplify.cc:7475 #, gcc-internal-format, gfc-internal-format msgid "Shapes of ORDER at %L and SHAPE at %L are different" msgstr "" -#: fortran/simplify.cc:7494 +#: fortran/simplify.cc:7489 #, gcc-internal-format, gfc-internal-format msgid "Sizes of ORDER at %L and SHAPE at %L are different" msgstr "" -#: fortran/simplify.cc:7509 +#: fortran/simplify.cc:7504 #, gcc-internal-format, gfc-internal-format msgid "" "Element with a value of %d in ORDER at %L must be in the range [1, ..., %d] " "for the RESHAPE intrinsic near %L" msgstr "" -#: fortran/simplify.cc:7520 +#: fortran/simplify.cc:7515 #, gcc-internal-format, gfc-internal-format msgid "ORDER at %L is not a permutation of the size of SHAPE at %L" msgstr "" -#: fortran/simplify.cc:7582 +#: fortran/simplify.cc:7577 #, gcc-internal-format, gfc-internal-format msgid "Reshaped array too large at %C" msgstr "" -#: fortran/simplify.cc:7703 +#: fortran/simplify.cc:7698 #, gcc-internal-format, gfc-internal-format msgid "Result of SCALE overflows its kind at %L" msgstr "" -#: fortran/simplify.cc:8223 +#: fortran/simplify.cc:8218 #, gcc-internal-format, gfc-internal-format msgid "DIM argument (%d) to intrinsic SIZE at %L out of range (1:%d)" msgstr "" -#: fortran/simplify.cc:8352 +#: fortran/simplify.cc:8347 #, gcc-internal-format msgid "Bad type in gfc_simplify_sign" msgstr "" -#: fortran/simplify.cc:8381 +#: fortran/simplify.cc:8376 #, gcc-internal-format msgid "in gfc_simplify_sin(): Bad type" msgstr "" -#: fortran/simplify.cc:8519 fortran/simplify.cc:8802 +#: fortran/simplify.cc:8514 fortran/simplify.cc:8797 #, gcc-internal-format msgid "Failure getting length of a constant array." msgstr "" -#: fortran/simplify.cc:8529 +#: fortran/simplify.cc:8524 #, gcc-internal-format msgid "" "The number of elements (%d) in the array constructor at %L requires an " @@ -88995,36 +89226,36 @@ msgid "" "option." msgstr "" -#: fortran/simplify.cc:8596 +#: fortran/simplify.cc:8591 #, gcc-internal-format, gfc-internal-format msgid "Simplification of SPREAD at %C not yet implemented" msgstr "" -#: fortran/simplify.cc:8620 +#: fortran/simplify.cc:8615 #, gcc-internal-format, gfc-internal-format msgid "Argument of SQRT at %L has a negative value" msgstr "" -#: fortran/simplify.cc:8636 +#: fortran/simplify.cc:8631 #, gcc-internal-format, gfc-internal-format msgid "invalid argument of SQRT at %L" msgstr "" -#: fortran/simplify.cc:8983 +#: fortran/simplify.cc:8979 #, gcc-internal-format, gfc-internal-format msgid "" "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY " "lower bound is %ld)" msgstr "" -#: fortran/simplify.cc:9006 +#: fortran/simplify.cc:9002 #, gcc-internal-format, gfc-internal-format msgid "" "Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY " "upper bound is %ld)" msgstr "" -#: fortran/simplify.cc:9549 +#: fortran/simplify.cc:9544 #, gcc-internal-format msgid "" "Character %qs in string at %L cannot be converted into character kind %d" @@ -89486,7 +89717,7 @@ msgstr "" msgid "Overlapping unequal initializers in EQUIVALENCE at %C" msgstr "" -#: fortran/trans-array.cc:2466 fortran/trans-expr.cc:10457 +#: fortran/trans-array.cc:2466 fortran/trans-expr.cc:10442 #, gcc-internal-format, gfc-internal-format msgid "" "The structure constructor at %L has been finalized. This feature was removed " @@ -89634,89 +89865,89 @@ msgstr "" msgid "intrinsic variable which isn't a procedure" msgstr "" -#: fortran/trans-decl.cc:4705 fortran/trans-decl.cc:8144 +#: fortran/trans-decl.cc:4699 fortran/trans-decl.cc:8139 #, gcc-internal-format msgid "Return value of function %qs at %L not set" msgstr "" -#: fortran/trans-decl.cc:5237 +#: fortran/trans-decl.cc:5231 #, gcc-internal-format msgid "Deferred type parameter not yet supported" msgstr "" -#: fortran/trans-decl.cc:5549 +#: fortran/trans-decl.cc:5543 #, gcc-internal-format msgid "backend decl for module variable %qs already exists" msgstr "" -#: fortran/trans-decl.cc:5562 +#: fortran/trans-decl.cc:5556 #, gcc-internal-format msgid "Unused PRIVATE module variable %qs declared at %L" msgstr "" -#: fortran/trans-decl.cc:6248 +#: fortran/trans-decl.cc:6242 #, gcc-internal-format msgid "Symbol %qs at %L has the WEAK attribute but is a dummy argument" msgstr "" -#: fortran/trans-decl.cc:6251 +#: fortran/trans-decl.cc:6245 #, gcc-internal-format msgid "Symbol %qs at %L has the WEAK attribute but is a local variable" msgstr "" -#: fortran/trans-decl.cc:6266 +#: fortran/trans-decl.cc:6260 #, gcc-internal-format msgid "Dummy argument %qs at %L was declared INTENT(OUT) but was not set" msgstr "" -#: fortran/trans-decl.cc:6272 +#: fortran/trans-decl.cc:6266 #, gcc-internal-format msgid "" "Derived-type dummy argument %qs at %L was declared INTENT(OUT) but was not " "set and does not have a default initializer" msgstr "" -#: fortran/trans-decl.cc:6283 fortran/trans-decl.cc:6434 +#: fortran/trans-decl.cc:6277 fortran/trans-decl.cc:6428 #, gcc-internal-format msgid "Unused dummy argument %qs at %L" msgstr "" -#: fortran/trans-decl.cc:6299 +#: fortran/trans-decl.cc:6293 #, gcc-internal-format msgid "Unused module variable %qs which has been explicitly imported at %L" msgstr "" -#: fortran/trans-decl.cc:6318 +#: fortran/trans-decl.cc:6312 #, gcc-internal-format msgid "Unused variable %qs declared at %L" msgstr "" -#: fortran/trans-decl.cc:6367 +#: fortran/trans-decl.cc:6361 #, gcc-internal-format msgid "Unused parameter %qs declared at %L" msgstr "" -#: fortran/trans-decl.cc:6371 +#: fortran/trans-decl.cc:6365 #, gcc-internal-format msgid "Unused parameter %qs which has been explicitly imported at %L" msgstr "" -#: fortran/trans-decl.cc:6401 +#: fortran/trans-decl.cc:6395 #, gcc-internal-format msgid "Return value %qs of function %qs declared at %L not set" msgstr "" -#: fortran/trans-decl.cc:6999 +#: fortran/trans-decl.cc:6994 #, gcc-internal-format, gfc-internal-format msgid "Sorry, !$ACC DECLARE at %L is not allowed in BLOCK construct" msgstr "" -#: fortran/trans-decl.cc:7198 fortran/trans-expr.cc:6117 +#: fortran/trans-decl.cc:7193 fortran/trans-expr.cc:6115 #, gcc-internal-format msgid "Unsigned not yet implemented" msgstr "" -#: fortran/trans-decl.cc:8316 +#: fortran/trans-decl.cc:8311 #, gcc-internal-format msgid "" "Symbol %qs at %L is declared in a BLOCK DATA program unit but is not in a " @@ -89747,17 +89978,17 @@ msgid "" "supported" msgstr "" -#: fortran/trans-expr.cc:4279 +#: fortran/trans-expr.cc:4277 #, gcc-internal-format msgid "Unknown intrinsic op" msgstr "" -#: fortran/trans-expr.cc:5865 +#: fortran/trans-expr.cc:5863 #, gcc-internal-format, gfc-internal-format msgid "Unknown argument list function at %L" msgstr "" -#: fortran/trans-expr.cc:11055 +#: fortran/trans-expr.cc:11040 #, gcc-internal-format, gfc-internal-format msgid "" "If bounds remapping is specified at %L, the pointer target shall not be NULL" @@ -89768,18 +89999,18 @@ msgstr "" msgid "Intrinsic function %qs (%d) not recognized" msgstr "" -#: fortran/trans-intrinsic.cc:1897 fortran/trans-intrinsic.cc:2446 -#: fortran/trans-intrinsic.cc:2649 +#: fortran/trans-intrinsic.cc:1899 fortran/trans-intrinsic.cc:2447 +#: fortran/trans-intrinsic.cc:2650 #, gcc-internal-format msgid "%<dim%> argument of %s intrinsic at %L is not a valid dimension index" msgstr "" -#: fortran/trans-intrinsic.cc:12702 fortran/trans-stmt.cc:1107 +#: fortran/trans-intrinsic.cc:12709 fortran/trans-stmt.cc:1164 #, gcc-internal-format, gfc-internal-format msgid "Sorry, the event component of derived type at %L is not yet supported" msgstr "" -#: fortran/trans-intrinsic.cc:12709 +#: fortran/trans-intrinsic.cc:12716 #, gcc-internal-format, gfc-internal-format msgid "The event variable at %L shall not be coindexed" msgstr "" @@ -89794,54 +90025,61 @@ msgstr "" msgid "Bad IO basetype (%d)" msgstr "" -#: fortran/trans-openmp.cc:881 fortran/trans-openmp.cc:1398 +#: fortran/trans-openmp.cc:932 fortran/trans-openmp.cc:1449 #, gcc-internal-format msgid "Sorry, polymorphic arrays not yet supported for firstprivate" msgstr "" -#: fortran/trans-openmp.cc:1552 +#: fortran/trans-openmp.cc:1604 #, gcc-internal-format msgid "implicit mapping of assumed size array %qD" msgstr "" -#: fortran/trans-openmp.cc:1558 +#: fortran/trans-openmp.cc:2149 #, gcc-internal-format -msgid "Implicit mapping of polymorphic variable %qD is unspecified behavior" +msgid "" +"Mapping of unlimited polymorphic list item %qD is unspecified behavior and " +"unsupported" msgstr "" -#: fortran/trans-openmp.cc:3376 +#: fortran/trans-openmp.cc:2154 +#, gcc-internal-format +msgid "Mapping of polymorphic list item %qD is unspecified behavior" +msgstr "" + +#: fortran/trans-openmp.cc:4176 #, gcc-internal-format msgid "optional class parameter" msgstr "" -#: fortran/trans-openmp.cc:3793 +#: fortran/trans-openmp.cc:4640 #, gcc-internal-format msgid "unhandled expression type" msgstr "" -#: fortran/trans-openmp.cc:4073 +#: fortran/trans-openmp.cc:4949 #, gcc-internal-format msgid "unhandled expression" msgstr "" -#: fortran/trans-openmp.cc:4195 +#: fortran/trans-openmp.cc:5072 #, gcc-internal-format msgid "%<uses_allocators%> clause with traits and memory spaces" msgstr "" -#: fortran/trans-openmp.cc:5173 +#: fortran/trans-openmp.cc:6050 #, gcc-internal-format msgid "%<!$OMP %s%> at %L requires %<-fopenmp-allocators%>" msgstr "" -#: fortran/trans-openmp.cc:5176 +#: fortran/trans-openmp.cc:6053 #, gcc-internal-format msgid "" "All files that might deallocate such a variable must be compiled with %<-" "fopenmp-allocators%>" msgstr "" -#: fortran/trans-openmp.cc:5179 +#: fortran/trans-openmp.cc:6056 #, gcc-internal-format msgid "" "This includes explicit DEALLOCATE, reallocation on intrinsic assignment, " @@ -89849,74 +90087,74 @@ msgid "" "components allocated with an OpenMP allocator" msgstr "" -#: fortran/trans-openmp.cc:5756 fortran/trans-openmp.cc:5776 +#: fortran/trans-openmp.cc:6633 fortran/trans-openmp.cc:6653 #, gcc-internal-format msgid "non-rectangular loop nest with non-constant step for %qs" msgstr "" -#: fortran/trans-openmp.cc:5778 +#: fortran/trans-openmp.cc:6655 #, gcc-internal-format msgid "Used here" msgstr "" -#: fortran/trans-openmp.cc:8344 +#: fortran/trans-openmp.cc:9221 #, gcc-internal-format msgid "gfc_trans_omp_workshare(): Bad statement code" msgstr "" -#: fortran/trans-openmp.cc:8754 +#: fortran/trans-openmp.cc:9631 #, gcc-internal-format msgid "The base name for %<declare variant%> must be specified at %L" msgstr "" -#: fortran/trans-openmp.cc:8765 +#: fortran/trans-openmp.cc:9642 #, gcc-internal-format, gfc-internal-format msgid "The base name at %L does not match the name of the current procedure" msgstr "" -#: fortran/trans-openmp.cc:8768 +#: fortran/trans-openmp.cc:9645 #, gcc-internal-format, gfc-internal-format msgid "The base name at %L must not be an entry name" msgstr "" -#: fortran/trans-openmp.cc:8771 +#: fortran/trans-openmp.cc:9648 #, gcc-internal-format, gfc-internal-format msgid "The base name at %L must not be a generic name" msgstr "" -#: fortran/trans-openmp.cc:8774 +#: fortran/trans-openmp.cc:9651 #, gcc-internal-format, gfc-internal-format msgid "The base name at %L must not be a procedure pointer" msgstr "" -#: fortran/trans-openmp.cc:8777 +#: fortran/trans-openmp.cc:9654 #, gcc-internal-format, gfc-internal-format msgid "The base procedure at %L must have an explicit interface" msgstr "" -#: fortran/trans-openmp.cc:8813 +#: fortran/trans-openmp.cc:9690 #, gcc-internal-format msgid "Cannot find symbol %qs" msgstr "" -#: fortran/trans-openmp.cc:8825 +#: fortran/trans-openmp.cc:9702 #, gcc-internal-format msgid "variant %qs at %L is not a function or subroutine" msgstr "" -#: fortran/trans-openmp.cc:8867 +#: fortran/trans-openmp.cc:9744 #, gcc-internal-format msgid "variant %qs and base %qs at %L have incompatible types: %s" msgstr "" -#: fortran/trans-openmp.cc:8873 +#: fortran/trans-openmp.cc:9750 #, gcc-internal-format msgid "" "%<append_args%> clause implies that %qs has %d dummy arguments of integer " "type with %<omp_interop_kind%> kind" msgstr "" -#: fortran/trans-openmp.cc:8899 +#: fortran/trans-openmp.cc:9776 #, gcc-internal-format msgid "" "%qs at %L must be a nonpointer, nonallocatable scalar integer dummy argument " @@ -89924,72 +90162,72 @@ msgid "" "at %L" msgstr "" -#: fortran/trans-openmp.cc:8909 +#: fortran/trans-openmp.cc:9786 #, gcc-internal-format msgid "" "%qs at %L with OPTIONAL attribute not support when utilized with the " "%<append_args%> clause at %L" msgstr "" -#: fortran/trans-openmp.cc:8919 +#: fortran/trans-openmp.cc:9796 #, gcc-internal-format msgid "" "%qs at %L has %d but requires %d %<omp_interop_kind%> kind dummy arguments " "as it is utilized with the %<append_args%> clause at %L" msgstr "" -#: fortran/trans-openmp.cc:8934 +#: fortran/trans-openmp.cc:9811 #, gcc-internal-format msgid "" "the %qs clause can only be specified if the %<dispatch%> selector of the " "construct selector set appears in the %<match%> clause at %L" msgstr "" -#: fortran/trans-openmp.cc:9035 fortran/trans-openmp.cc:9074 +#: fortran/trans-openmp.cc:9912 fortran/trans-openmp.cc:9951 #, gcc-internal-format, gfc-internal-format msgid "Expected positive argument index at %L" msgstr "" -#: fortran/trans-openmp.cc:9046 +#: fortran/trans-openmp.cc:9923 #, gcc-internal-format, gfc-internal-format msgid "Argument index at %L exceeds number of arguments %d" msgstr "" -#: fortran/trans-openmp.cc:9084 +#: fortran/trans-openmp.cc:9961 #, gcc-internal-format, gfc-internal-format msgid "Upper argument index smaller than lower one at %L" msgstr "" -#: fortran/trans-openmp.cc:9110 +#: fortran/trans-openmp.cc:9987 #, gcc-internal-format msgid "List item %qs at %L, declared at %L, is not a dummy argument" msgstr "" -#: fortran/trans-openmp.cc:9124 +#: fortran/trans-openmp.cc:10001 #, gcc-internal-format msgid "" "Argument %qs at %L to list item in %<need_device_ptr%> at %L must be a " "scalar of TYPE(C_PTR)" msgstr "" -#: fortran/trans-openmp.cc:9131 +#: fortran/trans-openmp.cc:10008 #, gcc-internal-format msgid "Consider using %<need_device_addr%> instead" msgstr "" -#: fortran/trans-openmp.cc:9138 +#: fortran/trans-openmp.cc:10015 #, gcc-internal-format msgid "" "Argument %qs at %L to list item in %<need_device_addr%> at %L must not have " "the VALUE attribute" msgstr "" -#: fortran/trans-openmp.cc:9147 +#: fortran/trans-openmp.cc:10024 #, gcc-internal-format msgid "%qs at %L is specified more than once" msgstr "" -#: fortran/trans-openmp.cc:9164 +#: fortran/trans-openmp.cc:10041 #, gcc-internal-format msgid "%<need_device_addr%> not yet supported" msgstr "" @@ -89999,21 +90237,35 @@ msgstr "" msgid "An alternate return at %L without a * dummy argument" msgstr "" -#: fortran/trans-stmt.cc:908 +#: fortran/trans-stmt.cc:965 #, gcc-internal-format, gfc-internal-format msgid "Sorry, the lock component of derived type at %L is not yet supported" msgstr "" -#: fortran/trans-stmt.cc:1370 +#: fortran/trans-stmt.cc:1426 #, gcc-internal-format, gfc-internal-format msgid "Sorry, only support for integer kind %d implemented for image-set at %L" msgstr "" -#: fortran/trans-stmt.cc:3807 +#: fortran/trans-stmt.cc:3901 #, gcc-internal-format msgid "gfc_trans_select(): Bad type for case expr." msgstr "" +#: fortran/trans-stmt.cc:5264 +#, gcc-internal-format +msgid "" +"Sorry, %s specifier at %L for assumed-size array %qs is not yet supported" +msgstr "" + +#. Cf. PR fortran/ +#: fortran/trans-stmt.cc:5301 +#, gcc-internal-format +msgid "" +"Sorry, LOCAL specifier at %L for %qs of derived type with default " +"initializer is not yet supported" +msgstr "" + #: fortran/trans-types.cc:619 #, gcc-internal-format msgid "" @@ -90086,7 +90338,7 @@ msgstr "" msgid "gfc_validate_kind(): Got bad kind" msgstr "" -#: fortran/trans.cc:2663 +#: fortran/trans.cc:2671 #, gcc-internal-format msgid "gfc_trans_code(): Bad statement code" msgstr "" @@ -90317,7 +90569,7 @@ msgstr "" msgid "two or more sections for %s" msgstr "" -#: lto/lto-partition.cc:1122 +#: lto/lto-partition.cc:1123 #, gcc-internal-format msgid "min partition size cannot be greater than max partition size" msgstr "" @@ -91736,7 +91988,7 @@ msgid "unused name %qE" msgstr "" #: rust/resolve/rust-ast-resolve-expr.cc:134 -#: rust/resolve/rust-late-name-resolver-2.0.cc:233 +#: rust/resolve/rust-late-name-resolver-2.0.cc:268 #, gcc-internal-format, gfc-internal-format msgid "are you trying to break %s? how dare you?" msgstr "" diff --git a/gcc/po/sv.po b/gcc/po/sv.po index 10c543e..b7fd55b 100644 --- a/gcc/po/sv.po +++ b/gcc/po/sv.po @@ -29,10 +29,10 @@ # thunk snutt msgid "" msgstr "" -"Project-Id-Version: gcc 15.1-b20250316\n" +"Project-Id-Version: gcc 15.1-b20250406\n" "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n" "POT-Creation-Date: 2025-04-04 20:42+0000\n" -"PO-Revision-Date: 2025-04-06 09:20+0200\n" +"PO-Revision-Date: 2025-04-20 20:30+0200\n" "Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" "Language: sv\n" @@ -1328,13 +1328,12 @@ msgstr "Använd WIP-lÃ¥nekontrolleraren." #: rust/lang.opt:217 #, no-c-format msgid "-frust-edition=[unwind|abort] Panic strategy to compile crate with" -msgstr "" +msgstr "-frust-edition=[unwind|abort] Panikstrategi att kompilera lÃ¥dan med" #: rust/lang.opt:230 -#, fuzzy, no-c-format -#| msgid "Select the eBPF ISA version to target in code generation." +#, no-c-format msgid "Enable the overflow checks in code generation" -msgstr "Välj eBPF ISA-versionen att ha som mÃ¥l i kodgenereringen." +msgstr "Aktivera spillkontroller i kodgenereringen" #: c-family/c.opt:71 #, no-c-format @@ -1841,10 +1840,9 @@ msgstr "Varna för aritmetiska konverteringar som bör undvikas pÃ¥ operander dà # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118985 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118979 #: c-family/c.opt:669 -#, fuzzy, no-c-format -#| msgid "Warn about deprecated space between and suffix in a user-defined literal operator." +#, no-c-format msgid "Warn about deprecated space between \"\" and suffix in a user-defined literal operator." -msgstr "Varna för förÃ¥ldrade mellanrum mellan och suffix i en användardefinierad literal operator." +msgstr "Varna för förÃ¥ldrade mellanrum mellan \"\" och suffix i en användardefinierad literal operator." #: c-family/c.opt:673 #, no-c-format @@ -8332,10 +8330,9 @@ msgid "Support USER_MSR built-in functions and code generation." msgstr "Stöd inbyggda USER_MSR-funktioner och -kodgenerering." #: config/i386/i386.opt:1368 -#, fuzzy, no-c-format -#| msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVX10.1-512 built-in functions and code generation." +#, no-c-format msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVX10.1-256 built-in functions and code generation." -msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2- och AVX10.1-512-funktioner och -kodgenerering." +msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2- och AVX10.1-256-funktioner och -kodgenerering." #: config/i386/i386.opt:1373 config/i386/i386.opt:1378 #, no-c-format @@ -8343,16 +8340,14 @@ msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, and AVX10 msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2- och AVX10.1-512-funktioner och -kodgenerering." #: config/i386/i386.opt:1383 -#, fuzzy, no-c-format -#| msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1-512 and AVX10.2-512 built-in functions and code generation." +#, no-c-format msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1-512 and AVX10.2 built-in functions and code generation." -msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2-, AVX10.1-512- och AVX10.2-512-funktioner och -kodgenerering." +msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2-, AVX10.1-512- och AVX10.2-funktioner och -kodgenerering." #: config/i386/i386.opt:1388 -#, fuzzy, no-c-format -#| msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1-512, AVX10.2-512 and AMX-AVX512 built-in functions and code generation." +#, no-c-format msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX10.1-512, AVX10.2 and AMX-AVX512 built-in functions and code generation." -msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2-, AVX10.1-512-, AVX10.2-512- och AMX-AVX512-funktioner och -kodgenerering." +msgstr "Stöd inbyggda MMX-, SSE-, SSE2-, SSE3-, SSSE3-, SSE4.1-, SSE4.2-, AVX-, AVX2-, AVX10.1-512-, AVX10.2- och AMX-AVX512-funktioner och -kodgenerering." #: config/i386/i386.opt:1393 #, no-c-format @@ -8798,7 +8793,7 @@ msgstr "Denna flagga är pÃ¥ som standard för att undvika PR118012." #: config/avr/avr.opt:70 #, no-c-format msgid "Optimization. Allow to use nonzero_bits() in some insn conditions." -msgstr "" +msgstr "Optimering. TillÃ¥t användning av nonzero_bits() i nÃ¥gra instruktionsvillkor." #: config/avr/avr.opt:74 #, no-c-format @@ -9927,10 +9922,9 @@ msgid "Put everything in the regular TOC." msgstr "Placera allting i den vanliga TOC." #: config/rs6000/rs6000.opt:305 -#, fuzzy, no-c-format -#| msgid "invalid arguments for %<-fpatchable-function-entry%>" +#, no-c-format msgid "Emit NOPs before global and after local entry point for -fpatchable-function-entry." -msgstr "ogiltigt argument till %<-fpatchable-function-entry%>" +msgstr "Mata ut NOP:ar före globala och efter lokala ingÃ¥ngspunkter för -fpatchable-function-entry" #: config/rs6000/rs6000.opt:309 #, no-c-format @@ -10427,12 +10421,12 @@ msgstr "Avge kod för ISA-utökningen för räkning." #: config/alpha/alpha.opt:74 #, no-c-format msgid "Emit multi-thread and async-signal safe code for byte and word memory accesses." -msgstr "" +msgstr "Avge multitrÃ¥dat och asynk-signal-säker kod för byte- och ordminnesÃ¥tkomster." #: config/alpha/alpha.opt:78 #, no-c-format msgid "Emit multi-thread and async-signal safe code for partial memory accesses." -msgstr "" +msgstr "Avge multitrÃ¥dat och asynk-signal-säker kod för partiella minnesÃ¥tkomster." #: config/alpha/alpha.opt:82 #, no-c-format @@ -13350,16 +13344,14 @@ msgid "Warn when an optimization pass is disabled." msgstr "Varna när ett optimerarpass är avaktiverat." #: common.opt:617 -#, fuzzy, no-c-format -#| msgid "Treat all warnings as errors." +#, no-c-format msgid "Turn all warnings into errors." -msgstr "Behandla alla varningar som fel." +msgstr "Gör om alla varningar till fel." #: common.opt:621 -#, fuzzy, no-c-format -#| msgid "Treat specified warning as error." +#, no-c-format msgid "Turn the specified warning into an error." -msgstr "Behandla angivna varningar som fel." +msgstr "Gör om de angivna varningarna till ett fel." #: common.opt:625 #, no-c-format @@ -13427,16 +13419,14 @@ msgid "Warn if dereferencing a NULL pointer may lead to erroneous or undefined b msgstr "Varna om dereferering av en NULL-pekare kan leda till felaktigt eller odefinierat beteende." #: common.opt:698 -#, fuzzy, no-c-format -#| msgid "Warn about returning a pointer/reference to a local or temporary variable." +#, no-c-format msgid "Warn about passing a pointer/reference to a local or temporary variable to a musttail call argument." -msgstr "Varna för retur av en pekare/referens till en lokal eller temporär variabel." +msgstr "Varna för att skicka en pekare/referens till en lokal eller temporär variabel till ett argument till ett musttail-anrop." #: common.opt:702 -#, fuzzy, no-c-format -#| msgid "Warn about returning a pointer/reference to a local or temporary variable." +#, no-c-format msgid "Warn about pointer/reference to a local or temporary variable possibly escaping to a musttail call." -msgstr "Varna för retur av en pekare/referens till en lokal eller temporär variabel." +msgstr "Varna för pekare/referens till en lokal eller temporär variabel som möjligen kan rymma till ett musttail-anrop." #: common.opt:706 #, no-c-format @@ -13656,12 +13646,12 @@ msgstr "Varna när ett villkor har för mÃ¥nga termer och villkorstäckningsprof #: common.opt:898 #, no-c-format msgid "-fpath-coverage-limit=<number> Don't instrument functions path count exceeding <number>." -msgstr "" +msgstr "-fpath-coverage-limit=<antal> Instrumentera inte funktionvägsantal som överskrider <antal>." #: common.opt:903 #, no-c-format msgid "Warn if a function exceeds the number of paths (controlled by -fpath-coverage-limit) and path coverage give up instrumenting the function. The limit is approximate and conservative and coverage might give up even if the actual number is slightly below the limit." -msgstr "" +msgstr "Varna om en funktion överskrider antalet vägar (styrt av -fpath-coverage-limit) och vägtäckningen ger upp att instrumentera funktionen. Gränsen är ungefärlig och konservativ och täckningen kan ge upp även om det faktiska antalet är nÃ¥got under gränsen." #: common.opt:910 #, no-c-format @@ -14854,10 +14844,9 @@ msgid "Optimize sibling and tail recursive calls." msgstr "Optimera syskon- och svansrekursiva anrop." #: common.opt:2479 -#, fuzzy, no-c-format -#| msgid "Insert arc-based program profiling code." +#, no-c-format msgid "Insert path profiling code." -msgstr "Lägg in bÃ¥gbaserad programprofileringskod." +msgstr "Lägg vägprofileringskod." #: common.opt:2483 #, no-c-format @@ -16045,10 +16034,9 @@ msgid "Enable function profiling." msgstr "Aktivera funktionsprofilering." #: common.opt:3808 -#, fuzzy, no-c-format -#| msgid "Like -pedantic but issue them as errors." +#, no-c-format msgid "Like -pedantic but issue errors instead of warnings." -msgstr "Som -pedantic men ange dem som fel." +msgstr "Som -pedantic men ange fel istället för varningar." #: common.opt:3848 #, no-c-format @@ -18465,10 +18453,9 @@ msgstr "" " villkor/beslut (maskerat MC/DC) i utdata\n" #: gcov.cc:1104 -#, fuzzy, c-format -#| msgid " -p, --preserve-paths Preserve all pathname components\n" +#, c-format msgid " -e, --prime-paths Show prime path coverage summary\n" -msgstr " -p, --preserve-paths Bevara alla sökvägskomponenter\n" +msgstr " -e, --prime-paths Visa sammanfattning av primevägstäckning\n" #: gcov.cc:1105 #, c-format @@ -18478,6 +18465,10 @@ msgid "" " TYPE is 'covered', 'uncovered', or 'both'\n" " and defaults to 'uncovered'\n" msgstr "" +" --prime-paths-lines[=TYP] Inkludera vägar i utmatningens\n" +" radspÃ¥rningsläge — pÃ¥verkar inte json\n" +" TYP är â€coveredâ€, â€uncovered†eller â€bothâ€\n" +" och standardvärdet är â€uncoveredâ€\n" #: gcov.cc:1109 #, c-format @@ -18487,6 +18478,10 @@ msgid "" " TYPE is 'covered', 'uncovered', or 'both'\n" " and defaults to 'uncovered'\n" msgstr "" +" --prime-paths-source[=TYP] Inkludera vägar i utmatningens\n" +" källspÃ¥rningsläge — pÃ¥verkar inte json\n" +" TYP är â€coveredâ€, â€uncovered†eller â€bothâ€\n" +" och standardvärdet är â€uncoveredâ€\n" #: gcov.cc:1113 #, c-format @@ -18649,12 +18644,12 @@ msgstr "JSON-formatversion: %s\n" #: gcov.cc:1237 #, c-format msgid "invalid argument '%s' for '--prime-paths-lines'. Valid arguments are: 'covered', 'uncovered', 'both'\n" -msgstr "" +msgstr "felaktigt argument â€%s†till â€--prime-paths-linesâ€. Giltiga argument är: â€coveredâ€, â€uncoveredâ€, â€bothâ€\n" #: gcov.cc:1258 #, c-format msgid "invalid argument '%s' for '--prime-paths-source'. Valid arguments are: 'covered', 'uncovered', 'both'\n" -msgstr "" +msgstr "felaktigt argument â€%s†till â€--prime-paths-sourceâ€. Giltiga argument är: â€coveredâ€, â€uncoveredâ€, â€bothâ€\n" #: gcov.cc:1726 #, c-format @@ -18837,16 +18832,14 @@ msgid "No conditions\n" msgstr "Inga villkor\n" #: gcov.cc:3101 gcov.cc:3155 -#, fuzzy, c-format -#| msgid "Condition outcomes covered:%s of %d\n" +#, c-format msgid "Prime paths covered:%s of %d\n" -msgstr "Täckta villkorsresultat:%s av %d\n" +msgstr "Täckta primärvägar:%s av %d\n" #: gcov.cc:3105 gcov.cc:3159 -#, fuzzy, c-format -#| msgid "Display this information." +#, c-format msgid "No path information\n" -msgstr "Visa den här informationen." +msgstr "Ingen väginformation\n" #: gcov.cc:3379 #, c-format @@ -18901,12 +18894,12 @@ msgstr "ovillkorligt hopp %2d aldrig utfört\n" #: gcov.cc:3729 #, c-format msgid "path coverage omitted\n" -msgstr "" +msgstr "vägtäckning utesluten\n" #: gcov.cc:3731 #, c-format msgid "paths covered %u of %zu\n" -msgstr "" +msgstr "täckte %u vägar av %zu\n" #: gcov.cc:3806 #, c-format @@ -19296,10 +19289,8 @@ msgid "call may throw exception that does not propagate" msgstr "anropet kan kasta ett undantag som inte propagerar" #: tree-tailcall.cc:725 -#, fuzzy -#| msgid "call may throw exception that does not propagate" msgid "call may throw exception caught locally or perform cleanups" -msgstr "anropet kan kasta ett undantag som inte propagerar" +msgstr "anropet kan kasta ett undantag som fÃ¥ngas lokalt eller utför uppstädningar" #: tree-tailcall.cc:759 msgid "return value used after call" @@ -19318,10 +19309,8 @@ msgid "return value changed after call" msgstr "returvärdet ändrat efter anropet" #: tree-tailcall.cc:1012 -#, fuzzy -#| msgid "inside another call" msgid "internal call" -msgstr "inuti ett annat anrop" +msgstr "internt anrop" #: tree-tailcall.cc:1021 tree-tailcall.cc:1061 msgid "call and return value are different" @@ -19337,7 +19326,7 @@ msgstr "svansrekursion med pekare kan endast använda additioner" #: tree-tailcall.cc:1563 msgid "tail recursion with accumulation mixed with musttail non-recursive call" -msgstr "" +msgstr "svansrekursion med ackumulering blandad med ickerekursivt musttail-anrop" #: c-family/c-format.cc:434 msgid "format" @@ -21726,10 +21715,8 @@ msgid "elemental binary operation" msgstr "elementär binär operation" #: fortran/check.cc:70 -#, fuzzy -#| msgid " [see %<-fno-allow-invalid-boz%>]" msgid " [see %<-fallow-invalid-boz%>]" -msgstr " [se %<-fno-allow-invalid-boz%>]" +msgstr " [se %<-fallow-invalid-boz%>]" #: fortran/check.cc:482 msgid "BOZ constant truncated at %L" @@ -23218,10 +23205,9 @@ msgid "unknown rust compile-until %qs" msgstr "okänd rust compile-until %qs" #: rust/lang.opt:220 -#, fuzzy, gcc-internal-format -#| msgid "unknown attribute %qs" +#, gcc-internal-format msgid "unknown panic strategy %qs" -msgstr "okänt attribut %qs" +msgstr "okänd panikstrategi %qs" #: c-family/c.opt:43 c-family/c.opt:46 c-family/c.opt:191 #, gcc-internal-format @@ -23389,12 +23375,12 @@ msgstr "okänd lam-typ %qs" #: config/i386/i386.opt:1359 #, gcc-internal-format msgid "%<-mevex512%> will be deprecated in GCC 16 due to all machines 512 bit vector size supported" -msgstr "" +msgstr "%<-mevex512%> bör undvikas frÃ¥n GCC 16 pÃ¥ grund av att alla maskiners 512-bitarsvektorstorlekar stödjs" #: config/i386/i386.opt:1367 config/i386/i386.opt:1372 #, gcc-internal-format msgid "%<-mavx10.1%> is aliased to 512 bit since GCC14.3 and GCC15.1 while %<-mavx10.1-256%> and %<-mavx10.1-512%> will be deprecated in GCC 16 due to all machines 512 bit vector size supported" -msgstr "" +msgstr "%<-mavx10.1%> är ett alias för 512-bitar sedan GCC14.3 och GCC15.1 medan %<-mavx10.1-256%> och %<-mavx10.1-512%> bör undvikas i GCC 16 pÃ¥ grund av att alla maskiners 512-bitarsvektorstorlekar stödjs" #: config/avr/avr.opt:34 #, gcc-internal-format @@ -26496,7 +26482,7 @@ msgstr "%qD har fler än %u block, det begärda maximumet för %<-fharden-contro #: gimple-low.cc:110 #, gcc-internal-format msgid "reference to label %qD defined inside of %<assume%> attribute expression from outside of the attribute" -msgstr "" +msgstr "en referens till etiketten %qD definierad inuti attribututtrycket %<assume%> frÃ¥n utsidan av attributet" #: gimple-low.cc:112 cp/name-lookup.cc:9306 #, gcc-internal-format @@ -27984,8 +27970,7 @@ msgid "statement will never be executed" msgstr "satsen kommer aldrig utföras" #: gimplify.cc:2398 -#, fuzzy, gcc-internal-format -#| msgid "%qs cannot be initialized with%<-ftrivial-auto-var_init%>" +#, gcc-internal-format msgid "%qs cannot be initialized with %<-ftrivial-auto-var_init%>" msgstr "%qs fÃ¥r inte initieras med %<-ftrivial-auto-var_init%>" @@ -30530,7 +30515,7 @@ msgstr "pass %qs fanns inte men refereras av nytt pass %qs" #: path-coverage.cc:516 #, gcc-internal-format msgid "paths exceeding limit, giving up path coverage" -msgstr "" +msgstr "vägar överskrider gränsen, ger upp vägtäckning" #: plugin.cc:214 #, gcc-internal-format @@ -33044,40 +33029,37 @@ msgstr "Anväder snabbare algoritmer för switch-sänkning. Antalet switch-fall #: tree-tailcall.cc:220 #, gcc-internal-format msgid "address of label passed to %<musttail%> call argument" -msgstr "" +msgstr "adressen till en etikett skickad till %<musttail%>-anropsargument" #: tree-tailcall.cc:224 #, gcc-internal-format msgid "address of parameter %qD passed to %<musttail%> call argument" -msgstr "" +msgstr "adressen till parametern %qD skickad till %<musttail%>-anropsargument" #: tree-tailcall.cc:228 #, gcc-internal-format msgid "address of automatic variable %qD passed to %<musttail%> call argument" -msgstr "" +msgstr "adressen till den automatiska variabeln %qD skickad till %<musttail%>-anropsargument" #: tree-tailcall.cc:232 -#, fuzzy, gcc-internal-format -#| msgid "address of local variable %qD returned" +#, gcc-internal-format msgid "address of local variable passed to %<musttail%> call argument" -msgstr "adress till lokal variabel %qD returnerad" +msgstr "adress till en lokal variabel skickat som argument till ett %<musttail%>-anrop" #: tree-tailcall.cc:849 tree-tailcall.cc:879 -#, fuzzy, gcc-internal-format -#| msgid "address of local variable %qD returned" +#, gcc-internal-format msgid "address of local variable can escape to %<musttail%> call" -msgstr "adress till lokal variabel %qD returnerad" +msgstr "adressen till en lokal variabel kan rymma till ett %<musttail%>-anrop" #: tree-tailcall.cc:874 -#, fuzzy, gcc-internal-format -#| msgid "automatic variable %qE cannot be %<threadprivate%>" +#, gcc-internal-format msgid "address of automatic variable %qD can escape to %<musttail%> call" -msgstr "automatisk variabel %qE kan inte vara %<threadprivate%>" +msgstr "adressen till en automatisk variabel %qD kan rymma till ett %<musttail%>-anrop" #: tree-tailcall.cc:905 #, gcc-internal-format msgid "address of parameter %qD can escape to %<musttail%> call" -msgstr "" +msgstr "adressen till parametern %qD kan rymma till ett %<musttail%>-anrop" #: tree-vect-generic.cc:308 tree-vect-generic.cc:437 tree-vect-generic.cc:1939 #, gcc-internal-format @@ -39313,10 +39295,9 @@ msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>" msgstr "stackkrockvaktsstorlek %<%d%> mÃ¥ste vara lika med testintervallet %<%d%>" #: config/aarch64/aarch64.cc:18902 -#, fuzzy, gcc-internal-format -#| msgid "support for mode %qs" +#, gcc-internal-format msgid "no support for %qs without %qs" -msgstr "stöd för läge %qs" +msgstr "inget stöd för %qs utan %qs" #: config/aarch64/aarch64.cc:18955 #, gcc-internal-format @@ -40514,10 +40495,9 @@ msgid "supported core architectures:%s" msgstr "stödda kärnarkitekturer:%s" #: config/avr/avr-passes.cc:4907 -#, fuzzy, gcc-internal-format -#| msgid "could not split insn" +#, gcc-internal-format msgid "failed to split insn" -msgstr "gick inte att dela instruktion" +msgstr "det gick inte att dela instruktionen" #. Reached the end of `avr_mcu_types'. This should actually never #. happen as options are provided by device-specs. It could be a @@ -41803,10 +41783,9 @@ msgid "%<target(\"rtd\")%> is ignored in 64bit mode" msgstr "%<target(\"rtd\")%> ignoreras i 64-bitsläge" #: config/i386/i386-options.cc:2693 -#, fuzzy, gcc-internal-format -#| msgid "%<-mno-evex512%> or %<-mno-avx512XXX%> cannot disable AVX10 instructions when AVX10.1-512 is available" +#, gcc-internal-format msgid "%<-mno-evex512%> or %<-mno-avx512XXX%> cannot disable AVX10 instructions when AVX10.1-512 is available in GCC 15, behavior will change to it will disable that part of AVX512 instructions since GCC 16" -msgstr "%<-mno-evex512%> eller %<-mno-avx512XXX%> kan inte avaktivera AVX10-instruktioner när AVX10.1-512 är tillgängligt" +msgstr "%<-mno-evex512%> eller %<-mno-avx512XXX%> kan inte avaktivera AVX10-instruktioner när AVX10.1-512 är tillgängligt i GCC 15, beteendet kommer ändras till att det kommer att avaktivera den delen av AVX512-instruktionerna frÃ¥n GCC 16." #. We should not emit 512 bit instructions under AVX10.1-256 #. when EVEX512 is enabled w/o any AVX512 features enabled. @@ -41822,16 +41801,14 @@ msgid "Vector size conflicts between AVX10.1 and AVX512, using 512 as max vector msgstr "Vektorstorleken stÃ¥r i konflikt mellan AVX10.1 och AVX512, använder 512 som maximal vektorstorlek" #: config/i386/i386-options.cc:2731 -#, fuzzy, gcc-internal-format -#| msgid "%<-mno-avx512XXX%> cannot disable AVX10 instructions when AVX10 is available" +#, gcc-internal-format msgid "%<-mno-avx512XXX%> cannot disable AVX10 instructions when AVX10 is available in GCC 15, behavior will change to it will disable that part of AVX512 instructions since GCC 16" -msgstr "%<-mno-avx512XXX%> kan inte avaktivera AVX10-instruktioner när AVX10 är tillgängligt" +msgstr "%<-mno-avx512XXX%> kan inte avaktivera AVX10-instruktioner när AVX10 är tillgängligt i GCC 15, beteendet kommer ändras till att det kommer att avaktivera den delen av AVX512-instruktionerna frÃ¥n GCC 16." #: config/i386/i386-options.cc:2743 -#, fuzzy, gcc-internal-format -#| msgid "%<-mno-avx10.1-256, -mno-avx10.1-512%> cannot disable AVX512 instructions when %<-mavx512XXX%>" +#, gcc-internal-format msgid "%<-mno-avx10.1-256, -mno-avx10.1-512%> cannot disable AVX512 instructions when %<-mavx512XXX%> in GCC 15, behavior will change to it will disable all the instructions in GCC 16" -msgstr "%<-mno-avx10.1-256, -mno-avx10.1-512%> kan inte avaktivera AVX512-instruktioner när %<-mavx512XXX%>" +msgstr "%<-mno-avx10.1-256, -mno-avx10.1-512%> kan inte avaktivera AVX512-instruktioner när %<-mavx512XXX%> i GCC 15, beteendet kommer ändras till att det kommer alla instruktionerna frÃ¥n GCC 16." #: config/i386/i386-options.cc:2790 #, gcc-internal-format @@ -47604,7 +47581,7 @@ msgstr "attributet %<fallthrough%> pÃ¥ toppnivÃ¥" #: c/c-parser.cc:2541 c/c-parser.cc:8296 #, gcc-internal-format msgid "attribute %<musttail%> mixed with other attributes on %<return%> statement" -msgstr "" +msgstr "attributet %<musttail%> blandat med andra attribut pÃ¥ satsen %<return%>" #: c/c-parser.cc:2557 c/c-parser.cc:4483 #, gcc-internal-format @@ -48012,10 +47989,9 @@ msgid "mixing OpenMP directives with attribute and pragma syntax on the same dec msgstr "OpenMP-direktiv blandas med attribut- och pragma-syntax pÃ¥ samma deklaration" #: c/c-parser.cc:7407 cp/parser.cc:15356 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute does not take any arguments" +#, gcc-internal-format msgid "%qs attribute does not take any arguments" -msgstr "attributet %qE tar inga argument" +msgstr "attributet %qs tar inga argument" #: c/c-parser.cc:7504 #, gcc-internal-format @@ -49193,17 +49169,15 @@ msgid "duplicate %<prefer_type%> modifier" msgstr "dubblerad %<prefer_type%>-modifierare" #: c/c-parser.cc:20841 cp/parser.cc:43138 -#, fuzzy, gcc-internal-format -#| msgid "Expected %<)%> or %<,%> at %C" +#, gcc-internal-format msgid "expected %<prefer_type%>, %<target%>, or %<targetsync%>" -msgstr "%<)%> eller %<,%> förväntades vid %C" +msgstr "%<prefer_type%>, %<target%> eller %<targetsync%> förväntades" #: c/c-parser.cc:20877 c/c-parser.cc:27149 cp/parser.cc:43175 #: cp/parser.cc:50578 -#, fuzzy, gcc-internal-format -#| msgid "Expected %<)%> or %<,%> at %C" +#, gcc-internal-format msgid "missing required %<target%> and/or %<targetsync%> modifier" -msgstr "%<)%> eller %<,%> förväntades vid %C" +msgstr "saknad nödvändig modifierare %<target%> och/eller %<targetsync%>" #: c/c-parser.cc:21118 cp/parser.cc:43470 #, gcc-internal-format @@ -60750,24 +60724,22 @@ msgstr "kan inte representera ytterligare importerade källplatser" #: cp/module.cc:12041 #, gcc-internal-format msgid "mismatching abi tags for %qD with tags %qE" -msgstr "" +msgstr "abi-taggarna stämmer inte för %qD med taggarna %qE" #: cp/module.cc:12045 #, gcc-internal-format msgid "mismatching abi tags for %qD with no tags" -msgstr "" +msgstr "abi-taggarna stämmer inte för %qD med inga taggar" #: cp/module.cc:12048 -#, fuzzy, gcc-internal-format -#| msgid "existing declaration %#qD" +#, gcc-internal-format msgid "existing declaration here with tags %qE" -msgstr "befintlig deklaration %#qD" +msgstr "befintlig deklaration här med taggarna %qE" #: cp/module.cc:12051 -#, fuzzy, gcc-internal-format -#| msgid "exporting declaration %qD with internal linkage" +#, gcc-internal-format msgid "existing declaration here with no tags" -msgstr "en exporterande deklaration %qD med intern länkklass" +msgstr "en befintlig deklaration här utan taggar" #: cp/module.cc:12193 #, gcc-internal-format @@ -61811,16 +61783,14 @@ msgid "%qE is not recognized as a module control-line" msgstr "%qE ser inte ut som en modulstyrrad" #: cp/parser.cc:3904 -#, fuzzy, gcc-internal-format -#| msgid "C++20 %qE only available with %<-fmodules-ts%>" +#, gcc-internal-format msgid "C++20 %qE only available with %<-fmodules%>" -msgstr "C++20 %qE är endast tillgängligt med %<-fmodules-ts%>" +msgstr "C++20 %qE är endast tillgängligt med %<-fmodules%>" #: cp/parser.cc:3907 -#, fuzzy, gcc-internal-format -#| msgid "C++20 %qE only available with %<-fmodules-ts%>, which is not yet enabled with %<-std=c++20%>" +#, gcc-internal-format msgid "C++20 %qE only available with %<-fmodules%>, which is not yet enabled with %<-std=c++20%>" -msgstr "C++20 %qE är endast tillgängligt med %<-fmodules-ts%>, som inte ännu aktiveras med %<-std=c++20%>" +msgstr "C++20 %qE är endast tillgängligt med %<-fmodules%>, som inte ännu aktiveras med %<-std=c++20%>" #: cp/parser.cc:3913 #, gcc-internal-format @@ -63040,10 +63010,9 @@ msgid "keyword %<export%> is deprecated, and is ignored" msgstr "nyckelordet %<export%> bör undvikas, och ignoreras" #: cp/parser.cc:18861 -#, fuzzy, gcc-internal-format -#| msgid "keyword %<export%> is enabled with %<-fmodules-ts%>" +#, gcc-internal-format msgid "keyword %<export%> is enabled with %<-fmodules%>" -msgstr "nyckelordet %<export%> är aktiverat med %<-fmodules-ts%>" +msgstr "nyckelordet %<export%> är aktiverat med %<-fmodules%>" #: cp/parser.cc:18966 #, gcc-internal-format @@ -63442,10 +63411,9 @@ msgid "types may not be defined in alias template declarations" msgstr "typer fÃ¥r inte definieras i aliasmalldeklarationer" #: cp/parser.cc:23293 -#, fuzzy, gcc-internal-format -#| msgid "Expected register or constant integer." +#, gcc-internal-format msgid "expected string-literal or constexpr in parentheses" -msgstr "Register eller konstant heltal förväntades." +msgstr "en strängliteral constexpr i parenteser förväntades" #: cp/parser.cc:23354 #, gcc-internal-format @@ -63660,10 +63628,9 @@ msgid "expected type-specifier" msgstr "typspecificerare förväntades" #: cp/parser.cc:26047 -#, fuzzy, gcc-internal-format -#| msgid "comparison between two arrays is deprecated in C++20" +#, gcc-internal-format msgid "omission of %<,%> before varargs %<...%> is deprecated in C++26" -msgstr "jämförelse mellan tvÃ¥ vektorer bör undvikas enligt C++20" +msgstr "att utelämna %<,%> före varargs %<...%> bör undvikas enligt C++26" #: cp/parser.cc:26254 #, gcc-internal-format @@ -63681,10 +63648,9 @@ msgid "%<this%> specifier in template parameter declaration" msgstr "specificeraren %<this%> i en mallparameterdeklaration" #: cp/parser.cc:26459 -#, fuzzy, gcc-internal-format -#| msgid "%<this%> specifier in template parameter declaration" +#, gcc-internal-format msgid "%<this%> specifier in a requires-expression parameter" -msgstr "specificeraren %<this%> i en mallparameterdeklaration" +msgstr "specificeraren %<this%> i en parameter till ett requires-uttryck" #: cp/parser.cc:26519 #, gcc-internal-format @@ -63812,10 +63778,9 @@ msgid "invalid class name in declaration of %qD" msgstr "ogiltigt klassnamn i deklaration av %qD" #: cp/parser.cc:28249 -#, fuzzy, gcc-internal-format -#| msgid "defining explicit specialization %qD in friend declaration" +#, gcc-internal-format msgid "declaration of partial specialization in unbraced export-declaration" -msgstr "definierar explicit specialisering %qD i vändeklaration" +msgstr "deklaration av en partiell specialisering i exportdeklaration utan klamrar" #: cp/parser.cc:28275 #, gcc-internal-format @@ -63871,10 +63836,9 @@ msgid "in C++03 a class-key must be used when declaring a friend" msgstr "i C++03 mÃ¥ste en klassnyckel användas när en vän deklareras" #: cp/parser.cc:28837 -#, fuzzy, gcc-internal-format -#| msgid "name-independent declarations only available with %<-std=c++2c%> or %<-std=gnu++2c%>" +#, gcc-internal-format msgid "variadic friends or friend type declarations with multiple types only available with %<-std=c++2c%> or %<-std=gnu++2c%>" -msgstr "namnoberoende deklarationer är endast tillgängliga med %<-std=c++2c%> eller %<-std=gnu++2c%>" +msgstr "deklarationer av variadiska vänner väntyp med flera typer är endast tillgängligt med %<-std=c++2c%> eller %<-std=gnu++2c%>" #: cp/parser.cc:28878 #, gcc-internal-format @@ -63922,10 +63886,9 @@ msgid "expected %<;%> at end of member declaration" msgstr "%<;%> förväntades vid slutet av medlemsdeklaration" #: cp/parser.cc:29407 -#, fuzzy, gcc-internal-format -#| msgid "defaulted %qD only available with %<-std=c++20%> or %<-std=gnu++20%>" +#, gcc-internal-format msgid "%<delete%> reason only available with %<-std=c++2c%> or %<-std=gnu++2c%>" -msgstr "standarddefinierad %qD är endast tillgänglig med %<-std=c++20%> eller %<-std=gnu++20%>" +msgstr "orsaken till %<delete%> är endast tillgänglig med %<-std=c++2c%> eller %<-std=gnu++2c%>" #: cp/parser.cc:29430 #, gcc-internal-format @@ -63938,10 +63901,9 @@ msgid "a brace-enclosed initializer is not allowed here" msgstr "en klammeromsluten initierare är inte tillÃ¥ten här" #: cp/parser.cc:29596 -#, fuzzy, gcc-internal-format -#| msgid "method attributes must be specified at the end" +#, gcc-internal-format msgid "attributes on base specifiers are ignored" -msgstr "metodattribut mÃ¥ste anges pÃ¥ slutet" +msgstr "attribut pÃ¥ basspecificerare ignoreras" #: cp/parser.cc:29611 #, gcc-internal-format @@ -63994,16 +63956,14 @@ msgid "types may not be defined in exception-declarations" msgstr "typer fÃ¥r inte definieras i undantagsdeklarationer" #: cp/parser.cc:30200 -#, fuzzy, gcc-internal-format -#| msgid "%<inline%> in empty declaration" +#, gcc-internal-format msgid "%<alignas%> on exception declaration" -msgstr "%<inline%> i tom deklaration" +msgstr "%<alignas%> pÃ¥ en undantagsdeklaration" #: cp/parser.cc:30279 -#, fuzzy, gcc-internal-format -#| msgid "%qD cannot have default arguments" +#, gcc-internal-format msgid "%<co_yield%> cannot be used in default arguments" -msgstr "%qD kan inte ha standardargument" +msgstr "%<co_yield%> kan inte användas i standardargument" #: cp/parser.cc:30747 #, gcc-internal-format @@ -64572,16 +64532,14 @@ msgid "%<#pragma omp declare %s%> followed by %<#pragma omp declare %s%>" msgstr "%<#pragma omp declare %s%> följt av %<#pragma omp declare %s%>" #: cp/parser.cc:50289 -#, fuzzy, gcc-internal-format -#| msgid "%<#pragma omp declare %s%> must be followed by function declaration or definition" +#, gcc-internal-format msgid "%<#pragma omp dispatch%> must be followed by a direct function call with optional assignment" -msgstr "%<#pragma omp declare %s%> mÃ¥ste följas av en funktionsdeklaration eller -definition" +msgstr "%<#pragma omp dispatch%> mÃ¥ste följas av ett direkt funktionsanrop med en möjlig tilldelning" #: cp/parser.cc:50516 -#, fuzzy, gcc-internal-format -#| msgid "%qD is not a pointer variable" +#, gcc-internal-format msgid "%qD is not a C pointer" -msgstr "%qD är inte en pekarvariabel" +msgstr "%qD är inte en C-pekare" #: cp/parser.cc:50642 #, gcc-internal-format @@ -64644,10 +64602,9 @@ msgid "%qD does not refer to a namespace scope function" msgstr "%qD refererar inte till en funktion med namnrymdsräckvidd" #: cp/parser.cc:52924 cp/parser.cc:53459 -#, fuzzy, gcc-internal-format -#| msgid "compound-statement in %<constexpr%> function" +#, gcc-internal-format msgid "OpenMP directives may not appear in %<constexpr%> functions" -msgstr "sammansatt sats i en %<constexpr%>-funktion" +msgstr "OpenMP-direktiv fÃ¥r inte förekomma i %<constexpr%>-funktioner" #. cancel-and-throw is unimplemented. #: cp/parser.cc:53135 @@ -64859,16 +64816,12 @@ msgid "explicit specialization %q#D may be missing attributes" msgstr "explicit specialisering %q#D kan sakna attribut" #: cp/pt.cc:2802 -#, fuzzy -#| msgid "missing primary template attributes %s" msgid "missing primary template attributes %e" -msgstr "primära mallattribut %s saknas" +msgstr "primära mallattribut %e saknas" #: cp/pt.cc:2803 -#, fuzzy -#| msgid "missing primary template attribute %s" msgid "missing primary template attribute %e" -msgstr "primärt mallattribut %s saknas" +msgstr "primärt mallattribut %e saknas" #: cp/pt.cc:2896 cp/pt.cc:2956 #, gcc-internal-format @@ -65618,16 +65571,14 @@ msgid "property must be constant integer expression" msgstr "egenskapen mÃ¥ste vara ett konstant heltalsuttryck" #: cp/pt.cc:12466 -#, fuzzy, gcc-internal-format -#| msgid "explicit instantiation of non-class template %qD" +#, gcc-internal-format msgid "instantiating erroneous template" -msgstr "explicit instansieringar av mallen %q#D som inte är en klass" +msgstr "instansiering av felaktig mall" #: cp/pt.cc:12467 -#, fuzzy, gcc-internal-format -#| msgid "first specified here" +#, gcc-internal-format msgid "first error appeared here" -msgstr "först specificerad här" +msgstr "först felet uppstod här" #: cp/pt.cc:12818 #, gcc-internal-format @@ -65655,10 +65606,9 @@ msgid "mismatched argument pack lengths while expanding %qE" msgstr "argumentpaketlängder stämmer inte överens vid expansion av %qE" #: cp/pt.cc:14083 -#, fuzzy, gcc-internal-format -#| msgid "%qD is instantiated for an empty pack" +#, gcc-internal-format msgid "cannot index an empty pack" -msgstr "%qD instansieras för ett tomt paket" +msgstr "det gÃ¥r inte att indexera ett tomt paket" #: cp/pt.cc:14534 #, gcc-internal-format @@ -65759,10 +65709,9 @@ msgid "creating array of %qT" msgstr "skapar vektor av %qT" #: cp/pt.cc:17072 -#, fuzzy, gcc-internal-format -#| msgid "array %q+D assumed to have one element" +#, gcc-internal-format msgid "%qD expanded to more than one element" -msgstr "vektor %q+D antas ha ett element" +msgstr "%qD expanderde till mer än ett element" #: cp/pt.cc:17079 #, gcc-internal-format @@ -65984,10 +65933,9 @@ msgid "exception specification of %qD depends on itself" msgstr "explicit specifikation av %qD beror pÃ¥ sig själv" #: cp/pt.cc:27487 -#, fuzzy, gcc-internal-format -#| msgid "virt-specifiers in %qs not allowed outside a class definition" +#, gcc-internal-format msgid "exception specification of %qD is not available until end of class definition" -msgstr "virt-specificerare i %qs är inte tillÃ¥tet utanför en klassdefinition" +msgstr "undantagspecifikationen för %qD är inte tillgänglig förrän slutet av klassdefinitionen" #. [temp.explicit] #. @@ -66453,10 +66401,9 @@ msgid "%<auto{x}%> cannot be constrained" msgstr "%<auto{x}%> kan inte begränsas" #: cp/semantics.cc:3838 -#, fuzzy, gcc-internal-format -#| msgid "%<auto{x}%> only available with %<-std=c++2b%> or %<-std=gnu++2b%>" +#, gcc-internal-format msgid "%<auto{x}%> only available with %<-std=c++23%> or %<-std=gnu++23%>" -msgstr "%<auto{x}%> är endast tillgängligt med %<-std=c++2b%> eller %<-std=gnu++2b%>" +msgstr "%<auto{x}%> är endast tillgängligt med %<-std=c++23%> eller %<-std=gnu++23%>" #: cp/semantics.cc:4030 #, gcc-internal-format @@ -66559,22 +66506,19 @@ msgid "%qT is not an enumeration type" msgstr "%qT är inte ett uppräkningstyp" #: cp/semantics.cc:5094 -#, fuzzy, gcc-internal-format -#| msgid "%<__type_pack_element%> index is not an integral constant" +#, gcc-internal-format msgid "pack index is not an integral constant" -msgstr "indexet till %<__type_pack_element%> är inte en heltalskonstant" +msgstr "paketindexet är inte en heltalskonstant" #: cp/semantics.cc:5100 -#, fuzzy, gcc-internal-format -#| msgid "%<__type_pack_element%> index is negative" +#, gcc-internal-format msgid "pack index is negative" -msgstr "indexet till %<__type_pack_element%> är negativt" +msgstr "paketindexet är negativt" #: cp/semantics.cc:5106 -#, fuzzy, gcc-internal-format -#| msgid "%<__type_pack_element%> index is out of range" +#, gcc-internal-format msgid "pack index is out of range" -msgstr "indexet till %<__type_pack_element%> är utanför intervallet" +msgstr "paketindexet är utanför intervallet" #. Parameter packs can only be used in templates #: cp/semantics.cc:5243 @@ -66633,10 +66577,9 @@ msgid "user defined reduction with constructor initializer for base class %qT" msgstr "användardefinierad reduktion med konstruerarinitierare för basklassen %qT" #: cp/semantics.cc:7505 -#, fuzzy, gcc-internal-format -#| msgid "property must be a constant integer expression at %C" +#, gcc-internal-format msgid "expected string literal or constant integer expression instead of %qE" -msgstr "egenskapen mÃ¥ste vara ett konstant heltalsuttryck vid %C" +msgstr "en strängliteral eller ett konstant heltalsuttryck förväntades istället för %qE" #: cp/semantics.cc:7695 #, gcc-internal-format @@ -66885,40 +66828,34 @@ msgid "%<#pragma omp atomic update%> uses two different expressions for memory" msgstr "%<#pragma omp atomic update%> använder tvÃ¥ olika uttryck för minne" #: cp/semantics.cc:12248 -#, fuzzy, gcc-internal-format -#| msgid "%<static_assert%> message must be a string literal or object with %<size%> and %<data%> members" +#, gcc-internal-format msgid "constexpr string must be a string literal or object with %<size%> and %<data%> members" -msgstr "meddelandet i %<static_assert%> mÃ¥ste vara en strängliteral eller ett objekt med medlemmarna %<size%> och %<data%>" +msgstr "constexpr-strängen mÃ¥ste vara en strängliteral eller ett objekt med medlemmarna %<size%> och %<data%>" #: cp/semantics.cc:12264 -#, fuzzy, gcc-internal-format -#| msgid "%<static_assert%> message %<size()%> must be implicitly convertible to %<std::size_t%>" +#, gcc-internal-format msgid "constexpr string %<size()%> must be implicitly convertible to %<std::size_t%>" -msgstr "meddelandet %<size()%> till %<static_assert%> mÃ¥ste vara implicit konverterbart till %<std::size_t%>" +msgstr "constexpr-strängen %<size()%> mÃ¥ste vara implicit konverterbar till %<std::size_t%>" #: cp/semantics.cc:12273 -#, fuzzy, gcc-internal-format -#| msgid "%<static_assert%> message %<data()%> must be implicitly convertible to %<const char*%>" +#, gcc-internal-format msgid "constexpr string %<data()%> must be implicitly convertible to %<const char*%>" -msgstr "meddelandet %<data()%> till %<static_assert%> mÃ¥ste vara implicit konverterbart till %<const char*%>" +msgstr "constexpr-strängen %<data()%> mÃ¥ste vara implicit konverterbart till %<const char*%>" #: cp/semantics.cc:12311 -#, fuzzy, gcc-internal-format -#| msgid "%<static_assert%> message %<size()%> must be a constant expression" +#, gcc-internal-format msgid "constexpr string %<size()%> must be a constant expression" -msgstr "meddelandet %<size()%> till %<static_assert%> mÃ¥ste vara ett konstant uttryck" +msgstr "constexpr-strängen %<size()%> mÃ¥ste vara ett konstant uttryck" #: cp/semantics.cc:12319 -#, fuzzy, gcc-internal-format -#| msgid "%<static_assert%> message %<size()%> %qE too large" +#, gcc-internal-format msgid "constexpr string message %<size()%> %qE too large" -msgstr "meddelandet %<size()%> till %<static_assert%> %qE är för stort" +msgstr "constexpr-strängmeddelandet %<size()%> %qE är för stort" #: cp/semantics.cc:12346 -#, fuzzy, gcc-internal-format -#| msgid "%<static_assert%> message %<data()[%d]%> must be a constant expression" +#, gcc-internal-format msgid "constexpr string %<data()[%d]%> must be a constant expression" -msgstr "meddelandet %<data()[%d]%> till %<static_assert%> mÃ¥ste vara ett konstant uttryck" +msgstr "constexpr-strängen %<data()[%d]%> mÃ¥ste vara ett konstant uttryck" #: cp/semantics.cc:12372 #, fuzzy, gcc-internal-format @@ -70327,12 +70264,12 @@ msgstr "stat=-argumentet vid %L mÃ¥ste vara en heltalsvariabel av kind=4" #: fortran/check.cc:5174 #, gcc-internal-format, gfc-internal-format msgid "The MASK argument at %L, if present, must be a logical array with the same rank as ARRAY" -msgstr "" +msgstr "Argumentet MASK vid %L, om det finns, mÃ¥ste vara en logisk vektor med samma ordning som ARRAY" #: fortran/check.cc:5186 #, gcc-internal-format, gfc-internal-format msgid "MASK present at %L without IDENTITY" -msgstr "" +msgstr "MASK finns vid %L utan IDENTITY" #: fortran/check.cc:5190 #, fuzzy, gcc-internal-format, gfc-internal-format @@ -70343,7 +70280,7 @@ msgstr "Dim-argumentet vid %L mÃ¥ste vara skalärt" #: fortran/check.cc:5198 #, gcc-internal-format, gfc-internal-format msgid "The IDENTITY argument at %L, if present, must be a scalar with the same type as ARRAY" -msgstr "" +msgstr "Argumentet IDENTITY vid %L, om det finns, mÃ¥ste vara en skalär med samma ordning som ARRRAY" #: fortran/check.cc:5289 #, gcc-internal-format @@ -81721,7 +81658,7 @@ msgstr "Allokering %s av ABSTRACT bastyp vid %L behöver en typspecifikation ell #: fortran/resolve.cc:9000 #, gcc-internal-format msgid "The type parameter in ALLOCATE statement with type-spec shall be an asterisk as allocate object %qs at %L is a dummy argument with assumed type parameter" -msgstr "" +msgstr "Typparametern i satsen ALLOCATE med typspecifikationen skall vara en asterisk eftersom allokeringsobjektet %qs vid %L är ett attrappargumentparameter med antagen typ" #: fortran/resolve.cc:9020 #, gcc-internal-format, gfc-internal-format @@ -86476,11 +86413,6 @@ msgstr "försöker du göra sönder %s? hur vÃ¥gar du?" #~ msgid "%<init%> clause with modifier other than %<prefer_type%>, %<target%> or %<targetsync%>" #~ msgstr "en klausul %<init%> med en annan modifierare än %<prefer_type%>, %<target%> eller %<targetsync%>" -#, fuzzy, gcc-internal-format, gfc-internal-format -#~| msgid "Interface mismatch in dummy procedure %qs at %L: %s" -#~ msgid "Interface mismatch in dummy procedure at %L conflichts with %L: %s" -#~ msgstr "Gränssnitt stämmer inte överens i attrapprocedur %qs vid %L: %s" - #, c-format #~ msgid "bad I/O address 0x" #~ msgstr "felaktig I/O-adress 0x" diff --git a/gcc/profile-count.cc b/gcc/profile-count.cc index 8b9d8e1..374f06f 100644 --- a/gcc/profile-count.cc +++ b/gcc/profile-count.cc @@ -519,3 +519,26 @@ profile_probability::pow (int n) const } return ret; } +profile_count +profile_count::operator* (const sreal &num) const +{ + if (m_val == 0) + return *this; + if (!initialized_p ()) + return uninitialized (); + sreal scaled = num * m_val; + gcc_checking_assert (scaled >= 0); + profile_count ret; + if (m_val > max_count) + ret.m_val = max_count; + else + ret.m_val = scaled.to_nearest_int (); + ret.m_quality = MIN (m_quality, ADJUSTED); + return ret; +} + +profile_count +profile_count::operator*= (const sreal &num) +{ + return *this * num; +} diff --git a/gcc/profile-count.h b/gcc/profile-count.h index 015aee9..0e79fd2 100644 --- a/gcc/profile-count.h +++ b/gcc/profile-count.h @@ -1061,6 +1061,9 @@ public: return *this; } + profile_count operator* (const sreal &num) const; + profile_count operator*= (const sreal &num); + profile_count operator/ (int64_t den) const { return apply_scale (1, den); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3b3c0c1..af49263 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,172 @@ +2025-04-22 Jan Hubicka <hubicka@ucw.cz> + + * gcc.target/i386/pr89618-2.c: XFAIL. + +2025-04-22 Jakub Jelinek <jakub@redhat.com> + + PR target/119327 + * g++.dg/opt/pr119327.C: New test. + +2025-04-22 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/pragma_cpp_predefs_4.c: Test + __ARM_FEATURE_FAMINMAX. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + * gcc.target/aarch64/_Float16_cmp_1.c: New test. + * gcc.target/aarch64/_Float16_cmp_2.c: New (negative) test. + +2025-04-22 Spencer Abson <spencer.abson@arm.com> + + PR target/117013 + * g++.target/aarch64/spaceship_1.C: New test. + * g++.target/aarch64/spaceship_2.C: New test. + * g++.target/aarch64/spaceship_3.C: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray/coindexed_3.f08: Add minimal test for + get_team(). + * gfortran.dg/team_change_2.f90: Add test for change team with + label and exiting out of it. + * gfortran.dg/team_end_2.f90: Check parsing to labeled team + blocks is correct now. + * gfortran.dg/team_end_3.f90: Check that end_team call is + generated for labeled end_teams, too. + * gfortran.dg/coarray/coindexed_5.f90: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + * gfortran.dg/coarray_49.f90: Adapt to changed error message. + * gfortran.dg/coarray_collectives_12.f90: Adapt to changed + function signature of num_images. + * gfortran.dg/coarray_collectives_16.f90: Same. + * gfortran.dg/coarray_lib_this_image_1.f90: Same. + * gfortran.dg/coarray_lib_this_image_2.f90: Same. + * gfortran.dg/coarray_this_image_1.f90: Adapt tests for + num_images. + * gfortran.dg/coarray_this_image_2.f90: Same. + * gfortran.dg/coarray_this_image_3.f90: Same. + * gfortran.dg/num_images_1.f90: Check that deprecated syntax is + no longer supported. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + * gfortran.dg/coarray_10.f90: Update error messages. + * gfortran.dg/coarray_lib_this_image_1.f90: Same. + * gfortran.dg/coarray_lib_this_image_2.f90: Same. + * gfortran.dg/coarray_this_image_1.f90: Add more tests and + remove incorrect ones. + * gfortran.dg/coarray_this_image_2.f90: Test more features. + * gfortran.dg/coarray_this_image_3.f90: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/88154 + PR fortran/88960 + PR fortran/97210 + PR fortran/103001 + * gfortran.dg/coarray/image_status_1.f08: Correct check for + team_type. + * gfortran.dg/pr102458.f90: Adapt to multiple errors. + * gfortran.dg/coarray/get_team_1.f90: New test. + * gfortran.dg/team_get_1.f90: New test. + * gfortran.dg/team_number_1.f90: Correct Fortran syntax. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87326 + PR fortran/87556 + PR fortran/88254 + PR fortran/103796 + * gfortran.dg/team_change_2.f90: New test. + * gfortran.dg/team_change_3.f90: New test. + * gfortran.dg/team_end_2.f90: New test. + * gfortran.dg/team_end_3.f90: New test. + * gfortran.dg/team_form_2.f90: New test. + * gfortran.dg/team_form_3.f90: New test. + * gfortran.dg/team_sync_2.f90: New test. + +2025-04-22 Andre Vehreschild <vehre@gcc.gnu.org> + + PR fortran/87939 + * gfortran.dg/coarray_critical_2.f90: New test. + * gfortran.dg/coarray_critical_3.f90: New test. + * gfortran.dg/team_sync_1.f90: New test. + * gfortran.dg/move_alloc_11.f90: New test. + +2025-04-22 Yixuan Chen <chenyixuan@iscas.ac.cn> + + * gcc.target/riscv/mcpu-xt-c908.c: test -mcpu=xt-c908. + * gcc.target/riscv/mcpu-xt-c910.c: test -mcpu=xt-c910. + * gcc.target/riscv/mcpu-xt-c920v2.c: test -mcpu=xt-c920v2. + * gcc.target/riscv/mcpu-xt-c908v.c: test -mcpu=xt-c908v. + * gcc.target/riscv/mcpu-xt-c910v2.c: test -mcpu=xt-c910v2. + * gcc.target/riscv/mcpu-xt-c920.c: test -mcpu=xt-c920. + +2025-04-22 Christophe Lyon <christophe.lyon@linaro.org> + + * g++.dg/gcov/gcov.exp: Handle GCOV_UNDER_TEST. + * gcc.misc-tests/gcov.exp: Likewise. + * gdc.dg/gcov.exp: Likewise. + * gnat.dg/gcov/gcov.exp: Likewise. + +2025-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * gcc.misc-tests/gcov-31.c (run_pending_traps): Use sigsetjmp + instead of __sigsetjmp. + +2025-04-22 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/119863 + * g++.dg/modules/tpl-friend-18_a.C: New test. + * g++.dg/modules/tpl-friend-18_b.C: New test. + * g++.dg/modules/tpl-friend-18_c.C: New test. + +2025-04-22 Andrew Pinski <quic_apinski@quicinc.com> + + * g++.dg/eh/pr119507.C: Skip for arm eabi. + +2025-04-22 Alexandre Oliva <oliva@adacore.com> + + * gcc.target/powerpc/power11-3.c: Require ifunc support. + +2025-04-21 Jason Merrill <jason@redhat.com> + + PR c++/118775 + * g++.dg/cpp2a/constexpr-new24.C: Adjust diagnostic. + +2025-04-21 Andrew Bennett <andrew.bennett@imgtec.com> + + * gcc.dg/memcpy-4.c: Remove mips specific code. + * gcc.target/mips/memcpy-2.c: New test. + +2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * gcc.target/mips/clear-cache-1.c: Also allow jrc. + +2025-04-21 Matthew Fortune <matthew.fortune@imgtec.com> + + * gcc.dg/tree-ssa/ssa-dom-cse-2.c: Do not check output for + MIPS lp64 abi. + +2025-04-21 Andrew Pinski <quic_apinski@quicinc.com> + + PR middle-end/119507 + * g++.dg/eh/pr119507.C: New test. + +2025-04-21 hongtao.liu <hongtao.liu@intel.com> + + * gcc.target/i386/recip-vec-divf-fma.c: New test. + +2025-04-20 H.J. Lu <hjl.tools@gmail.com> + + PR target/117863 + * gcc.dg/rtl/i386/vector_eq-2.c: New test. + * gcc.dg/rtl/i386/vector_eq-3.c: Likewise. + 2025-04-19 Thomas Schwinge <tschwinge@baylibre.com> PR testsuite/119508 diff --git a/gcc/testsuite/g++.dg/cpp2a/constexpr-new24.C b/gcc/testsuite/g++.dg/cpp2a/constexpr-new24.C index ee62f18..17c9f54 100644 --- a/gcc/testsuite/g++.dg/cpp2a/constexpr-new24.C +++ b/gcc/testsuite/g++.dg/cpp2a/constexpr-new24.C @@ -6,14 +6,14 @@ int a; constexpr char * f1 () { - constexpr auto p = new char[(long int) &a]; // { dg-error "size not constant" } + constexpr auto p = new char[(long int) &a]; // { dg-error "conversion from pointer" } return p; } constexpr char * f2 () { - auto p = new char[(long int) &a]; // { dg-error "size not constant" } + auto p = new char[(long int) &a]; // { dg-error "conversion from pointer" } return p; } diff --git a/gcc/testsuite/g++.dg/eh/pr119507.C b/gcc/testsuite/g++.dg/eh/pr119507.C new file mode 100644 index 0000000..168779b --- /dev/null +++ b/gcc/testsuite/g++.dg/eh/pr119507.C @@ -0,0 +1,21 @@ +// { dg-do compile { target comdat_group } } +// ARM EABI has its own exception handling data handling and does not use gcc_except_table +// { dg-skip-if "!TARGET_EXCEPTION_DATA" { arm_eabi } } +// Solaris/SPARC as uses a widely different COMDAT section syntax. +// { dg-skip-if "Solaris/SPARC as syntax" { sparc*-*-solaris2* && { ! gas } } } +// Force off function sections +// Force on exceptions +// { dg-options "-fno-function-sections -fexceptions" } +// PR middle-end/119507 + + +inline int comdat() { try { throw 1; } catch (int) { return 1; } return 0; } +int another_func_with_exception() { try { throw 1; } catch (int) { return 1; } return 0; } +inline int comdat1() { try { throw 1; } catch (int) { return 1; } return 0; } +int foo() { return comdat() + comdat1(); } + +// Make sure the gcc puts the exception table for both comdat and comdat1 in their own section +// { dg-final { scan-assembler-times ".section\[\t \]\[^\n\]*.gcc_except_table._Z6comdatv" 1 } } +// { dg-final { scan-assembler-times ".section\[\t \]\[^\n\]*.gcc_except_table._Z7comdat1v" 1 } } +// There should be 3 exception tables, +// { dg-final { scan-assembler-times ".section\[\t \]\[^\n\]*.gcc_except_table" 3 } } diff --git a/gcc/testsuite/g++.dg/gcov/gcov.exp b/gcc/testsuite/g++.dg/gcov/gcov.exp index 50f60c4..04c7c95 100644 --- a/gcc/testsuite/g++.dg/gcov/gcov.exp +++ b/gcc/testsuite/g++.dg/gcov/gcov.exp @@ -21,12 +21,19 @@ load_lib g++-dg.exp load_lib gcov.exp global GXX_UNDER_TEST +global GCOV_UNDER_TEST -# Find gcov in the same directory as $GXX_UNDER_TEST. -if { ![is_remote host] && [string match "*/*" [lindex $GXX_UNDER_TEST 0]] } { - set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] +# Find gcov in the same directory as $GXX_UNDER_TEST, unless +# GCOV_UNDER_TEST is defined. + +if ![info exists GCOV_UNDER_TEST] { + if { ![is_remote host] && [string match "*/*" [lindex $GXX_UNDER_TEST 0]] } { + set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] + } else { + set GCOV [gcc-transform-out-of-tree gcov] + } } else { - set GCOV [gcc-transform-out-of-tree gcov] + set GCOV $GCOV_UNDER_TEST } # Initialize harness. diff --git a/gcc/testsuite/g++.dg/modules/tpl-friend-18_a.C b/gcc/testsuite/g++.dg/modules/tpl-friend-18_a.C new file mode 100644 index 0000000..333c976 --- /dev/null +++ b/gcc/testsuite/g++.dg/modules/tpl-friend-18_a.C @@ -0,0 +1,25 @@ +// PR c++/119863 +// { dg-additional-options "-fmodules" } +// { dg-module-cmi A } + +export module A; + +template<typename> +class T; + +template<typename> +class U +{ + template<typename> + friend class T; +}; + +template<typename V> +class T +{ + U<V> x = {}; +}; + +export +template<typename V> +T<V> f(V) { return {}; } diff --git a/gcc/testsuite/g++.dg/modules/tpl-friend-18_b.C b/gcc/testsuite/g++.dg/modules/tpl-friend-18_b.C new file mode 100644 index 0000000..2e537ed --- /dev/null +++ b/gcc/testsuite/g++.dg/modules/tpl-friend-18_b.C @@ -0,0 +1,9 @@ +// PR c++/119863 +// { dg-additional-options "-fmodules" } +// { dg-module-cmi B } + +export module B; + +// this should not be considered conflicting +template <typename> +class T; diff --git a/gcc/testsuite/g++.dg/modules/tpl-friend-18_c.C b/gcc/testsuite/g++.dg/modules/tpl-friend-18_c.C new file mode 100644 index 0000000..6c8d85b --- /dev/null +++ b/gcc/testsuite/g++.dg/modules/tpl-friend-18_c.C @@ -0,0 +1,10 @@ +// PR c++/119863 +// { dg-additional-options "-fmodules" } + +import A; +import B; + +int main() +{ + auto const x = f(1); +} diff --git a/gcc/testsuite/g++.dg/no-stack-protector-attr-3.C b/gcc/testsuite/g++.dg/no-stack-protector-attr-3.C index 147c2b7..b858d70 100644 --- a/gcc/testsuite/g++.dg/no-stack-protector-attr-3.C +++ b/gcc/testsuite/g++.dg/no-stack-protector-attr-3.C @@ -6,6 +6,7 @@ /* { dg-additional-options "-fno-PIE" { target ia32 } } */ /* { dg-do compile { target { ! hppa*-*-* } } } */ +/* { dg-require-effective-target fstack_protector } */ int __attribute__((no_stack_protector)) foo() { diff --git a/gcc/testsuite/g++.dg/opt/pr119327.C b/gcc/testsuite/g++.dg/opt/pr119327.C new file mode 100644 index 0000000..598ae1c --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/pr119327.C @@ -0,0 +1,16 @@ +// PR target/119327 +// { dg-do compile { target c++11 } } +// { dg-options "-Os" } + +#pragma GCC optimize "fp-contract=off" + +template <class T> +void +foo (T f) +{ + f (); +} + +struct S { + S () { [] {}; foo ([] __attribute__((always_inline)) {}); } +} s; diff --git a/gcc/testsuite/g++.dg/torture/pr119610.C b/gcc/testsuite/g++.dg/torture/pr119610.C new file mode 100644 index 0000000..9998026 --- /dev/null +++ b/gcc/testsuite/g++.dg/torture/pr119610.C @@ -0,0 +1,18 @@ +// { dg-do run } +// { dg-additional-options "-fstack-protector-strong" { target fstack_protector } } +// { dg-additional-options "-fstack-clash-protection" { target supports_stack_clash_protection } } + +int *ptr; +void foo() { + int c[1024*128]; + ptr = c; + throw 1; +} +int main() +{ + try { + foo(); + } catch(int x) { + return 0; + } +} diff --git a/gcc/testsuite/g++.target/aarch64/spaceship_1.C b/gcc/testsuite/g++.target/aarch64/spaceship_1.C new file mode 100644 index 0000000..e6daf62 --- /dev/null +++ b/gcc/testsuite/g++.target/aarch64/spaceship_1.C @@ -0,0 +1,192 @@ +// PR117013 +/* { dg-do run } */ +/* { dg-options "-O2 -std=c++20 -save-temps -fno-schedule-insns2" } */ +/* { dg-final { check-function-bodies "**" "" ""} } */ + +#include <compare> +#include <stdint.h> + +/* Some implementation-defined value (other than 2) to represent + partial_ordering::unordered (that for libc++ in this case). */ +#define IMP_UN -127 + +#define SPACESHIP_FN(TYPE) \ + [[gnu::noipa]] \ + auto ss_##TYPE (TYPE a, TYPE b) \ + { return a <=> b; } \ + +#define SPACESHIP_FN_NN(TYPE) \ + [[gnu::noipa, gnu::optimize ("-ffinite-math-only")]] \ + auto ss_##TYPE##_no_nans (TYPE a, TYPE b) \ + { return a <=> b; } \ + +/* <=> implementation for floating-point operands. */ +#define SPACESHIP_FP_IDIOM(TYPE) \ + [[gnu::noipa]] \ + int ss_##TYPE##_idiom (TYPE a, TYPE b) \ + { return ((a) == (b) ? 0 : (a) < (b) ? -1 : (a) > (b) ? 1 : IMP_UN); } \ + +#define RUN_TEST(TYPE, ARGA, ARGB, EXPECT, SUFF) \ + if (ss_##TYPE##SUFF ((ARGA), (ARGB)) != (EXPECT)) \ + __builtin_abort(); \ + +/* +** _Z8ss_floatff: +** fcmpe s0, s1 +** csinv (w[0-9]+), wzr, wzr, pl +** cset (w[0-9]+), vs +** csinc w0, \1, \2, ls +** ret +*/ +SPACESHIP_FN(float); + +/* +** _Z16ss_float_no_nansff: +** fcmpe s0, s1 +** csinv (w[0-9]+), wzr, wzr, pl +** csinc w0, \1, wzr, ls +** ret +*/ +SPACESHIP_FN_NN(float); + +/* +** _Z9ss_doubledd: +** fcmpe d0, d1 +** csinv (w[0-9]+), wzr, wzr, pl +** cset (w[0-9]+), vs +** csinc w0, \1, \2, ls +** ret +*/ +SPACESHIP_FN(double); + +/* +** _Z17ss_double_no_nansdd: +** fcmpe d0, d1 +** csinv (w[0-9]+), wzr, wzr, pl +** csinc w0, \1, wzr, ls +** ret +*/ +SPACESHIP_FN_NN(double); + +/* +** _Z14ss_float_idiomff: +** fcmpe s0, s1 +** csinv (w[0-9]+), wzr, wzr, pl +** mov (w[0-9]+), -128 +** csel (w[0-9]+), \2, wzr, vs +** csinc w0, \1, \3, ls +** ret +*/ +SPACESHIP_FP_IDIOM(float); + +/* +** _Z15ss_double_idiomdd: +** fcmpe d0, d1 +** csinv (w[0-9]+), wzr, wzr, pl +** mov (w[0-9]+), -128 +** csel (w[0-9]+), \2, wzr, vs +** csinc w0, \1, \3, ls +** ret +*/ +SPACESHIP_FP_IDIOM(double); + +/* +** _Z10ss_int32_tii: +** cmp w0, w1 +** cset (w[0-9]+), gt +** csinv w0, \1, wzr, ge +** ret +*/ +SPACESHIP_FN(int32_t); + +/* +** _Z10ss_int64_tll: +** cmp x0, x1 +** cset (w[0-9]+), gt +** csinv w0, \1, wzr, ge +** ret +*/ +SPACESHIP_FN(int64_t); + +/* +** _Z11ss_uint32_tjj: +** cmp w0, w1 +** cset (w[0-9]+), hi +** csinv w0, \1, wzr, cs +** ret +*/ +SPACESHIP_FN(uint32_t); + +/* +** _Z11ss_uint64_tmm: +** cmp x0, x1 +** cset (w[0-9]+), hi +** csinv w0, \1, wzr, cs +** ret +*/ +SPACESHIP_FN(uint64_t); + + +int +main() +{ + /* Single precision floating point. */ + RUN_TEST (float, -1.0f, 1.0f, std::partial_ordering::less,); + RUN_TEST (float, -1.0f, 1.0f, -1, _idiom); + + RUN_TEST (float, 1.0f, -1.0f, std::partial_ordering::greater,); + RUN_TEST (float, 1.0f, -1.0f, 1, _idiom); + + RUN_TEST (float, -1.0f, -1.0f, std::partial_ordering::equivalent,); + RUN_TEST (float, -1.0f, -1.0f, 0, _idiom); + + RUN_TEST (float, __builtin_nanf(""), 1.0f, std::partial_ordering::unordered,); + RUN_TEST (float, __builtin_nanf(""), 1.0f, IMP_UN, _idiom); + RUN_TEST (float, 1.0f ,__builtin_nanf(""), std::partial_ordering::unordered,); + RUN_TEST (float, 1.0f, __builtin_nanf(""), IMP_UN, _idiom); + + /* No-NaNs. */ + RUN_TEST (float, -1.0f, 1.0f, std::partial_ordering::less, _no_nans); + RUN_TEST (float, 1.0f, -1.0f, std::partial_ordering::greater, _no_nans); + RUN_TEST (float, -1.0f, -1.0f, std::partial_ordering::equivalent, _no_nans); + + /* Double precision floating point. */ + RUN_TEST (double, -1.0f, 1.0f, std::partial_ordering::less,); + RUN_TEST (double, -1.0f, 1.0f, -1, _idiom); + + RUN_TEST (double, 1.0f, -1.0f, std::partial_ordering::greater,); + RUN_TEST (double, 1.0f, -1.0f, 1, _idiom); + + RUN_TEST (double, -1.0f, -1.0f, std::partial_ordering::equivalent,); + RUN_TEST (double, -1.0f, -1.0f, 0, _idiom); + + RUN_TEST (double, __builtin_nanf(""), 1.0f, std::partial_ordering::unordered,); + RUN_TEST (double, __builtin_nanf(""), 1.0f, IMP_UN, _idiom); + RUN_TEST (double, 1.0f, __builtin_nanf(""), std::partial_ordering::unordered,); + RUN_TEST (double, 1.0f, __builtin_nanf(""), IMP_UN, _idiom); + + /* No-NaNs. */ + RUN_TEST (double, -1.0f, 1.0f, std::partial_ordering::less, _no_nans); + RUN_TEST (double, 1.0f, -1.0f, std::partial_ordering::greater, _no_nans); + RUN_TEST (double, -1.0f, -1.0f, std::partial_ordering::equivalent, _no_nans); + + /* Single integer. */ + RUN_TEST (int32_t, -42, 0, std::strong_ordering::less,); + RUN_TEST (int32_t, 0, -42, std::strong_ordering::greater,); + RUN_TEST (int32_t, 42, 42, std::strong_ordering::equal,); + + RUN_TEST (uint32_t, 0, 42, std::strong_ordering::less,); + RUN_TEST (uint32_t, 42, 0, std::strong_ordering::greater,); + RUN_TEST (uint32_t, 42, 42, std::strong_ordering::equal,); + + /* Double integer. */ + RUN_TEST (int64_t, -42, 0, std::strong_ordering::less,); + RUN_TEST (int64_t, 42, 0, std::strong_ordering::greater,); + RUN_TEST (int64_t, 42, 42, std::strong_ordering::equal,); + + RUN_TEST (uint64_t, 0, 42, std::strong_ordering::less,); + RUN_TEST (uint64_t, 42, 0, std::strong_ordering::greater,); + RUN_TEST (uint64_t, 42, 42, std::strong_ordering::equal,); + + return 0; +}
\ No newline at end of file diff --git a/gcc/testsuite/g++.target/aarch64/spaceship_2.C b/gcc/testsuite/g++.target/aarch64/spaceship_2.C new file mode 100644 index 0000000..c1d3900 --- /dev/null +++ b/gcc/testsuite/g++.target/aarch64/spaceship_2.C @@ -0,0 +1,72 @@ +// PR117013 +/* { dg-do run } */ +// { dg-options "-O2 -std=c++20 -save-temps" } + +#include <compare> + +#ifndef fp_type +#define fp_type float +#endif + +#define TEST_SS_IDIOM(ARGA, ARGB, EXPECT) \ + if (spaceship_idiom ((ARGA), (ARGB)) != (EXPECT)) \ + __builtin_abort(); \ + +#define TEST_BR_ON_SS(ARGA, ARGB, EXPECT) \ + if(branch_on_spaceship ((ARGA), (ARGB)) != (EXPECT)) \ + __builtin_abort(); \ + + +#define RUN_TEST(ARGA, ARGB, EXPECT) \ + TEST_SS_IDIOM(ARGA, ARGB, EXPECT) \ + TEST_BR_ON_SS(ARGA, ARGB, EXPECT) \ + +/* Test when .SPACESHIP prompts the back end to implement <=> with + conditional branches (only applies to floating-point operands). */ + +[[gnu::noipa]] auto +equiv() { return std::partial_ordering::equivalent; } +[[gnu::noipa]] auto +less() { return std::partial_ordering::less; } +[[gnu::noipa]] auto +greater() { return std::partial_ordering::greater; } +[[gnu::noipa]] auto +unordered() { return std::partial_ordering::unordered; } + +auto +spaceship_idiom(fp_type a, fp_type b) +{ + if (a == b) + return equiv(); + if (a < b) + return less(); + if (a > b) + return greater(); + return unordered(); +} + +auto +branch_on_spaceship(fp_type a, fp_type b) +{ + auto res = a <=> b; + if (res == 0) + return equiv(); + else if (res < 0) + return less(); + else if (res > 0) + return greater(); + return unordered(); +} + +int +main() +{ + RUN_TEST (-1.0f, 1.0f, std::partial_ordering::less); + RUN_TEST (1.0f, -1.0f, std::partial_ordering::greater); + RUN_TEST (1.0f, 1.0f, std::partial_ordering::equivalent); + RUN_TEST (1.0f, __builtin_nanf(""), std::partial_ordering::unordered); + RUN_TEST (__builtin_nanf(""), 1.0f, std::partial_ordering::unordered); +} + +/* { dg-final { scan-assembler-not "\tfcmp\t" } } */ +/* { dg-final { scan-assembler-times "\tfcmpe\t" 2 } } */
\ No newline at end of file diff --git a/gcc/testsuite/g++.target/aarch64/spaceship_3.C b/gcc/testsuite/g++.target/aarch64/spaceship_3.C new file mode 100644 index 0000000..f58b084 --- /dev/null +++ b/gcc/testsuite/g++.target/aarch64/spaceship_3.C @@ -0,0 +1,9 @@ +// PR117013 +/* { dg-do run } */ +// { dg-options "-O2 -std=c++20 -save-temps" } + +#define fp_type double +#include "spaceship_2.C" + +/* { dg-final { scan-assembler-not "\tfcmp\t" } } */ +/* { dg-final { scan-assembler-times "\tfcmpe\t" 2 } } */
\ No newline at end of file diff --git a/gcc/testsuite/g++.target/aarch64/sve/pr119610-sve.C b/gcc/testsuite/g++.target/aarch64/sve/pr119610-sve.C new file mode 100644 index 0000000..0044e51 --- /dev/null +++ b/gcc/testsuite/g++.target/aarch64/sve/pr119610-sve.C @@ -0,0 +1,20 @@ +// { dg-do run { target aarch64_sve_hw } } +// { dg-additional-options "-fstack-protector-strong" { target fstack_protector } } +// { dg-additional-options "-fstack-clash-protection" { target supports_stack_clash_protection } } + +void *a_ptr, *b_ptr; +void foo() { + __SVInt32_t a; + int b[1024*128]; + a_ptr = &a; + b_ptr = b; + throw 1; +} +int main() +{ + try { + foo(); + } catch(int x) { + return 0; + } +} diff --git a/gcc/testsuite/gcc.dg/completion-2.c b/gcc/testsuite/gcc.dg/completion-2.c index 46c511c..99e6531 100644 --- a/gcc/testsuite/gcc.dg/completion-2.c +++ b/gcc/testsuite/gcc.dg/completion-2.c @@ -5,7 +5,6 @@ -flto-partition=1to1 -flto-partition=balanced -flto-partition=cache --flto-partition=default -flto-partition=max -flto-partition=none -flto-partition=one diff --git a/gcc/testsuite/gcc.dg/ipa/ipa-clone-4.c b/gcc/testsuite/gcc.dg/ipa/ipa-clone-4.c new file mode 100644 index 0000000..bf74e64 --- /dev/null +++ b/gcc/testsuite/gcc.dg/ipa/ipa-clone-4.c @@ -0,0 +1,30 @@ +/* { dg-options "-O3 -fdump-ipa-cp" } */ +__attribute__ ((used)) +int a[1000]; + +__attribute__ ((noinline)) +void +test2(int sz) +{ + for (int i = 0; i < sz; i++) + a[i]++; + asm volatile (""::"m"(a)); +} + +__attribute__ ((noinline)) +void +test1 (int sz) +{ + for (int i = 0; i < 1000; i++) + test2(sz); +} +int main() +{ + test1(1000); + return 0; +} +/* We should clone test1 and test2 for constant 1000. + In the past we did not do this since we did not clone for edges that are not hot + and call main->test1 is not considered hot since it is executed just once. */ +/* { dg-final { scan-ipa-dump-times "Creating a specialized node of test1" 1 "cp"} } */ +/* { dg-final { scan-ipa-dump-times "Creating a specialized node of test2" 1 "cp"} } */ diff --git a/gcc/testsuite/gcc.dg/memcpy-4.c b/gcc/testsuite/gcc.dg/memcpy-4.c index 4c726f0..b17b369 100644 --- a/gcc/testsuite/gcc.dg/memcpy-4.c +++ b/gcc/testsuite/gcc.dg/memcpy-4.c @@ -1,13 +1,8 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -fdump-rtl-expand" } */ +/* { dg-options "-O2" } */ -#ifdef __mips -__attribute__((nomips16)) -#endif void f1 (char *p) { __builtin_memcpy (p, "12345", 5); } - -/* { dg-final { scan-rtl-dump "mem/u.*mem/u" "expand" { target mips*-*-* } } } */ diff --git a/gcc/testsuite/gcc.dg/raw-string-1.c b/gcc/testsuite/gcc.dg/raw-string-1.c new file mode 100644 index 0000000..77d6145 --- /dev/null +++ b/gcc/testsuite/gcc.dg/raw-string-1.c @@ -0,0 +1,25 @@ +/* PR c++/110343 */ +/* { dg-do compile } */ +/* { dg-options "-std=gnu23" } */ + +const void *s0 = R"0123456789abcdefg()0123456789abcdefg" 0; + /* { dg-error "raw string delimiter longer" "longer" { target *-*-* } .-1 } */ + /* { dg-error "stray" "stray" { target *-*-* } .-2 } */ +const void *s1 = R" () " 0; + /* { dg-error "invalid character" "invalid" { target *-*-* } .-1 } */ + /* { dg-error "stray" "stray" { target *-*-* } .-2 } */ +const void *s2 = R" () " 0; + /* { dg-error "invalid character" "invalid" { target *-*-* } .-1 } */ + /* { dg-error "stray" "stray" { target *-*-* } .-2 } */ +const void *s3 = R")())" 0; + /* { dg-error "invalid character" "invalid" { target *-*-* } .-1 } */ + /* { dg-error "stray" "stray" { target *-*-* } .-2 } */ +const char *s4 = R"@()@"; +const char *s5 = R"$()$"; +const char *s6 = R"`()`"; +const void *s7 = R"\u0040()\u0040" 0; + /* { dg-error "invalid character" "invalid" { target *-*-* } .-1 } */ + /* { dg-error "stray" "stray" { target *-*-* } .-2 } */ +const char *s8 = R"`@$$@`@`$()`@$$@`@`$"; + +int main () {} diff --git a/gcc/testsuite/gcc.dg/rtl/i386/vector_eq-2.c b/gcc/testsuite/gcc.dg/rtl/i386/vector_eq-2.c new file mode 100644 index 0000000..871d489 --- /dev/null +++ b/gcc/testsuite/gcc.dg/rtl/i386/vector_eq-2.c @@ -0,0 +1,71 @@ +/* { dg-do compile { target { i?86-*-* x86_64-*-* } } } */ +/* { dg-additional-options "-O2 -march=x86-64-v3" } */ + +typedef int v4si __attribute__((vector_size(16))); +typedef int v8si __attribute__((vector_size(32))); +typedef int v2di __attribute__((vector_size(16))); + +v4si __RTL (startwith ("vregs1")) foo1 (void) +{ +(function "foo1" + (insn-chain + (block 2 + (edge-from entry (flags "FALLTHRU")) + (cnote 1 [bb 2] NOTE_INSN_BASIC_BLOCK) + (cnote 2 NOTE_INSN_FUNCTION_BEG) + (cinsn 3 (set (reg:V4SI <0>) (const_vector:V4SI [(const_int -1) (const_int -1) (const_int -1) (const_int -1)]))) + (cinsn 4 (set (reg:V4SI <1>) (const_vector:V4SI [(const_int -1) (const_int -1) (const_int -1) (const_int -1)]))) + (cinsn 5 (set (reg:V4SI <2>) + (eq:V4SI (reg:V4SI <0>) (reg:V4SI <1>)))) + (cinsn 6 (set (reg:V4SI <3>) (reg:V4SI <2>))) + (cinsn 7 (set (reg:V4SI xmm0) (reg:V4SI <3>))) + (edge-to exit (flags "FALLTHRU")) + ) + ) + (crtl (return_rtx (reg/i:V4SI xmm0))) +) +} + +v8si __RTL (startwith ("vregs1")) foo2 (void) +{ +(function "foo2" + (insn-chain + (block 2 + (edge-from entry (flags "FALLTHRU")) + (cnote 1 [bb 2] NOTE_INSN_BASIC_BLOCK) + (cnote 2 NOTE_INSN_FUNCTION_BEG) + (cinsn 3 (set (reg:V8SI <0>) (const_vector:V8SI [(const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1)]))) + (cinsn 4 (set (reg:V8SI <1>) (const_vector:V8SI [(const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1) (const_int -1)]))) + (cinsn 5 (set (reg:V8SI <2>) + (eq:V8SI (reg:V8SI <0>) (reg:V8SI <1>)))) + (cinsn 6 (set (reg:V8SI <3>) (reg:V8SI <2>))) + (cinsn 7 (set (reg:V8SI xmm0) (reg:V8SI <3>))) + (edge-to exit (flags "FALLTHRU")) + ) + ) + (crtl (return_rtx (reg/i:V8SI xmm0))) +) +} + +v2di __RTL (startwith ("vregs1")) foo3 (void) +{ +(function "foo3" + (insn-chain + (block 2 + (edge-from entry (flags "FALLTHRU")) + (cnote 1 [bb 2] NOTE_INSN_BASIC_BLOCK) + (cnote 2 NOTE_INSN_FUNCTION_BEG) + (cinsn 3 (set (reg:V2DI <0>) (const_vector:V2DI [(const_int -1) (const_int -1)]))) + (cinsn 4 (set (reg:V2DI <1>) (const_vector:V2DI [(const_int -1) (const_int -1)]))) + (cinsn 5 (set (reg:V2DI <2>) + (eq:V2DI (reg:V2DI <0>) (reg:V2DI <1>)))) + (cinsn 6 (set (reg:V2DI <3>) (reg:V2DI <2>))) + (cinsn 7 (set (reg:V2DI xmm0) (reg:V2DI <3>))) + (edge-to exit (flags "FALLTHRU")) + ) + ) + (crtl (return_rtx (reg/i:V2DI xmm0))) +) +} + +/* { dg-final { scan-assembler-times "vpcmpeq" 3 } } */ diff --git a/gcc/testsuite/gcc.dg/rtl/i386/vector_eq-3.c b/gcc/testsuite/gcc.dg/rtl/i386/vector_eq-3.c new file mode 100644 index 0000000..276c4c2 --- /dev/null +++ b/gcc/testsuite/gcc.dg/rtl/i386/vector_eq-3.c @@ -0,0 +1,74 @@ +/* { dg-do compile { target { i?86-*-* x86_64-*-* } } } */ +/* { dg-additional-options "-O2 -march=x86-64-v3" } */ + +typedef int v4si __attribute__((vector_size(16))); +typedef int v8si __attribute__((vector_size(32))); +typedef int v2di __attribute__((vector_size(16))); + +v4si __RTL (startwith ("vregs1")) foo1 (void) +{ +(function "foo1" + (insn-chain + (block 2 + (edge-from entry (flags "FALLTHRU")) + (cnote 1 [bb 2] NOTE_INSN_BASIC_BLOCK) + (cnote 2 NOTE_INSN_FUNCTION_BEG) + (cinsn 3 (set (reg:V4SI <1>) + (mem:V4SI (reg:SI di) [0 ptr S128 A128]))) + (cinsn 4 (set (reg:V4SI <2>) + (eq:V4SI (reg:V4SI <1>) + (mem:V4SI (reg:SI di) [0 ptr S128 A128])))) + (cinsn 5 (set (reg:V4SI <3>) (reg:V4SI <2>))) + (cinsn 6 (set (reg:V4SI xmm0) (reg:V4SI <3>))) + (edge-to exit (flags "FALLTHRU")) + ) + ) + (crtl (return_rtx (reg/i:V4SI xmm0))) +) +} + +v8si __RTL (startwith ("vregs1")) foo2 (void) +{ +(function "foo2" + (insn-chain + (block 2 + (edge-from entry (flags "FALLTHRU")) + (cnote 1 [bb 2] NOTE_INSN_BASIC_BLOCK) + (cnote 2 NOTE_INSN_FUNCTION_BEG) + (cinsn 3 (set (reg:V8SI <1>) + (mem:V8SI (reg:SI di) [0 ptr S256 A256]))) + (cinsn 4 (set (reg:V8SI <2>) + (eq:V8SI (mem:V8SI (reg:SI di) [0 ptr S256 A256]) + (reg:V8SI <1>)))) + (cinsn 5 (set (reg:V8SI <3>) (reg:V8SI <2>))) + (cinsn 6 (set (reg:V8SI xmm0) (reg:V8SI <3>))) + (edge-to exit (flags "FALLTHRU")) + ) + ) + (crtl (return_rtx (reg/i:V8SI xmm0))) +) +} + +v2di __RTL (startwith ("vregs1")) foo3 (void) +{ +(function "foo3" + (insn-chain + (block 2 + (edge-from entry (flags "FALLTHRU")) + (cnote 1 [bb 2] NOTE_INSN_BASIC_BLOCK) + (cnote 2 NOTE_INSN_FUNCTION_BEG) + (cinsn 3 (set (reg:V2DI <1>) + (mem:V2DI (reg:SI di) [0 ptr S128 A128]))) + (cinsn 4 (set (reg:V2DI <2>) + (eq:V2DI (reg:V2DI <1>) + (mem:V2DI (reg:SI di) [0 ptr S128 A128])))) + (cinsn 5 (set (reg:V2DI <3>) (reg:V2DI <2>))) + (cinsn 6 (set (reg:V2DI xmm0) (reg:V2DI <3>))) + (edge-to exit (flags "FALLTHRU")) + ) + ) + (crtl (return_rtx (reg/i:V2DI xmm0))) +) +} + +/* { dg-final { scan-assembler-times "vpcmpeq" 3 } } */ diff --git a/gcc/testsuite/gcc.dg/tree-prof/ipa-cp-1.c b/gcc/testsuite/gcc.dg/tree-prof/ipa-cp-1.c new file mode 100644 index 0000000..ab6a7f7 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-prof/ipa-cp-1.c @@ -0,0 +1,30 @@ +/* { dg-options "-O2 -fdump-ipa-cp" } */ +__attribute__ ((used)) +int a[1000]; + +__attribute__ ((noinline)) +void +test2(int sz) +{ + for (int i = 0; i < sz; i++) + a[i]++; + asm volatile (""::"m"(a)); +} + +__attribute__ ((noinline)) +void +test1 (int sz) +{ + for (int i = 0; i < 1000; i++) + test2(sz); +} +int main() +{ + test1(1000); + return 0; +} +/* We should clone test1 and test2 for constant 1000. + In the past we did not do this since we did not clone for edges that are not hot + and call main->test1 is not considered hot since it is executed just once. */ +/* { dg-final-use { scan-ipa-dump-times "Creating a specialized node of test1" 1 "cp"} } */ +/* { dg-final-use { scan-ipa-dump-times "Creating a specialized node of test2" 1 "cp"} } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-cse-2.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-cse-2.c index a879d30..6fa52f6 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-cse-2.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-cse-2.c @@ -27,4 +27,4 @@ foo () but the loop reads only one element at a time, and DOM cannot resolve these. The same happens on powerpc depending on the SIMD support available. */ -/* { dg-final { scan-tree-dump "return 28;" "optimized" { xfail { { alpha*-*-* hppa*64*-*-* nvptx*-*-* mmix-knuth-mmixware } || { { { lp64 && { powerpc*-*-* sparc*-*-* riscv*-*-* } } || aarch64_sve } || { arm*-*-* && { ! arm_neon } } } } } } } */ +/* { dg-final { scan-tree-dump "return 28;" "optimized" { xfail { { alpha*-*-* hppa*64*-*-* nvptx*-*-* mmix-knuth-mmixware } || { { { lp64 && { mips*-*-* powerpc*-*-* sparc*-*-* riscv*-*-* } } || aarch64_sve } || { arm*-*-* && { ! arm_neon } } } } } } } */ diff --git a/gcc/testsuite/gcc.dg/vect/vect-early-break_38.c b/gcc/testsuite/gcc.dg/vect/vect-early-break_38.c index 36fc6a6..010e7ea 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-early-break_38.c +++ b/gcc/testsuite/gcc.dg/vect/vect-early-break_38.c @@ -2,6 +2,7 @@ /* { dg-do compile } */ /* { dg-require-effective-target vect_early_break } */ /* { dg-require-effective-target vect_int } */ +/* { dg-additional-options "-march=gfx908" { target amdgcn*-*-* } } */ #ifndef N #define N 803 diff --git a/gcc/testsuite/gcc.misc-tests/gcov-31.c b/gcc/testsuite/gcc.misc-tests/gcov-31.c index 6c42d34..5f060e9 100644 --- a/gcc/testsuite/gcc.misc-tests/gcov-31.c +++ b/gcc/testsuite/gcc.misc-tests/gcov-31.c @@ -20,7 +20,7 @@ run_pending_traps () jump_to_top_level (2); for (sig = 1; sig < (64 + 1) ; sig++) - __sigsetjmp ((return_catch), 0); + sigsetjmp ((return_catch), 0); } /* Distilled from alsalib-1.2.11 pcm/pcm_route.c. */ diff --git a/gcc/testsuite/gcc.misc-tests/gcov.exp b/gcc/testsuite/gcc.misc-tests/gcov.exp index c8f20e1..4d427c8 100644 --- a/gcc/testsuite/gcc.misc-tests/gcov.exp +++ b/gcc/testsuite/gcc.misc-tests/gcov.exp @@ -21,12 +21,19 @@ load_lib gcc-dg.exp load_lib gcov.exp global GCC_UNDER_TEST +global GCOV_UNDER_TEST -# For now find gcov in the same directory as $GCC_UNDER_TEST. -if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { - set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] +# For now find gcov in the same directory as $GCC_UNDER_TEST, unless +# GCOV_UNDER_TEST is defined. + +if ![info exists GCOV_UNDER_TEST] { + if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { + set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] + } else { + set GCOV [gcc-transform-out-of-tree gcov] + } } else { - set GCOV [gcc-transform-out-of-tree gcov] + set GCOV $GCOV_UNDER_TEST } # Initialize harness. diff --git a/gcc/testsuite/gcc.target/aarch64/_Float16_cmp_1.c b/gcc/testsuite/gcc.target/aarch64/_Float16_cmp_1.c new file mode 100644 index 0000000..e49ace1 --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/_Float16_cmp_1.c @@ -0,0 +1,54 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -march=armv8.2-a+fp16" } */ + +/* +** test_fcmp_store: +** fcmp h0, h1 +** cset w0, eq +** ret +*/ +int +test_fcmp_store(_Float16 a, _Float16 b) +{ + return a == b; +} + +/* +** test_fcmpe_store: +** fcmpe h0, h1 +** cset w0, mi +** ret +*/ +int +test_fcmpe_store(_Float16 a, _Float16 b) +{ + return a < b; +} + +/* +** test_fcmp_branch: +** fcmp h0, h1 +** ... +*/ +_Float16 +test_fcmp_branch(_Float16 a, _Float16 b) +{ + if (a == b) + return a * b; + return a; +} + +/* +** test_fcmpe_branch: +** fcmpe h0, h1 +** ... +*/ +_Float16 +test_fcmpe_branch(_Float16 a, _Float16 b) +{ + if (a < b) + return a * b; + return a; +} + +/* { dg-final { check-function-bodies "**" "" "" } } */
\ No newline at end of file diff --git a/gcc/testsuite/gcc.target/aarch64/_Float16_cmp_2.c b/gcc/testsuite/gcc.target/aarch64/_Float16_cmp_2.c new file mode 100644 index 0000000..0ff7cda --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/_Float16_cmp_2.c @@ -0,0 +1,7 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -march=armv8.2-a+nofp16" } */ + +#include "_Float16_cmp_1.c" + +/* { dg-final { scan-assembler-not {\tfcmp\th[0-9]+} } } */ +/* { dg-final { scan-assembler-not {\tfcmpe\th[0-9]+} } } */ diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c index 0892ce7..a653296 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x2.c @@ -1,7 +1,3 @@ -/* We haven't implemented these intrinsics for arm yet. */ -/* { dg-skip-if "unimplemented" { arm*-*-* } } */ -/* { dg-options "-O3" } */ - #include <arm_neon.h> #include "arm-neon-ref.h" @@ -39,7 +35,6 @@ VARIANT (int32, 2, _s32) \ VARIANT (int64, 1, _s64) \ VARIANT (poly8, 8, _p8) \ VARIANT (poly16, 4, _p16) \ -VARIANT (float16, 4, _f16) \ VARIANT (float32, 2, _f32) \ VARIANT (uint8, 16, q_u8) \ VARIANT (uint16, 8, q_u16) \ @@ -51,17 +46,30 @@ VARIANT (int32, 4, q_s32) \ VARIANT (int64, 2, q_s64) \ VARIANT (poly8, 16, q_p8) \ VARIANT (poly16, 8, q_p16) \ -VARIANT (float16, 8, q_f16) \ VARIANT (float32, 4, q_f32) +#if defined (__ARM_FP16_FORMAT_IEEE) \ + || defined (__ARM_FP16_FORMAT_ALTERNATIVE) \ + || defined (__aarch64__) +#define VARIANTS_F16(VARIANT) \ + VARIANT (float16, 4, _f16) \ + VARIANT (float16, 8, q_f16) +#else +#define VARIANTS_F16(VARIANTS_F16) +#endif + #ifdef __aarch64__ #define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) \ +VARIANT (poly64, 1, _p64) \ +VARIANT (poly64, 2, q_p64) \ VARIANT (mfloat8, 8, _mf8) \ VARIANT (mfloat8, 16, q_mf8) \ VARIANT (float64, 1, _f64) \ VARIANT (float64, 2, q_f64) #else -#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) +#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) #endif /* Tests of vld1_x2 and vld1q_x2. */ diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x3.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x3.c index 9465e4a..832ee75 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x3.c +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x3.c @@ -1,7 +1,3 @@ -/* We haven't implemented these intrinsics for arm yet. */ -/* { dg-skip-if "unimplemented" { arm*-*-* } } */ -/* { dg-options "-O3" } */ - #include <arm_neon.h> #include "arm-neon-ref.h" @@ -40,7 +36,6 @@ VARIANT (int32, 2, _s32) \ VARIANT (int64, 1, _s64) \ VARIANT (poly8, 8, _p8) \ VARIANT (poly16, 4, _p16) \ -VARIANT (float16, 4, _f16) \ VARIANT (float32, 2, _f32) \ VARIANT (uint8, 16, q_u8) \ VARIANT (uint16, 8, q_u16) \ @@ -52,17 +47,30 @@ VARIANT (int32, 4, q_s32) \ VARIANT (int64, 2, q_s64) \ VARIANT (poly8, 16, q_p8) \ VARIANT (poly16, 8, q_p16) \ -VARIANT (float16, 8, q_f16) \ VARIANT (float32, 4, q_f32) +#if defined (__ARM_FP16_FORMAT_IEEE) \ + || defined (__ARM_FP16_FORMAT_ALTERNATIVE) \ + || defined (__aarch64__) +#define VARIANTS_F16(VARIANT) \ + VARIANT (float16, 4, _f16) \ + VARIANT (float16, 8, q_f16) +#else +#define VARIANTS_F16(VARIANTS_F16) +#endif + #ifdef __aarch64__ #define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) \ +VARIANT (poly64, 1, _p64) \ +VARIANT (poly64, 2, q_p64) \ VARIANT (mfloat8, 8, _mf8) \ VARIANT (mfloat8, 16, q_mf8) \ VARIANT (float64, 1, _f64) \ VARIANT (float64, 2, q_f64) #else -#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) +#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) #endif diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x4.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x4.c index a1461fd..e5f55f0 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x4.c +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vld1x4.c @@ -1,7 +1,3 @@ -/* We haven't implemented these intrinsics for arm yet. */ -/* { dg-skip-if "unimplemented" { arm*-*-* } } */ -/* { dg-options "-O3" } */ - #include <stdbool.h> #include <arm_neon.h> #include "arm-neon-ref.h" @@ -42,8 +38,6 @@ VARIANT (int32, 2, _s32) \ VARIANT (int64, 1, _s64) \ VARIANT (poly8, 8, _p8) \ VARIANT (poly16, 4, _p16) \ -VARIANT (poly64, 1, _p64) \ -VARIANT (float16, 4, _f16) \ VARIANT (float32, 2, _f32) \ VARIANT (uint8, 16, q_u8) \ VARIANT (uint16, 8, q_u16) \ @@ -55,18 +49,30 @@ VARIANT (int32, 4, q_s32) \ VARIANT (int64, 2, q_s64) \ VARIANT (poly8, 16, q_p8) \ VARIANT (poly16, 8, q_p16) \ -VARIANT (poly64, 2, q_p64) \ -VARIANT (float16, 8, q_f16) \ VARIANT (float32, 4, q_f32) +#if defined (__ARM_FP16_FORMAT_IEEE) \ + || defined (__ARM_FP16_FORMAT_ALTERNATIVE) \ + || defined (__aarch64__) +#define VARIANTS_F16(VARIANT) \ + VARIANT (float16, 4, _f16) \ + VARIANT (float16, 8, q_f16) +#else +#define VARIANTS_F16(VARIANTS_F16) +#endif + #ifdef __aarch64__ #define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) \ +VARIANT (poly64, 1, _p64) \ +VARIANT (poly64, 2, q_p64) \ VARIANT (mfloat8, 8, _mf8) \ VARIANT (mfloat8, 16, q_mf8) \ VARIANT (float64, 1, _f64) \ VARIANT (float64, 2, q_f64) #else -#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) +#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) #endif /* Tests of vld1_x4 and vld1q_x4. */ diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x2.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x2.c index 3cf5eb3..8399290 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x2.c +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x2.c @@ -1,7 +1,3 @@ -/* We haven't implemented these intrinsics for arm yet. */ -/* { dg-skip-if "unimplemented" { arm*-*-* } } */ -/* { dg-options "-O3" } */ - #include <arm_neon.h> #include "arm-neon-ref.h" @@ -39,7 +35,6 @@ VARIANT (int32, 2, _s32) \ VARIANT (int64, 1, _s64) \ VARIANT (poly8, 8, _p8) \ VARIANT (poly16, 4, _p16) \ -VARIANT (float16, 4, _f16) \ VARIANT (float32, 2, _f32) \ VARIANT (uint8, 16, q_u8) \ VARIANT (uint16, 8, q_u16) \ @@ -51,17 +46,30 @@ VARIANT (int32, 4, q_s32) \ VARIANT (int64, 2, q_s64) \ VARIANT (poly8, 16, q_p8) \ VARIANT (poly16, 8, q_p16) \ -VARIANT (float16, 8, q_f16) \ VARIANT (float32, 4, q_f32) +#if defined (__ARM_FP16_FORMAT_IEEE) \ + || defined (__ARM_FP16_FORMAT_ALTERNATIVE) \ + || defined (__aarch64__) +#define VARIANTS_F16(VARIANT) \ + VARIANT (float16, 4, _f16) \ + VARIANT (float16, 8, q_f16) +#else +#define VARIANTS_F16(VARIANTS_F16) +#endif + #ifdef __aarch64__ #define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) \ +VARIANT (poly64, 1, _p64) \ +VARIANT (poly64, 2, q_p64) \ VARIANT (mfloat8, 8, _mf8) \ VARIANT (mfloat8, 16, q_mf8) \ VARIANT (float64, 1, _f64) \ VARIANT (float64, 2, q_f64) #else -#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) +#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) #endif /* Tests of vst1_x2 and vst1q_x2. */ diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x3.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x3.c index c05f8e7..e7d9e02 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x3.c +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x3.c @@ -1,7 +1,3 @@ -/* We haven't implemented these intrinsics for arm yet. */ -/* { dg-skip-if "unimplemented" { arm*-*-* } } */ -/* { dg-options "-O3" } */ - #include <arm_neon.h> #include "arm-neon-ref.h" @@ -40,7 +36,6 @@ VARIANT (int32, 2, _s32) \ VARIANT (int64, 1, _s64) \ VARIANT (poly8, 8, _p8) \ VARIANT (poly16, 4, _p16) \ -VARIANT (float16, 4, _f16) \ VARIANT (float32, 2, _f32) \ VARIANT (uint8, 16, q_u8) \ VARIANT (uint16, 8, q_u16) \ @@ -52,17 +47,30 @@ VARIANT (int32, 4, q_s32) \ VARIANT (int64, 2, q_s64) \ VARIANT (poly8, 16, q_p8) \ VARIANT (poly16, 8, q_p16) \ -VARIANT (float16, 8, q_f16) \ VARIANT (float32, 4, q_f32) +#if defined (__ARM_FP16_FORMAT_IEEE) \ + || defined (__ARM_FP16_FORMAT_ALTERNATIVE) \ + || defined (__aarch64__) +#define VARIANTS_F16(VARIANT) \ + VARIANT (float16, 4, _f16) \ + VARIANT (float16, 8, q_f16) +#else +#define VARIANTS_F16(VARIANTS_F16) +#endif + #ifdef __aarch64__ #define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) \ +VARIANT (poly64, 1, _p64) \ +VARIANT (poly64, 2, q_p64) \ VARIANT (mfloat8, 8, _mf8) \ VARIANT (mfloat8, 16, q_mf8) \ VARIANT (float64, 1, _f64) \ VARIANT (float64, 2, q_f64) #else -#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) +#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) #endif /* Tests of vst1_x3 and vst1q_x3. */ diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x4.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x4.c index a9867c3..83b0567 100644 --- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x4.c +++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vst1x4.c @@ -1,7 +1,3 @@ -/* We haven't implemented these intrinsics for arm yet. */ -/* { dg-skip-if "unimplemented" { arm*-*-* } } */ -/* { dg-options "-O3" } */ - #include <arm_neon.h> #include "arm-neon-ref.h" @@ -41,8 +37,6 @@ VARIANT (int32, 2, _s32) \ VARIANT (int64, 1, _s64) \ VARIANT (poly8, 8, _p8) \ VARIANT (poly16, 4, _p16) \ -VARIANT (poly64, 1, _p64) \ -VARIANT (float16, 4, _f16) \ VARIANT (float32, 2, _f32) \ VARIANT (uint8, 16, q_u8) \ VARIANT (uint16, 8, q_u16) \ @@ -54,18 +48,30 @@ VARIANT (int32, 4, q_s32) \ VARIANT (int64, 2, q_s64) \ VARIANT (poly8, 16, q_p8) \ VARIANT (poly16, 8, q_p16) \ -VARIANT (poly64, 2, q_p64) \ -VARIANT (float16, 8, q_f16) \ VARIANT (float32, 4, q_f32) +#if defined (__ARM_FP16_FORMAT_IEEE) \ + || defined (__ARM_FP16_FORMAT_ALTERNATIVE) \ + || defined (__aarch64__) +#define VARIANTS_F16(VARIANT) \ + VARIANT (float16, 4, _f16) \ + VARIANT (float16, 8, q_f16) +#else +#define VARIANTS_F16(VARIANTS_F16) +#endif + #ifdef __aarch64__ #define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) \ +VARIANT (poly64, 1, _p64) \ +VARIANT (poly64, 2, q_p64) \ VARIANT (mfloat8, 8, _mf8) \ VARIANT (mfloat8, 16, q_mf8) \ VARIANT (float64, 1, _f64) \ VARIANT (float64, 2, q_f64) #else -#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) +#define VARIANTS(VARIANT) VARIANTS_1(VARIANT) \ +VARIANTS_F16(VARIANT) #endif /* Tests of vst1_x4 and vst1q_x4. */ diff --git a/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c b/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c index dcac6d5..3799fb4 100644 --- a/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c +++ b/gcc/testsuite/gcc.target/aarch64/pragma_cpp_predefs_4.c @@ -315,3 +315,18 @@ #ifndef __ARM_FEATURE_FP8DOT2 #error Foo #endif + +#pragma GCC target "arch=armv9.4-a" +#ifdef __ARM_FEATURE_FAMINMAX +#error Foo +#endif + +#pragma GCC target "arch=armv9.5-a" +#ifndef __ARM_FEATURE_FAMINMAX +#error Foo +#endif + +#pragma GCC target "arch=armv8-a+faminmax" +#ifndef __ARM_FEATURE_FAMINMAX +#error Foo +#endif diff --git a/gcc/testsuite/gcc.target/i386/avx512f-pr96891-3.c b/gcc/testsuite/gcc.target/i386/avx512f-pr96891-3.c index 5b26081..5eb60d9 100644 --- a/gcc/testsuite/gcc.target/i386/avx512f-pr96891-3.c +++ b/gcc/testsuite/gcc.target/i386/avx512f-pr96891-3.c @@ -1,11 +1,10 @@ /* { dg-do compile } */ /* { dg-options "-mavx512vl -mavx512bw -mavx512dq -O2 -masm=att -mstv -mno-stackrealign" } */ /* { dg-final { scan-assembler-not {not[bwlqd]\]} } } */ -/* { dg-final { scan-assembler-times {(?n)vpcmp[bwdq][ \t]*\$5} 4} } */ -/* { dg-final { scan-assembler-times {(?n)vpcmp[bwdq][ \t]*\$6} 4} } */ +/* { dg-final { scan-assembler-times {(?n)vpcmp[bwdq][ \t]*\$5} 2} } */ +/* { dg-final { scan-assembler-times {(?n)vpcmp[bwdq][ \t]*\$6} 3} } */ /* { dg-final { scan-assembler-times {(?n)vpcmp[bwdq][ \t]*\$[37]} 4} } */ -/* { dg-final { scan-assembler-times {(?n)vcmpp[sd][ \t]*\$5} 2} } */ -/* { dg-final { scan-assembler-times {(?n)vcmpp[sd][ \t]*\$6} 2} } */ +/* { dg-final { scan-assembler-times {(?n)vcmpp[sd][ \t]*\$6} 1} } */ /* { dg-final { scan-assembler-times {(?n)vcmpp[sd][ \t]*\$7} 2} } */ #include<immintrin.h> @@ -20,20 +19,14 @@ FOO (__m128i,, epi8, __mmask16, 128, 1); FOO (__m128i,, epi16, __mmask8, 128, 1); -FOO (__m128i,, epi32, __mmask8, 128, 1); -FOO (__m128i,, epi64, __mmask8, 128, 1); FOO (__m256i, 256, epi8, __mmask32, 256, 2); FOO (__m256i, 256, epi16, __mmask16, 256, 2); FOO (__m256i, 256, epi32, __mmask8, 256, 2); -FOO (__m256i, 256, epi64, __mmask8, 256, 2); FOO (__m512i, 512, epi8, __mmask64, 512, 3); FOO (__m512i, 512, epi16, __mmask32, 512, 3); FOO (__m512i, 512, epi32, __mmask16, 512, 3); FOO (__m512i, 512, epi64, __mmask8, 512, 3); -FOO (__m128,, ps, __mmask8, 128, 1); -FOO (__m128d,, pd, __mmask8, 128, 1); FOO (__m256, 256, ps, __mmask8, 256, 2); -FOO (__m256d, 256, pd, __mmask8, 256, 2); FOO (__m512, 512, ps, __mmask16, 512, 3); FOO (__m512d, 512, pd, __mmask8, 512, 3); diff --git a/gcc/testsuite/gcc.target/i386/avx512f-vpcmpgtuq-1.c b/gcc/testsuite/gcc.target/i386/avx512f-vpcmpgtuq-1.c index ef6a525..37ca646 100644 --- a/gcc/testsuite/gcc.target/i386/avx512f-vpcmpgtuq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512f-vpcmpgtuq-1.c @@ -12,5 +12,5 @@ void extern avx512f_test (void) { m = _mm512_cmpgt_epu64_mask (x, x); - m = _mm512_mask_cmpgt_epu64_mask (3, x, x); + m = _mm512_mask_cmpgt_epu64_mask (5, x, x); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-pr103750-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-pr103750-1.c new file mode 100644 index 0000000..a15fae8 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/avx512vl-pr103750-1.c @@ -0,0 +1,79 @@ +/* PR target/103750 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -mavx512vl" } */ +/* { dg-final { scan-assembler-not "and" } } */ + +#include <immintrin.h> +extern __m128i* pi128; +extern __m256i* pi256; + +extern __m128* ps128; +extern __m256* ps256; + +extern __m128d* pd128; +extern __m256d* pd256; + +extern char a; +void +foo () +{ + __mmask8 mask1 = _mm_cmpeq_epu32_mask (pi128[0], pi128[1]); + a = mask1 & 15; +} + +void +foo1 () +{ + __mmask8 mask1 = _mm_cmpeq_epu64_mask (pi128[0], pi128[1]); + a = mask1 & 3; +} + +void +foo2 () +{ + __mmask8 mask1 = _mm256_cmpeq_epu64_mask (pi256[0], pi256[1]); + a = mask1 & 15; +} + +void +sign_foo () +{ + __mmask8 mask1 = _mm_cmpeq_epi32_mask (pi128[0], pi128[1]); + a = mask1 & 15; +} + +void +sign_foo1 () +{ + __mmask8 mask1 = _mm_cmpeq_epi64_mask (pi128[0], pi128[1]); + a = mask1 & 3; +} + + +void +sign_foo2 () +{ + __mmask8 mask1 = _mm256_cmpeq_epi64_mask (pi256[0], pi256[1]); + a = mask1 & 15; +} + +void +float_foo () +{ + __mmask8 mask1 = _mm_cmp_ps_mask (ps128[0], ps128[1], 1); + a = mask1 & 15; +} + +void +double_foo () +{ + __mmask8 mask1 = _mm_cmp_pd_mask (pd128[0], pd128[1], 1); + a = mask1 & 3; +} + +void +double_foo2 () +{ + __mmask8 mask1 = _mm256_cmp_pd_mask (pd256[0], pd256[1], 1); + a = mask1 & 15; +} diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpeqq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpeqq-1.c index 69b200a..a798d06 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpeqq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpeqq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpeq_epi64_mask (x128, x128); m = _mm256_cmpeq_epi64_mask (x256, x256); - m = _mm_mask_cmpeq_epi64_mask (3, x128, x128); - m = _mm256_mask_cmpeq_epi64_mask (3, x256, x256); + m = _mm_mask_cmpeq_epi64_mask (5, x128, x128); + m = _mm256_mask_cmpeq_epi64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpequq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpequq-1.c index c925d32..736763f 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpequq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpequq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpeq_epu64_mask (x128, x128); m = _mm256_cmpeq_epu64_mask (x256, x256); - m = _mm_mask_cmpeq_epu64_mask (3, x128, x128); - m = _mm256_mask_cmpeq_epu64_mask (3, x256, x256); + m = _mm_mask_cmpeq_epu64_mask (5, x128, x128); + m = _mm256_mask_cmpeq_epu64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeq-1.c index ef40e41..19110a5 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpge_epi64_mask (x128, x128); m = _mm256_cmpge_epi64_mask (x256, x256); - m = _mm_mask_cmpge_epi64_mask (3, x128, x128); - m = _mm256_mask_cmpge_epi64_mask (3, x256, x256); + m = _mm_mask_cmpge_epi64_mask (5, x128, x128); + m = _mm256_mask_cmpge_epi64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeuq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeuq-1.c index 1f7dd49..d82f8e5 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeuq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgeuq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpge_epu64_mask (x128, x128); m = _mm256_cmpge_epu64_mask (x256, x256); - m = _mm_mask_cmpge_epu64_mask (3, x128, x128); - m = _mm256_mask_cmpge_epu64_mask (3, x256, x256); + m = _mm_mask_cmpge_epu64_mask (5, x128, x128); + m = _mm256_mask_cmpge_epu64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtq-1.c index 26cac3a..79f9430 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpgt_epi64_mask (x128, x128); m = _mm256_cmpgt_epi64_mask (x256, x256); - m = _mm_mask_cmpgt_epi64_mask (3, x128, x128); - m = _mm256_mask_cmpgt_epi64_mask (3, x256, x256); + m = _mm_mask_cmpgt_epi64_mask (5, x128, x128); + m = _mm256_mask_cmpgt_epi64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtuq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtuq-1.c index 10717cd..bef015f 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtuq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpgtuq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpgt_epu64_mask (x128, x128); m = _mm256_cmpgt_epu64_mask (x256, x256); - m = _mm_mask_cmpgt_epu64_mask (3, x128, x128); - m = _mm256_mask_cmpgt_epu64_mask (3, x256, x256); + m = _mm_mask_cmpgt_epu64_mask (5, x128, x128); + m = _mm256_mask_cmpgt_epu64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleq-1.c index 110ff70..9974aa5 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmple_epi64_mask (x128, x128); m = _mm256_cmple_epi64_mask (x256, x256); - m = _mm_mask_cmple_epi64_mask (3, x128, x128); - m = _mm256_mask_cmple_epi64_mask (3, x256, x256); + m = _mm_mask_cmple_epi64_mask (5, x128, x128); + m = _mm256_mask_cmple_epi64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleuq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleuq-1.c index e3faf41..0a5a513 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleuq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpleuq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmple_epu64_mask (x128, x128); m = _mm256_cmple_epu64_mask (x256, x256); - m = _mm_mask_cmple_epu64_mask (3, x128, x128); - m = _mm256_mask_cmple_epu64_mask (3, x256, x256); + m = _mm_mask_cmple_epu64_mask (5, x128, x128); + m = _mm256_mask_cmple_epu64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltq-1.c index 1b8f7f1..5f40c79 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmplt_epi64_mask (x128, x128); m = _mm256_cmplt_epi64_mask (x256, x256); - m = _mm_mask_cmplt_epi64_mask (3, x128, x128); - m = _mm256_mask_cmplt_epi64_mask (3, x256, x256); + m = _mm_mask_cmplt_epi64_mask (5, x128, x128); + m = _mm256_mask_cmplt_epi64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltuq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltuq-1.c index 5c2f025..afda5e7 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltuq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpltuq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmplt_epu64_mask (x128, x128); m = _mm256_cmplt_epu64_mask (x256, x256); - m = _mm_mask_cmplt_epu64_mask (3, x128, x128); - m = _mm256_mask_cmplt_epu64_mask (3, x256, x256); + m = _mm_mask_cmplt_epu64_mask (5, x128, x128); + m = _mm256_mask_cmplt_epu64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpneqq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpneqq-1.c index f48de10..5ef2548 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpneqq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpneqq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpneq_epi64_mask (x128, x128); m = _mm256_cmpneq_epi64_mask (x256, x256); - m = _mm_mask_cmpneq_epi64_mask (3, x128, x128); - m = _mm256_mask_cmpneq_epi64_mask (3, x256, x256); + m = _mm_mask_cmpneq_epi64_mask (5, x128, x128); + m = _mm256_mask_cmpneq_epi64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpnequq-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpnequq-1.c index 726a887..4a9aacf 100644 --- a/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpnequq-1.c +++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpcmpnequq-1.c @@ -16,6 +16,6 @@ avx512vl_test (void) { m = _mm_cmpneq_epu64_mask (x128, x128); m = _mm256_cmpneq_epu64_mask (x256, x256); - m = _mm_mask_cmpneq_epu64_mask (3, x128, x128); - m = _mm256_mask_cmpneq_epu64_mask (3, x256, x256); + m = _mm_mask_cmpneq_epu64_mask (5, x128, x128); + m = _mm256_mask_cmpneq_epu64_mask (5, x256, x256); } diff --git a/gcc/testsuite/gcc.target/i386/blendv-to-maxmin.c b/gcc/testsuite/gcc.target/i386/blendv-to-maxmin.c new file mode 100644 index 0000000..042eb7d --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/blendv-to-maxmin.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-options "-march=x86-64-v3 -O2 -mfpmath=sse" } */ +/* { dg-final { scan-assembler-times "vmaxsd" 1 } } */ + +double +foo (double a) +{ + if (a > 0.0) + return a; + return 0.0; +} + diff --git a/gcc/testsuite/gcc.target/i386/blendv-to-pand.c b/gcc/testsuite/gcc.target/i386/blendv-to-pand.c new file mode 100644 index 0000000..2896a2b --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/blendv-to-pand.c @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -march=x86-64-v3 -mfpmath=sse" } */ +/* { dg-final { scan-assembler-not "vblendv" } } */ + +void +foo (float* a, float* b, float* c, float* __restrict d, int n) +{ + for (int i = 0; i != n; i++) + { + c[i] *= 2.0f; + if (a[i] > b[i]) + d[i] = 0.0f; + else + d[i] = c[i]; + } +} diff --git a/gcc/testsuite/gcc.target/i386/pr119919.c b/gcc/testsuite/gcc.target/i386/pr119919.c new file mode 100644 index 0000000..ed64656 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr119919.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -msse2 -fdump-tree-vect-details" } */ +int a[9*9]; +bool b[9]; +void test() +{ + for (int i = 0; i < 9; i++) + { + b[i] = a[i*9] != 0; + } +} + +/* { dg-final { scan-tree-dump "loop vectorized using 8 byte vectors" "vect" } } */ diff --git a/gcc/testsuite/gcc.target/i386/pr89618-2.c b/gcc/testsuite/gcc.target/i386/pr89618-2.c index c414053..11d658f 100644 --- a/gcc/testsuite/gcc.target/i386/pr89618-2.c +++ b/gcc/testsuite/gcc.target/i386/pr89618-2.c @@ -19,5 +19,9 @@ void foo (int n, int *off, double *a) } /* Make sure the cost model selects SSE vectors rather than AVX to avoid - too many scalar ops for the address computes in the loop. */ -/* { dg-final { scan-tree-dump "loop vectorized using 16 byte vectors" "vect" { target { ! ia32 } } } } */ + too many scalar ops for the address computes in the loop. + + Since open-coded scatters are costed wrong, we no longer vectorize after fixing + COND_EXPR costs. See PR119902. */ +/* { dg-final { scan-tree-dump "loop vectorized using 16 byte vectors" "vect" { target { ! ia32 } xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-not "loop vectorized using 32 byte vectors" "vect" { target { ! ia32 } } } } */ diff --git a/gcc/testsuite/gcc.target/i386/recip-vec-divf-fma.c b/gcc/testsuite/gcc.target/i386/recip-vec-divf-fma.c new file mode 100644 index 0000000..ad9e07b --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/recip-vec-divf-fma.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-options "-Ofast -mfma -mavx2" } */ +/* { dg-final { scan-assembler-times {(?n)vfn?m(add|sub)[1-3]*ps} 2 } } */ + +typedef float v4sf __attribute__((vector_size(16))); +/* (a - (rcp(b) * a * b)) * rcp(b) + rcp(b) * a */ + +v4sf +foo (v4sf a, v4sf b) +{ + return a / b; +} diff --git a/gcc/testsuite/gcc.target/mips/clear-cache-1.c b/gcc/testsuite/gcc.target/mips/clear-cache-1.c index f1554f5..cd11c66 100644 --- a/gcc/testsuite/gcc.target/mips/clear-cache-1.c +++ b/gcc/testsuite/gcc.target/mips/clear-cache-1.c @@ -1,7 +1,7 @@ /* { dg-do compile } */ /* { dg-options "-msynci isa_rev>=2" } */ /* { dg-final { scan-assembler "\tsynci\t" } } */ -/* { dg-final { scan-assembler "\tjr.hb\t" } } */ +/* { dg-final { scan-assembler "\tjrc?.hb\t" } } */ /* { dg-final { scan-assembler-not "_flush_cache|mips_sync_icache|_cacheflush" } } */ NOMIPS16 void f() diff --git a/gcc/testsuite/gcc.target/mips/memcpy-2.c b/gcc/testsuite/gcc.target/mips/memcpy-2.c new file mode 100644 index 0000000..df0cd18 --- /dev/null +++ b/gcc/testsuite/gcc.target/mips/memcpy-2.c @@ -0,0 +1,12 @@ +/* { dg-do compile } */ +/* { dg-options "isa_rev<=5 -fdump-rtl-expand" } */ +/* { dg-skip-if "code quality test" { *-*-* } { "-Os" } { "" } } */ + +__attribute__((nomips16)) +void +f1 (char *p) +{ + __builtin_memcpy (p, "12345", 5); +} + +/* { dg-final { scan-rtl-dump "mem/u.*mem/u" "expand" } } */ diff --git a/gcc/testsuite/gcc.target/powerpc/power11-3.c b/gcc/testsuite/gcc.target/powerpc/power11-3.c index fa1aedd..56bf881 100644 --- a/gcc/testsuite/gcc.target/powerpc/power11-3.c +++ b/gcc/testsuite/gcc.target/powerpc/power11-3.c @@ -1,5 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-mdejagnu-cpu=power8 -O2" } */ +/* { dg-require-ifunc "" } */ /* Check if we can set the power11 target via a target_clones attribute. */ diff --git a/gcc/testsuite/gcc.target/riscv/mcpu-xt-c908.c b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c908.c new file mode 100644 index 0000000..cb28baf --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c908.c @@ -0,0 +1,48 @@ +/* { dg-do compile } */ +/* { dg-skip-if "-march given" { *-*-* } { "-march=*" } } */ +/* { dg-options "-mcpu=xt-c908" { target { rv64 } } } */ +/* XuanTie C908 => rv64imafdc_zicbom_zicbop_zicboz_zicntr_zicsr_zifencei_ +zihintpause_zihpm_zfh_zba_zbb_zbc_zbs_sstc_svinval_svnapot_svpbmt_xtheadba_ +xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_xtheadmac_ +xtheadmemidx_xtheadmempair_xtheadsync */ + +#if !((__riscv_xlen == 64) \ + && !defined(__riscv_32e) \ + && defined(__riscv_mul) \ + && defined(__riscv_atomic) \ + && (__riscv_flen == 64) \ + && defined(__riscv_compressed) \ + && defined(__riscv_zicbom) \ + && defined(__riscv_zicbop) \ + && defined(__riscv_zicboz) \ + && defined(__riscv_zicntr) \ + && defined(__riscv_zicsr) \ + && defined(__riscv_zifencei) \ + && defined(__riscv_zihintpause) \ + && defined(__riscv_zihpm) \ + && defined(__riscv_zfh) \ + && defined(__riscv_zba) \ + && defined(__riscv_zbb) \ + && defined(__riscv_zbc) \ + && defined(__riscv_zbs) \ + && defined(__riscv_sstc) \ + && defined(__riscv_svinval) \ + && defined(__riscv_svnapot) \ + && defined(__riscv_svpbmt) \ + && defined(__riscv_xtheadba) \ + && defined(__riscv_xtheadbb) \ + && defined(__riscv_xtheadbs) \ + && defined(__riscv_xtheadcmo) \ + && defined(__riscv_xtheadcondmov) \ + && defined(__riscv_xtheadfmemidx) \ + && defined(__riscv_xtheadmac) \ + && defined(__riscv_xtheadmemidx) \ + && defined(__riscv_xtheadmempair) \ + && defined(__riscv_xtheadsync)) +#error "unexpected arch" +#endif + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gcc.target/riscv/mcpu-xt-c908v.c b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c908v.c new file mode 100644 index 0000000..1b1ee18 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c908v.c @@ -0,0 +1,50 @@ +/* { dg-do compile } */ +/* { dg-skip-if "-march given" { *-*-* } { "-march=*" } } */ +/* { dg-options "-mcpu=xt-c908v" { target { rv64 } } } */ +/* XuanTie C908v => rv64imafdcv_zicbom_zicbop_zicboz_zicntr_zicsr_zifencei_ +zihintpause_zihpm_zfh_zba_zbb_zbc_zbs_sstc_svinval_svnapot_svpbmt_xtheadba_ +xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_xtheadmac_ +xtheadmemidx_xtheadmempair_xtheadsync_xtheadvdot */ + +#if !((__riscv_xlen == 64) \ + && !defined(__riscv_32e) \ + && defined(__riscv_mul) \ + && defined(__riscv_atomic) \ + && (__riscv_flen == 64) \ + && defined(__riscv_compressed) \ + && defined(__riscv_v) \ + && defined(__riscv_zicbom) \ + && defined(__riscv_zicbop) \ + && defined(__riscv_zicboz) \ + && defined(__riscv_zicntr) \ + && defined(__riscv_zicsr) \ + && defined(__riscv_zifencei) \ + && defined(__riscv_zihintpause) \ + && defined(__riscv_zihpm) \ + && defined(__riscv_zfh) \ + && defined(__riscv_zba) \ + && defined(__riscv_zbb) \ + && defined(__riscv_zbc) \ + && defined(__riscv_zbs) \ + && defined(__riscv_sstc) \ + && defined(__riscv_svinval) \ + && defined(__riscv_svnapot) \ + && defined(__riscv_svpbmt) \ + && defined(__riscv_xtheadba) \ + && defined(__riscv_xtheadbb) \ + && defined(__riscv_xtheadbs) \ + && defined(__riscv_xtheadcmo) \ + && defined(__riscv_xtheadcondmov) \ + && defined(__riscv_xtheadfmemidx) \ + && defined(__riscv_xtheadmac) \ + && defined(__riscv_xtheadmemidx) \ + && defined(__riscv_xtheadmempair) \ + && defined(__riscv_xtheadsync) \ + && defined (__riscv__xtheadvdot)) +#error "unexpected arch" +#endif + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gcc.target/riscv/mcpu-xt-c910.c b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c910.c new file mode 100644 index 0000000..1e27665 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c910.c @@ -0,0 +1,35 @@ +/* { dg-do compile } */ +/* { dg-skip-if "-march given" { *-*-* } { "-march=*" } } */ +/* { dg-options "-mcpu=xt-c910" { target { rv64 } } } */ +/* XuanTie C910 => rv64imafdc_zicntr_zicsr_zifencei_zihpm_zfh_xtheadba_ +xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_xtheadmac_ +xtheadmemidx_xtheadmempair_xtheadsync */ + +#if !((__riscv_xlen == 64) \ + && !defined(__riscv_32e) \ + && defined(__riscv_mul) \ + && defined(__riscv_atomic) \ + && (__riscv_flen == 64) \ + && defined(__riscv_compressed) \ + && defined(__riscv_zicntr) \ + && defined(__riscv_zicsr) \ + && defined(__riscv_zifencei) \ + && defined(__riscv_zihpm) \ + && defined(__riscv_zfh) \ + && defined(__riscv_xtheadba) \ + && defined(__riscv_xtheadbb) \ + && defined(__riscv_xtheadbs) \ + && defined(__riscv_xtheadcmo) \ + && defined(__riscv_xtheadcondmov) \ + && defined(__riscv_xtheadfmemidx) \ + && defined(__riscv_xtheadmac) \ + && defined(__riscv_xtheadmemidx) \ + && defined(__riscv_xtheadmempair) \ + && defined(__riscv_xtheadsync)) +#error "unexpected arch" +#endif + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gcc.target/riscv/mcpu-xt-c910v2.c b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c910v2.c new file mode 100644 index 0000000..6a54f09 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c910v2.c @@ -0,0 +1,51 @@ +/* { dg-do compile } */ +/* { dg-skip-if "-march given" { *-*-* } { "-march=*" } } */ +/* { dg-options "-mcpu=xt-c910v2" { target { rv64 } } } */ +/* XuanTie C910v2 => rv64imafdc_zicbom_zicbop_zicboz_zicntr_zicond_zicsr_ +zifencei _zihintntl_zihintpause_zihpm_zawrs_zfa_zfbfmin_zfh_zca_zcb_zcd_zba_ +zbb_zbc_xtheadba_xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_ +xtheadmac_xtheadmemidx_xtheadmempair_xtheadsync */ + +#if !((__riscv_xlen == 64) \ + && !defined(__riscv_32e) \ + && defined(__riscv_mul) \ + && defined(__riscv_atomic) \ + && (__riscv_flen == 64) \ + && defined(__riscv_compressed) \ + && defined(__riscv_zicbom) \ + && defined(__riscv_zicbop) \ + && defined(__riscv_zicboz) \ + && defined(__riscv_zicntr) \ + && defined(__riscv_zicond) \ + && defined(__riscv_zicsr) \ + && defined(__riscv_zifencei ) \ + && defined(__riscv_zihintntl) \ + && defined(__riscv_zihintpause) \ + && defined(__riscv_zihpm) \ + && defined(__riscv_zawrs) \ + && defined(__riscv_zfa) \ + && defined(__riscv_zfbfmin) \ + && defined(__riscv_zfh) \ + && defined(__riscv_zca) \ + && defined(__riscv_zcb) \ + && defined(__riscv_zcd) \ + && defined(__riscv_zba) \ + && defined(__riscv_zbb) \ + && defined(__riscv_zbc) \ + && defined(__riscv_xtheadba) \ + && defined(__riscv_xtheadbb) \ + && defined(__riscv_xtheadbs) \ + && defined(__riscv_xtheadcmo) \ + && defined(__riscv_xtheadcondmov) \ + && defined(__riscv_xtheadfmemidx) \ + && defined(__riscv_xtheadmac) \ + && defined(__riscv_xtheadmemidx) \ + && defined(__riscv_xtheadmempair) \ + && defined(__riscv_xtheadsync)) +#error "unexpected arch" +#endif + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gcc.target/riscv/mcpu-xt-c920.c b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c920.c new file mode 100644 index 0000000..6bcd687 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c920.c @@ -0,0 +1,34 @@ +/* { dg-do compile } */ +/* { dg-skip-if "-march given" { *-*-* } { "-march=*" } } */ +/* { dg-options "-mcpu=xt-c920" { target { rv64 } } } */ +/* XuanTie c920 => rv64imafdc_zicntr_zicsr_zifencei_zihpm_zfh_"xtheadba_xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_xtheadmac_xtheadmemidx_xtheadmempair_xtheadsync_xtheadvector */ + +#if !((__riscv_xlen == 64) \ + && !defined(__riscv_32e) \ + && defined(__riscv_mul) \ + && defined(__riscv_atomic) \ + && (__riscv_flen == 64) \ + && defined(__riscv_compressed) \ + && defined(__riscv_zicntr) \ + && defined(__riscv_zicsr) \ + && defined(__riscv_zifencei) \ + && defined(__riscv_zihpm) \ + && defined(__riscv_zfh) \ + && defined(__riscv_xtheadba) \ + && defined(__riscv_xtheadbb) \ + && defined(__riscv_xtheadbs) \ + && defined(__riscv_xtheadcmo) \ + && defined(__riscv_xtheadcondmov) \ + && defined(__riscv_xtheadfmemidx) \ + && defined(__riscv_xtheadmac) \ + && defined(__riscv_xtheadmemidx) \ + && defined(__riscv_xtheadmempair) \ + && defined(__riscv_xtheadsync) \ + && defined(__riscv_xtheadvector)) +#error "unexpected arch" +#endif + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gcc.target/riscv/mcpu-xt-c920v2.c b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c920v2.c new file mode 100644 index 0000000..36a6267 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/mcpu-xt-c920v2.c @@ -0,0 +1,56 @@ +/* { dg-do compile } */ +/* { dg-skip-if "-march given" { *-*-* } { "-march=*" } } */ +/* { dg-options "-mcpu=xt-c920v2" { target { rv64 } } } */ +/* XuanTie C920v2 => rv64imafdcv_zicbom_zicbop_zicboz_zicntr_zicond_zicsr_zifencei _zihintntl_zihintpause_zihpm_zawrs_zfa_zfbfmin_zfh_zca_zcb_zcd_zba_zbb_zbc_zbs_zvfbfmin_zvfbfwma_zvfh_sscofpmf_sstc_svinval_svnapot_svpbmt_xtheadba_xtheadbb_xtheadbs_xtheadcmo_xtheadcondmov_xtheadfmemidx_xtheadsync_xtheadvdot */ + +#if !((__riscv_xlen == 64) \ + && !defined(__riscv_32e) \ + && defined(__riscv_mul) \ + && defined(__riscv_atomic) \ + && (__riscv_flen == 64) \ + && defined(__riscv_compressed) \ + && defined(__riscv_v) \ + && defined(__riscv_zicbom) \ + && defined(__riscv_zicbop) \ + && defined(__riscv_zicboz) \ + && defined(__riscv_zicntr) \ + && defined(__riscv_zicond) \ + && defined(__riscv_zicsr) \ + && defined(__riscv_zifencei ) \ + && defined(__riscv_zihintntl) \ + && defined(__riscv_zihintpause) \ + && defined(__riscv_zihpm) \ + && defined(__riscv_zawrs) \ + && defined(__riscv_zfa) \ + && defined(__riscv_zfbfmin) \ + && defined(__riscv_zfh) \ + && defined(__riscv_zca) \ + && defined(__riscv_zcb) \ + && defined(__riscv_zcd) \ + && defined(__riscv_zba) \ + && defined(__riscv_zbb) \ + && defined(__riscv_zbc) \ + && defined(__riscv_zbs) \ + && defined(__riscv_zvfbfmin) \ + && defined(__riscv_zvfbfwma) \ + && defined(__riscv_zvfh) \ + && defined(__riscv_sscofpmf) \ + && defined(__riscv_sstc) \ + && defined(__riscv_svinval) \ + && defined(__riscv_svnapot) \ + && defined(__riscv_svpbmt) \ + && defined(__riscv_xtheadba) \ + && defined(__riscv_xtheadbb) \ + && defined(__riscv_xtheadbs) \ + && defined(__riscv_xtheadcmo) \ + && defined(__riscv_xtheadcondmov) \ + && defined(__riscv_xtheadfmemidx) \ + && defined(__riscv_xtheadsync) \ + && defined(__riscv_xtheadvdot)) +#error "unexpected arch" +#endif + +int main() +{ + return 0; +} diff --git a/gcc/testsuite/gdc.dg/gcov.exp b/gcc/testsuite/gdc.dg/gcov.exp index a65d000..3f0234e 100644 --- a/gcc/testsuite/gdc.dg/gcov.exp +++ b/gcc/testsuite/gdc.dg/gcov.exp @@ -21,12 +21,19 @@ load_lib gdc-dg.exp load_lib gcov.exp global GDC_UNDER_TEST +global GCOV_UNDER_TEST -# For now find gcov in the same directory as $GDC_UNDER_TEST. -if { ![is_remote host] && [string match "*/*" [lindex $GDC_UNDER_TEST 0]] } { - set GCOV [file dirname [lindex $GDC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] +# For now find gcov in the same directory as $GDC_UNDER_TEST, unless +# GCOV_UNDER_TEST is defined. + +if ![info exists GCOV_UNDER_TEST] { + if { ![is_remote host] && [string match "*/*" [lindex $GDC_UNDER_TEST 0]] } { + set GCOV [file dirname [lindex $GDC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] + } else { + set GCOV [gcc-transform-out-of-tree gcov] + } } else { - set GCOV [gcc-transform-out-of-tree gcov] + set GCOV $GCOV_UNDER_TEST } # Initialize harness. diff --git a/gcc/testsuite/gfortran.dg/coarray/coindexed_3.f08 b/gcc/testsuite/gfortran.dg/coarray/coindexed_3.f08 index 29c2b3a..7fd2085 100644 --- a/gcc/testsuite/gfortran.dg/coarray/coindexed_3.f08 +++ b/gcc/testsuite/gfortran.dg/coarray/coindexed_3.f08 @@ -9,6 +9,7 @@ program pr98903 integer :: a[*] type(team_type) :: team + team = get_team() me = this_image() n = num_images() a = 42 diff --git a/gcc/testsuite/gfortran.dg/coarray/coindexed_5.f90 b/gcc/testsuite/gfortran.dg/coarray/coindexed_5.f90 new file mode 100644 index 0000000..c35ec10 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/coarray/coindexed_5.f90 @@ -0,0 +1,80 @@ +!{ dg-do run } + +! Check coindexes with team= or team_number= are working. + +program coindexed_5 + use, intrinsic :: iso_fortran_env + + type(team_type) :: parentteam, team, formed_team + integer :: t_num= 42, stat = 42, lhs + integer(kind=2) :: st_num=42 + integer :: caf(2)[*] + + parentteam = get_team() + + caf = [23, 32] + form team(t_num, team, new_index=1) + form team(t_num, formed_team) + + change team(team, cell[*] => caf(2)) + ! for get_from_remote + ! Checking against caf_single is very limitted. + if (cell[1, team_number=t_num] /= 32) stop 1 + if (cell[1, team_number=st_num] /= 32) stop 2 + if (cell[1, team=parentteam] /= 32) stop 3 + + ! Check that team_number is validated + lhs = cell[1, team_number=5, stat=stat] + if (stat /= 1) stop 4 + + ! Check that only access to active teams is valid + stat = 42 + lhs = cell[1, team=formed_team, stat=stat] + if (stat /= 1) stop 5 + + ! for send_to_remote + ! Checking against caf_single is very limitted. + cell[1, team_number=t_num] = 45 + if (cell /= 45) stop 11 + cell[1, team_number=st_num] = 46 + if (cell /= 46) stop 12 + cell[1, team=parentteam] = 47 + if (cell /= 47) stop 13 + + ! Check that team_number is validated + stat = -1 + cell[1, team_number=5, stat=stat] = 0 + if (stat /= 1) stop 14 + + ! Check that only access to active teams is valid + stat = 42 + cell[1, team=formed_team, stat=stat] = -1 + if (stat /= 1) stop 15 + + ! for transfer_between_remotes + ! Checking against caf_single is very limitted. + cell[1, team_number=t_num] = caf(1)[1, team_number=-1] + if (cell /= 23) stop 21 + cell[1, team_number=st_num] = caf(2)[1, team_number=-1] + ! cell is an alias for caf(2) and has been overwritten by caf(1)! + if (cell /= 23) stop 22 + cell[1, team=parentteam] = caf(1)[1, team= team] + if (cell /= 23) stop 23 + + ! Check that team_number is validated + stat = -1 + cell[1, team_number=5, stat=stat] = caf(1)[1, team_number= -1] + if (stat /= 1) stop 24 + stat = -1 + cell[1, team_number=t_num] = caf(1)[1, team_number= -2, stat=stat] + if (stat /= 1) stop 25 + + ! Check that only access to active teams is valid + stat = 42 + cell[1, team=formed_team, stat=stat] = caf(1)[1] + if (stat /= 1) stop 26 + stat = 42 + cell[1] = caf(1)[1, team=formed_team, stat=stat] + if (stat /= 1) stop 27 + end team +end program coindexed_5 diff --git a/gcc/testsuite/gfortran.dg/coarray/get_team_1.f90 b/gcc/testsuite/gfortran.dg/coarray/get_team_1.f90 new file mode 100644 index 0000000..f37d1c7 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/coarray/get_team_1.f90 @@ -0,0 +1,29 @@ +!{ dg-do compile } + +! PR 97210 +! Tests get_team syntax + + use iso_fortran_env + implicit none + type(team_type) :: team, ret + integer :: level + + ret = get_team() + ret = get_team('abc') !{ dg-error "must be INTEGER" } + ret = get_team(level, 'abc') !{ dg-error "Too many arguments" } + ret = get_team([1,2]) !{ dg-error "must be a scalar" } + ret = get_team(team) !{ dg-error "must be INTEGER" } + + ret = get_team(INITIAL_TEAM) + ret = get_team(CURRENT_TEAM) + ret = get_team(PARENT_TEAM) + ret = get_team(INITIAL_TEAM, CURRENT_TEAM) !{ dg-error "Too many arguments" } + + level = INITIAL_TEAM + ret = get_team(level) + ret = get_team(99) !{ dg-error "specify one of the INITIAL_TEAM, PARENT_TEAM" } + level = 99 + ret = get_team(level) + level = get_team() !{ dg-error "Cannot convert TYPE\\(team_type\\)" } +end + diff --git a/gcc/testsuite/gfortran.dg/coarray/image_status_1.f08 b/gcc/testsuite/gfortran.dg/coarray/image_status_1.f08 index 098a2bb..b7ec5a6 100644 --- a/gcc/testsuite/gfortran.dg/coarray/image_status_1.f08 +++ b/gcc/testsuite/gfortran.dg/coarray/image_status_1.f08 @@ -18,7 +18,7 @@ program test_image_status_1 isv = image_status(k2) ! Ok isv = image_status(k4) ! Ok isv = image_status(k8) ! Ok - isv = image_status(1, team=1) ! { dg-error "'team' argument of 'image_status' intrinsic at \\(1\\) not yet supported" } + isv = image_status(1, team=1) ! { dg-error "shall be of type 'team_type'" } isv = image_status() ! { dg-error "Missing actual argument 'image' in call to 'image_status' at \\(1\\)" } isv = image_status(team=1) ! { dg-error "Missing actual argument 'image' in call to 'image_status' at \\(1\\)" } diff --git a/gcc/testsuite/gfortran.dg/coarray_10.f90 b/gcc/testsuite/gfortran.dg/coarray_10.f90 index 53917b5..6f453d5 100644 --- a/gcc/testsuite/gfortran.dg/coarray_10.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_10.f90 @@ -21,7 +21,7 @@ subroutine this_image_check() integer,save :: z(4)[*], i j = this_image(a,dim=3) ! { dg-error "not a valid codimension index" } - j = this_image(dim=3) ! { dg-error "DIM argument without COARRAY argument" } + j = this_image(dim=3) ! { dg-error "'dim' argument without 'coarray' argument" } i = image_index(i, [ 1 ]) ! { dg-error "Expected coarray variable" } i = image_index(z, 2) ! { dg-error "must be a rank one array" } end subroutine this_image_check diff --git a/gcc/testsuite/gfortran.dg/coarray_49.f90 b/gcc/testsuite/gfortran.dg/coarray_49.f90 index 370e3fd..fd8549b 100644 --- a/gcc/testsuite/gfortran.dg/coarray_49.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_49.f90 @@ -5,5 +5,5 @@ program p integer :: x[*] - print *, image_index (x, [1.0]) ! { dg-error "shall be INTEGER" } + print *, image_index (x, [1.0]) ! { dg-error "must be INTEGER" } end diff --git a/gcc/testsuite/gfortran.dg/coarray_collectives_12.f90 b/gcc/testsuite/gfortran.dg/coarray_collectives_12.f90 index 299ea62..2d8a39a 100644 --- a/gcc/testsuite/gfortran.dg/coarray_collectives_12.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_collectives_12.f90 @@ -20,6 +20,6 @@ program test call co_broadcast(val3, source_image=res,stat=stat3, errmsg=errmesg3) end program test -! { dg-final { scan-tree-dump-times "_gfortran_caf_co_broadcast \\(&desc.., _gfortran_caf_num_images \\(0, -1\\), &stat1, errmesg1, 6\\);" 1 "original" } } +! { dg-final { scan-tree-dump-times "_gfortran_caf_co_broadcast \\(&desc.., _gfortran_caf_num_images \\(0B, 0B\\), &stat1, errmesg1, 6\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "_gfortran_caf_co_broadcast \\(&val2, 4, &stat2, errmesg2, 7\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "_gfortran_caf_co_broadcast \\(&desc.., res, &stat3, errmesg3, 8\\);" 1 "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_collectives_16.f90 b/gcc/testsuite/gfortran.dg/coarray_collectives_16.f90 index 8419cf9..05a1350 100644 --- a/gcc/testsuite/gfortran.dg/coarray_collectives_16.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_collectives_16.f90 @@ -33,6 +33,6 @@ contains end function hc end program test -! { dg-final { scan-tree-dump-times "_gfortran_caf_co_reduce \\(&desc.., fr, 4, _gfortran_caf_num_images \\(0, -1\\), &stat1, errmesg1, 0, 6\\);" 1 "original" } } +! { dg-final { scan-tree-dump-times "_gfortran_caf_co_reduce \\(&desc.., fr, 4, _gfortran_caf_num_images \\(0B, 0B\\), &stat1, errmesg1, 0, 6\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "_gfortran_caf_co_reduce \\(&val2, gz, 0, 4, &stat2, errmesg2, 0, 7\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "_gfortran_caf_co_reduce \\(&desc.., hc, 1, res, &stat3, errmesg3, 99, 8\\);" 1 "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_critical_2.f90 b/gcc/testsuite/gfortran.dg/coarray_critical_2.f90 new file mode 100644 index 0000000..702611c --- /dev/null +++ b/gcc/testsuite/gfortran.dg/coarray_critical_2.f90 @@ -0,0 +1,30 @@ +!{ dg-do compile } +!{ dg-additional-options "-fcoarray=lib" } + +! Test critical syntax errors with stat= and errmsg= specifiers + + implicit none + integer :: istat + character(len=30) :: err + integer(kind=1) :: too_small_stat + + critical (stat=err) !{ dg-error "must be a scalar INTEGER" } + continue + end critical + + critical (stat=istat, stat=istat) !{ dg-error "Duplicate STAT" } + continue + end critical !{ dg-error "Expecting END PROGRAM" } + + critical (stat=istat, errmsg=istat) !{ dg-error "must be a scalar CHARACTER variable" } + continue + end critical + + critical (stat=istat, errmsg=err, errmsg=err) !{ dg-error "Duplicate ERRMSG" } + continue + end critical !{ dg-error "Expecting END PROGRAM" } + + critical (stat=too_small_stat) !{ dg-error "scalar INTEGER variable of at least kind 2" } + continue + end critical +end diff --git a/gcc/testsuite/gfortran.dg/coarray_critical_3.f90 b/gcc/testsuite/gfortran.dg/coarray_critical_3.f90 new file mode 100644 index 0000000..cd609bd --- /dev/null +++ b/gcc/testsuite/gfortran.dg/coarray_critical_3.f90 @@ -0,0 +1,32 @@ +! { dg-do run } +! { dg-options "-fcoarray=lib -fdump-tree-original -lcaf_single" } +! { dg-additional-options "-latomic" { target libatomic_available } } + +! PR 87939 +! Test critical construct with stat= and errmsg= specifiers +! + use, intrinsic :: iso_fortran_env, only: int16 + implicit none + integer :: istat = 42 + integer(kind=int16) :: istat16 = 42 + character(len=30) :: err = 'unchanged' + integer :: fail = 0 + + critical (stat=istat, errmsg=err) + if (istat /= 0) fail = 1 + if (trim(err) /= 'unchanged') fail = 2 + end critical + + if (fail /= 0) stop fail + + critical (stat=istat16, errmsg=err) + if (istat16 /= 0) fail = 3 + if (trim(err) /= 'unchanged') fail = 4 + end critical + + if (fail /= 0) stop fail +end + +! { dg-final { scan-tree-dump "_gfortran_caf_lock \\(caf_token\\.\[0-9\]+, 0, 1, 0B, &istat, &err, 30\\);" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_lock \\(caf_token\\.\[0-9\]+, 0, 1, 0B, &stat\\.\[0-9\]+, &err, 30\\);" "original" } } +! { dg-final { scan-tree-dump-times "_gfortran_caf_unlock \\(caf_token\\.\[0-9\]+, 0, 1, &stat\\.\[0-9\]+, 0B, 0\\);" 2 "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_this_image_1.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_this_image_1.f90 index 63cca3e..7939a79 100644 --- a/gcc/testsuite/gfortran.dg/coarray_lib_this_image_1.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_lib_this_image_1.f90 @@ -19,8 +19,8 @@ end ! { dg-final { scan-tree-dump-times "bar \\(real\\(kind=4\\)\\\[2\\\] \\* restrict x, void \\* restrict caf_token.., integer\\(kind=\[48\]\\) caf_offset..\\)" 1 "original" } } ! { dg-final { scan-tree-dump-times "mylcobound = 5;" 1 "original" } } ! { dg-final { scan-tree-dump-times "parm...dim\\\[1\\\].lbound = 5;" 1 "original" } } -! { dg-final { scan-tree-dump-times "myucobound =\[^\n\r\]* parm...dim\\\[1\\\].lbound \\+ \[^\n\r]*_gfortran_caf_num_images \\(0, -1\\).? \\+ -?\[0-9\]+\\);" 1 "original" } } +! { dg-final { scan-tree-dump-times "myucobound =\[^\n\r\]* parm...dim\\\[1\\\].lbound \\+ \[^\n\r]*_gfortran_caf_num_images \\(0B, 0B\\).? \\+ -?\[0-9\]+\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "mylbound = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "mythis_image = _gfortran_caf_this_image \\(0\\);" 1 "original" } } +! { dg-final { scan-tree-dump-times "mythis_image = _gfortran_caf_this_image \\(0B\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "bar \\(x, caf_token.., 0\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "_gfortran_caf_init \\(&argc, &argv\\);" 1 "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_this_image_2.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_this_image_2.f90 index a27d740..31a7677 100644 --- a/gcc/testsuite/gfortran.dg/coarray_lib_this_image_2.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_lib_this_image_2.f90 @@ -19,8 +19,8 @@ end ! { dg-final { scan-tree-dump-times "bar \\(struct array02_real\\(kind=4\\) & restrict x, void \\* restrict caf_token.., integer\\(kind=\[48\]\\) caf_offset..\\)" 1 "original" } } ! { dg-final { scan-tree-dump-times "mylcobound = 5;" 1 "original" } } ! { dg-final { scan-tree-dump-times "parm...dim\\\[1\\\].lbound = 5;" 1 "original" } } -! { dg-final { scan-tree-dump-times "myucobound =\[^\n\r\]* parm...dim\\\[1\\\].lbound \\+ \[^\n\r\]*_gfortran_caf_num_images \\(0, -1\\).? \\+ -?\[0-9\]+\\);" 1 "original" } } +! { dg-final { scan-tree-dump-times "myucobound =\[^\n\r\]* parm...dim\\\[1\\\].lbound \\+ \[^\n\r\]*_gfortran_caf_num_images \\(0B, 0B\\).? \\+ -?\[0-9\]+\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "mylbound = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "mythis_image = _gfortran_caf_this_image \\(0\\);" 1 "original" } } +! { dg-final { scan-tree-dump-times "mythis_image = _gfortran_caf_this_image \\(0B\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "bar \\(&parm.\[0-9\]+, caf_token.\[0-9\]+, \\(integer\\(kind=\[48\]\\)\\) parm.\[0-9\]+.data - \\(integer\\(kind=\[48\]\\)\\) x\\);" 1 "original" } } ! { dg-final { scan-tree-dump-times "_gfortran_caf_init \\(&argc, &argv\\);" 1 "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_this_image_1.f90 b/gcc/testsuite/gfortran.dg/coarray_this_image_1.f90 index 1fe2318..5a609d8 100644 --- a/gcc/testsuite/gfortran.dg/coarray_this_image_1.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_this_image_1.f90 @@ -1,19 +1,52 @@ -! { dg-do compile } -! { dg-options "-fdump-tree-original -fcoarray=single" } +!{ dg-do run } +!{ dg-options "-fdump-tree-original -fcoarray=single" } ! -j1 = this_image(distance=4) -j2 = this_image(5) + +use, intrinsic :: iso_fortran_env, only: team_type +integer :: caf[2,*] +integer, allocatable :: res(:) +type(team_type) :: team + +form team(1, team, new_index=MOD(this_image() + 43, num_images()) + 1) +j1 = this_image() +if (j1 /= 1) then + print *, me, ":", j1 + stop 1 +endif +res = this_image(caf) +if (any (res /= [1, 1])) then + print *, me, ":", res + stop 2 +endif +j2 = this_image(caf, 1) +if (j2 /= 1) then + print *, me, ":", j2 + stop 3 +endif +j3 = this_image(team) +if (j3 /= MOD(this_image() + 43, num_images()) +1) then + print *, me, ":", j3 + stop 4 +endif +res = this_image(caf, team) +if (any(res /= [1, 1])) then + print *, me, ":", res + stop 5 +endif +j4 = this_image(caf, 1, team) +if (j4 /= 1) then + print *, me, ":", j4 + stop 6 +endif +associate(me => this_image()) +end associate k1 = num_images() -k2 = num_images(6) -k3 = num_images(distance=7) -k4 = num_images(distance=8, failed=.true.) -k5 = num_images(failed=.false.) +k2 = num_images(team) +k3 = num_images(-1) end -! { dg-final { scan-tree-dump-times "j1 = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "j2 = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "k1 = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "k2 = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "k3 = 1;" 1 "original" } } -! { dg-final { scan-tree-dump-times "k4 = 0;" 1 "original" } } -! { dg-final { scan-tree-dump-times "k5 = 1;" 1 "original" } } +! { dg-final { scan-tree-dump-times "j\[1-4\] = 1;" 4 "original" } } +! { dg-final { scan-tree-dump-times "A\\.\[0-9\]+\\\[2\\\] = \\\{1, 1\\\};" 4 "original" } } +! { dg-final { scan-tree-dump "k1 = 1;" "original" } } +! { dg-final { scan-tree-dump "k2 = 1;" "original" } } +! { dg-final { scan-tree-dump "k3 = 1;" "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_this_image_2.f90 b/gcc/testsuite/gfortran.dg/coarray_this_image_2.f90 index 002c897..9713e3d 100644 --- a/gcc/testsuite/gfortran.dg/coarray_this_image_2.f90 +++ b/gcc/testsuite/gfortran.dg/coarray_this_image_2.f90 @@ -1,19 +1,57 @@ -! { dg-do compile } -! { dg-options "-fdump-tree-original -fcoarray=lib" } +!{ dg-do run } +!{ dg-additional-options "-fdump-tree-original -fcoarray=lib -lcaf_single" } ! -j1 = this_image(distance=4) -j2 = this_image(5) + +use, intrinsic :: iso_fortran_env, only: team_type +integer :: caf[2,*] +integer, allocatable :: res(:) +type(team_type) :: team + +form team(1, team, new_index=MOD(this_image() + 43, num_images()) + 1) + +associate(me => this_image()) +j1 = this_image() +if (j1 /= 1) then + print *, me, ":", j1 + stop 1 +endif +res = this_image(caf) +if (any (res /= [1, 1])) then + print *, me, ":", res + stop 2 +endif +j2 = this_image(caf, 1) +if (j2 /= 1) then + print *, me, ":", j2 + stop 3 +endif +j3 = this_image(team) +if (j3 /= MOD(this_image() + 43, num_images()) +1) then + print *, me, ":", j3 + stop 4 +endif +res = this_image(caf, team) +if (any(res /= [1, 1])) then + print *, me, ":", res + stop 5 +endif +j4 = this_image(caf, 1, team) +if (j4 /= 1) then + print *, me, ":", j4 + stop 6 +endif +end associate k1 = num_images() -k2 = num_images(6) -k3 = num_images(distance=7) -k4 = num_images(distance=8, failed=.true.) -k5 = num_images(failed=.false.) +k2 = num_images(team) +k3 = num_images(-1) +k4 = num_images(1) end -! { dg-final { scan-tree-dump-times "j1 = _gfortran_caf_this_image \\(4\\);" 1 "original" } } -! { dg-final { scan-tree-dump-times "j2 = _gfortran_caf_this_image \\(5\\);" 1 "original" } } -! { dg-final { scan-tree-dump-times "k1 = _gfortran_caf_num_images \\(0, -1\\);" 1 "original" } } -! { dg-final { scan-tree-dump-times "k2 = _gfortran_caf_num_images \\(6, -1\\);" 1 "original" } } -! { dg-final { scan-tree-dump-times "k3 = _gfortran_caf_num_images \\(7, -1\\);" 1 "original" } } -! { dg-final { scan-tree-dump-times "k4 = _gfortran_caf_num_images \\(8, 1\\);" 1 "original" } } -! { dg-final { scan-tree-dump-times "k5 = _gfortran_caf_num_images \\(0, 0\\);" 1 "original" } } +! { dg-final { scan-tree-dump "j1 = _gfortran_caf_this_image \\(0B\\);" "original" } } +! { dg-final { scan-tree-dump "j3 = _gfortran_caf_this_image \\(team\\);" "original" } } +! { dg-final { scan-tree-dump-times "D\\.\[0-9\]+ = _gfortran_caf_this_image \\(team\\) \\+ -1;" 2 "original" } } +! { dg-final { scan-tree-dump-times "D\\.\[0-9\]+ = _gfortran_caf_this_image \\(0B\\) \\+ -1;" 2 "original" } } +! { dg-final { scan-tree-dump "k1 = _gfortran_caf_num_images \\(0B, 0B\\);" "original" } } +! { dg-final { scan-tree-dump "k2 = _gfortran_caf_num_images \\(team, 0B\\);" "original" } } +! { dg-final { scan-tree-dump "k3 = _gfortran_caf_num_images \\(0B, &D\\.\[0-9\]+\\);" "original" } } +! { dg-final { scan-tree-dump "k4 = _gfortran_caf_num_images \\(0B, &D\\.\[0-9\]+\\);" "original" } } diff --git a/gcc/testsuite/gfortran.dg/coarray_this_image_3.f90 b/gcc/testsuite/gfortran.dg/coarray_this_image_3.f90 new file mode 100644 index 0000000..b8433b2 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/coarray_this_image_3.f90 @@ -0,0 +1,31 @@ +! { dg-do compile } +! { dg-options "-fcoarray=lib" } + + +use, intrinsic :: iso_fortran_env, only: team_type +integer :: caf[*] +integer, allocatable :: res(:) +type(team_type) :: team + +j1 = this_image() ! ok +j1 = this_image('bar') !{ dg-error "First argument of 'this_image'" } +res = this_image(caf) ! ok +res = this_image(caf, caf) !{ dg-error "Second argument of 'this_image'" } +j2 = this_image(caf, 1) ! ok +j3 = this_image(caf, 'foo') !{ dg-error "Second argument of 'this_image'" } +j4 = this_image(caf, [1, 2]) !{ dg-error "Second argument of 'this_image'" } +j5 = this_image(team) ! ok +j6 = this_image(team, caf) !{ dg-error "Second argument of 'this_image'" } +res = this_image(caf, team) ! ok +res = this_image(caf, team, 'foo') !{ dg-error "shall be of type 'team_type'" } +j4 = this_image(caf, 1, team) ! ok +j5 = this_image(caf, 1, team, 'baz') !{ dg-error "Too many arguments in call" } +j6 = this_image(dim=1, team=team, coarray=caf) + +k1 = num_images() ! ok +k2 = num_images(team) ! ok +k3 = num_images(team, 2) !{ dg-error "Too many arguments in call to" } +k4 = num_images(1) ! ok +k5 = num_images('abc') !{ dg-error "'team/team_number' argument of 'num_images' intrinsic" } +k6 = num_images(1, team) !{ dg-error "Too many arguments in call to" } +end diff --git a/gcc/testsuite/gfortran.dg/move_alloc_11.f90 b/gcc/testsuite/gfortran.dg/move_alloc_11.f90 new file mode 100644 index 0000000..d33e0ce --- /dev/null +++ b/gcc/testsuite/gfortran.dg/move_alloc_11.f90 @@ -0,0 +1,23 @@ +!{ dg-do compile } + +! General error checking for move_alloc parameter list. + +integer, allocatable :: i, o +integer :: st, s2 +character(30) :: e, e2 + + call move_alloc(i, o, STAT=st) + call move_alloc(i, o, STAT=st, STAT=s2) !{ dg-error "Keyword 'stat' at \\(1\\) has already appeared in the current argument list" } + call move_alloc(i, o, STAT=e) !{ dg-error "STAT= argument at \\(1\\) must be a scalar INTEGER variable of at least kind 2" } + call move_alloc(i, o, STAT=[st, s2]) !{ dg-error "STAT= argument at \\(1\\) must be a scalar INTEGER variable of at least kind 2" } + call move_alloc(i, o, STAT=.TRUE.) !{ dg-error "STAT= argument at \\(1\\) must be a scalar INTEGER variable of at least kind 2" } + + call move_alloc(i, o, STAT=st, ERRMSG=e) + call move_alloc(i, o, ERRMSG=e) + call move_alloc(i, o, ERRMSG=e, ERRMSG=e2) !{ dg-error "Keyword 'errmsg' at \\(1\\) has already appeared in the current argument list" } + call move_alloc(i, o, ERRMSG=st) !{ dg-error "ERRMSG= argument at \\(1\\) must be a scalar CHARACTER variable of at least kind 1" } + call move_alloc(i, o, ERRMSG=.TRUE.) !{ dg-error "ERRMSG= argument at \\(1\\) must be a scalar CHARACTER variable of at least kind 1" } + + +end + diff --git a/gcc/testsuite/gfortran.dg/num_images_1.f90 b/gcc/testsuite/gfortran.dg/num_images_1.f90 index dac34ba..e03857c 100644 --- a/gcc/testsuite/gfortran.dg/num_images_1.f90 +++ b/gcc/testsuite/gfortran.dg/num_images_1.f90 @@ -5,5 +5,5 @@ program foo implicit none integer k5 - k5 = num_images(failed=.false.) ! { dg-error "argument to NUM_IMAGES" } + k5 = num_images(failed=.false.) ! { dg-error "Cannot find keyword named 'failed' in call to 'num_images'" } end program foo diff --git a/gcc/testsuite/gfortran.dg/pr102458.f90 b/gcc/testsuite/gfortran.dg/pr102458.f90 index 555e497..7c13084 100644 --- a/gcc/testsuite/gfortran.dg/pr102458.f90 +++ b/gcc/testsuite/gfortran.dg/pr102458.f90 @@ -9,7 +9,7 @@ end program p block - integer :: a(get_team()) = 1 ! { dg-error "Automatic array" } + integer :: a(get_team()) = 1 ! { dg-error "Automatic array | ISO_FORTRAN_ENV | must be of INTEGER" } print *, a end block end diff --git a/gcc/testsuite/gfortran.dg/team_change_2.f90 b/gcc/testsuite/gfortran.dg/team_change_2.f90 new file mode 100644 index 0000000..66fe63c --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_change_2.f90 @@ -0,0 +1,93 @@ +!{ dg-do compile } +!{ dg-additional-options "-fcoarray=lib" } + +! PR 87939 +! Tests change team syntax + + use iso_fortran_env, only : team_type + implicit none + type(team_type) :: team + integer :: new_team, istat + character(len=30) :: err + integer :: caf[*], caf2[*] + + new_team = mod(this_image(),2)+1 + + form team (new_team,team) + + change team !{ dg-error "Syntax error in CHANGE TEAM statement" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + change team (err) !{ dg-error "must be a scalar expression of type TEAM_TYPE" } + continue + end team + + change team (team, stat=err) !{ dg-error "must be a scalar INTEGER" } + continue + end team + + change team (team, stat=istat, stat=istat) !{ dg-error "Duplicate STAT" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + change team (team, stat=istat, errmsg=istat) !{ dg-error "must be a scalar CHARACTER variable" } + continue + end team + + change team (team, stat=istat, errmsg=str, errmsg=str) !{ dg-error "Duplicate ERRMSG" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + +1234 if (istat /= 0) stop 1 !{ dg-error "leaves CHANGE TEAM" } + + change team (team) + go to 1234 !{ dg-error "leaves CHANGE TEAM" } + end team + + call foo(team) + + ! F2018, C1113 + change team (team, caf[3,*] => caf) !{ dg-error "Codimension decl name" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + change team (team, c[3,*] => caf, c => caf2) !{ dg-error "Duplicate name" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + change team (team, c[3,*] => caf, caf => caf2) !{ dg-error "Codimension decl name" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + change team (team, caf2[3,*] => caf, c => caf2) !{ dg-error "Codimension decl name" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + ! F2018, C1114 + change team (team, c => [caf, caf2]) !{ dg-error "a named coarray" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + ! F2018, C1115 + change team (team, c => caf, c2 => caf) !{ dg-error "duplicates selector at" } + continue + end team !{ dg-error "Expecting END PROGRAM statement" } + + t: change team(team) + exit t + end team t + + change team(team) + exit t !{ dg-error "EXIT statement at \\(1\\) is not within construct 't'" } + end team +contains + subroutine foo(team) + type(team_type) :: team + + change team (team) + return !{ dg-error "Image control statement" } + end team + end subroutine +end + diff --git a/gcc/testsuite/gfortran.dg/team_change_3.f90 b/gcc/testsuite/gfortran.dg/team_change_3.f90 new file mode 100644 index 0000000..bc30c40 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_change_3.f90 @@ -0,0 +1,29 @@ +!{ dg-do run } +!{ dg-additional-options "-fcoarray=lib -fdump-tree-original -lcaf_single" } +!{ dg-additional-options "-latomic" { target libatomic_available } } + +! PR 87939 +! Tests change team stat= and errmsg= specifiers + + use iso_fortran_env, only : team_type + implicit none + type(team_type) :: team + integer :: new_team, istat = 42 + character(len=30) :: err = 'unchanged' + + new_team = mod(this_image(),2)+1 + + form team (new_team,team) + + change team (team, stat=istat) + if (istat /= 0) stop 1 + end team + + change team (team, stat=istat, errmsg=err) + if (trim(err) /= 'unchanged') stop 2 + end team + +end + +! { dg-final { scan-tree-dump "_gfortran_caf_change_team \\(team, &istat, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_change_team \\(team, &istat, &err, 30\\)" "original" } } diff --git a/gcc/testsuite/gfortran.dg/team_end_2.f90 b/gcc/testsuite/gfortran.dg/team_end_2.f90 new file mode 100644 index 0000000..c27b59d --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_end_2.f90 @@ -0,0 +1,42 @@ +!{ dg-do compile } +!{ dg-additional-options "-fcoarray=lib" } + +! PR 87939 +! Tests change team syntax + + use iso_fortran_env, only : team_type + implicit none + type(team_type) :: team + integer :: new_team, istat + character(len=30) :: err + + new_team = mod(this_image(),2)+1 + + form team (new_team,team) + + change team (team) + continue + end team (stat=err) ! { dg-error "must be a scalar INTEGER" } + + change team (team) + continue + end team (stat=istat, stat=istat) ! { dg-error "Duplicate STAT" } + + change team (team) + continue + end team (stat=istat, errmsg=istat) ! { dg-error "must be a scalar CHARACTER variable" } + + change team (team) + continue + end team (stat=istat, errmsg=err, errmsg=err) ! { dg-error "Duplicate ERRMSG" } + + t: change team (team) + continue + end team (stat=istat) t ! ok + + t2: change team (team) + continue + end team ! { dg-error "Expected block name of 't2' in END TEAM" } + end team t2 ! close the team correctly to catch other errors +end + diff --git a/gcc/testsuite/gfortran.dg/team_end_3.f90 b/gcc/testsuite/gfortran.dg/team_end_3.f90 new file mode 100644 index 0000000..9cd7d4c --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_end_3.f90 @@ -0,0 +1,41 @@ +!{ dg-do run } +!{ dg-additional-options "-fcoarray=lib -fdump-tree-original -lcaf_single" } +!{ dg-additional-options "-latomic" { target libatomic_available } } + +! PR 87939 +! Tests end team stat= and errmsg= specifiers + + use iso_fortran_env, only : team_type + implicit none + type(team_type) :: team + integer :: new_team, istat = 42 + character(len=30) :: err = 'unchanged' + integer, allocatable :: sample(:)[:] + integer, allocatable :: scal_caf[:] + + new_team = mod(this_image(),2)+1 + + form team (new_team,team) + + change team (team) + allocate(sample(5)[*], scal_caf[*]) + if (.NOT. allocated(sample)) stop 1 + if (.NOT. allocated(scal_caf)) stop 2 + end team (stat=istat) + if (istat /= 0) stop 3 + if (allocated(sample)) stop 4 + if (allocated(scal_caf)) stop 5 + + deallocate(sample, stat=istat) + if (istat == 0) stop 6 + + istat = 42 + t: change team (team) + continue + end team (stat=istat, errmsg=err) t + if (istat /= 0) stop 7 + if (trim(err) /= 'unchanged') stop 8 +end + +! { dg-final { scan-tree-dump "_gfortran_caf_end_team \\(&istat, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_end_team \\(&istat, &err, 30\\)" "original" } } diff --git a/gcc/testsuite/gfortran.dg/team_form_2.f90 b/gcc/testsuite/gfortran.dg/team_form_2.f90 new file mode 100644 index 0000000..5c6d81f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_form_2.f90 @@ -0,0 +1,27 @@ +!{ dg-do compile } +!{ dg-additional-options "-fcoarray=lib" } + +! PR 87939 +! Tests form team syntax errors + + use iso_fortran_env, only : team_type + implicit none + integer :: istat, new_team + character(len=30) :: err + type(team_type) :: team + + new_team = mod(this_image(),2)+1 + + form team ! { dg-error "Syntax error in FORM TEAM statement" } + form team (new_team) ! { dg-error "Syntax error in FORM TEAM statement" } + form team (new_team,err) ! { dg-error "must be a scalar expression of type TEAM_TYPE" } + form team (new_team,team,istat) ! { dg-error "Syntax error in FORM TEAM statement" } + form team (new_team,team,stat=istat,stat=istat) ! { dg-error "Duplicate STAT" } + form team (new_team,team,stat=istat,errmsg=istat) ! { dg-error "must be a scalar CHARACTER variable" } + form team (new_team,team,stat=istat,errmsg=err,errmsg=err) ! { dg-error "Duplicate ERRMSG" } + form team (new_team,team,new_index=1,new_index=1) ! { dg-error "Duplicate NEW_INDEX" } + form team (new_team,team,new_index=err) ! { dg-error "must be a scalar INTEGER" } + form team (new_team,team,new_index=1,new_index=1,stat=istat,errmsg=err) ! { dg-error "Duplicate NEW_INDEX" } + form team (new_team,team,new_index=1,stat=istat,errmsg=err,new_index=9) ! { dg-error "Duplicate NEW_INDEX" } + +end diff --git a/gcc/testsuite/gfortran.dg/team_form_3.f90 b/gcc/testsuite/gfortran.dg/team_form_3.f90 new file mode 100644 index 0000000..d9aae33 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_form_3.f90 @@ -0,0 +1,34 @@ +!{ dg-do run } +!{ dg-additional-options "-fcoarray=lib -fdump-tree-original -lcaf_single" } +!{ dg-additional-options "-latomic" { target libatomic_available } } + +! PR 87939 +! Tests form team with stat= and errmsg= + + use iso_fortran_env, only : team_type + implicit none + integer :: istat = 42, new_team + character(len=30) :: err = "unchanged" + type(team_type) :: team + + new_team = mod(this_image(),2)+1 + + form team (new_team,team) + form team (new_team,team,stat=istat) + if (istat /= 0) stop 1 + form team (new_team,team,stat=istat, errmsg=err) + if (trim(err) /= 'unchanged') stop 2 + form team (new_team,team,new_index=1) + istat = 42 + form team (new_team,team,new_index=1,stat=istat) + if (istat /= 0) stop 3 + form team (new_team,team,new_index=1,stat=istat,errmsg=err) + if (trim(err) /= 'unchanged') stop 4 +end + +! { dg-final { scan-tree-dump "_gfortran_caf_form_team \\(new_team, &team, 0B, 0B, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_form_team \\(new_team, &team, 0B, &istat, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_form_team \\(new_team, &team, 0B, &istat, &err, 30\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_form_team \\(new_team, &team, &C\\.\[0-9\]+, 0B, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_form_team \\(new_team, &team, &C\\.\[0-9\]+, &istat, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_form_team \\(new_team, &team, &C\\.\[0-9\]+, &istat, &err, 30\\)" "original" } } diff --git a/gcc/testsuite/gfortran.dg/team_get_1.f90 b/gcc/testsuite/gfortran.dg/team_get_1.f90 new file mode 100644 index 0000000..fe00ce8 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_get_1.f90 @@ -0,0 +1,27 @@ +!{ dg-do compile } +!{ dg-additional-options "-fcoarray=lib -fdump-tree-original" } + +! PR 87939 +! Tests get_team + + use iso_fortran_env + implicit none + type(team_type) :: team, ret + integer :: new_team, level + + new_team = mod(this_image(),2)+1 + + form team (new_team,team) + + ret = get_team() + ret = get_team(INITIAL_TEAM) + ret = get_team(PARENT_TEAM) + ret = get_team(CURRENT_TEAM) + level = INITIAL_TEAM + ret = get_team(level) + +end + +! { dg-final { scan-tree-dump "_gfortran_caf_get_team \\(0B\\)" "original" } } +! { dg-final { scan-tree-dump-times "_gfortran_caf_get_team \\(&C\.\[0-9\]+\\)" 3 "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_get_team \\(&level\\)" "original" } } diff --git a/gcc/testsuite/gfortran.dg/team_number_1.f90 b/gcc/testsuite/gfortran.dg/team_number_1.f90 index e44e17b..f0ee7d1 100644 --- a/gcc/testsuite/gfortran.dg/team_number_1.f90 +++ b/gcc/testsuite/gfortran.dg/team_number_1.f90 @@ -1,13 +1,13 @@ ! { dg-do run } ! { dg-options "-fcoarray=single" } ! -! Tests if team_number intrinsic fucntion works +! Tests if team_number intrinsic function works ! use iso_fortran_env, only : team_type implicit none - type(team_type) team + type(team_type) :: team integer, parameter :: standard_initial_value=-1 - integer new_team + integer :: new_team if (team_number()/=standard_initial_value) STOP 1 diff --git a/gcc/testsuite/gfortran.dg/team_sync_1.f90 b/gcc/testsuite/gfortran.dg/team_sync_1.f90 new file mode 100644 index 0000000..5b28651 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_sync_1.f90 @@ -0,0 +1,24 @@ +!{ dg-do compile } +!{ dg-additional-options "-fcoarray=lib" } + +! PR 87939 +! Test sync team syntax errors + + use iso_fortran_env, only : team_type + implicit none + integer :: istat + character(len=30) :: err + type(team_type) :: team + + form team (mod(this_image(),2)+1, team) + + change team (team) + sync team ! { dg-error "Syntax error in SYNC TEAM statement" } + sync team (err) ! { dg-error "must be a scalar expression of type TEAM_TYPE" } + sync team (team, istat) ! { dg-error "Syntax error in SYNC TEAM statement" } + sync team (team, stat=err) ! { dg-error "must be a scalar INTEGER" } + sync team (team, stat=istat, stat=istat) ! { dg-error "Duplicate STAT" } + sync team (team, stat=istat, errmsg=istat) ! { dg-error "must be a scalar CHARACTER variable" } + sync team (team, stat=istat, errmsg=err, errmsg=err) ! { dg-error "Duplicate ERRMSG" } + end team +end diff --git a/gcc/testsuite/gfortran.dg/team_sync_2.f90 b/gcc/testsuite/gfortran.dg/team_sync_2.f90 new file mode 100644 index 0000000..947f65d --- /dev/null +++ b/gcc/testsuite/gfortran.dg/team_sync_2.f90 @@ -0,0 +1,27 @@ +!{ dg-do run } +!{ dg-additional-options "-fcoarray=lib -fdump-tree-original -lcaf_single" } +!{ dg-additional-options "-latomic" { target libatomic_available } } + +! PR 87939 +! Test sync team statement +! + use iso_fortran_env, only : team_type + implicit none + integer :: istat = 42 + type(team_type) :: team + character(len=30) :: err = "unchanged" + + form team (mod(this_image(),2)+1, team) + + change team (team) + sync team (team) + sync team (team, stat=istat) + if (istat /= 0) stop 1 + sync team (team, stat=istat, errmsg=err) + if (trim(err) /= 'unchanged') stop 2 + end team +end + +! { dg-final { scan-tree-dump "_gfortran_caf_sync_team \\(team, 0B, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_sync_team \\(team, &istat, 0B, 0\\)" "original" } } +! { dg-final { scan-tree-dump "_gfortran_caf_sync_team \\(team, &istat, &err, 30\\)" "original" } } diff --git a/gcc/testsuite/gm2/pim/fail/constintarraybyte.mod b/gcc/testsuite/gm2/pim/fail/constintarraybyte.mod new file mode 100644 index 0000000..cbcc804 --- /dev/null +++ b/gcc/testsuite/gm2/pim/fail/constintarraybyte.mod @@ -0,0 +1,10 @@ +MODULE constintarraybyte ; + +FROM FormatStrings IMPORT Sprintf1 ; +FROM DynamicStrings IMPORT String, InitString ; + +VAR + s: String ; +BEGIN + s := Sprintf1 (InitString("abc%x\n"), 42) +END constintarraybyte. diff --git a/gcc/testsuite/gm2/pimlib/run/pass/format2.mod b/gcc/testsuite/gm2/pimlib/run/pass/format2.mod new file mode 100644 index 0000000..2ad6a8c --- /dev/null +++ b/gcc/testsuite/gm2/pimlib/run/pass/format2.mod @@ -0,0 +1,63 @@ +MODULE format2; + +FROM libc IMPORT exit, printf ; +FROM Terminal IMPORT Write, WriteLn; +FROM NumberIO IMPORT WriteCard; +FROM DynamicStrings IMPORT String, Length, char, InitString; +FROM FormatStrings IMPORT Sprintf1; + +PROCEDURE WriteString (s: String); +VAR + l, i: CARDINAL; +BEGIN + l := Length (s) ; + i := 0 ; + WHILE i < l DO + Write (char (s, i)) ; + INC (i) + END +END WriteString; + + +(* + assert - +*) + +PROCEDURE assert (cond: BOOLEAN; line: CARDINAL; file: ARRAY OF CHAR) ; +BEGIN + IF NOT cond + THEN + printf ("%s:%d assertion failed\n", file, line); + exit (1) + END +END assert ; + + +VAR + n: CARDINAL; + r, s: String; +BEGIN + n := 2; + r := InitString("%u pieces of cake") ; + WriteString (r) ; WriteLn ; + assert (Length (r) = 17, __LINE__, __FILE__) ; + s := Sprintf1 (r, n) ; + WriteCard (Length (s), 4) ; WriteLn ; + assert (Length (s) = 16, __LINE__, __FILE__) ; + + r := InitString("%d pieces of cake") ; + WriteString (r) ; WriteLn ; + assert (Length (r) = 17, __LINE__, __FILE__) ; + s := Sprintf1 (r, n) ; + WriteCard (Length (s), 4) ; WriteLn ; + assert (Length (s) = 16, __LINE__, __FILE__) ; + + r := InitString("%x pieces of cake") ; + WriteString (r) ; WriteLn ; + assert (Length (r) = 17, __LINE__, __FILE__) ; + s := Sprintf1 (r, n) ; + WriteCard (Length (s), 4) ; WriteLn ; + assert (Length (s) = 16, __LINE__, __FILE__) ; + + WriteString (InitString ('all tests pass')) ; WriteLn ; +END format2. diff --git a/gcc/testsuite/gnat.dg/gcov/gcov.exp b/gcc/testsuite/gnat.dg/gcov/gcov.exp index 4fa887d..031914a 100644 --- a/gcc/testsuite/gnat.dg/gcov/gcov.exp +++ b/gcc/testsuite/gnat.dg/gcov/gcov.exp @@ -21,12 +21,19 @@ load_lib gnat-dg.exp load_lib gcov.exp global GCC_UNDER_TEST +global GCOV_UNDER_TEST -# For now find gcov in the same directory as $GCC_UNDER_TEST. -if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { - set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/gcov +# For now find gcov in the same directory as $GCC_UNDER_TEST, unless +# GCOV_UNDER_TEST is defined. + +if ![info exists GCOV_UNDER_TEST] { + if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { + set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/gcov + } else { + set GCOV gcov + } } else { - set GCOV gcov + set GCOV $GCOV_UNDER_TEST } # Initialize harness. diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc index 2d35fa1..1c9e9b0 100644 --- a/gcc/tree-vect-loop.cc +++ b/gcc/tree-vect-loop.cc @@ -10059,7 +10059,7 @@ vect_update_nonlinear_iv (gimple_seq* stmts, tree vectype, } -/* Function vectorizable_induction +/* Function vectorizable_nonlinear_induction Check if STMT_INFO performs an nonlinear induction computation that can be vectorized. If VEC_STMT is also passed, vectorize the induction PHI: create @@ -10408,6 +10408,7 @@ vectorizable_induction (loop_vec_info loop_vinfo, poly_uint64 vf = LOOP_VINFO_VECT_FACTOR (loop_vinfo); unsigned i; tree expr; + tree index_vectype = NULL_TREE; gimple_stmt_iterator si; enum vect_induction_op_type induction_type = STMT_VINFO_LOOP_PHI_EVOLUTION_TYPE (stmt_info); @@ -10519,12 +10520,29 @@ vectorizable_induction (loop_vec_info loop_vinfo, "supported.\n"); return false; } - tree step_vectype = get_same_sized_vectype (TREE_TYPE (step_expr), vectype); + tree stept = TREE_TYPE (step_expr); + tree step_vectype = get_same_sized_vectype (stept, vectype); - /* Check for backend support of PLUS/MINUS_EXPR. */ - if (!directly_supported_p (PLUS_EXPR, step_vectype) - || !directly_supported_p (MINUS_EXPR, step_vectype)) - return false; + /* Check for target support of the vectorized arithmetic used here. */ + if (!target_supports_op_p (step_vectype, PLUS_EXPR, optab_default) + || !target_supports_op_p (step_vectype, MINUS_EXPR, optab_default)) + return false; + if (!nunits.is_constant ()) + { + if (!target_supports_op_p (step_vectype, MULT_EXPR, optab_default)) + return false; + /* FLOAT_EXPR when computing VEC_INIT for float inductions. */ + if (SCALAR_FLOAT_TYPE_P (stept)) + { + tree index_type = build_nonstandard_integer_type + (GET_MODE_BITSIZE (SCALAR_TYPE_MODE (stept)), 1); + + index_vectype = build_vector_type (index_type, nunits); + if (!can_float_p (TYPE_MODE (step_vectype), + TYPE_MODE (index_vectype), 1)) + return false; + } + } if (!vec_stmt) /* transformation not required. */ { @@ -10643,7 +10661,6 @@ vectorizable_induction (loop_vec_info loop_vinfo, nivs = 1; } gimple_seq init_stmts = NULL; - tree stept = TREE_TYPE (step_vectype); tree lupdate_mul = NULL_TREE; if (!nested_in_vect_loop) { @@ -10795,7 +10812,9 @@ vectorizable_induction (loop_vec_info loop_vinfo, + (vectype) [0, 1, 2, ...] * [step, step, step, ...]. */ gcc_assert (SCALAR_FLOAT_TYPE_P (TREE_TYPE (steps[0]))); gcc_assert (flag_associative_math); - tree index = build_index_vector (step_vectype, 0, 1); + gcc_assert (index_vectype != NULL_TREE); + + tree index = build_index_vector (index_vectype, 0, 1); new_name = gimple_convert (&init_stmts, TREE_TYPE (steps[0]), inits[0]); tree base_vec = gimple_build_vector_from_val (&init_stmts, @@ -11070,7 +11089,9 @@ vectorizable_induction (loop_vec_info loop_vinfo, + (vectype) [0, 1, 2, ...] * [step, step, step, ...]. */ gcc_assert (SCALAR_FLOAT_TYPE_P (TREE_TYPE (step_expr))); gcc_assert (flag_associative_math); - tree index = build_index_vector (step_vectype, 0, 1); + gcc_assert (index_vectype != NULL_TREE); + + tree index = build_index_vector (index_vectype, 0, 1); tree base_vec = gimple_build_vector_from_val (&stmts, step_vectype, new_name); tree step_vec = gimple_build_vector_from_val (&stmts, step_vectype, @@ -2395,11 +2395,11 @@ public: array_slice (vec<OtherT, A, vl_embed> *v) : m_base (v ? v->address () : nullptr), m_size (v ? v->length () : 0) {} - iterator begin () { return m_base; } - iterator end () { return m_base + m_size; } + iterator begin () { gcc_checking_assert (is_valid ()); return m_base; } + iterator end () { gcc_checking_assert (is_valid ()); return m_base + m_size; } - const_iterator begin () const { return m_base; } - const_iterator end () const { return m_base + m_size; } + const_iterator begin () const { gcc_checking_assert (is_valid ()); return m_base; } + const_iterator end () const { gcc_checking_assert (is_valid ()); return m_base + m_size; } value_type &front (); value_type &back (); |