From 33579b59aaf02eb726c62d0e63e51af2d94610f4 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Thu, 25 Apr 2019 08:32:16 -0600 Subject: re PR tree-optimization/90037 (-Wnull-dereference false positive after r269302) PR tree-optimization/90037 * Makefile.in (OBJS): Remove tree-ssa-phionlycprop.c * passes.def: Replace all instance of phi-only cprop with the lattice propagator. Move propagation pass from after erroneous path isolation to before erroneous path isolation. * tree-ssa-phionlycprop.c: Remove. * gcc.dg/tree-ssa/20030710-1.c: Update dump file to scan. * gcc.dg/isolate-2.c: Likewise. * gcc.dg/isolate-4.c: Likewise. * gcc.dg/pr19431.c: Accept either ordering of PHI args. * gcc.dg/pr90037.c: New test. From-SVN: r270574 --- gcc/ChangeLog | 9 + gcc/Makefile.in | 1 - gcc/passes.def | 27 +- gcc/testsuite/ChangeLog | 9 + gcc/testsuite/gcc.dg/pr90037.c | 161 ++++++++ gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c | 10 +- gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c | 6 +- gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c | 4 +- gcc/testsuite/gcc.dg/tree-ssa/pr19431.c | 2 +- gcc/tree-ssa-phionlycprop.c | 580 ----------------------------- 10 files changed, 199 insertions(+), 610 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/pr90037.c delete mode 100644 gcc/tree-ssa-phionlycprop.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ce8281f..f99a15c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2019-04-24 Jeff Law + + PR tree-optimization/90037 + * Makefile.in (OBJS): Remove tree-ssa-phionlycprop.c + * passes.def: Replace all instance of phi-only cprop with the + lattice propagator. Move propagation pass from after erroneous + path isolation to before erroneous path isolation. + * tree-ssa-phionlycprop.c: Remove. + 2019-04-24 Richard Biener PR middle-end/90213 diff --git a/gcc/Makefile.in b/gcc/Makefile.in index d186d71..5f43d9d 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1559,7 +1559,6 @@ OBJS = \ tree-ssa-loop.o \ tree-ssa-math-opts.o \ tree-ssa-operands.o \ - tree-ssa-phionlycprop.o \ tree-ssa-phiopt.o \ tree-ssa-phiprop.o \ tree-ssa-pre.o \ diff --git a/gcc/passes.def b/gcc/passes.def index 446a7c4..bc147c4 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -222,19 +222,13 @@ along with GCC; see the file COPYING3. If not see trying to move or duplicate pass_dominator somewhere earlier. */ NEXT_PASS (pass_thread_jumps); NEXT_PASS (pass_dominator, true /* may_peel_loop_headers_p */); - /* At this point the majority of const/copy propagations - are exposed. Go ahead and identify paths that should never - be executed in a conforming program and isolate those paths. - - This will expose more degenerate PHIs in the main path and - expose more PRE/DOM optimization opportunities. */ + /* Threading can leave many const/copy propagations in the IL. + Clean them up. Failure to do so well can lead to false + positives from warnings for erroneous code. */ + NEXT_PASS (pass_copy_prop); + /* Identify paths that should never be executed in a conforming + program and isolate those paths. */ NEXT_PASS (pass_isolate_erroneous_paths); - /* The only const/copy propagation opportunities left after - DOM and erroneous path isolation should be due to degenerate PHI nodes. - So rather than run the full propagators, run a specialized pass which - only examines PHIs to discover const/copy propagation - opportunities. */ - NEXT_PASS (pass_phi_only_cprop); NEXT_PASS (pass_dse); NEXT_PASS (pass_reassoc, true /* insert_powi_p */); NEXT_PASS (pass_dce); @@ -321,13 +315,10 @@ along with GCC; see the file COPYING3. If not see NEXT_PASS (pass_strlen); NEXT_PASS (pass_thread_jumps); NEXT_PASS (pass_vrp, false /* warn_array_bounds_p */); - /* The only const/copy propagation opportunities left after - DOM and VRP should be due to degenerate PHI nodes. So rather than - run the full propagators, run a specialized pass which - only examines PHIs to discover const/copy propagation - opportunities. */ NEXT_PASS (pass_warn_restrict); - NEXT_PASS (pass_phi_only_cprop); + /* Threading can leave many const/copy propagations in the IL. + Clean them up. */ + NEXT_PASS (pass_copy_prop); NEXT_PASS (pass_dse); NEXT_PASS (pass_cd_dce); NEXT_PASS (pass_forwprop); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 60357eb..eeef8b2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2019-04-24 Jeff Law + + PR tree-optimization/90037 + * gcc.dg/tree-ssa/20030710-1.c: Update dump file to scan. + * gcc.dg/isolate-2.c: Likewise. + * gcc.dg/isolate-4.c: Likewise. + * gcc.dg/pr19431.c: Accept either ordering of PHI args. + * gcc.dg/pr90037.c: New test. + 2019-04-25 Jakub Jelinek PR c++/44648 diff --git a/gcc/testsuite/gcc.dg/pr90037.c b/gcc/testsuite/gcc.dg/pr90037.c new file mode 100644 index 0000000..70f9ad2 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr90037.c @@ -0,0 +1,161 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -Wnull-dereference" } */ + +typedef __SIZE_TYPE__ size_t; +typedef unsigned long int uintmax_t; + +struct group +{ + char *gr_name; + char *gr_passwd; + unsigned gr_gid; + char **gr_mem; +}; + +struct passwd +{ + char *pw_name; + char *pw_passwd; + + unsigned pw_uid; + unsigned pw_gid; + char *pw_gecos; + char *pw_dir; + char *pw_shell; +}; + +extern struct group *getgrnam (const char *); +extern struct group *getgrgid (unsigned); +extern void endgrent (void); +extern struct passwd *getpwnam (const char *); +extern void endpwent (void); +extern unsigned long int strtoul (const char *__restrict, + char **__restrict, int); + +char const * +parse_with_separator (char const *spec, char const *separator, + unsigned *uid, unsigned *gid, + char **username, char **groupname) +{ + static const char *E_invalid_user = "invalid user"; + static const char *E_invalid_group = "invalid group"; + static const char *E_bad_spec = "invalid spec"; + const char *error_msg; + struct passwd *pwd; + struct group *grp; + char *u; + char const *g; + char *gname = 0; + unsigned unum = *uid; + unsigned gnum = gid ? *gid : (unsigned)-1; + + error_msg = 0; + + if (username) + *username = 0; + + if (groupname) + *groupname = 0; + + u = 0; + if (separator == 0) + { + if (*spec) + u = __builtin_strdup (spec); + } + else + { + size_t ulen = separator - spec; + if (ulen != 0) + { + u = __builtin_malloc (ulen + 1); + __builtin_memcpy (u, spec, ulen + 1); + u[ulen] = '\0'; + } + } + + g = (separator == 0 || *(separator + 1) == '\0' ? 0 : separator + 1); + + if (u != 0) + { + pwd = (*u == '+' ? 0 : getpwnam (u)); + if (pwd == 0) + { + _Bool use_login_group = (separator != 0 && g == 0); + if (use_login_group) + { + error_msg = E_bad_spec; + } + else + { + unsigned long int tmp; + tmp = strtoul (u, 0, 10); + if (tmp <= (1ul << 31) && (unsigned) tmp != (unsigned) -1) + unum = tmp; + else + error_msg = E_invalid_user; + } + } + else + { + unum = pwd->pw_uid; + if (g == 0 && separator != 0) + { + char buf[128]; + gnum = pwd->pw_gid; + grp = getgrgid (gnum); + + gname = buf; + + if (grp) + gname = __builtin_strdup (grp->gr_name); + else + __builtin_snprintf (buf, sizeof(buf), "%ju", (uintmax_t)gnum); + + endgrent (); + } + } + + endpwent (); + } + + if (g != 0 && error_msg == 0) + { + grp = (*g == '+' ? 0 : getgrnam (g)); + if (grp == 0) + { + unsigned long int tmp = strtoul (g, 0, 10); + + if (tmp <= (1ul << 31) && (unsigned) tmp != (unsigned) -1) + gnum = tmp; + else + error_msg = E_invalid_group; + } + else + gnum = grp->gr_gid; + endgrent (); + gname = __builtin_strdup (g); + } + + if (error_msg == 0) + { + *uid = unum; + if (gid) + *gid = gnum; + if (username) + { + *username = u; + u = 0; + } + if (groupname) + { + *groupname = gname; + gname = 0; + } + } + + __builtin_free (u); + __builtin_free (gname); + return error_msg ? error_msg : 0; +} + diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c index 3dd3ba8..529c79b 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-phicprop1" } */ +/* { dg-options "-O1 -fdump-tree-copyprop2" } */ extern void abort (void); extern void blah (void); @@ -42,14 +42,14 @@ record_component_aliases (type) /* The call to blah should have been eliminated. If the call is not eliminated, then dominator optimizations failed and it'll be impossible to delete other unnecessary code. */ -/* { dg-final { scan-tree-dump-not "blah \\(\\)" "phicprop1" } } */ +/* { dg-final { scan-tree-dump-not "blah \\(\\)" "copyprop2" } } */ /* There should be two IF conditionals. */ -/* { dg-final { scan-tree-dump-times "if " 2 "phicprop1"} } */ +/* { dg-final { scan-tree-dump-times "if " 2 "copyprop2"} } */ /* There should be a single load of type.binfo. */ -/* { dg-final { scan-tree-dump-times "type\\.binfo" 1 "phicprop1"} } */ +/* { dg-final { scan-tree-dump-times "type\\.binfo" 1 "copyprop2"} } */ /* There should be two loads of vec.length. */ -/* { dg-final { scan-tree-dump-times "vec.length" 2 "phicprop1"} } */ +/* { dg-final { scan-tree-dump-times "vec.length" 2 "copyprop2"} } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c b/gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c index b993849..f5cd23a 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/isolate-2.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -fdelete-null-pointer-checks -fisolate-erroneous-paths-attribute -fdump-tree-isolate-paths -fdump-tree-phicprop1" } */ +/* { dg-options "-O2 -fdelete-null-pointer-checks -fisolate-erroneous-paths-attribute -fdump-tree-isolate-paths -fdump-tree-forwprop3" } */ /* { dg-skip-if "" keeps_null_pointer_checks } */ @@ -34,9 +34,9 @@ bar (void) a return statement. We test this twice, once where the NULL flows from a PHI, the second with an explicit return 0 in the IL. - We also verify that after isolation phi-cprop simplifies the + We also verify that after isolation cprop simplifies the return statement so that it returns &z directly. */ /* { dg-final { scan-tree-dump-times "__builtin_trap" 2 "isolate-paths"} } */ -/* { dg-final { scan-tree-dump-times "return &z;" 1 "phicprop1"} } */ +/* { dg-final { scan-tree-dump-times "return &z;" 1 "forwprop3"} } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c b/gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c index 0a88d7d..f357e16 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/isolate-4.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -fdelete-null-pointer-checks -fisolate-erroneous-paths-attribute -fdump-tree-isolate-paths -fdump-tree-phicprop1" } */ +/* { dg-options "-O2 -fdelete-null-pointer-checks -fisolate-erroneous-paths-attribute -fdump-tree-isolate-paths -fdump-tree-ccp3" } */ /* { dg-skip-if "" keeps_null_pointer_checks } */ @@ -26,6 +26,6 @@ bar (void) We also verify that after isolation phi-cprop simplifies the return statement so that it returns &z directly. */ /* { dg-final { scan-tree-dump-times "__builtin_trap" 2 "isolate-paths"} } */ -/* { dg-final { scan-tree-dump-times "foo .&z.;" 1 "phicprop1"} } */ +/* { dg-final { scan-tree-dump-times "foo .&z.;" 1 "ccp3"} } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr19431.c b/gcc/testsuite/gcc.dg/tree-ssa/pr19431.c index 2f656ce..a1f46c7 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/pr19431.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr19431.c @@ -24,4 +24,4 @@ int f(int k, int i1, int j1) return *f1; } -/* { dg-final { scan-tree-dump "\[^\r\n\]*_. = PHI \]*>" "optimized" } } */ +/* { dg-final { scan-tree-dump "\[^\r\n\]*_. = PHI <\[ij\]1_\[^,\]*, \[ij\]1_\[^>\]*>" "optimized" } } */ diff --git a/gcc/tree-ssa-phionlycprop.c b/gcc/tree-ssa-phionlycprop.c deleted file mode 100644 index f367800..0000000 --- a/gcc/tree-ssa-phionlycprop.c +++ /dev/null @@ -1,580 +0,0 @@ -/* Const/Copy propagation originating from degenerate PHIs - Copyright (C) 2001-2019 Free Software Foundation, Inc. - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 3, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING3. If not see -. */ - -#include "config.h" -#include "system.h" -#include "coretypes.h" -#include "backend.h" -#include "cfghooks.h" -#include "tree.h" -#include "gimple.h" -#include "ssa.h" -#include "fold-const.h" -#include "cfgloop.h" -#include "gimple-pretty-print.h" -#include "gimple-fold.h" -#include "tree-eh.h" -#include "gimple-iterator.h" -#include "tree-cfg.h" -#include "tree-pass.h" -#include "tree-ssa-propagate.h" - - -/* PHI-ONLY copy and constant propagation. This pass is meant to clean - up degenerate PHIs created by or exposed by jump threading. */ - -/* Given a statement STMT, which is either a PHI node or an assignment, - remove it from the IL. */ - -static void -remove_stmt_or_phi (gimple *stmt) -{ - gimple_stmt_iterator gsi = gsi_for_stmt (stmt); - - if (gimple_code (stmt) == GIMPLE_PHI) - remove_phi_node (&gsi, true); - else - { - gsi_remove (&gsi, true); - release_defs (stmt); - } -} - -/* Given a statement STMT, which is either a PHI node or an assignment, - return the "rhs" of the node, in the case of a non-degenerate - phi, NULL is returned. */ - -static tree -get_rhs_or_phi_arg (gimple *stmt) -{ - if (gimple_code (stmt) == GIMPLE_PHI) - return degenerate_phi_result (as_a (stmt)); - else if (gimple_assign_single_p (stmt)) - return gimple_assign_rhs1 (stmt); - else - gcc_unreachable (); -} - - -/* Given a statement STMT, which is either a PHI node or an assignment, - return the "lhs" of the node. */ - -static tree -get_lhs_or_phi_result (gimple *stmt) -{ - if (gimple_code (stmt) == GIMPLE_PHI) - return gimple_phi_result (stmt); - else if (is_gimple_assign (stmt)) - return gimple_assign_lhs (stmt); - else - gcc_unreachable (); -} - -/* Propagate RHS into all uses of LHS (when possible). - - RHS and LHS are derived from STMT, which is passed in solely so - that we can remove it if propagation is successful. - - When propagating into a PHI node or into a statement which turns - into a trivial copy or constant initialization, set the - appropriate bit in INTERESTING_NAMEs so that we will visit those - nodes as well in an effort to pick up secondary optimization - opportunities. - - NEED_EH_CLEANUP tracks blocks that need their EH information - cleaned up after changing EH information on a statement. */ - -static bool -propagate_rhs_into_lhs (gimple *stmt, tree lhs, tree rhs, - bitmap interesting_names, bitmap need_eh_cleanup) -{ - bool cfg_altered = false; - - /* First verify that propagation is valid. */ - if (may_propagate_copy (lhs, rhs)) - { - use_operand_p use_p; - imm_use_iterator iter; - gimple *use_stmt; - bool all = true; - - /* Dump details. */ - if (dump_file && (dump_flags & TDF_DETAILS)) - { - fprintf (dump_file, " Replacing '"); - print_generic_expr (dump_file, lhs, dump_flags); - fprintf (dump_file, "' with %s '", - (TREE_CODE (rhs) != SSA_NAME ? "constant" : "variable")); - print_generic_expr (dump_file, rhs, dump_flags); - fprintf (dump_file, "'\n"); - } - - /* Walk over every use of LHS and try to replace the use with RHS. - At this point the only reason why such a propagation would not - be successful would be if the use occurs in an ASM_EXPR. */ - FOR_EACH_IMM_USE_STMT (use_stmt, iter, lhs) - { - /* Leave debug stmts alone. If we succeed in propagating - all non-debug uses, we'll drop the DEF, and propagation - into debug stmts will occur then. */ - if (gimple_debug_bind_p (use_stmt)) - continue; - - /* It's not always safe to propagate into an ASM_EXPR. */ - if (gimple_code (use_stmt) == GIMPLE_ASM - && ! may_propagate_copy_into_asm (lhs)) - { - all = false; - continue; - } - - /* It's not ok to propagate into the definition stmt of RHS. - : - # prephitmp.12_36 = PHI - g_67.1_6 = prephitmp.12_36; - goto ; - While this is strictly all dead code we do not want to - deal with this here. */ - if (TREE_CODE (rhs) == SSA_NAME - && SSA_NAME_DEF_STMT (rhs) == use_stmt) - { - all = false; - continue; - } - - /* Dump details. */ - if (dump_file && (dump_flags & TDF_DETAILS)) - { - fprintf (dump_file, " Original statement:"); - print_gimple_stmt (dump_file, use_stmt, 0, dump_flags); - } - - /* Propagate the RHS into this use of the LHS. */ - FOR_EACH_IMM_USE_ON_STMT (use_p, iter) - propagate_value (use_p, rhs); - - /* Special cases to avoid useless calls into the folding - routines, operand scanning, etc. - - Propagation into a PHI may cause the PHI to become - a degenerate, so mark the PHI as interesting. No other - actions are necessary. */ - if (gimple_code (use_stmt) == GIMPLE_PHI) - { - tree result; - - /* Dump details. */ - if (dump_file && (dump_flags & TDF_DETAILS)) - { - fprintf (dump_file, " Updated statement:"); - print_gimple_stmt (dump_file, use_stmt, 0, dump_flags); - } - - result = get_lhs_or_phi_result (use_stmt); - bitmap_set_bit (interesting_names, SSA_NAME_VERSION (result)); - continue; - } - - /* From this point onward we are propagating into a - real statement. Folding may (or may not) be possible, - we may expose new operands, expose dead EH edges, - etc. */ - /* NOTE tuples. In the tuples world, fold_stmt_inplace - cannot fold a call that simplifies to a constant, - because the GIMPLE_CALL must be replaced by a - GIMPLE_ASSIGN, and there is no way to effect such a - transformation in-place. We might want to consider - using the more general fold_stmt here. */ - { - gimple_stmt_iterator gsi = gsi_for_stmt (use_stmt); - fold_stmt_inplace (&gsi); - } - - /* Sometimes propagation can expose new operands to the - renamer. */ - update_stmt (use_stmt); - - /* Dump details. */ - if (dump_file && (dump_flags & TDF_DETAILS)) - { - fprintf (dump_file, " Updated statement:"); - print_gimple_stmt (dump_file, use_stmt, 0, dump_flags); - } - - /* If we replaced a variable index with a constant, then - we would need to update the invariant flag for ADDR_EXPRs. */ - if (gimple_assign_single_p (use_stmt) - && TREE_CODE (gimple_assign_rhs1 (use_stmt)) == ADDR_EXPR) - recompute_tree_invariant_for_addr_expr - (gimple_assign_rhs1 (use_stmt)); - - /* If we cleaned up EH information from the statement, - mark its containing block as needing EH cleanups. */ - if (maybe_clean_or_replace_eh_stmt (use_stmt, use_stmt)) - { - bitmap_set_bit (need_eh_cleanup, gimple_bb (use_stmt)->index); - if (dump_file && (dump_flags & TDF_DETAILS)) - fprintf (dump_file, " Flagged to clear EH edges.\n"); - } - - /* Propagation may expose new trivial copy/constant propagation - opportunities. */ - if (gimple_assign_single_p (use_stmt) - && TREE_CODE (gimple_assign_lhs (use_stmt)) == SSA_NAME - && (TREE_CODE (gimple_assign_rhs1 (use_stmt)) == SSA_NAME - || is_gimple_min_invariant (gimple_assign_rhs1 (use_stmt)))) - { - tree result = get_lhs_or_phi_result (use_stmt); - bitmap_set_bit (interesting_names, SSA_NAME_VERSION (result)); - } - - /* Propagation into these nodes may make certain edges in - the CFG unexecutable. We want to identify them as PHI nodes - at the destination of those unexecutable edges may become - degenerates. */ - else if (gimple_code (use_stmt) == GIMPLE_COND - || gimple_code (use_stmt) == GIMPLE_SWITCH - || gimple_code (use_stmt) == GIMPLE_GOTO) - { - tree val; - - if (gimple_code (use_stmt) == GIMPLE_COND) - val = fold_binary_loc (gimple_location (use_stmt), - gimple_cond_code (use_stmt), - boolean_type_node, - gimple_cond_lhs (use_stmt), - gimple_cond_rhs (use_stmt)); - else if (gimple_code (use_stmt) == GIMPLE_SWITCH) - val = gimple_switch_index (as_a (use_stmt)); - else - val = gimple_goto_dest (use_stmt); - - if (val && is_gimple_min_invariant (val)) - { - basic_block bb = gimple_bb (use_stmt); - edge te = find_taken_edge (bb, val); - if (!te) - continue; - - edge_iterator ei; - edge e; - gimple_stmt_iterator gsi; - gphi_iterator psi; - - /* Remove all outgoing edges except TE. */ - for (ei = ei_start (bb->succs); (e = ei_safe_edge (ei));) - { - if (e != te) - { - /* Mark all the PHI nodes at the destination of - the unexecutable edge as interesting. */ - for (psi = gsi_start_phis (e->dest); - !gsi_end_p (psi); - gsi_next (&psi)) - { - gphi *phi = psi.phi (); - - tree result = gimple_phi_result (phi); - int version = SSA_NAME_VERSION (result); - - bitmap_set_bit (interesting_names, version); - } - - te->probability += e->probability; - - remove_edge (e); - cfg_altered = true; - } - else - ei_next (&ei); - } - - gsi = gsi_last_bb (gimple_bb (use_stmt)); - gsi_remove (&gsi, true); - - /* And fixup the flags on the single remaining edge. */ - te->flags &= ~(EDGE_TRUE_VALUE | EDGE_FALSE_VALUE); - te->flags &= ~EDGE_ABNORMAL; - te->flags |= EDGE_FALLTHRU; - } - } - } - - /* Ensure there is nothing else to do. */ - gcc_assert (!all || has_zero_uses (lhs)); - - /* If we were able to propagate away all uses of LHS, then - we can remove STMT. */ - if (all) - remove_stmt_or_phi (stmt); - } - return cfg_altered; -} - -/* STMT is either a PHI node (potentially a degenerate PHI node) or - a statement that is a trivial copy or constant initialization. - - Attempt to eliminate STMT by propagating its RHS into all uses of - its LHS. This may in turn set new bits in INTERESTING_NAMES - for nodes we want to revisit later. - - All exit paths should clear INTERESTING_NAMES for the result - of STMT. - - NEED_EH_CLEANUP tracks blocks that need their EH information - cleaned up after changing EH information on a statement. It is - not set or queried here, but passed along to children. */ - -static bool -eliminate_const_or_copy (gimple *stmt, bitmap interesting_names, - bitmap need_eh_cleanup) -{ - tree lhs = get_lhs_or_phi_result (stmt); - tree rhs; - int version = SSA_NAME_VERSION (lhs); - bool cfg_altered = false; - - /* If the LHS of this statement or PHI has no uses, then we can - just eliminate it. This can occur if, for example, the PHI - was created by block duplication due to threading and its only - use was in the conditional at the end of the block which was - deleted. */ - if (has_zero_uses (lhs)) - { - bitmap_clear_bit (interesting_names, version); - remove_stmt_or_phi (stmt); - return cfg_altered; - } - - /* Get the RHS of the assignment or PHI node if the PHI is a - degenerate. */ - rhs = get_rhs_or_phi_arg (stmt); - if (!rhs) - { - bitmap_clear_bit (interesting_names, version); - return cfg_altered; - } - - if (!virtual_operand_p (lhs)) - cfg_altered = propagate_rhs_into_lhs (stmt, lhs, rhs, - interesting_names, need_eh_cleanup); - else - { - gimple *use_stmt; - imm_use_iterator iter; - use_operand_p use_p; - /* For virtual operands we have to propagate into all uses as - otherwise we will create overlapping life-ranges. */ - FOR_EACH_IMM_USE_STMT (use_stmt, iter, lhs) - FOR_EACH_IMM_USE_ON_STMT (use_p, iter) - SET_USE (use_p, rhs); - if (SSA_NAME_OCCURS_IN_ABNORMAL_PHI (lhs)) - SSA_NAME_OCCURS_IN_ABNORMAL_PHI (rhs) = 1; - remove_stmt_or_phi (stmt); - } - - /* Note that STMT may well have been deleted by now, so do - not access it, instead use the saved version # to clear - T's entry in the worklist. */ - bitmap_clear_bit (interesting_names, version); - return cfg_altered; -} - -/* The first phase in degenerate PHI elimination. - - Eliminate the degenerate PHIs in BB, then recurse on the - dominator children of BB. - - INTERESTING_NAMES tracks SSA_NAMEs that we may want to revisit - in the future. It is not set or queried here, but passed along - to children. - - NEED_EH_CLEANUP tracks blocks that need their EH information - cleaned up after changing EH information on a statement. It is - not set or queried here, but passed along to children. */ - -static bool -eliminate_degenerate_phis_1 (basic_block bb, bitmap interesting_names, - bitmap need_eh_cleanup) -{ - gphi_iterator gsi; - basic_block son; - bool cfg_altered = false; - - for (gsi = gsi_start_phis (bb); !gsi_end_p (gsi);) - { - gphi *phi = gsi.phi (); - /* We might end up removing PHI so advance the iterator now. */ - gsi_next (&gsi); - cfg_altered |= eliminate_const_or_copy (phi, interesting_names, - need_eh_cleanup); - } - - /* Recurse into the dominator children of BB. */ - for (son = first_dom_son (CDI_DOMINATORS, bb); - son; - son = next_dom_son (CDI_DOMINATORS, son)) - cfg_altered |= eliminate_degenerate_phis_1 (son, interesting_names, - need_eh_cleanup); - - return cfg_altered; -} - - -/* A very simple pass to eliminate degenerate PHI nodes from the - IL. This is meant to be fast enough to be able to be run several - times in the optimization pipeline. - - Certain optimizations, particularly those which duplicate blocks - or remove edges from the CFG can create or expose PHIs which are - trivial copies or constant initializations. - - While we could pick up these optimizations in DOM or with the - combination of copy-prop and CCP, those solutions are far too - heavy-weight for our needs. - - This implementation has two phases so that we can efficiently - eliminate the first order degenerate PHIs and second order - degenerate PHIs. - - The first phase performs a dominator walk to identify and eliminate - the vast majority of the degenerate PHIs. When a degenerate PHI - is identified and eliminated any affected statements or PHIs - are put on a worklist. - - The second phase eliminates degenerate PHIs and trivial copies - or constant initializations using the worklist. This is how we - pick up the secondary optimization opportunities with minimal - cost. */ - -namespace { - -const pass_data pass_data_phi_only_cprop = -{ - GIMPLE_PASS, /* type */ - "phicprop", /* name */ - OPTGROUP_NONE, /* optinfo_flags */ - TV_TREE_PHI_CPROP, /* tv_id */ - ( PROP_cfg | PROP_ssa ), /* properties_required */ - 0, /* properties_provided */ - 0, /* properties_destroyed */ - 0, /* todo_flags_start */ - ( TODO_cleanup_cfg | TODO_update_ssa ), /* todo_flags_finish */ -}; - -class pass_phi_only_cprop : public gimple_opt_pass -{ -public: - pass_phi_only_cprop (gcc::context *ctxt) - : gimple_opt_pass (pass_data_phi_only_cprop, ctxt) - {} - - /* opt_pass methods: */ - opt_pass * clone () { return new pass_phi_only_cprop (m_ctxt); } - virtual bool gate (function *) { return flag_tree_dom != 0; } - virtual unsigned int execute (function *); - -}; // class pass_phi_only_cprop - -unsigned int -pass_phi_only_cprop::execute (function *fun) -{ - bool cfg_altered = false; - - /* Bitmap of blocks which need EH information updated. We cannot - update it on-the-fly as doing so invalidates the dominator tree. */ - auto_bitmap need_eh_cleanup; - - /* INTERESTING_NAMES is effectively our worklist, indexed by - SSA_NAME_VERSION. - - A set bit indicates that the statement or PHI node which - defines the SSA_NAME should be (re)examined to determine if - it has become a degenerate PHI or trivial const/copy propagation - opportunity. - - Experiments have show we generally get better compilation - time behavior with bitmaps rather than sbitmaps. */ - auto_bitmap interesting_names; - auto_bitmap interesting_names1; - - calculate_dominance_info (CDI_DOMINATORS); - cfg_altered = false; - - /* First phase. Eliminate degenerate PHIs via a dominator - walk of the CFG. - - Experiments have indicated that we generally get better - compile-time behavior by visiting blocks in the first - phase in dominator order. Presumably this is because walking - in dominator order leaves fewer PHIs for later examination - by the worklist phase. */ - cfg_altered = eliminate_degenerate_phis_1 (ENTRY_BLOCK_PTR_FOR_FN (fun), - interesting_names, - need_eh_cleanup); - - /* Second phase. Eliminate second order degenerate PHIs as well - as trivial copies or constant initializations identified by - the first phase or this phase. Basically we keep iterating - until our set of INTERESTING_NAMEs is empty. */ - while (!bitmap_empty_p (interesting_names)) - { - unsigned int i; - bitmap_iterator bi; - - /* EXECUTE_IF_SET_IN_BITMAP does not like its bitmap - changed during the loop. Copy it to another bitmap and - use that. */ - bitmap_copy (interesting_names1, interesting_names); - - EXECUTE_IF_SET_IN_BITMAP (interesting_names1, 0, i, bi) - { - tree name = ssa_name (i); - - /* Ignore SSA_NAMEs that have been released because - their defining statement was deleted (unreachable). */ - if (name) - cfg_altered - |= eliminate_const_or_copy (SSA_NAME_DEF_STMT (ssa_name (i)), - interesting_names, need_eh_cleanup); - } - } - - if (cfg_altered) - { - free_dominance_info (CDI_DOMINATORS); - /* If we changed the CFG schedule loops for fixup by cfgcleanup. */ - loops_state_set (LOOPS_NEED_FIXUP); - } - - /* Propagation of const and copies may make some EH edges dead. Purge - such edges from the CFG as needed. */ - if (!bitmap_empty_p (need_eh_cleanup)) - gimple_purge_all_dead_eh_edges (need_eh_cleanup); - - return 0; -} - -} // anon namespace - -gimple_opt_pass * -make_pass_phi_only_cprop (gcc::context *ctxt) -{ - return new pass_phi_only_cprop (ctxt); -} -- cgit v1.1 From aeec4861c41eb5afa5b0700103e6cc404047cc6d Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 25 Apr 2019 14:55:42 +0000 Subject: tree-pass.h (make_pass_phi_only_cprop): Remove. 2019-04-25 Richard Biener * tree-pass.h (make_pass_phi_only_cprop): Remove. * timevar.def (TV_TREE_PHI_CPROP): Likewise. From-SVN: r270575 --- gcc/ChangeLog | 5 +++++ gcc/timevar.def | 1 - gcc/tree-pass.h | 1 - 3 files changed, 5 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f99a15c..d5b00ee 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-04-25 Richard Biener + + * tree-pass.h (make_pass_phi_only_cprop): Remove. + * timevar.def (TV_TREE_PHI_CPROP): Likewise. + 2019-04-24 Jeff Law PR tree-optimization/90037 diff --git a/gcc/timevar.def b/gcc/timevar.def index 5415446..13cb470 100644 --- a/gcc/timevar.def +++ b/gcc/timevar.def @@ -165,7 +165,6 @@ DEFTIMEVAR (TV_TREE_SSA_THREAD_JUMPS , "backwards jump threading") DEFTIMEVAR (TV_TREE_SRA , "tree SRA") DEFTIMEVAR (TV_ISOLATE_ERRONEOUS_PATHS , "isolate eroneous paths") DEFTIMEVAR (TV_TREE_CCP , "tree CCP") -DEFTIMEVAR (TV_TREE_PHI_CPROP , "tree PHI const/copy prop") DEFTIMEVAR (TV_TREE_SPLIT_EDGES , "tree split crit edges") DEFTIMEVAR (TV_TREE_REASSOC , "tree reassociation") DEFTIMEVAR (TV_TREE_PRE , "tree PRE") diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h index 47be59b..3a0b380 100644 --- a/gcc/tree-pass.h +++ b/gcc/tree-pass.h @@ -389,7 +389,6 @@ extern gimple_opt_pass *make_pass_ch (gcc::context *ctxt); extern gimple_opt_pass *make_pass_ch_vect (gcc::context *ctxt); extern gimple_opt_pass *make_pass_ccp (gcc::context *ctxt); extern gimple_opt_pass *make_pass_split_paths (gcc::context *ctxt); -extern gimple_opt_pass *make_pass_phi_only_cprop (gcc::context *ctxt); extern gimple_opt_pass *make_pass_build_ssa (gcc::context *ctxt); extern gimple_opt_pass *make_pass_build_alias (gcc::context *ctxt); extern gimple_opt_pass *make_pass_build_ealias (gcc::context *ctxt); -- cgit v1.1 From 604ab090adf9c3acf9387627a477dd6b9f07a640 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Thu, 25 Apr 2019 10:00:28 -0700 Subject: x86: Update message for target_clones and unsupported ISAs Before AVX512F, processors with the newer ISAs also support the older ISAs, i.e., AVX2 processors also support AVX and SSE4, SSE4 processors also support SSSE3, ... After AVX512F, an AVX512XX processor may not support AVX512YY. It means AVX512XX features, except for AVX512F, can't be used to decide priority in target_clones. This patch updates error message for ISAs with P_ZERO priority. It also merges _feature_list into _isa_names_table and marks ISAs, which have unknown priority, with P_ZERO so that we only need to update one place to add a new ISA feature. gcc/ 2019-04-25 H.J. Lu PR target/89929 * config/i386/i386.c (feature_priority): Moved to file scope. (processor_features): Likewise. (processor_model): Likewise. (_arch_names_table): Likewise. (arch_names_table): Likewise. (_feature_list): Removed. (feature_list): Likewise. (_isa_names_table): Moved to file scope. Add priority. (isa_names_table): Likewise. (get_builtin_code_for_version): Replace feature_list with isa_names_table. Update error message for P_ZERO priority. gcc/testsuite/ 2019-04-25 Martin Liska H.J. Lu PR target/89929 * g++.target/i386/mv28.C: New test. * gcc.target/i386/mvc14.c: Likewise. * g++.target/i386/pr57362.C: Updated. From-SVN: r270578 --- gcc/ChangeLog | 15 + gcc/config/i386/i386.c | 490 +++++++++++++++----------------- gcc/testsuite/ChangeLog | 8 + gcc/testsuite/g++.target/i386/mv28.C | 26 ++ gcc/testsuite/g++.target/i386/pr57362.C | 2 +- gcc/testsuite/gcc.target/i386/mvc14.c | 16 ++ 6 files changed, 298 insertions(+), 259 deletions(-) create mode 100644 gcc/testsuite/g++.target/i386/mv28.C create mode 100644 gcc/testsuite/gcc.target/i386/mvc14.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d5b00ee..80f9748 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,18 @@ +2019-04-25 H.J. Lu + + PR target/89929 + * config/i386/i386.c (feature_priority): Moved to file scope. + (processor_features): Likewise. + (processor_model): Likewise. + (_arch_names_table): Likewise. + (arch_names_table): Likewise. + (_feature_list): Removed. + (feature_list): Likewise. + (_isa_names_table): Moved to file scope. Add priority. + (isa_names_table): Likewise. + (get_builtin_code_for_version): Replace feature_list with + isa_names_table. Update error message for P_ZERO priority. + 2019-04-25 Richard Biener * tree-pass.h (make_pass_phi_only_cprop): Remove. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 191f570..8a1ffd3 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -31834,6 +31834,229 @@ add_condition_to_bb (tree function_decl, tree version_decl, return bb3; } +/* Priority of i386 features, greater value is higher priority. This is + used to decide the order in which function dispatch must happen. For + instance, a version specialized for SSE4.2 should be checked for dispatch + before a version for SSE3, as SSE4.2 implies SSE3. */ +enum feature_priority +{ + P_ZERO = 0, + P_MMX, + P_SSE, + P_SSE2, + P_SSE3, + P_SSSE3, + P_PROC_SSSE3, + P_SSE4_A, + P_PROC_SSE4_A, + P_SSE4_1, + P_SSE4_2, + P_PROC_SSE4_2, + P_POPCNT, + P_AES, + P_PCLMUL, + P_AVX, + P_PROC_AVX, + P_BMI, + P_PROC_BMI, + P_FMA4, + P_XOP, + P_PROC_XOP, + P_FMA, + P_PROC_FMA, + P_BMI2, + P_AVX2, + P_PROC_AVX2, + P_AVX512F, + P_PROC_AVX512F +}; + +/* This is the order of bit-fields in __processor_features in cpuinfo.c */ +enum processor_features +{ + F_CMOV = 0, + F_MMX, + F_POPCNT, + F_SSE, + F_SSE2, + F_SSE3, + F_SSSE3, + F_SSE4_1, + F_SSE4_2, + F_AVX, + F_AVX2, + F_SSE4_A, + F_FMA4, + F_XOP, + F_FMA, + F_AVX512F, + F_BMI, + F_BMI2, + F_AES, + F_PCLMUL, + F_AVX512VL, + F_AVX512BW, + F_AVX512DQ, + F_AVX512CD, + F_AVX512ER, + F_AVX512PF, + F_AVX512VBMI, + F_AVX512IFMA, + F_AVX5124VNNIW, + F_AVX5124FMAPS, + F_AVX512VPOPCNTDQ, + F_AVX512VBMI2, + F_GFNI, + F_VPCLMULQDQ, + F_AVX512VNNI, + F_AVX512BITALG, + F_MAX +}; + +/* These are the values for vendor types and cpu types and subtypes + in cpuinfo.c. Cpu types and subtypes should be subtracted by + the corresponding start value. */ +enum processor_model +{ + M_INTEL = 1, + M_AMD, + M_CPU_TYPE_START, + M_INTEL_BONNELL, + M_INTEL_CORE2, + M_INTEL_COREI7, + M_AMDFAM10H, + M_AMDFAM15H, + M_INTEL_SILVERMONT, + M_INTEL_KNL, + M_AMD_BTVER1, + M_AMD_BTVER2, + M_AMDFAM17H, + M_INTEL_KNM, + M_INTEL_GOLDMONT, + M_INTEL_GOLDMONT_PLUS, + M_INTEL_TREMONT, + M_CPU_SUBTYPE_START, + M_INTEL_COREI7_NEHALEM, + M_INTEL_COREI7_WESTMERE, + M_INTEL_COREI7_SANDYBRIDGE, + M_AMDFAM10H_BARCELONA, + M_AMDFAM10H_SHANGHAI, + M_AMDFAM10H_ISTANBUL, + M_AMDFAM15H_BDVER1, + M_AMDFAM15H_BDVER2, + M_AMDFAM15H_BDVER3, + M_AMDFAM15H_BDVER4, + M_AMDFAM17H_ZNVER1, + M_INTEL_COREI7_IVYBRIDGE, + M_INTEL_COREI7_HASWELL, + M_INTEL_COREI7_BROADWELL, + M_INTEL_COREI7_SKYLAKE, + M_INTEL_COREI7_SKYLAKE_AVX512, + M_INTEL_COREI7_CANNONLAKE, + M_INTEL_COREI7_ICELAKE_CLIENT, + M_INTEL_COREI7_ICELAKE_SERVER, + M_AMDFAM17H_ZNVER2, + M_INTEL_COREI7_CASCADELAKE +}; + +struct _arch_names_table +{ + const char *const name; + const enum processor_model model; +}; + +static const _arch_names_table arch_names_table[] = +{ + {"amd", M_AMD}, + {"intel", M_INTEL}, + {"atom", M_INTEL_BONNELL}, + {"slm", M_INTEL_SILVERMONT}, + {"core2", M_INTEL_CORE2}, + {"corei7", M_INTEL_COREI7}, + {"nehalem", M_INTEL_COREI7_NEHALEM}, + {"westmere", M_INTEL_COREI7_WESTMERE}, + {"sandybridge", M_INTEL_COREI7_SANDYBRIDGE}, + {"ivybridge", M_INTEL_COREI7_IVYBRIDGE}, + {"haswell", M_INTEL_COREI7_HASWELL}, + {"broadwell", M_INTEL_COREI7_BROADWELL}, + {"skylake", M_INTEL_COREI7_SKYLAKE}, + {"skylake-avx512", M_INTEL_COREI7_SKYLAKE_AVX512}, + {"cannonlake", M_INTEL_COREI7_CANNONLAKE}, + {"icelake-client", M_INTEL_COREI7_ICELAKE_CLIENT}, + {"icelake-server", M_INTEL_COREI7_ICELAKE_SERVER}, + {"cascadelake", M_INTEL_COREI7_CASCADELAKE}, + {"bonnell", M_INTEL_BONNELL}, + {"silvermont", M_INTEL_SILVERMONT}, + {"goldmont", M_INTEL_GOLDMONT}, + {"goldmont-plus", M_INTEL_GOLDMONT_PLUS}, + {"tremont", M_INTEL_TREMONT}, + {"knl", M_INTEL_KNL}, + {"knm", M_INTEL_KNM}, + {"amdfam10h", M_AMDFAM10H}, + {"barcelona", M_AMDFAM10H_BARCELONA}, + {"shanghai", M_AMDFAM10H_SHANGHAI}, + {"istanbul", M_AMDFAM10H_ISTANBUL}, + {"btver1", M_AMD_BTVER1}, + {"amdfam15h", M_AMDFAM15H}, + {"bdver1", M_AMDFAM15H_BDVER1}, + {"bdver2", M_AMDFAM15H_BDVER2}, + {"bdver3", M_AMDFAM15H_BDVER3}, + {"bdver4", M_AMDFAM15H_BDVER4}, + {"btver2", M_AMD_BTVER2}, + {"amdfam17h", M_AMDFAM17H}, + {"znver1", M_AMDFAM17H_ZNVER1}, + {"znver2", M_AMDFAM17H_ZNVER2}, +}; + +/* These are the target attribute strings for which a dispatcher is + available, from fold_builtin_cpu. */ +struct _isa_names_table +{ + const char *const name; + const enum processor_features feature; + const enum feature_priority priority; +}; + +static const _isa_names_table isa_names_table[] = +{ + {"cmov", F_CMOV, P_ZERO}, + {"mmx", F_MMX, P_MMX}, + {"popcnt", F_POPCNT, P_POPCNT}, + {"sse", F_SSE, P_SSE}, + {"sse2", F_SSE2, P_SSE2}, + {"sse3", F_SSE3, P_SSE3}, + {"ssse3", F_SSSE3, P_SSSE3}, + {"sse4a", F_SSE4_A, P_SSE4_A}, + {"sse4.1", F_SSE4_1, P_SSE4_1}, + {"sse4.2", F_SSE4_2, P_SSE4_2}, + {"avx", F_AVX, P_AVX}, + {"fma4", F_FMA4, P_FMA4}, + {"xop", F_XOP, P_XOP}, + {"fma", F_FMA, P_FMA}, + {"avx2", F_AVX2, P_AVX2}, + {"avx512f", F_AVX512F, P_AVX512F}, + {"bmi", F_BMI, P_BMI}, + {"bmi2", F_BMI2, P_BMI2}, + {"aes", F_AES, P_AES}, + {"pclmul", F_PCLMUL, P_PCLMUL}, + {"avx512vl",F_AVX512VL, P_ZERO}, + {"avx512bw",F_AVX512BW, P_ZERO}, + {"avx512dq",F_AVX512DQ, P_ZERO}, + {"avx512cd",F_AVX512CD, P_ZERO}, + {"avx512er",F_AVX512ER, P_ZERO}, + {"avx512pf",F_AVX512PF, P_ZERO}, + {"avx512vbmi",F_AVX512VBMI, P_ZERO}, + {"avx512ifma",F_AVX512IFMA, P_ZERO}, + {"avx5124vnniw",F_AVX5124VNNIW, P_ZERO}, + {"avx5124fmaps",F_AVX5124FMAPS, P_ZERO}, + {"avx512vpopcntdq",F_AVX512VPOPCNTDQ, P_ZERO}, + {"avx512vbmi2", F_AVX512VBMI2, P_ZERO}, + {"gfni", F_GFNI, P_ZERO}, + {"vpclmulqdq", F_VPCLMULQDQ, P_ZERO}, + {"avx512vnni", F_AVX512VNNI, P_ZERO}, + {"avx512bitalg", F_AVX512BITALG, P_ZERO} +}; + /* This parses the attribute arguments to target in DECL and determines the right builtin to use to match the platform specification. It returns the priority value for this version decl. If PREDICATE_LIST @@ -31852,79 +32075,10 @@ get_builtin_code_for_version (tree decl, tree *predicate_list) char *tok_str = NULL; char *token; - /* Priority of i386 features, greater value is higher priority. This is - used to decide the order in which function dispatch must happen. For - instance, a version specialized for SSE4.2 should be checked for dispatch - before a version for SSE3, as SSE4.2 implies SSE3. */ - enum feature_priority - { - P_ZERO = 0, - P_MMX, - P_SSE, - P_SSE2, - P_SSE3, - P_SSSE3, - P_PROC_SSSE3, - P_SSE4_A, - P_PROC_SSE4_A, - P_SSE4_1, - P_SSE4_2, - P_PROC_SSE4_2, - P_POPCNT, - P_AES, - P_PCLMUL, - P_AVX, - P_PROC_AVX, - P_BMI, - P_PROC_BMI, - P_FMA4, - P_XOP, - P_PROC_XOP, - P_FMA, - P_PROC_FMA, - P_BMI2, - P_AVX2, - P_PROC_AVX2, - P_AVX512F, - P_PROC_AVX512F - }; - enum feature_priority priority = P_ZERO; - /* These are the target attribute strings for which a dispatcher is - available, from fold_builtin_cpu. */ - - static struct _feature_list - { - const char *const name; - const enum feature_priority priority; - } - const feature_list[] = - { - {"mmx", P_MMX}, - {"sse", P_SSE}, - {"sse2", P_SSE2}, - {"sse3", P_SSE3}, - {"sse4a", P_SSE4_A}, - {"ssse3", P_SSSE3}, - {"sse4.1", P_SSE4_1}, - {"sse4.2", P_SSE4_2}, - {"popcnt", P_POPCNT}, - {"aes", P_AES}, - {"pclmul", P_PCLMUL}, - {"avx", P_AVX}, - {"bmi", P_BMI}, - {"fma4", P_FMA4}, - {"xop", P_XOP}, - {"fma", P_FMA}, - {"bmi2", P_BMI2}, - {"avx2", P_AVX2}, - {"avx512f", P_AVX512F} - }; - - static unsigned int NUM_FEATURES - = sizeof (feature_list) / sizeof (struct _feature_list); + = sizeof (isa_names_table) / sizeof (_isa_names_table); unsigned int i; @@ -32123,27 +32277,28 @@ get_builtin_code_for_version (tree decl, tree *predicate_list) } for (i = 0; i < NUM_FEATURES; ++i) { - if (strcmp (token, feature_list[i].name) == 0) + if (strcmp (token, isa_names_table[i].name) == 0) { if (predicate_list) { predicate_arg = build_string_literal ( - strlen (feature_list[i].name) + 1, - feature_list[i].name); + strlen (isa_names_table[i].name) + 1, + isa_names_table[i].name); predicate_chain = tree_cons (predicate_decl, predicate_arg, predicate_chain); } /* Find the maximum priority feature. */ - if (feature_list[i].priority > priority) - priority = feature_list[i].priority; + if (isa_names_table[i].priority > priority) + priority = isa_names_table[i].priority; break; } } - if (predicate_list && i == NUM_FEATURES) + if (predicate_list && priority == P_ZERO) { error_at (DECL_SOURCE_LOCATION (decl), - "no dispatcher found for %s", token); + "ISA %qs is not supported in % attribute, " + "use % syntax", token); return 0; } token = strtok (NULL, ","); @@ -32678,187 +32833,6 @@ fold_builtin_cpu (tree fndecl, tree *args) DECL_FUNCTION_CODE (fndecl); tree param_string_cst = NULL; - /* This is the order of bit-fields in __processor_features in cpuinfo.c */ - enum processor_features - { - F_CMOV = 0, - F_MMX, - F_POPCNT, - F_SSE, - F_SSE2, - F_SSE3, - F_SSSE3, - F_SSE4_1, - F_SSE4_2, - F_AVX, - F_AVX2, - F_SSE4_A, - F_FMA4, - F_XOP, - F_FMA, - F_AVX512F, - F_BMI, - F_BMI2, - F_AES, - F_PCLMUL, - F_AVX512VL, - F_AVX512BW, - F_AVX512DQ, - F_AVX512CD, - F_AVX512ER, - F_AVX512PF, - F_AVX512VBMI, - F_AVX512IFMA, - F_AVX5124VNNIW, - F_AVX5124FMAPS, - F_AVX512VPOPCNTDQ, - F_AVX512VBMI2, - F_GFNI, - F_VPCLMULQDQ, - F_AVX512VNNI, - F_AVX512BITALG, - F_MAX - }; - - /* These are the values for vendor types and cpu types and subtypes - in cpuinfo.c. Cpu types and subtypes should be subtracted by - the corresponding start value. */ - enum processor_model - { - M_INTEL = 1, - M_AMD, - M_CPU_TYPE_START, - M_INTEL_BONNELL, - M_INTEL_CORE2, - M_INTEL_COREI7, - M_AMDFAM10H, - M_AMDFAM15H, - M_INTEL_SILVERMONT, - M_INTEL_KNL, - M_AMD_BTVER1, - M_AMD_BTVER2, - M_AMDFAM17H, - M_INTEL_KNM, - M_INTEL_GOLDMONT, - M_INTEL_GOLDMONT_PLUS, - M_INTEL_TREMONT, - M_CPU_SUBTYPE_START, - M_INTEL_COREI7_NEHALEM, - M_INTEL_COREI7_WESTMERE, - M_INTEL_COREI7_SANDYBRIDGE, - M_AMDFAM10H_BARCELONA, - M_AMDFAM10H_SHANGHAI, - M_AMDFAM10H_ISTANBUL, - M_AMDFAM15H_BDVER1, - M_AMDFAM15H_BDVER2, - M_AMDFAM15H_BDVER3, - M_AMDFAM15H_BDVER4, - M_AMDFAM17H_ZNVER1, - M_INTEL_COREI7_IVYBRIDGE, - M_INTEL_COREI7_HASWELL, - M_INTEL_COREI7_BROADWELL, - M_INTEL_COREI7_SKYLAKE, - M_INTEL_COREI7_SKYLAKE_AVX512, - M_INTEL_COREI7_CANNONLAKE, - M_INTEL_COREI7_ICELAKE_CLIENT, - M_INTEL_COREI7_ICELAKE_SERVER, - M_AMDFAM17H_ZNVER2, - M_INTEL_COREI7_CASCADELAKE - }; - - static struct _arch_names_table - { - const char *const name; - const enum processor_model model; - } - const arch_names_table[] = - { - {"amd", M_AMD}, - {"intel", M_INTEL}, - {"atom", M_INTEL_BONNELL}, - {"slm", M_INTEL_SILVERMONT}, - {"core2", M_INTEL_CORE2}, - {"corei7", M_INTEL_COREI7}, - {"nehalem", M_INTEL_COREI7_NEHALEM}, - {"westmere", M_INTEL_COREI7_WESTMERE}, - {"sandybridge", M_INTEL_COREI7_SANDYBRIDGE}, - {"ivybridge", M_INTEL_COREI7_IVYBRIDGE}, - {"haswell", M_INTEL_COREI7_HASWELL}, - {"broadwell", M_INTEL_COREI7_BROADWELL}, - {"skylake", M_INTEL_COREI7_SKYLAKE}, - {"skylake-avx512", M_INTEL_COREI7_SKYLAKE_AVX512}, - {"cannonlake", M_INTEL_COREI7_CANNONLAKE}, - {"icelake-client", M_INTEL_COREI7_ICELAKE_CLIENT}, - {"icelake-server", M_INTEL_COREI7_ICELAKE_SERVER}, - {"cascadelake", M_INTEL_COREI7_CASCADELAKE}, - {"bonnell", M_INTEL_BONNELL}, - {"silvermont", M_INTEL_SILVERMONT}, - {"goldmont", M_INTEL_GOLDMONT}, - {"goldmont-plus", M_INTEL_GOLDMONT_PLUS}, - {"tremont", M_INTEL_TREMONT}, - {"knl", M_INTEL_KNL}, - {"knm", M_INTEL_KNM}, - {"amdfam10h", M_AMDFAM10H}, - {"barcelona", M_AMDFAM10H_BARCELONA}, - {"shanghai", M_AMDFAM10H_SHANGHAI}, - {"istanbul", M_AMDFAM10H_ISTANBUL}, - {"btver1", M_AMD_BTVER1}, - {"amdfam15h", M_AMDFAM15H}, - {"bdver1", M_AMDFAM15H_BDVER1}, - {"bdver2", M_AMDFAM15H_BDVER2}, - {"bdver3", M_AMDFAM15H_BDVER3}, - {"bdver4", M_AMDFAM15H_BDVER4}, - {"btver2", M_AMD_BTVER2}, - {"amdfam17h", M_AMDFAM17H}, - {"znver1", M_AMDFAM17H_ZNVER1}, - {"znver2", M_AMDFAM17H_ZNVER2}, - }; - - static struct _isa_names_table - { - const char *const name; - const enum processor_features feature; - } - const isa_names_table[] = - { - {"cmov", F_CMOV}, - {"mmx", F_MMX}, - {"popcnt", F_POPCNT}, - {"sse", F_SSE}, - {"sse2", F_SSE2}, - {"sse3", F_SSE3}, - {"ssse3", F_SSSE3}, - {"sse4a", F_SSE4_A}, - {"sse4.1", F_SSE4_1}, - {"sse4.2", F_SSE4_2}, - {"avx", F_AVX}, - {"fma4", F_FMA4}, - {"xop", F_XOP}, - {"fma", F_FMA}, - {"avx2", F_AVX2}, - {"avx512f", F_AVX512F}, - {"bmi", F_BMI}, - {"bmi2", F_BMI2}, - {"aes", F_AES}, - {"pclmul", F_PCLMUL}, - {"avx512vl",F_AVX512VL}, - {"avx512bw",F_AVX512BW}, - {"avx512dq",F_AVX512DQ}, - {"avx512cd",F_AVX512CD}, - {"avx512er",F_AVX512ER}, - {"avx512pf",F_AVX512PF}, - {"avx512vbmi",F_AVX512VBMI}, - {"avx512ifma",F_AVX512IFMA}, - {"avx5124vnniw",F_AVX5124VNNIW}, - {"avx5124fmaps",F_AVX5124FMAPS}, - {"avx512vpopcntdq",F_AVX512VPOPCNTDQ}, - {"avx512vbmi2", F_AVX512VBMI2}, - {"gfni", F_GFNI}, - {"vpclmulqdq", F_VPCLMULQDQ}, - {"avx512vnni", F_AVX512VNNI}, - {"avx512bitalg", F_AVX512BITALG} - }; - tree __processor_model_type = build_processor_model_struct (); tree __cpu_model_var = make_var_decl (__processor_model_type, "__cpu_model"); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index eeef8b2..5ea04dc 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2019-04-25 Martin Liska + H.J. Lu + + PR target/89929 + * g++.target/i386/mv28.C: New test. + * gcc.target/i386/mvc14.c: Likewise. + * g++.target/i386/pr57362.C: Updated. + 2019-04-24 Jeff Law PR tree-optimization/90037 diff --git a/gcc/testsuite/g++.target/i386/mv28.C b/gcc/testsuite/g++.target/i386/mv28.C new file mode 100644 index 0000000..adc5396 --- /dev/null +++ b/gcc/testsuite/g++.target/i386/mv28.C @@ -0,0 +1,26 @@ +/* { dg-do compile} */ +/* { dg-require-ifunc "" } */ + +void __attribute__ ((target("avx512vl"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512bw"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512dq"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512cd"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512er"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512pf"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512vbmi"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512ifma"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx5124vnniw"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx5124fmaps"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512vpopcntdq"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512vbmi2"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("gfni"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("vpclmulqdq"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512vnni"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("avx512bitalg"))) foo () {} /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ +void __attribute__ ((target("default"))) foo () {} + +int main() +{ + foo (); + return 0; +} diff --git a/gcc/testsuite/g++.target/i386/pr57362.C b/gcc/testsuite/g++.target/i386/pr57362.C index 5e61213..ced5e51 100644 --- a/gcc/testsuite/g++.target/i386/pr57362.C +++ b/gcc/testsuite/g++.target/i386/pr57362.C @@ -199,4 +199,4 @@ int foo(void) { return 1; } /* { dg-prune-output "attribute.* is unknown" } */ /* { dg-prune-output "missing 'target' attribute*" } */ /* { dg-prune-output "redefinition of 'int foo" } */ -/* { dg-prune-output "no dispatcher found for" } */ +/* { dg-prune-output "ISA '.*' is not supported in 'target' attribute" } */ diff --git a/gcc/testsuite/gcc.target/i386/mvc14.c b/gcc/testsuite/gcc.target/i386/mvc14.c new file mode 100644 index 0000000..a3aec6a --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/mvc14.c @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-require-ifunc "" } */ + +__attribute__((target_clones("avx512vl", "avx512bw", "avx512dq", + "avx512cd", "avx512er", "avx512pf", "avx512vbmi", + "avx512ifma", "avx5124vnniw", "avx5124fmaps", + "avx512vpopcntdq", "avx512vbmi2", "gfni", + "vpclmulqdq", "avx512vnni", "avx512bitalg", + "default"))) +int foo (); /* { dg-error "ISA '\[^\n\r\]*' is not supported in 'target' attribute, use 'arch=' syntax" } */ + +int +bar () +{ + return foo(); +} -- cgit v1.1 From f47f687a97260b1a1305cbf2d7ee3d74b2916a74 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 25 Apr 2019 17:58:56 +0000 Subject: re PR middle-end/89765 (Multiple problems with vec-insert implementation on PowerPC) PR middle-end/89765 * gimplify.c (gimplify_expr): Avoid turning a lvalue VIEW_CONVERT_EXPR into one operating on an rvalue. From-SVN: r270579 --- gcc/ChangeLog | 6 ++++++ gcc/gimplify.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 80f9748..0682a44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-25 Richard Biener + + PR middle-end/89765 + * gimplify.c (gimplify_expr): Avoid turning a lvalue + VIEW_CONVERT_EXPR into one operating on an rvalue. + 2019-04-25 H.J. Lu PR target/89929 diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 6ac1b71..e59f382 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -12397,7 +12397,8 @@ gimplify_expr (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p, break; case VIEW_CONVERT_EXPR: - if (is_gimple_reg_type (TREE_TYPE (*expr_p)) + if ((fallback & fb_rvalue) + && is_gimple_reg_type (TREE_TYPE (*expr_p)) && is_gimple_reg_type (TREE_TYPE (TREE_OPERAND (*expr_p, 0)))) { ret = gimplify_expr (&TREE_OPERAND (*expr_p, 0), pre_p, -- cgit v1.1 From 68ec60c4a377b532ec2d265ea542107c36b1d15c Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 25 Apr 2019 20:01:17 +0200 Subject: * BASE-VER: Set to 10.0.0. From-SVN: r270581 --- gcc/BASE-VER | 2 +- gcc/ChangeLog | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/BASE-VER b/gcc/BASE-VER index 37ad5c8..a13e7b9 100644 --- a/gcc/BASE-VER +++ b/gcc/BASE-VER @@ -1 +1 @@ -9.0.1 +10.0.0 diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0682a44..fcdbfe4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-04-25 Jakub Jelinek + + * BASE-VER: Set to 10.0.0. + 2019-04-25 Richard Biener PR middle-end/89765 -- cgit v1.1 From 8a55f9c57a1ffd900262aa2fc2015822dc059331 Mon Sep 17 00:00:00 2001 From: Uros Bizjak Date: Thu, 25 Apr 2019 21:45:26 +0200 Subject: extend.texi (vector_size): Add missing comma after @xref. * doc/extend.texi (vector_size): Add missing comma after @xref. From-SVN: r270585 --- gcc/ChangeLog | 4 ++++ gcc/doc/extend.texi | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fcdbfe4..7cd02c8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-04-25 Uroš Bizjak + + * doc/extend.texi (vector_size): Add missing comma after @xref. + 2019-04-25 Jakub Jelinek * BASE-VER: Set to 10.0.0. diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 91679e8..e8563fd 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -7094,7 +7094,7 @@ causes the compiler to set the mode for @code{foo}, to be 16 bytes, divided into @code{int} sized units. Assuming a 32-bit @code{int}, @code{foo}'s type is a vector of four units of four bytes each, and the corresponding mode of @code{foo} is @code{V4SI}. -@xref{Vector Extensions} for details of manipulating vector variables. +@xref{Vector Extensions}, for details of manipulating vector variables. This attribute is only applicable to integral and floating scalars, although arrays, pointers, and function return values are allowed in @@ -8178,7 +8178,7 @@ sized units. With @code{int} having a size of 4 bytes, the type defines a vector of eight units, four bytes each. The mode of variables of type @code{int_vec32_t} is @code{V8SI}. @code{int_vec32_ptr_t} is then defined to be a pointer to such a vector type, and @code{int_vec32_arr3_t} to be -an array of three such vectors. @xref{Vector Extensions} for details of +an array of three such vectors. @xref{Vector Extensions}, for details of manipulating objects of vector types. This attribute is only applicable to integral and floating scalar types. -- cgit v1.1 From b6bf4d8a773cde07e751542f2911307d78b717fd Mon Sep 17 00:00:00 2001 From: Andreas Tobler Date: Thu, 25 Apr 2019 22:03:35 +0200 Subject: freebsd64.h: Add bits for 32-bit multilib support. 2019-04-25 Andreas Tobler * config/i386/freebsd64.h: Add bits for 32-bit multilib support. * config/i386/t-freebsd64: New file. * config.gcc: Add the t-freebsd64 for multilib support. From-SVN: r270586 --- gcc/ChangeLog | 6 ++++++ gcc/config.gcc | 5 ++++- gcc/config/i386/freebsd64.h | 5 ++++- gcc/config/i386/t-freebsd64 | 30 ++++++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 gcc/config/i386/t-freebsd64 (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7cd02c8..3a927ed 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-25 Andreas Tobler + + * config/i386/freebsd64.h: Add bits for 32-bit multilib support. + * config/i386/t-freebsd64: New file. + * config.gcc: Add the t-freebsd64 for multilib support. + 2019-04-25 Uroš Bizjak * doc/extend.texi (vector_size): Add missing comma after @xref. diff --git a/gcc/config.gcc b/gcc/config.gcc index 09fb9ec..c7a464c 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -4927,7 +4927,10 @@ case ${target} in ;; i[34567]86-*-dragonfly* | x86_64-*-dragonfly*) ;; - i[34567]86-*-freebsd* | x86_64-*-freebsd*) + i[34567]86-*-freebsd*) + ;; + x86_64-*-freebsd*) + tmake_file="${tmake_file} i386/t-freebsd64" ;; ia64*-*-linux*) ;; diff --git a/gcc/config/i386/freebsd64.h b/gcc/config/i386/freebsd64.h index 1f99e81..bffe19c 100644 --- a/gcc/config/i386/freebsd64.h +++ b/gcc/config/i386/freebsd64.h @@ -31,7 +31,7 @@ along with GCC; see the file COPYING3. If not see #undef LINK_SPEC #define LINK_SPEC "\ - %{m32:-m elf_i386_fbsd} \ + %{m32:-m elf_i386_fbsd}%{!m32:-m elf_x86_64_fbsd} \ %{p:%nconsider using '-pg' instead of '-p' with gprof(1)} \ %{v:-V} \ %{assert*} %{R*} %{rpath*} %{defsym*} \ @@ -42,3 +42,6 @@ along with GCC; see the file COPYING3. If not see -dynamic-linker %(fbsd_dynamic_linker) } \ %{static:-Bstatic}} \ %{symbolic:-Bsymbolic}" + +#undef MULTILIB_DEFAULTS +#define MULTILIB_DEFAULTS { "m64" } diff --git a/gcc/config/i386/t-freebsd64 b/gcc/config/i386/t-freebsd64 new file mode 100644 index 0000000..0dd05d4 --- /dev/null +++ b/gcc/config/i386/t-freebsd64 @@ -0,0 +1,30 @@ +# Copyright (C) 2019 Free Software Foundation, Inc. +# +# This file is part of GCC. +# +# GCC is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# GCC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . + +# The 32-bit libraries are found in /usr/lib32 + +# To support i386 and x86-64, the directory structrue +# should be: +# +# /lib has x86-64 libraries. +# /lib32 has i386 libraries. +# + +MULTILIB_OPTIONS = m32 +MULTILIB_DIRNAMES = 32 +MULTILIB_OSDIRNAMES = ../lib32 -- cgit v1.1 From 25efa5fb15e36a1b35f3c9bbe38139d6244a35e3 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Fri, 26 Apr 2019 00:16:18 +0000 Subject: Daily bump. From-SVN: r270592 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index e49bc7d..f9053ef 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190425 +20190426 -- cgit v1.1 From 4ef8a24ca5416226d82ca272dea88e460ae2ce86 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Fri, 26 Apr 2019 09:59:31 +0000 Subject: Add commentary to (SET_)TYPE_VECTOR_SUBPARTS 2019-04-26 Richard Sandiford gcc/ * tree.h (TYPE_VECTOR_SUBPARTS, SET_TYPE_VECTOR_SUBPARTS): Add commentary about the encoding of precision. From-SVN: r270593 --- gcc/ChangeLog | 5 +++++ gcc/tree.h | 17 +++++++++++++++++ 2 files changed, 22 insertions(+) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3a927ed..3330d1c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-04-26 Richard Sandiford + + * tree.h (TYPE_VECTOR_SUBPARTS, SET_TYPE_VECTOR_SUBPARTS): Add + commentary about the encoding of precision. + 2019-04-25 Andreas Tobler * config/i386/freebsd64.h: Add bits for 32-bit multilib support. diff --git a/gcc/tree.h b/gcc/tree.h index 2f2f109..f030082 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -3734,6 +3734,8 @@ TYPE_VECTOR_SUBPARTS (const_tree node) unsigned int precision = VECTOR_TYPE_CHECK (node)->type_common.precision; if (NUM_POLY_INT_COEFFS == 2) { + /* See the corresponding code in SET_TYPE_VECTOR_SUBPARTS for a + description of the encoding. */ poly_uint64 res = 0; res.coeffs[0] = HOST_WIDE_INT_1U << (precision & 0xff); if (precision & 0x100) @@ -3756,6 +3758,21 @@ SET_TYPE_VECTOR_SUBPARTS (tree node, poly_uint64 subparts) gcc_assert (index >= 0); if (NUM_POLY_INT_COEFFS == 2) { + /* We have two coefficients that are each in the range 1 << [0, 63], + so supporting all combinations would require 6 bits per coefficient + and 12 bits in total. Since the precision field is only 10 bits + in size, we need to be more restrictive than that. + + At present, coeff[1] is always either 0 (meaning that the number + of units is constant) or equal to coeff[0] (meaning that the number + of units is N + X * N for some target-dependent zero-based runtime + parameter X). We can therefore encode coeff[1] in a single bit. + + The most compact encoding would be to use mask 0x3f for coeff[0] + and 0x40 for coeff[1], leaving 0x380 unused. It's possible to + get slightly more efficient code on some hosts if we instead + treat the shift amount as an independent byte, so here we use + 0xff for coeff[0] and 0x100 for coeff[1]. */ unsigned HOST_WIDE_INT coeff1 = subparts.coeffs[1]; gcc_assert (coeff1 == 0 || coeff1 == coeff0); VECTOR_TYPE_CHECK (node)->type_common.precision -- cgit v1.1 From e78a87f724bc83fa6dab383742ec82f3b28a92eb Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Fri, 26 Apr 2019 10:33:10 +0000 Subject: Fix use of COMPLETE_TYPE_P for -Wstrict-aliasing=1 The handling of -Wstrict-aliasing=1 applied COMPLETE_TYPE_P to the pointer type rather than the pointer target, so missed the warnings for "struct incomplete" in the testcase. I couldn't find any existing C tests for -Wstrict-aliasing=1, so I added a few extra tests besides the ones fixed by the patch. I'm sure there's lots more we could test -- this is just supposed to be better than the status quo (i.e. nothing). 2019-04-26 Richard Sandiford gcc/c-family/ * c-warn.c (strict_aliasing_warning): Apply COMPLETE_TYPE_P to the pointer target rather than the pointer itself. gcc/testsuite/ * gcc.dg/alias-16.c: New test. From-SVN: r270594 --- gcc/c-family/ChangeLog | 5 +++++ gcc/c-family/c-warn.c | 2 +- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gcc.dg/alias-16.c | 46 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/alias-16.c (limited to 'gcc') diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 12d4587..9a662f0 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,8 @@ +2019-04-26 Richard Sandiford + + * c-warn.c (strict_aliasing_warning): Apply COMPLETE_TYPE_P to + the pointer target rather than the pointer itself. + 2019-04-19 Jakub Jelinek PR c/89888 diff --git a/gcc/c-family/c-warn.c b/gcc/c-family/c-warn.c index 322cf98..f95eba9 100644 --- a/gcc/c-family/c-warn.c +++ b/gcc/c-family/c-warn.c @@ -746,7 +746,7 @@ strict_aliasing_warning (location_t loc, tree type, tree expr) are not revealed at higher levels. */ alias_set_type set1 = get_alias_set (TREE_TYPE (otype)); alias_set_type set2 = get_alias_set (TREE_TYPE (type)); - if (!COMPLETE_TYPE_P (type) + if (!COMPLETE_TYPE_P (TREE_TYPE (type)) || !alias_sets_must_conflict_p (set1, set2)) { warning_at (loc, OPT_Wstrict_aliasing, diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 5ea04dc..90e8d8b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-04-26 Richard Sandiford + + * gcc.dg/alias-16.c: New test. + 2019-04-25 Martin Liska H.J. Lu diff --git a/gcc/testsuite/gcc.dg/alias-16.c b/gcc/testsuite/gcc.dg/alias-16.c new file mode 100644 index 0000000..8f5aa35 --- /dev/null +++ b/gcc/testsuite/gcc.dg/alias-16.c @@ -0,0 +1,46 @@ +/* { dg-do compile } */ +/* { dg-options "-Wstrict-aliasing=1 -fstrict-aliasing" } */ + +struct incomplete; +struct s1 { int i; }; +struct s2 { double d; }; + +void +f (int *i, double *d, struct s1 *s1, struct s2 *s2, char *c) +{ + (char *) i; + (char *) d; + (char *) s1; + (char *) s2; + (char *) c; + + (int *) i; + (int *) d; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (int *) s1; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (int *) s2; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (int *) c; + + (double *) i; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (double *) d; + (double *) s1; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (double *) s2; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (double *) c; + + (struct incomplete *) i; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct incomplete *) d; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct incomplete *) s1; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct incomplete *) s2; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct incomplete *) c; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + + (struct s1 *) i; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct s1 *) d; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct s1 *) s1; + (struct s1 *) s2; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct s1 *) c; + + (struct s2 *) i; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct s2 *) d; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct s2 *) s1; /* { dg-warning "dereferencing type-punned pointer might break strict-aliasing rules" } */ + (struct s2 *) s2; + (struct s2 *) c; +} -- cgit v1.1 From aaa94b3c890f4b43ecb8f1134ea0e4c6af75768d Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Fri, 26 Apr 2019 11:46:15 +0000 Subject: decl.c (grokdeclarator): Fix value assigned to typespec_loc, use min_location. /cp 2018-04-26 Paolo Carlini * decl.c (grokdeclarator): Fix value assigned to typespec_loc, use min_location. /testsuite 2018-04-26 Paolo Carlini * g++.dg/diagnostic/trailing1.C: New. From-SVN: r270597 --- gcc/cp/ChangeLog | 5 +++++ gcc/cp/decl.c | 4 ++-- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/g++.dg/diagnostic/trailing1.C | 5 +++++ 4 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/g++.dg/diagnostic/trailing1.C (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 059a7fd..c78683d 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2018-04-26 Paolo Carlini + + * decl.c (grokdeclarator): Fix value assigned to typespec_loc, use + min_location. + 2019-04-24 Jason Merrill PR c++/90227 - error with template parameter packs. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 01c89cd..49ab387 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -10417,8 +10417,8 @@ grokdeclarator (const cp_declarator *declarator, location_t typespec_loc = smallest_type_quals_location (type_quals, declspecs->locations); - if (typespec_loc == UNKNOWN_LOCATION) - typespec_loc = declspecs->locations[ds_type_spec]; + typespec_loc = min_location (typespec_loc, + declspecs->locations[ds_type_spec]); if (typespec_loc == UNKNOWN_LOCATION) typespec_loc = input_location; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 90e8d8b..13416da 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2018-04-26 Paolo Carlini + + * g++.dg/diagnostic/trailing1.C: New. + 2019-04-26 Richard Sandiford * gcc.dg/alias-16.c: New test. diff --git a/gcc/testsuite/g++.dg/diagnostic/trailing1.C b/gcc/testsuite/g++.dg/diagnostic/trailing1.C new file mode 100644 index 0000000..369781e --- /dev/null +++ b/gcc/testsuite/g++.dg/diagnostic/trailing1.C @@ -0,0 +1,5 @@ +// { dg-do compile { target c++11 } } + +int const foo1() -> double; // { dg-error "1:.foo1. function with trailing return type" } +int volatile foo2() -> double; // { dg-error "1:.foo2. function with trailing return type" } +int const volatile foo3() -> double; // { dg-error "1:.foo3. function with trailing return type" } -- cgit v1.1 From 69dad6faf9f00b0b22a822f0a0bcc57e7256959e Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Fri, 26 Apr 2019 14:51:00 +0000 Subject: re PR c++/90173 (ICE: Segmentation fault (in strip_declarator_types)) /cp 2019-04-26 Paolo Carlini PR c++/90173 * decl.c (grokdeclarator): Set type to error_mark_node upon error about template placeholder type non followed by a simple declarator-id. /testsuite 2019-04-26 Paolo Carlini PR c++/90173 * g++.dg/cpp1z/class-deduction66.C: New. From-SVN: r270603 --- gcc/cp/ChangeLog | 9 ++++++++- gcc/cp/decl.c | 1 + gcc/testsuite/ChangeLog | 7 ++++++- gcc/testsuite/g++.dg/cpp1z/class-deduction66.C | 10 ++++++++++ 4 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/g++.dg/cpp1z/class-deduction66.C (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index c78683d..ab25cb9 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,4 +1,11 @@ -2018-04-26 Paolo Carlini +2019-04-26 Paolo Carlini + + PR c++/90173 + * decl.c (grokdeclarator): Set type to error_mark_node + upon error about template placeholder type non followed + by a simple declarator-id. + +2019-04-26 Paolo Carlini * decl.c (grokdeclarator): Fix value assigned to typespec_loc, use min_location. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 49ab387..ca21cbb 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -10973,6 +10973,7 @@ grokdeclarator (const cp_declarator *declarator, error_at (typespec_loc, "template placeholder type %qT must be followed " "by a simple declarator-id", type); inform (DECL_SOURCE_LOCATION (tmpl), "%qD declared here", tmpl); + type = error_mark_node; } staticp = 0; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 13416da..2ada826 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,4 +1,9 @@ -2018-04-26 Paolo Carlini +2019-04-26 Paolo Carlini + + PR c++/90173 + * g++.dg/cpp1z/class-deduction66.C: New. + +2019-04-26 Paolo Carlini * g++.dg/diagnostic/trailing1.C: New. diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C new file mode 100644 index 0000000..7ed119d --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C @@ -0,0 +1,10 @@ +// PR c++/90173 +// { dg-do run { target c++17 } } + +template struct A { }; + +A(int) -> A; + +namespace decl { + A (*fp)() = 0; // { dg-error "placeholder" } +} -- cgit v1.1 From f179b64e3ab013ff04e705953d33a2f82de6b086 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 26 Apr 2019 17:38:33 +0200 Subject: re PR debug/90197 (Cannot step through simple loop at -O -g) PR debug/90197 * c-tree.h (c_finish_loop): Add 2 further location_t arguments. * c-parser.c (c_parser_while_statement): Adjust c_finish_loop caller. (c_parser_do_statement): Likewise. (c_parser_for_statement): Likewise. Formatting fixes. * c-typeck.c (c_finish_loop): Add COND_LOCUS and INCR_LOCUS arguments, emit DEBUG_BEGIN_STMTs if needed. From-SVN: r270606 --- gcc/c/ChangeLog | 10 ++++++++++ gcc/c/c-parser.c | 53 +++++++++++++++++++++++++++++++++++------------------ gcc/c/c-tree.h | 3 ++- gcc/c/c-typeck.c | 33 +++++++++++++++++++++++---------- 4 files changed, 70 insertions(+), 29 deletions(-) (limited to 'gcc') diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index e5bc2b7..ef192bf 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,13 @@ +2019-04-26 Jakub Jelinek + + PR debug/90197 + * c-tree.h (c_finish_loop): Add 2 further location_t arguments. + * c-parser.c (c_parser_while_statement): Adjust c_finish_loop caller. + (c_parser_do_statement): Likewise. + (c_parser_for_statement): Likewise. Formatting fixes. + * c-typeck.c (c_finish_loop): Add COND_LOCUS and INCR_LOCUS arguments, + emit DEBUG_BEGIN_STMTs if needed. + 2019-04-19 Jakub Jelinek PR c/89888 diff --git a/gcc/c/c-parser.c b/gcc/c/c-parser.c index 741d172..854cd6c 100644 --- a/gcc/c/c-parser.c +++ b/gcc/c/c-parser.c @@ -6001,7 +6001,8 @@ c_parser_while_statement (c_parser *parser, bool ivdep, unsigned short unroll, location_t loc_after_labels; bool open_brace = c_parser_next_token_is (parser, CPP_OPEN_BRACE); body = c_parser_c99_block_statement (parser, if_p, &loc_after_labels); - c_finish_loop (loc, cond, NULL, body, c_break_label, c_cont_label, true); + c_finish_loop (loc, loc, cond, UNKNOWN_LOCATION, NULL, body, + c_break_label, c_cont_label, true); add_stmt (c_end_compound_stmt (loc, block, flag_isoc99)); c_parser_maybe_reclassify_token (parser); @@ -6046,6 +6047,7 @@ c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll) c_break_label = save_break; new_cont = c_cont_label; c_cont_label = save_cont; + location_t cond_loc = c_parser_peek_token (parser)->location; cond = c_parser_paren_condition (parser); if (ivdep && cond != error_mark_node) cond = build3 (ANNOTATE_EXPR, TREE_TYPE (cond), cond, @@ -6059,7 +6061,8 @@ c_parser_do_statement (c_parser *parser, bool ivdep, unsigned short unroll) build_int_cst (integer_type_node, unroll)); if (!c_parser_require (parser, CPP_SEMICOLON, "expected %<;%>")) c_parser_skip_to_end_of_block_or_statement (parser); - c_finish_loop (loc, cond, NULL, body, new_break, new_cont, false); + c_finish_loop (loc, cond_loc, cond, UNKNOWN_LOCATION, NULL, body, + new_break, new_cont, false); add_stmt (c_end_compound_stmt (loc, block, flag_isoc99)); } @@ -6132,7 +6135,9 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, /* Silence the bogus uninitialized warning. */ tree collection_expression = NULL; location_t loc = c_parser_peek_token (parser)->location; - location_t for_loc = c_parser_peek_token (parser)->location; + location_t for_loc = loc; + location_t cond_loc = UNKNOWN_LOCATION; + location_t incr_loc = UNKNOWN_LOCATION; bool is_foreach_statement = false; gcc_assert (c_parser_next_token_is_keyword (parser, RID_FOR)); token_indent_info for_tinfo @@ -6166,7 +6171,8 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, c_parser_consume_token (parser); is_foreach_statement = true; if (check_for_loop_decls (for_loc, true) == NULL_TREE) - c_parser_error (parser, "multiple iterating variables in fast enumeration"); + c_parser_error (parser, "multiple iterating variables in " + "fast enumeration"); } else check_for_loop_decls (for_loc, flag_isoc99); @@ -6196,7 +6202,8 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, c_parser_consume_token (parser); is_foreach_statement = true; if (check_for_loop_decls (for_loc, true) == NULL_TREE) - c_parser_error (parser, "multiple iterating variables in fast enumeration"); + c_parser_error (parser, "multiple iterating variables in " + "fast enumeration"); } else check_for_loop_decls (for_loc, flag_isoc99); @@ -6218,15 +6225,18 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, c_parser_consume_token (parser); is_foreach_statement = true; if (! lvalue_p (init_expression)) - c_parser_error (parser, "invalid iterating variable in fast enumeration"); - object_expression = c_fully_fold (init_expression, false, NULL); + c_parser_error (parser, "invalid iterating variable in " + "fast enumeration"); + object_expression + = c_fully_fold (init_expression, false, NULL); } else { ce = convert_lvalue_to_rvalue (loc, ce, true, false); init_expression = ce.value; c_finish_expr_stmt (loc, init_expression); - c_parser_skip_until_found (parser, CPP_SEMICOLON, "expected %<;%>"); + c_parser_skip_until_found (parser, CPP_SEMICOLON, + "expected %<;%>"); } } } @@ -6235,18 +6245,19 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, gcc_assert (!parser->objc_could_be_foreach_context); if (!is_foreach_statement) { + cond_loc = c_parser_peek_token (parser)->location; if (c_parser_next_token_is (parser, CPP_SEMICOLON)) { if (ivdep) { - c_parser_error (parser, "missing loop condition in loop with " - "% pragma"); + c_parser_error (parser, "missing loop condition in loop " + "with % pragma"); cond = error_mark_node; } else if (unroll) { - c_parser_error (parser, "missing loop condition in loop with " - "% pragma"); + c_parser_error (parser, "missing loop condition in loop " + "with % pragma"); cond = error_mark_node; } else @@ -6275,11 +6286,13 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, /* Parse the increment expression (the third expression in a for-statement). In the case of a foreach-statement, this is the expression that follows the 'in'. */ + loc = incr_loc = c_parser_peek_token (parser)->location; if (c_parser_next_token_is (parser, CPP_CLOSE_PAREN)) { if (is_foreach_statement) { - c_parser_error (parser, "missing collection in fast enumeration"); + c_parser_error (parser, + "missing collection in fast enumeration"); collection_expression = error_mark_node; } else @@ -6288,8 +6301,8 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, else { if (is_foreach_statement) - collection_expression = c_fully_fold (c_parser_expression (parser).value, - false, NULL); + collection_expression + = c_fully_fold (c_parser_expression (parser).value, false, NULL); else { struct c_expr ce = c_parser_expression (parser); @@ -6312,10 +6325,14 @@ c_parser_for_statement (c_parser *parser, bool ivdep, unsigned short unroll, body = c_parser_c99_block_statement (parser, if_p, &loc_after_labels); if (is_foreach_statement) - objc_finish_foreach_loop (loc, object_expression, collection_expression, body, c_break_label, c_cont_label); + objc_finish_foreach_loop (for_loc, object_expression, + collection_expression, body, c_break_label, + c_cont_label); else - c_finish_loop (loc, cond, incr, body, c_break_label, c_cont_label, true); - add_stmt (c_end_compound_stmt (loc, block, flag_isoc99 || c_dialect_objc ())); + c_finish_loop (for_loc, cond_loc, cond, incr_loc, incr, body, + c_break_label, c_cont_label, true); + add_stmt (c_end_compound_stmt (for_loc, block, + flag_isoc99 || c_dialect_objc ())); c_parser_maybe_reclassify_token (parser); token_indent_info next_tinfo diff --git a/gcc/c/c-tree.h b/gcc/c/c-tree.h index 9393f6d..7e35ab1 100644 --- a/gcc/c/c-tree.h +++ b/gcc/c/c-tree.h @@ -694,7 +694,8 @@ extern int c_types_compatible_p (tree, tree); extern tree c_begin_compound_stmt (bool); extern tree c_end_compound_stmt (location_t, tree, bool); extern void c_finish_if_stmt (location_t, tree, tree, tree); -extern void c_finish_loop (location_t, tree, tree, tree, tree, tree, bool); +extern void c_finish_loop (location_t, location_t, tree, location_t, tree, + tree, tree, tree, bool); extern tree c_begin_stmt_expr (void); extern tree c_finish_stmt_expr (location_t, tree); extern tree c_process_expr_stmt (location_t, tree); diff --git a/gcc/c/c-typeck.c b/gcc/c/c-typeck.c index 8286b7d..4e44375 100644 --- a/gcc/c/c-typeck.c +++ b/gcc/c/c-typeck.c @@ -10858,11 +10858,14 @@ c_finish_if_stmt (location_t if_locus, tree cond, tree then_block, the beginning of the loop. COND is the loop condition. COND_IS_FIRST is false for DO loops. INCR is the FOR increment expression. BODY is the statement controlled by the loop. BLAB is the break label. CLAB is - the continue label. Everything is allowed to be NULL. */ + the continue label. Everything is allowed to be NULL. + COND_LOCUS is the location of the loop condition, INCR_LOCUS is the + location of the FOR increment expression. */ void -c_finish_loop (location_t start_locus, tree cond, tree incr, tree body, - tree blab, tree clab, bool cond_is_first) +c_finish_loop (location_t start_locus, location_t cond_locus, tree cond, + location_t incr_locus, tree incr, tree body, tree blab, + tree clab, bool cond_is_first) { tree entry = NULL, exit = NULL, t; @@ -10904,12 +10907,8 @@ c_finish_loop (location_t start_locus, tree cond, tree incr, tree body, } t = build_and_jump (&blab); - if (cond_is_first) - exit = fold_build3_loc (start_locus, - COND_EXPR, void_type_node, cond, exit, t); - else - exit = fold_build3_loc (input_location, - COND_EXPR, void_type_node, cond, exit, t); + exit = fold_build3_loc (cond_is_first ? start_locus : input_location, + COND_EXPR, void_type_node, cond, exit, t); } else { @@ -10930,9 +10929,23 @@ c_finish_loop (location_t start_locus, tree cond, tree incr, tree body, if (clab) add_stmt (build1 (LABEL_EXPR, void_type_node, clab)); if (incr) - add_stmt (incr); + { + if (MAY_HAVE_DEBUG_MARKER_STMTS && incr_locus != UNKNOWN_LOCATION) + { + t = build0 (DEBUG_BEGIN_STMT, void_type_node); + SET_EXPR_LOCATION (t, incr_locus); + add_stmt (t); + } + add_stmt (incr); + } if (entry) add_stmt (entry); + if (MAY_HAVE_DEBUG_MARKER_STMTS && cond_locus != UNKNOWN_LOCATION) + { + t = build0 (DEBUG_BEGIN_STMT, void_type_node); + SET_EXPR_LOCATION (t, cond_locus); + add_stmt (t); + } if (exit) add_stmt (exit); if (blab) -- cgit v1.1 From 224d9de0e84026e7c19c51f05d2f4e8dedd291ed Mon Sep 17 00:00:00 2001 From: Eugene Sharygin Date: Fri, 26 Apr 2019 15:48:43 +0000 Subject: gdbhooks.py: Fix UnicodeDecodeErrors when printing trees with corrupt codes. * gdbhooks.py: Fix UnicodeDecodeErrors when printing trees with corrupt codes. From-SVN: r270607 --- gcc/ChangeLog | 5 +++++ gcc/gdbhooks.py | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3330d1c..4434ba5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2018-04-26 Eugene Sharygin + + * gdbhooks.py: Fix UnicodeDecodeErrors when printing trees with + corrupt codes. + 2019-04-26 Richard Sandiford * tree.h (TYPE_VECTOR_SUBPARTS, SET_TYPE_VECTOR_SUBPARTS): Add diff --git a/gcc/gdbhooks.py b/gcc/gdbhooks.py index bbe7618..7b1a7be 100644 --- a/gcc/gdbhooks.py +++ b/gcc/gdbhooks.py @@ -229,7 +229,10 @@ class TreePrinter: val_code_name = val_tree_code_name[intptr(val_TREE_CODE)] #print(val_code_name.string()) - result = '<%s 0x%x' % (val_code_name.string(), intptr(self.gdbval)) + try: + result = '<%s 0x%x' % (val_code_name.string(), intptr(self.gdbval)) + except: + return '' % intptr(self.gdbval) if intptr(val_tclass) == tcc_declaration: tree_DECL_NAME = self.node.DECL_NAME() if tree_DECL_NAME.is_nonnull(): -- cgit v1.1 From 57e617640d6ae8f197501345f07a49a376d28a48 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Fri, 26 Apr 2019 17:33:02 +0100 Subject: PR c++/90243 - orphaned note in uninstantiated constexpr function gcc/cp: PR c++/90243 - orphaned note in uninstantiated constexpr function * decl.c (check_for_uninitialized_const_var): Suppress notes if no error was shown. gcc/testsuite: PR c++/90243 * g++.dg/diagnostic/pr90243.C: New test. From-SVN: r270610 --- gcc/cp/ChangeLog | 6 ++++++ gcc/cp/decl.c | 10 +++++++--- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/diagnostic/pr90243.C | 13 +++++++++++++ 4 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 gcc/testsuite/g++.dg/diagnostic/pr90243.C (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ab25cb9..e0a7fb9 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2019-04-26 Jonathan Wakely + + PR c++/90243 - orphaned note in uninstantiated constexpr function + * decl.c (check_for_uninitialized_const_var): Suppress notes if no + error was shown. + 2019-04-26 Paolo Carlini PR c++/90173 diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index ca21cbb..20a6e2e 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -5691,13 +5691,15 @@ check_for_uninitialized_const_var (tree decl, bool constexpr_context_p, if (!field) return true; + bool show_notes = true; + if (!constexpr_context_p) { if (CP_TYPE_CONST_P (type)) { if (complain & tf_error) - permerror (DECL_SOURCE_LOCATION (decl), - "uninitialized const %qD", decl); + show_notes = permerror (DECL_SOURCE_LOCATION (decl), + "uninitialized const %qD", decl); } else { @@ -5706,6 +5708,8 @@ check_for_uninitialized_const_var (tree decl, bool constexpr_context_p, error_at (DECL_SOURCE_LOCATION (decl), "uninitialized variable %qD in % " "function", decl); + else + show_notes = false; cp_function_chain->invalid_constexpr = true; } } @@ -5714,7 +5718,7 @@ check_for_uninitialized_const_var (tree decl, bool constexpr_context_p, "uninitialized variable %qD in % context", decl); - if (CLASS_TYPE_P (type) && (complain & tf_error)) + if (show_notes && CLASS_TYPE_P (type) && (complain & tf_error)) { tree defaulted_ctor; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2ada826..9322205 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-26 Jonathan Wakely + + PR c++/90243 + * g++.dg/diagnostic/pr90243.C: New test. + 2019-04-26 Paolo Carlini PR c++/90173 diff --git a/gcc/testsuite/g++.dg/diagnostic/pr90243.C b/gcc/testsuite/g++.dg/diagnostic/pr90243.C new file mode 100644 index 0000000..3f5d915 --- /dev/null +++ b/gcc/testsuite/g++.dg/diagnostic/pr90243.C @@ -0,0 +1,13 @@ +// { dg-do compile { target c++14 } } +struct Z { // { dg-bogus "default constructor" } + int y; // { dg-bogus "initialize" } +}; + +template +constexpr Z f(const T *data) { + Z z; + __builtin_memcpy(&z, data, sizeof(z)); + return z; +} + +constexpr Z g(const char *data) { return f(data); } -- cgit v1.1 From 8d266165b9c1b303efab1881120b9d5a6feb437a Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Fri, 26 Apr 2019 17:20:55 +0000 Subject: runtime: fix TestPhysPageSize on AIX AIX doesn't allow to mmap an address range which is already mmap. Therefore, once the region has been allocated, it must munmap before being able to play with it. The corresponding Go Toolchain patch is CL 174059. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/174138 From-SVN: r270615 --- gcc/go/gofrontend/MERGE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index fd53ada..8af11d9 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -cb6fb7285bac72389bdce7ecfe87f9366022571a +b117b468264665cfe6ec2cf3affb48330a704fa7 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. -- cgit v1.1 From 0d056d03a6d930f545b4d969ba12b03d23ddce7d Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Sat, 27 Apr 2019 00:16:32 +0000 Subject: Daily bump. From-SVN: r270620 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index f9053ef..56b7f4d 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190426 +20190427 -- cgit v1.1 From 5117550700dc9b81a0073e8e802be9992a7a59e9 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Sat, 27 Apr 2019 00:46:20 +0000 Subject: RISC-V: Promode modes of constant loads for store insns. This improves optimization of code storing constants to memory. Given this testcase: void sub1 (int *a, long long *b) { *a = 1; *b = 1; } an unpatched rv64 compiler emits two li instructions, one for an SImode pseudo and one for a DImode pseudo. With the patch, we get a single DImode li insn. gcc/ * config/riscv/riscv-protos.h (riscv_move_integer): Add machine_mode parameter. * config/riscv/riscv.c (riscv_move_integer): New parameter orig_mode. Pass orig_mode to riscv_build_integer. (riscv_split_integer): Pass mode to riscv_move_integer. (riscv_legitimize_const_move): Likewise. (riscv_legitimize_move): For MEM dest and CONST_INT src case, new local promoted_mode. Replace force_reg call with code to load constant into promoted reg and then subreg it for the store. * config/riscv/riscv.md (low+1): Pass mode to riscv_move_integer. gcc/testsuite/ * gcc.target/riscv/load-immediate.c: New. From-SVN: r270621 --- gcc/ChangeLog | 14 +++++++++ gcc/config/riscv/riscv-protos.h | 2 +- gcc/config/riscv/riscv.c | 42 ++++++++++++++++++++----- gcc/config/riscv/riscv.md | 3 +- gcc/testsuite/ChangeLog | 4 +++ gcc/testsuite/gcc.target/riscv/load-immediate.c | 32 +++++++++++++++++++ 6 files changed, 88 insertions(+), 9 deletions(-) create mode 100644 gcc/testsuite/gcc.target/riscv/load-immediate.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4434ba5..e5de2df 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2019-04-26 Jim Wilson + + * config/riscv/riscv-protos.h (riscv_move_integer): Add machine_mode + parameter. + * config/riscv/riscv.c (riscv_move_integer): New parameter orig_mode. + Pass orig_mode to riscv_build_integer. + (riscv_split_integer): Pass mode to riscv_move_integer. + (riscv_legitimize_const_move): Likewise. + (riscv_legitimize_move): For MEM dest and CONST_INT src case, new local + promoted_mode. Replace force_reg call with code to load constant into + promoted reg and then subreg it for the store. + * config/riscv/riscv.md (low+1): Pass mode to + riscv_move_integer. + 2018-04-26 Eugene Sharygin * gdbhooks.py: Fix UnicodeDecodeErrors when printing trees with diff --git a/gcc/config/riscv/riscv-protos.h b/gcc/config/riscv/riscv-protos.h index 8b510f8..5c1002b 100644 --- a/gcc/config/riscv/riscv-protos.h +++ b/gcc/config/riscv/riscv-protos.h @@ -47,7 +47,7 @@ extern rtx riscv_emit_move (rtx, rtx); extern bool riscv_split_symbol (rtx, rtx, machine_mode, rtx *); extern bool riscv_split_symbol_type (enum riscv_symbol_type); extern rtx riscv_unspec_address (rtx, enum riscv_symbol_type); -extern void riscv_move_integer (rtx, rtx, HOST_WIDE_INT); +extern void riscv_move_integer (rtx, rtx, HOST_WIDE_INT, machine_mode); extern bool riscv_legitimize_move (machine_mode, rtx, rtx); extern rtx riscv_subword (rtx, bool); extern bool riscv_split_64bit_move_p (rtx, rtx); diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c index e7440f3..6fb6c6a 100644 --- a/gcc/config/riscv/riscv.c +++ b/gcc/config/riscv/riscv.c @@ -508,8 +508,8 @@ riscv_split_integer (HOST_WIDE_INT val, machine_mode mode) unsigned HOST_WIDE_INT hival = sext_hwi ((val - loval) >> 32, 32); rtx hi = gen_reg_rtx (mode), lo = gen_reg_rtx (mode); - riscv_move_integer (hi, hi, hival); - riscv_move_integer (lo, lo, loval); + riscv_move_integer (hi, hi, hival, mode); + riscv_move_integer (lo, lo, loval, mode); hi = gen_rtx_fmt_ee (ASHIFT, mode, hi, GEN_INT (32)); hi = force_reg (mode, hi); @@ -1334,10 +1334,12 @@ riscv_legitimize_address (rtx x, rtx oldx ATTRIBUTE_UNUSED, return x; } -/* Load VALUE into DEST. TEMP is as for riscv_force_temporary. */ +/* Load VALUE into DEST. TEMP is as for riscv_force_temporary. ORIG_MODE + is the original src mode before promotion. */ void -riscv_move_integer (rtx temp, rtx dest, HOST_WIDE_INT value) +riscv_move_integer (rtx temp, rtx dest, HOST_WIDE_INT value, + machine_mode orig_mode) { struct riscv_integer_op codes[RISCV_MAX_INTEGER_OPS]; machine_mode mode; @@ -1345,7 +1347,9 @@ riscv_move_integer (rtx temp, rtx dest, HOST_WIDE_INT value) rtx x; mode = GET_MODE (dest); - num_ops = riscv_build_integer (codes, value, mode); + /* We use the original mode for the riscv_build_integer call, because HImode + values are given special treatment. */ + num_ops = riscv_build_integer (codes, value, orig_mode); if (can_create_pseudo_p () && num_ops > 2 /* not a simple constant */ && num_ops >= riscv_split_integer_cost (value)) @@ -1381,7 +1385,7 @@ riscv_legitimize_const_move (machine_mode mode, rtx dest, rtx src) /* Split moves of big integers into smaller pieces. */ if (splittable_const_int_operand (src, mode)) { - riscv_move_integer (dest, dest, INTVAL (src)); + riscv_move_integer (dest, dest, INTVAL (src), mode); return; } @@ -1428,7 +1432,31 @@ riscv_legitimize_move (machine_mode mode, rtx dest, rtx src) { if (!register_operand (dest, mode) && !reg_or_0_operand (src, mode)) { - riscv_emit_move (dest, force_reg (mode, src)); + rtx reg; + + if (GET_CODE (src) == CONST_INT) + { + /* Apply the equivalent of PROMOTE_MODE here for constants to + improve cse. */ + machine_mode promoted_mode = mode; + if (GET_MODE_CLASS (mode) == MODE_INT + && GET_MODE_SIZE (mode) < UNITS_PER_WORD) + promoted_mode = word_mode; + + if (splittable_const_int_operand (src, mode)) + { + reg = gen_reg_rtx (promoted_mode); + riscv_move_integer (reg, reg, INTVAL (src), mode); + } + else + reg = force_reg (promoted_mode, src); + + if (promoted_mode != mode) + reg = gen_lowpart (mode, reg); + } + else + reg = force_reg (mode, src); + riscv_emit_move (dest, reg); return true; } diff --git a/gcc/config/riscv/riscv.md b/gcc/config/riscv/riscv.md index e3799a5..fc81daa 100644 --- a/gcc/config/riscv/riscv.md +++ b/gcc/config/riscv/riscv.md @@ -1278,7 +1278,8 @@ "" [(const_int 0)] { - riscv_move_integer (operands[2], operands[0], INTVAL (operands[1])); + riscv_move_integer (operands[2], operands[0], INTVAL (operands[1]), + mode); DONE; }) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9322205..4c68148 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-04-26 Jim Wilson + + * gcc.target/riscv/load-immediate.c: New. + 2019-04-26 Jonathan Wakely PR c++/90243 diff --git a/gcc/testsuite/gcc.target/riscv/load-immediate.c b/gcc/testsuite/gcc.target/riscv/load-immediate.c new file mode 100644 index 0000000..f8fe747 --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/load-immediate.c @@ -0,0 +1,32 @@ +/* { dg-do compile } */ +/* { dg-options "-march=rv64gc -mabi=lp64d -O2" } */ + +/* Check that we don't have unnecessary load immediate instructions. */ +void +sub1 (int *a, long long *b) +{ + *a = 1; + *b = 1; +} + +void +sub2 (short *a, short *b) +{ + *a = -32768; + *b = 32767; +} + +void +sub3 (int *a, long long *b) +{ + *a = 10000; + *b = 10000; +} + +void +sub4 (int *a, short *b) +{ + *a = 1; + *b = 1; +} +/* { dg-final { scan-assembler-times "\tli\t" 4 } } */ -- cgit v1.1 From 23ab63504249add3ac588fe44a4214d36812eeeb Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Sat, 27 Apr 2019 08:33:29 +0200 Subject: Add missing target options (PR middle-end/90258). 2019-04-27 Martin Liska PR middle-end/90258 * opt-suggestions.c (option_proposer::build_option_suggestions): When get_valid_option_values returns empty values, add the misspelling candidate. 2019-04-27 Martin Liska PR middle-end/90258 * gcc.dg/completion-5.c: New test. * gcc.target/i386/spellcheck-options-5.c: New test. From-SVN: r270622 --- gcc/ChangeLog | 7 +++++++ gcc/opt-suggestions.c | 5 ++++- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.dg/completion-5.c | 7 +++++++ gcc/testsuite/gcc.target/i386/spellcheck-options-5.c | 5 +++++ 5 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/completion-5.c create mode 100644 gcc/testsuite/gcc.target/i386/spellcheck-options-5.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e5de2df..5d5f03c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2019-04-27 Martin Liska + + PR middle-end/90258 + * opt-suggestions.c (option_proposer::build_option_suggestions): + When get_valid_option_values returns empty values, add the + misspelling candidate. + 2019-04-26 Jim Wilson * config/riscv/riscv-protos.h (riscv_move_integer): Add machine_mode diff --git a/gcc/opt-suggestions.c b/gcc/opt-suggestions.c index 415dcc9..a820c78 100644 --- a/gcc/opt-suggestions.c +++ b/gcc/opt-suggestions.c @@ -141,12 +141,14 @@ option_proposer::build_option_suggestions (const char *prefix) } else { + bool option_added = false; if (option->flags & CL_TARGET) { vec option_values = targetm_common.get_valid_option_values (i, prefix); if (!option_values.is_empty ()) { + option_added = true; for (unsigned j = 0; j < option_values.length (); j++) { char *with_arg = concat (opt_text, option_values[j], @@ -158,7 +160,8 @@ option_proposer::build_option_suggestions (const char *prefix) } option_values.release (); } - else + + if (!option_added) add_misspelling_candidates (m_option_suggestions, option, opt_text); } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4c68148..6a52a9b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-04-27 Martin Liska + + PR middle-end/90258 + * gcc.dg/completion-5.c: New test. + * gcc.target/i386/spellcheck-options-5.c: New test. + 2019-04-26 Jim Wilson * gcc.target/riscv/load-immediate.c: New. diff --git a/gcc/testsuite/gcc.dg/completion-5.c b/gcc/testsuite/gcc.dg/completion-5.c new file mode 100644 index 0000000..6719cfb --- /dev/null +++ b/gcc/testsuite/gcc.dg/completion-5.c @@ -0,0 +1,7 @@ +/* { dg-do compile { target { i?86-*-* x86_64-*-* } } } */ +/* { dg-options "--completion=-mfm" } */ + +/* { dg-begin-multiline-output "" } +-mfma +-mfma4 + { dg-end-multiline-output "" } */ diff --git a/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c b/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c new file mode 100644 index 0000000..4a878ba --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c @@ -0,0 +1,5 @@ +/* PR middle-end/90258. */ + +/* { dg-do compile } */ +/* { dg-options "-mandroidX" } */ +/* { dg-error "unrecognized command line option '-mandroidX'; did you mean '-mandroid'" "" { target *-*-* } 0 } */ -- cgit v1.1 From f8b906a2de3044f1dea753b182c244a1a560d40e Mon Sep 17 00:00:00 2001 From: Uros Bizjak Date: Sat, 27 Apr 2019 15:38:19 +0200 Subject: re PR target/89261 (ix86_data_alignment has wrong argument type) PR target/89261 * config/i386/i386-protos.h (ix86_data_alignment): Change the second argument type to unsigned int. * config/i386/i386.c (ix86_data_alignment): Change "align" argument type to unsigned int. testsuite/ChangeLog: PR target/89261 * gcc.target/i386/pr89261.c: New test. From-SVN: r270623 --- gcc/ChangeLog | 8 ++++++++ gcc/config/i386/i386-protos.h | 2 +- gcc/config/i386/i386.c | 6 +++--- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/i386/pr89261.c | 9 +++++++++ 5 files changed, 26 insertions(+), 4 deletions(-) create mode 100644 gcc/testsuite/gcc.target/i386/pr89261.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5d5f03c..c1adf69 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2019-04-27 Uroš Bizjak + + PR target/89261 + * config/i386/i386-protos.h (ix86_data_alignment): Change + the second argument type to unsigned int. + * config/i386/i386.c (ix86_data_alignment): Change "align" + argument type to unsigned int. + 2019-04-27 Martin Liska PR middle-end/90258 diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h index 83645e8..f080ec3 100644 --- a/gcc/config/i386/i386-protos.h +++ b/gcc/config/i386/i386-protos.h @@ -207,7 +207,7 @@ extern void init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, tree, int); #endif /* RTX_CODE */ #ifdef TREE_CODE -extern int ix86_data_alignment (tree, int, bool); +extern int ix86_data_alignment (tree, unsigned int, bool); extern unsigned int ix86_local_alignment (tree, machine_mode, unsigned int); extern unsigned int ix86_minimum_alignment (tree, machine_mode, diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 8a1ffd3..d191e8c 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -29802,7 +29802,7 @@ iamcu_alignment (tree type, int align) instead of that alignment to align the object. */ int -ix86_data_alignment (tree type, int align, bool opt) +ix86_data_alignment (tree type, unsigned int align, bool opt) { /* GCC 4.8 and earlier used to incorrectly assume this alignment even for symbols from other compilation units or symbols that don't need @@ -29810,14 +29810,14 @@ ix86_data_alignment (tree type, int align, bool opt) those compilers, ensure we don't decrease alignment from what we used to assume. */ - int max_align_compat = MIN (256, MAX_OFILE_ALIGNMENT); + unsigned int max_align_compat = MIN (256, MAX_OFILE_ALIGNMENT); /* A data structure, equal or greater than the size of a cache line (64 bytes in the Pentium 4 and other recent Intel processors, including processors based on Intel Core microarchitecture) should be aligned so that its base address is a multiple of a cache line size. */ - int max_align + unsigned int max_align = MIN ((unsigned) ix86_tune_cost->prefetch_block * 8, MAX_OFILE_ALIGNMENT); if (max_align < BITS_PER_WORD) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6a52a9b..15b3e13f2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-27 Uroš Bizjak + + PR target/89261 + * gcc.target/i386/pr89261.c: New test. + 2019-04-27 Martin Liska PR middle-end/90258 diff --git a/gcc/testsuite/gcc.target/i386/pr89261.c b/gcc/testsuite/gcc.target/i386/pr89261.c new file mode 100644 index 0000000..63882c0 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr89261.c @@ -0,0 +1,9 @@ +/* PR target/89261 */ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ + +typedef double __v2df __attribute__ ((vector_size (16), aligned (1 << 28))); + +__v2df foo = { 1.0, 2.0 }; + +/* { dg-final { scan-assembler "\.align\[ \t]+268435456" } } */ -- cgit v1.1 From cf0b6451a9bd6edb734ca7ff7f9346c7e97657b7 Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Sat, 27 Apr 2019 16:52:26 +0000 Subject: [netbsd] d: Fix build failures on sparc*-netbsd gcc/ChangeLog: 2019-04-27 Iain Buclaw * config/netbsd-d.c: Include memmodel.h. Remove unused tree.h, varasm.h, and netbsd-protos.h. From-SVN: r270625 --- gcc/ChangeLog | 5 +++++ gcc/config/netbsd-d.c | 4 +--- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c1adf69..124f506 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-04-27 Iain Buclaw + + * config/netbsd-d.c: Include memmodel.h. Remove unused tree.h, + varasm.h, and netbsd-protos.h. + 2019-04-27 Uroš Bizjak PR target/89261 diff --git a/gcc/config/netbsd-d.c b/gcc/config/netbsd-d.c index 76342aa..5957256 100644 --- a/gcc/config/netbsd-d.c +++ b/gcc/config/netbsd-d.c @@ -21,9 +21,7 @@ along with GCC; see the file COPYING3. If not see #include "system.h" #include "coretypes.h" #include "tm.h" -#include "tree.h" -#include "varasm.h" -#include "netbsd-protos.h" +#include "memmodel.h" #include "tm_p.h" #include "d/d-target.h" #include "d/d-target-def.h" -- cgit v1.1 From a5d1cfeaf255ceb33eb87b1c85d3a6dc96473f91 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sat, 27 Apr 2019 23:56:17 +0200 Subject: re PR c++/90173 (ICE: Segmentation fault (in strip_declarator_types)) PR c++/90173 * g++.dg/cpp1z/class-deduction66.C: Use dg-do compile instead of dg-do run. From-SVN: r270626 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/g++.dg/cpp1z/class-deduction66.C | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 15b3e13f2..6ceb81c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-04-27 Jakub Jelinek + + PR c++/90173 + * g++.dg/cpp1z/class-deduction66.C: Use dg-do compile instead of + dg-do run. + 2019-04-27 Uroš Bizjak PR target/89261 diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C index 7ed119d..3a5d8aa 100644 --- a/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C +++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction66.C @@ -1,5 +1,5 @@ // PR c++/90173 -// { dg-do run { target c++17 } } +// { dg-do compile { target c++17 } } template struct A { }; -- cgit v1.1 From b9a5a80c539f068d5674531e7f650fa0a88c552f Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Sun, 28 Apr 2019 00:16:20 +0000 Subject: Daily bump. From-SVN: r270630 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 56b7f4d..7233689 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190427 +20190428 -- cgit v1.1 From 7d5010ee7af0d31dbb7c259ceae3d416e7fe38d0 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Mon, 29 Apr 2019 00:16:17 +0000 Subject: Daily bump. From-SVN: r270637 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 7233689..5ffe417 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190428 +20190429 -- cgit v1.1 From 4e29671cb258f486e498a0697f88861ff351de50 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Mon, 29 Apr 2019 13:54:58 +0000 Subject: tree-ssa.c (insert_debug_temp_for_var_def): For {CLOBBER} rhs issue a reset. 2019-04-29 Richard Biener * tree-ssa.c (insert_debug_temp_for_var_def): For {CLOBBER} rhs issue a reset. From-SVN: r270652 --- gcc/ChangeLog | 5 +++++ gcc/tree-ssa.c | 5 +++++ 2 files changed, 10 insertions(+) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 124f506..b1c68bb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-04-29 Richard Biener + + * tree-ssa.c (insert_debug_temp_for_var_def): For {CLOBBER} + rhs issue a reset. + 2019-04-27 Iain Buclaw * config/netbsd-d.c: Include memmodel.h. Remove unused tree.h, diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index cf36698..489f6dc 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -358,6 +358,11 @@ insert_debug_temp_for_var_def (gimple_stmt_iterator *gsi, tree var) else if (value == error_mark_node) value = NULL; } + else if (gimple_clobber_p (def_stmt)) + /* We can end up here when rewriting a decl into SSA and coming + along a clobber for the original decl. Turn that into + # DEBUG decl => NULL */ + value = NULL; else if (is_gimple_assign (def_stmt)) { bool no_value = false; -- cgit v1.1 From 1008df90cca4a4f49f2a898115f8756fafff3187 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 29 Apr 2019 16:18:55 +0200 Subject: re PR rtl-optimization/90257 (8% degradation on cpu2006 403.gcc starting with r270484) PR rtl-optimization/90257 * cfgrtl.c (flow_active_insn_p): Return true for USE of a function return value. Revert the revert: 2019-04-21 H.J. Lu PR target/90178 Revert: 2018-11-21 Uros Bizjak Revert the revert: 2013-10-26 Vladimir Makarov Revert: 2013-10-25 Vladimir Makarov * lra-spills.c (lra_final_code_change): Remove useless move insns. From-SVN: r270653 --- gcc/ChangeLog | 21 +++++++++++++++++++++ gcc/cfgrtl.c | 10 +++++++--- gcc/lra-spills.c | 15 +++++++++++++++ 3 files changed, 43 insertions(+), 3 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b1c68bb..0c2b51a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,24 @@ +2019-04-29 Jakub Jelinek + + PR rtl-optimization/90257 + * cfgrtl.c (flow_active_insn_p): Return true for USE of a function + return value. + + Revert the revert: + 2019-04-21 H.J. Lu + + PR target/90178 + Revert: + 2018-11-21 Uros Bizjak + + Revert the revert: + 2013-10-26 Vladimir Makarov + + Revert: + 2013-10-25 Vladimir Makarov + + * lra-spills.c (lra_final_code_change): Remove useless move insns. + 2019-04-29 Richard Biener * tree-ssa.c (insert_debug_temp_for_var_def): For {CLOBBER} diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index 08e534f..e06fb8d 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -543,7 +543,7 @@ update_bb_for_insn (basic_block bb) } -/* Like active_insn_p, except keep the return value clobber around +/* Like active_insn_p, except keep the return value use or clobber around even after reload. */ static bool @@ -556,8 +556,12 @@ flow_active_insn_p (const rtx_insn *insn) programs that fail to return a value. Its effect is to keep the return value from being live across the entire function. If we allow it to be skipped, we introduce the - possibility for register lifetime confusion. */ - if (GET_CODE (PATTERN (insn)) == CLOBBER + possibility for register lifetime confusion. + Similarly, keep a USE of the function return value, otherwise + the USE is dropped and we could fail to thread jump if USE + appears on some paths and not on others, see PR90257. */ + if ((GET_CODE (PATTERN (insn)) == CLOBBER + || GET_CODE (PATTERN (insn)) == USE) && REG_P (XEXP (PATTERN (insn), 0)) && REG_FUNCTION_VALUE_P (XEXP (PATTERN (insn), 0))) return true; diff --git a/gcc/lra-spills.c b/gcc/lra-spills.c index 18db79e7..c19b76a 100644 --- a/gcc/lra-spills.c +++ b/gcc/lra-spills.c @@ -740,6 +740,7 @@ lra_final_code_change (void) int i, hard_regno; basic_block bb; rtx_insn *insn, *curr; + rtx set; int max_regno = max_reg_num (); for (i = FIRST_PSEUDO_REGISTER; i < max_regno; i++) @@ -818,5 +819,19 @@ lra_final_code_change (void) } if (insn_change_p) lra_update_operator_dups (id); + + if ((set = single_set (insn)) != NULL + && REG_P (SET_SRC (set)) && REG_P (SET_DEST (set)) + && REGNO (SET_SRC (set)) == REGNO (SET_DEST (set))) + { + /* Remove an useless move insn. IRA can generate move + insns involving pseudos. It is better remove them + earlier to speed up compiler a bit. It is also + better to do it here as they might not pass final RTL + check in LRA, (e.g. insn moving a control register + into itself). */ + lra_invalidate_insn_data (insn); + delete_insn (insn); + } } } -- cgit v1.1 From 074084767c9d7c4d52d919c343b65bb61c564096 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Mon, 29 Apr 2019 15:17:01 +0000 Subject: Remove DDR_INNER_LOOP ...since it was only ever zero in practice. I wondered about making it a symbolic constant instead, but it didn't seem worth it when there was only one user (and that user was part of the internal tree-data-ref.c implementation). 2019-04-29 Richard Sandiford gcc/ * tree-data-ref.h (data_dependence_relation::inner_loop): Delete. (DDR_INNER_LOOP): Likewise. * tree-data-ref.c (dump_data_dependence_relation): Update accordingly. (initialize_data_dependence_relation): Likewise. (insert_innermost_unit_dist_vector): Use 0 instead of DDR_INNER_LOOP. From-SVN: r270654 --- gcc/ChangeLog | 8 ++++++++ gcc/tree-data-ref.c | 4 +--- gcc/tree-data-ref.h | 5 ----- 3 files changed, 9 insertions(+), 8 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0c2b51a..e548281 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2019-04-29 Richard Sandiford + + * tree-data-ref.h (data_dependence_relation::inner_loop): Delete. + (DDR_INNER_LOOP): Likewise. + * tree-data-ref.c (dump_data_dependence_relation): Update accordingly. + (initialize_data_dependence_relation): Likewise. + (insert_innermost_unit_dist_vector): Use 0 instead of DDR_INNER_LOOP. + 2019-04-29 Jakub Jelinek PR rtl-optimization/90257 diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c index ccb1cfc..6c69f77 100644 --- a/gcc/tree-data-ref.c +++ b/gcc/tree-data-ref.c @@ -460,7 +460,6 @@ dump_data_dependence_relation (FILE *outf, dump_subscript (outf, sub); } - fprintf (outf, " inner loop index: %d\n", DDR_INNER_LOOP (ddr)); fprintf (outf, " loop nest: ("); FOR_EACH_VEC_ELT (DDR_LOOP_NEST (ddr), i, loopi) fprintf (outf, "%d ", loopi->num); @@ -2643,7 +2642,6 @@ initialize_data_dependence_relation (struct data_reference *a, DDR_ARE_DEPENDENT (res) = NULL_TREE; DDR_SUBSCRIPTS (res).create (full_seq.length); DDR_LOOP_NEST (res) = loop_nest; - DDR_INNER_LOOP (res) = 0; DDR_SELF_REFERENCE (res) = false; for (i = 0; i < full_seq.length; ++i) @@ -4478,7 +4476,7 @@ insert_innermost_unit_dist_vector (struct data_dependence_relation *ddr) { lambda_vector dist_v = lambda_vector_new (DDR_NB_LOOPS (ddr)); - dist_v[DDR_INNER_LOOP (ddr)] = 1; + dist_v[0] = 1; save_dist_v (ddr, dist_v); } diff --git a/gcc/tree-data-ref.h b/gcc/tree-data-ref.h index 2a5082d..ab44d07 100644 --- a/gcc/tree-data-ref.h +++ b/gcc/tree-data-ref.h @@ -347,10 +347,6 @@ struct data_dependence_relation /* The classic distance vector. */ vec dist_vects; - /* An index in loop_nest for the innermost loop that varies for - this data dependence relation. */ - unsigned inner_loop; - /* Is the dependence reversed with respect to the lexicographic order? */ bool reversed_p; @@ -406,7 +402,6 @@ typedef struct data_dependence_relation *ddr_p; /* The size of the direction/distance vectors: the number of loops in the loop nest. */ #define DDR_NB_LOOPS(DDR) (DDR_LOOP_NEST (DDR).length ()) -#define DDR_INNER_LOOP(DDR) (DDR)->inner_loop #define DDR_SELF_REFERENCE(DDR) (DDR)->self_reference_p #define DDR_DIST_VECTS(DDR) ((DDR)->dist_vects) -- cgit v1.1 From 348dd384c8f647ba56be21932d068d180be243e3 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Mon, 29 Apr 2019 15:22:41 +0000 Subject: [C++ PATCH] some cleanups https://gcc.gnu.org/ml/gcc-patches/2019-04/msg01174.html * decl.c (duplicate_decls): Add whitespace, move comments into conditional blocks. * method.c (explain_implicit_non_constexpr): Refactor. * pt.c (check_explicit_specialization): Fix indentation. * semantics.c (process_outer_var_ref): Reformat. (finish_id_expression_1): Use STRIP_TEMPLATE. From-SVN: r270655 --- gcc/cp/ChangeLog | 9 +++++++++ gcc/cp/decl.c | 17 ++++++++++------- gcc/cp/method.c | 7 +++---- gcc/cp/pt.c | 2 +- gcc/cp/semantics.c | 30 +++++++++++------------------- 5 files changed, 34 insertions(+), 31 deletions(-) (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index e0a7fb9..5650324 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,12 @@ +2019-04-29 Nathan Sidwell + + * decl.c (duplicate_decls): Add whitespace, move comments into + conditional blocks. + * method.c (explain_implicit_non_constexpr): Refactor. + * pt.c (check_explicit_specialization): Fix indentation. + * semantics.c (process_outer_var_ref): Reformat. + (finish_id_expression_1): Use STRIP_TEMPLATE. + 2019-04-26 Jonathan Wakely PR c++/90243 - orphaned note in uninstantiated constexpr function diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 20a6e2e..5c4a38e 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -1,4 +1,4 @@ -/* Process declarations and variables for C++ compiler. +/* Process declarations and variables for -*- C++ -*- compiler. Copyright (C) 1988-2019 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) @@ -1476,7 +1476,7 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend) if (! same_type_p (TREE_VALUE (t1), TREE_VALUE (t2))) break; -next_arg:; + next_arg:; } warning_at (newdecl_loc, @@ -2386,9 +2386,10 @@ next_arg:; } DECL_TEMPLATE_INFO (newdecl) = DECL_TEMPLATE_INFO (olddecl); } - /* Only functions have these fields. */ + if (DECL_DECLARES_FUNCTION_P (newdecl)) { + /* Only functions have these fields. */ DECL_NONCONVERTING_P (newdecl) = DECL_NONCONVERTING_P (olddecl); DECL_BEFRIENDING_CLASSES (newdecl) = chainon (DECL_BEFRIENDING_CLASSES (newdecl), @@ -2398,10 +2399,12 @@ next_arg:; if (DECL_VIRTUAL_P (newdecl)) SET_DECL_THUNKS (newdecl, DECL_THUNKS (olddecl)); } - /* Only variables have this field. */ - else if (VAR_P (newdecl) - && VAR_HAD_UNKNOWN_BOUND (olddecl)) - SET_VAR_HAD_UNKNOWN_BOUND (newdecl); + else if (VAR_P (newdecl)) + { + /* Only variables have this field. */ + if (VAR_HAD_UNKNOWN_BOUND (olddecl)) + SET_VAR_HAD_UNKNOWN_BOUND (newdecl); + } } if (TREE_CODE (newdecl) == FUNCTION_DECL) diff --git a/gcc/cp/method.c b/gcc/cp/method.c index 03eea40..d92da09 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -1884,15 +1884,14 @@ maybe_explain_implicit_delete (tree decl) void explain_implicit_non_constexpr (tree decl) { - tree parm_type = TREE_VALUE (FUNCTION_FIRST_USER_PARMTYPE (decl)); - bool const_p = CP_TYPE_CONST_P (non_reference (parm_type)); + tree parms = FUNCTION_FIRST_USER_PARMTYPE (decl); + bool const_p = CP_TYPE_CONST_P (non_reference (TREE_VALUE (parms))); tree inh = DECL_INHERITED_CTOR (decl); bool dummy; synthesized_method_walk (DECL_CLASS_CONTEXT (decl), special_function_p (decl), const_p, NULL, NULL, NULL, &dummy, true, - &inh, - FUNCTION_FIRST_USER_PARMTYPE (decl)); + &inh, parms); } /* DECL is an instantiation of an inheriting constructor template. Deduce diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index e682b6d..3e8c70b 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -3026,7 +3026,7 @@ check_explicit_specialization (tree declarator, `operator T'. Grab all the conversion operators, and then select from them. */ tree fns = get_class_binding (ctype, IDENTIFIER_CONV_OP_P (name) - ? conv_op_identifier : name); + ? conv_op_identifier : name); if (fns == NULL_TREE) { diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 3ae9cf0..c919365 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -3482,16 +3482,12 @@ process_outer_var_ref (tree decl, tsubst_flags_t complain, bool odr_use) /* A lambda in an NSDMI (c++/64496). */ break; - if (LAMBDA_EXPR_DEFAULT_CAPTURE_MODE (lambda_expr) - == CPLD_NONE) + if (LAMBDA_EXPR_DEFAULT_CAPTURE_MODE (lambda_expr) == CPLD_NONE) break; - lambda_stack = tree_cons (NULL_TREE, - lambda_expr, - lambda_stack); + lambda_stack = tree_cons (NULL_TREE, lambda_expr, lambda_stack); - containing_function - = decl_function_context (containing_function); + containing_function = decl_function_context (containing_function); } /* In a lambda within a template, wait until instantiation time to implicitly @@ -3502,8 +3498,7 @@ process_outer_var_ref (tree decl, tsubst_flags_t complain, bool odr_use) && DECL_PACK_P (decl)) return decl; - if (lambda_expr && VAR_P (decl) - && DECL_ANON_UNION_VAR_P (decl)) + if (lambda_expr && VAR_P (decl) && DECL_ANON_UNION_VAR_P (decl)) { if (complain & tf_error) error ("cannot capture member %qD of anonymous union", decl); @@ -3512,11 +3507,8 @@ process_outer_var_ref (tree decl, tsubst_flags_t complain, bool odr_use) /* Do lambda capture when processing the id-expression, not when odr-using a variable. */ if (!odr_use && context == containing_function) - { - decl = add_default_capture (lambda_stack, - /*id=*/DECL_NAME (decl), - initializer); - } + decl = add_default_capture (lambda_stack, + /*id=*/DECL_NAME (decl), initializer); /* Only an odr-use of an outer automatic variable causes an error, and a constant variable can decay to a prvalue constant without odr-use. So don't complain yet. */ @@ -3528,8 +3520,7 @@ process_outer_var_ref (tree decl, tsubst_flags_t complain, bool odr_use) { error ("%qD is not captured", decl); tree closure = LAMBDA_EXPR_CLOSURE (lambda_expr); - if (LAMBDA_EXPR_DEFAULT_CAPTURE_MODE (lambda_expr) - == CPLD_NONE) + if (LAMBDA_EXPR_DEFAULT_CAPTURE_MODE (lambda_expr) == CPLD_NONE) inform (location_of (closure), "the lambda has no capture-default"); else if (TYPE_CLASS_SCOPE_P (closure)) @@ -3844,10 +3835,11 @@ finish_id_expression_1 (tree id_expression, } else if (is_overloaded_fn (decl)) { + /* We only need to look at the first function, + because all the fns share the attribute we're + concerned with (all member fns or all non-members). */ tree first_fn = get_first_fn (decl); - - if (TREE_CODE (first_fn) == TEMPLATE_DECL) - first_fn = DECL_TEMPLATE_RESULT (first_fn); + first_fn = STRIP_TEMPLATE (first_fn); /* [basic.def.odr]: "A function whose name appears as a potentially-evaluated expression is odr-used if it is the unique -- cgit v1.1 From d407e7f53b4a9c3f607b692d89b4ad7d87df5933 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Mon, 29 Apr 2019 13:27:13 -0400 Subject: PR c++/82081 - tail call optimization breaks noexcept If a noexcept function calls a function that might throw, doing the tail call optimization means that an exception thrown in the called function will propagate out, breaking the noexcept specification. So we need to prevent the optimization in that case. * tree-tailcall.c (find_tail_calls): Don't turn a call from a nothrow function to a might-throw function into a tail call. From-SVN: r270656 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/g++.dg/tree-ssa/tail-call-1.C | 11 +++++++++++ gcc/tree-tailcall.c | 7 +++++++ 3 files changed, 24 insertions(+) create mode 100644 gcc/testsuite/g++.dg/tree-ssa/tail-call-1.C (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e548281..b4554f6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-29 Jason Merrill + + PR c++/82081 - tail call optimization breaks noexcept + * tree-tailcall.c (find_tail_calls): Don't turn a call from a + nothrow function to a might-throw function into a tail call. + 2019-04-29 Richard Sandiford * tree-data-ref.h (data_dependence_relation::inner_loop): Delete. diff --git a/gcc/testsuite/g++.dg/tree-ssa/tail-call-1.C b/gcc/testsuite/g++.dg/tree-ssa/tail-call-1.C new file mode 100644 index 0000000..c67af6e --- /dev/null +++ b/gcc/testsuite/g++.dg/tree-ssa/tail-call-1.C @@ -0,0 +1,11 @@ +// PR c++/82081 +// { dg-do compile { target c++11 } } +// { dg-additional-options "-O2 -fdump-tree-optimized" } +// { dg-final { scan-tree-dump-not "tail call" "optimized" } } + +int g(int) ; + +int f() noexcept { + int i = 42, j = 43; + return g(i+j); +} diff --git a/gcc/tree-tailcall.c b/gcc/tree-tailcall.c index afe8931..e0265b2 100644 --- a/gcc/tree-tailcall.c +++ b/gcc/tree-tailcall.c @@ -37,6 +37,7 @@ along with GCC; see the file COPYING3. If not see #include "tree-into-ssa.h" #include "tree-dfa.h" #include "except.h" +#include "tree-eh.h" #include "dbgcnt.h" #include "cfgloop.h" #include "common/common-target.h" @@ -472,6 +473,12 @@ find_tail_calls (basic_block bb, struct tailcall **ret) && !auto_var_in_fn_p (ass_var, cfun->decl)) return; + /* If the call might throw an exception that wouldn't propagate out of + cfun, we can't transform to a tail or sibling call (82081). */ + if (stmt_could_throw_p (cfun, stmt) + && !stmt_can_throw_external (cfun, stmt)) + return; + /* We found the call, check whether it is suitable. */ tail_recursion = false; func = gimple_call_fndecl (call); -- cgit v1.1 From 1978e62d47c8808f0535e7d69f3de64186e80e0e Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Mon, 29 Apr 2019 17:53:36 +0000 Subject: re PR tree-optimization/90278 (ICE: verify_gimple failed (error: statement marked for throw, but doesn't)) 2019-04-29 Richard Biener PR tree-optimization/90278 * tree-ssa-forwprop.c (pass_forwprop::execute): Transfer/clean EH on comparison simplification. * gcc.dg/torture/pr90278.c: New testcase. From-SVN: r270657 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/torture/pr90278.c | 13 +++++++++++++ gcc/tree-ssa-forwprop.c | 2 ++ 4 files changed, 26 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/torture/pr90278.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4554f6..d6adeda 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-29 Richard Biener + + PR tree-optimization/90278 + * tree-ssa-forwprop.c (pass_forwprop::execute): Transfer/clean + EH on comparison simplification. + 2019-04-29 Jason Merrill PR c++/82081 - tail call optimization breaks noexcept diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6ceb81c..4089feb 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-29 Richard Biener + + PR tree-optimization/90278 + * gcc.dg/torture/pr90278.c: New testcase. + 2019-04-27 Jakub Jelinek PR c++/90173 diff --git a/gcc/testsuite/gcc.dg/torture/pr90278.c b/gcc/testsuite/gcc.dg/torture/pr90278.c new file mode 100644 index 0000000..617246a --- /dev/null +++ b/gcc/testsuite/gcc.dg/torture/pr90278.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-additional-options "-fexceptions -fnon-call-exceptions" } */ + +double +hc (void) +{ + double dp = 0.0; + double ek[1]; + + ek[0] = 1.0 / dp < 0.0; + + return ek[0]; +} diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c index eeb6281..bbfa1bc 100644 --- a/gcc/tree-ssa-forwprop.c +++ b/gcc/tree-ssa-forwprop.c @@ -2496,6 +2496,8 @@ pass_forwprop::execute (function *fun) { int did_something; did_something = forward_propagate_into_comparison (&gsi); + if (maybe_clean_or_replace_eh_stmt (stmt, gsi_stmt (gsi))) + bitmap_set_bit (to_purge, bb->index); if (did_something == 2) cfg_changed = true; changed = did_something != 0; -- cgit v1.1 From 65937ccf0ba547c4c976ece029d26c373eca62db Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 29 Apr 2019 18:56:24 +0000 Subject: compiler: avoid crash on real declaration of type with existing method This avoids a compiler crash on invalid code. Fixes https://gcc.gnu.org/PR90272 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/174377 From-SVN: r270658 --- gcc/go/gofrontend/MERGE | 2 +- gcc/go/gofrontend/gogo.cc | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 8af11d9..0b4e3f1 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -b117b468264665cfe6ec2cf3affb48330a704fa7 +9476f6183791477dd9b883f51e2a46b224227735 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/gcc/go/gofrontend/gogo.cc b/gcc/go/gofrontend/gogo.cc index 1efaadf..11bc7dd 100644 --- a/gcc/go/gofrontend/gogo.cc +++ b/gcc/go/gofrontend/gogo.cc @@ -7816,7 +7816,8 @@ Type_declaration::define_methods(Named_type* nt) p != this->methods_.end(); ++p) { - if (!(*p)->func_value()->is_sink()) + if ((*p)->is_function_declaration() + || !(*p)->func_value()->is_sink()) nt->add_existing_method(*p); } } -- cgit v1.1 From 95c33590c88563c03e20618af60ed18eda3013aa Mon Sep 17 00:00:00 2001 From: "Michael K. Darling" Date: Mon, 29 Apr 2019 19:31:24 +0000 Subject: gnatvsn.ads: Bump Library_Version to 10. 2019-04-29 Michael K. Darling * gnatvsn.ads: Bump Library_Version to 10. From-SVN: r270659 --- gcc/ada/ChangeLog | 4 ++++ gcc/ada/gnatvsn.ads | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 0888f54..6c8a13b 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,7 @@ +2019-04-29 Michael K. Darling + + * gnatvsn.ads: Bump Library_Version to 10. + 2019-04-24 Ramana Radhakrishnan Bernd Edlinger Jakub Jelinek diff --git a/gcc/ada/gnatvsn.ads b/gcc/ada/gnatvsn.ads index 476941c..7346ba9 100644 --- a/gcc/ada/gnatvsn.ads +++ b/gcc/ada/gnatvsn.ads @@ -38,7 +38,7 @@ package Gnatvsn is -- Static string identifying this version, that can be used as an argument -- to e.g. pragma Ident. - Library_Version : constant String := "9"; + Library_Version : constant String := "10"; -- Library version. It needs to be updated whenever the major version -- number is changed. -- -- cgit v1.1 From 5c1b3334a2f59492f57e32c2ddab06d22941a3f3 Mon Sep 17 00:00:00 2001 From: Vladislav Ivanishin Date: Mon, 29 Apr 2019 19:47:17 +0000 Subject: tree-ssa-uninit.c (is_pred_expr_subset_of): Correctly handle cases where cond2 is NE_EXPR. * tree-ssa-uninit.c (is_pred_expr_subset_of): Correctly handle cases where cond2 is NE_EXPR. (is_value_included_in): Update comment. * gcc.dg/uninit-25-gimple.c: New test. * gcc.dg/uninit-25.c: New test. * gcc.dg/uninit-26.c: New test. * gcc.dg/uninit-27-gimple.c: New test. From-SVN: r270660 --- gcc/ChangeLog | 6 +++++ gcc/testsuite/ChangeLog | 7 ++++++ gcc/testsuite/gcc.dg/uninit-25-gimple.c | 41 +++++++++++++++++++++++++++++++++ gcc/testsuite/gcc.dg/uninit-25.c | 23 ++++++++++++++++++ gcc/testsuite/gcc.dg/uninit-26.c | 23 ++++++++++++++++++ gcc/testsuite/gcc.dg/uninit-27-gimple.c | 41 +++++++++++++++++++++++++++++++++ gcc/tree-ssa-uninit.c | 11 ++++++--- 7 files changed, 149 insertions(+), 3 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/uninit-25-gimple.c create mode 100644 gcc/testsuite/gcc.dg/uninit-25.c create mode 100644 gcc/testsuite/gcc.dg/uninit-26.c create mode 100644 gcc/testsuite/gcc.dg/uninit-27-gimple.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d6adeda..8bb8dcf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-29 Vladislav Ivanishin + + * tree-ssa-uninit.c (is_pred_expr_subset_of): Correctly handle cases + where cond2 is NE_EXPR. + (is_value_included_in): Update comment. + 2019-04-29 Richard Biener PR tree-optimization/90278 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4089feb..d642815 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2019-04-29 Vladislav Ivanishin + + * gcc.dg/uninit-25-gimple.c: New test. + * gcc.dg/uninit-25.c: New test. + * gcc.dg/uninit-26.c: New test. + * gcc.dg/uninit-27-gimple.c: New test. + 2019-04-29 Richard Biener PR tree-optimization/90278 diff --git a/gcc/testsuite/gcc.dg/uninit-25-gimple.c b/gcc/testsuite/gcc.dg/uninit-25-gimple.c new file mode 100644 index 0000000..0c0acd6 --- /dev/null +++ b/gcc/testsuite/gcc.dg/uninit-25-gimple.c @@ -0,0 +1,41 @@ +/* { dg-do compile } */ +/* { dg-options "-fgimple -O -Wmaybe-uninitialized" } */ + +unsigned int __GIMPLE (ssa,startwith("uninit1")) +foo (unsigned int v) +{ + unsigned int undef; /* { dg-warning "may be used uninitialized" } */ + unsigned int _2; + unsigned int _9; + unsigned int _10; + + __BB(2): + if (v_4(D) != 1u) + goto __BB3; + else + goto __BB4; + + __BB(3): + undef_8 = 8u; // 'undef' is defined conditionally (under 'v != 1' predicate) + goto __BB4; + + __BB(4): + // An undef value flows into a phi. + undef_1 = __PHI (__BB2: undef_5(D), __BB3: undef_8); + if (v_4(D) != 2u) // This condition is neither a superset nor a subset of 'v != 1'. + goto __BB5; + else + goto __BB6; + + __BB(5): + _9 = undef_1; // The phi value is used here (under 'v != 2' predicate). + goto __BB7; + + __BB(6): + _10 = v_4(D); + goto __BB7; + + __BB(7): + _2 = __PHI (__BB5: _9, __BB6: _10); + return _2; +} diff --git a/gcc/testsuite/gcc.dg/uninit-25.c b/gcc/testsuite/gcc.dg/uninit-25.c new file mode 100644 index 0000000..ffffce3 --- /dev/null +++ b/gcc/testsuite/gcc.dg/uninit-25.c @@ -0,0 +1,23 @@ +/* { dg-do compile } */ +/* { dg-options "-O -Wmaybe-uninitialized" } */ + +extern unsigned bar (void); +extern void quux (void); + +unsigned foo (unsigned v) +{ + unsigned u; + if (v != 1) + u = bar (); + + // Prevent the "dom" pass from changing the CFG layout based on the inference + // 'if (v != 1) is false then (v != 2) is true'. (Now it would have to + // duplicate the loop in order to do so, which is deemed expensive.) + for (int i = 0; i < 10; i++) + quux (); + + if (v != 2) + return u; /* { dg-warning "may be used uninitialized" } */ + + return 0; +} diff --git a/gcc/testsuite/gcc.dg/uninit-26.c b/gcc/testsuite/gcc.dg/uninit-26.c new file mode 100644 index 0000000..60ac48c --- /dev/null +++ b/gcc/testsuite/gcc.dg/uninit-26.c @@ -0,0 +1,23 @@ +/* { dg-do compile } */ +/* { dg-options "-O -Wmaybe-uninitialized" } */ + +extern unsigned bar (void); +extern void quux (void); + +unsigned foo (unsigned v) +{ + unsigned u; + if (v != 100) + u = bar (); + + // Prevent the "dom" pass from changing the CFG layout based on the inference + // 'if (v != 100) is false then (v < 105) is true'. (Now it would have to + // duplicate the loop in order to do so, which is deemed expensive.) + for (int i = 0; i < 10; i++) + quux (); + + if (v < 105) /* v == 100 falls into this range. */ + return u; /* { dg-warning "may be used uninitialized" } */ + + return 0; +} diff --git a/gcc/testsuite/gcc.dg/uninit-27-gimple.c b/gcc/testsuite/gcc.dg/uninit-27-gimple.c new file mode 100644 index 0000000..f75469d --- /dev/null +++ b/gcc/testsuite/gcc.dg/uninit-27-gimple.c @@ -0,0 +1,41 @@ +/* { dg-do compile } */ +/* { dg-options "-fgimple -O -Wmaybe-uninitialized" } */ + +unsigned int __GIMPLE (ssa,startwith("uninit1")) +foo (unsigned int v) +{ + unsigned int undef; /* { dg-bogus "may be used uninitialized" } */ + unsigned int _2; + unsigned int _9; + unsigned int _10; + + __BB(2): + if (v_4(D) != 100u) + goto __BB3; + else + goto __BB4; + + __BB(3): + undef_8 = 8u; // 'undef' is defined conditionally (under 'v != 100' predicate) + goto __BB4; + + __BB(4): + // An undef value flows into a phi. + undef_1 = __PHI (__BB2: undef_5(D), __BB3: undef_8); + if (v_4(D) < 100u) + goto __BB5; + else + goto __BB6; + + __BB(5): + _9 = undef_1; // The phi value is used here (under 'v < 100' predicate). + goto __BB7; + + __BB(6): + _10 = v_4(D); + goto __BB7; + + __BB(7): + _2 = __PHI (__BB5: _9, __BB6: _10); + return _2; +} diff --git a/gcc/tree-ssa-uninit.c b/gcc/tree-ssa-uninit.c index 55a55a0..8315878 100644 --- a/gcc/tree-ssa-uninit.c +++ b/gcc/tree-ssa-uninit.c @@ -1011,8 +1011,7 @@ get_cmp_code (enum tree_code orig_cmp_code, bool swap_cond, bool invert) return tc; } -/* Returns true if VAL falls in the range defined by BOUNDARY and CMPC, i.e. - all values in the range satisfies (x CMPC BOUNDARY) == true. */ +/* Returns whether VAL CMPC BOUNDARY is true. */ static bool is_value_included_in (tree val, tree boundary, enum tree_code cmpc) @@ -1488,11 +1487,17 @@ is_pred_expr_subset_of (pred_info expr1, pred_info expr2) if (expr2.invert) code2 = invert_tree_comparison (code2, false); + if (code2 == NE_EXPR && code1 == NE_EXPR) + return false; + + if (code2 == NE_EXPR) + return !is_value_included_in (expr2.pred_rhs, expr1.pred_rhs, code1); + if ((code1 == EQ_EXPR || code1 == BIT_AND_EXPR) && code2 == BIT_AND_EXPR) return (wi::to_wide (expr1.pred_rhs) == (wi::to_wide (expr1.pred_rhs) & wi::to_wide (expr2.pred_rhs))); - if (code1 != code2 && code2 != NE_EXPR) + if (code1 != code2) return false; if (is_value_included_in (expr1.pred_rhs, expr2.pred_rhs, code2)) -- cgit v1.1 From 856f73d1373aa768fdb37266a552dee4f8d98a5f Mon Sep 17 00:00:00 2001 From: Maya Rashish Date: Mon, 29 Apr 2019 19:48:52 +0000 Subject: config.gcc (default_gnu_indirect_function): Default to yes for arm*-*-netbsd*... * config.gcc (default_gnu_indirect_function): Default to yes for arm*-*-netbsd*, i[34567]86-*-netbsd*, powerpc*-*-netbsd*, sparc*-*-netbsd*, x86_64-*-netbsd* From-SVN: r270661 --- gcc/ChangeLog | 6 ++++++ gcc/config.gcc | 5 +++++ 2 files changed, 11 insertions(+) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8bb8dcf..eafd4de 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-29 Maya Rashish + + * config.gcc (default_gnu_indirect_function): Default to yes + for arm*-*-netbsd*, i[34567]86-*-netbsd*, powerpc*-*-netbsd*, + sparc*-*-netbsd*, x86_64-*-netbsd*. + 2019-04-29 Vladislav Ivanishin * tree-ssa-uninit.c (is_pred_expr_subset_of): Correctly handle cases diff --git a/gcc/config.gcc b/gcc/config.gcc index c7a464c..67d68d9 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -850,6 +850,11 @@ case ${target} in nbsd_tm_file="netbsd.h netbsd-stdint.h netbsd-elf.h" default_use_cxa_atexit=yes target_has_targetdm=yes + case ${target} in + arm*-* | i[34567]86-* | powerpc*-* | sparc*-* | x86_64-*) + default_gnu_indirect_function=yes + ;; + esac ;; *-*-openbsd*) tmake_file="t-openbsd" -- cgit v1.1 From 7fb1d0214e4654bbecd212c7f0c2254398b46b13 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Mon, 29 Apr 2019 14:21:57 -0600 Subject: * passes.def: Move -Wrestrict pass after copy propagation. From-SVN: r270662 --- gcc/ChangeLog | 4 ++++ gcc/passes.def | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eafd4de..4a0d547 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-04-29 Jeff Law + + * passes.def: Move -Wrestrict pass after copy propagation. + 2019-04-29 Maya Rashish * config.gcc (default_gnu_indirect_function): Default to yes diff --git a/gcc/passes.def b/gcc/passes.def index bc147c4..99640d5 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -315,10 +315,10 @@ along with GCC; see the file COPYING3. If not see NEXT_PASS (pass_strlen); NEXT_PASS (pass_thread_jumps); NEXT_PASS (pass_vrp, false /* warn_array_bounds_p */); - NEXT_PASS (pass_warn_restrict); /* Threading can leave many const/copy propagations in the IL. Clean them up. */ NEXT_PASS (pass_copy_prop); + NEXT_PASS (pass_warn_restrict); NEXT_PASS (pass_dse); NEXT_PASS (pass_cd_dce); NEXT_PASS (pass_forwprop); -- cgit v1.1 From 4fb7c86dd01ea8057ab5da6b9443a8f52ed1b9c7 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Mon, 29 Apr 2019 23:27:52 +0100 Subject: * gcc.pot: Regenerate. From-SVN: r270665 --- gcc/po/ChangeLog | 4 + gcc/po/gcc.pot | 18245 +++++++++++++++++++++++++++-------------------------- 2 files changed, 9134 insertions(+), 9115 deletions(-) (limited to 'gcc') diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 4cf7f12..60d6901 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2019-04-29 Joseph Myers + + * gcc.pot: Regenerate. + 2019-04-23 Joseph Myers * be.po, da.po, de.po, el.po, fi.po, fr.po, hr.po, id.po, ja.po, diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot index c08a7bc..68d8a59 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: 2019-04-13 17:21+0200\n" +"POT-Creation-Date: 2019-04-29 22:22+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,19 +18,19 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: cfgrtl.c:2705 +#: cfgrtl.c:2709 msgid "flow control insn inside a basic block" msgstr "" -#: cfgrtl.c:2937 +#: cfgrtl.c:2941 msgid "wrong insn in the fallthru edge" msgstr "" -#: cfgrtl.c:2994 +#: cfgrtl.c:2998 msgid "insn outside basic block" msgstr "" -#: cfgrtl.c:3002 +#: cfgrtl.c:3006 msgid "return not followed by barrier" msgstr "" @@ -194,12 +194,12 @@ msgstr "" #. PRINT_OPERAND must handle them. #. We can't handle floating point constants; #. TARGET_PRINT_OPERAND must handle them. -#: final.c:4149 config/arc/arc.c:6143 config/i386/i386.c:16997 +#: final.c:4149 config/arc/arc.c:6158 config/i386/i386.c:16998 #, c-format msgid "floating constant misused" msgstr "" -#: final.c:4207 config/arc/arc.c:6240 config/i386/i386.c:17088 +#: final.c:4207 config/arc/arc.c:6255 config/i386/i386.c:17089 #: config/pdp11/pdp11.c:1874 #, c-format msgid "invalid expression as operand" @@ -1432,7 +1432,7 @@ msgstr "" msgid "options enabled: " msgstr "" -#: tree-diagnostic.c:299 c/c-decl.c:5617 c/c-typeck.c:7603 cp/error.c:1061 +#: tree-diagnostic.c:299 c/c-decl.c:5634 c/c-typeck.c:7603 cp/error.c:1061 #: c-family/c-pretty-print.c:413 #, gcc-internal-format msgid "" @@ -3212,7 +3212,7 @@ msgstr "" msgid "incompatible floating point / vector register operand for '%%%c'" msgstr "" -#: config/aarch64/aarch64.c:7803 config/arm/arm.c:22872 +#: config/aarch64/aarch64.c:7803 config/arm/arm.c:22877 #, c-format msgid "missing operand" msgstr "" @@ -3237,7 +3237,7 @@ msgstr "" msgid "invalid address mode" msgstr "" -#: config/alpha/alpha.c:5129 config/i386/i386.c:18255 +#: config/alpha/alpha.c:5129 config/i386/i386.c:18256 #: config/rs6000/rs6000.c:21430 config/sparc/sparc.c:9342 #, c-format msgid "'%%&' used without any local dynamic TLS references" @@ -3329,107 +3329,107 @@ msgstr "" msgid "invalid operand address" msgstr "" -#: config/arc/arc.c:4207 +#: config/arc/arc.c:4220 #, c-format msgid "invalid operand to %%Z code" msgstr "" -#: config/arc/arc.c:4215 +#: config/arc/arc.c:4228 #, c-format msgid "invalid operand to %%z code" msgstr "" -#: config/arc/arc.c:4223 +#: config/arc/arc.c:4236 #, c-format msgid "invalid operands to %%c code" msgstr "" -#: config/arc/arc.c:4231 +#: config/arc/arc.c:4244 #, c-format msgid "invalid operand to %%M code" msgstr "" -#: config/arc/arc.c:4239 config/m32r/m32r.c:2103 +#: config/arc/arc.c:4252 config/m32r/m32r.c:2103 #, c-format msgid "invalid operand to %%p code" msgstr "" -#: config/arc/arc.c:4250 config/m32r/m32r.c:2096 +#: config/arc/arc.c:4263 config/m32r/m32r.c:2096 #, c-format msgid "invalid operand to %%s code" msgstr "" -#: config/arc/arc.c:4398 config/m32r/m32r.c:2129 +#: config/arc/arc.c:4411 config/m32r/m32r.c:2129 #, c-format msgid "invalid operand to %%R code" msgstr "" -#: config/arc/arc.c:4474 config/m32r/m32r.c:2152 +#: config/arc/arc.c:4487 config/m32r/m32r.c:2152 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "" -#: config/arc/arc.c:4542 config/m32r/m32r.c:2223 +#: config/arc/arc.c:4555 config/m32r/m32r.c:2223 #, c-format msgid "invalid operand to %%U code" msgstr "" -#: config/arc/arc.c:4554 +#: config/arc/arc.c:4567 #, c-format msgid "invalid operand to %%V code" msgstr "" -#: config/arc/arc.c:4611 +#: config/arc/arc.c:4624 #, c-format msgid "invalid operand to %%O code" msgstr "" #. Unknown flag. #. Undocumented flag. -#: config/arc/arc.c:4637 config/epiphany/epiphany.c:1305 +#: config/arc/arc.c:4650 config/epiphany/epiphany.c:1305 #: config/m32r/m32r.c:2250 config/nds32/nds32.c:3512 config/sparc/sparc.c:9621 #, c-format msgid "invalid operand output code" msgstr "" -#: config/arc/arc.c:6228 +#: config/arc/arc.c:6243 #, c-format msgid "invalid UNSPEC as operand: %d" msgstr "" -#: config/arc/arc.c:6517 config/cris/cris.c:2571 +#: config/arc/arc.c:6532 config/cris/cris.c:2571 msgid "unrecognized supposed constant" msgstr "" -#: config/arm/arm.c:19310 config/arm/arm.c:19335 config/arm/arm.c:19345 -#: config/arm/arm.c:19354 config/arm/arm.c:19363 +#: config/arm/arm.c:19315 config/arm/arm.c:19340 config/arm/arm.c:19350 +#: config/arm/arm.c:19359 config/arm/arm.c:19368 #, c-format msgid "invalid shift operand" msgstr "" -#: config/arm/arm.c:22203 config/arm/arm.c:22221 +#: config/arm/arm.c:22208 config/arm/arm.c:22226 #, c-format msgid "predicated Thumb instruction" msgstr "" -#: config/arm/arm.c:22209 +#: config/arm/arm.c:22214 #, c-format msgid "predicated instruction in conditional sequence" msgstr "" -#: config/arm/arm.c:22327 config/arm/arm.c:22340 config/arm/arm.c:22365 +#: config/arm/arm.c:22332 config/arm/arm.c:22345 config/arm/arm.c:22370 #: config/nios2/nios2.c:3070 #, c-format msgid "Unsupported operand for code '%c'" msgstr "" -#: config/arm/arm.c:22442 config/arm/arm.c:22464 config/arm/arm.c:22474 -#: config/arm/arm.c:22484 config/arm/arm.c:22494 config/arm/arm.c:22533 -#: config/arm/arm.c:22551 config/arm/arm.c:22576 config/arm/arm.c:22591 -#: config/arm/arm.c:22618 config/arm/arm.c:22625 config/arm/arm.c:22643 -#: config/arm/arm.c:22650 config/arm/arm.c:22658 config/arm/arm.c:22679 -#: config/arm/arm.c:22686 config/arm/arm.c:22819 config/arm/arm.c:22826 -#: config/arm/arm.c:22853 config/arm/arm.c:22860 config/bfin/bfin.c:1441 +#: config/arm/arm.c:22447 config/arm/arm.c:22469 config/arm/arm.c:22479 +#: config/arm/arm.c:22489 config/arm/arm.c:22499 config/arm/arm.c:22538 +#: config/arm/arm.c:22556 config/arm/arm.c:22581 config/arm/arm.c:22596 +#: config/arm/arm.c:22623 config/arm/arm.c:22630 config/arm/arm.c:22648 +#: config/arm/arm.c:22655 config/arm/arm.c:22663 config/arm/arm.c:22684 +#: config/arm/arm.c:22691 config/arm/arm.c:22824 config/arm/arm.c:22831 +#: config/arm/arm.c:22858 config/arm/arm.c:22865 config/bfin/bfin.c:1441 #: config/bfin/bfin.c:1448 config/bfin/bfin.c:1455 config/bfin/bfin.c:1462 #: config/bfin/bfin.c:1471 config/bfin/bfin.c:1478 config/bfin/bfin.c:1485 #: config/bfin/bfin.c:1492 config/nds32/nds32.c:3538 @@ -3437,13 +3437,13 @@ msgstr "" msgid "invalid operand for code '%c'" msgstr "" -#: config/arm/arm.c:22546 +#: config/arm/arm.c:22551 #, c-format msgid "instruction never executed" msgstr "" #. Former Maverick support, removed after GCC-4.7. -#: config/arm/arm.c:22567 +#: config/arm/arm.c:22572 #, c-format msgid "obsolete Maverick format code '%c'" msgstr "" @@ -3554,7 +3554,7 @@ msgstr "" #: config/cris/cris.c:625 config/ft32/ft32.c:110 config/moxie/moxie.c:108 #: final.c:3608 final.c:3610 fold-const.c:267 gcc.c:5393 gcc.c:5407 -#: rtl-error.c:101 toplev.c:326 vr-values.c:2450 cp/typeck.c:6502 +#: rtl-error.c:101 toplev.c:326 vr-values.c:2450 cp/typeck.c:6520 #: lto/lto-object.c:184 lto/lto-object.c:281 lto/lto-object.c:338 #: lto/lto-object.c:362 #, gcc-internal-format, gfc-internal-format @@ -3789,98 +3789,98 @@ msgstr "" msgid "invalid fp constant" msgstr "" -#: config/i386/i386.c:17082 +#: config/i386/i386.c:17083 #, c-format msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:17621 +#: config/i386/i386.c:17622 #, c-format msgid "invalid use of register '%s'" msgstr "" -#: config/i386/i386.c:17626 +#: config/i386/i386.c:17627 #, c-format msgid "invalid use of asm flag output" msgstr "" -#: config/i386/i386.c:17857 +#: config/i386/i386.c:17858 #, c-format msgid "invalid operand size for operand code 'O'" msgstr "" -#: config/i386/i386.c:17892 +#: config/i386/i386.c:17893 #, c-format msgid "invalid operand size for operand code 'z'" msgstr "" -#: config/i386/i386.c:17961 +#: config/i386/i386.c:17962 #, c-format msgid "invalid operand type used with operand code 'Z'" msgstr "" -#: config/i386/i386.c:17966 +#: config/i386/i386.c:17967 #, c-format msgid "invalid operand size for operand code 'Z'" msgstr "" -#: config/i386/i386.c:18043 +#: config/i386/i386.c:18044 #, c-format msgid "operand is not a condition code, invalid operand code 'Y'" msgstr "" -#: config/i386/i386.c:18122 +#: config/i386/i386.c:18123 #, c-format msgid "operand is not a condition code, invalid operand code 'D'" msgstr "" -#: config/i386/i386.c:18140 +#: config/i386/i386.c:18141 #, c-format msgid "operand is not a condition code, invalid operand code '%c'" msgstr "" -#: config/i386/i386.c:18153 +#: config/i386/i386.c:18154 #, c-format msgid "" "operand is not an offsettable memory reference, invalid operand code 'H'" msgstr "" -#: config/i386/i386.c:18168 +#: config/i386/i386.c:18169 #, c-format msgid "operand is not an integer, invalid operand code 'K'" msgstr "" -#: config/i386/i386.c:18196 +#: config/i386/i386.c:18197 #, c-format msgid "operand is not a specific integer, invalid operand code 'r'" msgstr "" -#: config/i386/i386.c:18214 +#: config/i386/i386.c:18215 #, c-format msgid "operand is not an integer, invalid operand code 'R'" msgstr "" -#: config/i386/i386.c:18237 +#: config/i386/i386.c:18238 #, c-format msgid "operand is not a specific integer, invalid operand code 'R'" msgstr "" -#: config/i386/i386.c:18341 +#: config/i386/i386.c:18342 #, c-format msgid "invalid operand code '%c'" msgstr "" -#: config/i386/i386.c:18403 +#: config/i386/i386.c:18404 #, c-format msgid "invalid constraints for operand" msgstr "" -#: config/i386/i386.c:18453 +#: config/i386/i386.c:18454 #, c-format msgid "invalid vector immediate" msgstr "" -#: config/i386/i386.c:29331 +#: config/i386/i386.c:29334 msgid "unknown insn mode" msgstr "" @@ -4022,8 +4022,8 @@ msgstr "" #: config/mips/mips.c:9077 config/mips/mips.c:9080 config/mips/mips.c:9092 #: config/mips/mips.c:9095 config/mips/mips.c:9155 config/mips/mips.c:9162 #: config/mips/mips.c:9183 config/mips/mips.c:9198 config/mips/mips.c:9217 -#: config/mips/mips.c:9226 config/riscv/riscv.c:3195 config/riscv/riscv.c:3201 -#: config/riscv/riscv.c:3210 +#: config/mips/mips.c:9226 config/riscv/riscv.c:3223 config/riscv/riscv.c:3229 +#: config/riscv/riscv.c:3238 #, c-format msgid "invalid use of '%%%c'" msgstr "" @@ -4343,23 +4343,23 @@ msgstr "" msgid "invalid expression for output modifier '%c'" msgstr "" -#: config/s390/s390.c:11723 +#: config/s390/s390.c:11733 msgid "vector argument passed to unprototyped function" msgstr "" -#: config/s390/s390.c:16047 +#: config/s390/s390.c:16057 msgid "types differ in signedness" msgstr "" -#: config/s390/s390.c:16057 +#: config/s390/s390.c:16067 msgid "binary operator does not support two vector bool operands" msgstr "" -#: config/s390/s390.c:16060 +#: config/s390/s390.c:16070 msgid "binary operator does not support vector bool operand" msgstr "" -#: config/s390/s390.c:16068 +#: config/s390/s390.c:16078 msgid "" "binary operator does not support mixing vector bool with floating point " "vector operands" @@ -4620,14 +4620,14 @@ msgstr "" #. <~~~~~~~~~ declaration ~~~~~~~~~~> #. Use c_parser_require to get an error with a fix-it hint. #: c/c-parser.c:2280 c/c-parser.c:2396 c/c-parser.c:2410 c/c-parser.c:5034 -#: c/c-parser.c:5612 c/c-parser.c:6060 c/c-parser.c:6229 c/c-parser.c:6262 -#: c/c-parser.c:6503 c/c-parser.c:10102 c/c-parser.c:10137 c/c-parser.c:10168 -#: c/c-parser.c:10215 c/c-parser.c:10396 c/c-parser.c:11182 c/c-parser.c:11252 -#: c/c-parser.c:11295 c/c-parser.c:16448 c/c-parser.c:16472 c/c-parser.c:16490 -#: c/c-parser.c:16842 c/c-parser.c:16892 c/gimple-parser.c:306 +#: c/c-parser.c:5612 c/c-parser.c:6062 c/c-parser.c:6239 c/c-parser.c:6273 +#: c/c-parser.c:6520 c/c-parser.c:10119 c/c-parser.c:10154 c/c-parser.c:10185 +#: c/c-parser.c:10232 c/c-parser.c:10413 c/c-parser.c:11199 c/c-parser.c:11269 +#: c/c-parser.c:11312 c/c-parser.c:16465 c/c-parser.c:16489 c/c-parser.c:16507 +#: c/c-parser.c:16859 c/c-parser.c:16909 c/gimple-parser.c:306 #: c/gimple-parser.c:346 c/gimple-parser.c:355 c/gimple-parser.c:522 #: c/gimple-parser.c:1820 c/gimple-parser.c:1855 c/gimple-parser.c:1934 -#: c/gimple-parser.c:1961 c/c-parser.c:3232 c/c-parser.c:10389 +#: c/gimple-parser.c:1961 c/c-parser.c:3232 c/c-parser.c:10406 #: c/gimple-parser.c:1707 c/gimple-parser.c:1746 cp/parser.c:28779 #: cp/parser.c:29358 #, gcc-internal-format @@ -4636,12 +4636,12 @@ msgstr "" #: c/c-parser.c:2845 c/c-parser.c:3764 c/c-parser.c:3934 c/c-parser.c:3996 #: c/c-parser.c:4049 c/c-parser.c:4358 c/c-parser.c:4423 c/c-parser.c:4432 -#: c/c-parser.c:4484 c/c-parser.c:4493 c/c-parser.c:7657 c/c-parser.c:7723 -#: c/c-parser.c:8188 c/c-parser.c:8210 c/c-parser.c:8266 c/c-parser.c:8375 -#: c/c-parser.c:9158 c/c-parser.c:9569 c/c-parser.c:10503 c/c-parser.c:12641 -#: c/c-parser.c:13274 c/c-parser.c:13333 c/c-parser.c:13388 c/c-parser.c:14574 -#: c/c-parser.c:14672 c/c-parser.c:15777 c/c-parser.c:16532 c/c-parser.c:16850 -#: c/c-parser.c:19015 c/c-parser.c:19093 c/gimple-parser.c:430 +#: c/c-parser.c:4484 c/c-parser.c:4493 c/c-parser.c:7674 c/c-parser.c:7740 +#: c/c-parser.c:8205 c/c-parser.c:8227 c/c-parser.c:8283 c/c-parser.c:8392 +#: c/c-parser.c:9175 c/c-parser.c:9586 c/c-parser.c:10520 c/c-parser.c:12658 +#: c/c-parser.c:13291 c/c-parser.c:13350 c/c-parser.c:13405 c/c-parser.c:14591 +#: c/c-parser.c:14689 c/c-parser.c:15794 c/c-parser.c:16549 c/c-parser.c:16867 +#: c/c-parser.c:19032 c/c-parser.c:19110 c/gimple-parser.c:430 #: c/gimple-parser.c:440 c/gimple-parser.c:606 c/gimple-parser.c:705 #: c/gimple-parser.c:1088 c/gimple-parser.c:1200 c/gimple-parser.c:1216 #: c/gimple-parser.c:1232 c/gimple-parser.c:1259 c/gimple-parser.c:1458 @@ -4651,9 +4651,9 @@ msgstr "" msgid "expected %<)%>" msgstr "" -#: c/c-parser.c:3852 c/c-parser.c:4803 c/c-parser.c:4839 c/c-parser.c:6555 -#: c/c-parser.c:8366 c/c-parser.c:9256 c/c-parser.c:9545 c/c-parser.c:12104 -#: c/c-parser.c:19646 c/c-parser.c:19648 c/gimple-parser.c:1435 +#: c/c-parser.c:3852 c/c-parser.c:4803 c/c-parser.c:4839 c/c-parser.c:6572 +#: c/c-parser.c:8383 c/c-parser.c:9273 c/c-parser.c:9562 c/c-parser.c:12121 +#: c/c-parser.c:19663 c/c-parser.c:19665 c/gimple-parser.c:1435 #: cp/parser.c:29370 #, gcc-internal-format msgid "expected %<]%>" @@ -4664,87 +4664,87 @@ msgid "expected %<;%>, %<,%> or %<)%>" msgstr "" #. Look for the two `(' tokens. -#: c/c-parser.c:4453 c/c-parser.c:4458 c/c-parser.c:12624 c/c-parser.c:13363 -#: c/c-parser.c:18823 c/c-parser.c:19036 c/gimple-parser.c:378 +#: c/c-parser.c:4453 c/c-parser.c:4458 c/c-parser.c:12641 c/c-parser.c:13380 +#: c/c-parser.c:18840 c/c-parser.c:19053 c/gimple-parser.c:378 #: c/gimple-parser.c:416 c/gimple-parser.c:675 c/gimple-parser.c:1083 #: c/gimple-parser.c:1190 c/gimple-parser.c:1252 c/gimple-parser.c:1618 #: c/gimple-parser.c:1629 c/gimple-parser.c:1778 c/gimple-parser.c:1888 -#: c/c-parser.c:12446 cp/parser.c:29361 +#: c/c-parser.c:12463 cp/parser.c:29361 #, gcc-internal-format msgid "expected %<(%>" msgstr "" -#: c/c-parser.c:4973 c/c-parser.c:10732 c/c-parser.c:17394 c/c-parser.c:19875 +#: c/c-parser.c:4973 c/c-parser.c:10749 c/c-parser.c:17411 c/c-parser.c:19892 #: c/gimple-parser.c:299 c/gimple-parser.c:1894 c/c-parser.c:3046 -#: c/c-parser.c:3253 c/c-parser.c:10284 cp/parser.c:18816 cp/parser.c:29367 +#: c/c-parser.c:3253 c/c-parser.c:10301 cp/parser.c:18816 cp/parser.c:29367 #, gcc-internal-format msgid "expected %<{%>" msgstr "" -#: c/c-parser.c:5212 c/c-parser.c:5221 c/c-parser.c:6809 c/c-parser.c:7859 -#: c/c-parser.c:10496 c/c-parser.c:10882 c/c-parser.c:10943 c/c-parser.c:12086 -#: c/c-parser.c:12985 c/c-parser.c:13191 c/c-parser.c:13608 c/c-parser.c:13704 -#: c/c-parser.c:14326 c/c-parser.c:14453 c/c-parser.c:18880 c/c-parser.c:18939 +#: c/c-parser.c:5212 c/c-parser.c:5221 c/c-parser.c:6826 c/c-parser.c:7876 +#: c/c-parser.c:10513 c/c-parser.c:10899 c/c-parser.c:10960 c/c-parser.c:12103 +#: c/c-parser.c:13002 c/c-parser.c:13208 c/c-parser.c:13625 c/c-parser.c:13721 +#: c/c-parser.c:14343 c/c-parser.c:14470 c/c-parser.c:18897 c/c-parser.c:18956 #: c/gimple-parser.c:442 c/gimple-parser.c:745 c/gimple-parser.c:1942 -#: c/gimple-parser.c:1969 c/c-parser.c:6460 c/c-parser.c:12549 +#: c/gimple-parser.c:1969 c/c-parser.c:6477 c/c-parser.c:12566 #: cp/parser.c:29400 cp/parser.c:30530 cp/parser.c:33265 #, gcc-internal-format msgid "expected %<:%>" msgstr "" -#: c/c-parser.c:6044 cp/parser.c:29293 +#: c/c-parser.c:6045 cp/parser.c:29293 #, gcc-internal-format msgid "expected %" msgstr "" -#: c/c-parser.c:7621 c/c-parser.c:7810 c/c-parser.c:8256 c/c-parser.c:8299 -#: c/c-parser.c:8437 c/c-parser.c:9148 c/c-parser.c:13368 c/c-parser.c:14409 +#: c/c-parser.c:7638 c/c-parser.c:7827 c/c-parser.c:8273 c/c-parser.c:8316 +#: c/c-parser.c:8454 c/c-parser.c:9165 c/c-parser.c:13385 c/c-parser.c:14426 #: cp/parser.c:28777 cp/parser.c:29376 #, gcc-internal-format msgid "expected %<,%>" msgstr "" -#: c/c-parser.c:8134 +#: c/c-parser.c:8151 msgid "expected %<.%>" msgstr "" -#: c/c-parser.c:9955 c/c-parser.c:9987 c/c-parser.c:10227 cp/parser.c:31106 +#: c/c-parser.c:9972 c/c-parser.c:10004 c/c-parser.c:10244 cp/parser.c:31106 #: cp/parser.c:31180 #, gcc-internal-format msgid "expected %<@end%>" msgstr "" -#: c/c-parser.c:10645 c/gimple-parser.c:1185 cp/parser.c:29385 +#: c/c-parser.c:10662 c/gimple-parser.c:1185 cp/parser.c:29385 #, gcc-internal-format msgid "expected %<>%>" msgstr "" -#: c/c-parser.c:13796 c/c-parser.c:14690 cp/parser.c:29409 +#: c/c-parser.c:13813 c/c-parser.c:14707 cp/parser.c:29409 #, gcc-internal-format msgid "expected %<,%> or %<)%>" msgstr "" #. All following cases are statements with LHS. -#: c/c-parser.c:14318 c/c-parser.c:16181 c/c-parser.c:16225 c/c-parser.c:16457 -#: c/c-parser.c:16831 c/c-parser.c:19077 c/gimple-parser.c:597 +#: c/c-parser.c:14335 c/c-parser.c:16198 c/c-parser.c:16242 c/c-parser.c:16474 +#: c/c-parser.c:16848 c/c-parser.c:19094 c/gimple-parser.c:597 #: c/c-parser.c:4862 cp/parser.c:29388 #, gcc-internal-format msgid "expected %<=%>" msgstr "" -#: c/c-parser.c:16473 c/gimple-parser.c:1275 c/gimple-parser.c:1307 +#: c/c-parser.c:16490 c/gimple-parser.c:1275 c/gimple-parser.c:1307 #: c/gimple-parser.c:1317 c/gimple-parser.c:1979 cp/parser.c:29364 #: cp/parser.c:31325 #, gcc-internal-format msgid "expected %<}%>" msgstr "" -#: c/c-parser.c:17437 c/c-parser.c:17427 cp/parser.c:37591 +#: c/c-parser.c:17454 c/c-parser.c:17444 cp/parser.c:37591 #, gcc-internal-format msgid "expected %<#pragma omp section%> or %<}%>" msgstr "" -#: c/c-parser.c:19634 c/c-parser.c:12036 cp/parser.c:29373 cp/parser.c:32495 +#: c/c-parser.c:19651 c/c-parser.c:12053 cp/parser.c:29373 cp/parser.c:32495 #, gcc-internal-format msgid "expected %<[%>" msgstr "" @@ -4764,39 +4764,39 @@ msgstr "" msgid "expected label" msgstr "" -#: cp/call.c:11044 +#: cp/call.c:11059 msgid "candidate 1:" msgstr "" -#: cp/call.c:11045 +#: cp/call.c:11060 msgid "candidate 2:" msgstr "" -#: cp/decl.c:3141 +#: cp/decl.c:3161 msgid "jump to label %qD" msgstr "" -#: cp/decl.c:3142 +#: cp/decl.c:3162 msgid "jump to case label" msgstr "" -#: cp/decl.c:3212 +#: cp/decl.c:3232 msgid "enters try block" msgstr "" -#: cp/decl.c:3218 +#: cp/decl.c:3238 msgid "enters catch block" msgstr "" -#: cp/decl.c:3224 +#: cp/decl.c:3244 msgid "enters OpenMP structured block" msgstr "" -#: cp/decl.c:3230 +#: cp/decl.c:3250 msgid "enters synchronized or atomic statement" msgstr "" -#: cp/decl.c:3237 +#: cp/decl.c:3257 msgid "enters constexpr if statement" msgstr "" @@ -5011,11 +5011,11 @@ msgstr "" msgid "%r%s:%d:%R in % expansion of %qs" msgstr "" -#: cp/pt.c:2001 cp/semantics.c:5411 +#: cp/pt.c:2001 cp/semantics.c:5403 msgid "candidates are:" msgstr "" -#: cp/pt.c:2003 cp/pt.c:23707 +#: cp/pt.c:2003 cp/pt.c:23706 msgid "candidate is:" msgid_plural "candidates are:" msgstr[0] "" @@ -5061,48 +5061,48 @@ msgstr "" msgid "source type is not polymorphic" msgstr "" -#: cp/typeck.c:6230 c/c-typeck.c:4372 +#: cp/typeck.c:6248 c/c-typeck.c:4372 #, gcc-internal-format msgid "wrong type argument to unary minus" msgstr "" -#: cp/typeck.c:6231 c/c-typeck.c:4359 +#: cp/typeck.c:6249 c/c-typeck.c:4359 #, gcc-internal-format msgid "wrong type argument to unary plus" msgstr "" -#: cp/typeck.c:6258 c/c-typeck.c:4416 +#: cp/typeck.c:6276 c/c-typeck.c:4416 #, gcc-internal-format msgid "wrong type argument to bit-complement" msgstr "" -#: cp/typeck.c:6275 c/c-typeck.c:4424 +#: cp/typeck.c:6293 c/c-typeck.c:4424 #, gcc-internal-format msgid "wrong type argument to abs" msgstr "" -#: cp/typeck.c:6287 c/c-typeck.c:4446 +#: cp/typeck.c:6305 c/c-typeck.c:4446 #, gcc-internal-format msgid "wrong type argument to conjugation" msgstr "" -#: cp/typeck.c:6305 +#: cp/typeck.c:6323 msgid "in argument to unary !" msgstr "" -#: cp/typeck.c:6351 +#: cp/typeck.c:6369 msgid "no pre-increment operator for type" msgstr "" -#: cp/typeck.c:6353 +#: cp/typeck.c:6371 msgid "no post-increment operator for type" msgstr "" -#: cp/typeck.c:6355 +#: cp/typeck.c:6373 msgid "no pre-decrement operator for type" msgstr "" -#: cp/typeck.c:6357 +#: cp/typeck.c:6375 msgid "no post-decrement operator for type" msgstr "" @@ -5189,7 +5189,7 @@ msgstr "" msgid "Deleted feature:" msgstr "" -#: fortran/expr.c:3608 +#: fortran/expr.c:3632 msgid "array assignment" msgstr "" @@ -5399,11 +5399,11 @@ msgstr "" msgid "implied END DO" msgstr "" -#: fortran/parse.c:2061 fortran/resolve.c:11462 +#: fortran/parse.c:2061 fortran/resolve.c:11466 msgid "assignment" msgstr "" -#: fortran/parse.c:2064 fortran/resolve.c:11513 fortran/resolve.c:11516 +#: fortran/parse.c:2064 fortran/resolve.c:11517 fortran/resolve.c:11520 msgid "pointer assignment" msgstr "" @@ -5565,86 +5565,86 @@ msgstr "" msgid "Inconsistent ranks for operator at %%L and %%L" msgstr "" -#: fortran/resolve.c:7010 +#: fortran/resolve.c:7014 msgid "Loop variable" msgstr "" -#: fortran/resolve.c:7014 +#: fortran/resolve.c:7018 msgid "iterator variable" msgstr "" -#: fortran/resolve.c:7018 +#: fortran/resolve.c:7022 msgid "Start expression in DO loop" msgstr "" -#: fortran/resolve.c:7022 +#: fortran/resolve.c:7026 msgid "End expression in DO loop" msgstr "" -#: fortran/resolve.c:7026 +#: fortran/resolve.c:7030 msgid "Step expression in DO loop" msgstr "" -#: fortran/resolve.c:7312 fortran/resolve.c:7315 +#: fortran/resolve.c:7316 fortran/resolve.c:7319 msgid "DEALLOCATE object" msgstr "" -#: fortran/resolve.c:7688 fortran/resolve.c:7691 +#: fortran/resolve.c:7692 fortran/resolve.c:7695 msgid "ALLOCATE object" msgstr "" -#: fortran/resolve.c:7924 fortran/resolve.c:9660 +#: fortran/resolve.c:7928 fortran/resolve.c:9664 msgid "STAT variable" msgstr "" -#: fortran/resolve.c:7968 fortran/resolve.c:9672 +#: fortran/resolve.c:7972 fortran/resolve.c:9676 msgid "ERRMSG variable" msgstr "" -#: fortran/resolve.c:9463 +#: fortran/resolve.c:9467 msgid "item in READ" msgstr "" -#: fortran/resolve.c:9684 +#: fortran/resolve.c:9688 msgid "ACQUIRED_LOCK variable" msgstr "" -#: fortran/trans-array.c:1635 +#: fortran/trans-array.c:1675 #, c-format msgid "Different CHARACTER lengths (%ld/%ld) in array constructor" msgstr "" -#: fortran/trans-array.c:5887 +#: fortran/trans-array.c:5935 msgid "Integer overflow when calculating the amount of memory to allocate" msgstr "" -#: fortran/trans-array.c:9496 +#: fortran/trans-array.c:9544 #, c-format msgid "" "The value of the PDT LEN parameter '%s' does not agree with that in the " "dummy declaration" msgstr "" -#: fortran/trans-decl.c:5952 +#: fortran/trans-decl.c:6025 #, c-format msgid "" "Actual string length does not match the declared one for dummy argument " "'%s' (%ld/%ld)" msgstr "" -#: fortran/trans-decl.c:5960 +#: fortran/trans-decl.c:6033 #, c-format msgid "" "Actual string length is shorter than the declared one for dummy argument " "'%s' (%ld/%ld)" msgstr "" -#: fortran/trans-expr.c:9309 +#: fortran/trans-expr.c:9250 #, c-format msgid "Target of rank remapping is too small (%ld < %ld)" msgstr "" -#: fortran/trans-expr.c:10720 +#: fortran/trans-expr.c:10661 msgid "Assignment of scalar to unallocated array" msgstr "" @@ -5653,12 +5653,12 @@ msgstr "" msgid "Unequal character lengths (%ld/%ld) in %s" msgstr "" -#: fortran/trans-intrinsic.c:8737 +#: fortran/trans-intrinsic.c:8758 #, c-format msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)" msgstr "" -#: fortran/trans-intrinsic.c:8769 +#: fortran/trans-intrinsic.c:8790 msgid "Argument NCOPIES of REPEAT intrinsic is too large" msgstr "" @@ -5699,24 +5699,24 @@ msgstr "" msgid "Incorrect function return value" msgstr "" -#: fortran/trans.c:611 +#: fortran/trans.c:614 msgid "Memory allocation failed" msgstr "" -#: fortran/trans.c:689 fortran/trans.c:1672 +#: fortran/trans.c:692 fortran/trans.c:1675 msgid "Allocation would exceed memory limit" msgstr "" -#: fortran/trans.c:898 +#: fortran/trans.c:901 #, c-format msgid "Attempting to allocate already allocated variable '%s'" msgstr "" -#: fortran/trans.c:904 +#: fortran/trans.c:907 msgid "Attempting to allocate already allocated variable" msgstr "" -#: fortran/trans.c:1357 fortran/trans.c:1516 +#: fortran/trans.c:1360 fortran/trans.c:1519 #, c-format msgid "Attempt to DEALLOCATE unallocated '%s'" msgstr "" @@ -6041,5500 +6041,5690 @@ msgid "" "objc++-cpp-output is deprecated; please use objective-c++-cpp-output instead" msgstr "" -#: config/alpha/alpha.opt:23 config/i386/i386.opt:440 -msgid "Do not use hardware fp." +#: fortran/lang.opt:146 +msgid "-J\tPut MODULE files in 'directory'." msgstr "" -#: config/alpha/alpha.opt:27 -msgid "Use fp registers." +#: fortran/lang.opt:198 +msgid "Warn about possible aliasing of dummy arguments." msgstr "" -#: config/alpha/alpha.opt:31 common.opt:654 common.opt:788 common.opt:998 -#: common.opt:1002 common.opt:1006 common.opt:1010 common.opt:1574 -#: common.opt:1630 common.opt:1762 common.opt:1766 common.opt:2000 -#: common.opt:2178 common.opt:2879 fortran/lang.opt:489 -msgid "Does nothing. Preserved for backward compatibility." +#: fortran/lang.opt:202 +msgid "Warn about alignment of COMMON blocks." msgstr "" -#: config/alpha/alpha.opt:35 -msgid "Request IEEE-conformant math library routines (OSF/1)." +#: fortran/lang.opt:206 +msgid "Warn about missing ampersand in continued character constants." msgstr "" -#: config/alpha/alpha.opt:39 -msgid "Emit IEEE-conformant code, without inexact exceptions." +#: fortran/lang.opt:210 +msgid "Warn about creation of array temporaries." msgstr "" -#: config/alpha/alpha.opt:46 -msgid "Do not emit complex integer constants to read-only memory." +#: fortran/lang.opt:214 +msgid "Warn about type and rank mismatches between arguments and parameters." msgstr "" -#: config/alpha/alpha.opt:50 -msgid "Use VAX fp." +#: fortran/lang.opt:218 +msgid "Warn if the type of a variable might be not interoperable with C." msgstr "" -#: config/alpha/alpha.opt:54 -msgid "Do not use VAX fp." +#: fortran/lang.opt:226 +msgid "Warn about truncated character expressions." msgstr "" -#: config/alpha/alpha.opt:58 -msgid "Emit code for the byte/word ISA extension." +#: fortran/lang.opt:230 +msgid "Warn about equality comparisons involving REAL or COMPLEX expressions." msgstr "" -#: config/alpha/alpha.opt:62 -msgid "Emit code for the motion video ISA extension." +#: fortran/lang.opt:238 +msgid "Warn about most implicit conversions." msgstr "" -#: config/alpha/alpha.opt:66 -msgid "Emit code for the fp move and sqrt ISA extension." +#: fortran/lang.opt:242 +msgid "Warn about possibly incorrect subscripts in do loops." msgstr "" -#: config/alpha/alpha.opt:70 -msgid "Emit code for the counting ISA extension." +#: fortran/lang.opt:250 +msgid "Warn if loops have been interchanged." msgstr "" -#: config/alpha/alpha.opt:74 -msgid "Emit code using explicit relocation directives." +#: fortran/lang.opt:254 +msgid "Warn about function call elimination." msgstr "" -#: config/alpha/alpha.opt:78 -msgid "Emit 16-bit relocations to the small data areas." +#: fortran/lang.opt:258 +msgid "Warn about calls with implicit interface." msgstr "" -#: config/alpha/alpha.opt:82 -msgid "Emit 32-bit relocations to the small data areas." +#: fortran/lang.opt:262 +msgid "Warn about called procedures not explicitly declared." msgstr "" -#: config/alpha/alpha.opt:86 -msgid "Emit direct branches to local functions." +#: fortran/lang.opt:266 +msgid "Warn about constant integer divisions with truncated results." msgstr "" -#: config/alpha/alpha.opt:90 -msgid "Emit indirect branches to local functions." +#: fortran/lang.opt:270 +msgid "Warn about truncated source lines." msgstr "" -#: config/alpha/alpha.opt:94 -msgid "Emit rdval instead of rduniq for thread pointer." +#: fortran/lang.opt:274 +msgid "Warn on intrinsics not part of the selected standard." msgstr "" -#: config/alpha/alpha.opt:98 config/s390/s390.opt:150 config/i386/i386.opt:212 -#: config/sparc/long-double-switch.opt:23 -msgid "Use 128-bit long double." +#: fortran/lang.opt:286 +msgid "Warn about USE statements that have no ONLY qualifier." msgstr "" -#: config/alpha/alpha.opt:102 config/s390/s390.opt:154 config/i386/i386.opt:208 -#: config/sparc/long-double-switch.opt:27 -msgid "Use 64-bit long double." +#: fortran/lang.opt:298 +msgid "Warn about real-literal-constants with 'q' exponent-letter." msgstr "" -#: config/alpha/alpha.opt:106 -msgid "Use features of and schedule given CPU." +#: fortran/lang.opt:302 +msgid "Warn when a left-hand-side array variable is reallocated." msgstr "" -#: config/alpha/alpha.opt:110 -msgid "Schedule given CPU." +#: fortran/lang.opt:306 +msgid "Warn when a left-hand-side variable is reallocated." msgstr "" -#: config/alpha/alpha.opt:114 -msgid "Control the generated fp rounding mode." +#: fortran/lang.opt:310 +msgid "Warn if the pointer in a pointer assignment might outlive its target." msgstr "" -#: config/alpha/alpha.opt:118 -msgid "Control the IEEE trap mode." +#: fortran/lang.opt:318 +msgid "Warn about \"suspicious\" constructs." msgstr "" -#: config/alpha/alpha.opt:122 -msgid "Control the precision given to fp exceptions." +#: fortran/lang.opt:322 +msgid "Permit nonconforming uses of the tab character." msgstr "" -#: config/alpha/alpha.opt:126 -msgid "Tune expected memory latency." +#: fortran/lang.opt:326 +msgid "Warn about an invalid DO loop." msgstr "" -#: config/alpha/alpha.opt:130 config/ia64/ia64.opt:118 -msgid "Specify bit size of immediate TLS offsets." +#: fortran/lang.opt:330 +msgid "Warn about underflow of numerical constant expressions." msgstr "" -#: config/mips/mips-tables.opt:24 -msgid "Known MIPS CPUs (for use with the -march= and -mtune= options):" +#: fortran/lang.opt:338 +msgid "Warn if a user-procedure has the same name as an intrinsic." msgstr "" -#: config/mips/mips-tables.opt:28 -msgid "Known MIPS ISA levels (for use with the -mips option):" +#: fortran/lang.opt:346 +msgid "Warn about unused dummy arguments." msgstr "" -#: config/mips/mips.opt:32 -msgid "-mabi=ABI\tGenerate code that conforms to the given ABI." +#: fortran/lang.opt:350 +msgid "Warn about zero-trip DO loops." msgstr "" -#: config/mips/mips.opt:36 -msgid "Known MIPS ABIs (for use with the -mabi= option):" +#: fortran/lang.opt:354 +msgid "Enable preprocessing." msgstr "" -#: config/mips/mips.opt:55 -msgid "Generate code that can be used in SVR4-style dynamic objects." +#: fortran/lang.opt:362 +msgid "Disable preprocessing." msgstr "" -#: config/mips/mips.opt:59 -msgid "Use PMC-style 'mad' instructions." +#: fortran/lang.opt:370 +msgid "Eliminate multiple function invocations also for impure functions." msgstr "" -#: config/mips/mips.opt:63 -msgid "Use integer madd/msub instructions." +#: fortran/lang.opt:374 +msgid "Enable alignment of COMMON blocks." msgstr "" -#: config/mips/mips.opt:67 -msgid "-march=ISA\tGenerate code for the given ISA." +#: fortran/lang.opt:378 +msgid "" +"All intrinsics procedures are available regardless of selected standard." msgstr "" -#: config/mips/mips.opt:71 +#: fortran/lang.opt:386 msgid "" -"-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions." +"Do not treat local variables and COMMON blocks as if they were named in SAVE " +"statements." msgstr "" -#: config/mips/mips.opt:75 -msgid "Use Branch Likely instructions, overriding the architecture default." +#: fortran/lang.opt:390 +msgid "Specify that backslash in string introduces an escape character." msgstr "" -#: config/mips/mips.opt:79 -msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing." +#: fortran/lang.opt:394 +msgid "Produce a backtrace when a runtime error is encountered." msgstr "" -#: config/mips/mips.opt:83 -msgid "Trap on integer divide by zero." +#: fortran/lang.opt:398 +msgid "" +"-fblas-matmul-limit=\tSize of the smallest matrix for which matmul will " +"use BLAS." msgstr "" -#: config/mips/mips.opt:87 +#: fortran/lang.opt:402 msgid "" -"-mcode-readable=SETTING\tSpecify when instructions are allowed to access " -"code." +"Produce a warning at runtime if a array temporary has been created for a " +"procedure argument." msgstr "" -#: config/mips/mips.opt:91 -msgid "Valid arguments to -mcode-readable=:" +#: fortran/lang.opt:406 +msgid "" +"-fconvert= The endianness used for " +"unformatted files." msgstr "" -#: config/mips/mips.opt:104 -msgid "Use branch-and-break sequences to check for integer divide by zero." +#: fortran/lang.opt:425 +msgid "Use the Cray Pointer extension." msgstr "" -#: config/mips/mips.opt:108 -msgid "Use trap instructions to check for integer divide by zero." +#: fortran/lang.opt:429 +msgid "Generate C prototypes from BIND(C) declarations." msgstr "" -#: config/mips/mips.opt:112 -msgid "Allow the use of MDMX instructions." +#: fortran/lang.opt:433 +msgid "Ignore 'D' in column one in fixed form." msgstr "" -#: config/mips/mips.opt:116 -msgid "" -"Allow hardware floating-point instructions to cover both 32-bit and 64-bit " -"operations." +#: fortran/lang.opt:437 +msgid "Treat lines with 'D' in column one as comments." msgstr "" -#: config/mips/mips.opt:120 -msgid "Use MIPS-DSP instructions." +#: fortran/lang.opt:441 +msgid "Enable all DEC language extensions." msgstr "" -#: config/mips/mips.opt:124 -msgid "Use MIPS-DSP REV 2 instructions." +#: fortran/lang.opt:445 +msgid "Enable legacy parsing of INCLUDE as statement." msgstr "" -#: config/mips/mips.opt:134 config/c6x/c6x.opt:30 config/nios2/nios2.opt:94 -#: config/tilegx/tilegx.opt:45 -msgid "Use big-endian byte order." +#: fortran/lang.opt:449 +msgid "Enable kind-specific variants of integer intrinsic functions." msgstr "" -#: config/mips/mips.opt:138 config/c6x/c6x.opt:34 config/nios2/nios2.opt:98 -#: config/tilegx/tilegx.opt:49 -msgid "Use little-endian byte order." +#: fortran/lang.opt:453 +msgid "Enable legacy math intrinsics for compatibility." msgstr "" -#: config/mips/mips.opt:142 config/iq2000/iq2000.opt:61 -msgid "Use ROM instead of RAM." +#: fortran/lang.opt:457 +msgid "Enable support for DEC STRUCTURE/RECORD." msgstr "" -#: config/mips/mips.opt:146 -msgid "Use Enhanced Virtual Addressing instructions." +#: fortran/lang.opt:461 +msgid "Enable DEC-style STATIC and AUTOMATIC attributes." msgstr "" -#: config/mips/mips.opt:150 -msgid "Use NewABI-style %reloc() assembly operators." +#: fortran/lang.opt:465 +msgid "Set the default double precision kind to an 8 byte wide type." msgstr "" -#: config/mips/mips.opt:154 -msgid "Use -G for data that is not defined by the current object." +#: fortran/lang.opt:469 +msgid "Set the default integer kind to an 8 byte wide type." msgstr "" -#: config/mips/mips.opt:158 -msgid "Work around certain 24K errata." +#: fortran/lang.opt:473 +msgid "Set the default real kind to an 8 byte wide type." msgstr "" -#: config/mips/mips.opt:162 -msgid "Work around certain R4000 errata." +#: fortran/lang.opt:477 +msgid "Set the default real kind to an 10 byte wide type." msgstr "" -#: config/mips/mips.opt:166 -msgid "Work around certain R4400 errata." +#: fortran/lang.opt:481 +msgid "Set the default real kind to an 16 byte wide type." msgstr "" -#: config/mips/mips.opt:170 -msgid "Work around the R5900 short loop erratum." +#: fortran/lang.opt:485 +msgid "Allow dollar signs in entity names." msgstr "" -#: config/mips/mips.opt:174 -msgid "Work around certain RM7000 errata." +#: fortran/lang.opt:489 config/alpha/alpha.opt:31 common.opt:654 common.opt:788 +#: common.opt:998 common.opt:1002 common.opt:1006 common.opt:1010 +#: common.opt:1574 common.opt:1630 common.opt:1762 common.opt:1766 +#: common.opt:2000 common.opt:2178 common.opt:2879 +msgid "Does nothing. Preserved for backward compatibility." msgstr "" -#: config/mips/mips.opt:178 -msgid "Work around certain R10000 errata." +#: fortran/lang.opt:493 +msgid "Display the code tree after parsing." msgstr "" -#: config/mips/mips.opt:182 -msgid "Work around errata for early SB-1 revision 2 cores." +#: fortran/lang.opt:497 +msgid "Display the code tree after front end optimization." msgstr "" -#: config/mips/mips.opt:186 -msgid "Work around certain VR4120 errata." +#: fortran/lang.opt:501 +msgid "Display the code tree after parsing; deprecated option." msgstr "" -#: config/mips/mips.opt:190 -msgid "Work around VR4130 mflo/mfhi errata." +#: fortran/lang.opt:505 +msgid "" +"Specify that an external BLAS library should be used for matmul calls on " +"large-size arrays." msgstr "" -#: config/mips/mips.opt:194 -msgid "Work around an early 4300 hardware bug." +#: fortran/lang.opt:509 +msgid "Use f2c calling convention." msgstr "" -#: config/mips/mips.opt:198 -msgid "FP exceptions are enabled." +#: fortran/lang.opt:513 +msgid "Assume that the source file is fixed form." msgstr "" -#: config/mips/mips.opt:202 -msgid "Use 32-bit floating-point registers." +#: fortran/lang.opt:517 +msgid "Force creation of temporary to test infrequently-executed forall code." msgstr "" -#: config/mips/mips.opt:206 -msgid "Conform to the o32 FPXX ABI." +#: fortran/lang.opt:521 +msgid "Interpret any INTEGER(4) as an INTEGER(8)." msgstr "" -#: config/mips/mips.opt:210 -msgid "Use 64-bit floating-point registers." +#: fortran/lang.opt:525 fortran/lang.opt:529 +msgid "Specify where to find the compiled intrinsic modules." msgstr "" -#: config/mips/mips.opt:214 -msgid "" -"-mflush-func=FUNC\tUse FUNC to flush the cache before calling stack " -"trampolines." +#: fortran/lang.opt:533 +msgid "Allow arbitrary character line width in fixed mode." msgstr "" -#: config/mips/mips.opt:218 -msgid "-mabs=MODE\tSelect the IEEE 754 ABS/NEG instruction execution mode." +#: fortran/lang.opt:537 +msgid "-ffixed-line-length-\tUse n as character line width in fixed mode." msgstr "" -#: config/mips/mips.opt:222 -msgid "-mnan=ENCODING\tSelect the IEEE 754 NaN data encoding." +#: fortran/lang.opt:541 +msgid "Pad shorter fixed form lines to line width with spaces." msgstr "" -#: config/mips/mips.opt:226 -msgid "" -"Known MIPS IEEE 754 settings (for use with the -mabs= and -mnan= options):" +#: fortran/lang.opt:545 +msgid "-ffpe-trap=[...]\tStop on following floating point exceptions." msgstr "" -#: config/mips/mips.opt:236 -msgid "Use 32-bit general registers." +#: fortran/lang.opt:549 +msgid "-ffpe-summary=[...]\tPrint summary of floating point exceptions." msgstr "" -#: config/mips/mips.opt:240 -msgid "Use 64-bit general registers." +#: fortran/lang.opt:553 +msgid "Assume that the source file is free form." msgstr "" -#: config/mips/mips.opt:244 -msgid "Use GP-relative addressing to access small data." +#: fortran/lang.opt:557 +msgid "Allow arbitrary character line width in free mode." msgstr "" -#: config/mips/mips.opt:248 -msgid "" -"When generating -mabicalls code, allow executables to use PLTs and copy " -"relocations." +#: fortran/lang.opt:561 +msgid "-ffree-line-length-\tUse n as character line width in free mode." msgstr "" -#: config/mips/mips.opt:252 -msgid "Allow the use of hardware floating-point ABI and instructions." +#: fortran/lang.opt:565 +msgid "Try to interchange loops if profitable." msgstr "" -#: config/mips/mips.opt:256 -msgid "Generate code that is link-compatible with MIPS16 and microMIPS code." +#: fortran/lang.opt:569 +msgid "Enable front end optimization." msgstr "" -#: config/mips/mips.opt:260 -msgid "An alias for minterlink-compressed provided for backward-compatibility." +#: fortran/lang.opt:573 +msgid "" +"Specify that no implicit typing is allowed, unless overridden by explicit " +"IMPLICIT statements." msgstr "" -#: config/mips/mips.opt:264 -msgid "-mipsN\tGenerate code for ISA level N." +#: fortran/lang.opt:577 +msgid "" +"-finit-character=\tInitialize local character variables to ASCII value n." msgstr "" -#: config/mips/mips.opt:268 -msgid "Generate MIPS16 code." +#: fortran/lang.opt:581 +msgid "" +"Initialize components of derived type variables according to other init " +"flags." msgstr "" -#: config/mips/mips.opt:272 -msgid "Use MIPS-3D instructions." +#: fortran/lang.opt:585 +msgid "-finit-integer=\tInitialize local integer variables to n." msgstr "" -#: config/mips/mips.opt:276 -msgid "Use ll, sc and sync instructions." +#: fortran/lang.opt:589 +msgid "Initialize local variables to zero (from g77)." msgstr "" -#: config/mips/mips.opt:280 -msgid "Use -G for object-local data." +#: fortran/lang.opt:593 +msgid "-finit-logical=\tInitialize local logical variables." msgstr "" -#: config/mips/mips.opt:284 -msgid "Use indirect calls." +#: fortran/lang.opt:597 +msgid "-finit-real=\tInitialize local real variables." msgstr "" -#: config/mips/mips.opt:288 -msgid "Use a 32-bit long type." +#: fortran/lang.opt:619 +msgid "" +"-finline-matmul-limit=\tSpecify the size of the largest matrix for which " +"matmul will be inlined." msgstr "" -#: config/mips/mips.opt:292 -msgid "Use a 64-bit long type." +#: fortran/lang.opt:623 +msgid "" +"-fmax-array-constructor=\tMaximum number of objects in an array " +"constructor." msgstr "" -#: config/mips/mips.opt:296 -msgid "Pass the address of the ra save location to _mcount in $12." +#: fortran/lang.opt:627 +msgid "-fmax-identifier-length=\tMaximum identifier length." msgstr "" -#: config/mips/mips.opt:300 -msgid "Don't optimize block moves." +#: fortran/lang.opt:631 +msgid "-fmax-subrecord-length=\tMaximum length for subrecords." msgstr "" -#: config/mips/mips.opt:304 -msgid "Use microMIPS instructions." +#: fortran/lang.opt:635 +msgid "" +"-fmax-stack-var-size=\tSize in bytes of the largest array that will be " +"put on the stack." msgstr "" -#: config/mips/mips.opt:308 -msgid "Use MIPS MSA Extension instructions." +#: fortran/lang.opt:639 +msgid "Put all local arrays on stack." msgstr "" -#: config/mips/mips.opt:312 -msgid "Allow the use of MT instructions." +#: fortran/lang.opt:643 +msgid "Set default accessibility of module entities to PRIVATE." msgstr "" -#: config/mips/mips.opt:316 -msgid "Prevent the use of all floating-point operations." +#: fortran/lang.opt:663 +msgid "Try to lay out derived types as compactly as possible." msgstr "" -#: config/mips/mips.opt:320 -msgid "Use MCU instructions." +#: fortran/lang.opt:671 +msgid "Protect parentheses in expressions." msgstr "" -#: config/mips/mips.opt:324 -msgid "Do not use a cache-flushing function before calling stack trampolines." +#: fortran/lang.opt:675 +msgid "" +"Path to header file that should be pre-included before each compilation unit." msgstr "" -#: config/mips/mips.opt:328 -msgid "Do not use MDMX instructions." +#: fortran/lang.opt:679 +msgid "Enable range checking during compilation." msgstr "" -#: config/mips/mips.opt:332 -msgid "Generate normal-mode code." +#: fortran/lang.opt:683 +msgid "Interpret any REAL(4) as a REAL(8)." msgstr "" -#: config/mips/mips.opt:336 -msgid "Do not use MIPS-3D instructions." +#: fortran/lang.opt:687 +msgid "Interpret any REAL(4) as a REAL(10)." msgstr "" -#: config/mips/mips.opt:340 -msgid "Use paired-single floating-point instructions." +#: fortran/lang.opt:691 +msgid "Interpret any REAL(4) as a REAL(16)." msgstr "" -#: config/mips/mips.opt:344 -msgid "" -"-mr10k-cache-barrier=SETTING\tSpecify when r10k cache barriers should be " -"inserted." +#: fortran/lang.opt:695 +msgid "Interpret any REAL(8) as a REAL(4)." msgstr "" -#: config/mips/mips.opt:348 -msgid "Valid arguments to -mr10k-cache-barrier=:" +#: fortran/lang.opt:699 +msgid "Interpret any REAL(8) as a REAL(10)." msgstr "" -#: config/mips/mips.opt:361 -msgid "Try to allow the linker to turn PIC calls into direct calls." +#: fortran/lang.opt:703 +msgid "Interpret any REAL(8) as a REAL(16)." msgstr "" -#: config/mips/mips.opt:365 -msgid "" -"When generating -mabicalls code, make the code suitable for use in shared " -"libraries." +#: fortran/lang.opt:707 +msgid "Reallocate the LHS in assignments." msgstr "" -#: config/mips/mips.opt:369 -msgid "" -"Restrict the use of hardware floating-point instructions to 32-bit " -"operations." +#: fortran/lang.opt:711 +msgid "Use a 4-byte record marker for unformatted files." msgstr "" -#: config/mips/mips.opt:373 -msgid "Use SmartMIPS instructions." +#: fortran/lang.opt:715 +msgid "Use an 8-byte record marker for unformatted files." msgstr "" -#: config/mips/mips.opt:377 -msgid "Prevent the use of all hardware floating-point instructions." +#: fortran/lang.opt:719 +msgid "Allocate local variables on the stack to allow indirect recursion." msgstr "" -#: config/mips/mips.opt:381 -msgid "Optimize lui/addiu address loads." +#: fortran/lang.opt:723 +msgid "Copy array sections into a contiguous block on procedure entry." msgstr "" -#: config/mips/mips.opt:385 -msgid "Assume all symbols have 32-bit values." +#: fortran/lang.opt:727 +msgid "" +"-fcoarray=\tSpecify which coarray parallelization should be " +"used." msgstr "" -#: config/mips/mips.opt:389 -msgid "Use synci instruction to invalidate i-cache." +#: fortran/lang.opt:743 +msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed." msgstr "" -#: config/mips/mips.opt:393 config/arc/arc.opt:406 config/s390/s390.opt:225 -#: config/ft32/ft32.opt:27 -msgid "Use LRA instead of reload." +#: fortran/lang.opt:747 +msgid "Append a second underscore if the name already contains an underscore." msgstr "" -#: config/mips/mips.opt:397 -msgid "Use lwxc1/swxc1/ldxc1/sdxc1 instructions where applicable." +#: fortran/lang.opt:755 +msgid "Apply negative sign to zero values." msgstr "" -#: config/mips/mips.opt:401 -msgid "Use 4-operand madd.s/madd.d and related instructions where applicable." +#: fortran/lang.opt:759 +msgid "Append underscores to externally visible names." msgstr "" -#: config/mips/mips.opt:405 config/riscv/riscv.opt:80 -msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR." +#: fortran/lang.opt:763 c-family/c.opt:1405 c-family/c.opt:1437 +#: c-family/c.opt:1685 config/pa/pa.opt:42 config/pa/pa.opt:70 common.opt:1167 +#: common.opt:1375 common.opt:1450 common.opt:1718 common.opt:1849 +#: common.opt:2249 common.opt:2285 common.opt:2378 common.opt:2382 +#: common.opt:2487 common.opt:2578 common.opt:2586 common.opt:2594 +#: common.opt:2602 common.opt:2703 common.opt:2755 common.opt:2843 +#: common.opt:2980 common.opt:2984 common.opt:2988 common.opt:2992 +msgid "Does nothing. Preserved for backward compatibility." msgstr "" -#: config/mips/mips.opt:409 config/iq2000/iq2000.opt:74 -msgid "Put uninitialized constants in ROM (needs -membedded-data)." +#: fortran/lang.opt:803 +msgid "Statically link the GNU Fortran helper library (libgfortran)." msgstr "" -#: config/mips/mips.opt:413 -msgid "Use Virtualization (VZ) instructions." +#: fortran/lang.opt:807 +msgid "Conform to the ISO Fortran 2003 standard." msgstr "" -#: config/mips/mips.opt:417 -msgid "Use eXtended Physical Address (XPA) instructions." +#: fortran/lang.opt:811 +msgid "Conform to the ISO Fortran 2008 standard." msgstr "" -#: config/mips/mips.opt:421 -msgid "Use Cyclic Redundancy Check (CRC) instructions." +#: fortran/lang.opt:815 +msgid "Conform to the ISO Fortran 2008 standard including TS 29113." msgstr "" -#: config/mips/mips.opt:425 -msgid "Use Global INValidate (GINV) instructions." +#: fortran/lang.opt:819 +msgid "Conform to the ISO Fortran 2018 standard." msgstr "" -#: config/mips/mips.opt:429 -msgid "Perform VR4130-specific alignment optimizations." +#: fortran/lang.opt:823 +msgid "Conform to the ISO Fortran 95 standard." msgstr "" -#: config/mips/mips.opt:433 -msgid "Lift restrictions on GOT size." -msgstr "" +#: fortran/lang.opt:827 +msgid "Conform to nothing in particular." +msgstr "" -#: config/mips/mips.opt:437 -msgid "Enable use of odd-numbered single-precision registers." +#: fortran/lang.opt:831 +msgid "Accept extensions to support legacy code." msgstr "" -#: config/mips/mips.opt:441 -msgid "Optimize frame header." +#: c-family/c.opt:182 +msgid "" +"-A=\tAssert the to . Putting '-' " +"before disables the to ." msgstr "" -#: config/mips/mips.opt:448 -msgid "Enable load/store bonding." +#: c-family/c.opt:186 +msgid "Do not discard comments." msgstr "" -#: config/mips/mips.opt:452 -msgid "Specify the compact branch usage policy." +#: c-family/c.opt:190 +msgid "Do not discard comments in macro expansions." msgstr "" -#: config/mips/mips.opt:456 -msgid "Policies available for use with -mcompact-branches=:" +#: c-family/c.opt:194 +msgid "" +"-D[=]\tDefine a with as its value. If just " +" is given, is taken to be 1." msgstr "" -#: config/mips/mips.opt:469 -msgid "Use Loongson MultiMedia extensions Instructions (MMI) instructions." +#: c-family/c.opt:201 +msgid "-F \tAdd to the end of the main framework include path." msgstr "" -#: config/mips/mips.opt:473 -msgid "Use Loongson EXTension (EXT) instructions." +#: c-family/c.opt:205 +msgid "Enable parsing GIMPLE." msgstr "" -#: config/mips/mips.opt:477 -msgid "Use Loongson EXTension R2 (EXT2) instructions." +#: c-family/c.opt:209 +msgid "Print the name of header files as they are used." msgstr "" -#: config/visium/visium.opt:25 -msgid "Link with libc.a and libdebug.a." +#: c-family/c.opt:213 +msgid "-I \tAdd to the end of the main include path." msgstr "" -#: config/visium/visium.opt:29 -msgid "Link with libc.a and libsim.a." +#: c-family/c.opt:217 +msgid "Generate make dependencies." msgstr "" -#: config/visium/visium.opt:33 -msgid "Use hardware FP (default)." +#: c-family/c.opt:221 +msgid "Generate make dependencies and compile." msgstr "" -#: config/visium/visium.opt:37 config/sparc/sparc.opt:30 -#: config/sparc/sparc.opt:34 -msgid "Use hardware FP." +#: c-family/c.opt:225 +msgid "-MF \tWrite dependency output to the given file." msgstr "" -#: config/visium/visium.opt:41 config/sparc/sparc.opt:38 -msgid "Do not use hardware FP." +#: c-family/c.opt:229 +msgid "Treat missing header files as generated files." msgstr "" -#: config/visium/visium.opt:45 -msgid "Use features of and schedule code for given CPU." +#: c-family/c.opt:233 +msgid "Like -M but ignore system header files." msgstr "" -#: config/visium/visium.opt:49 config/spu/spu.opt:84 config/s390/s390.opt:194 -#: config/i386/i386.opt:514 config/sparc/sparc.opt:146 config/ia64/ia64.opt:122 -msgid "Schedule code for given CPU." +#: c-family/c.opt:237 +msgid "Like -MD but ignore system header files." msgstr "" -#: config/visium/visium.opt:65 -msgid "Generate code for the supervisor mode (default)." +#: c-family/c.opt:241 +msgid "Generate phony targets for all headers." msgstr "" -#: config/visium/visium.opt:69 -msgid "Generate code for the user mode." +#: c-family/c.opt:245 +msgid "-MQ \tAdd a MAKE-quoted target." msgstr "" -#: config/visium/visium.opt:73 -msgid "Only retained for backward compatibility." +#: c-family/c.opt:249 +msgid "-MT \tAdd an unquoted target." msgstr "" -#: config/epiphany/epiphany.opt:24 -msgid "Don't use any of r32..r63." +#: c-family/c.opt:253 +msgid "Do not generate #line directives." msgstr "" -#: config/epiphany/epiphany.opt:28 -msgid "" -"Preferentially allocate registers that allow short instruction generation." +#: c-family/c.opt:257 +msgid "-U\tUndefine ." msgstr "" -#: config/epiphany/epiphany.opt:32 -msgid "Set branch cost." +#: c-family/c.opt:261 +msgid "" +"Warn about things that will change when compiling with an ABI-compliant " +"compiler." msgstr "" -#: config/epiphany/epiphany.opt:36 -msgid "Enable conditional move instruction usage." +#: c-family/c.opt:265 +msgid "" +"Warn about things that change between the current -fabi-version and the " +"specified version." msgstr "" -#: config/epiphany/epiphany.opt:40 -msgid "Set number of nops to emit before each insn pattern." +#: c-family/c.opt:269 +msgid "" +"Warn if a subobject has an abi_tag attribute that the complete object type " +"does not have." msgstr "" -#: config/epiphany/epiphany.opt:52 -msgid "Use software floating point comparisons." +#: c-family/c.opt:276 +msgid "" +"Warn on suspicious calls of standard functions computing absolute values." msgstr "" -#: config/epiphany/epiphany.opt:56 -msgid "Enable split of 32 bit immediate loads into low / high part." +#: c-family/c.opt:280 +msgid "Warn about suspicious uses of memory addresses." msgstr "" -#: config/epiphany/epiphany.opt:60 -msgid "Enable use of POST_INC / POST_DEC." +#: c-family/c.opt:296 +msgid "Warn about 'new' of type with extended alignment without -faligned-new." msgstr "" -#: config/epiphany/epiphany.opt:64 -msgid "Enable use of POST_MODIFY." +#: c-family/c.opt:300 +msgid "" +"-Waligned-new=[none|global|all]\tWarn even if 'new' uses a class member " +"allocation function." msgstr "" -#: config/epiphany/epiphany.opt:68 -msgid "Set number of bytes on the stack preallocated for use by the callee." +#: c-family/c.opt:304 ada/gcc-interface/lang.opt:57 +msgid "Enable most warning messages." msgstr "" -#: config/epiphany/epiphany.opt:72 -msgid "Assume round to nearest is selected for purposes of scheduling." +#: c-family/c.opt:308 +msgid "Warn on any use of alloca." msgstr "" -#: config/epiphany/epiphany.opt:76 -msgid "Generate call insns as indirect calls." +#: c-family/c.opt:312 +msgid "" +"-Walloc-size-larger-than= Warn for calls to allocation functions that " +"attempt to allocate objects larger than the specified number of bytes." msgstr "" -#: config/epiphany/epiphany.opt:80 -msgid "Generate call insns as direct calls." +#: c-family/c.opt:317 +msgid "" +"-Wno-alloc-size-larger-than Disable Walloc-size-larger-than= warning. " +"Equivalent to Walloc-size-larger-than= or larger." msgstr "" -#: config/epiphany/epiphany.opt:84 +#: c-family/c.opt:321 msgid "" -"Assume labels and symbols can be addressed using 16 bit absolute addresses." +"-Walloc-zero Warn for calls to allocation functions that specify zero bytes." msgstr "" -#: config/epiphany/epiphany.opt:108 +#: c-family/c.opt:325 msgid "" -"A floatig point to integer truncation may be replaced with rounding to save " -"mode switching." +"-Walloca-larger-than=\tWarn on unbounded uses of alloca, and on " +"bounded uses of alloca whose bound can be larger than bytes." msgstr "" -#: config/epiphany/epiphany.opt:112 -msgid "Vectorize for double-word operations." +#: c-family/c.opt:331 +msgid "" +"-Wno-alloca-larger-than Disable Walloca-larger-than= warning. Equivalent to " +"Walloca-larger-than= or larger." msgstr "" -#: config/epiphany/epiphany.opt:128 +#: c-family/c.opt:343 msgid "" -"Split unaligned 8 byte vector moves before post-modify address generation." +"Warn whenever an Objective-C assignment is being intercepted by the garbage " +"collector." msgstr "" -#: config/epiphany/epiphany.opt:132 -msgid "Use the floating point unit for integer add/subtract." +#: c-family/c.opt:347 +msgid "Warn about casting functions to incompatible types." msgstr "" -#: config/epiphany/epiphany.opt:136 -msgid "Set register to hold -1." +#: c-family/c.opt:351 +msgid "" +"Warn about boolean expression compared with an integer value different from " +"true/false." msgstr "" -#: config/mn10300/mn10300.opt:30 -msgid "Target the AM33 processor." +#: c-family/c.opt:355 +msgid "Warn about certain operations on boolean expressions." msgstr "" -#: config/mn10300/mn10300.opt:34 -msgid "Target the AM33/2.0 processor." +#: c-family/c.opt:359 +msgid "" +"Warn when __builtin_frame_address or __builtin_return_address is used " +"unsafely." msgstr "" -#: config/mn10300/mn10300.opt:38 -msgid "Target the AM34 processor." +#: c-family/c.opt:363 +msgid "Warn when a built-in function is declared with the wrong signature." msgstr "" -#: config/mn10300/mn10300.opt:42 config/arm/arm.opt:236 -msgid "Tune code for the given processor." +#: c-family/c.opt:367 +msgid "Warn when a built-in preprocessor macro is undefined or redefined." msgstr "" -#: config/mn10300/mn10300.opt:46 -msgid "Work around hardware multiply bug." +#: c-family/c.opt:371 +msgid "Warn about features not present in ISO C11, but present in ISO C2X." msgstr "" -#: config/mn10300/mn10300.opt:55 -msgid "Enable linker relaxations." +#: c-family/c.opt:375 +msgid "Warn about features not present in ISO C90, but present in ISO C99." msgstr "" -#: config/mn10300/mn10300.opt:59 -msgid "Return pointers in both a0 and d0." +#: c-family/c.opt:379 +msgid "Warn about features not present in ISO C99, but present in ISO C11." msgstr "" -#: config/mn10300/mn10300.opt:63 -msgid "Allow gcc to generate LIW instructions." +#: c-family/c.opt:383 +msgid "Warn about C constructs that are not in the common subset of C and C++." msgstr "" -#: config/mn10300/mn10300.opt:67 -msgid "Allow gcc to generate the SETLB and Lcc instructions." +#: c-family/c.opt:390 +msgid "" +"Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO " +"C++ 2011." msgstr "" -#: config/csky/csky_tables.opt:24 -msgid "Known CSKY CPUs (for use with the -mcpu= options):" +#: c-family/c.opt:394 +msgid "" +"Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO " +"C++ 2014." msgstr "" -#: config/csky/csky_tables.opt:199 -msgid "Known CSKY architectures (for use with the -march= option):" +#: c-family/c.opt:401 +msgid "" +"Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO " +"C++ 2017." msgstr "" -#: config/csky/csky_tables.opt:218 -msgid "Known CSKY FPUs (for use with the -mfpu= option):" +#: c-family/c.opt:405 +msgid "Warn about casts between incompatible function types." msgstr "" -#: config/csky/csky.opt:34 -msgid "Specify the target architecture." +#: c-family/c.opt:409 +msgid "Warn about casts which discard qualifiers." msgstr "" -#: config/csky/csky.opt:38 -msgid "Specify the target processor." +#: c-family/c.opt:413 c-family/c.opt:417 +msgid "Warn about catch handlers of non-reference type." msgstr "" -#: config/csky/csky.opt:44 config/mcore/mcore.opt:35 config/moxie/moxie.opt:23 -msgid "Generate big-endian code." +#: c-family/c.opt:421 +msgid "Warn about subscripts whose type is \"char\"." msgstr "" -#: config/csky/csky.opt:51 config/mcore/mcore.opt:51 config/moxie/moxie.opt:27 -msgid "Generate little-endian code." +#: c-family/c.opt:425 c-family/c.opt:1310 c-family/c.opt:1314 +#: c-family/c.opt:1318 c-family/c.opt:1322 c-family/c.opt:1326 +#: c-family/c.opt:1330 c-family/c.opt:1334 c-family/c.opt:1341 +#: c-family/c.opt:1345 c-family/c.opt:1349 c-family/c.opt:1353 +#: c-family/c.opt:1357 c-family/c.opt:1361 c-family/c.opt:1365 +#: c-family/c.opt:1369 c-family/c.opt:1373 c-family/c.opt:1377 +#: c-family/c.opt:1381 c-family/c.opt:1385 c-family/c.opt:1389 +#: config/i386/i386.opt:967 +msgid "Deprecated in GCC 9. This switch has no effect." msgstr "" -#: config/csky/csky.opt:61 -msgid "Enable hardware floating-point instructions." +#: c-family/c.opt:429 +msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"." msgstr "" -#: config/csky/csky.opt:65 -msgid "Use library calls to perform floating-point operations (default)." +#: c-family/c.opt:433 +msgid "" +"Warn about possibly nested block comments, and C++ comments spanning more " +"than one physical line." msgstr "" -#: config/csky/csky.opt:69 -msgid "Specify the target floating-point hardware/format." +#: c-family/c.opt:437 +msgid "Synonym for -Wcomment." msgstr "" -#: config/csky/csky.opt:73 -msgid "Generate C-SKY FPU double float instructions (default for hard float)." +#: c-family/c.opt:441 +msgid "Warn for conditionally-supported constructs." msgstr "" -#: config/csky/csky.opt:77 -msgid "Generate frecipd/fsqrtd/fdivd instructions (default for hard float)." +#: c-family/c.opt:445 +msgid "Warn for implicit type conversions that may change a value." msgstr "" -#: config/csky/csky.opt:85 -msgid "Enable the extended LRW instruction (default for CK801)." +#: c-family/c.opt:449 +msgid "Warn for converting NULL from/to a non-pointer type." msgstr "" -#: config/csky/csky.opt:89 -msgid "Enable interrupt stack instructions." +#: c-family/c.opt:457 +msgid "Warn when all constructors and destructors are private." msgstr "" -#: config/csky/csky.opt:93 -msgid "Enable multiprocessor instructions." +#: c-family/c.opt:461 +msgid "Warn about dangling else." msgstr "" -#: config/csky/csky.opt:97 -msgid "Enable coprocessor instructions." +#: c-family/c.opt:465 +msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage." msgstr "" -#: config/csky/csky.opt:101 -msgid "Enable cache prefetch instructions." +#: c-family/c.opt:469 +msgid "Warn when a declaration is found after a statement." msgstr "" -#: config/csky/csky.opt:105 -msgid "Enable C-SKY SECURE instructions." +#: c-family/c.opt:473 +msgid "Warn when deleting a pointer to incomplete type." msgstr "" -#: config/csky/csky.opt:112 -msgid "Enable C-SKY TRUST instructions." +#: c-family/c.opt:477 +msgid "Warn about deleting polymorphic objects with non-virtual destructors." msgstr "" -#: config/csky/csky.opt:116 -msgid "Enable C-SKY DSP instructions." +#: c-family/c.opt:485 +msgid "" +"Mark implicitly-declared copy operations as deprecated if the class has a " +"user-provided copy operation." msgstr "" -#: config/csky/csky.opt:120 -msgid "Enable C-SKY Enhanced DSP instructions." +#: c-family/c.opt:490 +msgid "" +"Mark implicitly-declared copy operations as deprecated if the class has a " +"user-provided copy operation or destructor." msgstr "" -#: config/csky/csky.opt:124 -msgid "Enable C-SKY Vector DSP instructions." +#: c-family/c.opt:495 +msgid "" +"Warn about positional initialization of structs requiring designated " +"initializers." msgstr "" -#: config/csky/csky.opt:130 -msgid "Generate divide instructions." +#: c-family/c.opt:499 +msgid "Warn if qualifiers on arrays which are pointer targets are discarded." msgstr "" -#: config/csky/csky.opt:134 -msgid "Generate code for Smart Mode." +#: c-family/c.opt:503 +msgid "Warn if type qualifiers on pointers are discarded." msgstr "" -#: config/csky/csky.opt:138 -msgid "Enable use of R16-R31 (default)." +#: c-family/c.opt:507 +msgid "Warn about compile-time integer division by zero." msgstr "" -#: config/csky/csky.opt:142 -msgid "Generate code using global anchor symbol addresses." +#: c-family/c.opt:511 +msgid "Warn about duplicated branches in if-else statements." msgstr "" -#: config/csky/csky.opt:146 -msgid "Generate push/pop instructions (default)." +#: c-family/c.opt:515 +msgid "Warn about duplicated conditions in an if-else-if chain." msgstr "" -#: config/csky/csky.opt:150 -msgid "Generate stm/ldm instructions (default)." +#: c-family/c.opt:519 +msgid "Warn about violations of Effective C++ style rules." msgstr "" -#: config/csky/csky.opt:157 -msgid "Generate constant pools in the compiler instead of assembler." +#: c-family/c.opt:523 +msgid "Warn about an empty body in an if or else statement." msgstr "" -#: config/csky/csky.opt:161 -msgid "Emit .stack_size directives." +#: c-family/c.opt:527 +msgid "Warn about stray tokens after #else and #endif." msgstr "" -#: config/csky/csky.opt:165 -msgid "Generate code for C-SKY compiler runtime instead of libgcc." +#: c-family/c.opt:531 +msgid "Warn about comparison of different enum types." msgstr "" -#: config/csky/csky.opt:169 -msgid "Set the branch costs to roughly the specified number of instructions." +#: c-family/c.opt:539 +msgid "" +"This switch is deprecated; use -Werror=implicit-function-declaration instead." msgstr "" -#: config/csky/csky.opt:173 -msgid "Permit scheduling of function prologue and epilogue sequences." +#: c-family/c.opt:547 +msgid "Warn about semicolon after in-class function definition." msgstr "" -#: config/microblaze/microblaze.opt:40 -msgid "Use software emulation for floating point (default)." +#: c-family/c.opt:551 +msgid "" +"Warn for implicit type conversions that cause loss of floating point " +"precision." msgstr "" -#: config/microblaze/microblaze.opt:44 -msgid "Use hardware floating point instructions." +#: c-family/c.opt:555 +msgid "Warn if testing floating point numbers for equality." msgstr "" -#: config/microblaze/microblaze.opt:48 -msgid "Use table lookup optimization for small signed integer divisions." +#: c-family/c.opt:559 c-family/c.opt:601 +msgid "Warn about printf/scanf/strftime/strfmon format string anomalies." msgstr "" -#: config/microblaze/microblaze.opt:52 -msgid "-mcpu=PROCESSOR\t\tUse features of and schedule code for given CPU." +#: c-family/c.opt:563 +msgid "Warn about format strings that contain NUL bytes." msgstr "" -#: config/microblaze/microblaze.opt:56 -msgid "Don't optimize block moves, use memcpy." +#: c-family/c.opt:567 +msgid "Warn if passing too many arguments to a function for its format string." msgstr "" -#: config/microblaze/microblaze.opt:60 config/arm/arm.opt:99 -#: config/aarch64/aarch64.opt:68 -msgid "Assume target CPU is configured as big endian." +#: c-family/c.opt:571 +msgid "Warn about format strings that are not literals." msgstr "" -#: config/microblaze/microblaze.opt:64 config/arm/arm.opt:164 -#: config/aarch64/aarch64.opt:84 -msgid "Assume target CPU is configured as little endian." +#: c-family/c.opt:575 +msgid "" +"Warn about function calls with format strings that write past the end of the " +"destination region. Same as -Wformat-overflow=1." msgstr "" -#: config/microblaze/microblaze.opt:68 -msgid "Use the soft multiply emulation (default)." +#: c-family/c.opt:580 +msgid "Warn about possible security problems with format functions." msgstr "" -#: config/microblaze/microblaze.opt:72 -msgid "Use reorder instructions (swap and byte reversed load/store) (default)." +#: c-family/c.opt:584 +msgid "Warn about sign differences with format functions." msgstr "" -#: config/microblaze/microblaze.opt:76 -msgid "Use the software emulation for divides (default)." +#: c-family/c.opt:588 +msgid "" +"Warn about calls to snprintf and similar functions that truncate output. " +"Same as -Wformat-truncation=1." msgstr "" -#: config/microblaze/microblaze.opt:80 -msgid "Use the hardware barrel shifter instead of emulation." +#: c-family/c.opt:593 +msgid "Warn about strftime formats yielding 2-digit years." msgstr "" -#: config/microblaze/microblaze.opt:84 -msgid "Use pattern compare instructions." +#: c-family/c.opt:597 +msgid "Warn about zero-length formats." msgstr "" -#: config/microblaze/microblaze.opt:88 -msgid "Check for stack overflow at runtime." +#: c-family/c.opt:605 +msgid "" +"Warn about function calls with format strings that write past the end of the " +"destination region." msgstr "" -#: config/microblaze/microblaze.opt:92 config/iq2000/iq2000.opt:65 -msgid "Use GP relative sdata/sbss sections." +#: c-family/c.opt:610 +msgid "" +"Warn about calls to snprintf and similar functions that truncate output." msgstr "" -#: config/microblaze/microblaze.opt:96 -msgid "Clear the BSS to zero and place zero initialized in BSS." +#: c-family/c.opt:614 +msgid "Warn when the field in a struct is not aligned." msgstr "" -#: config/microblaze/microblaze.opt:100 -msgid "Use multiply high instructions for high part of 32x32 multiply." +#: c-family/c.opt:618 +msgid "Warn whenever type qualifiers are ignored." msgstr "" -#: config/microblaze/microblaze.opt:104 -msgid "Use hardware floating point conversion instructions." +#: c-family/c.opt:622 +msgid "Warn whenever attributes are ignored." msgstr "" -#: config/microblaze/microblaze.opt:108 -msgid "Use hardware floating point square root instruction." +#: c-family/c.opt:626 +msgid "" +"Warn when there is a conversion between pointers that have incompatible " +"types." msgstr "" -#: config/microblaze/microblaze.opt:112 -msgid "Description for mxl-mode-executable." +#: c-family/c.opt:630 +msgid "Warn when the address of packed member of struct or union is taken." msgstr "" -#: config/microblaze/microblaze.opt:116 -msgid "Description for mxl-mode-xmdstub." +#: c-family/c.opt:634 +msgid "Warn about variables which are initialized to themselves." msgstr "" -#: config/microblaze/microblaze.opt:120 -msgid "Description for mxl-mode-bootstrap." +#: c-family/c.opt:638 +msgid "" +"Warn about uses of std::initializer_list that can result in dangling " +"pointers." msgstr "" -#: config/microblaze/microblaze.opt:124 -msgid "Description for mxl-mode-novectors." +#: c-family/c.opt:642 +msgid "Warn about implicit declarations." msgstr "" -#: config/microblaze/microblaze.opt:128 -msgid "Use hardware prefetch instruction." +#: c-family/c.opt:650 +msgid "Warn about implicit conversions from \"float\" to \"double\"." msgstr "" -#: config/microblaze/microblaze.opt:132 -msgid "" -"Data referenced by offset from start of text instead of GOT (with -fPIC/-" -"fPIE)." +#: c-family/c.opt:654 +msgid "Warn if \"defined\" is used outside #if." msgstr "" -#: config/spu/spu.opt:20 -msgid "Emit warnings when run-time relocations are generated." +#: c-family/c.opt:658 +msgid "Warn about implicit function declarations." msgstr "" -#: config/spu/spu.opt:24 -msgid "Emit errors when run-time relocations are generated." +#: c-family/c.opt:662 +msgid "Warn when a declaration does not specify a type." msgstr "" -#: config/spu/spu.opt:28 -msgid "Specify cost of branches (Default 20)." +#: c-family/c.opt:669 +msgid "" +"Warn about C++11 inheriting constructors when the base has a variadic " +"constructor." msgstr "" -#: config/spu/spu.opt:32 -msgid "Make sure loads and stores are not moved past DMA instructions." +#: c-family/c.opt:673 +msgid "" +"Warn about incompatible integer to pointer and pointer to integer " +"conversions." msgstr "" -#: config/spu/spu.opt:36 -msgid "volatile must be specified on any memory that is effected by DMA." +#: c-family/c.opt:677 +msgid "Warn for suspicious integer expressions in boolean context." msgstr "" -#: config/spu/spu.opt:40 config/spu/spu.opt:44 +#: c-family/c.opt:681 msgid "" -"Insert nops when it might improve performance by allowing dual issue " -"(default)." +"Warn when there is a cast to a pointer from an integer of a different size." msgstr "" -#: config/spu/spu.opt:48 -msgid "Use standard main function as entry for startup." +#: c-family/c.opt:685 +msgid "Warn about invalid uses of the \"offsetof\" macro." msgstr "" -#: config/spu/spu.opt:52 -msgid "Generate branch hints for branches." +#: c-family/c.opt:689 +msgid "Warn about PCH files that are found but not used." msgstr "" -#: config/spu/spu.opt:56 -msgid "Maximum number of nops to insert for a hint (Default 2)." +#: c-family/c.opt:693 +msgid "Warn when a jump misses a variable initialization." msgstr "" -#: config/spu/spu.opt:60 +#: c-family/c.opt:697 msgid "" -"Approximate maximum number of instructions to allow between a hint and its " -"branch [125]." +"Warn when a string or character literal is followed by a ud-suffix which " +"does not begin with an underscore." msgstr "" -#: config/spu/spu.opt:64 -msgid "Generate code for 18 bit addressing." -msgstr "" - -#: config/spu/spu.opt:68 -msgid "Generate code for 32 bit addressing." -msgstr "" - -#: config/spu/spu.opt:72 config/sh/sh.opt:227 config/ia64/ia64.opt:114 -#: config/pa/pa.opt:62 -msgid "Specify range of registers to make fixed." -msgstr "" - -#: config/spu/spu.opt:76 +#: c-family/c.opt:701 msgid "" -"Insert hbrp instructions after hinted branch targets to avoid the SPU hang " -"issue." +"Warn when a logical operator is suspiciously always evaluating to true or " +"false." msgstr "" -#: config/spu/spu.opt:80 config/s390/s390.opt:56 config/i386/i386.opt:257 -msgid "Generate code for given CPU." +#: c-family/c.opt:705 +msgid "" +"Warn when logical not is used on the left hand side operand of a comparison." msgstr "" -#: config/spu/spu.opt:88 -msgid "Access variables in 32-bit PPU objects (default)." +#: c-family/c.opt:709 +msgid "Do not warn about using \"long long\" when -pedantic." msgstr "" -#: config/spu/spu.opt:92 -msgid "Access variables in 64-bit PPU objects." +#: c-family/c.opt:713 +msgid "Warn about suspicious declarations of \"main\"." msgstr "" -#: config/spu/spu.opt:96 -msgid "Allow conversions between __ea and generic pointers (default)." +#: c-family/c.opt:721 +msgid "" +"Warn about suspicious calls to memset where the third argument is constant " +"literal zero and the second is not." msgstr "" -#: config/spu/spu.opt:100 -msgid "Size (in KB) of software data cache." +#: c-family/c.opt:725 +msgid "" +"Warn about suspicious calls to memset where the third argument contains the " +"number of elements not multiplied by the element size." msgstr "" -#: config/spu/spu.opt:104 -msgid "Atomically write back software data cache lines (default)." +#: c-family/c.opt:729 +msgid "" +"Warn when the indentation of the code does not reflect the block structure." msgstr "" -#: config/c6x/c6x-tables.opt:24 -msgid "Known C6X ISAs (for use with the -march= option):" +#: c-family/c.opt:733 +msgid "Warn about possibly missing braces around initializers." msgstr "" -#: config/c6x/c6x.opt:38 config/msp430/msp430.opt:3 config/bfin/bfin.opt:40 -msgid "Use simulator runtime." +#: c-family/c.opt:737 +msgid "Warn about global functions without previous declarations." msgstr "" -#: config/c6x/c6x.opt:42 -msgid "Select method for sdata handling." +#: c-family/c.opt:741 +msgid "Warn about missing fields in struct initializers." msgstr "" -#: config/c6x/c6x.opt:46 -msgid "Valid arguments for the -msdata= option:" +#: c-family/c.opt:745 +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 "" -#: config/c6x/c6x.opt:59 -msgid "Compile for the DSBT shared library ABI." +#: c-family/c.opt:749 +msgid "Warn on direct multiple inheritance." msgstr "" -#: config/c6x/c6x.opt:63 config/bfin/bfin.opt:82 -msgid "Avoid generating pc-relative calls; use indirection." +#: c-family/c.opt:753 +msgid "Warn on namespace definition." msgstr "" -#: config/c6x/c6x.opt:67 config/m68k/m68k.opt:103 config/arm/arm.opt:86 -#: config/nios2/nios2.opt:570 config/nds32/nds32.opt:171 -msgid "Specify the name of the target architecture." +#: c-family/c.opt:757 +msgid "Warn when fields in a struct with the packed attribute are misaligned." msgstr "" -#: config/mcore/mcore.opt:23 -msgid "Generate code for the M*Core M210." +#: c-family/c.opt:761 +msgid "Warn about missing sized deallocation functions." msgstr "" -#: config/mcore/mcore.opt:27 -msgid "Generate code for the M*Core M340." +#: c-family/c.opt:765 +msgid "" +"Warn about suspicious divisions of two sizeof expressions that don't work " +"correctly with pointers." msgstr "" -#: config/mcore/mcore.opt:31 -msgid "Force functions to be aligned to a 4 byte boundary." +#: c-family/c.opt:769 +msgid "" +"Warn about suspicious length parameters to certain string functions if the " +"argument uses sizeof." msgstr "" -#: config/mcore/mcore.opt:39 -msgid "Emit call graph information." +#: c-family/c.opt:773 +msgid "Warn when sizeof is applied on a parameter declared as an array." msgstr "" -#: config/mcore/mcore.opt:43 -msgid "Use the divide instruction." +#: c-family/c.opt:777 +msgid "" +"Warn about buffer overflow in string manipulation functions like memcpy and " +"strcpy." msgstr "" -#: config/mcore/mcore.opt:47 -msgid "Inline constants if it can be done in 2 insns or less." +#: c-family/c.opt:782 +msgid "" +"Under the control of Object Size type, warn about buffer overflow in string " +"manipulation functions like memcpy and strcpy." msgstr "" -#: config/mcore/mcore.opt:56 config/fr30/fr30.opt:27 +#: c-family/c.opt:787 msgid "" -"Assume that run-time support has been provided, so omit -lsim from the " -"linker command line." +"Warn about truncation in string manipulation functions like strncat and " +"strncpy." msgstr "" -#: config/mcore/mcore.opt:60 -msgid "Use arbitrary sized immediates in bit operations." +#: c-family/c.opt:791 +msgid "Warn about functions which might be candidates for format attributes." msgstr "" -#: config/mcore/mcore.opt:64 -msgid "Prefer word accesses over byte accesses." +#: c-family/c.opt:795 +msgid "" +"Suggest that the override keyword be used when the declaration of a virtual " +"function overrides another." msgstr "" -#: config/mcore/mcore.opt:71 -msgid "Set the maximum amount for a single stack increment operation." +#: c-family/c.opt:800 +msgid "Warn about enumerated switches, with no default, missing a case." msgstr "" -#: config/mcore/mcore.opt:75 -msgid "Always treat bitfields as int-sized." +#: c-family/c.opt:804 +msgid "Warn about enumerated switches missing a \"default:\" statement." msgstr "" -#: config/arc/arc-tables.opt:25 -msgid "Known ARC CPUs (for use with the -mcpu= option):" +#: c-family/c.opt:808 +msgid "Warn about all enumerated switches missing a specific case." msgstr "" -#: config/arc/arc.opt:26 -msgid "Compile code for big endian mode." +#: c-family/c.opt:812 +msgid "Warn about switches with boolean controlling expression." msgstr "" -#: config/arc/arc.opt:30 -msgid "Compile code for little endian mode. This is the default." +#: c-family/c.opt:816 +msgid "Warn on primary template declaration." msgstr "" -#: config/arc/arc.opt:34 +#: c-family/c.opt:820 msgid "" -"Disable ARCompact specific pass to generate conditional execution " -"instructions." +"Warn about declarations of entities that may be missing attributes that " +"related entities have been declared with." msgstr "" -#: config/arc/arc.opt:38 -msgid "Generate ARCompact 32-bit code for ARC600 processor." +#: c-family/c.opt:829 +msgid "Warn about user-specified include directories that do not exist." msgstr "" -#: config/arc/arc.opt:42 -msgid "Same as -mA6." +#: c-family/c.opt:833 +msgid "" +"Warn about function parameters declared without a type specifier in K&R-" +"style functions." msgstr "" -#: config/arc/arc.opt:46 -msgid "Generate ARCompact 32-bit code for ARC601 processor." +#: c-family/c.opt:837 +msgid "Warn about global functions without prototypes." msgstr "" -#: config/arc/arc.opt:50 -msgid "Generate ARCompact 32-bit code for ARC700 processor." +#: c-family/c.opt:844 +msgid "Warn about use of multi-character character constants." msgstr "" -#: config/arc/arc.opt:54 -msgid "Same as -mA7." +#: c-family/c.opt:848 +msgid "" +"Warn about narrowing conversions within { } that are ill-formed in C++11." msgstr "" -#: config/arc/arc.opt:58 -msgid "Force all calls to be made via a jli instruction." +#: c-family/c.opt:852 +msgid "Warn about \"extern\" declarations not at file scope." msgstr "" -#: config/arc/arc.opt:62 -msgid "-mmpy-option=MPY Compile ARCv2 code with a multiplier design option." +#: c-family/c.opt:856 +msgid "" +"Warn when a noexcept expression evaluates to false even though the " +"expression can't actually throw." msgstr "" -#: config/arc/arc.opt:132 -msgid "Enable DIV-REM instructions for ARCv2." +#: c-family/c.opt:860 +msgid "" +"Warn if C++17 noexcept function type will change the mangled name of a " +"symbol." msgstr "" -#: config/arc/arc.opt:136 -msgid "Enable code density instructions for ARCv2." +#: c-family/c.opt:864 +msgid "" +"Warn when non-templatized friend functions are declared within a template." msgstr "" -#: config/arc/arc.opt:140 -msgid "Tweak register allocation to help 16-bit instruction generation." +#: c-family/c.opt:868 +msgid "" +"Warn when a conversion function will never be called due to the type it " +"converts to." msgstr "" -#: config/arc/arc.opt:150 -msgid "Use ordinarily cached memory accesses for volatile references." +#: c-family/c.opt:872 +msgid "Warn for unsafe raw memory writes to objects of class types." msgstr "" -#: config/arc/arc.opt:154 -msgid "Enable cache bypass for volatile references." +#: c-family/c.opt:876 +msgid "Warn about non-virtual destructors." msgstr "" -#: config/arc/arc.opt:158 -msgid "Generate instructions supported by barrel shifter." +#: c-family/c.opt:880 +msgid "" +"Warn about NULL being passed to argument slots marked as requiring non-NULL." msgstr "" -#: config/arc/arc.opt:162 -msgid "Generate norm instruction." +#: c-family/c.opt:896 +msgid "" +"-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings." msgstr "" -#: config/arc/arc.opt:166 -msgid "Generate swap instruction." +#: c-family/c.opt:919 +msgid "Warn if a C-style cast is used in a program." msgstr "" -#: config/arc/arc.opt:170 -msgid "Generate mul64 and mulu64 instructions." +#: c-family/c.opt:923 +msgid "Warn for obsolescent usage in a declaration." msgstr "" -#: config/arc/arc.opt:174 -msgid "Do not generate mpy instructions for ARC700." +#: c-family/c.opt:927 +msgid "Warn if an old-style parameter definition is used." msgstr "" -#: config/arc/arc.opt:178 -msgid "" -"Generate Extended arithmetic instructions. Currently only divaw, adds, subs " -"and sat16 are supported." +#: c-family/c.opt:931 +msgid "Warn if a simd directive is overridden by the vectorizer cost model." msgstr "" -#: config/arc/arc.opt:182 +#: c-family/c.opt:935 msgid "" -"Dummy flag. This is the default unless FPX switches are provided explicitly." -msgstr "" - -#: config/arc/arc.opt:186 -msgid "Generate call insns as register indirect calls." +"Warn if a string is longer than the maximum portable length specified by the " +"standard." msgstr "" -#: config/arc/arc.opt:190 -msgid "Do no generate BRcc instructions in arc_reorg." +#: c-family/c.opt:939 +msgid "Warn about overloaded virtual function names." msgstr "" -#: config/arc/arc.opt:194 -msgid "" -"Generate sdata references. This is the default, unless you compile for PIC." +#: c-family/c.opt:943 +msgid "Warn about overriding initializers without side effects." msgstr "" -#: config/arc/arc.opt:198 -msgid "Generate millicode thunks." +#: c-family/c.opt:947 +msgid "Warn about overriding initializers with side effects." msgstr "" -#: config/arc/arc.opt:202 config/arc/arc.opt:206 -msgid "FPX: Generate Single Precision FPX (compact) instructions." +#: c-family/c.opt:951 +msgid "Warn about packed bit-fields whose offset changed in GCC 4.4." msgstr "" -#: config/arc/arc.opt:210 -msgid "FPX: Generate Single Precision FPX (fast) instructions." +#: c-family/c.opt:955 +msgid "Warn about possibly missing parentheses." msgstr "" -#: config/arc/arc.opt:214 +#: c-family/c.opt:963 msgid "" -"FPX: Enable Argonaut ARC CPU Double Precision Floating Point extensions." +"Warn about calling std::move on a local object in a return statement " +"preventing copy elision." msgstr "" -#: config/arc/arc.opt:218 config/arc/arc.opt:222 -msgid "FPX: Generate Double Precision FPX (compact) instructions." +#: c-family/c.opt:967 +msgid "Warn when converting the type of pointers to member functions." msgstr "" -#: config/arc/arc.opt:226 -msgid "FPX: Generate Double Precision FPX (fast) instructions." +#: c-family/c.opt:971 +msgid "Warn about function pointer arithmetic." msgstr "" -#: config/arc/arc.opt:230 -msgid "Disable LR and SR instructions from using FPX extension aux registers." +#: c-family/c.opt:975 +msgid "Warn when a pointer differs in signedness in an assignment." msgstr "" -#: config/arc/arc.opt:234 -msgid "" -"Enable generation of ARC SIMD instructions via target-specific builtins." +#: c-family/c.opt:979 +msgid "Warn when a pointer is compared with a zero character constant." msgstr "" -#: config/arc/arc.opt:238 -msgid "-mcpu=CPU\tCompile code for ARC variant CPU." +#: c-family/c.opt:983 +msgid "Warn when a pointer is cast to an integer of a different size." msgstr "" -#: config/arc/arc.opt:242 -msgid "" -"Size optimization level: 0:none 1:opportunistic 2: regalloc 3:drop align, -" -"Os." +#: c-family/c.opt:987 +msgid "Warn about misuses of pragmas." msgstr "" -#: config/arc/arc.opt:246 config/sh/sh.opt:243 -msgid "Annotate assembler instructions with estimated addresses." +#: c-family/c.opt:991 +msgid "" +"Warn if constructor or destructors with priorities from 0 to 100 are used." msgstr "" -#: config/arc/arc.opt:250 +#: c-family/c.opt:995 msgid "" -"Cost to assume for a multiply instruction, with 4 being equal to a normal " -"insn." +"Warn if a property for an Objective-C object has no assign semantics " +"specified." msgstr "" -#: config/arc/arc.opt:254 -msgid "-mcpu=TUNE Tune code for given ARC variant." +#: c-family/c.opt:999 +msgid "Warn if inherited methods are unimplemented." msgstr "" -#: config/arc/arc.opt:285 -msgid "Enable the use of indexed loads." +#: c-family/c.opt:1003 c-family/c.opt:1007 +msgid "Warn for placement new expressions with undefined behavior." msgstr "" -#: config/arc/arc.opt:289 -msgid "Enable the use of pre/post modify with register displacement." +#: c-family/c.opt:1011 +msgid "Warn about multiple declarations of the same object." msgstr "" -#: config/arc/arc.opt:293 -msgid "Generate 32x16 multiply and mac instructions." +#: c-family/c.opt:1015 +msgid "Warn about redundant calls to std::move." msgstr "" -#: config/arc/arc.opt:299 -msgid "Set probability threshold for unaligning branches." +#: c-family/c.opt:1019 +msgid "Warn about uses of register storage specifier." msgstr "" -#: config/arc/arc.opt:303 -msgid "Don't use less than 25 bit addressing range for calls." +#: c-family/c.opt:1023 +msgid "Warn when the compiler reorders code." msgstr "" -#: config/arc/arc.opt:307 +#: c-family/c.opt:1027 msgid "" -"Explain what alignment considerations lead to the decision to make an insn " -"short or long." +"Warn whenever a function's return type defaults to \"int\" (C), or about " +"inconsistent return types (C++)." msgstr "" -#: config/arc/arc.opt:311 -msgid "Do alignment optimizations for call instructions." +#: c-family/c.opt:1031 +msgid "Warn on suspicious constructs involving reverse scalar storage order." msgstr "" -#: config/arc/arc.opt:315 -msgid "" -"Enable Rcq constraint handling - most short code generation depends on this." +#: c-family/c.opt:1035 +msgid "Warn if a selector has multiple methods." msgstr "" -#: config/arc/arc.opt:319 -msgid "Enable Rcw constraint handling - ccfsm condexec mostly depends on this." +#: c-family/c.opt:1039 +msgid "Warn about possible violations of sequence point rules." msgstr "" -#: config/arc/arc.opt:323 -msgid "Enable pre-reload use of cbranchsi pattern." +#: c-family/c.opt:1043 +msgid "Warn if a local declaration hides an instance variable." msgstr "" -#: config/arc/arc.opt:327 -msgid "Enable bbit peephole2." +#: c-family/c.opt:1047 c-family/c.opt:1051 +msgid "Warn if left shift of a signed value overflows." msgstr "" -#: config/arc/arc.opt:331 -msgid "" -"Use pc-relative switch case tables - this enables case table shortening." +#: c-family/c.opt:1055 +msgid "Warn if shift count is negative." msgstr "" -#: config/arc/arc.opt:335 -msgid "Enable compact casesi pattern." +#: c-family/c.opt:1059 +msgid "Warn if shift count >= width of type." msgstr "" -#: config/arc/arc.opt:339 -msgid "Enable 'q' instruction alternatives." +#: c-family/c.opt:1063 +msgid "Warn if left shifting a negative value." msgstr "" -#: config/arc/arc.opt:343 -msgid "Expand adddi3 and subdi3 at rtl generation time into add.f / adc etc." +#: c-family/c.opt:1067 +msgid "Warn about signed-unsigned comparisons." msgstr "" -#: config/arc/arc.opt:350 -msgid "Enable variable polynomial CRC extension." +#: c-family/c.opt:1075 +msgid "" +"Warn for implicit type conversions between signed and unsigned integers." msgstr "" -#: config/arc/arc.opt:354 -msgid "Enable DSP 3.1 Pack A extensions." +#: c-family/c.opt:1079 +msgid "Warn when overload promotes from unsigned to signed." msgstr "" -#: config/arc/arc.opt:358 -msgid "Enable dual viterbi butterfly extension." +#: c-family/c.opt:1083 +msgid "Warn about uncasted NULL used as sentinel." msgstr "" -#: config/arc/arc.opt:368 -msgid "Enable Dual and Single Operand Instructions for Telephony." +#: c-family/c.opt:1087 +msgid "Warn about unprototyped function declarations." msgstr "" -#: config/arc/arc.opt:372 -msgid "Enable XY Memory extension (DSP version 3)." +#: c-family/c.opt:1099 +msgid "Warn if type signatures of candidate methods do not match exactly." msgstr "" -#: config/arc/arc.opt:377 -msgid "Enable Locked Load/Store Conditional extension." +#: c-family/c.opt:1103 +msgid "" +"Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions " +"are used." msgstr "" -#: config/arc/arc.opt:381 -msgid "Enable swap byte ordering extension instruction." +#: c-family/c.opt:1107 +msgid "Deprecated. This switch has no effect." msgstr "" -#: config/arc/arc.opt:385 -msgid "Enable 64-bit Time-Stamp Counter extension instruction." +#: c-family/c.opt:1115 +msgid "Warn if a comparison always evaluates to true or false." msgstr "" -#: config/arc/arc.opt:389 -msgid "Pass -EB option through to linker." +#: c-family/c.opt:1119 +msgid "Warn if a throw expression will always result in a call to terminate()." msgstr "" -#: config/arc/arc.opt:393 -msgid "Pass -EL option through to linker." +#: c-family/c.opt:1123 +msgid "Warn about features not present in traditional C." msgstr "" -#: config/arc/arc.opt:397 -msgid "Pass -marclinux option through to linker." +#: c-family/c.opt:1127 +msgid "" +"Warn of prototypes causing type conversions different from what would happen " +"in the absence of prototype." msgstr "" -#: config/arc/arc.opt:401 -msgid "Pass -marclinux_prof option through to linker." +#: c-family/c.opt:1131 +msgid "" +"Warn if trigraphs are encountered that might affect the meaning of the " +"program." msgstr "" -#: config/arc/arc.opt:410 -msgid "Don't indicate any priority with TARGET_REGISTER_PRIORITY." +#: c-family/c.opt:1135 +msgid "Warn about @selector()s without previously declared methods." msgstr "" -#: config/arc/arc.opt:414 -msgid "Indicate priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY." +#: c-family/c.opt:1139 +msgid "Warn if an undefined macro is used in an #if directive." msgstr "" -#: config/arc/arc.opt:418 -msgid "Reduce priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY." +#: c-family/c.opt:1151 +msgid "Warn about unrecognized pragmas." msgstr "" -#: config/arc/arc.opt:430 -msgid "Enable atomic instructions." +#: c-family/c.opt:1155 +msgid "Warn about unsuffixed float constants." msgstr "" -#: config/arc/arc.opt:434 -msgid "Enable double load/store instructions for ARC HS." +#: c-family/c.opt:1163 +msgid "Warn when typedefs locally defined in a function are not used." msgstr "" -#: config/arc/arc.opt:438 -msgid "Specify the name of the target floating point configuration." +#: c-family/c.opt:1167 +msgid "Warn about macros defined in the main file that are not used." msgstr "" -#: config/arc/arc.opt:481 -msgid "Specify thread pointer register number." +#: c-family/c.opt:1171 +msgid "" +"Warn if a caller of a function, marked with attribute warn_unused_result, " +"does not use its return value." msgstr "" -#: config/arc/arc.opt:488 -msgid "Enable use of NPS400 bit operations." +#: c-family/c.opt:1179 c-family/c.opt:1183 +msgid "Warn when a const variable is unused." msgstr "" -#: config/arc/arc.opt:492 -msgid "Enable use of NPS400 xld/xst extension." +#: c-family/c.opt:1187 +msgid "Warn about using variadic macros." msgstr "" -#: config/arc/arc.opt:496 config/arm/arm.opt:276 config/nds32/nds32.opt:461 -msgid "Enable unaligned word and halfword accesses to packed data." +#: c-family/c.opt:1191 +msgid "" +"Warn about questionable usage of the macros used to retrieve variable " +"arguments." msgstr "" -#: config/arc/arc.opt:500 -msgid "" -"Specifies the registers that the processor saves on an interrupt entry and " -"exit." +#: c-family/c.opt:1195 +msgid "Warn if a variable length array is used." msgstr "" -#: config/arc/arc.opt:504 +#: c-family/c.opt:1199 msgid "" -"Specifies the number of registers replicated in second register bank on " -"entry to fast interrupt." +"-Wvla-larger-than=\tWarn on unbounded uses of variable-length " +"arrays, and on bounded uses of variable-length arrays whose bound can be " +"larger than bytes. bytes." msgstr "" -#: config/arc/arc.opt:508 +#: c-family/c.opt:1206 msgid "" -"Sets LP_COUNT register width. Possible values are 8, 16, 20, 24, 28, and 32." +"-Wno-vla-larger-than Disable Wvla-larger-than= warning. Equivalent to Wvla-" +"larger-than= or larger." msgstr "" -#: config/arc/arc.opt:533 -msgid "Enable 16-entry register file." +#: c-family/c.opt:1210 +msgid "Warn when a register variable is declared volatile." msgstr "" -#: config/arc/arc.opt:537 -msgid "Enable use of BI/BIH instructions when available." +#: c-family/c.opt:1214 +msgid "Warn on direct virtual inheritance." msgstr "" -#: config/arc/arc.opt:541 -msgid "Enable ENTER_S and LEAVE_S opcodes for ARCv2." +#: c-family/c.opt:1218 +msgid "Warn if a virtual base has a non-trivial move assignment operator." msgstr "" -#: config/m68k/m68k.opt:30 -msgid "Generate code for a 520X." +#: c-family/c.opt:1222 +msgid "" +"In C++, nonzero means warn about deprecated conversion from string literals " +"to 'char *'. In C, similar warning, except that the conversion is of course " +"not deprecated by the ISO C standard." msgstr "" -#: config/m68k/m68k.opt:34 -msgid "Generate code for a 5206e." +#: c-family/c.opt:1226 +msgid "Warn when a literal '0' is used as null pointer." msgstr "" -#: config/m68k/m68k.opt:38 -msgid "Generate code for a 528x." -msgstr "" - -#: config/m68k/m68k.opt:42 -msgid "Generate code for a 5307." +#: c-family/c.opt:1230 +msgid "Warn about useless casts." msgstr "" -#: config/m68k/m68k.opt:46 -msgid "Generate code for a 5407." +#: c-family/c.opt:1234 +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 "" -#: config/m68k/m68k.opt:50 config/m68k/m68k.opt:111 -msgid "Generate code for a 68000." +#: c-family/c.opt:1238 +msgid "" +"Warn when a declaration has duplicate const, volatile, restrict or _Atomic " +"specifier." msgstr "" -#: config/m68k/m68k.opt:54 -msgid "Generate code for a 68010." +#: c-family/c.opt:1242 +msgid "" +"Warn when an argument passed to a restrict-qualified parameter aliases with " +"another argument." msgstr "" -#: config/m68k/m68k.opt:58 config/m68k/m68k.opt:115 -msgid "Generate code for a 68020." +#: c-family/c.opt:1247 +msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)." msgstr "" -#: config/m68k/m68k.opt:62 -msgid "Generate code for a 68040, without any new instructions." +#: c-family/c.opt:1255 +msgid "" +"The version of the C++ ABI used for -Wabi warnings and link compatibility " +"aliases." msgstr "" -#: config/m68k/m68k.opt:66 -msgid "Generate code for a 68060, without any new instructions." +#: c-family/c.opt:1259 +msgid "Enforce class member access control semantics." msgstr "" -#: config/m68k/m68k.opt:70 -msgid "Generate code for a 68030." +#: c-family/c.opt:1263 +msgid "-fada-spec-parent=unit Dump Ada specs as child units of given parent." msgstr "" -#: config/m68k/m68k.opt:74 -msgid "Generate code for a 68040." +#: c-family/c.opt:1267 +msgid "Support C++17 allocation of over-aligned types." msgstr "" -#: config/m68k/m68k.opt:78 -msgid "Generate code for a 68060." +#: c-family/c.opt:1271 +msgid "" +"-faligned-new= Use C++17 over-aligned type allocation for alignments " +"greater than N." msgstr "" -#: config/m68k/m68k.opt:82 -msgid "Generate code for a 68302." +#: c-family/c.opt:1278 +msgid "Allow variadic functions without named parameter." msgstr "" -#: config/m68k/m68k.opt:86 -msgid "Generate code for a 68332." +#: c-family/c.opt:1282 c-family/c.opt:1530 c-family/c.opt:1854 +#: c-family/c.opt:1858 c-family/c.opt:1874 +msgid "No longer supported." msgstr "" -#: config/m68k/m68k.opt:91 -msgid "Generate code for a 68851." +#: c-family/c.opt:1286 +msgid "Recognize the \"asm\" keyword." msgstr "" -#: config/m68k/m68k.opt:95 -msgid "Generate code that uses 68881 floating-point instructions." +#: c-family/c.opt:1294 +msgid "Recognize built-in functions." msgstr "" -#: config/m68k/m68k.opt:99 -msgid "Align variables on a 32-bit boundary." +#: c-family/c.opt:1301 +msgid "Where shorter, use canonicalized paths to systems headers." msgstr "" -#: config/m68k/m68k.opt:107 -msgid "Use the bit-field instructions." +#: c-family/c.opt:1305 +msgid "" +"Enable the char8_t fundamental type and use it as the type for UTF-8 string " +"and character literals." msgstr "" -#: config/m68k/m68k.opt:119 -msgid "Generate code for a ColdFire v4e." +#: c-family/c.opt:1393 +msgid "Deprecated in GCC 8. This switch has no effect." msgstr "" -#: config/m68k/m68k.opt:123 -msgid "Specify the target CPU." +#: c-family/c.opt:1397 +msgid "Enable support for C++ concepts." msgstr "" -#: config/m68k/m68k.opt:127 -msgid "Generate code for a cpu32." +#: c-family/c.opt:1401 +msgid "Allow the arguments of the '?' operator to have different types." msgstr "" -#: config/m68k/m68k.opt:131 -msgid "Use hardware division instructions on ColdFire." +#: c-family/c.opt:1409 +msgid "-fconst-string-class=\tUse class for constant strings." msgstr "" -#: config/m68k/m68k.opt:135 -msgid "Generate code for a Fido A." +#: c-family/c.opt:1413 +msgid "-fconstexpr-depth=\tSpecify maximum constexpr recursion depth." msgstr "" -#: config/m68k/m68k.opt:139 -msgid "Generate code which uses hardware floating point instructions." +#: c-family/c.opt:1417 +msgid "" +"-fconstexpr-loop-limit=\tSpecify maximum constexpr loop iteration " +"count." msgstr "" -#: config/m68k/m68k.opt:143 -msgid "Enable ID based shared library." +#: c-family/c.opt:1421 +msgid "" +"-fconstexpr-ops-limit=\tSpecify maximum number of constexpr " +"operations during a single constexpr evaluation." msgstr "" -#: config/m68k/m68k.opt:147 -msgid "Use 32-bit offsets in jump tables rather than 16-bit offsets." +#: c-family/c.opt:1425 +msgid "Emit debug annotations during preprocessing." msgstr "" -#: config/m68k/m68k.opt:151 -msgid "Do not use the bit-field instructions." +#: c-family/c.opt:1429 +msgid "" +"-fdeduce-init-list\tenable deduction of std::initializer_list for a template " +"type parameter from a brace-enclosed initializer-list." msgstr "" -#: config/m68k/m68k.opt:155 -msgid "Use normal calling convention." +#: c-family/c.opt:1433 +msgid "Factor complex constructors and destructors to favor space over speed." msgstr "" -#: config/m68k/m68k.opt:159 -msgid "Consider type 'int' to be 32 bits wide." +#: c-family/c.opt:1441 +msgid "Print hierarchical comparisons when template types are mismatched." msgstr "" -#: config/m68k/m68k.opt:163 -msgid "Generate pc-relative code." +#: c-family/c.opt:1445 +msgid "Preprocess directives only." msgstr "" -#: config/m68k/m68k.opt:167 -msgid "Use different calling convention using 'rtd'." +#: c-family/c.opt:1449 +msgid "Permit '$' as an identifier character." msgstr "" -#: config/m68k/m68k.opt:171 config/bfin/bfin.opt:78 -msgid "Enable separate data segment." +#: c-family/c.opt:1453 +msgid "" +"-fmacro-prefix-map== Map one directory name to another in " +"__FILE__, __BASE_FILE__, and __builtin_FILE()." msgstr "" -#: config/m68k/m68k.opt:175 config/bfin/bfin.opt:74 -msgid "ID of shared library to build." +#: c-family/c.opt:1457 +msgid "Write all declarations as Ada code transitively." msgstr "" -#: config/m68k/m68k.opt:179 -msgid "Consider type 'int' to be 16 bits wide." +#: c-family/c.opt:1461 +msgid "Write all declarations as Ada code for the given file only." msgstr "" -#: config/m68k/m68k.opt:183 -msgid "Generate code with library calls for floating point." +#: c-family/c.opt:1468 +msgid "-fno-elide-type Do not elide common elements in template comparisons." msgstr "" -#: config/m68k/m68k.opt:187 -msgid "Do not use unaligned memory references." +#: c-family/c.opt:1472 +msgid "Generate code to check exception specifications." msgstr "" -#: config/m68k/m68k.opt:191 -msgid "Tune for the specified target CPU or architecture." +#: c-family/c.opt:1479 +msgid "" +"-fexec-charset=\tConvert all strings and character constants to " +"character set ." msgstr "" -#: config/m68k/m68k.opt:195 -msgid "Support more than 8192 GOT entries on ColdFire." +#: c-family/c.opt:1483 +msgid "Permit universal character names (\\u and \\U) in identifiers." msgstr "" -#: config/m68k/m68k.opt:199 -msgid "Support TLS segment larger than 64K." +#: c-family/c.opt:1487 +msgid "" +"-finput-charset=\tSpecify the default character set for source files." msgstr "" -#: config/m68k/ieee.opt:24 config/i386/i386.opt:368 -msgid "Use IEEE math for fp comparisons." +#: c-family/c.opt:1491 +msgid "" +"Support dynamic initialization of thread-local variables in a different " +"translation unit." msgstr "" -#: config/m68k/m68k-tables.opt:25 -msgid "Known M68K CPUs (for use with the -mcpu= option):" +#: c-family/c.opt:1501 +msgid "Do not assume that standard C libraries and \"main\" exist." msgstr "" -#: config/m68k/m68k-tables.opt:365 -msgid "Known M68K microarchitectures (for use with the -mtune= option):" +#: c-family/c.opt:1505 +msgid "Recognize GNU-defined keywords." msgstr "" -#: config/m68k/m68k-tables.opt:411 -msgid "Known M68K ISAs (for use with the -march= option):" +#: c-family/c.opt:1509 +msgid "Generate code for GNU runtime environment." msgstr "" -#: config/v850/v850.opt:29 -msgid "Use registers r2 and r5." +#: c-family/c.opt:1513 +msgid "Use traditional GNU semantics for inline functions." msgstr "" -#: config/v850/v850.opt:33 -msgid "Use 4 byte entries in switch tables." +#: c-family/c.opt:1526 +msgid "Assume normal C execution environment." msgstr "" -#: config/v850/v850.opt:37 -msgid "Enable backend debugging." +#: c-family/c.opt:1534 +msgid "Export functions even if they can be inlined." msgstr "" -#: config/v850/v850.opt:41 -msgid "Do not use the callt instruction (default)." +#: c-family/c.opt:1538 +msgid "Emit implicit instantiations of inline templates." msgstr "" -#: config/v850/v850.opt:45 -msgid "Reuse r30 on a per function basis." +#: c-family/c.opt:1542 +msgid "Emit implicit instantiations of templates." msgstr "" -#: config/v850/v850.opt:52 -msgid "Prohibit PC relative function calls." +#: c-family/c.opt:1546 +msgid "Implement C++17 inheriting constructor semantics." msgstr "" -#: config/v850/v850.opt:56 -msgid "Use stubs for function prologues." +#: c-family/c.opt:1553 +msgid "Don't emit dllexported inline functions unless needed." msgstr "" -#: config/v850/v850.opt:60 -msgid "Set the max size of data eligible for the SDA area." +#: c-family/c.opt:1560 +msgid "" +"Allow implicit conversions between vectors with differing numbers of " +"subparts and/or differing element types." msgstr "" -#: config/v850/v850.opt:67 -msgid "Enable the use of the short load instructions." +#: c-family/c.opt:1564 +msgid "Don't warn about uses of Microsoft extensions." msgstr "" -#: config/v850/v850.opt:71 -msgid "Same as: -mep -mprolog-function." +#: c-family/c.opt:1583 +msgid "" +"Implement resolution of DR 150 for matching of template template arguments." msgstr "" -#: config/v850/v850.opt:75 -msgid "Set the max size of data eligible for the TDA area." +#: c-family/c.opt:1587 +msgid "Generate code for NeXT (Apple Mac OS X) runtime environment." msgstr "" -#: config/v850/v850.opt:82 -msgid "Do not enforce strict alignment." +#: c-family/c.opt:1591 +msgid "Assume that receivers of Objective-C messages may be nil." msgstr "" -#: config/v850/v850.opt:86 +#: c-family/c.opt:1595 msgid "" -"Put jump tables for switch statements into the .data section rather than " -"the .code section." +"Allow access to instance variables as if they were local declarations within " +"instance method implementations." msgstr "" -#: config/v850/v850.opt:93 -msgid "Compile for the v850 processor." +#: c-family/c.opt:1599 +msgid "" +"-fvisibility=[private|protected|public|package]\tSet the default symbol " +"visibility." msgstr "" -#: config/v850/v850.opt:97 -msgid "Compile for the v850e processor." +#: c-family/c.opt:1624 +msgid "" +"Treat a throw() exception specification as noexcept to improve code size." msgstr "" -#: config/v850/v850.opt:101 -msgid "Compile for the v850e1 processor." +#: c-family/c.opt:1628 +msgid "" +"Specify which ABI to use for Objective-C family code and meta-data " +"generation." msgstr "" -#: config/v850/v850.opt:105 -msgid "Compile for the v850es variant of the v850e1." +#: c-family/c.opt:1634 +msgid "" +"Generate special Objective-C methods to initialize/destroy non-POD C++ " +"ivars, if needed." msgstr "" -#: config/v850/v850.opt:109 -msgid "Compile for the v850e2 processor." +#: c-family/c.opt:1638 +msgid "Allow fast jumps to the message dispatcher." msgstr "" -#: config/v850/v850.opt:113 -msgid "Compile for the v850e2v3 processor." +#: c-family/c.opt:1644 +msgid "Enable Objective-C exception and synchronization syntax." msgstr "" -#: config/v850/v850.opt:117 -msgid "Compile for the v850e3v5 processor." +#: c-family/c.opt:1648 +msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs." msgstr "" -#: config/v850/v850.opt:124 -msgid "Enable v850e3v5 loop instructions." +#: c-family/c.opt:1652 +msgid "" +"Enable inline checks for nil receivers with the NeXT runtime and ABI version " +"2." msgstr "" -#: config/v850/v850.opt:128 -msgid "Set the max size of data eligible for the ZDA area." +#: c-family/c.opt:1657 +msgid "Enable Objective-C setjmp exception handling runtime." msgstr "" -#: config/v850/v850.opt:135 -msgid "Enable relaxing in the assembler." +#: c-family/c.opt:1661 +msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0." msgstr "" -#: config/v850/v850.opt:139 -msgid "Prohibit PC relative jumps." +#: c-family/c.opt:1665 +msgid "Enable OpenACC." msgstr "" -#: config/v850/v850.opt:143 -msgid "Inhibit the use of hardware floating point instructions." +#: c-family/c.opt:1669 +msgid "Specify default OpenACC compute dimensions." msgstr "" -#: config/v850/v850.opt:147 -msgid "" -"Allow the use of hardware floating point instructions for V850E2V3 and up." +#: c-family/c.opt:1673 +msgid "Enable OpenMP (implies -frecursive in Fortran)." msgstr "" -#: config/v850/v850.opt:151 -msgid "Enable support for the RH850 ABI. This is the default." +#: c-family/c.opt:1677 +msgid "Enable OpenMP's SIMD directives." msgstr "" -#: config/v850/v850.opt:155 -msgid "Enable support for the old GCC ABI." +#: c-family/c.opt:1681 +msgid "Recognize C++ keywords like \"compl\" and \"xor\"." msgstr "" -#: config/v850/v850.opt:159 -msgid "Support alignments of up to 64-bits." +#: c-family/c.opt:1692 +msgid "Look for and use PCH files even when preprocessing." msgstr "" -#: config/m32r/m32r.opt:34 -msgid "Compile for the m32rx." +#: c-family/c.opt:1696 +msgid "Downgrade conformance errors to warnings." msgstr "" -#: config/m32r/m32r.opt:38 -msgid "Compile for the m32r2." +#: c-family/c.opt:1700 +msgid "Enable Plan 9 language extensions." msgstr "" -#: config/m32r/m32r.opt:42 -msgid "Compile for the m32r." +#: c-family/c.opt:1704 +msgid "Treat the input file as already preprocessed." msgstr "" -#: config/m32r/m32r.opt:46 -msgid "Align all loops to 32 byte boundary." +#: c-family/c.opt:1712 +msgid "" +"-ftrack-macro-expansion=<0|1|2> Track locations of tokens coming from macro " +"expansion and display them in error messages." msgstr "" -#: config/m32r/m32r.opt:50 -msgid "Prefer branches over conditional execution." +#: c-family/c.opt:1716 +msgid "" +"-fno-pretty-templates Do not pretty-print template specializations as the " +"template signature followed by the arguments." msgstr "" -#: config/m32r/m32r.opt:54 -msgid "Give branches their default cost." +#: c-family/c.opt:1720 +msgid "Treat known sprintf return values as constants." msgstr "" -#: config/m32r/m32r.opt:58 -msgid "Display compile time statistics." +#: c-family/c.opt:1724 +msgid "" +"Used in Fix-and-Continue mode to indicate that object files may be swapped " +"in at runtime." msgstr "" -#: config/m32r/m32r.opt:62 -msgid "Specify cache flush function." +#: c-family/c.opt:1728 +msgid "Enable automatic template instantiation." msgstr "" -#: config/m32r/m32r.opt:66 -msgid "Specify cache flush trap number." +#: c-family/c.opt:1732 +msgid "Generate run time type descriptor information." msgstr "" -#: config/m32r/m32r.opt:70 -msgid "Only issue one instruction per cycle." +#: c-family/c.opt:1736 ada/gcc-interface/lang.opt:77 +msgid "Use the narrowest integer type possible for enumeration types." msgstr "" -#: config/m32r/m32r.opt:74 -msgid "Allow two instructions to be issued per cycle." +#: c-family/c.opt:1740 +msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"." msgstr "" -#: config/m32r/m32r.opt:78 -msgid "Code size: small, medium or large." +#: c-family/c.opt:1744 +msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed." msgstr "" -#: config/m32r/m32r.opt:94 -msgid "Don't call any cache flush functions." +#: c-family/c.opt:1748 ada/gcc-interface/lang.opt:81 +msgid "Make \"char\" signed by default." msgstr "" -#: config/m32r/m32r.opt:98 -msgid "Don't call any cache flush trap." +#: c-family/c.opt:1752 +msgid "Enable C++14 sized deallocation support." msgstr "" -#: config/m32r/m32r.opt:105 -msgid "Small data area: none, sdata, use." +#: c-family/c.opt:1759 +msgid "" +"-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar " +"storage order." msgstr "" -#: config/arm/arm.opt:35 -msgid "TLS dialect to use:" +#: c-family/c.opt:1775 +msgid "Display statistics accumulated during compilation." msgstr "" -#: config/arm/arm.opt:45 -msgid "Specify an ABI." +#: c-family/c.opt:1779 +msgid "" +"Assume that values of enumeration type are always within the minimum range " +"of that type." msgstr "" -#: config/arm/arm.opt:49 -msgid "Known ARM ABIs (for use with the -mabi= option):" +#: c-family/c.opt:1786 c-family/c.opt:1791 +msgid "" +"Follow the C++17 evaluation order requirements for assignment expressions, " +"shift, member function calls, etc." msgstr "" -#: config/arm/arm.opt:68 -msgid "Generate a call to abort if a noreturn function returns." +#: c-family/c.opt:1808 +msgid "-ftabstop=\tDistance between tab stops for column reporting." msgstr "" -#: config/arm/arm.opt:75 -msgid "Generate APCS conformant stack frames." +#: c-family/c.opt:1812 +msgid "" +"Set the maximum number of template instantiation notes for a single warning " +"or error." msgstr "" -#: config/arm/arm.opt:79 -msgid "Generate re-entrant, PIC code." +#: c-family/c.opt:1819 +msgid "" +"-ftemplate-depth=\tSpecify maximum template instantiation depth." msgstr "" -#: config/arm/arm.opt:95 -msgid "Generate code in 32 bit ARM state." +#: c-family/c.opt:1826 +msgid "" +"-fno-threadsafe-statics\tDo not generate thread-safe code for initializing " +"local statics." msgstr "" -#: config/arm/arm.opt:103 -msgid "Thumb: Assume non-static functions may be called from ARM code." +#: c-family/c.opt:1830 +msgid "" +"When \"signed\" or \"unsigned\" is not given make the bitfield unsigned." msgstr "" -#: config/arm/arm.opt:107 -msgid "Thumb: Assume function pointers may go to non-Thumb aware code." +#: c-family/c.opt:1834 ada/gcc-interface/lang.opt:85 +msgid "Make \"char\" unsigned by default." msgstr "" -#: config/arm/arm.opt:111 config/bfin/bfin.opt:44 -msgid "Specify the name of the target CPU." +#: c-family/c.opt:1838 +msgid "Use __cxa_atexit to register destructors." msgstr "" -#: config/arm/arm.opt:115 -msgid "Specify if floating point hardware should be used." +#: c-family/c.opt:1842 +msgid "Use __cxa_get_exception_ptr in exception handling." msgstr "" -#: config/arm/arm.opt:119 -msgid "" -"Specify that the compiler should target secure code as per ARMv8-M Security " -"Extensions." +#: c-family/c.opt:1846 +msgid "Marks all inlined functions and methods as having hidden visibility." msgstr "" -#: config/arm/arm.opt:123 -msgid "Known floating-point ABIs (for use with the -mfloat-abi= option):" +#: c-family/c.opt:1850 +msgid "Changes visibility to match Microsoft Visual Studio by default." msgstr "" -#: config/arm/arm.opt:136 -msgid "Switch ARM/Thumb modes on alternating functions for compiler testing." +#: c-family/c.opt:1862 d/lang.opt:330 +msgid "Emit common-like symbols as weak symbols." msgstr "" -#: config/arm/arm.opt:140 -msgid "Specify the __fp16 floating-point format." +#: c-family/c.opt:1866 +msgid "" +"-fwide-exec-charset=\tConvert all wide strings and character constants " +"to character set ." msgstr "" -#: config/arm/arm.opt:144 -msgid "Known __fp16 formats (for use with the -mfp16-format= option):" +#: c-family/c.opt:1870 +msgid "Generate a #line directive pointing at the current working directory." msgstr "" -#: config/arm/arm.opt:157 -msgid "Specify the name of the target floating point hardware/format." +#: c-family/c.opt:1878 +msgid "" +"Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode." msgstr "" -#: config/arm/arm.opt:168 -msgid "Generate call insns as indirect calls, if necessary." +#: c-family/c.opt:1882 +msgid "Dump declarations to a .decl file." msgstr "" -#: config/arm/arm.opt:172 config/s390/s390.opt:229 -msgid "Assume data segments are relative to text segment." +#: c-family/c.opt:1886 +msgid "" +"-femit-struct-debug-baseonly\tAggressive reduced debug info for structs." msgstr "" -#: config/arm/arm.opt:176 -msgid "Specify the register to be used for PIC addressing." +#: c-family/c.opt:1890 +msgid "" +"-femit-struct-debug-reduced\tConservative reduced debug info for structs." msgstr "" -#: config/arm/arm.opt:180 -msgid "Store function names in object code." +#: c-family/c.opt:1894 +msgid "" +"-femit-struct-debug-detailed=\tDetailed reduced debug info for " +"structs." msgstr "" -#: config/arm/arm.opt:184 -msgid "Permit scheduling of a function's prologue sequence." +#: c-family/c.opt:1898 +msgid "" +"Interpret imaginary, fixed-point, or other gnu number suffix as the " +"corresponding number literal rather than a user-defined number literal." msgstr "" -#: config/arm/arm.opt:188 config/rs6000/rs6000.opt:240 -msgid "Do not load the PIC register in function prologues." +#: c-family/c.opt:1903 +msgid "-idirafter \tAdd to the end of the system include path." msgstr "" -#: config/arm/arm.opt:195 -msgid "Specify the minimum bit alignment of structures. (Deprecated)." +#: c-family/c.opt:1907 +msgid "-imacros \tAccept definition of macros in ." msgstr "" -#: config/arm/arm.opt:199 -msgid "Generate code for Thumb state." +#: c-family/c.opt:1911 +msgid "-imultilib \tSet to be the multilib include subdirectory." msgstr "" -#: config/arm/arm.opt:203 -msgid "Support calls between Thumb and ARM instruction sets." +#: c-family/c.opt:1915 +msgid "-include \tInclude the contents of before other files." msgstr "" -#: config/arm/arm.opt:207 -msgid "Specify thread local storage scheme." +#: c-family/c.opt:1919 +msgid "-iprefix \tSpecify as a prefix for next two options." msgstr "" -#: config/arm/arm.opt:211 -msgid "Specify how to access the thread pointer." +#: c-family/c.opt:1923 +msgid "-isysroot \tSet to be the system root directory." msgstr "" -#: config/arm/arm.opt:215 -msgid "Valid arguments to -mtp=:" +#: c-family/c.opt:1927 +msgid "-isystem \tAdd to the start of the system include path." msgstr "" -#: config/arm/arm.opt:228 -msgid "Thumb: Generate (non-leaf) stack frames even if not needed." +#: c-family/c.opt:1931 +msgid "-iquote \tAdd to the end of the quote include path." msgstr "" -#: config/arm/arm.opt:232 -msgid "Thumb: Generate (leaf) stack frames even if not needed." +#: c-family/c.opt:1935 +msgid "-iwithprefix \tAdd to the end of the system include path." msgstr "" -#: config/arm/arm.opt:240 +#: c-family/c.opt:1939 msgid "" -"Print CPU tuning information as comment in assembler file. This is an " -"option used only for regression testing of the compiler and not intended for " -"ordinary use in compiling code." +"-iwithprefixbefore \tAdd to the end of the main include path." msgstr "" -#: config/arm/arm.opt:251 +#: c-family/c.opt:1949 msgid "" -"Use Neon quad-word (rather than double-word) registers for vectorization." +"Do not search standard system include directories (those specified with -" +"isystem will still be used)." msgstr "" -#: config/arm/arm.opt:255 -msgid "" -"Use Neon double-word (rather than quad-word) registers for vectorization." +#: c-family/c.opt:1953 +msgid "Do not search standard system include directories for C++." msgstr "" -#: config/arm/arm.opt:259 -msgid "" -"Enable more verbose RTX cost dumps during debug. For GCC developers use " -"only." +#: c-family/c.opt:1965 +msgid "Generate C header of platform-specific features." msgstr "" -#: config/arm/arm.opt:263 -msgid "Only generate absolute relocations on word sized values." +#: c-family/c.opt:1969 +msgid "Remap file names when including files." msgstr "" -#: config/arm/arm.opt:267 -msgid "Generate IT blocks appropriate for ARMv8." +#: c-family/c.opt:1973 c-family/c.opt:1977 +msgid "" +"Conform to the ISO 1998 C++ standard revised by the 2003 technical " +"corrigendum." msgstr "" -#: config/arm/arm.opt:271 -msgid "" -"Avoid overlapping destination and address registers on LDRD instructions " -"that may trigger Cortex-M3 errata." +#: c-family/c.opt:1981 +msgid "Conform to the ISO 2011 C++ standard." msgstr "" -#: config/arm/arm.opt:280 -msgid "Use Neon to perform 64-bits operations rather than core registers." +#: c-family/c.opt:1985 +msgid "Deprecated in favor of -std=c++11." msgstr "" -#: config/arm/arm.opt:284 -msgid "Assume loading data from flash is slower than fetching instructions." +#: c-family/c.opt:1989 +msgid "Deprecated in favor of -std=c++14." msgstr "" -#: config/arm/arm.opt:288 -msgid "Assume unified syntax for inline assembly code." +#: c-family/c.opt:1993 +msgid "Conform to the ISO 2014 C++ standard." msgstr "" -#: config/arm/arm.opt:292 -msgid "Do not allow constant data to be placed in code sections." +#: c-family/c.opt:1997 +msgid "Deprecated in favor of -std=c++17." msgstr "" -#: config/arm/arm.opt:296 -msgid "When linking for big-endian targets, generate a BE8 format image." +#: c-family/c.opt:2001 +msgid "Conform to the ISO 2017 C++ standard." msgstr "" -#: config/arm/arm.opt:300 +#: c-family/c.opt:2005 msgid "" -"When linking for big-endian targets, generate a legacy BE32 format image." +"Conform to the ISO 2020(?) C++ draft standard (experimental and incomplete " +"support)." msgstr "" -#: config/arm/arm.opt:304 config/sh/sh.opt:195 -msgid "Cost to assume for a branch insn." +#: c-family/c.opt:2009 c-family/c.opt:2135 +msgid "Conform to the ISO 2011 C standard." msgstr "" -#: config/arm/arm-tables.opt:25 -msgid "Known ARM CPUs (for use with the -mcpu= and -mtune= options):" +#: c-family/c.opt:2013 +msgid "Deprecated in favor of -std=c11." msgstr "" -#: config/arm/arm-tables.opt:257 -msgid "Known ARM architectures (for use with the -march= option):" +#: c-family/c.opt:2017 c-family/c.opt:2021 c-family/c.opt:2139 +#: c-family/c.opt:2143 +msgid "Conform to the ISO 2017 C standard (published in 2018)." msgstr "" -#: config/arm/arm-tables.opt:354 -msgid "Known ARM FPUs (for use with the -mfpu= option):" +#: c-family/c.opt:2025 +msgid "" +"Conform to the ISO 202X C standard draft (experimental and incomplete " +"support)." msgstr "" -#: config/tilepro/tilepro.opt:23 +#: c-family/c.opt:2029 c-family/c.opt:2033 c-family/c.opt:2119 +msgid "Conform to the ISO 1990 C standard." +msgstr "" + +#: c-family/c.opt:2037 c-family/c.opt:2127 +msgid "Conform to the ISO 1999 C standard." +msgstr "" + +#: c-family/c.opt:2041 +msgid "Deprecated in favor of -std=c99." +msgstr "" + +#: c-family/c.opt:2045 c-family/c.opt:2050 msgid "" -"Compile with 32 bit longs and pointers, which is the only supported behavior " -"and thus the flag is ignored." +"Conform to the ISO 1998 C++ standard revised by the 2003 technical " +"corrigendum with GNU extensions." msgstr "" -#: config/tilepro/tilepro.opt:28 config/tilegx/tilegx.opt:26 -msgid "-mcpu=CPU\tUse features of and schedule code for given CPU." +#: c-family/c.opt:2055 +msgid "Conform to the ISO 2011 C++ standard with GNU extensions." msgstr "" -#: config/tilepro/tilepro.opt:32 -msgid "Known TILEPro CPUs (for use with the -mcpu= option):" +#: c-family/c.opt:2059 +msgid "Deprecated in favor of -std=gnu++11." msgstr "" -#: config/sol2.opt:32 -msgid "Clear hardware capabilities when linking." +#: c-family/c.opt:2063 +msgid "Deprecated in favor of -std=gnu++14." msgstr "" -#: config/sol2.opt:36 -msgid "Pass -z text to linker." +#: c-family/c.opt:2067 +msgid "Conform to the ISO 2014 C++ standard with GNU extensions." msgstr "" -#: config/vms/vms.opt:27 -msgid "Malloc data into P2 space." +#: c-family/c.opt:2071 +msgid "Deprecated in favor of -std=gnu++17." msgstr "" -#: config/vms/vms.opt:31 -msgid "Set name of main routine for the debugger." +#: c-family/c.opt:2075 +msgid "Conform to the ISO 2017 C++ standard with GNU extensions." msgstr "" -#: config/vms/vms.opt:35 -msgid "Use VMS exit codes instead of posix ones." +#: c-family/c.opt:2079 +msgid "" +"Conform to the ISO 2020(?) C++ draft standard with GNU extensions " +"(experimental and incomplete support)." msgstr "" -#: config/vms/vms.opt:39 -msgid "-mpointer-size=[no,32,short,64,long]\tSet the default pointer size." +#: c-family/c.opt:2083 +msgid "Conform to the ISO 2011 C standard with GNU extensions." msgstr "" -#: config/avr/avr.opt:23 -msgid "Use subroutines for function prologues and epilogues." +#: c-family/c.opt:2087 +msgid "Deprecated in favor of -std=gnu11." msgstr "" -#: config/avr/avr.opt:27 -msgid "-mmcu=MCU\tSelect the target MCU." +#: c-family/c.opt:2091 c-family/c.opt:2095 +msgid "" +"Conform to the ISO 2017 C standard (published in 2018) with GNU extensions." msgstr "" -#: config/avr/avr.opt:31 +#: c-family/c.opt:2099 msgid "" -"Allow usage of __gcc_isr pseudo instructions in ISR prologues and epilogues." +"Conform to the ISO 202X C standard draft with GNU extensions (experimental " +"and incomplete support)." msgstr "" -#: config/avr/avr.opt:35 -msgid "Set the number of 64 KiB flash segments." +#: c-family/c.opt:2103 c-family/c.opt:2107 +msgid "Conform to the ISO 1990 C standard with GNU extensions." msgstr "" -#: config/avr/avr.opt:39 -msgid "Indicate presence of a processor erratum." +#: c-family/c.opt:2111 +msgid "Conform to the ISO 1999 C standard with GNU extensions." msgstr "" -#: config/avr/avr.opt:43 -msgid "Enable Read-Modify-Write (RMW) instructions support/use." +#: c-family/c.opt:2115 +msgid "Deprecated in favor of -std=gnu99." msgstr "" -#: config/avr/avr.opt:53 -msgid "Use RJMP / RCALL even though CALL / JMP are available." +#: c-family/c.opt:2123 +msgid "Conform to the ISO 1990 C standard as amended in 1994." msgstr "" -#: config/avr/avr.opt:57 -msgid "Use an 8-bit 'int' type." +#: c-family/c.opt:2131 +msgid "Deprecated in favor of -std=iso9899:1999." msgstr "" -#: config/avr/avr.opt:61 -msgid "Change the stack pointer without disabling interrupts." +#: c-family/c.opt:2150 +msgid "Enable traditional preprocessing." msgstr "" -#: config/avr/avr.opt:65 -msgid "" -"Set the branch costs for conditional branch instructions. Reasonable values " -"are small, non-negative integers. The default branch cost is 0." +#: c-family/c.opt:2154 +msgid "-trigraphs\tSupport ISO C trigraphs." msgstr "" -#: config/avr/avr.opt:69 -msgid "Treat main as if it had attribute OS_task." +#: c-family/c.opt:2158 +msgid "Do not predefine system-specific and GCC-specific macros." msgstr "" -#: config/avr/avr.opt:79 -msgid "Change only the low 8 bits of the stack pointer." +#: brig/lang.opt:36 +msgid "" +"Assume we are finalizing for phsa and its libhsail-rt. Enables additional " +"phsa-specific optimizations (default)." msgstr "" -#: config/avr/avr.opt:83 -msgid "Relax branches." +#: ada/gcc-interface/lang.opt:61 +msgid "Synonym of -gnatk8." msgstr "" -#: config/avr/avr.opt:87 -msgid "" -"Make the linker relaxation machine assume that a program counter wrap-around " -"occurs." +#: ada/gcc-interface/lang.opt:69 +msgid "Do not look for object files in standard path." msgstr "" -#: config/avr/avr.opt:91 -msgid "" -"Accumulate outgoing function arguments and acquire/release the needed stack " -"space for outgoing function arguments in function prologue/epilogue. " -"Without this option, outgoing arguments are pushed before calling a function " -"and popped afterwards. This option can lead to reduced code size for " -"functions that call many functions that get their arguments on the stack " -"like, for example printf." +#: ada/gcc-interface/lang.opt:73 +msgid "Select the runtime." msgstr "" -#: config/avr/avr.opt:95 -msgid "" -"When accessing RAM, use X as imposed by the hardware, i.e. just use pre-" -"decrement, post-increment and indirect addressing with the X register. " -"Without this option, the compiler may assume that there is an addressing " -"mode X+const similar to Y+const and Z+const and emit instructions to emulate " -"such an addressing mode for X." +#: ada/gcc-interface/lang.opt:89 +msgid "Catch typos." msgstr "" -#: config/avr/avr.opt:100 -msgid "" -"The device has no SPH special function register. This option will be " -"overridden by the compiler driver with the correct setting if presence/" -"absence of SPH can be deduced from -mmcu=MCU." +#: ada/gcc-interface/lang.opt:93 +msgid "Set name of output ALI file (internal switch)." msgstr "" -#: config/avr/avr.opt:104 -msgid "Warn if the address space of an address is changed." +#: ada/gcc-interface/lang.opt:97 +msgid "-gnat\tSpecify options to GNAT." msgstr "" -#: config/avr/avr.opt:108 -msgid "" -"Warn if the ISR is misspelled, i.e. without __vector prefix. Enabled by " -"default." +#: ada/gcc-interface/lang.opt:101 +msgid "Ignored." msgstr "" -#: config/avr/avr.opt:112 -msgid "" -"Allow to use truncation instead of rounding towards zero for fractional " -"fixed-point types." +#: d/lang.opt:51 +msgid "-Hd \tWrite D interface files to directory ." msgstr "" -#: config/avr/avr.opt:116 -msgid "" -"Assume that all data in static storage can be accessed by LDS / STS. This " -"option is only useful for reduced Tiny devices." +#: d/lang.opt:55 +msgid "-Hf \tWrite D interface to ." msgstr "" -#: config/avr/avr.opt:120 -msgid "Do not link against the device-specific library lib.a." +#: d/lang.opt:123 +msgid "Warn about casts that will produce a null result." msgstr "" -#: config/s390/tpf.opt:23 -msgid "Enable TPF-OS tracing code." +#: d/lang.opt:139 +msgid "Warn from speculative compiles such as __traits(compiles)." msgstr "" -#: config/s390/tpf.opt:27 -msgid "Specify main object for TPF-OS." +#: d/lang.opt:151 +msgid "Generate JSON file." msgstr "" -#: config/s390/s390.opt:48 -msgid "31 bit ABI." +#: d/lang.opt:155 +msgid "-Xf \tWrite JSON output to the given ." msgstr "" -#: config/s390/s390.opt:52 -msgid "64 bit ABI." +#: d/lang.opt:159 +msgid "Debug library to use instead of phobos." msgstr "" -#: config/s390/s390.opt:120 -msgid "Maintain backchain pointer." +#: d/lang.opt:163 +msgid "Default library to use instead of phobos." msgstr "" -#: config/s390/s390.opt:124 -msgid "Additional debug prints." +#: d/lang.opt:167 +msgid "Do link the standard D startup files in the compilation." msgstr "" -#: config/s390/s390.opt:128 -msgid "ESA/390 architecture." +#: d/lang.opt:174 +msgid "Generate code for all template instantiations." msgstr "" -#: config/s390/s390.opt:132 -msgid "Enable decimal floating point hardware support." +#: d/lang.opt:178 +msgid "Generate code for assert contracts." msgstr "" -#: config/s390/s390.opt:136 -msgid "Enable hardware floating point." +#: d/lang.opt:186 +msgid "" +"-fbounds-check=[on|safeonly|off]\tTurn array bounds checks on, in @safe code " +"only, or off." msgstr "" -#: config/s390/s390.opt:140 +#: d/lang.opt:210 +msgid "Compile in debug code." +msgstr "" + +#: d/lang.opt:214 msgid "" -"Takes two non-negative integer numbers separated by a comma. Prepend the " -"function label with the number of two-byte Nop instructions indicated by the " -"first. Append Nop instructions covering the number of halfwords indicated " -"by the second after the label. Nop instructions of the largest possible " -"size are used (six, four or two bytes), beginning with the largest possible " -"size. Using 0 for both values disables hotpatching." +"-fdebug=\tCompile in debug code, code <= , or code " +"identified by ." msgstr "" -#: config/s390/s390.opt:158 -msgid "Use hardware transactional execution instructions." +#: d/lang.opt:218 +msgid "Generate documentation." msgstr "" -#: config/s390/s390.opt:162 -msgid "Use hardware vector facility instructions and enable the vector ABI." +#: d/lang.opt:222 +msgid "-fdoc-dir=\tWrite documentation file to directory ." msgstr "" -#: config/s390/s390.opt:166 -msgid "Use packed stack layout." +#: d/lang.opt:226 +msgid "-fdoc-file=\tWrite documentation to ." msgstr "" -#: config/s390/s390.opt:170 -msgid "Use bras for executable < 64k." +#: d/lang.opt:230 +msgid "-fdoc-inc=\tInclude a Ddoc macro ." msgstr "" -#: config/s390/s390.opt:174 -msgid "Disable hardware floating point." +#: d/lang.opt:234 +msgid "Assume that standard D runtime libraries and \"D main\" exist." msgstr "" -#: config/s390/s390.opt:178 -msgid "" -"Set the max. number of bytes which has to be left to stack size before a " -"trap instruction is triggered." +#: d/lang.opt:238 +msgid "Display the frontend AST after parsing and semantic passes." msgstr "" -#: config/s390/s390.opt:182 -msgid "Switches off the -mstack-guard= option." +#: d/lang.opt:242 +msgid "Ignore unsupported pragmas." msgstr "" -#: config/s390/s390.opt:186 -msgid "" -"Emit extra code in the function prologue in order to trap if the stack size " -"exceeds the given limit." +#: d/lang.opt:246 +msgid "Generate code for class invariant contracts." msgstr "" -#: config/s390/s390.opt:190 -msgid "Switches off the -mstack-size= option." +#: d/lang.opt:250 +msgid "Generate a default D main() function when compiling." msgstr "" -#: config/s390/s390.opt:198 -msgid "Use the mvcle instruction for block moves." +#: d/lang.opt:254 +msgid "" +"-fmodule-file==\tuse as source file for " +"." msgstr "" -#: config/s390/s390.opt:202 +#: d/lang.opt:258 +msgid "Generate ModuleInfo struct for output module." +msgstr "" + +#: d/lang.opt:262 msgid "" -"Enable the z vector language extension providing the context-sensitive " -"vector macro and enable the Altivec-style builtins in vecintrin.h." +"Process all modules specified on the command line, but only generate code " +"for the module specified by the argument." msgstr "" -#: config/s390/s390.opt:207 -msgid "Warn if a function uses alloca or creates an array with dynamic size." +#: d/lang.opt:266 +msgid "Generate code for postcondition contracts." msgstr "" -#: config/s390/s390.opt:211 -msgid "Warn if a single function's framesize exceeds the given framesize." +#: d/lang.opt:270 +msgid "Generate code for precondition contracts." msgstr "" -#: config/s390/s390.opt:215 -msgid "z/Architecture." +#: d/lang.opt:274 +msgid "Compile release version." msgstr "" -#: config/s390/s390.opt:219 -msgid "" -"Set the branch costs for conditional branch instructions. Reasonable values " -"are small, non-negative integers. The default branch cost is 1." +#: d/lang.opt:282 +msgid "Generate code for switches without a default case." msgstr "" -#: config/s390/s390.opt:234 -msgid "" -"Wrap all indirect branches into execute in order to disable branch " -"prediction." +#: d/lang.opt:286 +msgid "List information on all language changes." msgstr "" -#: config/s390/s390.opt:239 -msgid "" -"Wrap indirect table jumps and computed gotos into execute in order to " -"disable branch prediction. Using thunk or thunk-extern with this option " -"requires the thunks to be considered signal handlers to order to generate " -"correct CFI. For environments where unwinding (e.g. for exceptions) is " -"required please use thunk-inline instead." +#: d/lang.opt:290 +msgid "Give deprecation messages about -ftransition=import anomalies." msgstr "" -#: config/s390/s390.opt:247 -msgid "" -"Wrap all indirect calls into execute in order to disable branch prediction." +#: d/lang.opt:294 +msgid "List all usages of complex or imaginary types." msgstr "" -#: config/s390/s390.opt:251 -msgid "" -"Wrap all indirect return branches into execute in order to disable branch " -"prediction." +#: d/lang.opt:298 +msgid "Implement DIP1000: Scoped pointers (experimental)." msgstr "" -#: config/s390/s390.opt:256 -msgid "" -"Wrap indirect return branches into execute in order to disable branch " -"prediction. This affects only branches where the return address is going to " -"be restored from memory." +#: d/lang.opt:302 +msgid "Implement DIP25: Sealed references (experimental)." msgstr "" -#: config/s390/s390.opt:262 -msgid "" -"Wrap indirect return branches into execute in order to disable branch " -"prediction. This affects only branches where the return address doesn't need " -"to be restored from memory." +#: d/lang.opt:306 +msgid "List all non-mutable fields which occupy an object instance." msgstr "" -#: config/s390/s390.opt:268 config/i386/i386.opt:1050 -msgid "" -"Known indirect branch choices (for use with the -mindirect-branch=/-" -"mfunction-return= options):" +#: d/lang.opt:310 +msgid "Revert to single phase name lookup." msgstr "" -#: config/s390/s390.opt:284 -msgid "" -"Generate sections .s390_indirect_jump, .s390_indirect_call, ." -"s390_return_reg, and .s390_return_mem to contain the indirect branch " -"locations which have been patched as part of using one of the -mindirect-" -"branch* or -mfunction-return* options. The sections consist of an array of " -"32 bit elements. Each entry holds the offset from the entry to the patched " -"location." +#: d/lang.opt:314 +msgid "List all hidden GC allocations." msgstr "" -#: config/s390/s390.opt:293 -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." +#: d/lang.opt:318 +msgid "List all variables going into thread local storage." msgstr "" -#: config/s390/s390.opt:298 -msgid "Generate __mcount_loc section with all _mcount and __fentry__ calls." +#: d/lang.opt:322 +msgid "Compile in unittest code." msgstr "" -#: config/s390/s390.opt:302 config/i386/i386.opt:934 +#: d/lang.opt:326 msgid "" -"Generate mcount/__fentry__ calls as nops. To activate they need to be " -"patched in." +"-fversion=\tCompile in version code >= or identified by " +"." msgstr "" -#: config/riscv/riscv.opt:26 -msgid "-mbranch-cost=N\tSet the cost of branches to roughly N instructions." +#: d/lang.opt:350 +msgid "Do not link the standard D library in the compilation." msgstr "" -#: config/riscv/riscv.opt:30 -msgid "When generating -fpic code, allow the use of PLTs. Ignored for fno-pic." +#: d/lang.opt:358 +msgid "Link the standard D library statically in the compilation." msgstr "" -#: config/riscv/riscv.opt:34 -msgid "Specify integer and floating-point calling convention." +#: d/lang.opt:362 +msgid "Link the standard D library dynamically in the compilation." msgstr "" -#: config/riscv/riscv.opt:38 config/i386/i386.opt:416 -msgid "Attempt to keep stack aligned to this power of 2." +#: go/lang.opt:42 +msgid "-fgo-c-header=\tWrite Go struct definitions to file as C code." msgstr "" -#: config/riscv/riscv.opt:42 -msgid "Supported ABIs (for use with the -mabi= option):" +#: go/lang.opt:46 +msgid "Add explicit checks for division by zero." msgstr "" -#: config/riscv/riscv.opt:67 -msgid "Use hardware floating-point divide and square root instructions." +#: go/lang.opt:50 +msgid "Add explicit checks for division overflow in INT_MIN / -1." msgstr "" -#: config/riscv/riscv.opt:71 -msgid "Use hardware instructions for integer division." +#: go/lang.opt:54 +msgid "Apply special rules for compiling runtime package." msgstr "" -#: config/riscv/riscv.opt:75 -msgid "" -"-march=\tGenerate code for given RISC-V ISA (e.g. RV64IM). ISA strings must " -"be lower-case." +#: go/lang.opt:58 +msgid "-fgo-dump-\tDump Go frontend internal information." msgstr "" -#: config/riscv/riscv.opt:84 -msgid "" -"-msmall-data-limit=N\tPut global and static data smaller than bytes " -"into a special section (on some targets)." +#: go/lang.opt:62 +msgid "-fgo-optimize-\tTurn on optimization passes in the frontend." msgstr "" -#: config/riscv/riscv.opt:88 -msgid "Use smaller but slower prologue and epilogue code." +#: go/lang.opt:66 +msgid "-fgo-pkgpath=\tSet Go package path." msgstr "" -#: config/riscv/riscv.opt:92 config/aarch64/aarch64.opt:88 -msgid "Specify the code model." +#: go/lang.opt:70 +msgid "" +"-fgo-prefix=\tSet package-specific prefix for exported Go names." msgstr "" -#: config/riscv/riscv.opt:96 -msgid "Do not generate unaligned memory accesses." +#: go/lang.opt:74 +msgid "" +"-fgo-relative-import-path=\tTreat a relative import as relative to " +"path." msgstr "" -#: config/riscv/riscv.opt:100 config/i386/i386.opt:287 -#: config/tilegx/tilegx.opt:57 config/rs6000/aix64.opt:36 -#: config/rs6000/linux64.opt:32 -msgid "Known code models (for use with the -mcmodel= option):" +#: go/lang.opt:78 +msgid "Functions which return values must end with return statements." msgstr "" -#: config/riscv/riscv.opt:110 -msgid "Use %reloc() operators, rather than assembly macros, to load addresses." +#: go/lang.opt:82 +msgid "" +"Emit debugging information related to the escape analysis pass when run with " +"-fgo-optimize-allocs." msgstr "" -#: config/riscv/riscv.opt:114 -msgid "" -"Take advantage of linker relaxations to reduce the number of instructions " -"required to materialize symbol addresses." +#: go/lang.opt:86 +msgid "-fgo-debug-escape-hash=\tHash value to debug escape analysis." msgstr "" -#: config/riscv/riscv.opt:133 -msgid "Emit RISC-V ELF attribute." +#: config/vms/vms.opt:27 +msgid "Malloc data into P2 space." msgstr "" -#: config/darwin.opt:117 -msgid "Generate compile-time CFString objects." +#: config/vms/vms.opt:31 +msgid "Set name of main routine for the debugger." msgstr "" -#: config/darwin.opt:214 -msgid "Warn if constant CFString objects contain non-portable characters." +#: config/vms/vms.opt:35 +msgid "Use VMS exit codes instead of posix ones." msgstr "" -#: config/darwin.opt:219 -msgid "Generate AT&T-style stubs for Mach-O." +#: config/vms/vms.opt:39 +msgid "-mpointer-size=[no,32,short,64,long]\tSet the default pointer size." msgstr "" -#: config/darwin.opt:223 -msgid "Generate code suitable for executables (NOT shared libs)." +#: config/mcore/mcore.opt:23 +msgid "Generate code for the M*Core M210." msgstr "" -#: config/darwin.opt:227 -msgid "Generate code suitable for fast turn around debugging." +#: config/mcore/mcore.opt:27 +msgid "Generate code for the M*Core M340." msgstr "" -#: config/darwin.opt:235 -msgid "The earliest MacOS X version on which this program will run." +#: config/mcore/mcore.opt:31 +msgid "Force functions to be aligned to a 4 byte boundary." msgstr "" -#: config/darwin.opt:239 -msgid "Set sizeof(bool) to 1." +#: config/mcore/mcore.opt:35 config/moxie/moxie.opt:23 config/csky/csky.opt:44 +msgid "Generate big-endian code." msgstr "" -#: config/darwin.opt:243 -msgid "Generate code for darwin loadable kernel extensions." +#: config/mcore/mcore.opt:39 +msgid "Emit call graph information." msgstr "" -#: config/darwin.opt:247 -msgid "Generate code for the kernel or loadable kernel extensions." +#: config/mcore/mcore.opt:43 +msgid "Use the divide instruction." msgstr "" -#: config/darwin.opt:251 -msgid "" -"-iframework \tAdd to the end of the system framework include path." +#: config/mcore/mcore.opt:47 +msgid "Inline constants if it can be done in 2 insns or less." msgstr "" -#: config/darwin.opt:401 -msgid "The version of ld64 in use for this toolchain." +#: config/mcore/mcore.opt:51 config/moxie/moxie.opt:27 config/csky/csky.opt:51 +msgid "Generate little-endian code." msgstr "" -#: config/sh/superh.opt:6 -msgid "Board name [and memory region]." +#: config/mcore/mcore.opt:56 config/fr30/fr30.opt:27 +msgid "" +"Assume that run-time support has been provided, so omit -lsim from the " +"linker command line." msgstr "" -#: config/sh/superh.opt:10 -msgid "Runtime name." +#: config/mcore/mcore.opt:60 +msgid "Use arbitrary sized immediates in bit operations." msgstr "" -#: config/sh/sh.opt:42 -msgid "Generate SH1 code." +#: config/mcore/mcore.opt:64 +msgid "Prefer word accesses over byte accesses." msgstr "" -#: config/sh/sh.opt:46 -msgid "Generate SH2 code." +#: config/mcore/mcore.opt:71 +msgid "Set the maximum amount for a single stack increment operation." msgstr "" -#: config/sh/sh.opt:50 -msgid "Generate default double-precision SH2a-FPU code." +#: config/mcore/mcore.opt:75 +msgid "Always treat bitfields as int-sized." msgstr "" -#: config/sh/sh.opt:54 -msgid "Generate SH2a FPU-less code." +#: config/linux-android.opt:23 +msgid "Generate code for the Android platform." msgstr "" -#: config/sh/sh.opt:58 -msgid "Generate default single-precision SH2a-FPU code." +#: config/mmix/mmix.opt:24 +msgid "For intrinsics library: pass all parameters in registers." msgstr "" -#: config/sh/sh.opt:62 -msgid "Generate only single-precision SH2a-FPU code." +#: config/mmix/mmix.opt:28 +msgid "Use register stack for parameters and return value." msgstr "" -#: config/sh/sh.opt:66 -msgid "Generate SH2e code." +#: config/mmix/mmix.opt:32 +msgid "Use call-clobbered registers for parameters and return value." msgstr "" -#: config/sh/sh.opt:70 -msgid "Generate SH3 code." +#: config/mmix/mmix.opt:37 +msgid "Use epsilon-respecting floating point compare instructions." msgstr "" -#: config/sh/sh.opt:74 -msgid "Generate SH3e code." +#: config/mmix/mmix.opt:41 +msgid "Use zero-extending memory loads, not sign-extending ones." msgstr "" -#: config/sh/sh.opt:78 -msgid "Generate SH4 code." +#: config/mmix/mmix.opt:45 +msgid "" +"Generate divide results with reminder having the same sign as the divisor " +"(not the dividend)." msgstr "" -#: config/sh/sh.opt:82 -msgid "Generate SH4-100 code." +#: config/mmix/mmix.opt:49 +msgid "Prepend global symbols with \":\" (for use with PREFIX)." msgstr "" -#: config/sh/sh.opt:86 -msgid "Generate SH4-200 code." +#: config/mmix/mmix.opt:53 +msgid "Do not provide a default start-address 0x100 of the program." msgstr "" -#: config/sh/sh.opt:92 -msgid "Generate SH4-300 code." +#: config/mmix/mmix.opt:57 +msgid "Link to emit program in ELF format (rather than mmo)." msgstr "" -#: config/sh/sh.opt:96 -msgid "Generate SH4 FPU-less code." +#: config/mmix/mmix.opt:61 +msgid "Use P-mnemonics for branches statically predicted as taken." msgstr "" -#: config/sh/sh.opt:100 -msgid "Generate SH4-100 FPU-less code." +#: config/mmix/mmix.opt:65 +msgid "Don't use P-mnemonics for branches." msgstr "" -#: config/sh/sh.opt:104 -msgid "Generate SH4-200 FPU-less code." +#: config/mmix/mmix.opt:79 +msgid "Use addresses that allocate global registers." msgstr "" -#: config/sh/sh.opt:108 -msgid "Generate SH4-300 FPU-less code." +#: config/mmix/mmix.opt:83 +msgid "Do not use addresses that allocate global registers." msgstr "" -#: config/sh/sh.opt:112 -msgid "Generate code for SH4 340 series (MMU/FPU-less)." +#: config/mmix/mmix.opt:87 +msgid "Generate a single exit point for each function." msgstr "" -#: config/sh/sh.opt:117 -msgid "Generate code for SH4 400 series (MMU/FPU-less)." +#: config/mmix/mmix.opt:91 +msgid "Do not generate a single exit point for each function." msgstr "" -#: config/sh/sh.opt:122 -msgid "Generate code for SH4 500 series (FPU-less)." +#: config/mmix/mmix.opt:95 +msgid "Set start-address of the program." msgstr "" -#: config/sh/sh.opt:127 -msgid "Generate default single-precision SH4 code." +#: config/mmix/mmix.opt:99 +msgid "Set start-address of data." msgstr "" -#: config/sh/sh.opt:131 -msgid "Generate default single-precision SH4-100 code." +#: config/darwin.opt:117 +msgid "Generate compile-time CFString objects." msgstr "" -#: config/sh/sh.opt:135 -msgid "Generate default single-precision SH4-200 code." +#: config/darwin.opt:214 +msgid "Warn if constant CFString objects contain non-portable characters." msgstr "" -#: config/sh/sh.opt:139 -msgid "Generate default single-precision SH4-300 code." +#: config/darwin.opt:219 +msgid "Generate AT&T-style stubs for Mach-O." msgstr "" -#: config/sh/sh.opt:143 -msgid "Generate only single-precision SH4 code." +#: config/darwin.opt:223 +msgid "Generate code suitable for executables (NOT shared libs)." msgstr "" -#: config/sh/sh.opt:147 -msgid "Generate only single-precision SH4-100 code." +#: config/darwin.opt:227 +msgid "Generate code suitable for fast turn around debugging." msgstr "" -#: config/sh/sh.opt:151 -msgid "Generate only single-precision SH4-200 code." +#: config/darwin.opt:235 +msgid "The earliest MacOS X version on which this program will run." msgstr "" -#: config/sh/sh.opt:155 -msgid "Generate only single-precision SH4-300 code." +#: config/darwin.opt:239 +msgid "Set sizeof(bool) to 1." msgstr "" -#: config/sh/sh.opt:159 -msgid "Generate SH4a code." +#: config/darwin.opt:243 +msgid "Generate code for darwin loadable kernel extensions." msgstr "" -#: config/sh/sh.opt:163 -msgid "Generate SH4a FPU-less code." +#: config/darwin.opt:247 +msgid "Generate code for the kernel or loadable kernel extensions." msgstr "" -#: config/sh/sh.opt:167 -msgid "Generate default single-precision SH4a code." +#: config/darwin.opt:251 +msgid "" +"-iframework \tAdd to the end of the system framework include path." msgstr "" -#: config/sh/sh.opt:171 -msgid "Generate only single-precision SH4a code." +#: config/darwin.opt:401 +msgid "The version of ld64 in use for this toolchain." msgstr "" -#: config/sh/sh.opt:175 -msgid "Generate SH4al-dsp code." +#: config/bfin/bfin.opt:40 config/msp430/msp430.opt:3 config/c6x/c6x.opt:38 +msgid "Use simulator runtime." msgstr "" -#: config/sh/sh.opt:179 config/i386/i386.opt:216 -msgid "Reserve space for outgoing arguments in the function prologue." +#: config/bfin/bfin.opt:44 config/arm/arm.opt:111 +msgid "Specify the name of the target CPU." msgstr "" -#: config/sh/sh.opt:183 -msgid "Generate code in big endian mode." +#: config/bfin/bfin.opt:48 +msgid "Omit frame pointer for leaf functions." msgstr "" -#: config/sh/sh.opt:187 -msgid "Generate 32-bit offsets in switch tables." +#: config/bfin/bfin.opt:52 +msgid "Program is entirely located in low 64k of memory." msgstr "" -#: config/sh/sh.opt:191 -msgid "Generate bit instructions." +#: config/bfin/bfin.opt:56 +msgid "" +"Work around a hardware anomaly by adding a number of NOPs before a CSYNC or " +"SSYNC instruction." msgstr "" -#: config/sh/sh.opt:199 -msgid "Assume that zero displacement conditional branches are fast." +#: config/bfin/bfin.opt:61 +msgid "Avoid speculative loads to work around a hardware anomaly." msgstr "" -#: config/sh/sh.opt:203 -msgid "Force the usage of delay slots for conditional branches." +#: config/bfin/bfin.opt:65 +msgid "Enabled ID based shared library." msgstr "" -#: config/sh/sh.opt:207 -msgid "Align doubles at 64-bit boundaries." +#: config/bfin/bfin.opt:69 +msgid "" +"Generate code that won't be linked against any other ID shared libraries, " +"but may be used as a shared library." msgstr "" -#: config/sh/sh.opt:211 -msgid "Division strategy, one of: call-div1, call-fp, call-table." +#: config/bfin/bfin.opt:74 config/m68k/m68k.opt:175 +msgid "ID of shared library to build." msgstr "" -#: config/sh/sh.opt:215 -msgid "Specify name for 32 bit signed division function." +#: config/bfin/bfin.opt:78 config/m68k/m68k.opt:171 +msgid "Enable separate data segment." msgstr "" -#: config/sh/sh.opt:219 -msgid "Generate ELF FDPIC code." +#: config/bfin/bfin.opt:82 config/c6x/c6x.opt:63 +msgid "Avoid generating pc-relative calls; use indirection." msgstr "" -#: config/sh/sh.opt:223 -msgid "" -"Enable the use of 64-bit floating point registers in fmov instructions. See " -"-mdalign if 64-bit alignment is required." +#: config/bfin/bfin.opt:86 +msgid "Link with the fast floating-point library." msgstr "" -#: config/sh/sh.opt:231 config/sh/sh.opt:269 -msgid "Follow Renesas (formerly Hitachi) / SuperH calling conventions." +#: config/bfin/bfin.opt:90 config/frv/frv.opt:130 +msgid "Enable Function Descriptor PIC mode." msgstr "" -#: config/sh/sh.opt:235 -msgid "Increase the IEEE compliance for floating-point comparisons." +#: config/bfin/bfin.opt:94 config/frv/frv.opt:162 +msgid "Enable inlining of PLT in function calls." msgstr "" -#: config/sh/sh.opt:239 -msgid "" -"Inline code to invalidate instruction cache entries after setting up nested " -"function trampolines." +#: config/bfin/bfin.opt:98 +msgid "Do stack checking using bounds in L1 scratch memory." msgstr "" -#: config/sh/sh.opt:247 -msgid "Generate code in little endian mode." +#: config/bfin/bfin.opt:102 +msgid "Enable multicore support." msgstr "" -#: config/sh/sh.opt:251 -msgid "Mark MAC register as call-clobbered." +#: config/bfin/bfin.opt:106 +msgid "Build for Core A." msgstr "" -#: config/sh/sh.opt:257 -msgid "Make structs a multiple of 4 bytes (warning: ABI altered)." +#: config/bfin/bfin.opt:110 +msgid "Build for Core B." msgstr "" -#: config/sh/sh.opt:261 -msgid "Emit function-calls using global offset table when generating PIC." +#: config/bfin/bfin.opt:114 +msgid "Build for SDRAM." msgstr "" -#: config/sh/sh.opt:265 -msgid "Shorten address references during linking." +#: config/bfin/bfin.opt:118 +msgid "Assume ICPLBs are enabled at runtime." msgstr "" -#: config/sh/sh.opt:273 -msgid "Specify the model for atomic operations." +#: config/m68k/m68k-tables.opt:25 +msgid "Known M68K CPUs (for use with the -mcpu= option):" msgstr "" -#: config/sh/sh.opt:277 -msgid "Use tas.b instruction for __atomic_test_and_set." +#: config/m68k/m68k-tables.opt:365 +msgid "Known M68K microarchitectures (for use with the -mtune= option):" msgstr "" -#: config/sh/sh.opt:281 -msgid "Cost to assume for a multiply insn." +#: config/m68k/m68k-tables.opt:411 +msgid "Known M68K ISAs (for use with the -march= option):" msgstr "" -#: config/sh/sh.opt:285 -msgid "" -"Don't generate privileged-mode only code; implies -mno-inline-ic_invalidate " -"if the inline code would not work in user mode." +#: config/m68k/ieee.opt:24 config/i386/i386.opt:368 +msgid "Use IEEE math for fp comparisons." msgstr "" -#: config/sh/sh.opt:291 -msgid "Pretend a branch-around-a-move is a conditional move." +#: config/m68k/m68k.opt:30 +msgid "Generate code for a 520X." msgstr "" -#: config/sh/sh.opt:295 -msgid "Enable the use of the fsca instruction." +#: config/m68k/m68k.opt:34 +msgid "Generate code for a 5206e." msgstr "" -#: config/sh/sh.opt:299 -msgid "Enable the use of the fsrra instruction." +#: config/m68k/m68k.opt:38 +msgid "Generate code for a 528x." msgstr "" -#: config/sh/sh.opt:303 -msgid "Use LRA instead of reload (transitional)." +#: config/m68k/m68k.opt:42 +msgid "Generate code for a 5307." msgstr "" -#: config/i386/i386.opt:192 -msgid "sizeof(long double) is 16." +#: config/m68k/m68k.opt:46 +msgid "Generate code for a 5407." msgstr "" -#: config/i386/i386.opt:196 config/i386/i386.opt:364 -msgid "Use hardware fp." +#: config/m68k/m68k.opt:50 config/m68k/m68k.opt:111 +msgid "Generate code for a 68000." msgstr "" -#: config/i386/i386.opt:200 -msgid "sizeof(long double) is 12." +#: config/m68k/m68k.opt:54 +msgid "Generate code for a 68010." msgstr "" -#: config/i386/i386.opt:204 -msgid "Use 80-bit long double." +#: config/m68k/m68k.opt:58 config/m68k/m68k.opt:115 +msgid "Generate code for a 68020." msgstr "" -#: config/i386/i386.opt:220 -msgid "Align some doubles on dword boundary." +#: config/m68k/m68k.opt:62 +msgid "Generate code for a 68040, without any new instructions." msgstr "" -#: config/i386/i386.opt:224 -msgid "Function starts are aligned to this power of 2." +#: config/m68k/m68k.opt:66 +msgid "Generate code for a 68060, without any new instructions." msgstr "" -#: config/i386/i386.opt:228 -msgid "Jump targets are aligned to this power of 2." +#: config/m68k/m68k.opt:70 +msgid "Generate code for a 68030." msgstr "" -#: config/i386/i386.opt:232 -msgid "Loop code aligned to this power of 2." +#: config/m68k/m68k.opt:74 +msgid "Generate code for a 68040." msgstr "" -#: config/i386/i386.opt:236 -msgid "Align destination of the string operations." +#: config/m68k/m68k.opt:78 +msgid "Generate code for a 68060." msgstr "" -#: config/i386/i386.opt:240 -msgid "Use the given data alignment." +#: config/m68k/m68k.opt:82 +msgid "Generate code for a 68302." msgstr "" -#: config/i386/i386.opt:244 -msgid "Known data alignment choices (for use with the -malign-data= option):" +#: config/m68k/m68k.opt:86 +msgid "Generate code for a 68332." msgstr "" -#: config/i386/i386.opt:261 -msgid "Use given assembler dialect." +#: config/m68k/m68k.opt:91 +msgid "Generate code for a 68851." msgstr "" -#: config/i386/i386.opt:265 -msgid "Known assembler dialects (for use with the -masm= option):" +#: config/m68k/m68k.opt:95 +msgid "Generate code that uses 68881 floating-point instructions." msgstr "" -#: config/i386/i386.opt:275 -msgid "Branches are this expensive (arbitrary units)." +#: config/m68k/m68k.opt:99 +msgid "Align variables on a 32-bit boundary." msgstr "" -#: config/i386/i386.opt:279 -msgid "" -"-mlarge-data-threshold=\tData greater than given threshold will go " -"into .ldata section in x86-64 medium model." +#: config/m68k/m68k.opt:103 config/arm/arm.opt:86 config/nios2/nios2.opt:570 +#: config/nds32/nds32.opt:171 config/c6x/c6x.opt:67 +msgid "Specify the name of the target architecture." msgstr "" -#: config/i386/i386.opt:283 -msgid "Use given x86-64 code model." +#: config/m68k/m68k.opt:107 +msgid "Use the bit-field instructions." msgstr "" -#: config/i386/i386.opt:306 -msgid "Use given address mode." +#: config/m68k/m68k.opt:119 +msgid "Generate code for a ColdFire v4e." msgstr "" -#: config/i386/i386.opt:310 -msgid "Known address mode (for use with the -maddress-mode= option):" +#: config/m68k/m68k.opt:123 +msgid "Specify the target CPU." msgstr "" -#: config/i386/i386.opt:323 -msgid "Generate sin, cos, sqrt for FPU." +#: config/m68k/m68k.opt:127 +msgid "Generate code for a cpu32." msgstr "" -#: config/i386/i386.opt:327 -msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack." +#: config/m68k/m68k.opt:131 +msgid "Use hardware division instructions on ColdFire." msgstr "" -#: config/i386/i386.opt:331 -msgid "Return values of functions in FPU registers." +#: config/m68k/m68k.opt:135 +msgid "Generate code for a Fido A." msgstr "" -#: config/i386/i386.opt:335 -msgid "Generate floating point mathematics using given instruction set." +#: config/m68k/m68k.opt:139 +msgid "Generate code which uses hardware floating point instructions." msgstr "" -#: config/i386/i386.opt:339 -msgid "Valid arguments to -mfpmath=:" +#: config/m68k/m68k.opt:143 +msgid "Enable ID based shared library." msgstr "" -#: config/i386/i386.opt:372 -msgid "Inline all known string operations." +#: config/m68k/m68k.opt:147 +msgid "Use 32-bit offsets in jump tables rather than 16-bit offsets." msgstr "" -#: config/i386/i386.opt:376 -msgid "" -"Inline memset/memcpy string operations, but perform inline version only for " -"small blocks." +#: config/m68k/m68k.opt:151 +msgid "Do not use the bit-field instructions." msgstr "" -#: config/i386/i386.opt:384 -msgid "Use native (MS) bitfield layout." +#: config/m68k/m68k.opt:155 +msgid "Use normal calling convention." msgstr "" -#: config/i386/i386.opt:400 config/aarch64/aarch64.opt:96 -msgid "Omit the frame pointer in leaf functions." +#: config/m68k/m68k.opt:159 +msgid "Consider type 'int' to be 32 bits wide." msgstr "" -#: config/i386/i386.opt:404 -msgid "Set 80387 floating-point precision to 32-bit." +#: config/m68k/m68k.opt:163 +msgid "Generate pc-relative code." msgstr "" -#: config/i386/i386.opt:408 -msgid "Set 80387 floating-point precision to 64-bit." +#: config/m68k/m68k.opt:167 +msgid "Use different calling convention using 'rtd'." msgstr "" -#: config/i386/i386.opt:412 -msgid "Set 80387 floating-point precision to 80-bit." +#: config/m68k/m68k.opt:179 +msgid "Consider type 'int' to be 16 bits wide." msgstr "" -#: config/i386/i386.opt:420 -msgid "Assume incoming stack aligned to this power of 2." +#: config/m68k/m68k.opt:183 +msgid "Generate code with library calls for floating point." msgstr "" -#: config/i386/i386.opt:424 -msgid "Use push instructions to save outgoing arguments." +#: config/m68k/m68k.opt:187 +msgid "Do not use unaligned memory references." msgstr "" -#: config/i386/i386.opt:428 -msgid "Use red-zone in the x86-64 code." +#: config/m68k/m68k.opt:191 +msgid "Tune for the specified target CPU or architecture." msgstr "" -#: config/i386/i386.opt:432 -msgid "Number of registers used to pass integer arguments." +#: config/m68k/m68k.opt:195 +msgid "Support more than 8192 GOT entries on ColdFire." msgstr "" -#: config/i386/i386.opt:436 -msgid "Alternate calling convention." +#: config/m68k/m68k.opt:199 +msgid "Support TLS segment larger than 64K." msgstr "" -#: config/i386/i386.opt:444 -msgid "Use SSE register passing conventions for SF and DF mode." +#: config/riscv/riscv.opt:26 +msgid "-mbranch-cost=N\tSet the cost of branches to roughly N instructions." msgstr "" -#: config/i386/i386.opt:448 -msgid "Realign stack in prologue." +#: config/riscv/riscv.opt:30 +msgid "When generating -fpic code, allow the use of PLTs. Ignored for fno-pic." msgstr "" -#: config/i386/i386.opt:452 -msgid "Enable stack probing." +#: config/riscv/riscv.opt:34 +msgid "Specify integer and floating-point calling convention." msgstr "" -#: config/i386/i386.opt:456 -msgid "Specify memcpy expansion strategy when expected size is known." +#: config/riscv/riscv.opt:38 config/i386/i386.opt:416 +msgid "Attempt to keep stack aligned to this power of 2." msgstr "" -#: config/i386/i386.opt:460 -msgid "Specify memset expansion strategy when expected size is known." +#: config/riscv/riscv.opt:42 +msgid "Supported ABIs (for use with the -mabi= option):" msgstr "" -#: config/i386/i386.opt:464 -msgid "Chose strategy to generate stringop using." +#: config/riscv/riscv.opt:67 +msgid "Use hardware floating-point divide and square root instructions." msgstr "" -#: config/i386/i386.opt:468 -msgid "Valid arguments to -mstringop-strategy=:" +#: config/riscv/riscv.opt:71 +msgid "Use hardware instructions for integer division." msgstr "" -#: config/i386/i386.opt:496 -msgid "Use given thread-local storage dialect." +#: config/riscv/riscv.opt:75 +msgid "" +"-march=\tGenerate code for given RISC-V ISA (e.g. RV64IM). ISA strings must " +"be lower-case." msgstr "" -#: config/i386/i386.opt:500 -msgid "Known TLS dialects (for use with the -mtls-dialect= option):" +#: config/riscv/riscv.opt:80 config/mips/mips.opt:405 +msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR." msgstr "" -#: config/i386/i386.opt:510 -#, c-format -msgid "Use direct references against %gs when accessing tls data." +#: config/riscv/riscv.opt:84 +msgid "" +"-msmall-data-limit=N\tPut global and static data smaller than bytes " +"into a special section (on some targets)." msgstr "" -#: config/i386/i386.opt:518 -msgid "Fine grain control of tune features." +#: config/riscv/riscv.opt:88 +msgid "Use smaller but slower prologue and epilogue code." msgstr "" -#: config/i386/i386.opt:522 -msgid "Clear all tune features." +#: config/riscv/riscv.opt:92 config/aarch64/aarch64.opt:88 +msgid "Specify the code model." msgstr "" -#: config/i386/i386.opt:529 -msgid "Generate code that conforms to Intel MCU psABI." +#: config/riscv/riscv.opt:96 +msgid "Do not generate unaligned memory accesses." msgstr "" -#: config/i386/i386.opt:533 -msgid "Generate code that conforms to the given ABI." +#: config/riscv/riscv.opt:100 config/i386/i386.opt:287 +#: config/rs6000/aix64.opt:36 config/rs6000/linux64.opt:32 +#: config/tilegx/tilegx.opt:57 +msgid "Known code models (for use with the -mcmodel= option):" msgstr "" -#: config/i386/i386.opt:537 config/nds32/nds32.opt:51 -msgid "Known ABIs (for use with the -mabi= option):" +#: config/riscv/riscv.opt:110 +msgid "Use %reloc() operators, rather than assembly macros, to load addresses." msgstr "" -#: config/i386/i386.opt:547 +#: config/riscv/riscv.opt:114 msgid "" -"Use libgcc stubs to save and restore registers clobbered by 64-bit Microsoft " -"to System V ABI calls." +"Take advantage of linker relaxations to reduce the number of instructions " +"required to materialize symbol addresses." msgstr "" -#: config/i386/i386.opt:551 config/rs6000/rs6000.opt:200 -msgid "Vector library ABI to use." +#: config/riscv/riscv.opt:133 +msgid "Emit RISC-V ELF attribute." msgstr "" -#: config/i386/i386.opt:555 -msgid "" -"Known vectorization library ABIs (for use with the -mveclibabi= option):" +#: config/m32c/m32c.opt:23 +msgid "-msim\tUse simulator runtime." msgstr "" -#: config/i386/i386.opt:565 -msgid "Return 8-byte vectors in memory." +#: config/m32c/m32c.opt:27 +msgid "-mcpu=r8c\tCompile code for R8C variants." msgstr "" -#: config/i386/i386.opt:569 -msgid "Generate reciprocals instead of divss and sqrtss." +#: config/m32c/m32c.opt:31 +msgid "-mcpu=m16c\tCompile code for M16C variants." msgstr "" -#: config/i386/i386.opt:573 -msgid "Control generation of reciprocal estimates." +#: config/m32c/m32c.opt:35 +msgid "-mcpu=m32cm\tCompile code for M32CM variants." msgstr "" -#: config/i386/i386.opt:577 -msgid "Generate cld instruction in the function prologue." +#: config/m32c/m32c.opt:39 +msgid "-mcpu=m32c\tCompile code for M32C variants." msgstr "" -#: config/i386/i386.opt:581 -msgid "" -"Generate vzeroupper instruction before a transfer of control flow out of the " -"function." +#: config/m32c/m32c.opt:43 +msgid "-memregs=\tNumber of memreg bytes (default: 16, range: 0..16)." msgstr "" -#: config/i386/i386.opt:586 -msgid "" -"Disable Scalar to Vector optimization pass transforming 64-bit integer " -"computations into a vector ones." +#: config/msp430/msp430.opt:7 +msgid "Force assembly output to always use hex constants." msgstr "" -#: config/i386/i386.opt:591 -msgid "" -"Do dispatch scheduling if processor is bdver1, bdver2, bdver3, bdver4 or " -"znver1 and Haifa scheduling is selected." +#: config/msp430/msp430.opt:11 +msgid "Specify the MCU to build for." msgstr "" -#: config/i386/i386.opt:596 +#: config/msp430/msp430.opt:15 msgid "" -"Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-" -"vectorizer." +"Warn if an MCU name is unrecognized or conflicts with other options " +"(default: on)." msgstr "" -#: config/i386/i386.opt:600 -msgid "" -"Use given register vector width instructions instead of maximum register " -"width in the auto-vectorizer." +#: config/msp430/msp430.opt:19 +msgid "Specify the ISA to build for: msp430, msp430x, msp430xv2." msgstr "" -#: config/i386/i386.opt:604 -msgid "" -"Known preferred register vector length (to use with the -mprefer-vector-" -"width= option):" +#: config/msp430/msp430.opt:23 +msgid "Select large model - 20-bit addresses/pointers." msgstr "" -#: config/i386/i386.opt:622 -msgid "Generate 32bit i386 code." +#: config/msp430/msp430.opt:27 +msgid "Select small model - 16-bit addresses/pointers (default)." msgstr "" -#: config/i386/i386.opt:626 -msgid "Generate 64bit x86-64 code." +#: config/msp430/msp430.opt:31 +msgid "Optimize opcode sizes at link time." msgstr "" -#: config/i386/i386.opt:630 -msgid "Generate 32bit x86-64 code." +#: config/msp430/msp430.opt:38 +msgid "" +"Use a minimum runtime (no static initializers or ctors) for memory-" +"constrained devices." msgstr "" -#: config/i386/i386.opt:634 -msgid "Generate 16bit i386 code." +#: config/msp430/msp430.opt:45 +msgid "Specify the type of hardware multiply to support." msgstr "" -#: config/i386/i386.opt:638 -msgid "Support MMX built-in functions." +#: config/msp430/msp430.opt:67 +msgid "Specify whether functions should be placed into low or high memory." msgstr "" -#: config/i386/i386.opt:642 -msgid "Support 3DNow! built-in functions." +#: config/msp430/msp430.opt:71 +msgid "Specify whether variables should be placed into low or high memory." msgstr "" -#: config/i386/i386.opt:646 -msgid "Support Athlon 3Dnow! built-in functions." +#: config/msp430/msp430.opt:90 +msgid "" +"Passes on a request to the assembler to enable fixes for various silicon " +"errata." msgstr "" -#: config/i386/i386.opt:650 -msgid "Support MMX and SSE built-in functions and code generation." +#: config/msp430/msp430.opt:94 +msgid "" +"Passes on a request to the assembler to warn about various silicon errata." msgstr "" -#: config/i386/i386.opt:654 -msgid "Support MMX, SSE and SSE2 built-in functions and code generation." +#: config/aarch64/aarch64.opt:43 +msgid "The possible TLS dialects:" msgstr "" -#: config/i386/i386.opt:658 -msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation." +#: config/aarch64/aarch64.opt:55 +msgid "The code model option names for -mcmodel:" msgstr "" -#: config/i386/i386.opt:662 -msgid "" -"Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code " -"generation." +#: config/aarch64/aarch64.opt:68 config/arm/arm.opt:99 +#: config/microblaze/microblaze.opt:60 +msgid "Assume target CPU is configured as big endian." msgstr "" -#: config/i386/i386.opt:666 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code " -"generation." +#: config/aarch64/aarch64.opt:72 config/i386/i386.opt:1019 +msgid "Generate code which uses only the general registers." msgstr "" -#: config/i386/i386.opt:670 config/i386/i386.opt:674 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions " -"and code generation." +#: config/aarch64/aarch64.opt:76 +msgid "Workaround for ARM Cortex-A53 Erratum number 835769." msgstr "" -#: config/i386/i386.opt:678 -msgid "" -"Do not support SSE4.1 and SSE4.2 built-in functions and code generation." +#: config/aarch64/aarch64.opt:80 +msgid "Workaround for ARM Cortex-A53 Erratum number 843419." msgstr "" -#: config/i386/i386.opt:686 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in " -"functions and code generation." +#: config/aarch64/aarch64.opt:84 config/arm/arm.opt:164 +#: config/microblaze/microblaze.opt:64 +msgid "Assume target CPU is configured as little endian." msgstr "" -#: config/i386/i386.opt:690 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in " -"functions and code generation." +#: config/aarch64/aarch64.opt:92 +msgid "Don't assume that unaligned accesses are handled by the system." msgstr "" -#: config/i386/i386.opt:694 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"built-in functions and code generation." +#: config/aarch64/aarch64.opt:96 config/i386/i386.opt:400 +msgid "Omit the frame pointer in leaf functions." msgstr "" -#: config/i386/i386.opt:698 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512PF built-in functions and code generation." +#: config/aarch64/aarch64.opt:100 +msgid "Specify TLS dialect." msgstr "" -#: config/i386/i386.opt:702 +#: config/aarch64/aarch64.opt:104 msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512ER built-in functions and code generation." +"Specifies bit size of immediate TLS offsets. Valid values are 12, 24, 32, " +"48." msgstr "" -#: config/i386/i386.opt:706 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512CD built-in functions and code generation." +#: config/aarch64/aarch64.opt:123 +msgid "Use features of architecture ARCH." msgstr "" -#: config/i386/i386.opt:710 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512DQ built-in functions and code generation." +#: config/aarch64/aarch64.opt:127 +msgid "Use features of and optimize for CPU." +msgstr "" + +#: config/aarch64/aarch64.opt:131 +msgid "Optimize for CPU." +msgstr "" + +#: config/aarch64/aarch64.opt:135 +msgid "Generate code that conforms to the specified ABI." msgstr "" -#: config/i386/i386.opt:714 +#: config/aarch64/aarch64.opt:139 msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512BW built-in functions and code generation." +"-moverride=\tPower users only! Override CPU optimization parameters." msgstr "" -#: config/i386/i386.opt:718 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512VL built-in functions and code generation." +#: config/aarch64/aarch64.opt:143 +msgid "Known AArch64 ABIs (for use with the -mabi= option):" msgstr "" -#: config/i386/i386.opt:722 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512IFMA built-in functions and code generation." +#: config/aarch64/aarch64.opt:153 +msgid "PC relative literal loads." msgstr "" -#: config/i386/i386.opt:726 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " -"and AVX512VBMI built-in functions and code generation." +#: config/aarch64/aarch64.opt:157 +msgid "Use branch-protection features." msgstr "" -#: config/i386/i386.opt:730 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " -"AVX5124FMAPS built-in functions and code generation." +#: config/aarch64/aarch64.opt:161 +msgid "Select return address signing scope." msgstr "" -#: config/i386/i386.opt:734 +#: config/aarch64/aarch64.opt:165 msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " -"AVX5124VNNIW built-in functions and code generation." +"Supported AArch64 return address signing scope (for use with -msign-return-" +"address= option):" msgstr "" -#: config/i386/i386.opt:738 +#: config/aarch64/aarch64.opt:178 msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " -"AVX512VPOPCNTDQ built-in functions and code generation." +"Enable the reciprocal square root approximation. Enabling this reduces " +"precision of reciprocal square root results to about 16 bits for single " +"precision and to 32 bits for double precision." msgstr "" -#: config/i386/i386.opt:742 +#: config/aarch64/aarch64.opt:184 msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " -"AVX512VBMI2 built-in functions and code generation." +"Enable the square root approximation. Enabling this reduces precision of " +"square root results to about 16 bits for single precision and to 32 bits for " +"double precision. If enabled, it implies -mlow-precision-recip-sqrt." msgstr "" -#: config/i386/i386.opt:746 -msgid "Support AVX512VNNI built-in functions and code generation." +#: config/aarch64/aarch64.opt:191 +msgid "" +"Enable the division approximation. Enabling this reduces precision of " +"division results to about 16 bits for single precision and to 32 bits for " +"double precision." msgstr "" -#: config/i386/i386.opt:750 -msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " -"AVX512BITALG built-in functions and code generation." +#: config/aarch64/aarch64.opt:197 +msgid "The possible SVE vector lengths:" msgstr "" -#: config/i386/i386.opt:754 +#: config/aarch64/aarch64.opt:219 msgid "" -"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in " -"functions and code generation." +"-msve-vector-bits=\tSet the number of bits in an SVE vector register." msgstr "" -#: config/i386/i386.opt:758 -msgid "" -"Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code " -"generation." +#: config/aarch64/aarch64.opt:223 +msgid "Enables verbose cost model dumping in the debug dump files." msgstr "" -#: config/i386/i386.opt:762 -msgid "Support FMA4 built-in functions and code generation." +#: config/aarch64/aarch64.opt:227 +msgid "Generate code to track when the CPU might be speculating incorrectly." msgstr "" -#: config/i386/i386.opt:766 -msgid "Support XOP built-in functions and code generation." +#: config/aarch64/aarch64.opt:231 config/i386/i386.opt:983 +#: config/rs6000/rs6000.opt:542 +msgid "Use given stack-protector guard." msgstr "" -#: config/i386/i386.opt:770 -msgid "Support LWP built-in functions and code generation." +#: config/aarch64/aarch64.opt:235 config/rs6000/rs6000.opt:546 +msgid "Valid arguments to -mstack-protector-guard=:" msgstr "" -#: config/i386/i386.opt:774 +#: config/aarch64/aarch64.opt:245 msgid "" -"Support code generation of Advanced Bit Manipulation (ABM) instructions." +"Use the system register specified on the command line as the stack protector " +"guard register. This option is for use with fstack-protector-strong and not " +"for use in user-land code." msgstr "" -#: config/i386/i386.opt:778 -msgid "Support code generation of popcnt instruction." +#: config/aarch64/aarch64.opt:251 +msgid "" +"Use an immediate to offset from the stack protector guard register, sp_el0. " +"This option is for use with fstack-protector-strong and not for use in user-" +"land code." msgstr "" -#: config/i386/i386.opt:782 -msgid "Support PCONFIG built-in functions and code generation." +#: config/linux.opt:24 +msgid "Use Bionic C library." msgstr "" -#: config/i386/i386.opt:786 -msgid "Support WBNOINVD built-in functions and code generation." +#: config/linux.opt:28 +msgid "Use GNU C library." msgstr "" -#: config/i386/i386.opt:790 -msgid "Support PTWRITE built-in functions and code generation." +#: config/linux.opt:32 +msgid "Use uClibc C library." msgstr "" -#: config/i386/i386.opt:794 -msgid "Support SGX built-in functions and code generation." +#: config/linux.opt:36 +msgid "Use musl C library." msgstr "" -#: config/i386/i386.opt:798 -msgid "Support RDPID built-in functions and code generation." +#: config/ia64/ilp32.opt:3 +msgid "Generate ILP32 code." msgstr "" -#: config/i386/i386.opt:802 -msgid "Support GFNI built-in functions and code generation." +#: config/ia64/ilp32.opt:7 +msgid "Generate LP64 code." msgstr "" -#: config/i386/i386.opt:806 -msgid "Support VAES built-in functions and code generation." +#: config/ia64/ia64.opt:28 +msgid "Generate big endian code." msgstr "" -#: config/i386/i386.opt:810 -msgid "Support VPCLMULQDQ built-in functions and code generation." +#: config/ia64/ia64.opt:32 +msgid "Generate little endian code." msgstr "" -#: config/i386/i386.opt:814 -msgid "Support BMI built-in functions and code generation." +#: config/ia64/ia64.opt:36 +msgid "Generate code for GNU as." msgstr "" -#: config/i386/i386.opt:818 -msgid "Support BMI2 built-in functions and code generation." +#: config/ia64/ia64.opt:40 +msgid "Generate code for GNU ld." msgstr "" -#: config/i386/i386.opt:822 -msgid "Support LZCNT built-in function and code generation." +#: config/ia64/ia64.opt:44 +msgid "Emit stop bits before and after volatile extended asms." msgstr "" -#: config/i386/i386.opt:826 -msgid "Support Hardware Lock Elision prefixes." +#: config/ia64/ia64.opt:48 +msgid "Use in/loc/out register names." msgstr "" -#: config/i386/i386.opt:830 -msgid "Support RDSEED instruction." +#: config/ia64/ia64.opt:55 +msgid "Enable use of sdata/scommon/sbss." msgstr "" -#: config/i386/i386.opt:834 -msgid "Support PREFETCHW instruction." +#: config/ia64/ia64.opt:59 +msgid "Generate code without GP reg." msgstr "" -#: config/i386/i386.opt:838 -msgid "Support flag-preserving add-carry instructions." +#: config/ia64/ia64.opt:63 +msgid "gp is constant (but save/restore gp on indirect calls)." msgstr "" -#: config/i386/i386.opt:842 -msgid "Support CLFLUSHOPT instructions." +#: config/ia64/ia64.opt:67 +msgid "Generate self-relocatable code." msgstr "" -#: config/i386/i386.opt:846 -msgid "Support CLWB instruction." +#: config/ia64/ia64.opt:71 +msgid "Generate inline floating point division, optimize for latency." msgstr "" -#: config/i386/i386.opt:854 -msgid "Support FXSAVE and FXRSTOR instructions." +#: config/ia64/ia64.opt:75 +msgid "Generate inline floating point division, optimize for throughput." msgstr "" -#: config/i386/i386.opt:858 -msgid "Support XSAVE and XRSTOR instructions." +#: config/ia64/ia64.opt:82 +msgid "Generate inline integer division, optimize for latency." msgstr "" -#: config/i386/i386.opt:862 -msgid "Support XSAVEOPT instruction." +#: config/ia64/ia64.opt:86 +msgid "Generate inline integer division, optimize for throughput." msgstr "" -#: config/i386/i386.opt:866 -msgid "Support XSAVEC instructions." +#: config/ia64/ia64.opt:90 +msgid "Do not inline integer division." msgstr "" -#: config/i386/i386.opt:870 -msgid "Support XSAVES and XRSTORS instructions." +#: config/ia64/ia64.opt:94 +msgid "Generate inline square root, optimize for latency." msgstr "" -#: config/i386/i386.opt:874 -msgid "Support TBM built-in functions and code generation." +#: config/ia64/ia64.opt:98 +msgid "Generate inline square root, optimize for throughput." msgstr "" -#: config/i386/i386.opt:878 -msgid "Support code generation of cmpxchg16b instruction." +#: config/ia64/ia64.opt:102 +msgid "Do not inline square root." msgstr "" -#: config/i386/i386.opt:882 -msgid "Support code generation of sahf instruction in 64bit x86-64 code." +#: config/ia64/ia64.opt:106 +msgid "Enable DWARF line debug info via GNU as." msgstr "" -#: config/i386/i386.opt:886 -msgid "Support code generation of movbe instruction." +#: config/ia64/ia64.opt:110 +msgid "Enable earlier placing stop bits for better scheduling." msgstr "" -#: config/i386/i386.opt:890 -msgid "Support code generation of crc32 instruction." +#: config/ia64/ia64.opt:114 config/spu/spu.opt:72 config/pa/pa.opt:62 +#: config/sh/sh.opt:227 +msgid "Specify range of registers to make fixed." msgstr "" -#: config/i386/i386.opt:894 -msgid "Support AES built-in functions and code generation." +#: config/ia64/ia64.opt:118 config/alpha/alpha.opt:130 +msgid "Specify bit size of immediate TLS offsets." msgstr "" -#: config/i386/i386.opt:898 -msgid "Support SHA1 and SHA256 built-in functions and code generation." +#: config/ia64/ia64.opt:122 config/spu/spu.opt:84 config/i386/i386.opt:514 +#: config/s390/s390.opt:194 config/sparc/sparc.opt:146 +#: config/visium/visium.opt:49 +msgid "Schedule code for given CPU." msgstr "" -#: config/i386/i386.opt:902 -msgid "Support PCLMUL built-in functions and code generation." +#: config/ia64/ia64.opt:126 +msgid "Known Itanium CPUs (for use with the -mtune= option):" msgstr "" -#: config/i386/i386.opt:906 -msgid "Encode SSE instructions with VEX prefix." +#: config/ia64/ia64.opt:136 +msgid "Use data speculation before reload." msgstr "" -#: config/i386/i386.opt:910 -msgid "Support FSGSBASE built-in functions and code generation." +#: config/ia64/ia64.opt:140 +msgid "Use data speculation after reload." msgstr "" -#: config/i386/i386.opt:914 -msgid "Support RDRND built-in functions and code generation." +#: config/ia64/ia64.opt:144 +msgid "Use control speculation." msgstr "" -#: config/i386/i386.opt:918 -msgid "Support F16C built-in functions and code generation." +#: config/ia64/ia64.opt:148 +msgid "Use in block data speculation before reload." msgstr "" -#: config/i386/i386.opt:922 -msgid "Support PREFETCHWT1 built-in functions and code generation." +#: config/ia64/ia64.opt:152 +msgid "Use in block data speculation after reload." msgstr "" -#: config/i386/i386.opt:926 -msgid "Emit profiling counter call at function entry before prologue." +#: config/ia64/ia64.opt:156 +msgid "Use in block control speculation." msgstr "" -#: config/i386/i386.opt:930 -msgid "Generate __mcount_loc section with all mcount or __fentry__ calls." +#: config/ia64/ia64.opt:160 +msgid "Use simple data speculation check." msgstr "" -#: config/i386/i386.opt:939 -msgid "Set name of __fentry__ symbol called at function entry." +#: config/ia64/ia64.opt:164 +msgid "Use simple data speculation check for control speculation." msgstr "" -#: config/i386/i386.opt:943 -msgid "Set name of section to record mrecord-mcount calls." +#: config/ia64/ia64.opt:174 +msgid "" +"Count speculative dependencies while calculating priority of instructions." msgstr "" -#: config/i386/i386.opt:947 -msgid "Skip setting up RAX register when passing variable arguments." +#: config/ia64/ia64.opt:178 +msgid "Place a stop bit after every cycle when scheduling." msgstr "" -#: config/i386/i386.opt:951 +#: config/ia64/ia64.opt:182 msgid "" -"Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-" -"time check." +"Assume that floating-point stores and loads are not likely to cause conflict " +"when placed into one instruction group." msgstr "" -#: config/i386/i386.opt:955 -msgid "Split 32-byte AVX unaligned load." +#: config/ia64/ia64.opt:186 +msgid "" +"Soft limit on number of memory insns per instruction group, giving lower " +"priority to subsequent memory insns attempting to schedule in the same insn " +"group. Frequently useful to prevent cache bank conflicts. Default value is " +"1." msgstr "" -#: config/i386/i386.opt:959 -msgid "Split 32-byte AVX unaligned store." +#: config/ia64/ia64.opt:190 +msgid "" +"Disallow more than 'msched-max-memory-insns' in instruction group. " +"Otherwise, limit is 'soft' (prefer non-memory operations when limit is " +"reached)." msgstr "" -#: config/i386/i386.opt:963 -msgid "Support RTM built-in functions and code generation." +#: config/ia64/ia64.opt:194 +msgid "Don't generate checks for control speculation in selective scheduling." msgstr "" -#: config/i386/i386.opt:967 c-family/c.opt:425 c-family/c.opt:1310 -#: c-family/c.opt:1314 c-family/c.opt:1318 c-family/c.opt:1322 -#: c-family/c.opt:1326 c-family/c.opt:1330 c-family/c.opt:1334 -#: c-family/c.opt:1341 c-family/c.opt:1345 c-family/c.opt:1349 -#: c-family/c.opt:1353 c-family/c.opt:1357 c-family/c.opt:1361 -#: c-family/c.opt:1365 c-family/c.opt:1369 c-family/c.opt:1373 -#: c-family/c.opt:1377 c-family/c.opt:1381 c-family/c.opt:1385 -#: c-family/c.opt:1389 -msgid "Deprecated in GCC 9. This switch has no effect." +#: config/spu/spu.opt:20 +msgid "Emit warnings when run-time relocations are generated." msgstr "" -#: config/i386/i386.opt:971 -msgid "Support MWAITX and MONITORX built-in functions and code generation." +#: config/spu/spu.opt:24 +msgid "Emit errors when run-time relocations are generated." msgstr "" -#: config/i386/i386.opt:975 -msgid "Support CLZERO built-in functions and code generation." +#: config/spu/spu.opt:28 +msgid "Specify cost of branches (Default 20)." msgstr "" -#: config/i386/i386.opt:979 -msgid "Support PKU built-in functions and code generation." +#: config/spu/spu.opt:32 +msgid "Make sure loads and stores are not moved past DMA instructions." msgstr "" -#: config/i386/i386.opt:983 config/aarch64/aarch64.opt:231 -#: config/rs6000/rs6000.opt:542 -msgid "Use given stack-protector guard." +#: config/spu/spu.opt:36 +msgid "volatile must be specified on any memory that is effected by DMA." msgstr "" -#: config/i386/i386.opt:987 +#: config/spu/spu.opt:40 config/spu/spu.opt:44 msgid "" -"Known stack protector guard (for use with the -mstack-protector-guard= " -"option):" -msgstr "" - -#: config/i386/i386.opt:997 config/rs6000/rs6000.opt:556 -msgid "Use the given base register for addressing the stack-protector guard." +"Insert nops when it might improve performance by allowing dual issue " +"(default)." msgstr "" -#: config/i386/i386.opt:1004 config/rs6000/rs6000.opt:563 -msgid "Use the given offset for addressing the stack-protector guard." +#: config/spu/spu.opt:48 +msgid "Use standard main function as entry for startup." msgstr "" -#: config/i386/i386.opt:1011 -msgid "Use the given symbol for addressing the stack-protector guard." +#: config/spu/spu.opt:52 +msgid "Generate branch hints for branches." msgstr "" -#: config/i386/i386.opt:1019 config/aarch64/aarch64.opt:72 -msgid "Generate code which uses only the general registers." +#: config/spu/spu.opt:56 +msgid "Maximum number of nops to insert for a hint (Default 2)." msgstr "" -#: config/i386/i386.opt:1023 +#: config/spu/spu.opt:60 msgid "" -"Enable shadow stack built-in functions from Control-flow Enforcement " -"Technology (CET)." +"Approximate maximum number of instructions to allow between a hint and its " +"branch [125]." msgstr "" -#: config/i386/i386.opt:1028 -msgid "" -"Turn on CET instrumentation for switch statements that use a jump table and " -"an indirect jump." +#: config/spu/spu.opt:64 +msgid "Generate code for 18 bit addressing." msgstr "" -#: config/i386/i386.opt:1033 -msgid "" -"Insert ENDBR instruction at function entry only via cf_check attribute for " -"CET instrumentation." +#: config/spu/spu.opt:68 +msgid "Generate code for 32 bit addressing." msgstr "" -#: config/i386/i386.opt:1038 -msgid "Make all function calls indirect." +#: config/spu/spu.opt:76 +msgid "" +"Insert hbrp instructions after hinted branch targets to avoid the SPU hang " +"issue." msgstr "" -#: config/i386/i386.opt:1042 -msgid "Convert indirect call and jump to call and return thunks." +#: config/spu/spu.opt:80 config/i386/i386.opt:257 config/s390/s390.opt:56 +msgid "Generate code for given CPU." msgstr "" -#: config/i386/i386.opt:1046 -msgid "Convert function return to call and return thunk." +#: config/spu/spu.opt:88 +msgid "Access variables in 32-bit PPU objects (default)." msgstr "" -#: config/i386/i386.opt:1066 -msgid "Force indirect call and jump via register." +#: config/spu/spu.opt:92 +msgid "Access variables in 64-bit PPU objects." msgstr "" -#: config/i386/i386.opt:1070 -msgid "Support MOVDIRI built-in functions and code generation." +#: config/spu/spu.opt:96 +msgid "Allow conversions between __ea and generic pointers (default)." msgstr "" -#: config/i386/i386.opt:1074 -msgid "Support MOVDIR64B built-in functions and code generation." +#: config/spu/spu.opt:100 +msgid "Size (in KB) of software data cache." msgstr "" -#: config/i386/i386.opt:1078 -msgid "Support WAITPKG built-in functions and code generation." +#: config/spu/spu.opt:104 +msgid "Atomically write back software data cache lines (default)." msgstr "" -#: config/i386/i386.opt:1082 -msgid "Support CLDEMOTE built-in functions and code generation." +#: config/epiphany/epiphany.opt:24 +msgid "Don't use any of r32..r63." msgstr "" -#: config/i386/i386.opt:1086 -msgid "Instrument function exit in instrumented functions with __fentry__." +#: config/epiphany/epiphany.opt:28 +msgid "" +"Preferentially allocate registers that allow short instruction generation." msgstr "" -#: config/i386/i386.opt:1090 -msgid "Known choices for return instrumentation with -minstrument-return=:" +#: config/epiphany/epiphany.opt:32 +msgid "Set branch cost." msgstr "" -#: config/i386/i386.opt:1103 -msgid "" -"Generate a __return_loc section pointing to all return instrumentation code." +#: config/epiphany/epiphany.opt:36 +msgid "Enable conditional move instruction usage." msgstr "" -#: config/i386/cygming.opt:23 -msgid "Create console application." +#: config/epiphany/epiphany.opt:40 +msgid "Set number of nops to emit before each insn pattern." msgstr "" -#: config/i386/cygming.opt:27 -msgid "Generate code for a DLL." +#: config/epiphany/epiphany.opt:52 +msgid "Use software floating point comparisons." msgstr "" -#: config/i386/cygming.opt:31 -msgid "Ignore dllimport for functions." +#: config/epiphany/epiphany.opt:56 +msgid "Enable split of 32 bit immediate loads into low / high part." msgstr "" -#: config/i386/cygming.opt:35 -msgid "Use Mingw-specific thread support." +#: config/epiphany/epiphany.opt:60 +msgid "Enable use of POST_INC / POST_DEC." msgstr "" -#: config/i386/cygming.opt:39 -msgid "Set Windows defines." +#: config/epiphany/epiphany.opt:64 +msgid "Enable use of POST_MODIFY." msgstr "" -#: config/i386/cygming.opt:43 -msgid "Create GUI application." +#: config/epiphany/epiphany.opt:68 +msgid "Set number of bytes on the stack preallocated for use by the callee." msgstr "" -#: config/i386/cygming.opt:47 -msgid "Use the GNU extension to the PE format for aligned common data." +#: config/epiphany/epiphany.opt:72 +msgid "Assume round to nearest is selected for purposes of scheduling." msgstr "" -#: config/i386/cygming.opt:51 -msgid "" -"Compile code that relies on Cygwin DLL wrappers to support C++ operator new/" -"delete replacement." +#: config/epiphany/epiphany.opt:76 +msgid "Generate call insns as indirect calls." msgstr "" -#: config/i386/cygming.opt:55 -msgid "For nested functions on stack executable permission is set." +#: config/epiphany/epiphany.opt:80 +msgid "Generate call insns as direct calls." msgstr "" -#: config/i386/cygming.opt:62 -msgid "Put relocated read-only data into .data section." +#: config/epiphany/epiphany.opt:84 +msgid "" +"Assume labels and symbols can be addressed using 16 bit absolute addresses." msgstr "" -#: config/i386/mingw-w64.opt:23 -msgid "Use unicode startup and define UNICODE macro." +#: config/epiphany/epiphany.opt:108 +msgid "" +"A floatig point to integer truncation may be replaced with rounding to save " +"mode switching." msgstr "" -#: config/i386/mingw.opt:29 -msgid "Warn about none ISO msvcrt scanf/printf width extensions." +#: config/epiphany/epiphany.opt:112 +msgid "Vectorize for double-word operations." msgstr "" -#: config/moxie/moxie.opt:31 -msgid "Enable MUL.X and UMUL.X instructions." +#: config/epiphany/epiphany.opt:128 +msgid "" +"Split unaligned 8 byte vector moves before post-modify address generation." msgstr "" -#: config/xtensa/xtensa.opt:23 -msgid "Use CONST16 instruction to load constants." +#: config/epiphany/epiphany.opt:132 +msgid "Use the floating point unit for integer add/subtract." msgstr "" -#: config/xtensa/xtensa.opt:27 -msgid "Disable position-independent code (PIC) for use in OS kernel code." +#: config/epiphany/epiphany.opt:136 +msgid "Set register to hold -1." msgstr "" -#: config/xtensa/xtensa.opt:31 -msgid "Use indirect CALLXn instructions for large programs." +#: config/ft32/ft32.opt:23 +msgid "Target the software simulator." msgstr "" -#: config/xtensa/xtensa.opt:35 -msgid "Automatically align branch targets to reduce branch penalties." +#: config/ft32/ft32.opt:27 config/s390/s390.opt:225 config/mips/mips.opt:393 +#: config/arc/arc.opt:406 +msgid "Use LRA instead of reload." msgstr "" -#: config/xtensa/xtensa.opt:39 -msgid "Intersperse literal pools with code in the text section." +#: config/ft32/ft32.opt:31 +msgid "Avoid use of the DIV and MOD instructions." msgstr "" -#: config/xtensa/xtensa.opt:43 -msgid "" -"Relax literals in assembler and place them automatically in the text section." +#: config/ft32/ft32.opt:35 +msgid "Target the FT32B architecture." msgstr "" -#: config/xtensa/xtensa.opt:47 -msgid "" -"-mno-serialize-volatile\tDo not serialize volatile memory references with " -"MEMW instructions." +#: config/ft32/ft32.opt:39 +msgid "Enable FT32B code compression." msgstr "" -#: config/sparc/sparc.opt:42 -msgid "Use flat register window model." +#: config/ft32/ft32.opt:43 +msgid "Avoid placing any readable data in program memory." msgstr "" -#: config/sparc/sparc.opt:46 -msgid "Assume possible double misalignment." +#: config/h8300/h8300.opt:23 +msgid "Generate H8S code." msgstr "" -#: config/sparc/sparc.opt:50 -msgid "Use ABI reserved registers." +#: config/h8300/h8300.opt:27 +msgid "Generate H8SX code." msgstr "" -#: config/sparc/sparc.opt:54 -msgid "Use hardware quad FP instructions." +#: config/h8300/h8300.opt:31 +msgid "Generate H8S/2600 code." msgstr "" -#: config/sparc/sparc.opt:58 -msgid "Do not use hardware quad fp instructions." +#: config/h8300/h8300.opt:35 +msgid "Make integers 32 bits wide." msgstr "" -#: config/sparc/sparc.opt:62 -msgid "Enable Local Register Allocation." +#: config/h8300/h8300.opt:42 +msgid "Use registers for argument passing." msgstr "" -#: config/sparc/sparc.opt:66 -msgid "Compile for V8+ ABI." +#: config/h8300/h8300.opt:46 +msgid "Consider access to byte sized memory slow." msgstr "" -#: config/sparc/sparc.opt:70 -msgid "Use UltraSPARC Visual Instruction Set version 1.0 extensions." +#: config/h8300/h8300.opt:50 +msgid "Enable linker relaxing." msgstr "" -#: config/sparc/sparc.opt:74 -msgid "Use UltraSPARC Visual Instruction Set version 2.0 extensions." +#: config/h8300/h8300.opt:54 +msgid "Generate H8/300H code." msgstr "" -#: config/sparc/sparc.opt:78 -msgid "Use UltraSPARC Visual Instruction Set version 3.0 extensions." +#: config/h8300/h8300.opt:58 +msgid "Enable the normal mode." msgstr "" -#: config/sparc/sparc.opt:82 -msgid "Use UltraSPARC Visual Instruction Set version 4.0 extensions." +#: config/h8300/h8300.opt:62 +msgid "Use H8/300 alignment rules." msgstr "" -#: config/sparc/sparc.opt:86 -msgid "Use additional VIS instructions introduced in OSA2017." +#: config/h8300/h8300.opt:66 +msgid "Push extended registers on stack in monitor functions." msgstr "" -#: config/sparc/sparc.opt:90 -msgid "Use UltraSPARC Compare-and-Branch extensions." +#: config/h8300/h8300.opt:70 +msgid "Do not push extended registers on stack in monitor functions." msgstr "" -#: config/sparc/sparc.opt:94 -msgid "Use UltraSPARC Fused Multiply-Add extensions." +#: config/pdp11/pdp11.opt:23 +msgid "Generate code for an 11/10." msgstr "" -#: config/sparc/sparc.opt:98 -msgid "Use Floating-point Multiply Single to Double (FsMULd) instruction." +#: config/pdp11/pdp11.opt:27 +msgid "Generate code for an 11/40." msgstr "" -#: config/sparc/sparc.opt:102 -msgid "Use UltraSPARC Population-Count instruction." +#: config/pdp11/pdp11.opt:31 +msgid "Generate code for an 11/45." msgstr "" -#: config/sparc/sparc.opt:106 -msgid "Use UltraSPARC Subtract-Extended-with-Carry instruction." +#: config/pdp11/pdp11.opt:35 +msgid "Return floating-point results in ac0 (fr0 in Unix assembler syntax)." msgstr "" -#: config/sparc/sparc.opt:110 -msgid "Pointers are 64-bit." +#: config/pdp11/pdp11.opt:39 +msgid "Use the DEC assembler syntax." msgstr "" -#: config/sparc/sparc.opt:114 -msgid "Pointers are 32-bit." +#: config/pdp11/pdp11.opt:43 +msgid "Use the GNU assembler syntax." msgstr "" -#: config/sparc/sparc.opt:118 -msgid "Use 64-bit ABI." +#: config/pdp11/pdp11.opt:47 config/rs6000/rs6000.opt:188 +#: config/frv/frv.opt:158 +msgid "Use hardware floating point." msgstr "" -#: config/sparc/sparc.opt:122 -msgid "Use 32-bit ABI." +#: config/pdp11/pdp11.opt:51 +msgid "Use 16 bit int." msgstr "" -#: config/sparc/sparc.opt:126 -msgid "Use stack bias." +#: config/pdp11/pdp11.opt:55 +msgid "Use 32 bit int." msgstr "" -#: config/sparc/sparc.opt:130 -msgid "Use structs on stronger alignment for double-word copies." +#: config/pdp11/pdp11.opt:59 config/rs6000/rs6000.opt:184 +msgid "Do not use hardware floating point." msgstr "" -#: config/sparc/sparc.opt:134 -msgid "Optimize tail call instructions in assembler and linker." +#: config/pdp11/pdp11.opt:63 +msgid "Target has split I&D." msgstr "" -#: config/sparc/sparc.opt:138 -msgid "Do not generate code that can only run in supervisor mode (default)." +#: config/pdp11/pdp11.opt:67 +msgid "Use UNIX assembler syntax." msgstr "" -#: config/sparc/sparc.opt:142 -msgid "Use instructions of and schedule code for given CPU." +#: config/pdp11/pdp11.opt:71 +msgid "Use LRA register allocator." msgstr "" -#: config/sparc/sparc.opt:225 -msgid "Use given SPARC-V9 code model." +#: config/xtensa/xtensa.opt:23 +msgid "Use CONST16 instruction to load constants." msgstr "" -#: config/sparc/sparc.opt:247 -msgid "Enable debug output." +#: config/xtensa/xtensa.opt:27 +msgid "Disable position-independent code (PIC) for use in OS kernel code." msgstr "" -#: config/sparc/sparc.opt:251 -msgid "Enable strict 32-bit psABI struct return checking." +#: config/xtensa/xtensa.opt:31 +msgid "Use indirect CALLXn instructions for large programs." msgstr "" -#: config/sparc/sparc.opt:255 -msgid "" -"Enable workaround for single erratum of AT697F processor (corresponding to " -"erratum #13 of AT697E processor)." +#: config/xtensa/xtensa.opt:35 +msgid "Automatically align branch targets to reduce branch penalties." msgstr "" -#: config/sparc/sparc.opt:260 -msgid "Enable workarounds for the errata of the UT699 processor." +#: config/xtensa/xtensa.opt:39 +msgid "Intersperse literal pools with code in the text section." msgstr "" -#: config/sparc/sparc.opt:264 -msgid "Enable workarounds for the errata of the UT699E/UT700 processor." +#: config/xtensa/xtensa.opt:43 +msgid "" +"Relax literals in assembler and place them automatically in the text section." msgstr "" -#: config/sparc/sparc.opt:268 -msgid "Enable workarounds for the errata of the GR712RC processor." +#: config/xtensa/xtensa.opt:47 +msgid "" +"-mno-serialize-volatile\tDo not serialize volatile memory references with " +"MEMW instructions." msgstr "" -#: config/sparc/sparc.opt:305 -msgid "Specify the memory model in effect for the program." +#: config/i386/cygming.opt:23 +msgid "Create console application." msgstr "" -#: config/m32c/m32c.opt:23 -msgid "-msim\tUse simulator runtime." +#: config/i386/cygming.opt:27 +msgid "Generate code for a DLL." msgstr "" -#: config/m32c/m32c.opt:27 -msgid "-mcpu=r8c\tCompile code for R8C variants." +#: config/i386/cygming.opt:31 +msgid "Ignore dllimport for functions." msgstr "" -#: config/m32c/m32c.opt:31 -msgid "-mcpu=m16c\tCompile code for M16C variants." +#: config/i386/cygming.opt:35 +msgid "Use Mingw-specific thread support." msgstr "" -#: config/m32c/m32c.opt:35 -msgid "-mcpu=m32cm\tCompile code for M32CM variants." +#: config/i386/cygming.opt:39 +msgid "Set Windows defines." msgstr "" -#: config/m32c/m32c.opt:39 -msgid "-mcpu=m32c\tCompile code for M32C variants." +#: config/i386/cygming.opt:43 +msgid "Create GUI application." msgstr "" -#: config/m32c/m32c.opt:43 -msgid "-memregs=\tNumber of memreg bytes (default: 16, range: 0..16)." +#: config/i386/cygming.opt:47 +msgid "Use the GNU extension to the PE format for aligned common data." msgstr "" -#: config/iq2000/iq2000.opt:31 -msgid "Specify CPU for code generation purposes." +#: config/i386/cygming.opt:51 +msgid "" +"Compile code that relies on Cygwin DLL wrappers to support C++ operator new/" +"delete replacement." msgstr "" -#: config/iq2000/iq2000.opt:47 -msgid "Specify CPU for scheduling purposes." +#: config/i386/cygming.opt:55 +msgid "For nested functions on stack executable permission is set." msgstr "" -#: config/iq2000/iq2000.opt:51 -msgid "Known IQ2000 CPUs (for use with the -mcpu= option):" +#: config/i386/cygming.opt:62 +msgid "Put relocated read-only data into .data section." msgstr "" -#: config/iq2000/iq2000.opt:70 -msgid "No default crt0.o." +#: config/i386/mingw.opt:29 +msgid "Warn about none ISO msvcrt scanf/printf width extensions." msgstr "" -#: config/g.opt:27 -msgid "" -"-G\tPut global and static data smaller than bytes into a " -"special section (on some targets)." +#: config/i386/mingw-w64.opt:23 +msgid "Use unicode startup and define UNICODE macro." msgstr "" -#: config/linux-android.opt:23 -msgid "Generate code for the Android platform." +#: config/i386/i386.opt:192 +msgid "sizeof(long double) is 16." msgstr "" -#: config/ia64/ilp32.opt:3 -msgid "Generate ILP32 code." +#: config/i386/i386.opt:196 config/i386/i386.opt:364 +msgid "Use hardware fp." msgstr "" -#: config/ia64/ilp32.opt:7 -msgid "Generate LP64 code." +#: config/i386/i386.opt:200 +msgid "sizeof(long double) is 12." msgstr "" -#: config/ia64/ia64.opt:28 -msgid "Generate big endian code." +#: config/i386/i386.opt:204 +msgid "Use 80-bit long double." msgstr "" -#: config/ia64/ia64.opt:32 -msgid "Generate little endian code." +#: config/i386/i386.opt:208 config/s390/s390.opt:154 +#: config/sparc/long-double-switch.opt:27 config/alpha/alpha.opt:102 +msgid "Use 64-bit long double." msgstr "" -#: config/ia64/ia64.opt:36 -msgid "Generate code for GNU as." +#: config/i386/i386.opt:212 config/s390/s390.opt:150 +#: config/sparc/long-double-switch.opt:23 config/alpha/alpha.opt:98 +msgid "Use 128-bit long double." msgstr "" -#: config/ia64/ia64.opt:40 -msgid "Generate code for GNU ld." +#: config/i386/i386.opt:216 config/sh/sh.opt:179 +msgid "Reserve space for outgoing arguments in the function prologue." msgstr "" -#: config/ia64/ia64.opt:44 -msgid "Emit stop bits before and after volatile extended asms." +#: config/i386/i386.opt:220 +msgid "Align some doubles on dword boundary." msgstr "" -#: config/ia64/ia64.opt:48 -msgid "Use in/loc/out register names." +#: config/i386/i386.opt:224 +msgid "Function starts are aligned to this power of 2." msgstr "" -#: config/ia64/ia64.opt:55 -msgid "Enable use of sdata/scommon/sbss." +#: config/i386/i386.opt:228 +msgid "Jump targets are aligned to this power of 2." msgstr "" -#: config/ia64/ia64.opt:59 -msgid "Generate code without GP reg." +#: config/i386/i386.opt:232 +msgid "Loop code aligned to this power of 2." msgstr "" -#: config/ia64/ia64.opt:63 -msgid "gp is constant (but save/restore gp on indirect calls)." +#: config/i386/i386.opt:236 +msgid "Align destination of the string operations." msgstr "" -#: config/ia64/ia64.opt:67 -msgid "Generate self-relocatable code." +#: config/i386/i386.opt:240 +msgid "Use the given data alignment." msgstr "" -#: config/ia64/ia64.opt:71 -msgid "Generate inline floating point division, optimize for latency." +#: config/i386/i386.opt:244 +msgid "Known data alignment choices (for use with the -malign-data= option):" msgstr "" -#: config/ia64/ia64.opt:75 -msgid "Generate inline floating point division, optimize for throughput." +#: config/i386/i386.opt:261 +msgid "Use given assembler dialect." msgstr "" -#: config/ia64/ia64.opt:82 -msgid "Generate inline integer division, optimize for latency." +#: config/i386/i386.opt:265 +msgid "Known assembler dialects (for use with the -masm= option):" msgstr "" -#: config/ia64/ia64.opt:86 -msgid "Generate inline integer division, optimize for throughput." +#: config/i386/i386.opt:275 +msgid "Branches are this expensive (arbitrary units)." msgstr "" -#: config/ia64/ia64.opt:90 -msgid "Do not inline integer division." +#: config/i386/i386.opt:279 +msgid "" +"-mlarge-data-threshold=\tData greater than given threshold will go " +"into .ldata section in x86-64 medium model." msgstr "" -#: config/ia64/ia64.opt:94 -msgid "Generate inline square root, optimize for latency." +#: config/i386/i386.opt:283 +msgid "Use given x86-64 code model." msgstr "" -#: config/ia64/ia64.opt:98 -msgid "Generate inline square root, optimize for throughput." +#: config/i386/i386.opt:306 +msgid "Use given address mode." msgstr "" -#: config/ia64/ia64.opt:102 -msgid "Do not inline square root." +#: config/i386/i386.opt:310 +msgid "Known address mode (for use with the -maddress-mode= option):" msgstr "" -#: config/ia64/ia64.opt:106 -msgid "Enable DWARF line debug info via GNU as." +#: config/i386/i386.opt:323 +msgid "Generate sin, cos, sqrt for FPU." msgstr "" -#: config/ia64/ia64.opt:110 -msgid "Enable earlier placing stop bits for better scheduling." +#: config/i386/i386.opt:327 +msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack." msgstr "" -#: config/ia64/ia64.opt:126 -msgid "Known Itanium CPUs (for use with the -mtune= option):" +#: config/i386/i386.opt:331 +msgid "Return values of functions in FPU registers." msgstr "" -#: config/ia64/ia64.opt:136 -msgid "Use data speculation before reload." +#: config/i386/i386.opt:335 +msgid "Generate floating point mathematics using given instruction set." msgstr "" -#: config/ia64/ia64.opt:140 -msgid "Use data speculation after reload." +#: config/i386/i386.opt:339 +msgid "Valid arguments to -mfpmath=:" msgstr "" -#: config/ia64/ia64.opt:144 -msgid "Use control speculation." +#: config/i386/i386.opt:372 +msgid "Inline all known string operations." msgstr "" -#: config/ia64/ia64.opt:148 -msgid "Use in block data speculation before reload." +#: config/i386/i386.opt:376 +msgid "" +"Inline memset/memcpy string operations, but perform inline version only for " +"small blocks." msgstr "" -#: config/ia64/ia64.opt:152 -msgid "Use in block data speculation after reload." +#: config/i386/i386.opt:384 +msgid "Use native (MS) bitfield layout." msgstr "" -#: config/ia64/ia64.opt:156 -msgid "Use in block control speculation." +#: config/i386/i386.opt:404 +msgid "Set 80387 floating-point precision to 32-bit." msgstr "" -#: config/ia64/ia64.opt:160 -msgid "Use simple data speculation check." +#: config/i386/i386.opt:408 +msgid "Set 80387 floating-point precision to 64-bit." msgstr "" -#: config/ia64/ia64.opt:164 -msgid "Use simple data speculation check for control speculation." +#: config/i386/i386.opt:412 +msgid "Set 80387 floating-point precision to 80-bit." msgstr "" -#: config/ia64/ia64.opt:174 -msgid "" -"Count speculative dependencies while calculating priority of instructions." +#: config/i386/i386.opt:420 +msgid "Assume incoming stack aligned to this power of 2." msgstr "" -#: config/ia64/ia64.opt:178 -msgid "Place a stop bit after every cycle when scheduling." +#: config/i386/i386.opt:424 +msgid "Use push instructions to save outgoing arguments." msgstr "" -#: config/ia64/ia64.opt:182 -msgid "" -"Assume that floating-point stores and loads are not likely to cause conflict " -"when placed into one instruction group." +#: config/i386/i386.opt:428 +msgid "Use red-zone in the x86-64 code." msgstr "" -#: config/ia64/ia64.opt:186 -msgid "" -"Soft limit on number of memory insns per instruction group, giving lower " -"priority to subsequent memory insns attempting to schedule in the same insn " -"group. Frequently useful to prevent cache bank conflicts. Default value is " -"1." +#: config/i386/i386.opt:432 +msgid "Number of registers used to pass integer arguments." msgstr "" -#: config/ia64/ia64.opt:190 -msgid "" -"Disallow more than 'msched-max-memory-insns' in instruction group. " -"Otherwise, limit is 'soft' (prefer non-memory operations when limit is " -"reached)." +#: config/i386/i386.opt:436 +msgid "Alternate calling convention." msgstr "" -#: config/ia64/ia64.opt:194 -msgid "Don't generate checks for control speculation in selective scheduling." +#: config/i386/i386.opt:440 config/alpha/alpha.opt:23 +msgid "Do not use hardware fp." msgstr "" -#: config/nios2/elf.opt:26 -msgid "Link with a limited version of the C library." +#: config/i386/i386.opt:444 +msgid "Use SSE register passing conventions for SF and DF mode." msgstr "" -#: config/nios2/elf.opt:30 -msgid "Name of system library to link against." +#: config/i386/i386.opt:448 +msgid "Realign stack in prologue." msgstr "" -#: config/nios2/elf.opt:34 -msgid "Name of the startfile." +#: config/i386/i386.opt:452 +msgid "Enable stack probing." msgstr "" -#: config/nios2/elf.opt:38 -msgid "Link with HAL BSP." +#: config/i386/i386.opt:456 +msgid "Specify memcpy expansion strategy when expected size is known." msgstr "" -#: config/nios2/nios2.opt:35 -msgid "Enable DIV, DIVU." +#: config/i386/i386.opt:460 +msgid "Specify memset expansion strategy when expected size is known." msgstr "" -#: config/nios2/nios2.opt:39 -msgid "Enable MUL instructions." +#: config/i386/i386.opt:464 +msgid "Chose strategy to generate stringop using." msgstr "" -#: config/nios2/nios2.opt:43 -msgid "Enable MULX instructions, assume fast shifter." +#: config/i386/i386.opt:468 +msgid "Valid arguments to -mstringop-strategy=:" msgstr "" -#: config/nios2/nios2.opt:47 -msgid "Use table based fast divide (default at -O3)." +#: config/i386/i386.opt:496 +msgid "Use given thread-local storage dialect." msgstr "" -#: config/nios2/nios2.opt:51 -msgid "All memory accesses use I/O load/store instructions." +#: config/i386/i386.opt:500 +msgid "Known TLS dialects (for use with the -mtls-dialect= option):" msgstr "" -#: config/nios2/nios2.opt:55 -msgid "Volatile memory accesses use I/O load/store instructions." +#: config/i386/i386.opt:510 +#, c-format +msgid "Use direct references against %gs when accessing tls data." msgstr "" -#: config/nios2/nios2.opt:59 -msgid "Volatile memory accesses do not use I/O load/store instructions." +#: config/i386/i386.opt:518 +msgid "Fine grain control of tune features." msgstr "" -#: config/nios2/nios2.opt:63 -msgid "Enable/disable GP-relative addressing." +#: config/i386/i386.opt:522 +msgid "Clear all tune features." msgstr "" -#: config/nios2/nios2.opt:67 -msgid "Valid options for GP-relative addressing (for -mgpopt):" +#: config/i386/i386.opt:529 +msgid "Generate code that conforms to Intel MCU psABI." msgstr "" -#: config/nios2/nios2.opt:86 -msgid "Equivalent to -mgpopt=local." +#: config/i386/i386.opt:533 +msgid "Generate code that conforms to the given ABI." msgstr "" -#: config/nios2/nios2.opt:90 -msgid "Equivalent to -mgpopt=none." +#: config/i386/i386.opt:537 config/nds32/nds32.opt:51 +msgid "Known ABIs (for use with the -mabi= option):" msgstr "" -#: config/nios2/nios2.opt:102 -msgid "Floating point custom instruction configuration name." +#: config/i386/i386.opt:547 +msgid "" +"Use libgcc stubs to save and restore registers clobbered by 64-bit Microsoft " +"to System V ABI calls." msgstr "" -#: config/nios2/nios2.opt:106 -msgid "Do not use the ftruncds custom instruction." +#: config/i386/i386.opt:551 config/rs6000/rs6000.opt:200 +msgid "Vector library ABI to use." msgstr "" -#: config/nios2/nios2.opt:110 -msgid "Integer id (N) of ftruncds custom instruction." +#: config/i386/i386.opt:555 +msgid "" +"Known vectorization library ABIs (for use with the -mveclibabi= option):" msgstr "" -#: config/nios2/nios2.opt:114 -msgid "Do not use the fextsd custom instruction." +#: config/i386/i386.opt:565 +msgid "Return 8-byte vectors in memory." msgstr "" -#: config/nios2/nios2.opt:118 -msgid "Integer id (N) of fextsd custom instruction." +#: config/i386/i386.opt:569 +msgid "Generate reciprocals instead of divss and sqrtss." msgstr "" -#: config/nios2/nios2.opt:122 -msgid "Do not use the fixdu custom instruction." +#: config/i386/i386.opt:573 +msgid "Control generation of reciprocal estimates." msgstr "" -#: config/nios2/nios2.opt:126 -msgid "Integer id (N) of fixdu custom instruction." +#: config/i386/i386.opt:577 +msgid "Generate cld instruction in the function prologue." msgstr "" -#: config/nios2/nios2.opt:130 -msgid "Do not use the fixdi custom instruction." +#: config/i386/i386.opt:581 +msgid "" +"Generate vzeroupper instruction before a transfer of control flow out of the " +"function." msgstr "" -#: config/nios2/nios2.opt:134 -msgid "Integer id (N) of fixdi custom instruction." +#: config/i386/i386.opt:586 +msgid "" +"Disable Scalar to Vector optimization pass transforming 64-bit integer " +"computations into a vector ones." msgstr "" -#: config/nios2/nios2.opt:138 -msgid "Do not use the fixsu custom instruction." +#: config/i386/i386.opt:591 +msgid "" +"Do dispatch scheduling if processor is bdver1, bdver2, bdver3, bdver4 or " +"znver1 and Haifa scheduling is selected." msgstr "" -#: config/nios2/nios2.opt:142 -msgid "Integer id (N) of fixsu custom instruction." +#: config/i386/i386.opt:596 +msgid "" +"Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-" +"vectorizer." msgstr "" -#: config/nios2/nios2.opt:146 -msgid "Do not use the fixsi custom instruction." +#: config/i386/i386.opt:600 +msgid "" +"Use given register vector width instructions instead of maximum register " +"width in the auto-vectorizer." msgstr "" -#: config/nios2/nios2.opt:150 -msgid "Integer id (N) of fixsi custom instruction." +#: config/i386/i386.opt:604 +msgid "" +"Known preferred register vector length (to use with the -mprefer-vector-" +"width= option):" msgstr "" -#: config/nios2/nios2.opt:154 -msgid "Do not use the floatud custom instruction." +#: config/i386/i386.opt:622 +msgid "Generate 32bit i386 code." msgstr "" -#: config/nios2/nios2.opt:158 -msgid "Integer id (N) of floatud custom instruction." +#: config/i386/i386.opt:626 +msgid "Generate 64bit x86-64 code." msgstr "" -#: config/nios2/nios2.opt:162 -msgid "Do not use the floatid custom instruction." +#: config/i386/i386.opt:630 +msgid "Generate 32bit x86-64 code." msgstr "" -#: config/nios2/nios2.opt:166 -msgid "Integer id (N) of floatid custom instruction." +#: config/i386/i386.opt:634 +msgid "Generate 16bit i386 code." msgstr "" -#: config/nios2/nios2.opt:170 -msgid "Do not use the floatus custom instruction." +#: config/i386/i386.opt:638 +msgid "Support MMX built-in functions." msgstr "" -#: config/nios2/nios2.opt:174 -msgid "Integer id (N) of floatus custom instruction." +#: config/i386/i386.opt:642 +msgid "Support 3DNow! built-in functions." msgstr "" -#: config/nios2/nios2.opt:178 -msgid "Do not use the floatis custom instruction." +#: config/i386/i386.opt:646 +msgid "Support Athlon 3Dnow! built-in functions." msgstr "" -#: config/nios2/nios2.opt:182 -msgid "Integer id (N) of floatis custom instruction." +#: config/i386/i386.opt:650 +msgid "Support MMX and SSE built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:186 -msgid "Do not use the fcmpned custom instruction." +#: config/i386/i386.opt:654 +msgid "Support MMX, SSE and SSE2 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:190 -msgid "Integer id (N) of fcmpned custom instruction." +#: config/i386/i386.opt:658 +msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:194 -msgid "Do not use the fcmpeqd custom instruction." +#: config/i386/i386.opt:662 +msgid "" +"Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code " +"generation." msgstr "" -#: config/nios2/nios2.opt:198 -msgid "Integer id (N) of fcmpeqd custom instruction." +#: config/i386/i386.opt:666 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code " +"generation." msgstr "" -#: config/nios2/nios2.opt:202 -msgid "Do not use the fcmpged custom instruction." +#: config/i386/i386.opt:670 config/i386/i386.opt:674 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions " +"and code generation." msgstr "" -#: config/nios2/nios2.opt:206 -msgid "Integer id (N) of fcmpged custom instruction." +#: config/i386/i386.opt:678 +msgid "" +"Do not support SSE4.1 and SSE4.2 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:210 -msgid "Do not use the fcmpgtd custom instruction." +#: config/i386/i386.opt:686 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in " +"functions and code generation." msgstr "" -#: config/nios2/nios2.opt:214 -msgid "Integer id (N) of fcmpgtd custom instruction." +#: config/i386/i386.opt:690 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in " +"functions and code generation." msgstr "" -#: config/nios2/nios2.opt:218 -msgid "Do not use the fcmpled custom instruction." +#: config/i386/i386.opt:694 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:222 -msgid "Integer id (N) of fcmpled custom instruction." +#: config/i386/i386.opt:698 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512PF built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:226 -msgid "Do not use the fcmpltd custom instruction." +#: config/i386/i386.opt:702 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512ER built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:230 -msgid "Integer id (N) of fcmpltd custom instruction." +#: config/i386/i386.opt:706 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512CD built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:234 -msgid "Do not use the flogd custom instruction." +#: config/i386/i386.opt:710 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512DQ built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:238 -msgid "Integer id (N) of flogd custom instruction." +#: config/i386/i386.opt:714 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512BW built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:242 -msgid "Do not use the fexpd custom instruction." +#: config/i386/i386.opt:718 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512VL built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:246 -msgid "Integer id (N) of fexpd custom instruction." +#: config/i386/i386.opt:722 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512IFMA built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:250 -msgid "Do not use the fatand custom instruction." +#: config/i386/i386.opt:726 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F " +"and AVX512VBMI built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:254 -msgid "Integer id (N) of fatand custom instruction." +#: config/i386/i386.opt:730 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " +"AVX5124FMAPS built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:258 -msgid "Do not use the ftand custom instruction." +#: config/i386/i386.opt:734 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " +"AVX5124VNNIW built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:262 -msgid "Integer id (N) of ftand custom instruction." +#: config/i386/i386.opt:738 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " +"AVX512VPOPCNTDQ built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:266 -msgid "Do not use the fsind custom instruction." +#: config/i386/i386.opt:742 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " +"AVX512VBMI2 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:270 -msgid "Integer id (N) of fsind custom instruction." +#: config/i386/i386.opt:746 +msgid "Support AVX512VNNI built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:274 -msgid "Do not use the fcosd custom instruction." +#: config/i386/i386.opt:750 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and " +"AVX512BITALG built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:278 -msgid "Integer id (N) of fcosd custom instruction." +#: config/i386/i386.opt:754 +msgid "" +"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in " +"functions and code generation." msgstr "" -#: config/nios2/nios2.opt:282 -msgid "Do not use the fsqrtd custom instruction." +#: config/i386/i386.opt:758 +msgid "" +"Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code " +"generation." msgstr "" -#: config/nios2/nios2.opt:286 -msgid "Integer id (N) of fsqrtd custom instruction." +#: config/i386/i386.opt:762 +msgid "Support FMA4 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:290 -msgid "Do not use the fabsd custom instruction." +#: config/i386/i386.opt:766 +msgid "Support XOP built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:294 -msgid "Integer id (N) of fabsd custom instruction." +#: config/i386/i386.opt:770 +msgid "Support LWP built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:298 -msgid "Do not use the fnegd custom instruction." +#: config/i386/i386.opt:774 +msgid "" +"Support code generation of Advanced Bit Manipulation (ABM) instructions." msgstr "" -#: config/nios2/nios2.opt:302 -msgid "Integer id (N) of fnegd custom instruction." +#: config/i386/i386.opt:778 +msgid "Support code generation of popcnt instruction." msgstr "" -#: config/nios2/nios2.opt:306 -msgid "Do not use the fmaxd custom instruction." +#: config/i386/i386.opt:782 +msgid "Support PCONFIG built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:310 -msgid "Integer id (N) of fmaxd custom instruction." +#: config/i386/i386.opt:786 +msgid "Support WBNOINVD built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:314 -msgid "Do not use the fmind custom instruction." +#: config/i386/i386.opt:790 +msgid "Support PTWRITE built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:318 -msgid "Integer id (N) of fmind custom instruction." +#: config/i386/i386.opt:794 +msgid "Support SGX built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:322 -msgid "Do not use the fdivd custom instruction." +#: config/i386/i386.opt:798 +msgid "Support RDPID built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:326 -msgid "Integer id (N) of fdivd custom instruction." +#: config/i386/i386.opt:802 +msgid "Support GFNI built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:330 -msgid "Do not use the fmuld custom instruction." +#: config/i386/i386.opt:806 +msgid "Support VAES built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:334 -msgid "Integer id (N) of fmuld custom instruction." +#: config/i386/i386.opt:810 +msgid "Support VPCLMULQDQ built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:338 -msgid "Do not use the fsubd custom instruction." +#: config/i386/i386.opt:814 +msgid "Support BMI built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:342 -msgid "Integer id (N) of fsubd custom instruction." +#: config/i386/i386.opt:818 +msgid "Support BMI2 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:346 -msgid "Do not use the faddd custom instruction." +#: config/i386/i386.opt:822 +msgid "Support LZCNT built-in function and code generation." msgstr "" -#: config/nios2/nios2.opt:350 -msgid "Integer id (N) of faddd custom instruction." +#: config/i386/i386.opt:826 +msgid "Support Hardware Lock Elision prefixes." msgstr "" -#: config/nios2/nios2.opt:354 -msgid "Do not use the fcmpnes custom instruction." +#: config/i386/i386.opt:830 +msgid "Support RDSEED instruction." msgstr "" -#: config/nios2/nios2.opt:358 -msgid "Integer id (N) of fcmpnes custom instruction." +#: config/i386/i386.opt:834 +msgid "Support PREFETCHW instruction." msgstr "" -#: config/nios2/nios2.opt:362 -msgid "Do not use the fcmpeqs custom instruction." +#: config/i386/i386.opt:838 +msgid "Support flag-preserving add-carry instructions." msgstr "" -#: config/nios2/nios2.opt:366 -msgid "Integer id (N) of fcmpeqs custom instruction." +#: config/i386/i386.opt:842 +msgid "Support CLFLUSHOPT instructions." msgstr "" -#: config/nios2/nios2.opt:370 -msgid "Do not use the fcmpges custom instruction." +#: config/i386/i386.opt:846 +msgid "Support CLWB instruction." msgstr "" -#: config/nios2/nios2.opt:374 -msgid "Integer id (N) of fcmpges custom instruction." +#: config/i386/i386.opt:854 +msgid "Support FXSAVE and FXRSTOR instructions." msgstr "" -#: config/nios2/nios2.opt:378 -msgid "Do not use the fcmpgts custom instruction." +#: config/i386/i386.opt:858 +msgid "Support XSAVE and XRSTOR instructions." msgstr "" -#: config/nios2/nios2.opt:382 -msgid "Integer id (N) of fcmpgts custom instruction." +#: config/i386/i386.opt:862 +msgid "Support XSAVEOPT instruction." msgstr "" -#: config/nios2/nios2.opt:386 -msgid "Do not use the fcmples custom instruction." +#: config/i386/i386.opt:866 +msgid "Support XSAVEC instructions." msgstr "" -#: config/nios2/nios2.opt:390 -msgid "Integer id (N) of fcmples custom instruction." +#: config/i386/i386.opt:870 +msgid "Support XSAVES and XRSTORS instructions." msgstr "" -#: config/nios2/nios2.opt:394 -msgid "Do not use the fcmplts custom instruction." +#: config/i386/i386.opt:874 +msgid "Support TBM built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:398 -msgid "Integer id (N) of fcmplts custom instruction." +#: config/i386/i386.opt:878 +msgid "Support code generation of cmpxchg16b instruction." msgstr "" -#: config/nios2/nios2.opt:402 -msgid "Do not use the flogs custom instruction." +#: config/i386/i386.opt:882 +msgid "Support code generation of sahf instruction in 64bit x86-64 code." msgstr "" -#: config/nios2/nios2.opt:406 -msgid "Integer id (N) of flogs custom instruction." +#: config/i386/i386.opt:886 +msgid "Support code generation of movbe instruction." msgstr "" -#: config/nios2/nios2.opt:410 -msgid "Do not use the fexps custom instruction." +#: config/i386/i386.opt:890 +msgid "Support code generation of crc32 instruction." msgstr "" -#: config/nios2/nios2.opt:414 -msgid "Integer id (N) of fexps custom instruction." +#: config/i386/i386.opt:894 +msgid "Support AES built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:418 -msgid "Do not use the fatans custom instruction." +#: config/i386/i386.opt:898 +msgid "Support SHA1 and SHA256 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:422 -msgid "Integer id (N) of fatans custom instruction." +#: config/i386/i386.opt:902 +msgid "Support PCLMUL built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:426 -msgid "Do not use the ftans custom instruction." +#: config/i386/i386.opt:906 +msgid "Encode SSE instructions with VEX prefix." msgstr "" -#: config/nios2/nios2.opt:430 -msgid "Integer id (N) of ftans custom instruction." +#: config/i386/i386.opt:910 +msgid "Support FSGSBASE built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:434 -msgid "Do not use the fsins custom instruction." +#: config/i386/i386.opt:914 +msgid "Support RDRND built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:438 -msgid "Integer id (N) of fsins custom instruction." +#: config/i386/i386.opt:918 +msgid "Support F16C built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:442 -msgid "Do not use the fcoss custom instruction." +#: config/i386/i386.opt:922 +msgid "Support PREFETCHWT1 built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:446 -msgid "Integer id (N) of fcoss custom instruction." +#: config/i386/i386.opt:926 +msgid "Emit profiling counter call at function entry before prologue." msgstr "" -#: config/nios2/nios2.opt:450 -msgid "Do not use the fsqrts custom instruction." +#: config/i386/i386.opt:930 +msgid "Generate __mcount_loc section with all mcount or __fentry__ calls." msgstr "" -#: config/nios2/nios2.opt:454 -msgid "Integer id (N) of fsqrts custom instruction." +#: config/i386/i386.opt:934 config/s390/s390.opt:302 +msgid "" +"Generate mcount/__fentry__ calls as nops. To activate they need to be " +"patched in." msgstr "" -#: config/nios2/nios2.opt:458 -msgid "Do not use the fabss custom instr." +#: config/i386/i386.opt:939 +msgid "Set name of __fentry__ symbol called at function entry." msgstr "" -#: config/nios2/nios2.opt:462 -msgid "Integer id (N) of fabss custom instruction." +#: config/i386/i386.opt:943 +msgid "Set name of section to record mrecord-mcount calls." msgstr "" -#: config/nios2/nios2.opt:466 -msgid "Do not use the fnegs custom instruction." +#: config/i386/i386.opt:947 +msgid "Skip setting up RAX register when passing variable arguments." msgstr "" -#: config/nios2/nios2.opt:470 -msgid "Integer id (N) of fnegs custom instruction." +#: config/i386/i386.opt:951 +msgid "" +"Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-" +"time check." msgstr "" -#: config/nios2/nios2.opt:474 -msgid "Do not use the fmaxs custom instruction." +#: config/i386/i386.opt:955 +msgid "Split 32-byte AVX unaligned load." msgstr "" -#: config/nios2/nios2.opt:478 -msgid "Integer id (N) of fmaxs custom instruction." +#: config/i386/i386.opt:959 +msgid "Split 32-byte AVX unaligned store." msgstr "" -#: config/nios2/nios2.opt:482 -msgid "Do not use the fmins custom instruction." +#: config/i386/i386.opt:963 +msgid "Support RTM built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:486 -msgid "Integer id (N) of fmins custom instruction." +#: config/i386/i386.opt:971 +msgid "Support MWAITX and MONITORX built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:490 -msgid "Do not use the fdivs custom instruction." +#: config/i386/i386.opt:975 +msgid "Support CLZERO built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:494 -msgid "Integer id (N) of fdivs custom instruction." +#: config/i386/i386.opt:979 +msgid "Support PKU built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:498 -msgid "Do not use the fmuls custom instruction." +#: config/i386/i386.opt:987 +msgid "" +"Known stack protector guard (for use with the -mstack-protector-guard= " +"option):" msgstr "" -#: config/nios2/nios2.opt:502 -msgid "Integer id (N) of fmuls custom instruction." +#: config/i386/i386.opt:997 config/rs6000/rs6000.opt:556 +msgid "Use the given base register for addressing the stack-protector guard." msgstr "" -#: config/nios2/nios2.opt:506 -msgid "Do not use the fsubs custom instruction." +#: config/i386/i386.opt:1004 config/rs6000/rs6000.opt:563 +msgid "Use the given offset for addressing the stack-protector guard." msgstr "" -#: config/nios2/nios2.opt:510 -msgid "Integer id (N) of fsubs custom instruction." +#: config/i386/i386.opt:1011 +msgid "Use the given symbol for addressing the stack-protector guard." msgstr "" -#: config/nios2/nios2.opt:514 -msgid "Do not use the fadds custom instruction." +#: config/i386/i386.opt:1023 +msgid "" +"Enable shadow stack built-in functions from Control-flow Enforcement " +"Technology (CET)." msgstr "" -#: config/nios2/nios2.opt:518 -msgid "Integer id (N) of fadds custom instruction." +#: config/i386/i386.opt:1028 +msgid "" +"Turn on CET instrumentation for switch statements that use a jump table and " +"an indirect jump." msgstr "" -#: config/nios2/nios2.opt:522 -msgid "Do not use the frdy custom instruction." +#: config/i386/i386.opt:1033 +msgid "" +"Insert ENDBR instruction at function entry only via cf_check attribute for " +"CET instrumentation." msgstr "" -#: config/nios2/nios2.opt:526 -msgid "Integer id (N) of frdy custom instruction." +#: config/i386/i386.opt:1038 +msgid "Make all function calls indirect." msgstr "" -#: config/nios2/nios2.opt:530 -msgid "Do not use the frdxhi custom instruction." +#: config/i386/i386.opt:1042 +msgid "Convert indirect call and jump to call and return thunks." msgstr "" -#: config/nios2/nios2.opt:534 -msgid "Integer id (N) of frdxhi custom instruction." +#: config/i386/i386.opt:1046 +msgid "Convert function return to call and return thunk." msgstr "" -#: config/nios2/nios2.opt:538 -msgid "Do not use the frdxlo custom instruction." +#: config/i386/i386.opt:1050 config/s390/s390.opt:268 +msgid "" +"Known indirect branch choices (for use with the -mindirect-branch=/-" +"mfunction-return= options):" msgstr "" -#: config/nios2/nios2.opt:542 -msgid "Integer id (N) of frdxlo custom instruction." +#: config/i386/i386.opt:1066 +msgid "Force indirect call and jump via register." msgstr "" -#: config/nios2/nios2.opt:546 -msgid "Do not use the fwry custom instruction." +#: config/i386/i386.opt:1070 +msgid "Support MOVDIRI built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:550 -msgid "Integer id (N) of fwry custom instruction." +#: config/i386/i386.opt:1074 +msgid "Support MOVDIR64B built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:554 -msgid "Do not use the fwrx custom instruction." +#: config/i386/i386.opt:1078 +msgid "Support WAITPKG built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:558 -msgid "Integer id (N) of fwrx custom instruction." +#: config/i386/i386.opt:1082 +msgid "Support CLDEMOTE built-in functions and code generation." msgstr "" -#: config/nios2/nios2.opt:562 -msgid "Do not use the round custom instruction." +#: config/i386/i386.opt:1086 +msgid "Instrument function exit in instrumented functions with __fentry__." msgstr "" -#: config/nios2/nios2.opt:566 -msgid "Integer id (N) of round custom instruction." +#: config/i386/i386.opt:1090 +msgid "Known choices for return instrumentation with -minstrument-return=:" msgstr "" -#: config/nios2/nios2.opt:574 -msgid "Valid Nios II ISA levels (for -march):" +#: config/i386/i386.opt:1103 +msgid "" +"Generate a __return_loc section pointing to all return instrumentation code." msgstr "" -#: config/nios2/nios2.opt:584 -msgid "Enable generation of R2 BMX instructions." +#: config/pa/pa64-hpux.opt:23 +msgid "Assume code will be linked by GNU ld." msgstr "" -#: config/nios2/nios2.opt:588 -msgid "Enable generation of R2 CDX instructions." +#: config/pa/pa64-hpux.opt:27 +msgid "Assume code will be linked by HP ld." msgstr "" -#: config/nios2/nios2.opt:592 -msgid "Regular expression matching additional GP-addressible section names." +#: config/pa/pa-hpux1010.opt:23 config/pa/pa-hpux.opt:31 +#: config/pa/pa-hpux1131.opt:23 config/pa/pa-hpux1111.opt:23 +msgid "Specify UNIX standard for predefines and linking." msgstr "" -#: config/nios2/nios2.opt:596 -msgid "Regular expression matching section names for r0-relative addressing." +#: config/pa/pa-hpux.opt:27 +msgid "Generate cpp defines for server IO." msgstr "" -#: config/lm32/lm32.opt:24 -msgid "Enable multiply instructions." +#: config/pa/pa-hpux.opt:35 +msgid "Generate cpp defines for workstation IO." msgstr "" -#: config/lm32/lm32.opt:28 -msgid "Enable divide and modulus instructions." +#: config/pa/pa.opt:30 config/pa/pa.opt:87 config/pa/pa.opt:95 +msgid "Generate PA1.0 code." msgstr "" -#: config/lm32/lm32.opt:32 -msgid "Enable barrel shift instructions." +#: config/pa/pa.opt:34 config/pa/pa.opt:99 config/pa/pa.opt:140 +msgid "Generate PA1.1 code." msgstr "" -#: config/lm32/lm32.opt:36 -msgid "Enable sign extend instructions." +#: config/pa/pa.opt:38 config/pa/pa.opt:103 +msgid "Generate PA2.0 code (requires binutils 2.10 or later)." msgstr "" -#: config/lm32/lm32.opt:40 -msgid "Enable user-defined instructions." +#: config/pa/pa.opt:46 +msgid "Caller copies function arguments passed by hidden reference." msgstr "" -#: config/msp430/msp430.opt:7 -msgid "Force assembly output to always use hex constants." +#: config/pa/pa.opt:50 +msgid "Disable FP regs." msgstr "" -#: config/msp430/msp430.opt:11 -msgid "Specify the MCU to build for." +#: config/pa/pa.opt:54 +msgid "Disable indexed addressing." msgstr "" -#: config/msp430/msp430.opt:15 -msgid "" -"Warn if an MCU name is unrecognized or conflicts with other options " -"(default: on)." +#: config/pa/pa.opt:58 +msgid "Generate fast indirect calls." msgstr "" -#: config/msp430/msp430.opt:19 -msgid "Specify the ISA to build for: msp430, msp430x, msp430xv2." +#: config/pa/pa.opt:66 +msgid "Assume code will be assembled by GAS." msgstr "" -#: config/msp430/msp430.opt:23 -msgid "Select large model - 20-bit addresses/pointers." +#: config/pa/pa.opt:75 +msgid "Enable linker optimizations." msgstr "" -#: config/msp430/msp430.opt:27 -msgid "Select small model - 16-bit addresses/pointers (default)." +#: config/pa/pa.opt:79 +msgid "Always generate long calls." msgstr "" -#: config/msp430/msp430.opt:31 -msgid "Optimize opcode sizes at link time." +#: config/pa/pa.opt:83 +msgid "Emit long load/store sequences." msgstr "" -#: config/msp430/msp430.opt:38 -msgid "" -"Use a minimum runtime (no static initializers or ctors) for memory-" -"constrained devices." +#: config/pa/pa.opt:91 +msgid "Disable space regs." msgstr "" -#: config/msp430/msp430.opt:45 -msgid "Specify the type of hardware multiply to support." +#: config/pa/pa.opt:107 +msgid "Use portable calling conventions." msgstr "" -#: config/msp430/msp430.opt:67 -msgid "Specify whether functions should be placed into low or high memory." +#: config/pa/pa.opt:111 +msgid "" +"Specify CPU for scheduling purposes. Valid arguments are 700, 7100, 7100LC, " +"7200, 7300, and 8000." msgstr "" -#: config/msp430/msp430.opt:71 -msgid "Specify whether variables should be placed into low or high memory." +#: config/pa/pa.opt:136 config/frv/frv.opt:215 +msgid "Use software floating point." msgstr "" -#: config/msp430/msp430.opt:90 -msgid "" -"Passes on a request to the assembler to enable fixes for various silicon " -"errata." +#: config/pa/pa.opt:144 +msgid "Do not disable space regs." msgstr "" -#: config/msp430/msp430.opt:94 -msgid "" -"Passes on a request to the assembler to warn about various silicon errata." +#: config/v850/v850.opt:29 +msgid "Use registers r2 and r5." msgstr "" -#: config/gcn/gcn.opt:26 -msgid "GCN GPU type to use:" +#: config/v850/v850.opt:33 +msgid "Use 4 byte entries in switch tables." msgstr "" -#: config/gcn/gcn.opt:39 config/gcn/gcn.opt:43 -msgid "Specify the name of the target GPU." +#: config/v850/v850.opt:37 +msgid "Enable backend debugging." msgstr "" -#: config/gcn/gcn.opt:47 config/nvptx/nvptx.opt:22 -msgid "Generate code for a 32-bit ABI." +#: config/v850/v850.opt:41 +msgid "Do not use the callt instruction (default)." msgstr "" -#: config/gcn/gcn.opt:51 config/nvptx/nvptx.opt:26 -msgid "Generate code for a 64-bit ABI." +#: config/v850/v850.opt:45 +msgid "Reuse r30 on a per function basis." msgstr "" -#: config/gcn/gcn.opt:55 -msgid "Enable OpenMP GPU offloading." +#: config/v850/v850.opt:52 +msgid "Prohibit PC relative function calls." msgstr "" -#: config/gcn/gcn.opt:71 -msgid "" -"-mstack-size=\tSet the private segment size per wave-front, in bytes." +#: config/v850/v850.opt:56 +msgid "Use stubs for function prologues." msgstr "" -#: config/gcn/gcn.opt:78 -msgid "Warn about invalid OpenACC dimensions." +#: config/v850/v850.opt:60 +msgid "Set the max size of data eligible for the SDA area." msgstr "" -#: config/rx/rx.opt:29 -msgid "Store doubles in 64 bits." +#: config/v850/v850.opt:67 +msgid "Enable the use of the short load instructions." msgstr "" -#: config/rx/rx.opt:33 -msgid "Stores doubles in 32 bits. This is the default." +#: config/v850/v850.opt:71 +msgid "Same as: -mep -mprolog-function." msgstr "" -#: config/rx/rx.opt:37 -msgid "Disable the use of RX FPU instructions." +#: config/v850/v850.opt:75 +msgid "Set the max size of data eligible for the TDA area." msgstr "" -#: config/rx/rx.opt:44 -msgid "Enable the use of RX FPU instructions. This is the default." +#: config/v850/v850.opt:82 +msgid "Do not enforce strict alignment." msgstr "" -#: config/rx/rx.opt:50 -msgid "Specify the target RX cpu type." +#: config/v850/v850.opt:86 +msgid "" +"Put jump tables for switch statements into the .data section rather than " +"the .code section." msgstr "" -#: config/rx/rx.opt:71 -msgid "Data is stored in big-endian format." +#: config/v850/v850.opt:93 +msgid "Compile for the v850 processor." msgstr "" -#: config/rx/rx.opt:75 -msgid "Data is stored in little-endian format. (Default)." +#: config/v850/v850.opt:97 +msgid "Compile for the v850e processor." msgstr "" -#: config/rx/rx.opt:81 -msgid "" -"Maximum size of global and static variables which can be placed into the " -"small data area." +#: config/v850/v850.opt:101 +msgid "Compile for the v850e1 processor." msgstr "" -#: config/rx/rx.opt:87 config/rl78/rl78.opt:27 -msgid "Use the simulator runtime." +#: config/v850/v850.opt:105 +msgid "Compile for the v850es variant of the v850e1." msgstr "" -#: config/rx/rx.opt:93 -msgid "" -"Generate assembler output that is compatible with the Renesas AS100 " -"assembler. This may restrict some of the compiler's capabilities. The " -"default is to generate GAS compatible syntax." +#: config/v850/v850.opt:109 +msgid "Compile for the v850e2 processor." msgstr "" -#: config/rx/rx.opt:99 -msgid "Enable linker relaxation." +#: config/v850/v850.opt:113 +msgid "Compile for the v850e2v3 processor." msgstr "" -#: config/rx/rx.opt:105 -msgid "Maximum size in bytes of constant values allowed as operands." +#: config/v850/v850.opt:117 +msgid "Compile for the v850e3v5 processor." msgstr "" -#: config/rx/rx.opt:111 -msgid "Specifies the number of registers to reserve for interrupt handlers." +#: config/v850/v850.opt:124 +msgid "Enable v850e3v5 loop instructions." msgstr "" -#: config/rx/rx.opt:117 -msgid "" -"Specifies whether interrupt functions should save and restore the " -"accumulator register." +#: config/v850/v850.opt:128 +msgid "Set the max size of data eligible for the ZDA area." msgstr "" -#: config/rx/rx.opt:123 -msgid "Enables Position-Independent-Data (PID) mode." +#: config/v850/v850.opt:135 +msgid "Enable relaxing in the assembler." msgstr "" -#: config/rx/rx.opt:129 -msgid "" -"Warn when multiple, different, fast interrupt handlers are in the " -"compilation unit." +#: config/v850/v850.opt:139 +msgid "Prohibit PC relative jumps." msgstr "" -#: config/rx/rx.opt:135 -msgid "" -"Enable the use of the old, broken, ABI where all stacked function arguments " -"are aligned to 32-bits." +#: config/v850/v850.opt:143 +msgid "Inhibit the use of hardware floating point instructions." msgstr "" -#: config/rx/rx.opt:139 +#: config/v850/v850.opt:147 msgid "" -"Enable the use the standard RX ABI where all stacked function arguments are " -"naturally aligned. This is the default." +"Allow the use of hardware floating point instructions for V850E2V3 and up." msgstr "" -#: config/rx/rx.opt:145 -msgid "Enable the use of the LRA register allocator." +#: config/v850/v850.opt:151 +msgid "Enable support for the RH850 ABI. This is the default." msgstr "" -#: config/rx/rx.opt:151 -msgid "" -"Enables or disables the use of the SMOVF, SMOVB, SMOVU, SUNTIL, SWHILE and " -"RMPA instructions. Enabled by default." +#: config/v850/v850.opt:155 +msgid "Enable support for the old GCC ABI." msgstr "" -#: config/rx/rx.opt:157 -msgid "Always use JSR, never BSR, for calls." +#: config/v850/v850.opt:159 +msgid "Support alignments of up to 64-bits." msgstr "" -#: config/cr16/cr16.opt:23 -msgid "-msim Use simulator runtime." +#: config/g.opt:27 +msgid "" +"-G\tPut global and static data smaller than bytes into a " +"special section (on some targets)." msgstr "" -#: config/cr16/cr16.opt:27 -msgid "Generate SBIT, CBIT instructions." +#: config/lynx.opt:23 +msgid "Support legacy multi-threading." msgstr "" -#: config/cr16/cr16.opt:31 -msgid "Support multiply accumulate instructions." +#: config/lynx.opt:27 +msgid "Use shared libraries." msgstr "" -#: config/cr16/cr16.opt:38 -msgid "Treat data references as near, far or medium. medium is default." +#: config/lynx.opt:31 +msgid "Support multi-threading." msgstr "" -#: config/cr16/cr16.opt:42 -msgid "Generate code for CR16C architecture." +#: config/nvptx/nvptx.opt:22 config/gcn/gcn.opt:47 +msgid "Generate code for a 32-bit ABI." msgstr "" -#: config/cr16/cr16.opt:46 -msgid "Generate code for CR16C+ architecture (Default)." +#: config/nvptx/nvptx.opt:26 config/gcn/gcn.opt:51 +msgid "Generate code for a 64-bit ABI." msgstr "" -#: config/cr16/cr16.opt:50 -msgid "Treat integers as 32-bit." +#: config/nvptx/nvptx.opt:30 +msgid "Link in code for a __main kernel." msgstr "" -#: config/pa/pa-hpux.opt:27 -msgid "Generate cpp defines for server IO." +#: config/nvptx/nvptx.opt:34 +msgid "Optimize partition neutering." msgstr "" -#: config/pa/pa-hpux.opt:31 config/pa/pa-hpux1131.opt:23 -#: config/pa/pa-hpux1111.opt:23 config/pa/pa-hpux1010.opt:23 -msgid "Specify UNIX standard for predefines and linking." +#: config/nvptx/nvptx.opt:38 +msgid "Use custom stacks instead of local memory for automatic storage." msgstr "" -#: config/pa/pa-hpux.opt:35 -msgid "Generate cpp defines for workstation IO." +#: config/nvptx/nvptx.opt:42 +msgid "" +"Specify size of .local memory used for stack when the exact amount is not " +"known." msgstr "" -#: config/pa/pa.opt:30 config/pa/pa.opt:87 config/pa/pa.opt:95 -msgid "Generate PA1.0 code." +#: config/nvptx/nvptx.opt:46 +msgid "Generate code that can keep local state uniform across all lanes." msgstr "" -#: config/pa/pa.opt:34 config/pa/pa.opt:99 config/pa/pa.opt:140 -msgid "Generate PA1.1 code." +#: config/nvptx/nvptx.opt:50 +msgid "" +"Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt." msgstr "" -#: config/pa/pa.opt:38 config/pa/pa.opt:103 -msgid "Generate PA2.0 code (requires binutils 2.10 or later)." +#: config/nvptx/nvptx.opt:54 +msgid "Known PTX ISA versions (for use with the -misa= option):" msgstr "" -#: config/pa/pa.opt:42 config/pa/pa.opt:70 common.opt:1167 common.opt:1375 -#: common.opt:1450 common.opt:1718 common.opt:1849 common.opt:2249 -#: common.opt:2285 common.opt:2378 common.opt:2382 common.opt:2487 -#: common.opt:2578 common.opt:2586 common.opt:2594 common.opt:2602 -#: common.opt:2703 common.opt:2755 common.opt:2843 common.opt:2980 -#: common.opt:2984 common.opt:2988 common.opt:2992 c-family/c.opt:1405 -#: c-family/c.opt:1437 c-family/c.opt:1685 fortran/lang.opt:763 -msgid "Does nothing. Preserved for backward compatibility." +#: config/nvptx/nvptx.opt:64 +msgid "Specify the version of the ptx ISA to use." msgstr "" -#: config/pa/pa.opt:46 -msgid "Caller copies function arguments passed by hidden reference." +#: config/vxworks.opt:36 +msgid "Assume the VxWorks RTP environment." msgstr "" -#: config/pa/pa.opt:50 -msgid "Disable FP regs." +#: config/vxworks.opt:43 +msgid "Assume the VxWorks vThreads environment." msgstr "" -#: config/pa/pa.opt:54 -msgid "Disable indexed addressing." +#: config/cr16/cr16.opt:23 +msgid "-msim Use simulator runtime." msgstr "" -#: config/pa/pa.opt:58 -msgid "Generate fast indirect calls." +#: config/cr16/cr16.opt:27 +msgid "Generate SBIT, CBIT instructions." msgstr "" -#: config/pa/pa.opt:66 -msgid "Assume code will be assembled by GAS." +#: config/cr16/cr16.opt:31 +msgid "Support multiply accumulate instructions." msgstr "" -#: config/pa/pa.opt:75 -msgid "Enable linker optimizations." +#: config/cr16/cr16.opt:38 +msgid "Treat data references as near, far or medium. medium is default." msgstr "" -#: config/pa/pa.opt:79 -msgid "Always generate long calls." +#: config/cr16/cr16.opt:42 +msgid "Generate code for CR16C architecture." msgstr "" -#: config/pa/pa.opt:83 -msgid "Emit long load/store sequences." +#: config/cr16/cr16.opt:46 +msgid "Generate code for CR16C+ architecture (Default)." msgstr "" -#: config/pa/pa.opt:91 -msgid "Disable space regs." +#: config/cr16/cr16.opt:50 +msgid "Treat integers as 32-bit." msgstr "" -#: config/pa/pa.opt:107 -msgid "Use portable calling conventions." +#: config/avr/avr.opt:23 +msgid "Use subroutines for function prologues and epilogues." msgstr "" -#: config/pa/pa.opt:111 -msgid "" -"Specify CPU for scheduling purposes. Valid arguments are 700, 7100, 7100LC, " -"7200, 7300, and 8000." +#: config/avr/avr.opt:27 +msgid "-mmcu=MCU\tSelect the target MCU." msgstr "" -#: config/pa/pa.opt:136 config/frv/frv.opt:215 -msgid "Use software floating point." +#: config/avr/avr.opt:31 +msgid "" +"Allow usage of __gcc_isr pseudo instructions in ISR prologues and epilogues." msgstr "" -#: config/pa/pa.opt:144 -msgid "Do not disable space regs." +#: config/avr/avr.opt:35 +msgid "Set the number of 64 KiB flash segments." msgstr "" -#: config/pa/pa64-hpux.opt:23 -msgid "Assume code will be linked by GNU ld." +#: config/avr/avr.opt:39 +msgid "Indicate presence of a processor erratum." msgstr "" -#: config/pa/pa64-hpux.opt:27 -msgid "Assume code will be linked by HP ld." +#: config/avr/avr.opt:43 +msgid "Enable Read-Modify-Write (RMW) instructions support/use." msgstr "" -#: config/vxworks.opt:36 -msgid "Assume the VxWorks RTP environment." +#: config/avr/avr.opt:53 +msgid "Use RJMP / RCALL even though CALL / JMP are available." msgstr "" -#: config/vxworks.opt:43 -msgid "Assume the VxWorks vThreads environment." +#: config/avr/avr.opt:57 +msgid "Use an 8-bit 'int' type." msgstr "" -#: config/aarch64/aarch64.opt:43 -msgid "The possible TLS dialects:" +#: config/avr/avr.opt:61 +msgid "Change the stack pointer without disabling interrupts." msgstr "" -#: config/aarch64/aarch64.opt:55 -msgid "The code model option names for -mcmodel:" +#: config/avr/avr.opt:65 +msgid "" +"Set the branch costs for conditional branch instructions. Reasonable values " +"are small, non-negative integers. The default branch cost is 0." msgstr "" -#: config/aarch64/aarch64.opt:76 -msgid "Workaround for ARM Cortex-A53 Erratum number 835769." +#: config/avr/avr.opt:69 +msgid "Treat main as if it had attribute OS_task." msgstr "" -#: config/aarch64/aarch64.opt:80 -msgid "Workaround for ARM Cortex-A53 Erratum number 843419." +#: config/avr/avr.opt:79 +msgid "Change only the low 8 bits of the stack pointer." msgstr "" -#: config/aarch64/aarch64.opt:92 -msgid "Don't assume that unaligned accesses are handled by the system." +#: config/avr/avr.opt:83 +msgid "Relax branches." msgstr "" -#: config/aarch64/aarch64.opt:100 -msgid "Specify TLS dialect." +#: config/avr/avr.opt:87 +msgid "" +"Make the linker relaxation machine assume that a program counter wrap-around " +"occurs." msgstr "" -#: config/aarch64/aarch64.opt:104 +#: config/avr/avr.opt:91 msgid "" -"Specifies bit size of immediate TLS offsets. Valid values are 12, 24, 32, " -"48." +"Accumulate outgoing function arguments and acquire/release the needed stack " +"space for outgoing function arguments in function prologue/epilogue. " +"Without this option, outgoing arguments are pushed before calling a function " +"and popped afterwards. This option can lead to reduced code size for " +"functions that call many functions that get their arguments on the stack " +"like, for example printf." msgstr "" -#: config/aarch64/aarch64.opt:123 -msgid "Use features of architecture ARCH." +#: config/avr/avr.opt:95 +msgid "" +"When accessing RAM, use X as imposed by the hardware, i.e. just use pre-" +"decrement, post-increment and indirect addressing with the X register. " +"Without this option, the compiler may assume that there is an addressing " +"mode X+const similar to Y+const and Z+const and emit instructions to emulate " +"such an addressing mode for X." msgstr "" -#: config/aarch64/aarch64.opt:127 -msgid "Use features of and optimize for CPU." +#: config/avr/avr.opt:100 +msgid "" +"The device has no SPH special function register. This option will be " +"overridden by the compiler driver with the correct setting if presence/" +"absence of SPH can be deduced from -mmcu=MCU." msgstr "" -#: config/aarch64/aarch64.opt:131 -msgid "Optimize for CPU." +#: config/avr/avr.opt:104 +msgid "Warn if the address space of an address is changed." msgstr "" -#: config/aarch64/aarch64.opt:135 -msgid "Generate code that conforms to the specified ABI." +#: config/avr/avr.opt:108 +msgid "" +"Warn if the ISR is misspelled, i.e. without __vector prefix. Enabled by " +"default." msgstr "" -#: config/aarch64/aarch64.opt:139 +#: config/avr/avr.opt:112 msgid "" -"-moverride=\tPower users only! Override CPU optimization parameters." +"Allow to use truncation instead of rounding towards zero for fractional " +"fixed-point types." msgstr "" -#: config/aarch64/aarch64.opt:143 -msgid "Known AArch64 ABIs (for use with the -mabi= option):" +#: config/avr/avr.opt:116 +msgid "" +"Assume that all data in static storage can be accessed by LDS / STS. This " +"option is only useful for reduced Tiny devices." msgstr "" -#: config/aarch64/aarch64.opt:153 -msgid "PC relative literal loads." +#: config/avr/avr.opt:120 +msgid "Do not link against the device-specific library lib.a." msgstr "" -#: config/aarch64/aarch64.opt:157 -msgid "Use branch-protection features." +#: config/m32r/m32r.opt:34 +msgid "Compile for the m32rx." msgstr "" -#: config/aarch64/aarch64.opt:161 -msgid "Select return address signing scope." +#: config/m32r/m32r.opt:38 +msgid "Compile for the m32r2." msgstr "" -#: config/aarch64/aarch64.opt:165 -msgid "" -"Supported AArch64 return address signing scope (for use with -msign-return-" -"address= option):" +#: config/m32r/m32r.opt:42 +msgid "Compile for the m32r." msgstr "" -#: config/aarch64/aarch64.opt:178 -msgid "" -"Enable the reciprocal square root approximation. Enabling this reduces " -"precision of reciprocal square root results to about 16 bits for single " -"precision and to 32 bits for double precision." +#: config/m32r/m32r.opt:46 +msgid "Align all loops to 32 byte boundary." msgstr "" -#: config/aarch64/aarch64.opt:184 -msgid "" -"Enable the square root approximation. Enabling this reduces precision of " -"square root results to about 16 bits for single precision and to 32 bits for " -"double precision. If enabled, it implies -mlow-precision-recip-sqrt." +#: config/m32r/m32r.opt:50 +msgid "Prefer branches over conditional execution." msgstr "" -#: config/aarch64/aarch64.opt:191 -msgid "" -"Enable the division approximation. Enabling this reduces precision of " -"division results to about 16 bits for single precision and to 32 bits for " -"double precision." +#: config/m32r/m32r.opt:54 +msgid "Give branches their default cost." msgstr "" -#: config/aarch64/aarch64.opt:197 -msgid "The possible SVE vector lengths:" +#: config/m32r/m32r.opt:58 +msgid "Display compile time statistics." msgstr "" -#: config/aarch64/aarch64.opt:219 -msgid "" -"-msve-vector-bits=\tSet the number of bits in an SVE vector register." +#: config/m32r/m32r.opt:62 +msgid "Specify cache flush function." msgstr "" -#: config/aarch64/aarch64.opt:223 -msgid "Enables verbose cost model dumping in the debug dump files." +#: config/m32r/m32r.opt:66 +msgid "Specify cache flush trap number." msgstr "" -#: config/aarch64/aarch64.opt:227 -msgid "Generate code to track when the CPU might be speculating incorrectly." +#: config/m32r/m32r.opt:70 +msgid "Only issue one instruction per cycle." msgstr "" -#: config/aarch64/aarch64.opt:235 config/rs6000/rs6000.opt:546 -msgid "Valid arguments to -mstack-protector-guard=:" +#: config/m32r/m32r.opt:74 +msgid "Allow two instructions to be issued per cycle." msgstr "" -#: config/aarch64/aarch64.opt:245 -msgid "" -"Use the system register specified on the command line as the stack protector " -"guard register. This option is for use with fstack-protector-strong and not " -"for use in user-land code." +#: config/m32r/m32r.opt:78 +msgid "Code size: small, medium or large." msgstr "" -#: config/aarch64/aarch64.opt:251 -msgid "" -"Use an immediate to offset from the stack protector guard register, sp_el0. " -"This option is for use with fstack-protector-strong and not for use in user-" -"land code." +#: config/m32r/m32r.opt:94 +msgid "Don't call any cache flush functions." msgstr "" -#: config/h8300/h8300.opt:23 -msgid "Generate H8S code." +#: config/m32r/m32r.opt:98 +msgid "Don't call any cache flush trap." msgstr "" -#: config/h8300/h8300.opt:27 -msgid "Generate H8SX code." +#: config/m32r/m32r.opt:105 +msgid "Small data area: none, sdata, use." msgstr "" -#: config/h8300/h8300.opt:31 -msgid "Generate H8S/2600 code." +#: config/s390/tpf.opt:23 +msgid "Enable TPF-OS tracing code." msgstr "" -#: config/h8300/h8300.opt:35 -msgid "Make integers 32 bits wide." +#: config/s390/tpf.opt:27 +msgid "Specify main object for TPF-OS." msgstr "" -#: config/h8300/h8300.opt:42 -msgid "Use registers for argument passing." +#: config/s390/s390.opt:48 +msgid "31 bit ABI." msgstr "" -#: config/h8300/h8300.opt:46 -msgid "Consider access to byte sized memory slow." +#: config/s390/s390.opt:52 +msgid "64 bit ABI." msgstr "" -#: config/h8300/h8300.opt:50 -msgid "Enable linker relaxing." +#: config/s390/s390.opt:120 +msgid "Maintain backchain pointer." msgstr "" -#: config/h8300/h8300.opt:54 -msgid "Generate H8/300H code." +#: config/s390/s390.opt:124 +msgid "Additional debug prints." msgstr "" -#: config/h8300/h8300.opt:58 -msgid "Enable the normal mode." +#: config/s390/s390.opt:128 +msgid "ESA/390 architecture." msgstr "" -#: config/h8300/h8300.opt:62 -msgid "Use H8/300 alignment rules." +#: config/s390/s390.opt:132 +msgid "Enable decimal floating point hardware support." msgstr "" -#: config/h8300/h8300.opt:66 -msgid "Push extended registers on stack in monitor functions." +#: config/s390/s390.opt:136 +msgid "Enable hardware floating point." msgstr "" -#: config/h8300/h8300.opt:70 -msgid "Do not push extended registers on stack in monitor functions." +#: config/s390/s390.opt:140 +msgid "" +"Takes two non-negative integer numbers separated by a comma. Prepend the " +"function label with the number of two-byte Nop instructions indicated by the " +"first. Append Nop instructions covering the number of halfwords indicated " +"by the second after the label. Nop instructions of the largest possible " +"size are used (six, four or two bytes), beginning with the largest possible " +"size. Using 0 for both values disables hotpatching." msgstr "" -#: config/nvptx/nvptx.opt:30 -msgid "Link in code for a __main kernel." +#: config/s390/s390.opt:158 +msgid "Use hardware transactional execution instructions." msgstr "" -#: config/nvptx/nvptx.opt:34 -msgid "Optimize partition neutering." +#: config/s390/s390.opt:162 +msgid "Use hardware vector facility instructions and enable the vector ABI." msgstr "" -#: config/nvptx/nvptx.opt:38 -msgid "Use custom stacks instead of local memory for automatic storage." +#: config/s390/s390.opt:166 +msgid "Use packed stack layout." msgstr "" -#: config/nvptx/nvptx.opt:42 -msgid "" -"Specify size of .local memory used for stack when the exact amount is not " -"known." +#: config/s390/s390.opt:170 +msgid "Use bras for executable < 64k." msgstr "" -#: config/nvptx/nvptx.opt:46 -msgid "Generate code that can keep local state uniform across all lanes." +#: config/s390/s390.opt:174 +msgid "Disable hardware floating point." msgstr "" -#: config/nvptx/nvptx.opt:50 +#: config/s390/s390.opt:178 msgid "" -"Generate code for OpenMP offloading: enables -msoft-stack and -muniform-simt." +"Set the max. number of bytes which has to be left to stack size before a " +"trap instruction is triggered." msgstr "" -#: config/nvptx/nvptx.opt:54 -msgid "Known PTX ISA versions (for use with the -misa= option):" +#: config/s390/s390.opt:182 +msgid "Switches off the -mstack-guard= option." msgstr "" -#: config/nvptx/nvptx.opt:64 -msgid "Specify the version of the ptx ISA to use." +#: config/s390/s390.opt:186 +msgid "" +"Emit extra code in the function prologue in order to trap if the stack size " +"exceeds the given limit." msgstr "" -#: config/vax/vax.opt:23 config/vax/vax.opt:27 -msgid "Target DFLOAT double precision code." +#: config/s390/s390.opt:190 +msgid "Switches off the -mstack-size= option." msgstr "" -#: config/vax/vax.opt:31 config/vax/vax.opt:35 -msgid "Generate GFLOAT double precision code." +#: config/s390/s390.opt:198 +msgid "Use the mvcle instruction for block moves." msgstr "" -#: config/vax/vax.opt:39 -msgid "Generate code for GNU assembler (gas)." +#: config/s390/s390.opt:202 +msgid "" +"Enable the z vector language extension providing the context-sensitive " +"vector macro and enable the Altivec-style builtins in vecintrin.h." msgstr "" -#: config/vax/vax.opt:43 -msgid "Generate code for UNIX assembler." +#: config/s390/s390.opt:207 +msgid "Warn if a function uses alloca or creates an array with dynamic size." msgstr "" -#: config/vax/vax.opt:47 -msgid "Use VAXC structure conventions." +#: config/s390/s390.opt:211 +msgid "Warn if a single function's framesize exceeds the given framesize." msgstr "" -#: config/vax/vax.opt:51 -msgid "Use new adddi3/subdi3 patterns." +#: config/s390/s390.opt:215 +msgid "z/Architecture." msgstr "" -#: config/linux.opt:24 -msgid "Use Bionic C library." +#: config/s390/s390.opt:219 +msgid "" +"Set the branch costs for conditional branch instructions. Reasonable values " +"are small, non-negative integers. The default branch cost is 1." msgstr "" -#: config/linux.opt:28 -msgid "Use GNU C library." +#: config/s390/s390.opt:229 config/arm/arm.opt:172 +msgid "Assume data segments are relative to text segment." msgstr "" -#: config/linux.opt:32 -msgid "Use uClibc C library." +#: config/s390/s390.opt:234 +msgid "" +"Wrap all indirect branches into execute in order to disable branch " +"prediction." msgstr "" -#: config/linux.opt:36 -msgid "Use musl C library." +#: config/s390/s390.opt:239 +msgid "" +"Wrap indirect table jumps and computed gotos into execute in order to " +"disable branch prediction. Using thunk or thunk-extern with this option " +"requires the thunks to be considered signal handlers to order to generate " +"correct CFI. For environments where unwinding (e.g. for exceptions) is " +"required please use thunk-inline instead." msgstr "" -#: config/mmix/mmix.opt:24 -msgid "For intrinsics library: pass all parameters in registers." +#: config/s390/s390.opt:247 +msgid "" +"Wrap all indirect calls into execute in order to disable branch prediction." msgstr "" -#: config/mmix/mmix.opt:28 -msgid "Use register stack for parameters and return value." +#: config/s390/s390.opt:251 +msgid "" +"Wrap all indirect return branches into execute in order to disable branch " +"prediction." msgstr "" -#: config/mmix/mmix.opt:32 -msgid "Use call-clobbered registers for parameters and return value." +#: config/s390/s390.opt:256 +msgid "" +"Wrap indirect return branches into execute in order to disable branch " +"prediction. This affects only branches where the return address is going to " +"be restored from memory." msgstr "" -#: config/mmix/mmix.opt:37 -msgid "Use epsilon-respecting floating point compare instructions." +#: config/s390/s390.opt:262 +msgid "" +"Wrap indirect return branches into execute in order to disable branch " +"prediction. This affects only branches where the return address doesn't need " +"to be restored from memory." msgstr "" -#: config/mmix/mmix.opt:41 -msgid "Use zero-extending memory loads, not sign-extending ones." +#: config/s390/s390.opt:284 +msgid "" +"Generate sections .s390_indirect_jump, .s390_indirect_call, ." +"s390_return_reg, and .s390_return_mem to contain the indirect branch " +"locations which have been patched as part of using one of the -mindirect-" +"branch* or -mfunction-return* options. The sections consist of an array of " +"32 bit elements. Each entry holds the offset from the entry to the patched " +"location." msgstr "" -#: config/mmix/mmix.opt:45 +#: config/s390/s390.opt:293 msgid "" -"Generate divide results with reminder having the same sign as the divisor " -"(not the dividend)." +"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/mmix/mmix.opt:49 -msgid "Prepend global symbols with \":\" (for use with PREFIX)." +#: config/s390/s390.opt:298 +msgid "Generate __mcount_loc section with all _mcount and __fentry__ calls." msgstr "" -#: config/mmix/mmix.opt:53 -msgid "Do not provide a default start-address 0x100 of the program." +#: config/rl78/rl78.opt:27 config/rx/rx.opt:87 +msgid "Use the simulator runtime." msgstr "" -#: config/mmix/mmix.opt:57 -msgid "Link to emit program in ELF format (rather than mmo)." +#: config/rl78/rl78.opt:31 +msgid "" +"Selects the type of hardware multiplication and division to use (none/g13/" +"g14)." msgstr "" -#: config/mmix/mmix.opt:61 -msgid "Use P-mnemonics for branches statically predicted as taken." +#: config/rl78/rl78.opt:50 +msgid "Use all registers, reserving none for interrupt handlers." msgstr "" -#: config/mmix/mmix.opt:65 -msgid "Don't use P-mnemonics for branches." +#: config/rl78/rl78.opt:54 +msgid "Enable assembler and linker relaxation. Enabled by default at -Os." msgstr "" -#: config/mmix/mmix.opt:79 -msgid "Use addresses that allocate global registers." +#: config/rl78/rl78.opt:58 +msgid "" +"Selects the type of RL78 core being targeted (g10/g13/g14). The default is " +"the G14. If set, also selects the hardware multiply support to be used." msgstr "" -#: config/mmix/mmix.opt:83 -msgid "Do not use addresses that allocate global registers." +#: config/rl78/rl78.opt:77 +msgid "Alias for -mcpu=g10." msgstr "" -#: config/mmix/mmix.opt:87 -msgid "Generate a single exit point for each function." +#: config/rl78/rl78.opt:81 +msgid "Alias for -mcpu=g13." msgstr "" -#: config/mmix/mmix.opt:91 -msgid "Do not generate a single exit point for each function." +#: config/rl78/rl78.opt:85 config/rl78/rl78.opt:89 +msgid "Alias for -mcpu=g14." msgstr "" -#: config/mmix/mmix.opt:95 -msgid "Set start-address of the program." +#: config/rl78/rl78.opt:93 +msgid "" +"Assume ES is zero throughout program execution, use ES: for read-only data." msgstr "" -#: config/mmix/mmix.opt:99 -msgid "Set start-address of data." +#: config/rl78/rl78.opt:97 +msgid "Stores the MDUC registers in interrupt handlers for G13 target." msgstr "" -#: config/fr30/fr30.opt:23 -msgid "Assume small address space." +#: config/stormy16/stormy16.opt:24 +msgid "Provide libraries for the simulator." msgstr "" -#: config/pdp11/pdp11.opt:23 -msgid "Generate code for an 11/10." +#: config/arm/arm-tables.opt:25 +msgid "Known ARM CPUs (for use with the -mcpu= and -mtune= options):" msgstr "" -#: config/pdp11/pdp11.opt:27 -msgid "Generate code for an 11/40." +#: config/arm/arm-tables.opt:257 +msgid "Known ARM architectures (for use with the -march= option):" msgstr "" -#: config/pdp11/pdp11.opt:31 -msgid "Generate code for an 11/45." +#: config/arm/arm-tables.opt:354 +msgid "Known ARM FPUs (for use with the -mfpu= option):" msgstr "" -#: config/pdp11/pdp11.opt:35 -msgid "Return floating-point results in ac0 (fr0 in Unix assembler syntax)." +#: config/arm/arm.opt:35 +msgid "TLS dialect to use:" msgstr "" -#: config/pdp11/pdp11.opt:39 -msgid "Use the DEC assembler syntax." +#: config/arm/arm.opt:45 +msgid "Specify an ABI." msgstr "" -#: config/pdp11/pdp11.opt:43 -msgid "Use the GNU assembler syntax." +#: config/arm/arm.opt:49 +msgid "Known ARM ABIs (for use with the -mabi= option):" msgstr "" -#: config/pdp11/pdp11.opt:47 config/frv/frv.opt:158 -#: config/rs6000/rs6000.opt:188 -msgid "Use hardware floating point." +#: config/arm/arm.opt:68 +msgid "Generate a call to abort if a noreturn function returns." msgstr "" -#: config/pdp11/pdp11.opt:51 -msgid "Use 16 bit int." +#: config/arm/arm.opt:75 +msgid "Generate APCS conformant stack frames." msgstr "" -#: config/pdp11/pdp11.opt:55 -msgid "Use 32 bit int." +#: config/arm/arm.opt:79 +msgid "Generate re-entrant, PIC code." msgstr "" -#: config/pdp11/pdp11.opt:59 config/rs6000/rs6000.opt:184 -msgid "Do not use hardware floating point." +#: config/arm/arm.opt:95 +msgid "Generate code in 32 bit ARM state." msgstr "" -#: config/pdp11/pdp11.opt:63 -msgid "Target has split I&D." +#: config/arm/arm.opt:103 +msgid "Thumb: Assume non-static functions may be called from ARM code." msgstr "" -#: config/pdp11/pdp11.opt:67 -msgid "Use UNIX assembler syntax." +#: config/arm/arm.opt:107 +msgid "Thumb: Assume function pointers may go to non-Thumb aware code." msgstr "" -#: config/pdp11/pdp11.opt:71 -msgid "Use LRA register allocator." +#: config/arm/arm.opt:115 +msgid "Specify if floating point hardware should be used." msgstr "" -#: config/frv/frv.opt:30 -msgid "Use 4 media accumulators." +#: config/arm/arm.opt:119 +msgid "" +"Specify that the compiler should target secure code as per ARMv8-M Security " +"Extensions." msgstr "" -#: config/frv/frv.opt:34 -msgid "Use 8 media accumulators." +#: config/arm/arm.opt:123 +msgid "Known floating-point ABIs (for use with the -mfloat-abi= option):" msgstr "" -#: config/frv/frv.opt:38 -msgid "Enable label alignment optimizations." +#: config/arm/arm.opt:136 +msgid "Switch ARM/Thumb modes on alternating functions for compiler testing." msgstr "" -#: config/frv/frv.opt:42 -msgid "Dynamically allocate cc registers." +#: config/arm/arm.opt:140 +msgid "Specify the __fp16 floating-point format." msgstr "" -#: config/frv/frv.opt:49 -msgid "Set the cost of branches." +#: config/arm/arm.opt:144 +msgid "Known __fp16 formats (for use with the -mfp16-format= option):" msgstr "" -#: config/frv/frv.opt:53 -msgid "Enable conditional execution other than moves/scc." +#: config/arm/arm.opt:157 +msgid "Specify the name of the target floating point hardware/format." msgstr "" -#: config/frv/frv.opt:57 -msgid "Change the maximum length of conditionally-executed sequences." +#: config/arm/arm.opt:168 +msgid "Generate call insns as indirect calls, if necessary." msgstr "" -#: config/frv/frv.opt:61 -msgid "" -"Change the number of temporary registers that are available to conditionally-" -"executed sequences." +#: config/arm/arm.opt:176 +msgid "Specify the register to be used for PIC addressing." msgstr "" -#: config/frv/frv.opt:65 -msgid "Enable conditional moves." +#: config/arm/arm.opt:180 +msgid "Store function names in object code." msgstr "" -#: config/frv/frv.opt:69 -msgid "Set the target CPU type." +#: config/arm/arm.opt:184 +msgid "Permit scheduling of a function's prologue sequence." msgstr "" -#: config/frv/frv.opt:73 -msgid "Known FR-V CPUs (for use with the -mcpu= option):" +#: config/arm/arm.opt:188 config/rs6000/rs6000.opt:240 +msgid "Do not load the PIC register in function prologues." msgstr "" -#: config/frv/frv.opt:122 -msgid "Use fp double instructions." +#: config/arm/arm.opt:195 +msgid "Specify the minimum bit alignment of structures. (Deprecated)." msgstr "" -#: config/frv/frv.opt:126 -msgid "Change the ABI to allow double word insns." +#: config/arm/arm.opt:199 +msgid "Generate code for Thumb state." msgstr "" -#: config/frv/frv.opt:130 config/bfin/bfin.opt:90 -msgid "Enable Function Descriptor PIC mode." +#: config/arm/arm.opt:203 +msgid "Support calls between Thumb and ARM instruction sets." msgstr "" -#: config/frv/frv.opt:134 -msgid "Just use icc0/fcc0." +#: config/arm/arm.opt:207 +msgid "Specify thread local storage scheme." msgstr "" -#: config/frv/frv.opt:138 -msgid "Only use 32 FPRs." +#: config/arm/arm.opt:211 +msgid "Specify how to access the thread pointer." msgstr "" -#: config/frv/frv.opt:142 -msgid "Use 64 FPRs." +#: config/arm/arm.opt:215 +msgid "Valid arguments to -mtp=:" msgstr "" -#: config/frv/frv.opt:146 -msgid "Only use 32 GPRs." +#: config/arm/arm.opt:228 +msgid "Thumb: Generate (non-leaf) stack frames even if not needed." msgstr "" -#: config/frv/frv.opt:150 -msgid "Use 64 GPRs." +#: config/arm/arm.opt:232 +msgid "Thumb: Generate (leaf) stack frames even if not needed." msgstr "" -#: config/frv/frv.opt:154 -msgid "Enable use of GPREL for read-only data in FDPIC." +#: config/arm/arm.opt:236 config/mn10300/mn10300.opt:42 +msgid "Tune code for the given processor." msgstr "" -#: config/frv/frv.opt:162 config/bfin/bfin.opt:94 -msgid "Enable inlining of PLT in function calls." +#: config/arm/arm.opt:240 +msgid "" +"Print CPU tuning information as comment in assembler file. This is an " +"option used only for regression testing of the compiler and not intended for " +"ordinary use in compiling code." msgstr "" -#: config/frv/frv.opt:166 -msgid "Enable PIC support for building libraries." +#: config/arm/arm.opt:251 +msgid "" +"Use Neon quad-word (rather than double-word) registers for vectorization." msgstr "" -#: config/frv/frv.opt:170 -msgid "Follow the EABI linkage requirements." +#: config/arm/arm.opt:255 +msgid "" +"Use Neon double-word (rather than quad-word) registers for vectorization." msgstr "" -#: config/frv/frv.opt:174 -msgid "Disallow direct calls to global functions." +#: config/arm/arm.opt:259 +msgid "" +"Enable more verbose RTX cost dumps during debug. For GCC developers use " +"only." msgstr "" -#: config/frv/frv.opt:178 -msgid "Use media instructions." +#: config/arm/arm.opt:263 +msgid "Only generate absolute relocations on word sized values." msgstr "" -#: config/frv/frv.opt:182 -msgid "Use multiply add/subtract instructions." +#: config/arm/arm.opt:267 +msgid "Generate IT blocks appropriate for ARMv8." msgstr "" -#: config/frv/frv.opt:186 -msgid "Enable optimizing &&/|| in conditional execution." +#: config/arm/arm.opt:271 +msgid "" +"Avoid overlapping destination and address registers on LDRD instructions " +"that may trigger Cortex-M3 errata." msgstr "" -#: config/frv/frv.opt:190 -msgid "Enable nested conditional execution optimizations." +#: config/arm/arm.opt:276 config/nds32/nds32.opt:461 config/arc/arc.opt:496 +msgid "Enable unaligned word and halfword accesses to packed data." msgstr "" -#: config/frv/frv.opt:195 -msgid "Do not mark ABI switches in e_flags." +#: config/arm/arm.opt:280 +msgid "Use Neon to perform 64-bits operations rather than core registers." msgstr "" -#: config/frv/frv.opt:199 -msgid "Remove redundant membars." +#: config/arm/arm.opt:284 +msgid "Assume loading data from flash is slower than fetching instructions." msgstr "" -#: config/frv/frv.opt:203 -msgid "Pack VLIW instructions." +#: config/arm/arm.opt:288 +msgid "Assume unified syntax for inline assembly code." msgstr "" -#: config/frv/frv.opt:207 -msgid "Enable setting GPRs to the result of comparisons." +#: config/arm/arm.opt:292 +msgid "Do not allow constant data to be placed in code sections." msgstr "" -#: config/frv/frv.opt:211 -msgid "Change the amount of scheduler lookahead." +#: config/arm/arm.opt:296 +msgid "When linking for big-endian targets, generate a BE8 format image." msgstr "" -#: config/frv/frv.opt:219 -msgid "Assume a large TLS segment." +#: config/arm/arm.opt:300 +msgid "" +"When linking for big-endian targets, generate a legacy BE32 format image." msgstr "" -#: config/frv/frv.opt:223 -msgid "Do not assume a large TLS segment." +#: config/arm/arm.opt:304 config/sh/sh.opt:195 +msgid "Cost to assume for a branch insn." msgstr "" -#: config/frv/frv.opt:228 -msgid "Cause gas to print tomcat statistics." +#: config/arm/arm.opt:308 +msgid "Generate code which uses the core registers only (r0-r14)." msgstr "" -#: config/frv/frv.opt:233 -msgid "Link with the library-pic libraries." +#: config/sparc/sparc.opt:30 config/sparc/sparc.opt:34 +#: config/visium/visium.opt:37 +msgid "Use hardware FP." msgstr "" -#: config/frv/frv.opt:237 -msgid "Allow branches to be packed with other instructions." +#: config/sparc/sparc.opt:38 config/visium/visium.opt:41 +msgid "Do not use hardware FP." msgstr "" -#: config/tilegx/tilegx.opt:30 -msgid "Known TILE-Gx CPUs (for use with the -mcpu= option):" +#: config/sparc/sparc.opt:42 +msgid "Use flat register window model." msgstr "" -#: config/tilegx/tilegx.opt:37 -msgid "Compile with 32 bit longs and pointers." +#: config/sparc/sparc.opt:46 +msgid "Assume possible double misalignment." msgstr "" -#: config/tilegx/tilegx.opt:41 -msgid "Compile with 64 bit longs and pointers." +#: config/sparc/sparc.opt:50 +msgid "Use ABI reserved registers." msgstr "" -#: config/tilegx/tilegx.opt:53 -msgid "Use given TILE-Gx code model." +#: config/sparc/sparc.opt:54 +msgid "Use hardware quad FP instructions." msgstr "" -#: config/lynx.opt:23 -msgid "Support legacy multi-threading." +#: config/sparc/sparc.opt:58 +msgid "Do not use hardware quad fp instructions." msgstr "" -#: config/lynx.opt:27 -msgid "Use shared libraries." +#: config/sparc/sparc.opt:62 +msgid "Enable Local Register Allocation." msgstr "" -#: config/lynx.opt:31 -msgid "Support multi-threading." +#: config/sparc/sparc.opt:66 +msgid "Compile for V8+ ABI." msgstr "" -#: config/stormy16/stormy16.opt:24 -msgid "Provide libraries for the simulator." +#: config/sparc/sparc.opt:70 +msgid "Use UltraSPARC Visual Instruction Set version 1.0 extensions." msgstr "" -#: config/bfin/bfin.opt:48 -msgid "Omit frame pointer for leaf functions." +#: config/sparc/sparc.opt:74 +msgid "Use UltraSPARC Visual Instruction Set version 2.0 extensions." msgstr "" -#: config/bfin/bfin.opt:52 -msgid "Program is entirely located in low 64k of memory." +#: config/sparc/sparc.opt:78 +msgid "Use UltraSPARC Visual Instruction Set version 3.0 extensions." msgstr "" -#: config/bfin/bfin.opt:56 -msgid "" -"Work around a hardware anomaly by adding a number of NOPs before a CSYNC or " -"SSYNC instruction." +#: config/sparc/sparc.opt:82 +msgid "Use UltraSPARC Visual Instruction Set version 4.0 extensions." msgstr "" -#: config/bfin/bfin.opt:61 -msgid "Avoid speculative loads to work around a hardware anomaly." +#: config/sparc/sparc.opt:86 +msgid "Use additional VIS instructions introduced in OSA2017." msgstr "" -#: config/bfin/bfin.opt:65 -msgid "Enabled ID based shared library." +#: config/sparc/sparc.opt:90 +msgid "Use UltraSPARC Compare-and-Branch extensions." msgstr "" -#: config/bfin/bfin.opt:69 -msgid "" -"Generate code that won't be linked against any other ID shared libraries, " -"but may be used as a shared library." +#: config/sparc/sparc.opt:94 +msgid "Use UltraSPARC Fused Multiply-Add extensions." msgstr "" -#: config/bfin/bfin.opt:86 -msgid "Link with the fast floating-point library." +#: config/sparc/sparc.opt:98 +msgid "Use Floating-point Multiply Single to Double (FsMULd) instruction." msgstr "" -#: config/bfin/bfin.opt:98 -msgid "Do stack checking using bounds in L1 scratch memory." +#: config/sparc/sparc.opt:102 +msgid "Use UltraSPARC Population-Count instruction." msgstr "" -#: config/bfin/bfin.opt:102 -msgid "Enable multicore support." +#: config/sparc/sparc.opt:106 +msgid "Use UltraSPARC Subtract-Extended-with-Carry instruction." msgstr "" -#: config/bfin/bfin.opt:106 -msgid "Build for Core A." +#: config/sparc/sparc.opt:110 +msgid "Pointers are 64-bit." msgstr "" -#: config/bfin/bfin.opt:110 -msgid "Build for Core B." +#: config/sparc/sparc.opt:114 +msgid "Pointers are 32-bit." msgstr "" -#: config/bfin/bfin.opt:114 -msgid "Build for SDRAM." +#: config/sparc/sparc.opt:118 +msgid "Use 64-bit ABI." msgstr "" -#: config/bfin/bfin.opt:118 -msgid "Assume ICPLBs are enabled at runtime." +#: config/sparc/sparc.opt:122 +msgid "Use 32-bit ABI." msgstr "" -#: config/cris/cris.opt:45 -msgid "Work around bug in multiplication instruction." +#: config/sparc/sparc.opt:126 +msgid "Use stack bias." msgstr "" -#: config/cris/cris.opt:51 -msgid "Compile for ETRAX 4 (CRIS v3)." +#: config/sparc/sparc.opt:130 +msgid "Use structs on stronger alignment for double-word copies." msgstr "" -#: config/cris/cris.opt:56 -msgid "Compile for ETRAX 100 (CRIS v8)." +#: config/sparc/sparc.opt:134 +msgid "Optimize tail call instructions in assembler and linker." msgstr "" -#: config/cris/cris.opt:64 -msgid "Emit verbose debug information in assembly code." +#: config/sparc/sparc.opt:138 +msgid "Do not generate code that can only run in supervisor mode (default)." msgstr "" -#: config/cris/cris.opt:71 -msgid "Do not use condition codes from normal instructions." +#: config/sparc/sparc.opt:142 +msgid "Use instructions of and schedule code for given CPU." msgstr "" -#: config/cris/cris.opt:80 -msgid "Do not emit addressing modes with side-effect assignment." +#: config/sparc/sparc.opt:225 +msgid "Use given SPARC-V9 code model." msgstr "" -#: config/cris/cris.opt:89 -msgid "Do not tune stack alignment." +#: config/sparc/sparc.opt:247 +msgid "Enable debug output." msgstr "" -#: config/cris/cris.opt:98 -msgid "Do not tune writable data alignment." +#: config/sparc/sparc.opt:251 +msgid "Enable strict 32-bit psABI struct return checking." msgstr "" -#: config/cris/cris.opt:107 -msgid "Do not tune code and read-only data alignment." +#: config/sparc/sparc.opt:255 +msgid "" +"Enable workaround for single erratum of AT697F processor (corresponding to " +"erratum #13 of AT697E processor)." msgstr "" -#: config/cris/cris.opt:116 -msgid "Align code and data to 32 bits." +#: config/sparc/sparc.opt:260 +msgid "Enable workarounds for the errata of the UT699 processor." msgstr "" -#: config/cris/cris.opt:133 -msgid "Don't align items in code or data." +#: config/sparc/sparc.opt:264 +msgid "Enable workarounds for the errata of the UT699E/UT700 processor." msgstr "" -#: config/cris/cris.opt:142 -msgid "Do not emit function prologue or epilogue." +#: config/sparc/sparc.opt:268 +msgid "Enable workarounds for the errata of the GR712RC processor." msgstr "" -#: config/cris/cris.opt:149 -msgid "Use the most feature-enabling options allowed by other options." +#: config/sparc/sparc.opt:305 +msgid "Specify the memory model in effect for the program." msgstr "" -#: config/cris/cris.opt:158 -msgid "Override -mbest-lib-options." +#: config/rs6000/darwin.opt:38 config/rs6000/sysv4.opt:145 +msgid "Generate 64-bit code." msgstr "" -#: config/cris/cris.opt:165 -msgid "-march=ARCH\tGenerate code for the specified chip or CPU version." +#: config/rs6000/darwin.opt:42 config/rs6000/sysv4.opt:149 +msgid "Generate 32-bit code." msgstr "" -#: config/cris/cris.opt:169 -msgid "-mtune=ARCH\tTune alignment for the specified chip or CPU version." +#: config/rs6000/rs6000-tables.opt:24 +msgid "Known CPUs (for use with the -mcpu= and -mtune= options):" msgstr "" -#: config/cris/cris.opt:173 +#: config/rs6000/476.opt:24 msgid "" -"-mmax-stackframe=SIZE\tWarn when a stackframe is larger than the specified " -"size." +"Preserve the PowerPC 476's link stack by matching up a blr with the bcl/bl " +"insns used for GOT accesses." msgstr "" -#: config/cris/cris.opt:180 -msgid "" -"Emit traps as \"break 8\", default for CRIS v3 and up. If disabled, calls " -"to abort() are used." +#: config/rs6000/aix64.opt:24 +msgid "Compile for 64-bit pointers." msgstr "" -#: config/cris/cris.opt:184 -msgid "" -"Emit checks causing \"break 8\" instructions to execute when applying atomic " -"builtins on misaligned memory." +#: config/rs6000/aix64.opt:28 +msgid "Compile for 32-bit pointers." msgstr "" -#: config/cris/cris.opt:188 -msgid "" -"Handle atomic builtins that may be applied to unaligned data by calling " -"library functions. Overrides -mtrap-unaligned-atomic." +#: config/rs6000/aix64.opt:32 config/rs6000/linux64.opt:28 +msgid "Select code model." msgstr "" -#: config/cris/linux.opt:27 -msgid "Together with -fpic and -fPIC, do not use GOTPLT references." +#: config/rs6000/aix64.opt:49 +msgid "Support message passing with the Parallel Environment." msgstr "" -#: config/rs6000/rs6000-tables.opt:24 -msgid "Known CPUs (for use with the -mcpu= and -mtune= options):" +#: config/rs6000/linux64.opt:24 +msgid "Call mcount for profiling before a function prologue." msgstr "" #: config/rs6000/rs6000.opt:121 @@ -11848,14 +12038,6 @@ msgstr "" msgid "Enable default conversions between __float128 & long double." msgstr "" -#: config/rs6000/darwin.opt:38 config/rs6000/sysv4.opt:145 -msgid "Generate 64-bit code." -msgstr "" - -#: config/rs6000/darwin.opt:42 config/rs6000/sysv4.opt:149 -msgid "Generate 32-bit code." -msgstr "" - #: config/rs6000/sysv4.opt:24 msgid "-mcall-ABI\tSelect ABI calling convention." msgstr "" @@ -11956,4995 +12138,4822 @@ msgstr "" msgid "Emit .gnu_attribute tags." msgstr "" -#: config/rs6000/aix64.opt:24 -msgid "Compile for 64-bit pointers." -msgstr "" - -#: config/rs6000/aix64.opt:28 -msgid "Compile for 32-bit pointers." -msgstr "" - -#: config/rs6000/aix64.opt:32 config/rs6000/linux64.opt:28 -msgid "Select code model." -msgstr "" - -#: config/rs6000/aix64.opt:49 -msgid "Support message passing with the Parallel Environment." -msgstr "" - -#: config/rs6000/linux64.opt:24 -msgid "Call mcount for profiling before a function prologue." -msgstr "" - -#: config/rs6000/476.opt:24 -msgid "" -"Preserve the PowerPC 476's link stack by matching up a blr with the bcl/bl " -"insns used for GOT accesses." -msgstr "" - -#: config/rl78/rl78.opt:31 -msgid "" -"Selects the type of hardware multiplication and division to use (none/g13/" -"g14)." -msgstr "" - -#: config/rl78/rl78.opt:50 -msgid "Use all registers, reserving none for interrupt handlers." +#: config/alpha/alpha.opt:27 +msgid "Use fp registers." msgstr "" -#: config/rl78/rl78.opt:54 -msgid "Enable assembler and linker relaxation. Enabled by default at -Os." +#: config/alpha/alpha.opt:35 +msgid "Request IEEE-conformant math library routines (OSF/1)." msgstr "" -#: config/rl78/rl78.opt:58 -msgid "" -"Selects the type of RL78 core being targeted (g10/g13/g14). The default is " -"the G14. If set, also selects the hardware multiply support to be used." +#: config/alpha/alpha.opt:39 +msgid "Emit IEEE-conformant code, without inexact exceptions." msgstr "" -#: config/rl78/rl78.opt:77 -msgid "Alias for -mcpu=g10." +#: config/alpha/alpha.opt:46 +msgid "Do not emit complex integer constants to read-only memory." msgstr "" -#: config/rl78/rl78.opt:81 -msgid "Alias for -mcpu=g13." +#: config/alpha/alpha.opt:50 +msgid "Use VAX fp." msgstr "" -#: config/rl78/rl78.opt:85 config/rl78/rl78.opt:89 -msgid "Alias for -mcpu=g14." +#: config/alpha/alpha.opt:54 +msgid "Do not use VAX fp." msgstr "" -#: config/rl78/rl78.opt:93 -msgid "" -"Assume ES is zero throughout program execution, use ES: for read-only data." +#: config/alpha/alpha.opt:58 +msgid "Emit code for the byte/word ISA extension." msgstr "" -#: config/rl78/rl78.opt:97 -msgid "Stores the MDUC registers in interrupt handlers for G13 target." +#: config/alpha/alpha.opt:62 +msgid "Emit code for the motion video ISA extension." msgstr "" -#: config/nds32/nds32-elf.opt:3 config/nds32/nds32-linux.opt:3 -msgid "Specify the address generation strategy for code model." +#: config/alpha/alpha.opt:66 +msgid "Emit code for the fp move and sqrt ISA extension." msgstr "" -#: config/nds32/nds32-elf.opt:7 config/nds32/nds32-linux.opt:7 -msgid "Known cmodel types (for use with the -mcmodel= option):" +#: config/alpha/alpha.opt:70 +msgid "Emit code for the counting ISA extension." msgstr "" -#: config/nds32/nds32.opt:29 config/nds32/nds32.opt:89 -msgid "Generate code in big-endian mode." +#: config/alpha/alpha.opt:74 +msgid "Emit code using explicit relocation directives." msgstr "" -#: config/nds32/nds32.opt:33 config/nds32/nds32.opt:93 -msgid "Generate code in little-endian mode." +#: config/alpha/alpha.opt:78 +msgid "Emit 16-bit relocations to the small data areas." msgstr "" -#: config/nds32/nds32.opt:37 -msgid "Force performing fp-as-gp optimization." +#: config/alpha/alpha.opt:82 +msgid "Emit 32-bit relocations to the small data areas." msgstr "" -#: config/nds32/nds32.opt:41 -msgid "Forbid performing fp-as-gp optimization." +#: config/alpha/alpha.opt:86 +msgid "Emit direct branches to local functions." msgstr "" -#: config/nds32/nds32.opt:47 -msgid "Specify which ABI type to generate code for: 2, 2fp+." +#: config/alpha/alpha.opt:90 +msgid "Emit indirect branches to local functions." msgstr "" -#: config/nds32/nds32.opt:61 -msgid "Specify use soft floating point ABI which mean alias to -mabi=2." +#: config/alpha/alpha.opt:94 +msgid "Emit rdval instead of rduniq for thread pointer." msgstr "" -#: config/nds32/nds32.opt:65 -msgid "Specify use soft floating point ABI which mean alias to -mabi=2fp+." +#: config/alpha/alpha.opt:106 +msgid "Use features of and schedule given CPU." msgstr "" -#: config/nds32/nds32.opt:71 -msgid "Use reduced-set registers for register allocation." +#: config/alpha/alpha.opt:110 +msgid "Schedule given CPU." msgstr "" -#: config/nds32/nds32.opt:75 -msgid "Use full-set registers for register allocation." +#: config/alpha/alpha.opt:114 +msgid "Control the generated fp rounding mode." msgstr "" -#: config/nds32/nds32.opt:81 -msgid "Always align function entry, jump target and return address." +#: config/alpha/alpha.opt:118 +msgid "Control the IEEE trap mode." msgstr "" -#: config/nds32/nds32.opt:85 -msgid "Align function entry to 4 byte." +#: config/alpha/alpha.opt:122 +msgid "Control the precision given to fp exceptions." msgstr "" -#: config/nds32/nds32.opt:97 -msgid "" -"Prevent $fp being allocated during register allocation so that compiler is " -"able to force performing fp-as-gp optimization." +#: config/alpha/alpha.opt:126 +msgid "Tune expected memory latency." msgstr "" -#: config/nds32/nds32.opt:101 +#: config/tilepro/tilepro.opt:23 msgid "" -"Forbid using $fp to access static and global variables. This option " -"strictly forbids fp-as-gp optimization regardless of '-mforce-fp-as-gp'." -msgstr "" - -#: config/nds32/nds32.opt:105 -msgid "Specify the address generation strategy for ICT call's code model." +"Compile with 32 bit longs and pointers, which is the only supported behavior " +"and thus the flag is ignored." msgstr "" -#: config/nds32/nds32.opt:109 -msgid "Known cmodel types (for use with the -mict-model= option):" +#: config/tilepro/tilepro.opt:28 config/tilegx/tilegx.opt:26 +msgid "-mcpu=CPU\tUse features of and schedule code for given CPU." msgstr "" -#: config/nds32/nds32.opt:119 -msgid "Generate conditional move instructions." +#: config/tilepro/tilepro.opt:32 +msgid "Known TILEPro CPUs (for use with the -mcpu= option):" msgstr "" -#: config/nds32/nds32.opt:123 -msgid "Generate hardware abs instructions." +#: config/lm32/lm32.opt:24 +msgid "Enable multiply instructions." msgstr "" -#: config/nds32/nds32.opt:127 -msgid "Generate performance extension instructions." +#: config/lm32/lm32.opt:28 +msgid "Enable divide and modulus instructions." msgstr "" -#: config/nds32/nds32.opt:131 -msgid "Generate performance extension version 2 instructions." +#: config/lm32/lm32.opt:32 +msgid "Enable barrel shift instructions." msgstr "" -#: config/nds32/nds32.opt:135 -msgid "Generate string extension instructions." +#: config/lm32/lm32.opt:36 +msgid "Enable sign extend instructions." msgstr "" -#: config/nds32/nds32.opt:139 -msgid "Generate DSP extension instructions." +#: config/lm32/lm32.opt:40 +msgid "Enable user-defined instructions." msgstr "" -#: config/nds32/nds32.opt:143 -msgid "Generate v3 push25/pop25 instructions." +#: config/or1k/elf.opt:28 +msgid "Configure board specific runtime." msgstr "" -#: config/nds32/nds32.opt:147 -msgid "Generate 16-bit instructions." +#: config/or1k/elf.opt:32 +msgid "For compatibility, it's always newlib for elf now." msgstr "" -#: config/nds32/nds32.opt:151 -msgid "Insert relax hint for linker to do relaxation." +#: config/or1k/or1k.opt:28 +msgid "Use hardware divide instructions, use -msoft-div for emulation." msgstr "" -#: config/nds32/nds32.opt:155 -msgid "Enable Virtual Hosting support." +#: config/or1k/or1k.opt:32 +msgid "Use hardware multiply instructions, use -msoft-mul for emulation." msgstr "" -#: config/nds32/nds32.opt:159 -msgid "Specify the size of each interrupt vector, which must be 4 or 16." +#: config/or1k/or1k.opt:36 +msgid "" +"Allows generation of binaries which use the l.cmov instruction. If your " +"target does not support this the compiler will generate the equivalent using " +"set and branch." msgstr "" -#: config/nds32/nds32.opt:163 -msgid "Specify the security level of c-isr for the whole file." +#: config/or1k/or1k.opt:42 +msgid "Allows generation of binaries which use the l.rori instructions." msgstr "" -#: config/nds32/nds32.opt:167 +#: config/or1k/or1k.opt:46 msgid "" -"Specify the size of each cache block, which must be a power of 2 between 4 " -"and 512." +"Allows generation of binaries which use sign-extension instructions. If " +"your target does not support this the compiler will use memory loads to " +"perform sign extension." msgstr "" -#: config/nds32/nds32.opt:175 -msgid "Known arch types (for use with the -march= option):" +#: config/or1k/or1k.opt:52 +msgid "" +"Allows generation of binaries which use l.sf*i instructions. If your target " +"does not support this the compiler will generate instructions to store the " +"immediate to a register first." msgstr "" -#: config/nds32/nds32.opt:197 -msgid "Specify the cpu for pipeline model." +#: config/or1k/or1k.opt:58 +msgid "" +"Allows generation of binaries which support shifts and rotate instructions " +"supporting immediate arguments, for example l.rori." msgstr "" -#: config/nds32/nds32.opt:201 -msgid "Known cpu types (for use with the -mcpu= option):" +#: config/or1k/or1k.opt:63 +msgid "Use divide emulation." msgstr "" -#: config/nds32/nds32.opt:361 -msgid "" -"Specify a fpu configuration value from 0 to 7; 0-3 is as FPU spec says, and " -"4-7 is corresponding to 0-3." +#: config/or1k/or1k.opt:67 +msgid "Use multiply emulation." msgstr "" -#: config/nds32/nds32.opt:365 -msgid "" -"Known floating-point number of registers (for use with the -mconfig-fpu= " -"option):" +#: config/nios2/elf.opt:26 +msgid "Link with a limited version of the C library." msgstr "" -#: config/nds32/nds32.opt:393 -msgid "" -"Specify configuration of instruction mul: fast1, fast2 or slow. The default " -"is fast1." +#: config/nios2/elf.opt:30 +msgid "Name of system library to link against." msgstr "" -#: config/nds32/nds32.opt:412 -msgid "" -"Specify how many read/write ports for n9/n10 cores. The value should be " -"3r2w or 2r1w." +#: config/nios2/elf.opt:34 +msgid "Name of the startfile." msgstr "" -#: config/nds32/nds32.opt:425 -msgid "Enable constructor/destructor feature." +#: config/nios2/elf.opt:38 +msgid "Link with HAL BSP." msgstr "" -#: config/nds32/nds32.opt:429 -msgid "Guide linker to relax instructions." +#: config/nios2/nios2.opt:35 +msgid "Enable DIV, DIVU." msgstr "" -#: config/nds32/nds32.opt:433 -msgid "Generate floating-point multiply-accumulation instructions." +#: config/nios2/nios2.opt:39 +msgid "Enable MUL instructions." msgstr "" -#: config/nds32/nds32.opt:437 -msgid "Generate single-precision floating-point instructions." +#: config/nios2/nios2.opt:43 +msgid "Enable MULX instructions, assume fast shifter." msgstr "" -#: config/nds32/nds32.opt:441 -msgid "Generate double-precision floating-point instructions." +#: config/nios2/nios2.opt:47 +msgid "Use table based fast divide (default at -O3)." msgstr "" -#: config/nds32/nds32.opt:445 -msgid "Force disable hardware loop, even use -mext-dsp." +#: config/nios2/nios2.opt:51 +msgid "All memory accesses use I/O load/store instructions." msgstr "" -#: config/nds32/nds32.opt:449 -msgid "Permit scheduling of a function's prologue and epilogue sequence." +#: config/nios2/nios2.opt:55 +msgid "Volatile memory accesses use I/O load/store instructions." msgstr "" -#: config/nds32/nds32.opt:453 -msgid "Generate return instruction in naked function." +#: config/nios2/nios2.opt:59 +msgid "Volatile memory accesses do not use I/O load/store instructions." msgstr "" -#: config/nds32/nds32.opt:457 -msgid "Always save $lp in the stack." +#: config/nios2/nios2.opt:63 +msgid "Enable/disable GP-relative addressing." msgstr "" -#: config/nds32/nds32.opt:465 -msgid "Allow use r15 for inline ASM." +#: config/nios2/nios2.opt:67 +msgid "Valid options for GP-relative addressing (for -mgpopt):" msgstr "" -#: config/ft32/ft32.opt:23 -msgid "Target the software simulator." +#: config/nios2/nios2.opt:86 +msgid "Equivalent to -mgpopt=local." msgstr "" -#: config/ft32/ft32.opt:31 -msgid "Avoid use of the DIV and MOD instructions." +#: config/nios2/nios2.opt:90 +msgid "Equivalent to -mgpopt=none." msgstr "" -#: config/ft32/ft32.opt:35 -msgid "Target the FT32B architecture." +#: config/nios2/nios2.opt:94 config/c6x/c6x.opt:30 config/mips/mips.opt:134 +#: config/tilegx/tilegx.opt:45 +msgid "Use big-endian byte order." msgstr "" -#: config/ft32/ft32.opt:39 -msgid "Enable FT32B code compression." +#: config/nios2/nios2.opt:98 config/c6x/c6x.opt:34 config/mips/mips.opt:138 +#: config/tilegx/tilegx.opt:49 +msgid "Use little-endian byte order." msgstr "" -#: config/ft32/ft32.opt:43 -msgid "Avoid placing any readable data in program memory." +#: config/nios2/nios2.opt:102 +msgid "Floating point custom instruction configuration name." msgstr "" -#: config/or1k/elf.opt:28 -msgid "Configure board specific runtime." +#: config/nios2/nios2.opt:106 +msgid "Do not use the ftruncds custom instruction." msgstr "" -#: config/or1k/elf.opt:32 -msgid "For compatibility, it's always newlib for elf now." +#: config/nios2/nios2.opt:110 +msgid "Integer id (N) of ftruncds custom instruction." msgstr "" -#: config/or1k/or1k.opt:28 -msgid "Use hardware divide instructions, use -msoft-div for emulation." +#: config/nios2/nios2.opt:114 +msgid "Do not use the fextsd custom instruction." msgstr "" -#: config/or1k/or1k.opt:32 -msgid "Use hardware multiply instructions, use -msoft-mul for emulation." +#: config/nios2/nios2.opt:118 +msgid "Integer id (N) of fextsd custom instruction." msgstr "" -#: config/or1k/or1k.opt:36 -msgid "" -"Allows generation of binaries which use the l.cmov instruction. If your " -"target does not support this the compiler will generate the equivalent using " -"set and branch." +#: config/nios2/nios2.opt:122 +msgid "Do not use the fixdu custom instruction." msgstr "" -#: config/or1k/or1k.opt:42 -msgid "Allows generation of binaries which use the l.rori instructions." +#: config/nios2/nios2.opt:126 +msgid "Integer id (N) of fixdu custom instruction." msgstr "" -#: config/or1k/or1k.opt:46 -msgid "" -"Allows generation of binaries which use sign-extension instructions. If " -"your target does not support this the compiler will use memory loads to " -"perform sign extension." +#: config/nios2/nios2.opt:130 +msgid "Do not use the fixdi custom instruction." msgstr "" -#: config/or1k/or1k.opt:52 -msgid "" -"Allows generation of binaries which use l.sf*i instructions. If your target " -"does not support this the compiler will generate instructions to store the " -"immediate to a register first." +#: config/nios2/nios2.opt:134 +msgid "Integer id (N) of fixdi custom instruction." msgstr "" -#: config/or1k/or1k.opt:58 -msgid "" -"Allows generation of binaries which support shifts and rotate instructions " -"supporting immediate arguments, for example l.rori." +#: config/nios2/nios2.opt:138 +msgid "Do not use the fixsu custom instruction." msgstr "" -#: config/or1k/or1k.opt:63 -msgid "Use divide emulation." +#: config/nios2/nios2.opt:142 +msgid "Integer id (N) of fixsu custom instruction." msgstr "" -#: config/or1k/or1k.opt:67 -msgid "Use multiply emulation." +#: config/nios2/nios2.opt:146 +msgid "Do not use the fixsi custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:57 c-family/c.opt:304 -msgid "Enable most warning messages." +#: config/nios2/nios2.opt:150 +msgid "Integer id (N) of fixsi custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:61 -msgid "Synonym of -gnatk8." +#: config/nios2/nios2.opt:154 +msgid "Do not use the floatud custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:69 -msgid "Do not look for object files in standard path." +#: config/nios2/nios2.opt:158 +msgid "Integer id (N) of floatud custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:73 -msgid "Select the runtime." +#: config/nios2/nios2.opt:162 +msgid "Do not use the floatid custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:77 c-family/c.opt:1736 -msgid "Use the narrowest integer type possible for enumeration types." +#: config/nios2/nios2.opt:166 +msgid "Integer id (N) of floatid custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:81 c-family/c.opt:1748 -msgid "Make \"char\" signed by default." +#: config/nios2/nios2.opt:170 +msgid "Do not use the floatus custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:85 c-family/c.opt:1834 -msgid "Make \"char\" unsigned by default." +#: config/nios2/nios2.opt:174 +msgid "Integer id (N) of floatus custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:89 -msgid "Catch typos." +#: config/nios2/nios2.opt:178 +msgid "Do not use the floatis custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:93 -msgid "Set name of output ALI file (internal switch)." +#: config/nios2/nios2.opt:182 +msgid "Integer id (N) of floatis custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:97 -msgid "-gnat\tSpecify options to GNAT." +#: config/nios2/nios2.opt:186 +msgid "Do not use the fcmpned custom instruction." msgstr "" -#: ada/gcc-interface/lang.opt:101 -msgid "Ignored." +#: config/nios2/nios2.opt:190 +msgid "Integer id (N) of fcmpned custom instruction." msgstr "" -#: brig/lang.opt:36 -msgid "" -"Assume we are finalizing for phsa and its libhsail-rt. Enables additional " -"phsa-specific optimizations (default)." +#: config/nios2/nios2.opt:194 +msgid "Do not use the fcmpeqd custom instruction." msgstr "" -#: go/lang.opt:42 -msgid "-fgo-c-header=\tWrite Go struct definitions to file as C code." +#: config/nios2/nios2.opt:198 +msgid "Integer id (N) of fcmpeqd custom instruction." msgstr "" -#: go/lang.opt:46 -msgid "Add explicit checks for division by zero." +#: config/nios2/nios2.opt:202 +msgid "Do not use the fcmpged custom instruction." msgstr "" -#: go/lang.opt:50 -msgid "Add explicit checks for division overflow in INT_MIN / -1." +#: config/nios2/nios2.opt:206 +msgid "Integer id (N) of fcmpged custom instruction." msgstr "" -#: go/lang.opt:54 -msgid "Apply special rules for compiling runtime package." +#: config/nios2/nios2.opt:210 +msgid "Do not use the fcmpgtd custom instruction." msgstr "" -#: go/lang.opt:58 -msgid "-fgo-dump-\tDump Go frontend internal information." +#: config/nios2/nios2.opt:214 +msgid "Integer id (N) of fcmpgtd custom instruction." msgstr "" -#: go/lang.opt:62 -msgid "-fgo-optimize-\tTurn on optimization passes in the frontend." +#: config/nios2/nios2.opt:218 +msgid "Do not use the fcmpled custom instruction." msgstr "" -#: go/lang.opt:66 -msgid "-fgo-pkgpath=\tSet Go package path." +#: config/nios2/nios2.opt:222 +msgid "Integer id (N) of fcmpled custom instruction." msgstr "" -#: go/lang.opt:70 -msgid "" -"-fgo-prefix=\tSet package-specific prefix for exported Go names." +#: config/nios2/nios2.opt:226 +msgid "Do not use the fcmpltd custom instruction." msgstr "" -#: go/lang.opt:74 -msgid "" -"-fgo-relative-import-path=\tTreat a relative import as relative to " -"path." +#: config/nios2/nios2.opt:230 +msgid "Integer id (N) of fcmpltd custom instruction." msgstr "" -#: go/lang.opt:78 -msgid "Functions which return values must end with return statements." +#: config/nios2/nios2.opt:234 +msgid "Do not use the flogd custom instruction." msgstr "" -#: go/lang.opt:82 -msgid "" -"Emit debugging information related to the escape analysis pass when run with " -"-fgo-optimize-allocs." +#: config/nios2/nios2.opt:238 +msgid "Integer id (N) of flogd custom instruction." msgstr "" -#: go/lang.opt:86 -msgid "-fgo-debug-escape-hash=\tHash value to debug escape analysis." +#: config/nios2/nios2.opt:242 +msgid "Do not use the fexpd custom instruction." msgstr "" -#: common.opt:243 -msgid "Provide bash completion for options starting with provided string." +#: config/nios2/nios2.opt:246 +msgid "Integer id (N) of fexpd custom instruction." msgstr "" -#: common.opt:292 -msgid "Display this information." +#: config/nios2/nios2.opt:250 +msgid "Do not use the fatand custom instruction." msgstr "" -#: common.opt:296 -msgid "" -"--help=\tDisplay descriptions of a specific class of options. " -" is one or more of optimizers, target, warnings, undocumented, params." +#: config/nios2/nios2.opt:254 +msgid "Integer id (N) of fatand custom instruction." msgstr "" -#: common.opt:417 -msgid "Alias for --help=target." +#: config/nios2/nios2.opt:258 +msgid "Do not use the ftand custom instruction." msgstr "" -#: common.opt:442 -msgid "" -"--param =\tSet parameter to value. See below for a " -"complete list of parameters." +#: config/nios2/nios2.opt:262 +msgid "Integer id (N) of ftand custom instruction." msgstr "" -#: common.opt:470 -msgid "-O\tSet optimization level to ." +#: config/nios2/nios2.opt:266 +msgid "Do not use the fsind custom instruction." msgstr "" -#: common.opt:474 -msgid "Optimize for space rather than speed." +#: config/nios2/nios2.opt:270 +msgid "Integer id (N) of fsind custom instruction." msgstr "" -#: common.opt:478 -msgid "Optimize for speed disregarding exact standards compliance." +#: config/nios2/nios2.opt:274 +msgid "Do not use the fcosd custom instruction." msgstr "" -#: common.opt:482 -msgid "Optimize for debugging experience rather than speed or size." +#: config/nios2/nios2.opt:278 +msgid "Integer id (N) of fcosd custom instruction." msgstr "" -#: common.opt:522 -msgid "This switch is deprecated; use -Wextra instead." +#: config/nios2/nios2.opt:282 +msgid "Do not use the fsqrtd custom instruction." msgstr "" -#: common.opt:535 -msgid "Warn about returning structures, unions or arrays." +#: config/nios2/nios2.opt:286 +msgid "Integer id (N) of fsqrtd custom instruction." msgstr "" -#: common.opt:539 -msgid "" -"Warn if a loop with constant number of iterations triggers undefined " -"behavior." +#: config/nios2/nios2.opt:290 +msgid "Do not use the fabsd custom instruction." msgstr "" -#: common.opt:543 common.opt:547 -msgid "Warn if an array is accessed out of bounds." +#: config/nios2/nios2.opt:294 +msgid "Integer id (N) of fabsd custom instruction." msgstr "" -#: common.opt:551 -msgid "Warn about inappropriate attribute usage." +#: config/nios2/nios2.opt:298 +msgid "Do not use the fnegd custom instruction." msgstr "" -#: common.opt:555 common.opt:559 -msgid "" -"Warn about type safety and similar errors and mismatches in declarations " -"with alias attributes." +#: config/nios2/nios2.opt:302 +msgid "Integer id (N) of fnegd custom instruction." msgstr "" -#: common.opt:563 -msgid "" -"Warn when profiling instrumentation was requested, but could not be applied " -"to a certain function." +#: config/nios2/nios2.opt:306 +msgid "Do not use the fmaxd custom instruction." msgstr "" -#: common.opt:568 common.opt:572 -msgid "Warn about pointer casts which increase alignment." +#: config/nios2/nios2.opt:310 +msgid "Integer id (N) of fmaxd custom instruction." msgstr "" -#: common.opt:576 -msgid "Warn when a #warning directive is encountered." +#: config/nios2/nios2.opt:314 +msgid "Do not use the fmind custom instruction." msgstr "" -#: common.opt:580 -msgid "Warn about uses of __attribute__((warning)) declarations." +#: config/nios2/nios2.opt:318 +msgid "Integer id (N) of fmind custom instruction." msgstr "" -#: common.opt:584 -msgid "Warn if a deprecated compiler feature, class, method, or field is used." +#: config/nios2/nios2.opt:322 +msgid "Do not use the fdivd custom instruction." msgstr "" -#: common.opt:588 -msgid "Warn about uses of __attribute__((deprecated)) declarations." +#: config/nios2/nios2.opt:326 +msgid "Integer id (N) of fdivd custom instruction." msgstr "" -#: common.opt:592 -msgid "Warn when an optimization pass is disabled." +#: config/nios2/nios2.opt:330 +msgid "Do not use the fmuld custom instruction." msgstr "" -#: common.opt:596 -msgid "Treat all warnings as errors." +#: config/nios2/nios2.opt:334 +msgid "Integer id (N) of fmuld custom instruction." msgstr "" -#: common.opt:600 -msgid "Treat specified warning as error." +#: config/nios2/nios2.opt:338 +msgid "Do not use the fsubd custom instruction." msgstr "" -#: common.opt:604 -msgid "Print extra (possibly unwanted) warnings." +#: config/nios2/nios2.opt:342 +msgid "Integer id (N) of fsubd custom instruction." msgstr "" -#: common.opt:608 -msgid "Exit on the first error occurred." +#: config/nios2/nios2.opt:346 +msgid "Do not use the faddd custom instruction." msgstr "" -#: common.opt:612 -msgid "" -"-Wframe-larger-than=\tWarn if a function's stack frame requires " -"in excess of ." +#: config/nios2/nios2.opt:350 +msgid "Integer id (N) of faddd custom instruction." msgstr "" -#: common.opt:616 -msgid "Warn when attempting to free a non-heap object." +#: config/nios2/nios2.opt:354 +msgid "Do not use the fcmpnes custom instruction." msgstr "" -#: common.opt:620 -msgid "Warn when a function cannot be expanded to HSAIL." +#: config/nios2/nios2.opt:358 +msgid "Integer id (N) of fcmpnes custom instruction." msgstr "" -#: common.opt:627 -msgid "Warn when a switch case falls through." +#: config/nios2/nios2.opt:362 +msgid "Do not use the fcmpeqs custom instruction." msgstr "" -#: common.opt:631 -msgid "Warn when an inlined function cannot be inlined." +#: config/nios2/nios2.opt:366 +msgid "Integer id (N) of fcmpeqs custom instruction." msgstr "" -#: common.opt:635 -msgid "" -"Warn when an atomic memory model parameter is known to be outside the valid " -"range." +#: config/nios2/nios2.opt:370 +msgid "Do not use the fcmpges custom instruction." msgstr "" -#: common.opt:642 -msgid "" -"-Wlarger-than=\tWarn if an object's size exceeds ." +#: config/nios2/nios2.opt:374 +msgid "Integer id (N) of fcmpges custom instruction." msgstr "" -#: common.opt:646 -msgid "Warn if comparing pointer parameter with nonnull attribute with NULL." +#: config/nios2/nios2.opt:378 +msgid "Do not use the fcmpgts custom instruction." msgstr "" -#: common.opt:650 -msgid "" -"Warn if dereferencing a NULL pointer may lead to erroneous or undefined " -"behavior." +#: config/nios2/nios2.opt:382 +msgid "Integer id (N) of fcmpgts custom instruction." msgstr "" -#: common.opt:661 -msgid "" -"Warn about some C++ One Definition Rule violations during link time " -"optimization." +#: config/nios2/nios2.opt:386 +msgid "Do not use the fcmples custom instruction." msgstr "" -#: common.opt:665 -msgid "Warn about overflow in arithmetic expressions." +#: config/nios2/nios2.opt:390 +msgid "Integer id (N) of fcmples custom instruction." msgstr "" -#: common.opt:669 -msgid "" -"During link time optimization warn about mismatched types of global " -"declarations." +#: config/nios2/nios2.opt:394 +msgid "Do not use the fcmplts custom instruction." msgstr "" -#: common.opt:673 -msgid "Warn when the packed attribute has no effect on struct layout." +#: config/nios2/nios2.opt:398 +msgid "Integer id (N) of fcmplts custom instruction." msgstr "" -#: common.opt:677 -msgid "Warn when padding is required to align structure members." +#: config/nios2/nios2.opt:402 +msgid "Do not use the flogs custom instruction." msgstr "" -#: common.opt:681 -msgid "Issue warnings needed for strict compliance to the standard." +#: config/nios2/nios2.opt:406 +msgid "Integer id (N) of flogs custom instruction." msgstr "" -#: common.opt:685 -msgid "" -"Warn about returning a pointer/reference to a local or temporary variable." +#: config/nios2/nios2.opt:410 +msgid "Do not use the fexps custom instruction." msgstr "" -#: common.opt:689 -msgid "Warn when one variable shadows another. Same as -Wshadow=global." +#: config/nios2/nios2.opt:414 +msgid "Integer id (N) of fexps custom instruction." msgstr "" -#: common.opt:693 -msgid "Warn when one variable shadows another (globally)." +#: config/nios2/nios2.opt:418 +msgid "Do not use the fatans custom instruction." msgstr "" -#: common.opt:697 -msgid "" -"Warn when one local variable shadows another local variable or parameter." +#: config/nios2/nios2.opt:422 +msgid "Integer id (N) of fatans custom instruction." msgstr "" -#: common.opt:704 -msgid "" -"Warn when one local variable shadows another local variable or parameter of " -"compatible type." +#: config/nios2/nios2.opt:426 +msgid "Do not use the ftans custom instruction." msgstr "" -#: common.opt:711 -msgid "Warn when not issuing stack smashing protection for some reason." +#: config/nios2/nios2.opt:430 +msgid "Integer id (N) of ftans custom instruction." msgstr "" -#: common.opt:715 -msgid "" -"-Wstack-usage=\tWarn if stack usage might exceed ." +#: config/nios2/nios2.opt:434 +msgid "Do not use the fsins custom instruction." msgstr "" -#: common.opt:719 common.opt:723 -msgid "Warn about code which might break strict aliasing rules." +#: config/nios2/nios2.opt:438 +msgid "Integer id (N) of fsins custom instruction." msgstr "" -#: common.opt:727 common.opt:731 -msgid "Warn about optimizations that assume that signed overflow is undefined." +#: config/nios2/nios2.opt:442 +msgid "Do not use the fcoss custom instruction." msgstr "" -#: common.opt:735 -msgid "" -"Warn about functions which might be candidates for __attribute__((cold))." +#: config/nios2/nios2.opt:446 +msgid "Integer id (N) of fcoss custom instruction." msgstr "" -#: common.opt:739 -msgid "" -"Warn about functions which might be candidates for __attribute__((const))." +#: config/nios2/nios2.opt:450 +msgid "Do not use the fsqrts custom instruction." msgstr "" -#: common.opt:743 -msgid "" -"Warn about functions which might be candidates for __attribute__((pure))." +#: config/nios2/nios2.opt:454 +msgid "Integer id (N) of fsqrts custom instruction." msgstr "" -#: common.opt:747 -msgid "" -"Warn about functions which might be candidates for __attribute__((noreturn))." +#: config/nios2/nios2.opt:458 +msgid "Do not use the fabss custom instr." msgstr "" -#: common.opt:751 -msgid "" -"Warn about functions which might be candidates for __attribute__((malloc))." +#: config/nios2/nios2.opt:462 +msgid "Integer id (N) of fabss custom instruction." msgstr "" -#: common.opt:755 -msgid "" -"Warn about C++ polymorphic types where adding final keyword would improve " -"code quality." +#: config/nios2/nios2.opt:466 +msgid "Do not use the fnegs custom instruction." msgstr "" -#: common.opt:759 -msgid "" -"Warn about C++ virtual methods where adding final keyword would improve code " -"quality." +#: config/nios2/nios2.opt:470 +msgid "Integer id (N) of fnegs custom instruction." msgstr "" -#: common.opt:763 -msgid "" -"Warn about statements between switch's controlling expression and the first " -"case." +#: config/nios2/nios2.opt:474 +msgid "Do not use the fmaxs custom instruction." msgstr "" -#: common.opt:768 -msgid "Do not suppress warnings from system headers." +#: config/nios2/nios2.opt:478 +msgid "Integer id (N) of fmaxs custom instruction." msgstr "" -#: common.opt:772 -msgid "Warn whenever a trampoline is generated." +#: config/nios2/nios2.opt:482 +msgid "Do not use the fmins custom instruction." msgstr "" -#: common.opt:776 -msgid "" -"Warn if a comparison is always true or always false due to the limited range " -"of the data type." +#: config/nios2/nios2.opt:486 +msgid "Integer id (N) of fmins custom instruction." msgstr "" -#: common.opt:780 -msgid "Warn about uninitialized automatic variables." +#: config/nios2/nios2.opt:490 +msgid "Do not use the fdivs custom instruction." msgstr "" -#: common.opt:784 -msgid "Warn about maybe uninitialized automatic variables." +#: config/nios2/nios2.opt:494 +msgid "Integer id (N) of fdivs custom instruction." msgstr "" -#: common.opt:792 -msgid "Enable all -Wunused- warnings." +#: config/nios2/nios2.opt:498 +msgid "Do not use the fmuls custom instruction." msgstr "" -#: common.opt:796 -msgid "Warn when a function parameter is only set, otherwise unused." +#: config/nios2/nios2.opt:502 +msgid "Integer id (N) of fmuls custom instruction." msgstr "" -#: common.opt:800 -msgid "Warn when a variable is only set, otherwise unused." +#: config/nios2/nios2.opt:506 +msgid "Do not use the fsubs custom instruction." msgstr "" -#: common.opt:804 -msgid "Warn when a function is unused." +#: config/nios2/nios2.opt:510 +msgid "Integer id (N) of fsubs custom instruction." msgstr "" -#: common.opt:808 -msgid "Warn when a label is unused." +#: config/nios2/nios2.opt:514 +msgid "Do not use the fadds custom instruction." msgstr "" -#: common.opt:812 -msgid "Warn when a function parameter is unused." +#: config/nios2/nios2.opt:518 +msgid "Integer id (N) of fadds custom instruction." msgstr "" -#: common.opt:816 -msgid "Warn when an expression value is unused." +#: config/nios2/nios2.opt:522 +msgid "Do not use the frdy custom instruction." msgstr "" -#: common.opt:820 -msgid "Warn when a variable is unused." +#: config/nios2/nios2.opt:526 +msgid "Integer id (N) of frdy custom instruction." msgstr "" -#: common.opt:824 -msgid "Warn in case profiles in -fprofile-use do not match." +#: config/nios2/nios2.opt:530 +msgid "Do not use the frdxhi custom instruction." msgstr "" -#: common.opt:828 -msgid "Warn in case profiles in -fprofile-use do not exist." +#: config/nios2/nios2.opt:534 +msgid "Integer id (N) of frdxhi custom instruction." msgstr "" -#: common.opt:832 -msgid "Warn when a vector operation is compiled outside the SIMD." +#: config/nios2/nios2.opt:538 +msgid "Do not use the frdxlo custom instruction." msgstr "" -#: common.opt:848 -msgid "-aux-info \tEmit declaration information into ." +#: config/nios2/nios2.opt:542 +msgid "Integer id (N) of frdxlo custom instruction." msgstr "" -#: common.opt:867 -msgid "-d\tEnable dumps from specific passes of the compiler." +#: config/nios2/nios2.opt:546 +msgid "Do not use the fwry custom instruction." msgstr "" -#: common.opt:871 -msgid "-dumpbase \tSet the file basename to be used for dumps." +#: config/nios2/nios2.opt:550 +msgid "Integer id (N) of fwry custom instruction." msgstr "" -#: common.opt:875 -msgid "-dumpdir \tSet the directory name to be used for dumps." +#: config/nios2/nios2.opt:554 +msgid "Do not use the fwrx custom instruction." msgstr "" -#: common.opt:959 -msgid "The version of the C++ ABI in use." +#: config/nios2/nios2.opt:558 +msgid "Integer id (N) of fwrx custom instruction." msgstr "" -#: common.opt:963 -msgid "Aggressively optimize loops using language constraints." +#: config/nios2/nios2.opt:562 +msgid "Do not use the round custom instruction." msgstr "" -#: common.opt:967 -msgid "Align the start of functions." +#: config/nios2/nios2.opt:566 +msgid "Integer id (N) of round custom instruction." msgstr "" -#: common.opt:977 -msgid "Align labels which are only reached by jumping." +#: config/nios2/nios2.opt:574 +msgid "Valid Nios II ISA levels (for -march):" msgstr "" -#: common.opt:984 -msgid "Align all labels." +#: config/nios2/nios2.opt:584 +msgid "Enable generation of R2 BMX instructions." msgstr "" -#: common.opt:991 -msgid "Align the start of loops." +#: config/nios2/nios2.opt:588 +msgid "Enable generation of R2 CDX instructions." msgstr "" -#: common.opt:1014 -msgid "Select what to sanitize." +#: config/nios2/nios2.opt:592 +msgid "Regular expression matching additional GP-addressible section names." msgstr "" -#: common.opt:1018 -msgid "Select type of coverage sanitization." +#: config/nios2/nios2.opt:596 +msgid "Regular expression matching section names for r0-relative addressing." msgstr "" -#: common.opt:1022 -msgid "-fasan-shadow-offset=\tUse custom shadow memory offset." +#: config/rx/rx.opt:29 +msgid "Store doubles in 64 bits." msgstr "" -#: common.opt:1026 -msgid "" -"-fsanitize-sections=\tSanitize global variables in user-" -"defined sections." +#: config/rx/rx.opt:33 +msgid "Stores doubles in 32 bits. This is the default." msgstr "" -#: common.opt:1031 -msgid "After diagnosing undefined behavior attempt to continue execution." +#: config/rx/rx.opt:37 +msgid "Disable the use of RX FPU instructions." msgstr "" -#: common.opt:1035 -msgid "This switch is deprecated; use -fsanitize-recover= instead." +#: config/rx/rx.opt:44 +msgid "Enable the use of RX FPU instructions. This is the default." msgstr "" -#: common.opt:1042 -msgid "" -"Use trap instead of a library function for undefined behavior sanitization." +#: config/rx/rx.opt:50 +msgid "Specify the target RX cpu type." msgstr "" -#: common.opt:1046 -msgid "Generate unwind tables that are exact at each instruction boundary." +#: config/rx/rx.opt:71 +msgid "Data is stored in big-endian format." msgstr "" -#: common.opt:1050 -msgid "Generate auto-inc/dec instructions." +#: config/rx/rx.opt:75 +msgid "Data is stored in little-endian format. (Default)." msgstr "" -#: common.opt:1054 +#: config/rx/rx.opt:81 msgid "" -"Use sample profile information for call graph node weights. The default " -"profile file is fbdata.afdo in 'pwd'." +"Maximum size of global and static variables which can be placed into the " +"small data area." msgstr "" -#: common.opt:1059 +#: config/rx/rx.opt:93 msgid "" -"Use sample profile information for call graph node weights. The profile file " -"is specified in the argument." +"Generate assembler output that is compatible with the Renesas AS100 " +"assembler. This may restrict some of the compiler's capabilities. The " +"default is to generate GAS compatible syntax." msgstr "" -#: common.opt:1068 -msgid "Generate code to check bounds before indexing arrays." +#: config/rx/rx.opt:99 +msgid "Enable linker relaxation." msgstr "" -#: common.opt:1072 -msgid "Replace add, compare, branch with branch on count register." +#: config/rx/rx.opt:105 +msgid "Maximum size in bytes of constant values allowed as operands." msgstr "" -#: common.opt:1076 -msgid "Use profiling information for branch probabilities." +#: config/rx/rx.opt:111 +msgid "Specifies the number of registers to reserve for interrupt handlers." msgstr "" -#: common.opt:1080 +#: config/rx/rx.opt:117 msgid "" -"Perform branch target load optimization before prologue / epilogue threading." +"Specifies whether interrupt functions should save and restore the " +"accumulator register." msgstr "" -#: common.opt:1084 +#: config/rx/rx.opt:123 +msgid "Enables Position-Independent-Data (PID) mode." +msgstr "" + +#: config/rx/rx.opt:129 msgid "" -"Perform branch target load optimization after prologue / epilogue threading." +"Warn when multiple, different, fast interrupt handlers are in the " +"compilation unit." msgstr "" -#: common.opt:1088 +#: config/rx/rx.opt:135 msgid "" -"Restrict target load migration not to re-use registers in any basic block." +"Enable the use of the old, broken, ABI where all stacked function arguments " +"are aligned to 32-bits." msgstr "" -#: common.opt:1092 +#: config/rx/rx.opt:139 msgid "" -"-fcall-saved-\tMark as being preserved across functions." +"Enable the use the standard RX ABI where all stacked function arguments are " +"naturally aligned. This is the default." msgstr "" -#: common.opt:1096 +#: config/rx/rx.opt:145 +msgid "Enable the use of the LRA register allocator." +msgstr "" + +#: config/rx/rx.opt:151 msgid "" -"-fcall-used-\tMark as being corrupted by function calls." +"Enables or disables the use of the SMOVF, SMOVB, SMOVU, SUNTIL, SWHILE and " +"RMPA instructions. Enabled by default." msgstr "" -#: common.opt:1103 -msgid "Save registers around function calls." +#: config/rx/rx.opt:157 +msgid "Always use JSR, never BSR, for calls." msgstr "" -#: common.opt:1107 -msgid "This switch is deprecated; do not use." +#: config/visium/visium.opt:25 +msgid "Link with libc.a and libdebug.a." msgstr "" -#: common.opt:1111 -msgid "Check the return value of new in C++." +#: config/visium/visium.opt:29 +msgid "Link with libc.a and libsim.a." msgstr "" -#: common.opt:1115 common.opt:1119 -msgid "Perform internal consistency checkings." +#: config/visium/visium.opt:33 +msgid "Use hardware FP (default)." msgstr "" -#: common.opt:1123 -msgid "Enable code hoisting." +#: config/visium/visium.opt:45 +msgid "Use features of and schedule code for given CPU." msgstr "" -#: common.opt:1127 -msgid "" -"Looks for opportunities to reduce stack adjustments and stack references." +#: config/visium/visium.opt:65 +msgid "Generate code for the supervisor mode (default)." msgstr "" -#: common.opt:1131 -msgid "Do not put uninitialized globals in the common section." +#: config/visium/visium.opt:69 +msgid "Generate code for the user mode." msgstr "" -#: common.opt:1139 -msgid "" -"-fcompare-debug[=]\tCompile with and without e.g. -gtoggle, and " -"compare the final-insns dump." +#: config/visium/visium.opt:73 +msgid "Only retained for backward compatibility." msgstr "" -#: common.opt:1143 -msgid "Run only the second compilation of -fcompare-debug." +#: config/sol2.opt:32 +msgid "Clear hardware capabilities when linking." msgstr "" -#: common.opt:1147 -msgid "Perform comparison elimination after register allocation has finished." +#: config/sol2.opt:36 +msgid "Pass -z text to linker." msgstr "" -#: common.opt:1151 -msgid "Do not perform optimizations increasing noticeably stack usage." +#: config/moxie/moxie.opt:31 +msgid "Enable MUL.X and UMUL.X instructions." msgstr "" -#: common.opt:1155 -msgid "Perform a register copy-propagation optimization pass." +#: config/microblaze/microblaze.opt:40 +msgid "Use software emulation for floating point (default)." msgstr "" -#: common.opt:1159 -msgid "Perform cross-jumping optimization." +#: config/microblaze/microblaze.opt:44 +msgid "Use hardware floating point instructions." msgstr "" -#: common.opt:1163 -msgid "When running CSE, follow jumps to their targets." +#: config/microblaze/microblaze.opt:48 +msgid "Use table lookup optimization for small signed integer divisions." msgstr "" -#: common.opt:1171 -msgid "Omit range reduction step when performing complex division." +#: config/microblaze/microblaze.opt:52 +msgid "-mcpu=PROCESSOR\t\tUse features of and schedule code for given CPU." msgstr "" -#: common.opt:1175 -msgid "Complex multiplication and division follow Fortran rules." +#: config/microblaze/microblaze.opt:56 +msgid "Don't optimize block moves, use memcpy." msgstr "" -#: common.opt:1179 -msgid "Place data items into their own section." +#: config/microblaze/microblaze.opt:68 +msgid "Use the soft multiply emulation (default)." msgstr "" -#: common.opt:1183 -msgid "List all available debugging counters with their limits and counts." +#: config/microblaze/microblaze.opt:72 +msgid "Use reorder instructions (swap and byte reversed load/store) (default)." msgstr "" -#: common.opt:1187 -msgid "" -"-fdbg-cnt=[:]:[,:...]\tSet the " -"debug counter limit." +#: config/microblaze/microblaze.opt:76 +msgid "Use the software emulation for divides (default)." msgstr "" -#: common.opt:1191 -msgid "" -"-fdebug-prefix-map== Map one directory name to another in debug " -"information." +#: config/microblaze/microblaze.opt:80 +msgid "Use the hardware barrel shifter instead of emulation." msgstr "" -#: common.opt:1195 -msgid "" -"-ffile-prefix-map== Map one directory name to another in " -"compilation result." +#: config/microblaze/microblaze.opt:84 +msgid "Use pattern compare instructions." msgstr "" -#: common.opt:1199 -msgid "Output .debug_types section when using DWARF v4 debuginfo." +#: config/microblaze/microblaze.opt:88 +msgid "Check for stack overflow at runtime." msgstr "" -#: common.opt:1205 -msgid "Defer popping functions args from stack until later." +#: config/microblaze/microblaze.opt:92 config/iq2000/iq2000.opt:65 +msgid "Use GP relative sdata/sbss sections." msgstr "" -#: common.opt:1209 -msgid "Attempt to fill delay slots of branch instructions." +#: config/microblaze/microblaze.opt:96 +msgid "Clear the BSS to zero and place zero initialized in BSS." msgstr "" -#: common.opt:1213 -msgid "Delete dead instructions that may throw exceptions." +#: config/microblaze/microblaze.opt:100 +msgid "Use multiply high instructions for high part of 32x32 multiply." msgstr "" -#: common.opt:1217 -msgid "Delete useless null pointer checks." +#: config/microblaze/microblaze.opt:104 +msgid "Use hardware floating point conversion instructions." msgstr "" -#: common.opt:1221 -msgid "" -"Stream extra data to support more aggressive devirtualization in LTO local " -"transformation mode." +#: config/microblaze/microblaze.opt:108 +msgid "Use hardware floating point square root instruction." msgstr "" -#: common.opt:1225 -msgid "Perform speculative devirtualization." +#: config/microblaze/microblaze.opt:112 +msgid "Description for mxl-mode-executable." msgstr "" -#: common.opt:1229 -msgid "Try to convert virtual calls to direct ones." +#: config/microblaze/microblaze.opt:116 +msgid "Description for mxl-mode-xmdstub." msgstr "" -#: common.opt:1233 -msgid "" -"-fdiagnostics-show-location=[once|every-line]\tHow often to emit source " -"location at the beginning of line-wrapped diagnostics." +#: config/microblaze/microblaze.opt:120 +msgid "Description for mxl-mode-bootstrap." msgstr "" -#: common.opt:1250 -msgid "Show the source line with a caret indicating the column." +#: config/microblaze/microblaze.opt:124 +msgid "Description for mxl-mode-novectors." msgstr "" -#: common.opt:1254 -msgid "Show labels annotating ranges of source code when showing source." +#: config/microblaze/microblaze.opt:128 +msgid "Use hardware prefetch instruction." msgstr "" -#: common.opt:1258 -msgid "Show line numbers in the left margin when showing source." +#: config/microblaze/microblaze.opt:132 +msgid "" +"Data referenced by offset from start of text instead of GOT (with -fPIC/-" +"fPIE)." msgstr "" -#: common.opt:1266 -msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics." +#: config/vax/vax.opt:23 config/vax/vax.opt:27 +msgid "Target DFLOAT double precision code." msgstr "" -#: common.opt:1286 -msgid "-fdiagnostics-format=[text|json] Select output format." +#: config/vax/vax.opt:31 config/vax/vax.opt:35 +msgid "Generate GFLOAT double precision code." msgstr "" -#: common.opt:1303 -msgid "Print fix-it hints in machine-readable form." +#: config/vax/vax.opt:39 +msgid "Generate code for GNU assembler (gas)." msgstr "" -#: common.opt:1307 -msgid "Print fix-it hints to stderr in unified diff format." +#: config/vax/vax.opt:43 +msgid "Generate code for UNIX assembler." msgstr "" -#: common.opt:1311 -msgid "" -"Amend appropriate diagnostic messages with the command line option that " -"controls them." +#: config/vax/vax.opt:47 +msgid "Use VAXC structure conventions." msgstr "" -#: common.opt:1315 -msgid "Set minimum width of left margin of source code when showing source." +#: config/vax/vax.opt:51 +msgid "Use new adddi3/subdi3 patterns." msgstr "" -#: common.opt:1319 -msgid "" -"-fdisable-[tree|rtl|ipa]-=range1+range2 disables an optimization pass." +#: config/frv/frv.opt:30 +msgid "Use 4 media accumulators." msgstr "" -#: common.opt:1323 -msgid "" -"-fenable-[tree|rtl|ipa]-=range1+range2 enables an optimization pass." +#: config/frv/frv.opt:34 +msgid "Use 8 media accumulators." msgstr "" -#: common.opt:1327 -msgid "-fdump-\tDump various compiler internals to a file." +#: config/frv/frv.opt:38 +msgid "Enable label alignment optimizations." msgstr "" -#: common.opt:1334 -msgid "" -"-fdump-final-insns=filename\tDump to filename the insns at the end of " -"translation." +#: config/frv/frv.opt:42 +msgid "Dynamically allocate cc registers." msgstr "" -#: common.opt:1338 -msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code." +#: config/frv/frv.opt:49 +msgid "Set the cost of branches." msgstr "" -#: common.opt:1342 -msgid "Suppress output of addresses in debugging dumps." +#: config/frv/frv.opt:53 +msgid "Enable conditional execution other than moves/scc." msgstr "" -#: common.opt:1346 -msgid "" -"Collect and dump debug information into temporary file if ICE in C/C++ " -"compiler occurred." +#: config/frv/frv.opt:57 +msgid "Change the maximum length of conditionally-executed sequences." msgstr "" -#: common.opt:1351 +#: config/frv/frv.opt:61 msgid "" -"Dump detailed information on GCC's internal representation of source code " -"locations." +"Change the number of temporary registers that are available to conditionally-" +"executed sequences." msgstr "" -#: common.opt:1355 -msgid "Dump optimization passes." +#: config/frv/frv.opt:65 +msgid "Enable conditional moves." msgstr "" -#: common.opt:1359 -msgid "" -"Suppress output of instruction numbers, line number notes and addresses in " -"debugging dumps." +#: config/frv/frv.opt:69 +msgid "Set the target CPU type." msgstr "" -#: common.opt:1363 -msgid "Suppress output of previous and next insn numbers in debugging dumps." +#: config/frv/frv.opt:73 +msgid "Known FR-V CPUs (for use with the -mcpu= option):" msgstr "" -#: common.opt:1367 -msgid "Enable CFI tables via GAS assembler directives." +#: config/frv/frv.opt:122 +msgid "Use fp double instructions." msgstr "" -#: common.opt:1371 -msgid "Perform early inlining." +#: config/frv/frv.opt:126 +msgid "Change the ABI to allow double word insns." msgstr "" -#: common.opt:1379 -msgid "Perform interprocedural reduction of aggregates." +#: config/frv/frv.opt:134 +msgid "Just use icc0/fcc0." msgstr "" -#: common.opt:1383 -msgid "Perform unused symbol elimination in debug info." +#: config/frv/frv.opt:138 +msgid "Only use 32 FPRs." msgstr "" -#: common.opt:1387 -msgid "Perform unused type elimination in debug info." +#: config/frv/frv.opt:142 +msgid "Use 64 FPRs." msgstr "" -#: common.opt:1391 -msgid "Do not suppress C++ class debug information." +#: config/frv/frv.opt:146 +msgid "Only use 32 GPRs." msgstr "" -#: common.opt:1395 -msgid "Enable exception handling." +#: config/frv/frv.opt:150 +msgid "Use 64 GPRs." msgstr "" -#: common.opt:1399 -msgid "Perform a number of minor, expensive optimizations." +#: config/frv/frv.opt:154 +msgid "Enable use of GPREL for read-only data in FDPIC." msgstr "" -#: common.opt:1403 -msgid "" -"-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-" -"point precision." +#: config/frv/frv.opt:166 +msgid "Enable PIC support for building libraries." msgstr "" -#: common.opt:1418 -msgid "" -"-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of " -"FLT_EVAL_METHOD are permitted." +#: config/frv/frv.opt:170 +msgid "Follow the EABI linkage requirements." msgstr "" -#: common.opt:1434 -msgid "" -"Output lto objects containing both the intermediate language and binary " -"output." +#: config/frv/frv.opt:174 +msgid "Disallow direct calls to global functions." msgstr "" -#: common.opt:1438 -msgid "Assume no NaNs or infinities are generated." +#: config/frv/frv.opt:178 +msgid "Use media instructions." msgstr "" -#: common.opt:1442 -msgid "" -"-ffixed-\tMark as being unavailable to the compiler." +#: config/frv/frv.opt:182 +msgid "Use multiply add/subtract instructions." msgstr "" -#: common.opt:1446 -msgid "Don't allocate floats and doubles in extended-precision registers." +#: config/frv/frv.opt:186 +msgid "Enable optimizing &&/|| in conditional execution." msgstr "" -#: common.opt:1454 -msgid "Perform a forward propagation pass on RTL." +#: config/frv/frv.opt:190 +msgid "Enable nested conditional execution optimizations." msgstr "" -#: common.opt:1458 -msgid "" -"-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction." +#: config/frv/frv.opt:195 +msgid "Do not mark ABI switches in e_flags." msgstr "" -#: common.opt:1475 -msgid "" -"Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" " -"exceptions." +#: config/frv/frv.opt:199 +msgid "Remove redundant membars." msgstr "" -#: common.opt:1482 -msgid "Allow function addresses to be held in registers." +#: config/frv/frv.opt:203 +msgid "Pack VLIW instructions." msgstr "" -#: common.opt:1486 -msgid "Place each function into its own section." +#: config/frv/frv.opt:207 +msgid "Enable setting GPRs to the result of comparisons." msgstr "" -#: common.opt:1490 -msgid "Perform global common subexpression elimination." +#: config/frv/frv.opt:211 +msgid "Change the amount of scheduler lookahead." msgstr "" -#: common.opt:1494 -msgid "" -"Perform enhanced load motion during global common subexpression elimination." +#: config/frv/frv.opt:219 +msgid "Assume a large TLS segment." msgstr "" -#: common.opt:1498 -msgid "Perform store motion after global common subexpression elimination." +#: config/frv/frv.opt:223 +msgid "Do not assume a large TLS segment." msgstr "" -#: common.opt:1502 -msgid "" -"Perform redundant load after store elimination in global common " -"subexpression elimination." +#: config/frv/frv.opt:228 +msgid "Cause gas to print tomcat statistics." msgstr "" -#: common.opt:1507 -msgid "" -"Perform global common subexpression elimination after register allocation " -"has finished." +#: config/frv/frv.opt:233 +msgid "Link with the library-pic libraries." msgstr "" -#: common.opt:1524 -msgid "" -"-fgnat-encodings=[all|gdb|minimal]\tSelect the balance between GNAT " -"encodings and standard DWARF emitted in the debug information." +#: config/frv/frv.opt:237 +msgid "Allow branches to be packed with other instructions." msgstr "" -#: common.opt:1529 -msgid "Enable in and out of Graphite representation." +#: config/mn10300/mn10300.opt:30 +msgid "Target the AM33 processor." msgstr "" -#: common.opt:1533 -msgid "Enable Graphite Identity transformation." +#: config/mn10300/mn10300.opt:34 +msgid "Target the AM33/2.0 processor." msgstr "" -#: common.opt:1537 -msgid "" -"Enable hoisting adjacent loads to encourage generating conditional move " -"instructions." +#: config/mn10300/mn10300.opt:38 +msgid "Target the AM34 processor." msgstr "" -#: common.opt:1546 -msgid "Mark all loops as parallel." +#: config/mn10300/mn10300.opt:46 +msgid "Work around hardware multiply bug." msgstr "" -#: common.opt:1550 common.opt:1558 common.opt:2667 -msgid "Enable loop nest transforms. Same as -floop-nest-optimize." +#: config/mn10300/mn10300.opt:55 +msgid "Enable linker relaxations." msgstr "" -#: common.opt:1554 -msgid "Enable loop interchange on trees." +#: config/mn10300/mn10300.opt:59 +msgid "Return pointers in both a0 and d0." msgstr "" -#: common.opt:1562 -msgid "Perform unroll-and-jam on loops." +#: config/mn10300/mn10300.opt:63 +msgid "Allow gcc to generate LIW instructions." msgstr "" -#: common.opt:1566 -msgid "Enable support for GNU transactional memory." +#: config/mn10300/mn10300.opt:67 +msgid "Allow gcc to generate the SETLB and Lcc instructions." msgstr "" -#: common.opt:1570 -msgid "Use STB_GNU_UNIQUE if supported by the assembler." +#: config/nds32/nds32-elf.opt:3 config/nds32/nds32-linux.opt:3 +msgid "Specify the address generation strategy for code model." msgstr "" -#: common.opt:1578 -msgid "Enable the loop nest optimizer." +#: config/nds32/nds32-elf.opt:7 config/nds32/nds32-linux.opt:7 +msgid "Known cmodel types (for use with the -mcmodel= option):" msgstr "" -#: common.opt:1582 -msgid "Force bitfield accesses to match their type width." +#: config/nds32/nds32.opt:29 config/nds32/nds32.opt:89 +msgid "Generate code in big-endian mode." msgstr "" -#: common.opt:1586 -msgid "Merge adjacent stores." +#: config/nds32/nds32.opt:33 config/nds32/nds32.opt:93 +msgid "Generate code in little-endian mode." msgstr "" -#: common.opt:1590 -msgid "Enable guessing of branch probabilities." +#: config/nds32/nds32.opt:37 +msgid "Force performing fp-as-gp optimization." msgstr "" -#: common.opt:1598 -msgid "Process #ident directives." +#: config/nds32/nds32.opt:41 +msgid "Forbid performing fp-as-gp optimization." msgstr "" -#: common.opt:1602 -msgid "Perform conversion of conditional jumps to branchless equivalents." +#: config/nds32/nds32.opt:47 +msgid "Specify which ABI type to generate code for: 2, 2fp+." msgstr "" -#: common.opt:1606 -msgid "Perform conversion of conditional jumps to conditional execution." +#: config/nds32/nds32.opt:61 +msgid "Specify use soft floating point ABI which mean alias to -mabi=2." msgstr "" -#: common.opt:1610 -msgid "" -"-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local " -"variables." +#: config/nds32/nds32.opt:65 +msgid "Specify use soft floating point ABI which mean alias to -mabi=2fp+." msgstr "" -#: common.opt:1626 -msgid "Convert conditional jumps in innermost loops to branchless equivalents." +#: config/nds32/nds32.opt:71 +msgid "Use reduced-set registers for register allocation." msgstr "" -#: common.opt:1638 -msgid "Do not generate .size directives." +#: config/nds32/nds32.opt:75 +msgid "Use full-set registers for register allocation." msgstr "" -#: common.opt:1642 -msgid "Perform indirect inlining." +#: config/nds32/nds32.opt:81 +msgid "Always align function entry, jump target and return address." msgstr "" -#: common.opt:1648 -msgid "" -"Enable inlining of function declared \"inline\", disabling disables all " -"inlining." +#: config/nds32/nds32.opt:85 +msgid "Align function entry to 4 byte." msgstr "" -#: common.opt:1652 +#: config/nds32/nds32.opt:97 msgid "" -"Integrate functions into their callers when code size is known not to grow." +"Prevent $fp being allocated during register allocation so that compiler is " +"able to force performing fp-as-gp optimization." msgstr "" -#: common.opt:1656 +#: config/nds32/nds32.opt:101 msgid "" -"Integrate functions not declared \"inline\" into their callers when " -"profitable." +"Forbid using $fp to access static and global variables. This option " +"strictly forbids fp-as-gp optimization regardless of '-mforce-fp-as-gp'." msgstr "" -#: common.opt:1660 -msgid "Integrate functions only required by their single caller." +#: config/nds32/nds32.opt:105 +msgid "Specify the address generation strategy for ICT call's code model." msgstr "" -#: common.opt:1667 -msgid "" -"-finline-limit=\tLimit the size of inlined functions to ." +#: config/nds32/nds32.opt:109 +msgid "Known cmodel types (for use with the -mict-model= option):" msgstr "" -#: common.opt:1671 -msgid "" -"Inline __atomic operations when a lock free instruction sequence is " -"available." +#: config/nds32/nds32.opt:119 +msgid "Generate conditional move instructions." msgstr "" -#: common.opt:1678 -msgid "" -"-fcf-protection=[full|branch|return|none]\tInstrument functions with checks " -"to verify jump/call/return control-flow transfer instructions have valid " -"targets." +#: config/nds32/nds32.opt:123 +msgid "Generate hardware abs instructions." msgstr "" -#: common.opt:1698 -msgid "Instrument function entry and exit with profiling calls." +#: config/nds32/nds32.opt:127 +msgid "Generate performance extension instructions." msgstr "" -#: common.opt:1702 -msgid "" -"-finstrument-functions-exclude-function-list=name,... Do not instrument " -"listed functions." +#: config/nds32/nds32.opt:131 +msgid "Generate performance extension version 2 instructions." msgstr "" -#: common.opt:1706 -msgid "" -"-finstrument-functions-exclude-file-list=filename,... Do not instrument " -"functions listed in files." +#: config/nds32/nds32.opt:135 +msgid "Generate string extension instructions." msgstr "" -#: common.opt:1710 -msgid "Perform interprocedural constant propagation." +#: config/nds32/nds32.opt:139 +msgid "Generate DSP extension instructions." msgstr "" -#: common.opt:1714 -msgid "Perform cloning to make Interprocedural constant propagation stronger." +#: config/nds32/nds32.opt:143 +msgid "Generate v3 push25/pop25 instructions." msgstr "" -#: common.opt:1722 -msgid "Perform interprocedural bitwise constant propagation." +#: config/nds32/nds32.opt:147 +msgid "Generate 16-bit instructions." msgstr "" -#: common.opt:1726 -msgid "Perform interprocedural profile propagation." +#: config/nds32/nds32.opt:151 +msgid "Insert relax hint for linker to do relaxation." msgstr "" -#: common.opt:1730 -msgid "Perform interprocedural points-to analysis." +#: config/nds32/nds32.opt:155 +msgid "Enable Virtual Hosting support." msgstr "" -#: common.opt:1734 -msgid "Discover pure and const functions." +#: config/nds32/nds32.opt:159 +msgid "Specify the size of each interrupt vector, which must be 4 or 16." msgstr "" -#: common.opt:1738 -msgid "Perform Identical Code Folding for functions and read-only variables." +#: config/nds32/nds32.opt:163 +msgid "Specify the security level of c-isr for the whole file." msgstr "" -#: common.opt:1742 -msgid "Perform Identical Code Folding for functions." +#: config/nds32/nds32.opt:167 +msgid "" +"Specify the size of each cache block, which must be a power of 2 between 4 " +"and 512." msgstr "" -#: common.opt:1746 -msgid "Perform Identical Code Folding for variables." +#: config/nds32/nds32.opt:175 +msgid "Known arch types (for use with the -march= option):" msgstr "" -#: common.opt:1750 -msgid "Discover read-only and non addressable static variables." +#: config/nds32/nds32.opt:197 +msgid "Specify the cpu for pipeline model." msgstr "" -#: common.opt:1754 -msgid "Discover read-only, write-only and non-addressable static variables." +#: config/nds32/nds32.opt:201 +msgid "Known cpu types (for use with the -mcpu= option):" msgstr "" -#: common.opt:1758 -msgid "Reduce stack alignment on call sites if possible." +#: config/nds32/nds32.opt:361 +msgid "" +"Specify a fpu configuration value from 0 to 7; 0-3 is as FPU spec says, and " +"4-7 is corresponding to 0-3." msgstr "" -#: common.opt:1770 -msgid "Perform IPA Value Range Propagation." +#: config/nds32/nds32.opt:365 +msgid "" +"Known floating-point number of registers (for use with the -mconfig-fpu= " +"option):" msgstr "" -#: common.opt:1774 -msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm." +#: config/nds32/nds32.opt:393 +msgid "" +"Specify configuration of instruction mul: fast1, fast2 or slow. The default " +"is fast1." msgstr "" -#: common.opt:1787 -msgid "-fira-region=[one|all|mixed]\tSet regions for IRA." +#: config/nds32/nds32.opt:412 +msgid "" +"Specify how many read/write ports for n9/n10 cores. The value should be " +"3r2w or 2r1w." msgstr "" -#: common.opt:1803 -msgid "Use IRA based register pressure calculation in RTL hoist optimizations." +#: config/nds32/nds32.opt:425 +msgid "Enable constructor/destructor feature." msgstr "" -#: common.opt:1808 -msgid "Use IRA based register pressure calculation in RTL loop optimizations." +#: config/nds32/nds32.opt:429 +msgid "Guide linker to relax instructions." msgstr "" -#: common.opt:1813 -msgid "Share slots for saving different hard registers." +#: config/nds32/nds32.opt:433 +msgid "Generate floating-point multiply-accumulation instructions." msgstr "" -#: common.opt:1817 -msgid "Share stack slots for spilled pseudo-registers." +#: config/nds32/nds32.opt:437 +msgid "Generate single-precision floating-point instructions." msgstr "" -#: common.opt:1821 -msgid "-fira-verbose=\tControl IRA's level of diagnostic messages." +#: config/nds32/nds32.opt:441 +msgid "Generate double-precision floating-point instructions." msgstr "" -#: common.opt:1825 -msgid "Optimize induction variables on trees." +#: config/nds32/nds32.opt:445 +msgid "Force disable hardware loop, even use -mext-dsp." msgstr "" -#: common.opt:1829 -msgid "Use jump tables for sufficiently large switch statements." +#: config/nds32/nds32.opt:449 +msgid "Permit scheduling of a function's prologue and epilogue sequence." msgstr "" -#: common.opt:1833 -msgid "Generate code for functions even if they are fully inlined." +#: config/nds32/nds32.opt:453 +msgid "Generate return instruction in naked function." msgstr "" -#: common.opt:1837 -msgid "Generate code for static functions even if they are never called." +#: config/nds32/nds32.opt:457 +msgid "Always save $lp in the stack." msgstr "" -#: common.opt:1841 -msgid "Emit static const variables even if they are not used." +#: config/nds32/nds32.opt:465 +msgid "Allow use r15 for inline ASM." msgstr "" -#: common.opt:1845 -msgid "Give external symbols a leading underscore." +#: config/iq2000/iq2000.opt:31 +msgid "Specify CPU for code generation purposes." msgstr "" -#: common.opt:1853 -msgid "Do CFG-sensitive rematerialization in LRA." +#: config/iq2000/iq2000.opt:47 +msgid "Specify CPU for scheduling purposes." msgstr "" -#: common.opt:1857 -msgid "Enable link-time optimization." +#: config/iq2000/iq2000.opt:51 +msgid "Known IQ2000 CPUs (for use with the -mcpu= option):" msgstr "" -#: common.opt:1861 -msgid "Link-time optimization with number of parallel jobs or jobserver." +#: config/iq2000/iq2000.opt:61 config/mips/mips.opt:142 +msgid "Use ROM instead of RAM." msgstr "" -#: common.opt:1883 -msgid "Specify the algorithm to partition symbols and vars at linktime." +#: config/iq2000/iq2000.opt:70 +msgid "No default crt0.o." msgstr "" -#: common.opt:1888 -msgid "" -"-flto-compression-level=\tUse zlib compression level for IL." +#: config/iq2000/iq2000.opt:74 config/mips/mips.opt:409 +msgid "Put uninitialized constants in ROM (needs -membedded-data)." msgstr "" -#: common.opt:1892 -msgid "Merge C++ types using One Definition Rule." +#: config/csky/csky.opt:34 +msgid "Specify the target architecture." msgstr "" -#: common.opt:1896 -msgid "Report various link-time optimization statistics." +#: config/csky/csky.opt:38 +msgid "Specify the target processor." msgstr "" -#: common.opt:1900 -msgid "Report various link-time optimization statistics for WPA only." +#: config/csky/csky.opt:61 +msgid "Enable hardware floating-point instructions." msgstr "" -#: common.opt:1904 -msgid "Set errno after built-in math functions." +#: config/csky/csky.opt:65 +msgid "Use library calls to perform floating-point operations (default)." msgstr "" -#: common.opt:1908 -msgid "-fmax-errors=\tMaximum number of errors to report." +#: config/csky/csky.opt:69 +msgid "Specify the target floating-point hardware/format." msgstr "" -#: common.opt:1912 -msgid "Report on permanent memory allocation." +#: config/csky/csky.opt:73 +msgid "Generate C-SKY FPU double float instructions (default for hard float)." msgstr "" -#: common.opt:1916 -msgid "Report on permanent memory allocation in WPA only." +#: config/csky/csky.opt:77 +msgid "Generate frecipd/fsqrtd/fdivd instructions (default for hard float)." msgstr "" -#: common.opt:1923 -msgid "Attempt to merge identical constants and constant variables." +#: config/csky/csky.opt:85 +msgid "Enable the extended LRW instruction (default for CK801)." msgstr "" -#: common.opt:1927 -msgid "Attempt to merge identical constants across compilation units." +#: config/csky/csky.opt:89 +msgid "Enable interrupt stack instructions." msgstr "" -#: common.opt:1931 -msgid "Attempt to merge identical debug strings across compilation units." +#: config/csky/csky.opt:93 +msgid "Enable multiprocessor instructions." msgstr "" -#: common.opt:1935 -msgid "" -"-fmessage-length=\tLimit diagnostics to characters per " -"line. 0 suppresses line-wrapping." +#: config/csky/csky.opt:97 +msgid "Enable coprocessor instructions." msgstr "" -#: common.opt:1939 -msgid "Perform SMS based modulo scheduling before the first scheduling pass." +#: config/csky/csky.opt:101 +msgid "Enable cache prefetch instructions." msgstr "" -#: common.opt:1943 -msgid "Perform SMS based modulo scheduling with register moves allowed." +#: config/csky/csky.opt:105 +msgid "Enable C-SKY SECURE instructions." msgstr "" -#: common.opt:1947 -msgid "Move loop invariant computations out of loops." +#: config/csky/csky.opt:112 +msgid "Enable C-SKY TRUST instructions." msgstr "" -#: common.opt:1951 -msgid "Use the RTL dead code elimination pass." +#: config/csky/csky.opt:116 +msgid "Enable C-SKY DSP instructions." msgstr "" -#: common.opt:1955 -msgid "Use the RTL dead store elimination pass." +#: config/csky/csky.opt:120 +msgid "Enable C-SKY Enhanced DSP instructions." msgstr "" -#: common.opt:1959 -msgid "" -"Enable/Disable the traditional scheduling in loops that already passed " -"modulo scheduling." +#: config/csky/csky.opt:124 +msgid "Enable C-SKY Vector DSP instructions." msgstr "" -#: common.opt:1963 -msgid "Support synchronous non-call exceptions." +#: config/csky/csky.opt:130 +msgid "Generate divide instructions." msgstr "" -#: common.opt:1967 -msgid "" -"-foffload== Specify offloading targets and options for " -"them." +#: config/csky/csky.opt:134 +msgid "Generate code for Smart Mode." msgstr "" -#: common.opt:1971 -msgid "" -"-foffload-abi=[lp64|ilp32] Set the ABI to use in an offload compiler." +#: config/csky/csky.opt:138 +msgid "Enable use of R16-R31 (default)." msgstr "" -#: common.opt:1984 -msgid "When possible do not generate stack frames." +#: config/csky/csky.opt:142 +msgid "Generate code using global anchor symbol addresses." msgstr "" -#: common.opt:1988 -msgid "Enable all optimization info dumps on stderr." +#: config/csky/csky.opt:146 +msgid "Generate push/pop instructions (default)." msgstr "" -#: common.opt:1992 -msgid "-fopt-info[-=filename]\tDump compiler optimization details." +#: config/csky/csky.opt:150 +msgid "Generate stm/ldm instructions (default)." msgstr "" -#: common.opt:1996 -msgid "" -"Write a SRCFILE.opt-record.json file detailing what optimizations were " -"performed." +#: config/csky/csky.opt:157 +msgid "Generate constant pools in the compiler instead of assembler." msgstr "" -#: common.opt:2004 -msgid "Optimize sibling and tail recursive calls." +#: config/csky/csky.opt:161 +msgid "Emit .stack_size directives." msgstr "" -#: common.opt:2008 -msgid "Perform partial inlining." +#: config/csky/csky.opt:165 +msgid "Generate code for C-SKY compiler runtime instead of libgcc." msgstr "" -#: common.opt:2012 common.opt:2016 -msgid "Report on memory allocation before interprocedural optimization." +#: config/csky/csky.opt:169 +msgid "Set the branch costs to roughly the specified number of instructions." msgstr "" -#: common.opt:2020 -msgid "Pack structure members together without holes." +#: config/csky/csky.opt:173 +msgid "Permit scheduling of function prologue and epilogue sequences." msgstr "" -#: common.opt:2024 -msgid "-fpack-struct=\tSet initial maximum structure member alignment." +#: config/csky/csky_tables.opt:24 +msgid "Known CSKY CPUs (for use with the -mcpu= options):" msgstr "" -#: common.opt:2028 -msgid "Return small aggregates in memory, not registers." +#: config/csky/csky_tables.opt:199 +msgid "Known CSKY architectures (for use with the -march= option):" msgstr "" -#: common.opt:2032 -msgid "Perform loop peeling." +#: config/csky/csky_tables.opt:218 +msgid "Known CSKY FPUs (for use with the -mfpu= option):" msgstr "" -#: common.opt:2036 -msgid "Enable machine specific peephole optimizations." +#: config/c6x/c6x-tables.opt:24 +msgid "Known C6X ISAs (for use with the -march= option):" msgstr "" -#: common.opt:2040 -msgid "Enable an RTL peephole pass before sched2." +#: config/c6x/c6x.opt:42 +msgid "Select method for sdata handling." msgstr "" -#: common.opt:2044 -msgid "Generate position-independent code if possible (large mode)." +#: config/c6x/c6x.opt:46 +msgid "Valid arguments for the -msdata= option:" msgstr "" -#: common.opt:2048 -msgid "" -"Generate position-independent code for executables if possible (large mode)." +#: config/c6x/c6x.opt:59 +msgid "Compile for the DSBT shared library ABI." msgstr "" -#: common.opt:2052 -msgid "Generate position-independent code if possible (small mode)." +#: config/cris/linux.opt:27 +msgid "Together with -fpic and -fPIC, do not use GOTPLT references." msgstr "" -#: common.opt:2056 -msgid "" -"Generate position-independent code for executables if possible (small mode)." +#: config/cris/cris.opt:45 +msgid "Work around bug in multiplication instruction." msgstr "" -#: common.opt:2060 -msgid "" -"Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)." +#: config/cris/cris.opt:51 +msgid "Compile for ETRAX 4 (CRIS v3)." msgstr "" -#: common.opt:2064 -msgid "Specify a plugin to load." +#: config/cris/cris.opt:56 +msgid "Compile for ETRAX 100 (CRIS v8)." msgstr "" -#: common.opt:2068 -msgid "" -"-fplugin-arg--[=]\tSpecify argument = for " -"plugin ." +#: config/cris/cris.opt:64 +msgid "Emit verbose debug information in assembly code." msgstr "" -#: common.opt:2072 -msgid "Run predictive commoning optimization." +#: config/cris/cris.opt:71 +msgid "Do not use condition codes from normal instructions." msgstr "" -#: common.opt:2076 -msgid "Generate prefetch instructions, if available, for arrays in loops." +#: config/cris/cris.opt:80 +msgid "Do not emit addressing modes with side-effect assignment." msgstr "" -#: common.opt:2080 -msgid "Enable basic program profiling code." +#: config/cris/cris.opt:89 +msgid "Do not tune stack alignment." msgstr "" -#: common.opt:2084 -msgid "Generate absolute source path names for gcov." +#: config/cris/cris.opt:98 +msgid "Do not tune writable data alignment." msgstr "" -#: common.opt:2088 -msgid "Insert arc-based program profiling code." +#: config/cris/cris.opt:107 +msgid "Do not tune code and read-only data alignment." msgstr "" -#: common.opt:2092 -msgid "" -"Set the top-level directory for storing the profile data. The default is " -"'pwd'." +#: config/cris/cris.opt:116 +msgid "Align code and data to 32 bits." msgstr "" -#: common.opt:2097 -msgid "Enable correction of flow inconsistent profile data input." +#: config/cris/cris.opt:133 +msgid "Don't align items in code or data." msgstr "" -#: common.opt:2101 -msgid "" -"-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update " -"method." +#: config/cris/cris.opt:142 +msgid "Do not emit function prologue or epilogue." msgstr "" -#: common.opt:2105 -msgid "" -"Instrument only functions from files where names match any regular " -"expression (separated by a semi-colon)." +#: config/cris/cris.opt:149 +msgid "Use the most feature-enabling options allowed by other options." msgstr "" -#: common.opt:2109 -msgid "" -"Instrument only functions from files where names do not match all the " -"regular expressions (separated by a semi-colon)." +#: config/cris/cris.opt:158 +msgid "Override -mbest-lib-options." msgstr "" -#: common.opt:2125 -msgid "" -"Enable common options for generating profile info for profile feedback " -"directed optimizations." +#: config/cris/cris.opt:165 +msgid "-march=ARCH\tGenerate code for the specified chip or CPU version." msgstr "" -#: common.opt:2129 -msgid "" -"Enable common options for generating profile info for profile feedback " -"directed optimizations, and set -fprofile-dir=." +#: config/cris/cris.opt:169 +msgid "-mtune=ARCH\tTune alignment for the specified chip or CPU version." msgstr "" -#: common.opt:2133 +#: config/cris/cris.opt:173 msgid "" -"Enable common options for performing profile feedback directed optimizations." +"-mmax-stackframe=SIZE\tWarn when a stackframe is larger than the specified " +"size." msgstr "" -#: common.opt:2137 +#: config/cris/cris.opt:180 msgid "" -"Enable common options for performing profile feedback directed " -"optimizations, and set -fprofile-dir=." -msgstr "" - -#: common.opt:2141 -msgid "Insert code to profile values of expressions." -msgstr "" - -#: common.opt:2145 -msgid "Report on consistency of profile." +"Emit traps as \"break 8\", default for CRIS v3 and up. If disabled, calls " +"to abort() are used." msgstr "" -#: common.opt:2149 -msgid "Enable function reordering that improves code placement." +#: config/cris/cris.opt:184 +msgid "" +"Emit checks causing \"break 8\" instructions to execute when applying atomic " +"builtins on misaligned memory." msgstr "" -#: common.opt:2153 -msgid "Insert NOP instructions at each function entry." +#: config/cris/cris.opt:188 +msgid "" +"Handle atomic builtins that may be applied to unaligned data by calling " +"library functions. Overrides -mtrap-unaligned-atomic." msgstr "" -#: common.opt:2160 -msgid "-frandom-seed=\tMake compile reproducible using ." +#: config/sh/superh.opt:6 +msgid "Board name [and memory region]." msgstr "" -#: common.opt:2170 -msgid "Record gcc command line switches in the object file." +#: config/sh/superh.opt:10 +msgid "Runtime name." msgstr "" -#: common.opt:2174 -msgid "Return small aggregates in registers." +#: config/sh/sh.opt:42 +msgid "Generate SH1 code." msgstr "" -#: common.opt:2182 -msgid "" -"Tell DSE that the storage for a C++ object is dead when the constructor " -"starts and when the destructor finishes." +#: config/sh/sh.opt:46 +msgid "Generate SH2 code." msgstr "" -#: common.opt:2193 -msgid "" -"-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations " -"to provide a safe compilation for live-patching. At the same time, provides " -"multiple-level control on the enabled IPA optimizations." +#: config/sh/sh.opt:50 +msgid "Generate default double-precision SH2a-FPU code." msgstr "" -#: common.opt:2208 -msgid "Relief of register pressure through live range shrinkage." +#: config/sh/sh.opt:54 +msgid "Generate SH2a FPU-less code." msgstr "" -#: common.opt:2212 -msgid "Perform a register renaming optimization pass." +#: config/sh/sh.opt:58 +msgid "Generate default single-precision SH2a-FPU code." msgstr "" -#: common.opt:2216 -msgid "Perform a target dependent instruction fusion optimization pass." +#: config/sh/sh.opt:62 +msgid "Generate only single-precision SH2a-FPU code." msgstr "" -#: common.opt:2220 -msgid "Reorder basic blocks to improve code placement." +#: config/sh/sh.opt:66 +msgid "Generate SH2e code." msgstr "" -#: common.opt:2224 -msgid "" -"-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering " -"algorithm." +#: config/sh/sh.opt:70 +msgid "Generate SH3 code." msgstr "" -#: common.opt:2237 -msgid "Reorder basic blocks and partition into hot and cold sections." +#: config/sh/sh.opt:74 +msgid "Generate SH3e code." msgstr "" -#: common.opt:2241 -msgid "Reorder functions to improve code placement." +#: config/sh/sh.opt:78 +msgid "Generate SH4 code." msgstr "" -#: common.opt:2245 -msgid "Add a common subexpression elimination pass after loop optimizations." +#: config/sh/sh.opt:82 +msgid "Generate SH4-100 code." msgstr "" -#: common.opt:2253 -msgid "Disable optimizations that assume default FP rounding behavior." +#: config/sh/sh.opt:86 +msgid "Generate SH4-200 code." msgstr "" -#: common.opt:2257 -msgid "Enable scheduling across basic blocks." +#: config/sh/sh.opt:92 +msgid "Generate SH4-300 code." msgstr "" -#: common.opt:2261 -msgid "Enable register pressure sensitive insn scheduling." +#: config/sh/sh.opt:96 +msgid "Generate SH4 FPU-less code." msgstr "" -#: common.opt:2265 -msgid "Allow speculative motion of non-loads." +#: config/sh/sh.opt:100 +msgid "Generate SH4-100 FPU-less code." msgstr "" -#: common.opt:2269 -msgid "Allow speculative motion of some loads." +#: config/sh/sh.opt:104 +msgid "Generate SH4-200 FPU-less code." msgstr "" -#: common.opt:2273 -msgid "Allow speculative motion of more loads." +#: config/sh/sh.opt:108 +msgid "Generate SH4-300 FPU-less code." msgstr "" -#: common.opt:2277 -msgid "-fsched-verbose=\tSet the verbosity level of the scheduler." +#: config/sh/sh.opt:112 +msgid "Generate code for SH4 340 series (MMU/FPU-less)." msgstr "" -#: common.opt:2281 -msgid "If scheduling post reload, do superblock scheduling." +#: config/sh/sh.opt:117 +msgid "Generate code for SH4 400 series (MMU/FPU-less)." msgstr "" -#: common.opt:2289 -msgid "Reschedule instructions before register allocation." +#: config/sh/sh.opt:122 +msgid "Generate code for SH4 500 series (FPU-less)." msgstr "" -#: common.opt:2293 -msgid "Reschedule instructions after register allocation." +#: config/sh/sh.opt:127 +msgid "Generate default single-precision SH4 code." msgstr "" -#: common.opt:2300 -msgid "Schedule instructions using selective scheduling algorithm." +#: config/sh/sh.opt:131 +msgid "Generate default single-precision SH4-100 code." msgstr "" -#: common.opt:2304 -msgid "Run selective scheduling after reload." +#: config/sh/sh.opt:135 +msgid "Generate default single-precision SH4-200 code." msgstr "" -#: common.opt:2308 -msgid "Run self-tests, using the given path to locate test files." +#: config/sh/sh.opt:139 +msgid "Generate default single-precision SH4-300 code." msgstr "" -#: common.opt:2312 -msgid "Perform software pipelining of inner loops during selective scheduling." +#: config/sh/sh.opt:143 +msgid "Generate only single-precision SH4 code." msgstr "" -#: common.opt:2316 -msgid "Perform software pipelining of outer loops during selective scheduling." +#: config/sh/sh.opt:147 +msgid "Generate only single-precision SH4-100 code." msgstr "" -#: common.opt:2320 -msgid "Reschedule pipelined regions without pipelining." +#: config/sh/sh.opt:151 +msgid "Generate only single-precision SH4-200 code." msgstr "" -#: common.opt:2324 -msgid "" -"Allow interposing function (or variables) by ones with different semantics " -"(or initializer) respectively by dynamic linker." +#: config/sh/sh.opt:155 +msgid "Generate only single-precision SH4-300 code." msgstr "" -#: common.opt:2330 -msgid "Allow premature scheduling of queued insns." +#: config/sh/sh.opt:159 +msgid "Generate SH4a code." msgstr "" -#: common.opt:2334 -msgid "" -"-fsched-stalled-insns=\tSet number of queued insns that can be " -"prematurely scheduled." +#: config/sh/sh.opt:163 +msgid "Generate SH4a FPU-less code." msgstr "" -#: common.opt:2342 -msgid "" -"Set dependence distance checking in premature scheduling of queued insns." +#: config/sh/sh.opt:167 +msgid "Generate default single-precision SH4a code." msgstr "" -#: common.opt:2346 -msgid "" -"-fsched-stalled-insns-dep=\tSet dependence distance checking in " -"premature scheduling of queued insns." +#: config/sh/sh.opt:171 +msgid "Generate only single-precision SH4a code." msgstr "" -#: common.opt:2350 -msgid "Enable the group heuristic in the scheduler." +#: config/sh/sh.opt:175 +msgid "Generate SH4al-dsp code." msgstr "" -#: common.opt:2354 -msgid "Enable the critical path heuristic in the scheduler." +#: config/sh/sh.opt:183 +msgid "Generate code in big endian mode." msgstr "" -#: common.opt:2358 -msgid "Enable the speculative instruction heuristic in the scheduler." +#: config/sh/sh.opt:187 +msgid "Generate 32-bit offsets in switch tables." msgstr "" -#: common.opt:2362 -msgid "Enable the rank heuristic in the scheduler." +#: config/sh/sh.opt:191 +msgid "Generate bit instructions." msgstr "" -#: common.opt:2366 -msgid "Enable the last instruction heuristic in the scheduler." +#: config/sh/sh.opt:199 +msgid "Assume that zero displacement conditional branches are fast." msgstr "" -#: common.opt:2370 -msgid "Enable the dependent count heuristic in the scheduler." +#: config/sh/sh.opt:203 +msgid "Force the usage of delay slots for conditional branches." msgstr "" -#: common.opt:2374 -msgid "Access data in the same section from shared anchor points." +#: config/sh/sh.opt:207 +msgid "Align doubles at 64-bit boundaries." msgstr "" -#: common.opt:2386 -msgid "Turn on Redundant Extensions Elimination pass." +#: config/sh/sh.opt:211 +msgid "Division strategy, one of: call-div1, call-fp, call-table." msgstr "" -#: common.opt:2390 -msgid "Show column numbers in diagnostics, when available. Default on." +#: config/sh/sh.opt:215 +msgid "Specify name for 32 bit signed division function." msgstr "" -#: common.opt:2394 +#: config/sh/sh.opt:219 +msgid "Generate ELF FDPIC code." +msgstr "" + +#: config/sh/sh.opt:223 msgid "" -"Emit function prologues only before parts of the function that need it, " -"rather than at the top of the function." +"Enable the use of 64-bit floating point registers in fmov instructions. See " +"-mdalign if 64-bit alignment is required." msgstr "" -#: common.opt:2399 -msgid "Shrink-wrap parts of the prologue and epilogue separately." +#: config/sh/sh.opt:231 config/sh/sh.opt:269 +msgid "Follow Renesas (formerly Hitachi) / SuperH calling conventions." msgstr "" -#: common.opt:2403 -msgid "Disable optimizations observable by IEEE signaling NaNs." +#: config/sh/sh.opt:235 +msgid "Increase the IEEE compliance for floating-point comparisons." msgstr "" -#: common.opt:2407 +#: config/sh/sh.opt:239 msgid "" -"Disable floating point optimizations that ignore the IEEE signedness of zero." +"Inline code to invalidate instruction cache entries after setting up nested " +"function trampolines." msgstr "" -#: common.opt:2411 -msgid "Convert floating point constants to single precision constants." +#: config/sh/sh.opt:243 config/arc/arc.opt:246 +msgid "Annotate assembler instructions with estimated addresses." msgstr "" -#: common.opt:2415 -msgid "Split lifetimes of induction variables when loops are unrolled." +#: config/sh/sh.opt:247 +msgid "Generate code in little endian mode." msgstr "" -#: common.opt:2419 -msgid "Generate discontiguous stack frames." +#: config/sh/sh.opt:251 +msgid "Mark MAC register as call-clobbered." msgstr "" -#: common.opt:2423 -msgid "Split wide types into independent registers." +#: config/sh/sh.opt:257 +msgid "Make structs a multiple of 4 bytes (warning: ABI altered)." msgstr "" -#: common.opt:2427 -msgid "Enable backward propagation of use properties at the SSA level." +#: config/sh/sh.opt:261 +msgid "Emit function-calls using global offset table when generating PIC." msgstr "" -#: common.opt:2431 -msgid "Optimize conditional patterns using SSA PHI nodes." +#: config/sh/sh.opt:265 +msgid "Shorten address references during linking." msgstr "" -#: common.opt:2435 -msgid "" -"Optimize amount of stdarg registers saved to stack at start of function." +#: config/sh/sh.opt:273 +msgid "Specify the model for atomic operations." msgstr "" -#: common.opt:2439 -msgid "Apply variable expansion when loops are unrolled." +#: config/sh/sh.opt:277 +msgid "Use tas.b instruction for __atomic_test_and_set." msgstr "" -#: common.opt:2443 -msgid "" -"-fstack-check=[no|generic|specific]\tInsert stack checking code into the " -"program." +#: config/sh/sh.opt:281 +msgid "Cost to assume for a multiply insn." msgstr "" -#: common.opt:2447 +#: config/sh/sh.opt:285 msgid "" -"Insert stack checking code into the program. Same as -fstack-check=specific." +"Don't generate privileged-mode only code; implies -mno-inline-ic_invalidate " +"if the inline code would not work in user mode." msgstr "" -#: common.opt:2451 -msgid "" -"Insert code to probe each page of stack space as it is allocated to protect " -"from stack-clash style attacks." +#: config/sh/sh.opt:291 +msgid "Pretend a branch-around-a-move is a conditional move." msgstr "" -#: common.opt:2459 -msgid "" -"-fstack-limit-register=\tTrap if the stack goes past ." +#: config/sh/sh.opt:295 +msgid "Enable the use of the fsca instruction." msgstr "" -#: common.opt:2463 -msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol ." +#: config/sh/sh.opt:299 +msgid "Enable the use of the fsrra instruction." msgstr "" -#: common.opt:2467 -msgid "Use propolice as a stack protection method." +#: config/sh/sh.opt:303 +msgid "Use LRA instead of reload (transitional)." msgstr "" -#: common.opt:2471 -msgid "Use a stack protection method for every function." +#: config/gcn/gcn.opt:26 +msgid "GCN GPU type to use:" msgstr "" -#: common.opt:2475 -msgid "Use a smart stack protection method for certain functions." +#: config/gcn/gcn.opt:39 config/gcn/gcn.opt:43 +msgid "Specify the name of the target GPU." msgstr "" -#: common.opt:2479 -msgid "" -"Use stack protection method only for functions with the stack_protect " -"attribute." +#: config/gcn/gcn.opt:55 +msgid "Enable OpenMP GPU offloading." msgstr "" -#: common.opt:2483 -msgid "Output stack usage information on a per-function basis." +#: config/gcn/gcn.opt:71 +msgid "" +"-mstack-size=\tSet the private segment size per wave-front, in bytes." msgstr "" -#: common.opt:2495 -msgid "Assume strict aliasing rules apply." +#: config/gcn/gcn.opt:78 +msgid "Warn about invalid OpenACC dimensions." msgstr "" -#: common.opt:2499 -msgid "" -"Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer." +#: config/fr30/fr30.opt:23 +msgid "Assume small address space." msgstr "" -#: common.opt:2503 -msgid "Implement __atomic operations via libcalls to legacy __sync functions." +#: config/mips/mips.opt:32 +msgid "-mabi=ABI\tGenerate code that conforms to the given ABI." msgstr "" -#: common.opt:2507 -msgid "Check for syntax errors, then stop." +#: config/mips/mips.opt:36 +msgid "Known MIPS ABIs (for use with the -mabi= option):" msgstr "" -#: common.opt:2511 -msgid "Create data files needed by \"gcov\"." +#: config/mips/mips.opt:55 +msgid "Generate code that can be used in SVR4-style dynamic objects." msgstr "" -#: common.opt:2515 -msgid "Perform jump threading optimizations." +#: config/mips/mips.opt:59 +msgid "Use PMC-style 'mad' instructions." msgstr "" -#: common.opt:2519 -msgid "Report the time taken by each compiler pass." +#: config/mips/mips.opt:63 +msgid "Use integer madd/msub instructions." msgstr "" -#: common.opt:2523 -msgid "Record times taken by sub-phases separately." +#: config/mips/mips.opt:67 +msgid "-march=ISA\tGenerate code for the given ISA." msgstr "" -#: common.opt:2527 +#: config/mips/mips.opt:71 msgid "" -"-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the " -"default thread-local storage code generation model." +"-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions." msgstr "" -#: common.opt:2546 -msgid "Reorder top level functions, variables, and asms." +#: config/mips/mips.opt:75 +msgid "Use Branch Likely instructions, overriding the architecture default." msgstr "" -#: common.opt:2550 -msgid "Perform superblock formation via tail duplication." +#: config/mips/mips.opt:79 +msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing." msgstr "" -#: common.opt:2554 -msgid "" -"For targets that normally need trampolines for nested functions, always " -"generate them instead of using descriptors." +#: config/mips/mips.opt:83 +msgid "Trap on integer divide by zero." msgstr "" -#: common.opt:2562 -msgid "Assume floating-point operations can trap." +#: config/mips/mips.opt:87 +msgid "" +"-mcode-readable=SETTING\tSpecify when instructions are allowed to access " +"code." msgstr "" -#: common.opt:2566 -msgid "Trap for signed overflow in addition, subtraction and multiplication." +#: config/mips/mips.opt:91 +msgid "Valid arguments to -mcode-readable=:" msgstr "" -#: common.opt:2570 -msgid "Enable SSA-CCP optimization on trees." +#: config/mips/mips.opt:104 +msgid "Use branch-and-break sequences to check for integer divide by zero." msgstr "" -#: common.opt:2574 -msgid "Enable SSA-BIT-CCP optimization on trees." +#: config/mips/mips.opt:108 +msgid "Use trap instructions to check for integer divide by zero." msgstr "" -#: common.opt:2582 -msgid "Enable loop header copying on trees." +#: config/mips/mips.opt:112 +msgid "Allow the use of MDMX instructions." msgstr "" -#: common.opt:2590 -msgid "Enable SSA coalescing of user variables." +#: config/mips/mips.opt:116 +msgid "" +"Allow hardware floating-point instructions to cover both 32-bit and 64-bit " +"operations." msgstr "" -#: common.opt:2598 -msgid "Enable copy propagation on trees." +#: config/mips/mips.opt:120 +msgid "Use MIPS-DSP instructions." msgstr "" -#: common.opt:2606 -msgid "Transform condition stores into unconditional ones." +#: config/mips/mips.opt:124 +msgid "Use MIPS-DSP REV 2 instructions." msgstr "" -#: common.opt:2610 -msgid "Perform conversions of switch initializations." +#: config/mips/mips.opt:146 +msgid "Use Enhanced Virtual Addressing instructions." msgstr "" -#: common.opt:2614 -msgid "Enable SSA dead code elimination optimization on trees." +#: config/mips/mips.opt:150 +msgid "Use NewABI-style %reloc() assembly operators." msgstr "" -#: common.opt:2618 -msgid "Enable dominator optimizations." +#: config/mips/mips.opt:154 +msgid "Use -G for data that is not defined by the current object." msgstr "" -#: common.opt:2622 -msgid "Enable tail merging on trees." +#: config/mips/mips.opt:158 +msgid "Work around certain 24K errata." msgstr "" -#: common.opt:2626 -msgid "Enable dead store elimination." +#: config/mips/mips.opt:162 +msgid "Work around certain R4000 errata." msgstr "" -#: common.opt:2630 -msgid "Enable forward propagation on trees." +#: config/mips/mips.opt:166 +msgid "Work around certain R4400 errata." msgstr "" -#: common.opt:2634 -msgid "Enable Full Redundancy Elimination (FRE) on trees." +#: config/mips/mips.opt:170 +msgid "Work around the R5900 short loop erratum." msgstr "" -#: common.opt:2638 -msgid "Enable string length optimizations on trees." +#: config/mips/mips.opt:174 +msgid "Work around certain RM7000 errata." msgstr "" -#: common.opt:2642 -msgid "" -"Detect paths that trigger erroneous or undefined behavior due to " -"dereferencing a null pointer. Isolate those paths from the main control " -"flow and turn the statement with erroneous or undefined behavior into a trap." +#: config/mips/mips.opt:178 +msgid "Work around certain R10000 errata." msgstr "" -#: common.opt:2648 -msgid "" -"Detect paths that trigger erroneous or undefined behavior due to a null " -"value being used in a way forbidden by a returns_nonnull or nonnull " -"attribute. Isolate those paths from the main control flow and turn the " -"statement with erroneous or undefined behavior into a trap." +#: config/mips/mips.opt:182 +msgid "Work around errata for early SB-1 revision 2 cores." msgstr "" -#: common.opt:2655 -msgid "Enable loop distribution on trees." +#: config/mips/mips.opt:186 +msgid "Work around certain VR4120 errata." msgstr "" -#: common.opt:2659 -msgid "Enable loop distribution for patterns transformed into a library call." +#: config/mips/mips.opt:190 +msgid "Work around VR4130 mflo/mfhi errata." msgstr "" -#: common.opt:2663 -msgid "Enable loop invariant motion on trees." +#: config/mips/mips.opt:194 +msgid "Work around an early 4300 hardware bug." msgstr "" -#: common.opt:2671 -msgid "Create canonical induction variables in loops." +#: config/mips/mips.opt:198 +msgid "FP exceptions are enabled." msgstr "" -#: common.opt:2675 -msgid "Enable loop optimizations on tree level." +#: config/mips/mips.opt:202 +msgid "Use 32-bit floating-point registers." msgstr "" -#: common.opt:2679 -msgid "" -"-ftree-parallelize-loops=\tEnable automatic parallelization of loops." +#: config/mips/mips.opt:206 +msgid "Conform to the o32 FPXX ABI." msgstr "" -#: common.opt:2683 -msgid "Enable hoisting loads from conditional pointers." +#: config/mips/mips.opt:210 +msgid "Use 64-bit floating-point registers." msgstr "" -#: common.opt:2687 -msgid "Enable SSA-PRE optimization on trees." +#: config/mips/mips.opt:214 +msgid "" +"-mflush-func=FUNC\tUse FUNC to flush the cache before calling stack " +"trampolines." msgstr "" -#: common.opt:2691 -msgid "" -"In SSA-PRE optimization on trees, enable partial-partial redundancy " -"elimination." +#: config/mips/mips.opt:218 +msgid "-mabs=MODE\tSelect the IEEE 754 ABS/NEG instruction execution mode." msgstr "" -#: common.opt:2695 -msgid "Perform function-local points-to analysis on trees." +#: config/mips/mips.opt:222 +msgid "-mnan=ENCODING\tSelect the IEEE 754 NaN data encoding." msgstr "" -#: common.opt:2699 -msgid "Enable reassociation on tree level." +#: config/mips/mips.opt:226 +msgid "" +"Known MIPS IEEE 754 settings (for use with the -mabs= and -mnan= options):" msgstr "" -#: common.opt:2707 -msgid "Enable SSA code sinking on trees." +#: config/mips/mips.opt:236 +msgid "Use 32-bit general registers." msgstr "" -#: common.opt:2711 -msgid "Perform straight-line strength reduction." +#: config/mips/mips.opt:240 +msgid "Use 64-bit general registers." msgstr "" -#: common.opt:2715 -msgid "Perform scalar replacement of aggregates." +#: config/mips/mips.opt:244 +msgid "Use GP-relative addressing to access small data." msgstr "" -#: common.opt:2719 -msgid "Replace temporary expressions in the SSA->normal pass." +#: config/mips/mips.opt:248 +msgid "" +"When generating -mabicalls code, allow executables to use PLTs and copy " +"relocations." msgstr "" -#: common.opt:2723 -msgid "Perform live range splitting during the SSA->normal pass." +#: config/mips/mips.opt:252 +msgid "Allow the use of hardware floating-point ABI and instructions." msgstr "" -#: common.opt:2727 -msgid "Perform Value Range Propagation on trees." +#: config/mips/mips.opt:256 +msgid "Generate code that is link-compatible with MIPS16 and microMIPS code." msgstr "" -#: common.opt:2731 -msgid "Split paths leading to loop backedges." +#: config/mips/mips.opt:260 +msgid "An alias for minterlink-compressed provided for backward-compatibility." msgstr "" -#: common.opt:2735 -msgid "" -"Assume common declarations may be overridden with ones with a larger " -"trailing array." +#: config/mips/mips.opt:264 +msgid "-mipsN\tGenerate code for ISA level N." msgstr "" -#: common.opt:2740 -msgid "Compile whole compilation unit at a time." +#: config/mips/mips.opt:268 +msgid "Generate MIPS16 code." msgstr "" -#: common.opt:2744 -msgid "Perform loop unrolling when iteration count is known." +#: config/mips/mips.opt:272 +msgid "Use MIPS-3D instructions." msgstr "" -#: common.opt:2748 -msgid "Perform loop unrolling for all loops." +#: config/mips/mips.opt:276 +msgid "Use ll, sc and sync instructions." msgstr "" -#: common.opt:2759 -msgid "" -"Allow optimization for floating-point arithmetic which may change the result " -"of the operation due to rounding." +#: config/mips/mips.opt:280 +msgid "Use -G for object-local data." msgstr "" -#: common.opt:2764 -msgid "Same as -fassociative-math for expressions which include division." +#: config/mips/mips.opt:284 +msgid "Use indirect calls." msgstr "" -#: common.opt:2772 -msgid "Allow math optimizations that may violate IEEE or ISO standards." +#: config/mips/mips.opt:288 +msgid "Use a 32-bit long type." msgstr "" -#: common.opt:2776 -msgid "Perform loop unswitching." +#: config/mips/mips.opt:292 +msgid "Use a 64-bit long type." msgstr "" -#: common.opt:2780 -msgid "Perform loop splitting." +#: config/mips/mips.opt:296 +msgid "Pass the address of the ra save location to _mcount in $12." msgstr "" -#: common.opt:2784 -msgid "Version loops based on whether indices have a stride of one." +#: config/mips/mips.opt:300 +msgid "Don't optimize block moves." msgstr "" -#: common.opt:2788 -msgid "Just generate unwind tables for exception handling." +#: config/mips/mips.opt:304 +msgid "Use microMIPS instructions." msgstr "" -#: common.opt:2792 -msgid "Use the bfd linker instead of the default linker." +#: config/mips/mips.opt:308 +msgid "Use MIPS MSA Extension instructions." msgstr "" -#: common.opt:2796 -msgid "Use the gold linker instead of the default linker." +#: config/mips/mips.opt:312 +msgid "Allow the use of MT instructions." msgstr "" -#: common.opt:2800 -msgid "Use the lld LLVM linker instead of the default linker." +#: config/mips/mips.opt:316 +msgid "Prevent the use of all floating-point operations." msgstr "" -#: common.opt:2812 -msgid "Perform variable tracking." +#: config/mips/mips.opt:320 +msgid "Use MCU instructions." msgstr "" -#: common.opt:2820 -msgid "Perform variable tracking by annotating assignments." +#: config/mips/mips.opt:324 +msgid "Do not use a cache-flushing function before calling stack trampolines." msgstr "" -#: common.opt:2826 -msgid "Toggle -fvar-tracking-assignments." +#: config/mips/mips.opt:328 +msgid "Do not use MDMX instructions." msgstr "" -#: common.opt:2834 -msgid "" -"Perform variable tracking and also tag variables that are uninitialized." +#: config/mips/mips.opt:332 +msgid "Generate normal-mode code." msgstr "" -#: common.opt:2839 -msgid "Enable vectorization on trees." +#: config/mips/mips.opt:336 +msgid "Do not use MIPS-3D instructions." msgstr "" -#: common.opt:2847 -msgid "Enable loop vectorization on trees." +#: config/mips/mips.opt:340 +msgid "Use paired-single floating-point instructions." msgstr "" -#: common.opt:2851 -msgid "Enable basic block vectorization (SLP) on trees." +#: config/mips/mips.opt:344 +msgid "" +"-mr10k-cache-barrier=SETTING\tSpecify when r10k cache barriers should be " +"inserted." msgstr "" -#: common.opt:2855 -msgid "" -"-fvect-cost-model=[unlimited|dynamic|cheap]\tSpecifies the cost model for " -"vectorization." +#: config/mips/mips.opt:348 +msgid "Valid arguments to -mr10k-cache-barrier=:" msgstr "" -#: common.opt:2859 -msgid "" -"-fsimd-cost-model=[unlimited|dynamic|cheap]\tSpecifies the vectorization " -"cost model for code marked with a simd directive." +#: config/mips/mips.opt:361 +msgid "Try to allow the linker to turn PIC calls into direct calls." msgstr "" -#: common.opt:2875 +#: config/mips/mips.opt:365 msgid "" -"Enables the dynamic vectorizer cost model. Preserved for backward " -"compatibility." +"When generating -mabicalls code, make the code suitable for use in shared " +"libraries." msgstr "" -#: common.opt:2883 -msgid "Enable copy propagation of scalar-evolution information." +#: config/mips/mips.opt:369 +msgid "" +"Restrict the use of hardware floating-point instructions to 32-bit " +"operations." msgstr "" -#: common.opt:2893 -msgid "Add extra commentary to assembler output." +#: config/mips/mips.opt:373 +msgid "Use SmartMIPS instructions." msgstr "" -#: common.opt:2897 -msgid "" -"-fvisibility=[default|internal|hidden|protected]\tSet the default symbol " -"visibility." +#: config/mips/mips.opt:377 +msgid "Prevent the use of all hardware floating-point instructions." msgstr "" -#: common.opt:2916 -msgid "Validate vtable pointers before using them." +#: config/mips/mips.opt:381 +msgid "Optimize lui/addiu address loads." msgstr "" -#: common.opt:2932 -msgid "Output vtable verification counters." +#: config/mips/mips.opt:385 +msgid "Assume all symbols have 32-bit values." msgstr "" -#: common.opt:2936 -msgid "Output vtable verification pointer sets information." +#: config/mips/mips.opt:389 +msgid "Use synci instruction to invalidate i-cache." msgstr "" -#: common.opt:2940 -msgid "Use expression value profiles in optimizations." +#: config/mips/mips.opt:397 +msgid "Use lwxc1/swxc1/ldxc1/sdxc1 instructions where applicable." msgstr "" -#: common.opt:2944 -msgid "Construct webs and split unrelated uses of single variable." +#: config/mips/mips.opt:401 +msgid "Use 4-operand madd.s/madd.d and related instructions where applicable." msgstr "" -#: common.opt:2948 -msgid "Enable conditional dead code elimination for builtin calls." +#: config/mips/mips.opt:413 +msgid "Use Virtualization (VZ) instructions." msgstr "" -#: common.opt:2952 -msgid "Perform whole program optimizations." +#: config/mips/mips.opt:417 +msgid "Use eXtended Physical Address (XPA) instructions." msgstr "" -#: common.opt:2956 -msgid "Assume pointer overflow wraps around." +#: config/mips/mips.opt:421 +msgid "Use Cyclic Redundancy Check (CRC) instructions." msgstr "" -#: common.opt:2960 -msgid "Assume signed arithmetic overflow wraps around." +#: config/mips/mips.opt:425 +msgid "Use Global INValidate (GINV) instructions." msgstr "" -#: common.opt:2964 -msgid "Put zero initialized data in the bss section." +#: config/mips/mips.opt:429 +msgid "Perform VR4130-specific alignment optimizations." msgstr "" -#: common.opt:2968 -msgid "Generate debug information in default format." +#: config/mips/mips.opt:433 +msgid "Lift restrictions on GOT size." msgstr "" -#: common.opt:2972 -msgid "Assume assembler support for (DWARF2+) .loc directives." +#: config/mips/mips.opt:437 +msgid "Enable use of odd-numbered single-precision registers." msgstr "" -#: common.opt:2976 -msgid "Assume assembler support for view in (DWARF2+) .loc directives." +#: config/mips/mips.opt:441 +msgid "Optimize frame header." msgstr "" -#: common.opt:2996 -msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF." +#: config/mips/mips.opt:448 +msgid "Enable load/store bonding." msgstr "" -#: common.opt:3000 -msgid "Generate debug information in default version of DWARF format." +#: config/mips/mips.opt:452 +msgid "Specify the compact branch usage policy." msgstr "" -#: common.opt:3004 -msgid "Generate debug information in DWARF v2 (or later) format." +#: config/mips/mips.opt:456 +msgid "Policies available for use with -mcompact-branches=:" msgstr "" -#: common.opt:3008 -msgid "Generate debug information in default extended format." +#: config/mips/mips.opt:469 +msgid "Use Loongson MultiMedia extensions Instructions (MMI) instructions." msgstr "" -#: common.opt:3012 -msgid "Generate extended entry point information for inlined functions." +#: config/mips/mips.opt:473 +msgid "Use Loongson EXTension (EXT) instructions." msgstr "" -#: common.opt:3016 -msgid "Compute locview reset points based on insn length estimates." +#: config/mips/mips.opt:477 +msgid "Use Loongson EXTension R2 (EXT2) instructions." msgstr "" -#: common.opt:3024 -msgid "Don't generate DWARF pubnames and pubtypes sections." +#: config/mips/mips-tables.opt:24 +msgid "Known MIPS CPUs (for use with the -march= and -mtune= options):" msgstr "" -#: common.opt:3028 -msgid "Generate DWARF pubnames and pubtypes sections." +#: config/mips/mips-tables.opt:28 +msgid "Known MIPS ISA levels (for use with the -mips option):" msgstr "" -#: common.opt:3032 -msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions." +#: config/tilegx/tilegx.opt:30 +msgid "Known TILE-Gx CPUs (for use with the -mcpu= option):" msgstr "" -#: common.opt:3036 -msgid "Record gcc command line switches in DWARF DW_AT_producer." +#: config/tilegx/tilegx.opt:37 +msgid "Compile with 32 bit longs and pointers." msgstr "" -#: common.opt:3040 -msgid "Generate debug information in separate .dwo files." +#: config/tilegx/tilegx.opt:41 +msgid "Compile with 64 bit longs and pointers." msgstr "" -#: common.opt:3044 -msgid "Generate debug information in STABS format." +#: config/tilegx/tilegx.opt:53 +msgid "Use given TILE-Gx code model." msgstr "" -#: common.opt:3048 -msgid "Generate debug information in extended STABS format." +#: config/arc/arc-tables.opt:25 +msgid "Known ARC CPUs (for use with the -mcpu= option):" msgstr "" -#: common.opt:3052 -msgid "Emit progressive recommended breakpoint locations." +#: config/arc/arc.opt:26 +msgid "Compile code for big endian mode." msgstr "" -#: common.opt:3056 -msgid "Don't emit DWARF additions beyond selected version." +#: config/arc/arc.opt:30 +msgid "Compile code for little endian mode. This is the default." msgstr "" -#: common.opt:3060 +#: config/arc/arc.opt:34 msgid "" -"Add description attributes to some DWARF DIEs that have no name attribute." +"Disable ARCompact specific pass to generate conditional execution " +"instructions." msgstr "" -#: common.opt:3064 -msgid "Toggle debug information generation." +#: config/arc/arc.opt:38 +msgid "Generate ARCompact 32-bit code for ARC600 processor." msgstr "" -#: common.opt:3068 -msgid "Augment variable location lists with progressive views." +#: config/arc/arc.opt:42 +msgid "Same as -mA6." msgstr "" -#: common.opt:3075 -msgid "Generate debug information in VMS format." +#: config/arc/arc.opt:46 +msgid "Generate ARCompact 32-bit code for ARC601 processor." msgstr "" -#: common.opt:3079 -msgid "Generate debug information in XCOFF format." +#: config/arc/arc.opt:50 +msgid "Generate ARCompact 32-bit code for ARC700 processor." msgstr "" -#: common.opt:3083 -msgid "Generate debug information in extended XCOFF format." +#: config/arc/arc.opt:54 +msgid "Same as -mA7." msgstr "" -#: common.opt:3101 -msgid "Generate compressed debug sections." +#: config/arc/arc.opt:58 +msgid "Force all calls to be made via a jli instruction." msgstr "" -#: common.opt:3105 -msgid "-gz=\tGenerate compressed debug sections in format ." +#: config/arc/arc.opt:62 +msgid "-mmpy-option=MPY Compile ARCv2 code with a multiplier design option." msgstr "" -#: common.opt:3112 -msgid "-iplugindir=\tSet to be the default plugin directory." +#: config/arc/arc.opt:132 +msgid "Enable DIV-REM instructions for ARCv2." msgstr "" -#: common.opt:3116 -msgid "-imultiarch \tSet to be the multiarch include subdirectory." +#: config/arc/arc.opt:136 +msgid "Enable code density instructions for ARCv2." msgstr "" -#: common.opt:3141 -msgid "-o \tPlace output into ." +#: config/arc/arc.opt:140 +msgid "Tweak register allocation to help 16-bit instruction generation." msgstr "" -#: common.opt:3145 -msgid "Enable function profiling." +#: config/arc/arc.opt:150 +msgid "Use ordinarily cached memory accesses for volatile references." msgstr "" -#: common.opt:3155 -msgid "Like -pedantic but issue them as errors." +#: config/arc/arc.opt:154 +msgid "Enable cache bypass for volatile references." msgstr "" -#: common.opt:3195 -msgid "Do not display functions compiled or elapsed time." +#: config/arc/arc.opt:158 +msgid "Generate instructions supported by barrel shifter." msgstr "" -#: common.opt:3227 -msgid "Enable verbose output." +#: config/arc/arc.opt:162 +msgid "Generate norm instruction." msgstr "" -#: common.opt:3231 -msgid "Display the compiler's version." +#: config/arc/arc.opt:166 +msgid "Generate swap instruction." msgstr "" -#: common.opt:3235 -msgid "Suppress warnings." +#: config/arc/arc.opt:170 +msgid "Generate mul64 and mulu64 instructions." msgstr "" -#: common.opt:3245 -msgid "Create a shared library." +#: config/arc/arc.opt:174 +msgid "Do not generate mpy instructions for ARC700." msgstr "" -#: common.opt:3290 -msgid "Don't create a dynamically linked position independent executable." +#: config/arc/arc.opt:178 +msgid "" +"Generate Extended arithmetic instructions. Currently only divaw, adds, subs " +"and sat16 are supported." msgstr "" -#: common.opt:3294 -msgid "Create a dynamically linked position independent executable." +#: config/arc/arc.opt:182 +msgid "" +"Dummy flag. This is the default unless FPX switches are provided explicitly." msgstr "" -#: common.opt:3298 -msgid "Create a static position independent executable." +#: config/arc/arc.opt:186 +msgid "Generate call insns as register indirect calls." msgstr "" -#: common.opt:3305 -msgid "Use caller save register across calls if possible." +#: config/arc/arc.opt:190 +msgid "Do no generate BRcc instructions in arc_reorg." msgstr "" -#: d/lang.opt:51 -msgid "-Hd \tWrite D interface files to directory ." +#: config/arc/arc.opt:194 +msgid "" +"Generate sdata references. This is the default, unless you compile for PIC." msgstr "" -#: d/lang.opt:55 -msgid "-Hf \tWrite D interface to ." +#: config/arc/arc.opt:198 +msgid "Generate millicode thunks." msgstr "" -#: d/lang.opt:123 -msgid "Warn about casts that will produce a null result." +#: config/arc/arc.opt:202 config/arc/arc.opt:206 +msgid "FPX: Generate Single Precision FPX (compact) instructions." msgstr "" -#: d/lang.opt:139 -msgid "Warn from speculative compiles such as __traits(compiles)." +#: config/arc/arc.opt:210 +msgid "FPX: Generate Single Precision FPX (fast) instructions." msgstr "" -#: d/lang.opt:151 -msgid "Generate JSON file." +#: config/arc/arc.opt:214 +msgid "" +"FPX: Enable Argonaut ARC CPU Double Precision Floating Point extensions." msgstr "" -#: d/lang.opt:155 -msgid "-Xf \tWrite JSON output to the given ." +#: config/arc/arc.opt:218 config/arc/arc.opt:222 +msgid "FPX: Generate Double Precision FPX (compact) instructions." msgstr "" -#: d/lang.opt:159 -msgid "Debug library to use instead of phobos." +#: config/arc/arc.opt:226 +msgid "FPX: Generate Double Precision FPX (fast) instructions." msgstr "" -#: d/lang.opt:163 -msgid "Default library to use instead of phobos." +#: config/arc/arc.opt:230 +msgid "Disable LR and SR instructions from using FPX extension aux registers." msgstr "" -#: d/lang.opt:167 -msgid "Do link the standard D startup files in the compilation." +#: config/arc/arc.opt:234 +msgid "" +"Enable generation of ARC SIMD instructions via target-specific builtins." msgstr "" -#: d/lang.opt:174 -msgid "Generate code for all template instantiations." +#: config/arc/arc.opt:238 +msgid "-mcpu=CPU\tCompile code for ARC variant CPU." msgstr "" -#: d/lang.opt:178 -msgid "Generate code for assert contracts." +#: config/arc/arc.opt:242 +msgid "" +"Size optimization level: 0:none 1:opportunistic 2: regalloc 3:drop align, -" +"Os." msgstr "" -#: d/lang.opt:186 +#: config/arc/arc.opt:250 msgid "" -"-fbounds-check=[on|safeonly|off]\tTurn array bounds checks on, in @safe code " -"only, or off." +"Cost to assume for a multiply instruction, with 4 being equal to a normal " +"insn." msgstr "" -#: d/lang.opt:210 -msgid "Compile in debug code." +#: config/arc/arc.opt:254 +msgid "-mcpu=TUNE Tune code for given ARC variant." msgstr "" -#: d/lang.opt:214 -msgid "" -"-fdebug=\tCompile in debug code, code <= , or code " -"identified by ." +#: config/arc/arc.opt:285 +msgid "Enable the use of indexed loads." msgstr "" -#: d/lang.opt:218 -msgid "Generate documentation." +#: config/arc/arc.opt:289 +msgid "Enable the use of pre/post modify with register displacement." msgstr "" -#: d/lang.opt:222 -msgid "-fdoc-dir=\tWrite documentation file to directory ." +#: config/arc/arc.opt:293 +msgid "Generate 32x16 multiply and mac instructions." msgstr "" -#: d/lang.opt:226 -msgid "-fdoc-file=\tWrite documentation to ." +#: config/arc/arc.opt:299 +msgid "Set probability threshold for unaligning branches." msgstr "" -#: d/lang.opt:230 -msgid "-fdoc-inc=\tInclude a Ddoc macro ." +#: config/arc/arc.opt:303 +msgid "Don't use less than 25 bit addressing range for calls." msgstr "" -#: d/lang.opt:234 -msgid "Display the frontend AST after parsing and semantic passes." +#: config/arc/arc.opt:307 +msgid "" +"Explain what alignment considerations lead to the decision to make an insn " +"short or long." msgstr "" -#: d/lang.opt:238 -msgid "Ignore unsupported pragmas." +#: config/arc/arc.opt:311 +msgid "Do alignment optimizations for call instructions." msgstr "" -#: d/lang.opt:242 -msgid "Generate code for class invariant contracts." +#: config/arc/arc.opt:315 +msgid "" +"Enable Rcq constraint handling - most short code generation depends on this." msgstr "" -#: d/lang.opt:246 -msgid "Generate a default D main() function when compiling." +#: config/arc/arc.opt:319 +msgid "Enable Rcw constraint handling - ccfsm condexec mostly depends on this." msgstr "" -#: d/lang.opt:250 -msgid "" -"-fmodule-file==\tuse as source file for " -"." +#: config/arc/arc.opt:323 +msgid "Enable pre-reload use of cbranchsi pattern." msgstr "" -#: d/lang.opt:254 -msgid "Generate ModuleInfo struct for output module." +#: config/arc/arc.opt:327 +msgid "Enable bbit peephole2." msgstr "" -#: d/lang.opt:258 +#: config/arc/arc.opt:331 msgid "" -"Process all modules specified on the command line, but only generate code " -"for the module specified by the argument." +"Use pc-relative switch case tables - this enables case table shortening." msgstr "" -#: d/lang.opt:262 -msgid "Generate code for postcondition contracts." +#: config/arc/arc.opt:335 +msgid "Enable compact casesi pattern." msgstr "" -#: d/lang.opt:266 -msgid "Generate code for precondition contracts." +#: config/arc/arc.opt:339 +msgid "Enable 'q' instruction alternatives." msgstr "" -#: d/lang.opt:270 -msgid "Compile release version." +#: config/arc/arc.opt:343 +msgid "Expand adddi3 and subdi3 at rtl generation time into add.f / adc etc." msgstr "" -#: d/lang.opt:274 -msgid "Generate code for switches without a default case." +#: config/arc/arc.opt:350 +msgid "Enable variable polynomial CRC extension." msgstr "" -#: d/lang.opt:278 -msgid "List information on all language changes." +#: config/arc/arc.opt:354 +msgid "Enable DSP 3.1 Pack A extensions." msgstr "" -#: d/lang.opt:282 -msgid "Give deprecation messages about -ftransition=import anomalies." +#: config/arc/arc.opt:358 +msgid "Enable dual viterbi butterfly extension." msgstr "" -#: d/lang.opt:286 -msgid "List all usages of complex or imaginary types." +#: config/arc/arc.opt:368 +msgid "Enable Dual and Single Operand Instructions for Telephony." msgstr "" -#: d/lang.opt:290 -msgid "Implement DIP1000: Scoped pointers (experimental)." +#: config/arc/arc.opt:372 +msgid "Enable XY Memory extension (DSP version 3)." msgstr "" -#: d/lang.opt:294 -msgid "Implement DIP25: Sealed references (experimental)." +#: config/arc/arc.opt:377 +msgid "Enable Locked Load/Store Conditional extension." msgstr "" -#: d/lang.opt:298 -msgid "List all non-mutable fields which occupy an object instance." +#: config/arc/arc.opt:381 +msgid "Enable swap byte ordering extension instruction." msgstr "" -#: d/lang.opt:302 -msgid "Revert to single phase name lookup." +#: config/arc/arc.opt:385 +msgid "Enable 64-bit Time-Stamp Counter extension instruction." msgstr "" -#: d/lang.opt:306 -msgid "List all hidden GC allocations." +#: config/arc/arc.opt:389 +msgid "Pass -EB option through to linker." msgstr "" -#: d/lang.opt:310 -msgid "List all variables going into thread local storage." +#: config/arc/arc.opt:393 +msgid "Pass -EL option through to linker." msgstr "" -#: d/lang.opt:314 -msgid "Compile in unittest code." +#: config/arc/arc.opt:397 +msgid "Pass -marclinux option through to linker." msgstr "" -#: d/lang.opt:318 -msgid "" -"-fversion=\tCompile in version code >= or identified by " -"." +#: config/arc/arc.opt:401 +msgid "Pass -marclinux_prof option through to linker." msgstr "" -#: d/lang.opt:322 c-family/c.opt:1862 -msgid "Emit common-like symbols as weak symbols." +#: config/arc/arc.opt:410 +msgid "Don't indicate any priority with TARGET_REGISTER_PRIORITY." msgstr "" -#: d/lang.opt:342 -msgid "Do not link the standard D library in the compilation." +#: config/arc/arc.opt:414 +msgid "Indicate priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY." msgstr "" -#: d/lang.opt:350 -msgid "Link the standard D library statically in the compilation." +#: config/arc/arc.opt:418 +msgid "Reduce priority for r0..r3 / r12..r15 with TARGET_REGISTER_PRIORITY." msgstr "" -#: d/lang.opt:354 -msgid "Link the standard D library dynamically in the compilation." +#: config/arc/arc.opt:430 +msgid "Enable atomic instructions." msgstr "" -#: c-family/c.opt:182 -msgid "" -"-A=\tAssert the to . Putting '-' " -"before disables the to ." +#: config/arc/arc.opt:434 +msgid "Enable double load/store instructions for ARC HS." msgstr "" -#: c-family/c.opt:186 -msgid "Do not discard comments." +#: config/arc/arc.opt:438 +msgid "Specify the name of the target floating point configuration." msgstr "" -#: c-family/c.opt:190 -msgid "Do not discard comments in macro expansions." +#: config/arc/arc.opt:481 +msgid "Specify thread pointer register number." msgstr "" -#: c-family/c.opt:194 -msgid "" -"-D[=]\tDefine a with as its value. If just " -" is given, is taken to be 1." +#: config/arc/arc.opt:488 +msgid "Enable use of NPS400 bit operations." msgstr "" -#: c-family/c.opt:201 -msgid "-F \tAdd to the end of the main framework include path." +#: config/arc/arc.opt:492 +msgid "Enable use of NPS400 xld/xst extension." msgstr "" -#: c-family/c.opt:205 -msgid "Enable parsing GIMPLE." +#: config/arc/arc.opt:500 +msgid "" +"Specifies the registers that the processor saves on an interrupt entry and " +"exit." msgstr "" -#: c-family/c.opt:209 -msgid "Print the name of header files as they are used." +#: config/arc/arc.opt:504 +msgid "" +"Specifies the number of registers replicated in second register bank on " +"entry to fast interrupt." msgstr "" -#: c-family/c.opt:213 -msgid "-I \tAdd to the end of the main include path." +#: config/arc/arc.opt:508 +msgid "" +"Sets LP_COUNT register width. Possible values are 8, 16, 20, 24, 28, and 32." msgstr "" -#: c-family/c.opt:217 -msgid "Generate make dependencies." +#: config/arc/arc.opt:533 +msgid "Enable 16-entry register file." msgstr "" -#: c-family/c.opt:221 -msgid "Generate make dependencies and compile." +#: config/arc/arc.opt:537 +msgid "Enable use of BI/BIH instructions when available." msgstr "" -#: c-family/c.opt:225 -msgid "-MF \tWrite dependency output to the given file." +#: config/arc/arc.opt:541 +msgid "Enable ENTER_S and LEAVE_S opcodes for ARCv2." msgstr "" -#: c-family/c.opt:229 -msgid "Treat missing header files as generated files." +#: lto/lang.opt:50 +msgid "Set linker output type (used internally during LTO optimization)." msgstr "" -#: c-family/c.opt:233 -msgid "Like -M but ignore system header files." +#: lto/lang.opt:55 +msgid "Run the link-time optimizer in local transformation (LTRANS) mode." msgstr "" -#: c-family/c.opt:237 -msgid "Like -MD but ignore system header files." +#: lto/lang.opt:59 +msgid "Specify a file to which a list of files output by LTRANS is written." msgstr "" -#: c-family/c.opt:241 -msgid "Generate phony targets for all headers." +#: lto/lang.opt:63 +msgid "Run the link-time optimizer in whole program analysis (WPA) mode." msgstr "" -#: c-family/c.opt:245 -msgid "-MQ \tAdd a MAKE-quoted target." +#: lto/lang.opt:67 +msgid "" +"Whole program analysis (WPA) mode with number of parallel jobs specified." msgstr "" -#: c-family/c.opt:249 -msgid "-MT \tAdd an unquoted target." +#: lto/lang.opt:71 +msgid "The resolution file." msgstr "" -#: c-family/c.opt:253 -msgid "Do not generate #line directives." +#: common.opt:243 +msgid "Provide bash completion for options starting with provided string." msgstr "" -#: c-family/c.opt:257 -msgid "-U\tUndefine ." +#: common.opt:292 +msgid "Display this information." msgstr "" -#: c-family/c.opt:261 +#: common.opt:296 msgid "" -"Warn about things that will change when compiling with an ABI-compliant " -"compiler." +"--help=\tDisplay descriptions of a specific class of options. " +" is one or more of optimizers, target, warnings, undocumented, params." msgstr "" -#: c-family/c.opt:265 -msgid "" -"Warn about things that change between the current -fabi-version and the " -"specified version." +#: common.opt:417 +msgid "Alias for --help=target." msgstr "" -#: c-family/c.opt:269 +#: common.opt:442 msgid "" -"Warn if a subobject has an abi_tag attribute that the complete object type " -"does not have." +"--param =\tSet parameter to value. See below for a " +"complete list of parameters." msgstr "" -#: c-family/c.opt:276 -msgid "" -"Warn on suspicious calls of standard functions computing absolute values." +#: common.opt:470 +msgid "-O\tSet optimization level to ." msgstr "" -#: c-family/c.opt:280 -msgid "Warn about suspicious uses of memory addresses." +#: common.opt:474 +msgid "Optimize for space rather than speed." msgstr "" -#: c-family/c.opt:296 -msgid "Warn about 'new' of type with extended alignment without -faligned-new." +#: common.opt:478 +msgid "Optimize for speed disregarding exact standards compliance." msgstr "" -#: c-family/c.opt:300 -msgid "" -"-Waligned-new=[none|global|all]\tWarn even if 'new' uses a class member " -"allocation function." +#: common.opt:482 +msgid "Optimize for debugging experience rather than speed or size." msgstr "" -#: c-family/c.opt:308 -msgid "Warn on any use of alloca." +#: common.opt:522 +msgid "This switch is deprecated; use -Wextra instead." msgstr "" -#: c-family/c.opt:312 -msgid "" -"-Walloc-size-larger-than= Warn for calls to allocation functions that " -"attempt to allocate objects larger than the specified number of bytes." +#: common.opt:535 +msgid "Warn about returning structures, unions or arrays." msgstr "" -#: c-family/c.opt:317 +#: common.opt:539 msgid "" -"-Wno-alloc-size-larger-than Disable Walloc-size-larger-than= warning. " -"Equivalent to Walloc-size-larger-than= or larger." +"Warn if a loop with constant number of iterations triggers undefined " +"behavior." msgstr "" -#: c-family/c.opt:321 -msgid "" -"-Walloc-zero Warn for calls to allocation functions that specify zero bytes." +#: common.opt:543 common.opt:547 +msgid "Warn if an array is accessed out of bounds." msgstr "" -#: c-family/c.opt:325 -msgid "" -"-Walloca-larger-than=\tWarn on unbounded uses of alloca, and on " -"bounded uses of alloca whose bound can be larger than bytes." +#: common.opt:551 +msgid "Warn about inappropriate attribute usage." msgstr "" -#: c-family/c.opt:331 +#: common.opt:555 common.opt:559 msgid "" -"-Wno-alloca-larger-than Disable Walloca-larger-than= warning. Equivalent to " -"Walloca-larger-than= or larger." +"Warn about type safety and similar errors and mismatches in declarations " +"with alias attributes." msgstr "" -#: c-family/c.opt:343 +#: common.opt:563 msgid "" -"Warn whenever an Objective-C assignment is being intercepted by the garbage " -"collector." +"Warn when profiling instrumentation was requested, but could not be applied " +"to a certain function." msgstr "" -#: c-family/c.opt:347 -msgid "Warn about casting functions to incompatible types." +#: common.opt:568 common.opt:572 +msgid "Warn about pointer casts which increase alignment." msgstr "" -#: c-family/c.opt:351 -msgid "" -"Warn about boolean expression compared with an integer value different from " -"true/false." +#: common.opt:576 +msgid "Warn when a #warning directive is encountered." msgstr "" -#: c-family/c.opt:355 -msgid "Warn about certain operations on boolean expressions." +#: common.opt:580 +msgid "Warn about uses of __attribute__((warning)) declarations." msgstr "" -#: c-family/c.opt:359 -msgid "" -"Warn when __builtin_frame_address or __builtin_return_address is used " -"unsafely." +#: common.opt:584 +msgid "Warn if a deprecated compiler feature, class, method, or field is used." msgstr "" -#: c-family/c.opt:363 -msgid "Warn when a built-in function is declared with the wrong signature." +#: common.opt:588 +msgid "Warn about uses of __attribute__((deprecated)) declarations." msgstr "" -#: c-family/c.opt:367 -msgid "Warn when a built-in preprocessor macro is undefined or redefined." +#: common.opt:592 +msgid "Warn when an optimization pass is disabled." msgstr "" -#: c-family/c.opt:371 -msgid "Warn about features not present in ISO C11, but present in ISO C2X." +#: common.opt:596 +msgid "Treat all warnings as errors." msgstr "" -#: c-family/c.opt:375 -msgid "Warn about features not present in ISO C90, but present in ISO C99." +#: common.opt:600 +msgid "Treat specified warning as error." msgstr "" -#: c-family/c.opt:379 -msgid "Warn about features not present in ISO C99, but present in ISO C11." +#: common.opt:604 +msgid "Print extra (possibly unwanted) warnings." msgstr "" -#: c-family/c.opt:383 -msgid "Warn about C constructs that are not in the common subset of C and C++." +#: common.opt:608 +msgid "Exit on the first error occurred." msgstr "" -#: c-family/c.opt:390 +#: common.opt:612 msgid "" -"Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO " -"C++ 2011." +"-Wframe-larger-than=\tWarn if a function's stack frame requires " +"in excess of ." msgstr "" -#: c-family/c.opt:394 -msgid "" -"Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO " -"C++ 2014." +#: common.opt:616 +msgid "Warn when attempting to free a non-heap object." msgstr "" -#: c-family/c.opt:401 -msgid "" -"Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO " -"C++ 2017." +#: common.opt:620 +msgid "Warn when a function cannot be expanded to HSAIL." msgstr "" -#: c-family/c.opt:405 -msgid "Warn about casts between incompatible function types." +#: common.opt:627 +msgid "Warn when a switch case falls through." msgstr "" -#: c-family/c.opt:409 -msgid "Warn about casts which discard qualifiers." +#: common.opt:631 +msgid "Warn when an inlined function cannot be inlined." msgstr "" -#: c-family/c.opt:413 c-family/c.opt:417 -msgid "Warn about catch handlers of non-reference type." +#: common.opt:635 +msgid "" +"Warn when an atomic memory model parameter is known to be outside the valid " +"range." msgstr "" -#: c-family/c.opt:421 -msgid "Warn about subscripts whose type is \"char\"." +#: common.opt:642 +msgid "" +"-Wlarger-than=\tWarn if an object's size exceeds ." msgstr "" -#: c-family/c.opt:429 -msgid "Warn about variables that might be changed by \"longjmp\" or \"vfork\"." +#: common.opt:646 +msgid "Warn if comparing pointer parameter with nonnull attribute with NULL." msgstr "" -#: c-family/c.opt:433 +#: common.opt:650 msgid "" -"Warn about possibly nested block comments, and C++ comments spanning more " -"than one physical line." +"Warn if dereferencing a NULL pointer may lead to erroneous or undefined " +"behavior." msgstr "" -#: c-family/c.opt:437 -msgid "Synonym for -Wcomment." +#: common.opt:661 +msgid "" +"Warn about some C++ One Definition Rule violations during link time " +"optimization." msgstr "" -#: c-family/c.opt:441 -msgid "Warn for conditionally-supported constructs." +#: common.opt:665 +msgid "Warn about overflow in arithmetic expressions." msgstr "" -#: c-family/c.opt:445 -msgid "Warn for implicit type conversions that may change a value." +#: common.opt:669 +msgid "" +"During link time optimization warn about mismatched types of global " +"declarations." msgstr "" -#: c-family/c.opt:449 -msgid "Warn for converting NULL from/to a non-pointer type." +#: common.opt:673 +msgid "Warn when the packed attribute has no effect on struct layout." msgstr "" -#: c-family/c.opt:457 -msgid "Warn when all constructors and destructors are private." +#: common.opt:677 +msgid "Warn when padding is required to align structure members." msgstr "" -#: c-family/c.opt:461 -msgid "Warn about dangling else." +#: common.opt:681 +msgid "Issue warnings needed for strict compliance to the standard." msgstr "" -#: c-family/c.opt:465 -msgid "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage." +#: common.opt:685 +msgid "" +"Warn about returning a pointer/reference to a local or temporary variable." msgstr "" -#: c-family/c.opt:469 -msgid "Warn when a declaration is found after a statement." +#: common.opt:689 +msgid "Warn when one variable shadows another. Same as -Wshadow=global." msgstr "" -#: c-family/c.opt:473 -msgid "Warn when deleting a pointer to incomplete type." +#: common.opt:693 +msgid "Warn when one variable shadows another (globally)." msgstr "" -#: c-family/c.opt:477 -msgid "Warn about deleting polymorphic objects with non-virtual destructors." +#: common.opt:697 +msgid "" +"Warn when one local variable shadows another local variable or parameter." msgstr "" -#: c-family/c.opt:485 +#: common.opt:704 msgid "" -"Mark implicitly-declared copy operations as deprecated if the class has a " -"user-provided copy operation." +"Warn when one local variable shadows another local variable or parameter of " +"compatible type." msgstr "" -#: c-family/c.opt:490 -msgid "" -"Mark implicitly-declared copy operations as deprecated if the class has a " -"user-provided copy operation or destructor." +#: common.opt:711 +msgid "Warn when not issuing stack smashing protection for some reason." msgstr "" -#: c-family/c.opt:495 +#: common.opt:715 msgid "" -"Warn about positional initialization of structs requiring designated " -"initializers." +"-Wstack-usage=\tWarn if stack usage might exceed ." msgstr "" -#: c-family/c.opt:499 -msgid "Warn if qualifiers on arrays which are pointer targets are discarded." +#: common.opt:719 common.opt:723 +msgid "Warn about code which might break strict aliasing rules." msgstr "" -#: c-family/c.opt:503 -msgid "Warn if type qualifiers on pointers are discarded." +#: common.opt:727 common.opt:731 +msgid "Warn about optimizations that assume that signed overflow is undefined." msgstr "" -#: c-family/c.opt:507 -msgid "Warn about compile-time integer division by zero." +#: common.opt:735 +msgid "" +"Warn about functions which might be candidates for __attribute__((cold))." msgstr "" -#: c-family/c.opt:511 -msgid "Warn about duplicated branches in if-else statements." +#: common.opt:739 +msgid "" +"Warn about functions which might be candidates for __attribute__((const))." msgstr "" -#: c-family/c.opt:515 -msgid "Warn about duplicated conditions in an if-else-if chain." +#: common.opt:743 +msgid "" +"Warn about functions which might be candidates for __attribute__((pure))." msgstr "" -#: c-family/c.opt:519 -msgid "Warn about violations of Effective C++ style rules." +#: common.opt:747 +msgid "" +"Warn about functions which might be candidates for __attribute__((noreturn))." msgstr "" -#: c-family/c.opt:523 -msgid "Warn about an empty body in an if or else statement." +#: common.opt:751 +msgid "" +"Warn about functions which might be candidates for __attribute__((malloc))." msgstr "" -#: c-family/c.opt:527 -msgid "Warn about stray tokens after #else and #endif." +#: common.opt:755 +msgid "" +"Warn about C++ polymorphic types where adding final keyword would improve " +"code quality." msgstr "" -#: c-family/c.opt:531 -msgid "Warn about comparison of different enum types." +#: common.opt:759 +msgid "" +"Warn about C++ virtual methods where adding final keyword would improve code " +"quality." msgstr "" -#: c-family/c.opt:539 +#: common.opt:763 msgid "" -"This switch is deprecated; use -Werror=implicit-function-declaration instead." +"Warn about statements between switch's controlling expression and the first " +"case." msgstr "" -#: c-family/c.opt:547 -msgid "Warn about semicolon after in-class function definition." +#: common.opt:768 +msgid "Do not suppress warnings from system headers." msgstr "" -#: c-family/c.opt:551 -msgid "" -"Warn for implicit type conversions that cause loss of floating point " -"precision." +#: common.opt:772 +msgid "Warn whenever a trampoline is generated." msgstr "" -#: c-family/c.opt:555 -msgid "Warn if testing floating point numbers for equality." +#: common.opt:776 +msgid "" +"Warn if a comparison is always true or always false due to the limited range " +"of the data type." msgstr "" -#: c-family/c.opt:559 c-family/c.opt:601 -msgid "Warn about printf/scanf/strftime/strfmon format string anomalies." +#: common.opt:780 +msgid "Warn about uninitialized automatic variables." msgstr "" -#: c-family/c.opt:563 -msgid "Warn about format strings that contain NUL bytes." +#: common.opt:784 +msgid "Warn about maybe uninitialized automatic variables." msgstr "" -#: c-family/c.opt:567 -msgid "Warn if passing too many arguments to a function for its format string." +#: common.opt:792 +msgid "Enable all -Wunused- warnings." msgstr "" -#: c-family/c.opt:571 -msgid "Warn about format strings that are not literals." +#: common.opt:796 +msgid "Warn when a function parameter is only set, otherwise unused." msgstr "" -#: c-family/c.opt:575 -msgid "" -"Warn about function calls with format strings that write past the end of the " -"destination region. Same as -Wformat-overflow=1." +#: common.opt:800 +msgid "Warn when a variable is only set, otherwise unused." msgstr "" -#: c-family/c.opt:580 -msgid "Warn about possible security problems with format functions." +#: common.opt:804 +msgid "Warn when a function is unused." msgstr "" -#: c-family/c.opt:584 -msgid "Warn about sign differences with format functions." +#: common.opt:808 +msgid "Warn when a label is unused." msgstr "" -#: c-family/c.opt:588 -msgid "" -"Warn about calls to snprintf and similar functions that truncate output. " -"Same as -Wformat-truncation=1." +#: common.opt:812 +msgid "Warn when a function parameter is unused." msgstr "" -#: c-family/c.opt:593 -msgid "Warn about strftime formats yielding 2-digit years." +#: common.opt:816 +msgid "Warn when an expression value is unused." msgstr "" -#: c-family/c.opt:597 -msgid "Warn about zero-length formats." +#: common.opt:820 +msgid "Warn when a variable is unused." msgstr "" -#: c-family/c.opt:605 -msgid "" -"Warn about function calls with format strings that write past the end of the " -"destination region." +#: common.opt:824 +msgid "Warn in case profiles in -fprofile-use do not match." msgstr "" -#: c-family/c.opt:610 -msgid "" -"Warn about calls to snprintf and similar functions that truncate output." +#: common.opt:828 +msgid "Warn in case profiles in -fprofile-use do not exist." msgstr "" -#: c-family/c.opt:614 -msgid "Warn when the field in a struct is not aligned." +#: common.opt:832 +msgid "Warn when a vector operation is compiled outside the SIMD." msgstr "" -#: c-family/c.opt:618 -msgid "Warn whenever type qualifiers are ignored." +#: common.opt:848 +msgid "-aux-info \tEmit declaration information into ." msgstr "" -#: c-family/c.opt:622 -msgid "Warn whenever attributes are ignored." +#: common.opt:867 +msgid "-d\tEnable dumps from specific passes of the compiler." msgstr "" -#: c-family/c.opt:626 -msgid "" -"Warn when there is a conversion between pointers that have incompatible " -"types." +#: common.opt:871 +msgid "-dumpbase \tSet the file basename to be used for dumps." msgstr "" -#: c-family/c.opt:630 -msgid "Warn when the address of packed member of struct or union is taken." +#: common.opt:875 +msgid "-dumpdir \tSet the directory name to be used for dumps." msgstr "" -#: c-family/c.opt:634 -msgid "Warn about variables which are initialized to themselves." +#: common.opt:959 +msgid "The version of the C++ ABI in use." msgstr "" -#: c-family/c.opt:638 -msgid "" -"Warn about uses of std::initializer_list that can result in dangling " -"pointers." +#: common.opt:963 +msgid "Aggressively optimize loops using language constraints." msgstr "" -#: c-family/c.opt:642 -msgid "Warn about implicit declarations." +#: common.opt:967 +msgid "Align the start of functions." msgstr "" -#: c-family/c.opt:650 -msgid "Warn about implicit conversions from \"float\" to \"double\"." +#: common.opt:977 +msgid "Align labels which are only reached by jumping." msgstr "" -#: c-family/c.opt:654 -msgid "Warn if \"defined\" is used outside #if." +#: common.opt:984 +msgid "Align all labels." msgstr "" -#: c-family/c.opt:658 -msgid "Warn about implicit function declarations." +#: common.opt:991 +msgid "Align the start of loops." msgstr "" -#: c-family/c.opt:662 -msgid "Warn when a declaration does not specify a type." +#: common.opt:1014 +msgid "Select what to sanitize." msgstr "" -#: c-family/c.opt:669 -msgid "" -"Warn about C++11 inheriting constructors when the base has a variadic " -"constructor." +#: common.opt:1018 +msgid "Select type of coverage sanitization." msgstr "" -#: c-family/c.opt:673 -msgid "" -"Warn about incompatible integer to pointer and pointer to integer " -"conversions." +#: common.opt:1022 +msgid "-fasan-shadow-offset=\tUse custom shadow memory offset." msgstr "" -#: c-family/c.opt:677 -msgid "Warn for suspicious integer expressions in boolean context." +#: common.opt:1026 +msgid "" +"-fsanitize-sections=\tSanitize global variables in user-" +"defined sections." msgstr "" -#: c-family/c.opt:681 -msgid "" -"Warn when there is a cast to a pointer from an integer of a different size." +#: common.opt:1031 +msgid "After diagnosing undefined behavior attempt to continue execution." msgstr "" -#: c-family/c.opt:685 -msgid "Warn about invalid uses of the \"offsetof\" macro." +#: common.opt:1035 +msgid "This switch is deprecated; use -fsanitize-recover= instead." msgstr "" -#: c-family/c.opt:689 -msgid "Warn about PCH files that are found but not used." +#: common.opt:1042 +msgid "" +"Use trap instead of a library function for undefined behavior sanitization." msgstr "" -#: c-family/c.opt:693 -msgid "Warn when a jump misses a variable initialization." +#: common.opt:1046 +msgid "Generate unwind tables that are exact at each instruction boundary." msgstr "" -#: c-family/c.opt:697 -msgid "" -"Warn when a string or character literal is followed by a ud-suffix which " -"does not begin with an underscore." +#: common.opt:1050 +msgid "Generate auto-inc/dec instructions." msgstr "" -#: c-family/c.opt:701 +#: common.opt:1054 msgid "" -"Warn when a logical operator is suspiciously always evaluating to true or " -"false." +"Use sample profile information for call graph node weights. The default " +"profile file is fbdata.afdo in 'pwd'." msgstr "" -#: c-family/c.opt:705 +#: common.opt:1059 msgid "" -"Warn when logical not is used on the left hand side operand of a comparison." +"Use sample profile information for call graph node weights. The profile file " +"is specified in the argument." msgstr "" -#: c-family/c.opt:709 -msgid "Do not warn about using \"long long\" when -pedantic." +#: common.opt:1068 +msgid "Generate code to check bounds before indexing arrays." msgstr "" -#: c-family/c.opt:713 -msgid "Warn about suspicious declarations of \"main\"." +#: common.opt:1072 +msgid "Replace add, compare, branch with branch on count register." msgstr "" -#: c-family/c.opt:721 -msgid "" -"Warn about suspicious calls to memset where the third argument is constant " -"literal zero and the second is not." +#: common.opt:1076 +msgid "Use profiling information for branch probabilities." msgstr "" -#: c-family/c.opt:725 +#: common.opt:1080 msgid "" -"Warn about suspicious calls to memset where the third argument contains the " -"number of elements not multiplied by the element size." +"Perform branch target load optimization before prologue / epilogue threading." msgstr "" -#: c-family/c.opt:729 +#: common.opt:1084 msgid "" -"Warn when the indentation of the code does not reflect the block structure." -msgstr "" - -#: c-family/c.opt:733 -msgid "Warn about possibly missing braces around initializers." +"Perform branch target load optimization after prologue / epilogue threading." msgstr "" -#: c-family/c.opt:737 -msgid "Warn about global functions without previous declarations." +#: common.opt:1088 +msgid "" +"Restrict target load migration not to re-use registers in any basic block." msgstr "" -#: c-family/c.opt:741 -msgid "Warn about missing fields in struct initializers." +#: common.opt:1092 +msgid "" +"-fcall-saved-\tMark as being preserved across functions." msgstr "" -#: c-family/c.opt:745 +#: common.opt:1096 msgid "" -"Warn about unsafe macros expanding to multiple statements used as a body of " -"a clause such as if, else, while, switch, or for." +"-fcall-used-\tMark as being corrupted by function calls." msgstr "" -#: c-family/c.opt:749 -msgid "Warn on direct multiple inheritance." +#: common.opt:1103 +msgid "Save registers around function calls." msgstr "" -#: c-family/c.opt:753 -msgid "Warn on namespace definition." +#: common.opt:1107 +msgid "This switch is deprecated; do not use." msgstr "" -#: c-family/c.opt:757 -msgid "Warn when fields in a struct with the packed attribute are misaligned." +#: common.opt:1111 +msgid "Check the return value of new in C++." msgstr "" -#: c-family/c.opt:761 -msgid "Warn about missing sized deallocation functions." +#: common.opt:1115 common.opt:1119 +msgid "Perform internal consistency checkings." msgstr "" -#: c-family/c.opt:765 -msgid "" -"Warn about suspicious divisions of two sizeof expressions that don't work " -"correctly with pointers." +#: common.opt:1123 +msgid "Enable code hoisting." msgstr "" -#: c-family/c.opt:769 +#: common.opt:1127 msgid "" -"Warn about suspicious length parameters to certain string functions if the " -"argument uses sizeof." +"Looks for opportunities to reduce stack adjustments and stack references." msgstr "" -#: c-family/c.opt:773 -msgid "Warn when sizeof is applied on a parameter declared as an array." +#: common.opt:1131 +msgid "Do not put uninitialized globals in the common section." msgstr "" -#: c-family/c.opt:777 +#: common.opt:1139 msgid "" -"Warn about buffer overflow in string manipulation functions like memcpy and " -"strcpy." +"-fcompare-debug[=]\tCompile with and without e.g. -gtoggle, and " +"compare the final-insns dump." msgstr "" -#: c-family/c.opt:782 -msgid "" -"Under the control of Object Size type, warn about buffer overflow in string " -"manipulation functions like memcpy and strcpy." +#: common.opt:1143 +msgid "Run only the second compilation of -fcompare-debug." msgstr "" -#: c-family/c.opt:787 -msgid "" -"Warn about truncation in string manipulation functions like strncat and " -"strncpy." +#: common.opt:1147 +msgid "Perform comparison elimination after register allocation has finished." msgstr "" -#: c-family/c.opt:791 -msgid "Warn about functions which might be candidates for format attributes." +#: common.opt:1151 +msgid "Do not perform optimizations increasing noticeably stack usage." msgstr "" -#: c-family/c.opt:795 -msgid "" -"Suggest that the override keyword be used when the declaration of a virtual " -"function overrides another." +#: common.opt:1155 +msgid "Perform a register copy-propagation optimization pass." msgstr "" -#: c-family/c.opt:800 -msgid "Warn about enumerated switches, with no default, missing a case." +#: common.opt:1159 +msgid "Perform cross-jumping optimization." msgstr "" -#: c-family/c.opt:804 -msgid "Warn about enumerated switches missing a \"default:\" statement." +#: common.opt:1163 +msgid "When running CSE, follow jumps to their targets." msgstr "" -#: c-family/c.opt:808 -msgid "Warn about all enumerated switches missing a specific case." +#: common.opt:1171 +msgid "Omit range reduction step when performing complex division." msgstr "" -#: c-family/c.opt:812 -msgid "Warn about switches with boolean controlling expression." +#: common.opt:1175 +msgid "Complex multiplication and division follow Fortran rules." msgstr "" -#: c-family/c.opt:816 -msgid "Warn on primary template declaration." +#: common.opt:1179 +msgid "Place data items into their own section." msgstr "" -#: c-family/c.opt:820 +#: common.opt:1183 +msgid "List all available debugging counters with their limits and counts." +msgstr "" + +#: common.opt:1187 msgid "" -"Warn about declarations of entities that may be missing attributes that " -"related entities have been declared with." +"-fdbg-cnt=[:]:[,:...]\tSet the " +"debug counter limit." msgstr "" -#: c-family/c.opt:829 -msgid "Warn about user-specified include directories that do not exist." +#: common.opt:1191 +msgid "" +"-fdebug-prefix-map== Map one directory name to another in debug " +"information." msgstr "" -#: c-family/c.opt:833 +#: common.opt:1195 msgid "" -"Warn about function parameters declared without a type specifier in K&R-" -"style functions." +"-ffile-prefix-map== Map one directory name to another in " +"compilation result." msgstr "" -#: c-family/c.opt:837 -msgid "Warn about global functions without prototypes." +#: common.opt:1199 +msgid "Output .debug_types section when using DWARF v4 debuginfo." msgstr "" -#: c-family/c.opt:844 -msgid "Warn about use of multi-character character constants." +#: common.opt:1205 +msgid "Defer popping functions args from stack until later." msgstr "" -#: c-family/c.opt:848 -msgid "" -"Warn about narrowing conversions within { } that are ill-formed in C++11." +#: common.opt:1209 +msgid "Attempt to fill delay slots of branch instructions." msgstr "" -#: c-family/c.opt:852 -msgid "Warn about \"extern\" declarations not at file scope." +#: common.opt:1213 +msgid "Delete dead instructions that may throw exceptions." msgstr "" -#: c-family/c.opt:856 -msgid "" -"Warn when a noexcept expression evaluates to false even though the " -"expression can't actually throw." +#: common.opt:1217 +msgid "Delete useless null pointer checks." msgstr "" -#: c-family/c.opt:860 +#: common.opt:1221 msgid "" -"Warn if C++17 noexcept function type will change the mangled name of a " -"symbol." +"Stream extra data to support more aggressive devirtualization in LTO local " +"transformation mode." msgstr "" -#: c-family/c.opt:864 -msgid "" -"Warn when non-templatized friend functions are declared within a template." +#: common.opt:1225 +msgid "Perform speculative devirtualization." msgstr "" -#: c-family/c.opt:868 -msgid "" -"Warn when a conversion function will never be called due to the type it " -"converts to." +#: common.opt:1229 +msgid "Try to convert virtual calls to direct ones." msgstr "" -#: c-family/c.opt:872 -msgid "Warn for unsafe raw memory writes to objects of class types." +#: common.opt:1233 +msgid "" +"-fdiagnostics-show-location=[once|every-line]\tHow often to emit source " +"location at the beginning of line-wrapped diagnostics." msgstr "" -#: c-family/c.opt:876 -msgid "Warn about non-virtual destructors." +#: common.opt:1250 +msgid "Show the source line with a caret indicating the column." msgstr "" -#: c-family/c.opt:880 -msgid "" -"Warn about NULL being passed to argument slots marked as requiring non-NULL." +#: common.opt:1254 +msgid "Show labels annotating ranges of source code when showing source." msgstr "" -#: c-family/c.opt:896 -msgid "" -"-Wnormalized=[none|id|nfc|nfkc]\tWarn about non-normalized Unicode strings." +#: common.opt:1258 +msgid "Show line numbers in the left margin when showing source." msgstr "" -#: c-family/c.opt:919 -msgid "Warn if a C-style cast is used in a program." +#: common.opt:1266 +msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics." msgstr "" -#: c-family/c.opt:923 -msgid "Warn for obsolescent usage in a declaration." +#: common.opt:1286 +msgid "-fdiagnostics-format=[text|json] Select output format." msgstr "" -#: c-family/c.opt:927 -msgid "Warn if an old-style parameter definition is used." +#: common.opt:1303 +msgid "Print fix-it hints in machine-readable form." msgstr "" -#: c-family/c.opt:931 -msgid "Warn if a simd directive is overridden by the vectorizer cost model." +#: common.opt:1307 +msgid "Print fix-it hints to stderr in unified diff format." msgstr "" -#: c-family/c.opt:935 +#: common.opt:1311 msgid "" -"Warn if a string is longer than the maximum portable length specified by the " -"standard." +"Amend appropriate diagnostic messages with the command line option that " +"controls them." msgstr "" -#: c-family/c.opt:939 -msgid "Warn about overloaded virtual function names." +#: common.opt:1315 +msgid "Set minimum width of left margin of source code when showing source." msgstr "" -#: c-family/c.opt:943 -msgid "Warn about overriding initializers without side effects." +#: common.opt:1319 +msgid "" +"-fdisable-[tree|rtl|ipa]-=range1+range2 disables an optimization pass." msgstr "" -#: c-family/c.opt:947 -msgid "Warn about overriding initializers with side effects." +#: common.opt:1323 +msgid "" +"-fenable-[tree|rtl|ipa]-=range1+range2 enables an optimization pass." msgstr "" -#: c-family/c.opt:951 -msgid "Warn about packed bit-fields whose offset changed in GCC 4.4." +#: common.opt:1327 +msgid "-fdump-\tDump various compiler internals to a file." msgstr "" -#: c-family/c.opt:955 -msgid "Warn about possibly missing parentheses." +#: common.opt:1334 +msgid "" +"-fdump-final-insns=filename\tDump to filename the insns at the end of " +"translation." msgstr "" -#: c-family/c.opt:963 -msgid "" -"Warn about calling std::move on a local object in a return statement " -"preventing copy elision." +#: common.opt:1338 +msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code." msgstr "" -#: c-family/c.opt:967 -msgid "Warn when converting the type of pointers to member functions." +#: common.opt:1342 +msgid "Suppress output of addresses in debugging dumps." msgstr "" -#: c-family/c.opt:971 -msgid "Warn about function pointer arithmetic." +#: common.opt:1346 +msgid "" +"Collect and dump debug information into temporary file if ICE in C/C++ " +"compiler occurred." msgstr "" -#: c-family/c.opt:975 -msgid "Warn when a pointer differs in signedness in an assignment." +#: common.opt:1351 +msgid "" +"Dump detailed information on GCC's internal representation of source code " +"locations." msgstr "" -#: c-family/c.opt:979 -msgid "Warn when a pointer is compared with a zero character constant." +#: common.opt:1355 +msgid "Dump optimization passes." msgstr "" -#: c-family/c.opt:983 -msgid "Warn when a pointer is cast to an integer of a different size." +#: common.opt:1359 +msgid "" +"Suppress output of instruction numbers, line number notes and addresses in " +"debugging dumps." msgstr "" -#: c-family/c.opt:987 -msgid "Warn about misuses of pragmas." +#: common.opt:1363 +msgid "Suppress output of previous and next insn numbers in debugging dumps." msgstr "" -#: c-family/c.opt:991 -msgid "" -"Warn if constructor or destructors with priorities from 0 to 100 are used." +#: common.opt:1367 +msgid "Enable CFI tables via GAS assembler directives." msgstr "" -#: c-family/c.opt:995 -msgid "" -"Warn if a property for an Objective-C object has no assign semantics " -"specified." +#: common.opt:1371 +msgid "Perform early inlining." msgstr "" -#: c-family/c.opt:999 -msgid "Warn if inherited methods are unimplemented." +#: common.opt:1379 +msgid "Perform interprocedural reduction of aggregates." msgstr "" -#: c-family/c.opt:1003 c-family/c.opt:1007 -msgid "Warn for placement new expressions with undefined behavior." +#: common.opt:1383 +msgid "Perform unused symbol elimination in debug info." msgstr "" -#: c-family/c.opt:1011 -msgid "Warn about multiple declarations of the same object." +#: common.opt:1387 +msgid "Perform unused type elimination in debug info." msgstr "" -#: c-family/c.opt:1015 -msgid "Warn about redundant calls to std::move." +#: common.opt:1391 +msgid "Do not suppress C++ class debug information." msgstr "" -#: c-family/c.opt:1019 -msgid "Warn about uses of register storage specifier." +#: common.opt:1395 +msgid "Enable exception handling." msgstr "" -#: c-family/c.opt:1023 -msgid "Warn when the compiler reorders code." +#: common.opt:1399 +msgid "Perform a number of minor, expensive optimizations." msgstr "" -#: c-family/c.opt:1027 +#: common.opt:1403 msgid "" -"Warn whenever a function's return type defaults to \"int\" (C), or about " -"inconsistent return types (C++)." +"-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-" +"point precision." msgstr "" -#: c-family/c.opt:1031 -msgid "Warn on suspicious constructs involving reverse scalar storage order." +#: common.opt:1418 +msgid "" +"-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of " +"FLT_EVAL_METHOD are permitted." msgstr "" -#: c-family/c.opt:1035 -msgid "Warn if a selector has multiple methods." +#: common.opt:1434 +msgid "" +"Output lto objects containing both the intermediate language and binary " +"output." msgstr "" -#: c-family/c.opt:1039 -msgid "Warn about possible violations of sequence point rules." +#: common.opt:1438 +msgid "Assume no NaNs or infinities are generated." msgstr "" -#: c-family/c.opt:1043 -msgid "Warn if a local declaration hides an instance variable." +#: common.opt:1442 +msgid "" +"-ffixed-\tMark as being unavailable to the compiler." msgstr "" -#: c-family/c.opt:1047 c-family/c.opt:1051 -msgid "Warn if left shift of a signed value overflows." +#: common.opt:1446 +msgid "Don't allocate floats and doubles in extended-precision registers." msgstr "" -#: c-family/c.opt:1055 -msgid "Warn if shift count is negative." +#: common.opt:1454 +msgid "Perform a forward propagation pass on RTL." msgstr "" -#: c-family/c.opt:1059 -msgid "Warn if shift count >= width of type." +#: common.opt:1458 +msgid "" +"-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction." msgstr "" -#: c-family/c.opt:1063 -msgid "Warn if left shifting a negative value." +#: common.opt:1475 +msgid "" +"Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" " +"exceptions." msgstr "" -#: c-family/c.opt:1067 -msgid "Warn about signed-unsigned comparisons." +#: common.opt:1482 +msgid "Allow function addresses to be held in registers." msgstr "" -#: c-family/c.opt:1075 -msgid "" -"Warn for implicit type conversions between signed and unsigned integers." +#: common.opt:1486 +msgid "Place each function into its own section." msgstr "" -#: c-family/c.opt:1079 -msgid "Warn when overload promotes from unsigned to signed." +#: common.opt:1490 +msgid "Perform global common subexpression elimination." msgstr "" -#: c-family/c.opt:1083 -msgid "Warn about uncasted NULL used as sentinel." +#: common.opt:1494 +msgid "" +"Perform enhanced load motion during global common subexpression elimination." msgstr "" -#: c-family/c.opt:1087 -msgid "Warn about unprototyped function declarations." +#: common.opt:1498 +msgid "Perform store motion after global common subexpression elimination." msgstr "" -#: c-family/c.opt:1099 -msgid "Warn if type signatures of candidate methods do not match exactly." +#: common.opt:1502 +msgid "" +"Perform redundant load after store elimination in global common " +"subexpression elimination." msgstr "" -#: c-family/c.opt:1103 +#: common.opt:1507 msgid "" -"Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions " -"are used." +"Perform global common subexpression elimination after register allocation " +"has finished." msgstr "" -#: c-family/c.opt:1107 -msgid "Deprecated. This switch has no effect." +#: common.opt:1524 +msgid "" +"-fgnat-encodings=[all|gdb|minimal]\tSelect the balance between GNAT " +"encodings and standard DWARF emitted in the debug information." msgstr "" -#: c-family/c.opt:1115 -msgid "Warn if a comparison always evaluates to true or false." +#: common.opt:1529 +msgid "Enable in and out of Graphite representation." msgstr "" -#: c-family/c.opt:1119 -msgid "Warn if a throw expression will always result in a call to terminate()." +#: common.opt:1533 +msgid "Enable Graphite Identity transformation." msgstr "" -#: c-family/c.opt:1123 -msgid "Warn about features not present in traditional C." +#: common.opt:1537 +msgid "" +"Enable hoisting adjacent loads to encourage generating conditional move " +"instructions." msgstr "" -#: c-family/c.opt:1127 -msgid "" -"Warn of prototypes causing type conversions different from what would happen " -"in the absence of prototype." +#: common.opt:1546 +msgid "Mark all loops as parallel." msgstr "" -#: c-family/c.opt:1131 -msgid "" -"Warn if trigraphs are encountered that might affect the meaning of the " -"program." +#: common.opt:1550 common.opt:1558 common.opt:2667 +msgid "Enable loop nest transforms. Same as -floop-nest-optimize." msgstr "" -#: c-family/c.opt:1135 -msgid "Warn about @selector()s without previously declared methods." +#: common.opt:1554 +msgid "Enable loop interchange on trees." msgstr "" -#: c-family/c.opt:1139 -msgid "Warn if an undefined macro is used in an #if directive." +#: common.opt:1562 +msgid "Perform unroll-and-jam on loops." msgstr "" -#: c-family/c.opt:1151 -msgid "Warn about unrecognized pragmas." +#: common.opt:1566 +msgid "Enable support for GNU transactional memory." msgstr "" -#: c-family/c.opt:1155 -msgid "Warn about unsuffixed float constants." +#: common.opt:1570 +msgid "Use STB_GNU_UNIQUE if supported by the assembler." msgstr "" -#: c-family/c.opt:1163 -msgid "Warn when typedefs locally defined in a function are not used." +#: common.opt:1578 +msgid "Enable the loop nest optimizer." msgstr "" -#: c-family/c.opt:1167 -msgid "Warn about macros defined in the main file that are not used." +#: common.opt:1582 +msgid "Force bitfield accesses to match their type width." msgstr "" -#: c-family/c.opt:1171 -msgid "" -"Warn if a caller of a function, marked with attribute warn_unused_result, " -"does not use its return value." +#: common.opt:1586 +msgid "Merge adjacent stores." msgstr "" -#: c-family/c.opt:1179 c-family/c.opt:1183 -msgid "Warn when a const variable is unused." +#: common.opt:1590 +msgid "Enable guessing of branch probabilities." msgstr "" -#: c-family/c.opt:1187 -msgid "Warn about using variadic macros." +#: common.opt:1598 +msgid "Process #ident directives." msgstr "" -#: c-family/c.opt:1191 -msgid "" -"Warn about questionable usage of the macros used to retrieve variable " -"arguments." +#: common.opt:1602 +msgid "Perform conversion of conditional jumps to branchless equivalents." msgstr "" -#: c-family/c.opt:1195 -msgid "Warn if a variable length array is used." +#: common.opt:1606 +msgid "Perform conversion of conditional jumps to conditional execution." msgstr "" -#: c-family/c.opt:1199 +#: common.opt:1610 msgid "" -"-Wvla-larger-than=\tWarn on unbounded uses of variable-length " -"arrays, and on bounded uses of variable-length arrays whose bound can be " -"larger than bytes. bytes." +"-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local " +"variables." msgstr "" -#: c-family/c.opt:1206 -msgid "" -"-Wno-vla-larger-than Disable Wvla-larger-than= warning. Equivalent to Wvla-" -"larger-than= or larger." +#: common.opt:1626 +msgid "Convert conditional jumps in innermost loops to branchless equivalents." msgstr "" -#: c-family/c.opt:1210 -msgid "Warn when a register variable is declared volatile." +#: common.opt:1638 +msgid "Do not generate .size directives." msgstr "" -#: c-family/c.opt:1214 -msgid "Warn on direct virtual inheritance." +#: common.opt:1642 +msgid "Perform indirect inlining." msgstr "" -#: c-family/c.opt:1218 -msgid "Warn if a virtual base has a non-trivial move assignment operator." +#: common.opt:1648 +msgid "" +"Enable inlining of function declared \"inline\", disabling disables all " +"inlining." msgstr "" -#: c-family/c.opt:1222 +#: common.opt:1652 msgid "" -"In C++, nonzero means warn about deprecated conversion from string literals " -"to 'char *'. In C, similar warning, except that the conversion is of course " -"not deprecated by the ISO C standard." +"Integrate functions into their callers when code size is known not to grow." msgstr "" -#: c-family/c.opt:1226 -msgid "Warn when a literal '0' is used as null pointer." +#: common.opt:1656 +msgid "" +"Integrate functions not declared \"inline\" into their callers when " +"profitable." msgstr "" -#: c-family/c.opt:1230 -msgid "Warn about useless casts." +#: common.opt:1660 +msgid "Integrate functions only required by their single caller." msgstr "" -#: c-family/c.opt:1234 +#: common.opt:1667 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." +"-finline-limit=\tLimit the size of inlined functions to ." msgstr "" -#: c-family/c.opt:1238 +#: common.opt:1671 msgid "" -"Warn when a declaration has duplicate const, volatile, restrict or _Atomic " -"specifier." +"Inline __atomic operations when a lock free instruction sequence is " +"available." msgstr "" -#: c-family/c.opt:1242 +#: common.opt:1678 msgid "" -"Warn when an argument passed to a restrict-qualified parameter aliases with " -"another argument." +"-fcf-protection=[full|branch|return|none]\tInstrument functions with checks " +"to verify jump/call/return control-flow transfer instructions have valid " +"targets." msgstr "" -#: c-family/c.opt:1247 -msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)." +#: common.opt:1698 +msgid "Instrument function entry and exit with profiling calls." msgstr "" -#: c-family/c.opt:1255 +#: common.opt:1702 msgid "" -"The version of the C++ ABI used for -Wabi warnings and link compatibility " -"aliases." +"-finstrument-functions-exclude-function-list=name,... Do not instrument " +"listed functions." msgstr "" -#: c-family/c.opt:1259 -msgid "Enforce class member access control semantics." +#: common.opt:1706 +msgid "" +"-finstrument-functions-exclude-file-list=filename,... Do not instrument " +"functions listed in files." msgstr "" -#: c-family/c.opt:1263 -msgid "-fada-spec-parent=unit Dump Ada specs as child units of given parent." +#: common.opt:1710 +msgid "Perform interprocedural constant propagation." msgstr "" -#: c-family/c.opt:1267 -msgid "Support C++17 allocation of over-aligned types." +#: common.opt:1714 +msgid "Perform cloning to make Interprocedural constant propagation stronger." msgstr "" -#: c-family/c.opt:1271 -msgid "" -"-faligned-new= Use C++17 over-aligned type allocation for alignments " -"greater than N." +#: common.opt:1722 +msgid "Perform interprocedural bitwise constant propagation." msgstr "" -#: c-family/c.opt:1278 -msgid "Allow variadic functions without named parameter." +#: common.opt:1726 +msgid "Perform interprocedural profile propagation." msgstr "" -#: c-family/c.opt:1282 c-family/c.opt:1530 c-family/c.opt:1854 -#: c-family/c.opt:1858 c-family/c.opt:1874 -msgid "No longer supported." +#: common.opt:1730 +msgid "Perform interprocedural points-to analysis." msgstr "" -#: c-family/c.opt:1286 -msgid "Recognize the \"asm\" keyword." +#: common.opt:1734 +msgid "Discover pure and const functions." msgstr "" -#: c-family/c.opt:1294 -msgid "Recognize built-in functions." +#: common.opt:1738 +msgid "Perform Identical Code Folding for functions and read-only variables." msgstr "" -#: c-family/c.opt:1301 -msgid "Where shorter, use canonicalized paths to systems headers." +#: common.opt:1742 +msgid "Perform Identical Code Folding for functions." msgstr "" -#: c-family/c.opt:1305 -msgid "" -"Enable the char8_t fundamental type and use it as the type for UTF-8 string " -"and character literals." +#: common.opt:1746 +msgid "Perform Identical Code Folding for variables." msgstr "" -#: c-family/c.opt:1393 -msgid "Deprecated in GCC 8. This switch has no effect." +#: common.opt:1750 +msgid "Discover read-only and non addressable static variables." msgstr "" -#: c-family/c.opt:1397 -msgid "Enable support for C++ concepts." +#: common.opt:1754 +msgid "Discover read-only, write-only and non-addressable static variables." msgstr "" -#: c-family/c.opt:1401 -msgid "Allow the arguments of the '?' operator to have different types." +#: common.opt:1758 +msgid "Reduce stack alignment on call sites if possible." msgstr "" -#: c-family/c.opt:1409 -msgid "-fconst-string-class=\tUse class for constant strings." +#: common.opt:1770 +msgid "Perform IPA Value Range Propagation." msgstr "" -#: c-family/c.opt:1413 -msgid "-fconstexpr-depth=\tSpecify maximum constexpr recursion depth." +#: common.opt:1774 +msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm." msgstr "" -#: c-family/c.opt:1417 -msgid "" -"-fconstexpr-loop-limit=\tSpecify maximum constexpr loop iteration " -"count." +#: common.opt:1787 +msgid "-fira-region=[one|all|mixed]\tSet regions for IRA." msgstr "" -#: c-family/c.opt:1421 -msgid "" -"-fconstexpr-ops-limit=\tSpecify maximum number of constexpr " -"operations during a single constexpr evaluation." +#: common.opt:1803 +msgid "Use IRA based register pressure calculation in RTL hoist optimizations." msgstr "" -#: c-family/c.opt:1425 -msgid "Emit debug annotations during preprocessing." +#: common.opt:1808 +msgid "Use IRA based register pressure calculation in RTL loop optimizations." msgstr "" -#: c-family/c.opt:1429 -msgid "" -"-fdeduce-init-list\tenable deduction of std::initializer_list for a template " -"type parameter from a brace-enclosed initializer-list." +#: common.opt:1813 +msgid "Share slots for saving different hard registers." msgstr "" -#: c-family/c.opt:1433 -msgid "Factor complex constructors and destructors to favor space over speed." +#: common.opt:1817 +msgid "Share stack slots for spilled pseudo-registers." msgstr "" -#: c-family/c.opt:1441 -msgid "Print hierarchical comparisons when template types are mismatched." +#: common.opt:1821 +msgid "-fira-verbose=\tControl IRA's level of diagnostic messages." msgstr "" -#: c-family/c.opt:1445 -msgid "Preprocess directives only." +#: common.opt:1825 +msgid "Optimize induction variables on trees." msgstr "" -#: c-family/c.opt:1449 -msgid "Permit '$' as an identifier character." +#: common.opt:1829 +msgid "Use jump tables for sufficiently large switch statements." msgstr "" -#: c-family/c.opt:1453 -msgid "" -"-fmacro-prefix-map== Map one directory name to another in " -"__FILE__, __BASE_FILE__, and __builtin_FILE()." +#: common.opt:1833 +msgid "Generate code for functions even if they are fully inlined." msgstr "" -#: c-family/c.opt:1457 -msgid "Write all declarations as Ada code transitively." +#: common.opt:1837 +msgid "Generate code for static functions even if they are never called." msgstr "" -#: c-family/c.opt:1461 -msgid "Write all declarations as Ada code for the given file only." +#: common.opt:1841 +msgid "Emit static const variables even if they are not used." msgstr "" -#: c-family/c.opt:1468 -msgid "-fno-elide-type Do not elide common elements in template comparisons." +#: common.opt:1845 +msgid "Give external symbols a leading underscore." msgstr "" -#: c-family/c.opt:1472 -msgid "Generate code to check exception specifications." +#: common.opt:1853 +msgid "Do CFG-sensitive rematerialization in LRA." msgstr "" -#: c-family/c.opt:1479 -msgid "" -"-fexec-charset=\tConvert all strings and character constants to " -"character set ." +#: common.opt:1857 +msgid "Enable link-time optimization." msgstr "" -#: c-family/c.opt:1483 -msgid "Permit universal character names (\\u and \\U) in identifiers." +#: common.opt:1861 +msgid "Link-time optimization with number of parallel jobs or jobserver." msgstr "" -#: c-family/c.opt:1487 -msgid "" -"-finput-charset=\tSpecify the default character set for source files." +#: common.opt:1883 +msgid "Specify the algorithm to partition symbols and vars at linktime." msgstr "" -#: c-family/c.opt:1491 +#: common.opt:1888 msgid "" -"Support dynamic initialization of thread-local variables in a different " -"translation unit." +"-flto-compression-level=\tUse zlib compression level for IL." msgstr "" -#: c-family/c.opt:1501 -msgid "Do not assume that standard C libraries and \"main\" exist." +#: common.opt:1892 +msgid "Merge C++ types using One Definition Rule." msgstr "" -#: c-family/c.opt:1505 -msgid "Recognize GNU-defined keywords." +#: common.opt:1896 +msgid "Report various link-time optimization statistics." msgstr "" -#: c-family/c.opt:1509 -msgid "Generate code for GNU runtime environment." +#: common.opt:1900 +msgid "Report various link-time optimization statistics for WPA only." msgstr "" -#: c-family/c.opt:1513 -msgid "Use traditional GNU semantics for inline functions." +#: common.opt:1904 +msgid "Set errno after built-in math functions." msgstr "" -#: c-family/c.opt:1526 -msgid "Assume normal C execution environment." +#: common.opt:1908 +msgid "-fmax-errors=\tMaximum number of errors to report." msgstr "" -#: c-family/c.opt:1534 -msgid "Export functions even if they can be inlined." +#: common.opt:1912 +msgid "Report on permanent memory allocation." msgstr "" -#: c-family/c.opt:1538 -msgid "Emit implicit instantiations of inline templates." +#: common.opt:1916 +msgid "Report on permanent memory allocation in WPA only." msgstr "" -#: c-family/c.opt:1542 -msgid "Emit implicit instantiations of templates." +#: common.opt:1923 +msgid "Attempt to merge identical constants and constant variables." msgstr "" -#: c-family/c.opt:1546 -msgid "Implement C++17 inheriting constructor semantics." +#: common.opt:1927 +msgid "Attempt to merge identical constants across compilation units." msgstr "" -#: c-family/c.opt:1553 -msgid "Don't emit dllexported inline functions unless needed." +#: common.opt:1931 +msgid "Attempt to merge identical debug strings across compilation units." msgstr "" -#: c-family/c.opt:1560 +#: common.opt:1935 msgid "" -"Allow implicit conversions between vectors with differing numbers of " -"subparts and/or differing element types." +"-fmessage-length=\tLimit diagnostics to characters per " +"line. 0 suppresses line-wrapping." msgstr "" -#: c-family/c.opt:1564 -msgid "Don't warn about uses of Microsoft extensions." +#: common.opt:1939 +msgid "Perform SMS based modulo scheduling before the first scheduling pass." msgstr "" -#: c-family/c.opt:1583 -msgid "" -"Implement resolution of DR 150 for matching of template template arguments." +#: common.opt:1943 +msgid "Perform SMS based modulo scheduling with register moves allowed." msgstr "" -#: c-family/c.opt:1587 -msgid "Generate code for NeXT (Apple Mac OS X) runtime environment." +#: common.opt:1947 +msgid "Move loop invariant computations out of loops." msgstr "" -#: c-family/c.opt:1591 -msgid "Assume that receivers of Objective-C messages may be nil." +#: common.opt:1951 +msgid "Use the RTL dead code elimination pass." msgstr "" -#: c-family/c.opt:1595 -msgid "" -"Allow access to instance variables as if they were local declarations within " -"instance method implementations." +#: common.opt:1955 +msgid "Use the RTL dead store elimination pass." msgstr "" -#: c-family/c.opt:1599 +#: common.opt:1959 msgid "" -"-fvisibility=[private|protected|public|package]\tSet the default symbol " -"visibility." +"Enable/Disable the traditional scheduling in loops that already passed " +"modulo scheduling." msgstr "" -#: c-family/c.opt:1624 -msgid "" -"Treat a throw() exception specification as noexcept to improve code size." +#: common.opt:1963 +msgid "Support synchronous non-call exceptions." msgstr "" -#: c-family/c.opt:1628 +#: common.opt:1967 msgid "" -"Specify which ABI to use for Objective-C family code and meta-data " -"generation." +"-foffload== Specify offloading targets and options for " +"them." msgstr "" -#: c-family/c.opt:1634 +#: common.opt:1971 msgid "" -"Generate special Objective-C methods to initialize/destroy non-POD C++ " -"ivars, if needed." +"-foffload-abi=[lp64|ilp32] Set the ABI to use in an offload compiler." msgstr "" -#: c-family/c.opt:1638 -msgid "Allow fast jumps to the message dispatcher." +#: common.opt:1984 +msgid "When possible do not generate stack frames." msgstr "" -#: c-family/c.opt:1644 -msgid "Enable Objective-C exception and synchronization syntax." +#: common.opt:1988 +msgid "Enable all optimization info dumps on stderr." msgstr "" -#: c-family/c.opt:1648 -msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs." +#: common.opt:1992 +msgid "-fopt-info[-=filename]\tDump compiler optimization details." msgstr "" -#: c-family/c.opt:1652 +#: common.opt:1996 msgid "" -"Enable inline checks for nil receivers with the NeXT runtime and ABI version " -"2." +"Write a SRCFILE.opt-record.json file detailing what optimizations were " +"performed." msgstr "" -#: c-family/c.opt:1657 -msgid "Enable Objective-C setjmp exception handling runtime." +#: common.opt:2004 +msgid "Optimize sibling and tail recursive calls." msgstr "" -#: c-family/c.opt:1661 -msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0." +#: common.opt:2008 +msgid "Perform partial inlining." msgstr "" -#: c-family/c.opt:1665 -msgid "Enable OpenACC." +#: common.opt:2012 common.opt:2016 +msgid "Report on memory allocation before interprocedural optimization." msgstr "" -#: c-family/c.opt:1669 -msgid "Specify default OpenACC compute dimensions." +#: common.opt:2020 +msgid "Pack structure members together without holes." msgstr "" -#: c-family/c.opt:1673 -msgid "Enable OpenMP (implies -frecursive in Fortran)." +#: common.opt:2024 +msgid "-fpack-struct=\tSet initial maximum structure member alignment." msgstr "" -#: c-family/c.opt:1677 -msgid "Enable OpenMP's SIMD directives." +#: common.opt:2028 +msgid "Return small aggregates in memory, not registers." msgstr "" -#: c-family/c.opt:1681 -msgid "Recognize C++ keywords like \"compl\" and \"xor\"." +#: common.opt:2032 +msgid "Perform loop peeling." msgstr "" -#: c-family/c.opt:1692 -msgid "Look for and use PCH files even when preprocessing." +#: common.opt:2036 +msgid "Enable machine specific peephole optimizations." msgstr "" -#: c-family/c.opt:1696 -msgid "Downgrade conformance errors to warnings." +#: common.opt:2040 +msgid "Enable an RTL peephole pass before sched2." msgstr "" -#: c-family/c.opt:1700 -msgid "Enable Plan 9 language extensions." +#: common.opt:2044 +msgid "Generate position-independent code if possible (large mode)." msgstr "" -#: c-family/c.opt:1704 -msgid "Treat the input file as already preprocessed." +#: common.opt:2048 +msgid "" +"Generate position-independent code for executables if possible (large mode)." msgstr "" -#: c-family/c.opt:1712 +#: common.opt:2052 +msgid "Generate position-independent code if possible (small mode)." +msgstr "" + +#: common.opt:2056 msgid "" -"-ftrack-macro-expansion=<0|1|2> Track locations of tokens coming from macro " -"expansion and display them in error messages." +"Generate position-independent code for executables if possible (small mode)." msgstr "" -#: c-family/c.opt:1716 +#: common.opt:2060 msgid "" -"-fno-pretty-templates Do not pretty-print template specializations as the " -"template signature followed by the arguments." +"Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)." msgstr "" -#: c-family/c.opt:1720 -msgid "Treat known sprintf return values as constants." +#: common.opt:2064 +msgid "Specify a plugin to load." msgstr "" -#: c-family/c.opt:1724 +#: common.opt:2068 msgid "" -"Used in Fix-and-Continue mode to indicate that object files may be swapped " -"in at runtime." +"-fplugin-arg--[=]\tSpecify argument = for " +"plugin ." msgstr "" -#: c-family/c.opt:1728 -msgid "Enable automatic template instantiation." +#: common.opt:2072 +msgid "Run predictive commoning optimization." msgstr "" -#: c-family/c.opt:1732 -msgid "Generate run time type descriptor information." +#: common.opt:2076 +msgid "Generate prefetch instructions, if available, for arrays in loops." msgstr "" -#: c-family/c.opt:1740 -msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\"." +#: common.opt:2080 +msgid "Enable basic program profiling code." msgstr "" -#: c-family/c.opt:1744 -msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed." +#: common.opt:2084 +msgid "Generate absolute source path names for gcov." msgstr "" -#: c-family/c.opt:1752 -msgid "Enable C++14 sized deallocation support." +#: common.opt:2088 +msgid "Insert arc-based program profiling code." msgstr "" -#: c-family/c.opt:1759 +#: common.opt:2092 msgid "" -"-fsso-struct=[big-endian|little-endian|native]\tSet the default scalar " -"storage order." +"Set the top-level directory for storing the profile data. The default is " +"'pwd'." msgstr "" -#: c-family/c.opt:1775 -msgid "Display statistics accumulated during compilation." +#: common.opt:2097 +msgid "Enable correction of flow inconsistent profile data input." msgstr "" -#: c-family/c.opt:1779 +#: common.opt:2101 msgid "" -"Assume that values of enumeration type are always within the minimum range " -"of that type." +"-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update " +"method." msgstr "" -#: c-family/c.opt:1786 c-family/c.opt:1791 +#: common.opt:2105 msgid "" -"Follow the C++17 evaluation order requirements for assignment expressions, " -"shift, member function calls, etc." +"Instrument only functions from files where names match any regular " +"expression (separated by a semi-colon)." msgstr "" -#: c-family/c.opt:1808 -msgid "-ftabstop=\tDistance between tab stops for column reporting." +#: common.opt:2109 +msgid "" +"Instrument only functions from files where names do not match all the " +"regular expressions (separated by a semi-colon)." msgstr "" -#: c-family/c.opt:1812 +#: common.opt:2125 msgid "" -"Set the maximum number of template instantiation notes for a single warning " -"or error." +"Enable common options for generating profile info for profile feedback " +"directed optimizations." msgstr "" -#: c-family/c.opt:1819 +#: common.opt:2129 msgid "" -"-ftemplate-depth=\tSpecify maximum template instantiation depth." +"Enable common options for generating profile info for profile feedback " +"directed optimizations, and set -fprofile-dir=." msgstr "" -#: c-family/c.opt:1826 +#: common.opt:2133 msgid "" -"-fno-threadsafe-statics\tDo not generate thread-safe code for initializing " -"local statics." +"Enable common options for performing profile feedback directed optimizations." msgstr "" -#: c-family/c.opt:1830 +#: common.opt:2137 msgid "" -"When \"signed\" or \"unsigned\" is not given make the bitfield unsigned." +"Enable common options for performing profile feedback directed " +"optimizations, and set -fprofile-dir=." msgstr "" -#: c-family/c.opt:1838 -msgid "Use __cxa_atexit to register destructors." +#: common.opt:2141 +msgid "Insert code to profile values of expressions." msgstr "" -#: c-family/c.opt:1842 -msgid "Use __cxa_get_exception_ptr in exception handling." +#: common.opt:2145 +msgid "Report on consistency of profile." msgstr "" -#: c-family/c.opt:1846 -msgid "Marks all inlined functions and methods as having hidden visibility." +#: common.opt:2149 +msgid "Enable function reordering that improves code placement." msgstr "" -#: c-family/c.opt:1850 -msgid "Changes visibility to match Microsoft Visual Studio by default." +#: common.opt:2153 +msgid "Insert NOP instructions at each function entry." msgstr "" -#: c-family/c.opt:1866 +#: common.opt:2160 +msgid "-frandom-seed=\tMake compile reproducible using ." +msgstr "" + +#: common.opt:2170 +msgid "Record gcc command line switches in the object file." +msgstr "" + +#: common.opt:2174 +msgid "Return small aggregates in registers." +msgstr "" + +#: common.opt:2182 msgid "" -"-fwide-exec-charset=\tConvert all wide strings and character constants " -"to character set ." +"Tell DSE that the storage for a C++ object is dead when the constructor " +"starts and when the destructor finishes." +msgstr "" + +#: common.opt:2193 +msgid "" +"-flive-patching=[inline-only-static|inline-clone]\tControl IPA optimizations " +"to provide a safe compilation for live-patching. At the same time, provides " +"multiple-level control on the enabled IPA optimizations." +msgstr "" + +#: common.opt:2208 +msgid "Relief of register pressure through live range shrinkage." +msgstr "" + +#: common.opt:2212 +msgid "Perform a register renaming optimization pass." +msgstr "" + +#: common.opt:2216 +msgid "Perform a target dependent instruction fusion optimization pass." +msgstr "" + +#: common.opt:2220 +msgid "Reorder basic blocks to improve code placement." +msgstr "" + +#: common.opt:2224 +msgid "" +"-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering " +"algorithm." +msgstr "" + +#: common.opt:2237 +msgid "Reorder basic blocks and partition into hot and cold sections." msgstr "" -#: c-family/c.opt:1870 -msgid "Generate a #line directive pointing at the current working directory." +#: common.opt:2241 +msgid "Reorder functions to improve code placement." msgstr "" -#: c-family/c.opt:1878 -msgid "" -"Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode." +#: common.opt:2245 +msgid "Add a common subexpression elimination pass after loop optimizations." msgstr "" -#: c-family/c.opt:1882 -msgid "Dump declarations to a .decl file." +#: common.opt:2253 +msgid "Disable optimizations that assume default FP rounding behavior." msgstr "" -#: c-family/c.opt:1886 -msgid "" -"-femit-struct-debug-baseonly\tAggressive reduced debug info for structs." +#: common.opt:2257 +msgid "Enable scheduling across basic blocks." msgstr "" -#: c-family/c.opt:1890 -msgid "" -"-femit-struct-debug-reduced\tConservative reduced debug info for structs." +#: common.opt:2261 +msgid "Enable register pressure sensitive insn scheduling." msgstr "" -#: c-family/c.opt:1894 -msgid "" -"-femit-struct-debug-detailed=\tDetailed reduced debug info for " -"structs." +#: common.opt:2265 +msgid "Allow speculative motion of non-loads." msgstr "" -#: c-family/c.opt:1898 -msgid "" -"Interpret imaginary, fixed-point, or other gnu number suffix as the " -"corresponding number literal rather than a user-defined number literal." +#: common.opt:2269 +msgid "Allow speculative motion of some loads." msgstr "" -#: c-family/c.opt:1903 -msgid "-idirafter \tAdd to the end of the system include path." +#: common.opt:2273 +msgid "Allow speculative motion of more loads." msgstr "" -#: c-family/c.opt:1907 -msgid "-imacros \tAccept definition of macros in ." +#: common.opt:2277 +msgid "-fsched-verbose=\tSet the verbosity level of the scheduler." msgstr "" -#: c-family/c.opt:1911 -msgid "-imultilib \tSet to be the multilib include subdirectory." +#: common.opt:2281 +msgid "If scheduling post reload, do superblock scheduling." msgstr "" -#: c-family/c.opt:1915 -msgid "-include \tInclude the contents of before other files." +#: common.opt:2289 +msgid "Reschedule instructions before register allocation." msgstr "" -#: c-family/c.opt:1919 -msgid "-iprefix \tSpecify as a prefix for next two options." +#: common.opt:2293 +msgid "Reschedule instructions after register allocation." msgstr "" -#: c-family/c.opt:1923 -msgid "-isysroot \tSet to be the system root directory." +#: common.opt:2300 +msgid "Schedule instructions using selective scheduling algorithm." msgstr "" -#: c-family/c.opt:1927 -msgid "-isystem \tAdd to the start of the system include path." +#: common.opt:2304 +msgid "Run selective scheduling after reload." msgstr "" -#: c-family/c.opt:1931 -msgid "-iquote \tAdd to the end of the quote include path." +#: common.opt:2308 +msgid "Run self-tests, using the given path to locate test files." msgstr "" -#: c-family/c.opt:1935 -msgid "-iwithprefix \tAdd to the end of the system include path." +#: common.opt:2312 +msgid "Perform software pipelining of inner loops during selective scheduling." msgstr "" -#: c-family/c.opt:1939 -msgid "" -"-iwithprefixbefore \tAdd to the end of the main include path." +#: common.opt:2316 +msgid "Perform software pipelining of outer loops during selective scheduling." msgstr "" -#: c-family/c.opt:1949 -msgid "" -"Do not search standard system include directories (those specified with -" -"isystem will still be used)." +#: common.opt:2320 +msgid "Reschedule pipelined regions without pipelining." msgstr "" -#: c-family/c.opt:1953 -msgid "Do not search standard system include directories for C++." +#: common.opt:2324 +msgid "" +"Allow interposing function (or variables) by ones with different semantics " +"(or initializer) respectively by dynamic linker." msgstr "" -#: c-family/c.opt:1965 -msgid "Generate C header of platform-specific features." +#: common.opt:2330 +msgid "Allow premature scheduling of queued insns." msgstr "" -#: c-family/c.opt:1969 -msgid "Remap file names when including files." +#: common.opt:2334 +msgid "" +"-fsched-stalled-insns=\tSet number of queued insns that can be " +"prematurely scheduled." msgstr "" -#: c-family/c.opt:1973 c-family/c.opt:1977 +#: common.opt:2342 msgid "" -"Conform to the ISO 1998 C++ standard revised by the 2003 technical " -"corrigendum." +"Set dependence distance checking in premature scheduling of queued insns." msgstr "" -#: c-family/c.opt:1981 -msgid "Conform to the ISO 2011 C++ standard." +#: common.opt:2346 +msgid "" +"-fsched-stalled-insns-dep=\tSet dependence distance checking in " +"premature scheduling of queued insns." msgstr "" -#: c-family/c.opt:1985 -msgid "Deprecated in favor of -std=c++11." +#: common.opt:2350 +msgid "Enable the group heuristic in the scheduler." msgstr "" -#: c-family/c.opt:1989 -msgid "Deprecated in favor of -std=c++14." +#: common.opt:2354 +msgid "Enable the critical path heuristic in the scheduler." msgstr "" -#: c-family/c.opt:1993 -msgid "Conform to the ISO 2014 C++ standard." +#: common.opt:2358 +msgid "Enable the speculative instruction heuristic in the scheduler." msgstr "" -#: c-family/c.opt:1997 -msgid "Deprecated in favor of -std=c++17." +#: common.opt:2362 +msgid "Enable the rank heuristic in the scheduler." msgstr "" -#: c-family/c.opt:2001 -msgid "Conform to the ISO 2017 C++ standard." +#: common.opt:2366 +msgid "Enable the last instruction heuristic in the scheduler." msgstr "" -#: c-family/c.opt:2005 -msgid "" -"Conform to the ISO 2020(?) C++ draft standard (experimental and incomplete " -"support)." +#: common.opt:2370 +msgid "Enable the dependent count heuristic in the scheduler." msgstr "" -#: c-family/c.opt:2009 c-family/c.opt:2135 -msgid "Conform to the ISO 2011 C standard." +#: common.opt:2374 +msgid "Access data in the same section from shared anchor points." msgstr "" -#: c-family/c.opt:2013 -msgid "Deprecated in favor of -std=c11." +#: common.opt:2386 +msgid "Turn on Redundant Extensions Elimination pass." msgstr "" -#: c-family/c.opt:2017 c-family/c.opt:2021 c-family/c.opt:2139 -#: c-family/c.opt:2143 -msgid "Conform to the ISO 2017 C standard (published in 2018)." +#: common.opt:2390 +msgid "Show column numbers in diagnostics, when available. Default on." msgstr "" -#: c-family/c.opt:2025 +#: common.opt:2394 msgid "" -"Conform to the ISO 202X C standard draft (experimental and incomplete " -"support)." -msgstr "" - -#: c-family/c.opt:2029 c-family/c.opt:2033 c-family/c.opt:2119 -msgid "Conform to the ISO 1990 C standard." +"Emit function prologues only before parts of the function that need it, " +"rather than at the top of the function." msgstr "" -#: c-family/c.opt:2037 c-family/c.opt:2127 -msgid "Conform to the ISO 1999 C standard." +#: common.opt:2399 +msgid "Shrink-wrap parts of the prologue and epilogue separately." msgstr "" -#: c-family/c.opt:2041 -msgid "Deprecated in favor of -std=c99." +#: common.opt:2403 +msgid "Disable optimizations observable by IEEE signaling NaNs." msgstr "" -#: c-family/c.opt:2045 c-family/c.opt:2050 +#: common.opt:2407 msgid "" -"Conform to the ISO 1998 C++ standard revised by the 2003 technical " -"corrigendum with GNU extensions." +"Disable floating point optimizations that ignore the IEEE signedness of zero." msgstr "" -#: c-family/c.opt:2055 -msgid "Conform to the ISO 2011 C++ standard with GNU extensions." +#: common.opt:2411 +msgid "Convert floating point constants to single precision constants." msgstr "" -#: c-family/c.opt:2059 -msgid "Deprecated in favor of -std=gnu++11." +#: common.opt:2415 +msgid "Split lifetimes of induction variables when loops are unrolled." msgstr "" -#: c-family/c.opt:2063 -msgid "Deprecated in favor of -std=gnu++14." +#: common.opt:2419 +msgid "Generate discontiguous stack frames." msgstr "" -#: c-family/c.opt:2067 -msgid "Conform to the ISO 2014 C++ standard with GNU extensions." +#: common.opt:2423 +msgid "Split wide types into independent registers." msgstr "" -#: c-family/c.opt:2071 -msgid "Deprecated in favor of -std=gnu++17." +#: common.opt:2427 +msgid "Enable backward propagation of use properties at the SSA level." msgstr "" -#: c-family/c.opt:2075 -msgid "Conform to the ISO 2017 C++ standard with GNU extensions." +#: common.opt:2431 +msgid "Optimize conditional patterns using SSA PHI nodes." msgstr "" -#: c-family/c.opt:2079 +#: common.opt:2435 msgid "" -"Conform to the ISO 2020(?) C++ draft standard with GNU extensions " -"(experimental and incomplete support)." -msgstr "" - -#: c-family/c.opt:2083 -msgid "Conform to the ISO 2011 C standard with GNU extensions." +"Optimize amount of stdarg registers saved to stack at start of function." msgstr "" -#: c-family/c.opt:2087 -msgid "Deprecated in favor of -std=gnu11." +#: common.opt:2439 +msgid "Apply variable expansion when loops are unrolled." msgstr "" -#: c-family/c.opt:2091 c-family/c.opt:2095 +#: common.opt:2443 msgid "" -"Conform to the ISO 2017 C standard (published in 2018) with GNU extensions." +"-fstack-check=[no|generic|specific]\tInsert stack checking code into the " +"program." msgstr "" -#: c-family/c.opt:2099 +#: common.opt:2447 msgid "" -"Conform to the ISO 202X C standard draft with GNU extensions (experimental " -"and incomplete support)." +"Insert stack checking code into the program. Same as -fstack-check=specific." msgstr "" -#: c-family/c.opt:2103 c-family/c.opt:2107 -msgid "Conform to the ISO 1990 C standard with GNU extensions." +#: common.opt:2451 +msgid "" +"Insert code to probe each page of stack space as it is allocated to protect " +"from stack-clash style attacks." msgstr "" -#: c-family/c.opt:2111 -msgid "Conform to the ISO 1999 C standard with GNU extensions." +#: common.opt:2459 +msgid "" +"-fstack-limit-register=\tTrap if the stack goes past ." msgstr "" -#: c-family/c.opt:2115 -msgid "Deprecated in favor of -std=gnu99." +#: common.opt:2463 +msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol ." msgstr "" -#: c-family/c.opt:2123 -msgid "Conform to the ISO 1990 C standard as amended in 1994." +#: common.opt:2467 +msgid "Use propolice as a stack protection method." msgstr "" -#: c-family/c.opt:2131 -msgid "Deprecated in favor of -std=iso9899:1999." +#: common.opt:2471 +msgid "Use a stack protection method for every function." msgstr "" -#: c-family/c.opt:2150 -msgid "Enable traditional preprocessing." +#: common.opt:2475 +msgid "Use a smart stack protection method for certain functions." msgstr "" -#: c-family/c.opt:2154 -msgid "-trigraphs\tSupport ISO C trigraphs." +#: common.opt:2479 +msgid "" +"Use stack protection method only for functions with the stack_protect " +"attribute." msgstr "" -#: c-family/c.opt:2158 -msgid "Do not predefine system-specific and GCC-specific macros." +#: common.opt:2483 +msgid "Output stack usage information on a per-function basis." msgstr "" -#: fortran/lang.opt:146 -msgid "-J\tPut MODULE files in 'directory'." +#: common.opt:2495 +msgid "Assume strict aliasing rules apply." msgstr "" -#: fortran/lang.opt:198 -msgid "Warn about possible aliasing of dummy arguments." +#: common.opt:2499 +msgid "" +"Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer." msgstr "" -#: fortran/lang.opt:202 -msgid "Warn about alignment of COMMON blocks." +#: common.opt:2503 +msgid "Implement __atomic operations via libcalls to legacy __sync functions." msgstr "" -#: fortran/lang.opt:206 -msgid "Warn about missing ampersand in continued character constants." +#: common.opt:2507 +msgid "Check for syntax errors, then stop." msgstr "" -#: fortran/lang.opt:210 -msgid "Warn about creation of array temporaries." +#: common.opt:2511 +msgid "Create data files needed by \"gcov\"." msgstr "" -#: fortran/lang.opt:214 -msgid "Warn about type and rank mismatches between arguments and parameters." +#: common.opt:2515 +msgid "Perform jump threading optimizations." msgstr "" -#: fortran/lang.opt:218 -msgid "Warn if the type of a variable might be not interoperable with C." +#: common.opt:2519 +msgid "Report the time taken by each compiler pass." msgstr "" -#: fortran/lang.opt:226 -msgid "Warn about truncated character expressions." +#: common.opt:2523 +msgid "Record times taken by sub-phases separately." msgstr "" -#: fortran/lang.opt:230 -msgid "Warn about equality comparisons involving REAL or COMPLEX expressions." +#: common.opt:2527 +msgid "" +"-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the " +"default thread-local storage code generation model." msgstr "" -#: fortran/lang.opt:238 -msgid "Warn about most implicit conversions." +#: common.opt:2546 +msgid "Reorder top level functions, variables, and asms." msgstr "" -#: fortran/lang.opt:242 -msgid "Warn about possibly incorrect subscripts in do loops." +#: common.opt:2550 +msgid "Perform superblock formation via tail duplication." msgstr "" -#: fortran/lang.opt:250 -msgid "Warn if loops have been interchanged." +#: common.opt:2554 +msgid "" +"For targets that normally need trampolines for nested functions, always " +"generate them instead of using descriptors." msgstr "" -#: fortran/lang.opt:254 -msgid "Warn about function call elimination." +#: common.opt:2562 +msgid "Assume floating-point operations can trap." msgstr "" -#: fortran/lang.opt:258 -msgid "Warn about calls with implicit interface." +#: common.opt:2566 +msgid "Trap for signed overflow in addition, subtraction and multiplication." msgstr "" -#: fortran/lang.opt:262 -msgid "Warn about called procedures not explicitly declared." +#: common.opt:2570 +msgid "Enable SSA-CCP optimization on trees." msgstr "" -#: fortran/lang.opt:266 -msgid "Warn about constant integer divisions with truncated results." +#: common.opt:2574 +msgid "Enable SSA-BIT-CCP optimization on trees." msgstr "" -#: fortran/lang.opt:270 -msgid "Warn about truncated source lines." +#: common.opt:2582 +msgid "Enable loop header copying on trees." msgstr "" -#: fortran/lang.opt:274 -msgid "Warn on intrinsics not part of the selected standard." +#: common.opt:2590 +msgid "Enable SSA coalescing of user variables." msgstr "" -#: fortran/lang.opt:286 -msgid "Warn about USE statements that have no ONLY qualifier." +#: common.opt:2598 +msgid "Enable copy propagation on trees." msgstr "" -#: fortran/lang.opt:298 -msgid "Warn about real-literal-constants with 'q' exponent-letter." +#: common.opt:2606 +msgid "Transform condition stores into unconditional ones." msgstr "" -#: fortran/lang.opt:302 -msgid "Warn when a left-hand-side array variable is reallocated." +#: common.opt:2610 +msgid "Perform conversions of switch initializations." msgstr "" -#: fortran/lang.opt:306 -msgid "Warn when a left-hand-side variable is reallocated." +#: common.opt:2614 +msgid "Enable SSA dead code elimination optimization on trees." msgstr "" -#: fortran/lang.opt:310 -msgid "Warn if the pointer in a pointer assignment might outlive its target." +#: common.opt:2618 +msgid "Enable dominator optimizations." msgstr "" -#: fortran/lang.opt:318 -msgid "Warn about \"suspicious\" constructs." +#: common.opt:2622 +msgid "Enable tail merging on trees." msgstr "" -#: fortran/lang.opt:322 -msgid "Permit nonconforming uses of the tab character." +#: common.opt:2626 +msgid "Enable dead store elimination." msgstr "" -#: fortran/lang.opt:326 -msgid "Warn about an invalid DO loop." +#: common.opt:2630 +msgid "Enable forward propagation on trees." msgstr "" -#: fortran/lang.opt:330 -msgid "Warn about underflow of numerical constant expressions." +#: common.opt:2634 +msgid "Enable Full Redundancy Elimination (FRE) on trees." msgstr "" -#: fortran/lang.opt:338 -msgid "Warn if a user-procedure has the same name as an intrinsic." +#: common.opt:2638 +msgid "Enable string length optimizations on trees." msgstr "" -#: fortran/lang.opt:346 -msgid "Warn about unused dummy arguments." +#: common.opt:2642 +msgid "" +"Detect paths that trigger erroneous or undefined behavior due to " +"dereferencing a null pointer. Isolate those paths from the main control " +"flow and turn the statement with erroneous or undefined behavior into a trap." msgstr "" -#: fortran/lang.opt:350 -msgid "Warn about zero-trip DO loops." +#: common.opt:2648 +msgid "" +"Detect paths that trigger erroneous or undefined behavior due to a null " +"value being used in a way forbidden by a returns_nonnull or nonnull " +"attribute. Isolate those paths from the main control flow and turn the " +"statement with erroneous or undefined behavior into a trap." msgstr "" -#: fortran/lang.opt:354 -msgid "Enable preprocessing." +#: common.opt:2655 +msgid "Enable loop distribution on trees." msgstr "" -#: fortran/lang.opt:362 -msgid "Disable preprocessing." +#: common.opt:2659 +msgid "Enable loop distribution for patterns transformed into a library call." msgstr "" -#: fortran/lang.opt:370 -msgid "Eliminate multiple function invocations also for impure functions." +#: common.opt:2663 +msgid "Enable loop invariant motion on trees." msgstr "" -#: fortran/lang.opt:374 -msgid "Enable alignment of COMMON blocks." +#: common.opt:2671 +msgid "Create canonical induction variables in loops." msgstr "" -#: fortran/lang.opt:378 -msgid "" -"All intrinsics procedures are available regardless of selected standard." +#: common.opt:2675 +msgid "Enable loop optimizations on tree level." msgstr "" -#: fortran/lang.opt:386 +#: common.opt:2679 msgid "" -"Do not treat local variables and COMMON blocks as if they were named in SAVE " -"statements." +"-ftree-parallelize-loops=\tEnable automatic parallelization of loops." msgstr "" -#: fortran/lang.opt:390 -msgid "Specify that backslash in string introduces an escape character." +#: common.opt:2683 +msgid "Enable hoisting loads from conditional pointers." msgstr "" -#: fortran/lang.opt:394 -msgid "Produce a backtrace when a runtime error is encountered." +#: common.opt:2687 +msgid "Enable SSA-PRE optimization on trees." msgstr "" -#: fortran/lang.opt:398 +#: common.opt:2691 msgid "" -"-fblas-matmul-limit=\tSize of the smallest matrix for which matmul will " -"use BLAS." +"In SSA-PRE optimization on trees, enable partial-partial redundancy " +"elimination." msgstr "" -#: fortran/lang.opt:402 -msgid "" -"Produce a warning at runtime if a array temporary has been created for a " -"procedure argument." +#: common.opt:2695 +msgid "Perform function-local points-to analysis on trees." msgstr "" -#: fortran/lang.opt:406 -msgid "" -"-fconvert= The endianness used for " -"unformatted files." +#: common.opt:2699 +msgid "Enable reassociation on tree level." msgstr "" -#: fortran/lang.opt:425 -msgid "Use the Cray Pointer extension." +#: common.opt:2707 +msgid "Enable SSA code sinking on trees." msgstr "" -#: fortran/lang.opt:429 -msgid "Generate C prototypes from BIND(C) declarations." +#: common.opt:2711 +msgid "Perform straight-line strength reduction." msgstr "" -#: fortran/lang.opt:433 -msgid "Ignore 'D' in column one in fixed form." +#: common.opt:2715 +msgid "Perform scalar replacement of aggregates." msgstr "" -#: fortran/lang.opt:437 -msgid "Treat lines with 'D' in column one as comments." +#: common.opt:2719 +msgid "Replace temporary expressions in the SSA->normal pass." msgstr "" -#: fortran/lang.opt:441 -msgid "Enable all DEC language extensions." +#: common.opt:2723 +msgid "Perform live range splitting during the SSA->normal pass." msgstr "" -#: fortran/lang.opt:445 -msgid "Enable legacy parsing of INCLUDE as statement." +#: common.opt:2727 +msgid "Perform Value Range Propagation on trees." msgstr "" -#: fortran/lang.opt:449 -msgid "Enable kind-specific variants of integer intrinsic functions." +#: common.opt:2731 +msgid "Split paths leading to loop backedges." msgstr "" -#: fortran/lang.opt:453 -msgid "Enable legacy math intrinsics for compatibility." +#: common.opt:2735 +msgid "" +"Assume common declarations may be overridden with ones with a larger " +"trailing array." msgstr "" -#: fortran/lang.opt:457 -msgid "Enable support for DEC STRUCTURE/RECORD." +#: common.opt:2740 +msgid "Compile whole compilation unit at a time." msgstr "" -#: fortran/lang.opt:461 -msgid "Enable DEC-style STATIC and AUTOMATIC attributes." +#: common.opt:2744 +msgid "Perform loop unrolling when iteration count is known." msgstr "" -#: fortran/lang.opt:465 -msgid "Set the default double precision kind to an 8 byte wide type." +#: common.opt:2748 +msgid "Perform loop unrolling for all loops." msgstr "" -#: fortran/lang.opt:469 -msgid "Set the default integer kind to an 8 byte wide type." +#: common.opt:2759 +msgid "" +"Allow optimization for floating-point arithmetic which may change the result " +"of the operation due to rounding." msgstr "" -#: fortran/lang.opt:473 -msgid "Set the default real kind to an 8 byte wide type." +#: common.opt:2764 +msgid "Same as -fassociative-math for expressions which include division." msgstr "" -#: fortran/lang.opt:477 -msgid "Set the default real kind to an 10 byte wide type." +#: common.opt:2772 +msgid "Allow math optimizations that may violate IEEE or ISO standards." msgstr "" -#: fortran/lang.opt:481 -msgid "Set the default real kind to an 16 byte wide type." +#: common.opt:2776 +msgid "Perform loop unswitching." msgstr "" -#: fortran/lang.opt:485 -msgid "Allow dollar signs in entity names." +#: common.opt:2780 +msgid "Perform loop splitting." msgstr "" -#: fortran/lang.opt:493 -msgid "Display the code tree after parsing." +#: common.opt:2784 +msgid "Version loops based on whether indices have a stride of one." +msgstr "" + +#: common.opt:2788 +msgid "Just generate unwind tables for exception handling." msgstr "" -#: fortran/lang.opt:497 -msgid "Display the code tree after front end optimization." +#: common.opt:2792 +msgid "Use the bfd linker instead of the default linker." msgstr "" -#: fortran/lang.opt:501 -msgid "Display the code tree after parsing; deprecated option." +#: common.opt:2796 +msgid "Use the gold linker instead of the default linker." msgstr "" -#: fortran/lang.opt:505 -msgid "" -"Specify that an external BLAS library should be used for matmul calls on " -"large-size arrays." +#: common.opt:2800 +msgid "Use the lld LLVM linker instead of the default linker." msgstr "" -#: fortran/lang.opt:509 -msgid "Use f2c calling convention." +#: common.opt:2812 +msgid "Perform variable tracking." msgstr "" -#: fortran/lang.opt:513 -msgid "Assume that the source file is fixed form." +#: common.opt:2820 +msgid "Perform variable tracking by annotating assignments." msgstr "" -#: fortran/lang.opt:517 -msgid "Force creation of temporary to test infrequently-executed forall code." +#: common.opt:2826 +msgid "Toggle -fvar-tracking-assignments." msgstr "" -#: fortran/lang.opt:521 -msgid "Interpret any INTEGER(4) as an INTEGER(8)." +#: common.opt:2834 +msgid "" +"Perform variable tracking and also tag variables that are uninitialized." msgstr "" -#: fortran/lang.opt:525 fortran/lang.opt:529 -msgid "Specify where to find the compiled intrinsic modules." +#: common.opt:2839 +msgid "Enable vectorization on trees." msgstr "" -#: fortran/lang.opt:533 -msgid "Allow arbitrary character line width in fixed mode." +#: common.opt:2847 +msgid "Enable loop vectorization on trees." msgstr "" -#: fortran/lang.opt:537 -msgid "-ffixed-line-length-\tUse n as character line width in fixed mode." +#: common.opt:2851 +msgid "Enable basic block vectorization (SLP) on trees." msgstr "" -#: fortran/lang.opt:541 -msgid "Pad shorter fixed form lines to line width with spaces." +#: common.opt:2855 +msgid "" +"-fvect-cost-model=[unlimited|dynamic|cheap]\tSpecifies the cost model for " +"vectorization." msgstr "" -#: fortran/lang.opt:545 -msgid "-ffpe-trap=[...]\tStop on following floating point exceptions." +#: common.opt:2859 +msgid "" +"-fsimd-cost-model=[unlimited|dynamic|cheap]\tSpecifies the vectorization " +"cost model for code marked with a simd directive." msgstr "" -#: fortran/lang.opt:549 -msgid "-ffpe-summary=[...]\tPrint summary of floating point exceptions." +#: common.opt:2875 +msgid "" +"Enables the dynamic vectorizer cost model. Preserved for backward " +"compatibility." msgstr "" -#: fortran/lang.opt:553 -msgid "Assume that the source file is free form." +#: common.opt:2883 +msgid "Enable copy propagation of scalar-evolution information." msgstr "" -#: fortran/lang.opt:557 -msgid "Allow arbitrary character line width in free mode." +#: common.opt:2893 +msgid "Add extra commentary to assembler output." msgstr "" -#: fortran/lang.opt:561 -msgid "-ffree-line-length-\tUse n as character line width in free mode." +#: common.opt:2897 +msgid "" +"-fvisibility=[default|internal|hidden|protected]\tSet the default symbol " +"visibility." msgstr "" -#: fortran/lang.opt:565 -msgid "Try to interchange loops if profitable." +#: common.opt:2916 +msgid "Validate vtable pointers before using them." msgstr "" -#: fortran/lang.opt:569 -msgid "Enable front end optimization." +#: common.opt:2932 +msgid "Output vtable verification counters." msgstr "" -#: fortran/lang.opt:573 -msgid "" -"Specify that no implicit typing is allowed, unless overridden by explicit " -"IMPLICIT statements." +#: common.opt:2936 +msgid "Output vtable verification pointer sets information." msgstr "" -#: fortran/lang.opt:577 -msgid "" -"-finit-character=\tInitialize local character variables to ASCII value n." +#: common.opt:2940 +msgid "Use expression value profiles in optimizations." msgstr "" -#: fortran/lang.opt:581 -msgid "" -"Initialize components of derived type variables according to other init " -"flags." +#: common.opt:2944 +msgid "Construct webs and split unrelated uses of single variable." msgstr "" -#: fortran/lang.opt:585 -msgid "-finit-integer=\tInitialize local integer variables to n." +#: common.opt:2948 +msgid "Enable conditional dead code elimination for builtin calls." msgstr "" -#: fortran/lang.opt:589 -msgid "Initialize local variables to zero (from g77)." +#: common.opt:2952 +msgid "Perform whole program optimizations." msgstr "" -#: fortran/lang.opt:593 -msgid "-finit-logical=\tInitialize local logical variables." +#: common.opt:2956 +msgid "Assume pointer overflow wraps around." msgstr "" -#: fortran/lang.opt:597 -msgid "-finit-real=\tInitialize local real variables." +#: common.opt:2960 +msgid "Assume signed arithmetic overflow wraps around." msgstr "" -#: fortran/lang.opt:619 -msgid "" -"-finline-matmul-limit=\tSpecify the size of the largest matrix for which " -"matmul will be inlined." +#: common.opt:2964 +msgid "Put zero initialized data in the bss section." msgstr "" -#: fortran/lang.opt:623 -msgid "" -"-fmax-array-constructor=\tMaximum number of objects in an array " -"constructor." +#: common.opt:2968 +msgid "Generate debug information in default format." msgstr "" -#: fortran/lang.opt:627 -msgid "-fmax-identifier-length=\tMaximum identifier length." +#: common.opt:2972 +msgid "Assume assembler support for (DWARF2+) .loc directives." msgstr "" -#: fortran/lang.opt:631 -msgid "-fmax-subrecord-length=\tMaximum length for subrecords." +#: common.opt:2976 +msgid "Assume assembler support for view in (DWARF2+) .loc directives." msgstr "" -#: fortran/lang.opt:635 -msgid "" -"-fmax-stack-var-size=\tSize in bytes of the largest array that will be " -"put on the stack." +#: common.opt:2996 +msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF." msgstr "" -#: fortran/lang.opt:639 -msgid "Put all local arrays on stack." +#: common.opt:3000 +msgid "Generate debug information in default version of DWARF format." msgstr "" -#: fortran/lang.opt:643 -msgid "Set default accessibility of module entities to PRIVATE." +#: common.opt:3004 +msgid "Generate debug information in DWARF v2 (or later) format." msgstr "" -#: fortran/lang.opt:663 -msgid "Try to lay out derived types as compactly as possible." +#: common.opt:3008 +msgid "Generate debug information in default extended format." msgstr "" -#: fortran/lang.opt:671 -msgid "Protect parentheses in expressions." +#: common.opt:3012 +msgid "Generate extended entry point information for inlined functions." msgstr "" -#: fortran/lang.opt:675 -msgid "" -"Path to header file that should be pre-included before each compilation unit." +#: common.opt:3016 +msgid "Compute locview reset points based on insn length estimates." msgstr "" -#: fortran/lang.opt:679 -msgid "Enable range checking during compilation." +#: common.opt:3024 +msgid "Don't generate DWARF pubnames and pubtypes sections." msgstr "" -#: fortran/lang.opt:683 -msgid "Interpret any REAL(4) as a REAL(8)." +#: common.opt:3028 +msgid "Generate DWARF pubnames and pubtypes sections." msgstr "" -#: fortran/lang.opt:687 -msgid "Interpret any REAL(4) as a REAL(10)." +#: common.opt:3032 +msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions." msgstr "" -#: fortran/lang.opt:691 -msgid "Interpret any REAL(4) as a REAL(16)." +#: common.opt:3036 +msgid "Record gcc command line switches in DWARF DW_AT_producer." msgstr "" -#: fortran/lang.opt:695 -msgid "Interpret any REAL(8) as a REAL(4)." +#: common.opt:3040 +msgid "Generate debug information in separate .dwo files." msgstr "" -#: fortran/lang.opt:699 -msgid "Interpret any REAL(8) as a REAL(10)." +#: common.opt:3044 +msgid "Generate debug information in STABS format." msgstr "" -#: fortran/lang.opt:703 -msgid "Interpret any REAL(8) as a REAL(16)." +#: common.opt:3048 +msgid "Generate debug information in extended STABS format." msgstr "" -#: fortran/lang.opt:707 -msgid "Reallocate the LHS in assignments." +#: common.opt:3052 +msgid "Emit progressive recommended breakpoint locations." msgstr "" -#: fortran/lang.opt:711 -msgid "Use a 4-byte record marker for unformatted files." +#: common.opt:3056 +msgid "Don't emit DWARF additions beyond selected version." msgstr "" -#: fortran/lang.opt:715 -msgid "Use an 8-byte record marker for unformatted files." +#: common.opt:3060 +msgid "" +"Add description attributes to some DWARF DIEs that have no name attribute." msgstr "" -#: fortran/lang.opt:719 -msgid "Allocate local variables on the stack to allow indirect recursion." +#: common.opt:3064 +msgid "Toggle debug information generation." msgstr "" -#: fortran/lang.opt:723 -msgid "Copy array sections into a contiguous block on procedure entry." +#: common.opt:3068 +msgid "Augment variable location lists with progressive views." msgstr "" -#: fortran/lang.opt:727 -msgid "" -"-fcoarray=\tSpecify which coarray parallelization should be " -"used." +#: common.opt:3075 +msgid "Generate debug information in VMS format." msgstr "" -#: fortran/lang.opt:743 -msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed." +#: common.opt:3079 +msgid "Generate debug information in XCOFF format." msgstr "" -#: fortran/lang.opt:747 -msgid "Append a second underscore if the name already contains an underscore." +#: common.opt:3083 +msgid "Generate debug information in extended XCOFF format." msgstr "" -#: fortran/lang.opt:755 -msgid "Apply negative sign to zero values." +#: common.opt:3101 +msgid "Generate compressed debug sections." msgstr "" -#: fortran/lang.opt:759 -msgid "Append underscores to externally visible names." +#: common.opt:3105 +msgid "-gz=\tGenerate compressed debug sections in format ." msgstr "" -#: fortran/lang.opt:803 -msgid "Statically link the GNU Fortran helper library (libgfortran)." +#: common.opt:3112 +msgid "-iplugindir=\tSet to be the default plugin directory." msgstr "" -#: fortran/lang.opt:807 -msgid "Conform to the ISO Fortran 2003 standard." +#: common.opt:3116 +msgid "-imultiarch \tSet to be the multiarch include subdirectory." msgstr "" -#: fortran/lang.opt:811 -msgid "Conform to the ISO Fortran 2008 standard." +#: common.opt:3141 +msgid "-o \tPlace output into ." msgstr "" -#: fortran/lang.opt:815 -msgid "Conform to the ISO Fortran 2008 standard including TS 29113." +#: common.opt:3145 +msgid "Enable function profiling." msgstr "" -#: fortran/lang.opt:819 -msgid "Conform to the ISO Fortran 2018 standard." +#: common.opt:3155 +msgid "Like -pedantic but issue them as errors." msgstr "" -#: fortran/lang.opt:823 -msgid "Conform to the ISO Fortran 95 standard." +#: common.opt:3195 +msgid "Do not display functions compiled or elapsed time." msgstr "" -#: fortran/lang.opt:827 -msgid "Conform to nothing in particular." +#: common.opt:3227 +msgid "Enable verbose output." msgstr "" -#: fortran/lang.opt:831 -msgid "Accept extensions to support legacy code." +#: common.opt:3231 +msgid "Display the compiler's version." msgstr "" -#: lto/lang.opt:50 -msgid "Set linker output type (used internally during LTO optimization)." +#: common.opt:3235 +msgid "Suppress warnings." msgstr "" -#: lto/lang.opt:55 -msgid "Run the link-time optimizer in local transformation (LTRANS) mode." +#: common.opt:3245 +msgid "Create a shared library." msgstr "" -#: lto/lang.opt:59 -msgid "Specify a file to which a list of files output by LTRANS is written." +#: common.opt:3290 +msgid "Don't create a dynamically linked position independent executable." msgstr "" -#: lto/lang.opt:63 -msgid "Run the link-time optimizer in whole program analysis (WPA) mode." +#: common.opt:3294 +msgid "Create a dynamically linked position independent executable." msgstr "" -#: lto/lang.opt:67 -msgid "" -"Whole program analysis (WPA) mode with number of parallel jobs specified." +#: common.opt:3298 +msgid "Create a static position independent executable." msgstr "" -#: lto/lang.opt:71 -msgid "The resolution file." +#: common.opt:3305 +msgid "Use caller save register across calls if possible." msgstr "" #: go/gofrontend/expressions.cc:95 c-family/c-warn.c:671 cp/cvt.c:1342 @@ -16973,7 +16982,7 @@ msgstr "" msgid "expected boolean type" msgstr "" -#: go/gofrontend/expressions.cc:4489 c/c-parser.c:14233 c/c-parser.c:14240 +#: go/gofrontend/expressions.cc:4489 c/c-parser.c:14250 c/c-parser.c:14257 #: cp/parser.c:34448 cp/parser.c:34455 #, gcc-internal-format msgid "expected integer" @@ -17393,7 +17402,7 @@ msgid "ignoring attribute %qE because it conflicts with attribute %qs" msgstr "" #: attribs.c:452 c-family/c-attribs.c:2104 c-family/c-attribs.c:2411 -#: cp/decl.c:13987 cp/friend.c:303 cp/tree.c:4569 +#: cp/decl.c:14004 cp/friend.c:303 cp/tree.c:4569 #, gcc-internal-format msgid "previous declaration here" msgstr "" @@ -17415,12 +17424,12 @@ msgstr "" msgid "wrong number of arguments specified for %qE attribute" msgstr "" -#: attribs.c:594 cp/decl.c:11234 +#: attribs.c:594 cp/decl.c:11251 #, gcc-internal-format msgid "attribute ignored" msgstr "" -#: attribs.c:596 cp/decl.c:11235 +#: attribs.c:596 cp/decl.c:11252 #, gcc-internal-format msgid "an attribute that appertains to a type-specifier is ignored" msgstr "" @@ -17465,11 +17474,11 @@ msgstr "" #: c-family/c-attribs.c:3695 c-family/c-attribs.c:3713 #: c-family/c-attribs.c:3736 c-family/c-attribs.c:3775 #: c-family/c-attribs.c:3857 c-family/c-attribs.c:3913 -#: c-family/c-attribs.c:3929 c-family/c-attribs.c:4023 c-family/c-common.c:5770 -#: config/darwin.c:2066 config/arm/arm.c:6893 config/arm/arm.c:6921 -#: config/arm/arm.c:6938 config/avr/avr.c:9698 config/csky/csky.c:6060 +#: c-family/c-attribs.c:3929 c-family/c-attribs.c:4023 c-family/c-common.c:5680 +#: config/darwin.c:2066 config/arm/arm.c:6898 config/arm/arm.c:6926 +#: config/arm/arm.c:6943 config/avr/avr.c:9698 config/csky/csky.c:6060 #: config/csky/csky.c:6082 config/h8300/h8300.c:5483 config/h8300/h8300.c:5507 -#: config/i386/i386.c:6377 config/i386/i386.c:41290 config/i386/i386.c:45874 +#: config/i386/i386.c:6378 config/i386/i386.c:41272 config/i386/i386.c:45856 #: config/ia64/ia64.c:788 config/rs6000/rs6000.c:32968 config/spu/spu.c:3748 #: ada/gcc-interface/utils.c:6351 ada/gcc-interface/utils.c:6368 #: ada/gcc-interface/utils.c:6384 ada/gcc-interface/utils.c:6410 @@ -17483,8 +17492,8 @@ msgstr "" msgid "missing % attribute for multi-versioned %qD" msgstr "" -#: attribs.c:998 cp/decl.c:1136 cp/decl.c:1971 cp/decl.c:1982 cp/decl.c:2564 -#: cp/decl.c:2986 +#: attribs.c:998 cp/decl.c:1136 cp/decl.c:1971 cp/decl.c:1982 cp/decl.c:2584 +#: cp/decl.c:3006 #, gcc-internal-format msgid "previous declaration of %qD" msgstr "" @@ -18451,387 +18460,387 @@ msgstr "" msgid "%d exits recorded for loop %d (having %d exits)" msgstr "" -#: cfgrtl.c:2357 +#: cfgrtl.c:2361 #, gcc-internal-format, gfc-internal-format msgid "" "non-cold basic block %d reachable only by paths crossing the cold partition" msgstr "" -#: cfgrtl.c:2429 +#: cfgrtl.c:2433 #, gcc-internal-format, gfc-internal-format msgid "multiple hot/cold transitions found (bb %i)" msgstr "" -#: cfgrtl.c:2437 +#: cfgrtl.c:2441 #, gcc-internal-format msgid "partition found but function partition flag not set" msgstr "" -#: cfgrtl.c:2476 +#: cfgrtl.c:2480 #, gcc-internal-format msgid "verify_flow_info: REG_BR_PROB is set but cfg probability is not" msgstr "" -#: cfgrtl.c:2485 +#: cfgrtl.c:2489 #, gcc-internal-format, gfc-internal-format msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i" msgstr "" -#: cfgrtl.c:2507 +#: cfgrtl.c:2511 #, gcc-internal-format msgid "EDGE_CROSSING incorrectly set across same section" msgstr "" -#: cfgrtl.c:2512 +#: cfgrtl.c:2516 #, gcc-internal-format, gfc-internal-format msgid "fallthru edge crosses section boundary in bb %i" msgstr "" -#: cfgrtl.c:2518 +#: cfgrtl.c:2522 #, gcc-internal-format, gfc-internal-format msgid "EH edge crosses section boundary in bb %i" msgstr "" -#: cfgrtl.c:2524 +#: cfgrtl.c:2528 #, gcc-internal-format, gfc-internal-format msgid "No region crossing jump at section boundary in bb %i" msgstr "" -#: cfgrtl.c:2531 +#: cfgrtl.c:2535 #, gcc-internal-format msgid "EDGE_CROSSING missing across section boundary" msgstr "" -#: cfgrtl.c:2561 +#: cfgrtl.c:2565 #, gcc-internal-format, gfc-internal-format msgid "Region crossing jump across same section in bb %i" msgstr "" -#: cfgrtl.c:2568 +#: cfgrtl.c:2572 #, gcc-internal-format, gfc-internal-format msgid "missing REG_EH_REGION note at the end of bb %i" msgstr "" -#: cfgrtl.c:2573 +#: cfgrtl.c:2577 #, gcc-internal-format, gfc-internal-format msgid "too many exception handling edges in bb %i" msgstr "" -#: cfgrtl.c:2581 +#: cfgrtl.c:2585 #, gcc-internal-format, gfc-internal-format msgid "too many outgoing branch edges from bb %i" msgstr "" -#: cfgrtl.c:2586 +#: cfgrtl.c:2590 #, gcc-internal-format, gfc-internal-format msgid "fallthru edge after unconditional jump in bb %i" msgstr "" -#: cfgrtl.c:2591 +#: cfgrtl.c:2595 #, gcc-internal-format, gfc-internal-format msgid "wrong number of branch edges after unconditional jump in bb %i" msgstr "" -#: cfgrtl.c:2598 +#: cfgrtl.c:2602 #, gcc-internal-format, gfc-internal-format msgid "wrong amount of branch edges after conditional jump in bb %i" msgstr "" -#: cfgrtl.c:2604 +#: cfgrtl.c:2608 #, gcc-internal-format, gfc-internal-format msgid "abnormal call edges for non-call insn in bb %i" msgstr "" -#: cfgrtl.c:2609 +#: cfgrtl.c:2613 #, gcc-internal-format, gfc-internal-format msgid "sibcall edges for non-call insn in bb %i" msgstr "" -#: cfgrtl.c:2619 +#: cfgrtl.c:2623 #, gcc-internal-format, gfc-internal-format msgid "abnormal edges for no purpose in bb %i" msgstr "" -#: cfgrtl.c:2630 +#: cfgrtl.c:2634 #, gcc-internal-format, gfc-internal-format msgid "EH incoming edge mixed with non-EH incoming edges in bb %i" msgstr "" -#: cfgrtl.c:2671 cfgrtl.c:2681 +#: cfgrtl.c:2675 cfgrtl.c:2685 #, gcc-internal-format, gfc-internal-format msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d" msgstr "" -#: cfgrtl.c:2694 +#: cfgrtl.c:2698 #, gcc-internal-format, gfc-internal-format msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d" msgstr "" -#: cfgrtl.c:2704 +#: cfgrtl.c:2708 #, gcc-internal-format, gfc-internal-format msgid "in basic block %d:" msgstr "" -#: cfgrtl.c:2730 +#: cfgrtl.c:2734 #, gcc-internal-format, gfc-internal-format msgid "BB_RTL flag not set for block %d" msgstr "" -#: cfgrtl.c:2737 +#: cfgrtl.c:2741 #, gcc-internal-format, gfc-internal-format msgid "insn %d basic block pointer is %d, should be %d" msgstr "" -#: cfgrtl.c:2748 +#: cfgrtl.c:2752 #, gcc-internal-format, gfc-internal-format msgid "insn %d in header of bb %d has non-NULL basic block" msgstr "" -#: cfgrtl.c:2756 +#: cfgrtl.c:2760 #, gcc-internal-format, gfc-internal-format msgid "insn %d in footer of bb %d has non-NULL basic block" msgstr "" -#: cfgrtl.c:2829 cfgrtl.c:2877 +#: cfgrtl.c:2833 cfgrtl.c:2881 #, gcc-internal-format, gfc-internal-format msgid "insn %d outside of basic blocks has non-NULL bb field" msgstr "" -#: cfgrtl.c:2837 +#: cfgrtl.c:2841 #, gcc-internal-format, gfc-internal-format msgid "end insn %d for block %d not found in the insn stream" msgstr "" -#: cfgrtl.c:2850 +#: cfgrtl.c:2854 #, gcc-internal-format, gfc-internal-format msgid "insn %d is in multiple basic blocks (%d and %d)" msgstr "" -#: cfgrtl.c:2862 +#: cfgrtl.c:2866 #, gcc-internal-format, gfc-internal-format msgid "head insn %d for block %d not found in the insn stream" msgstr "" -#: cfgrtl.c:2910 +#: cfgrtl.c:2914 #, gcc-internal-format, gfc-internal-format msgid "missing barrier after block %i" msgstr "" -#: cfgrtl.c:2926 +#: cfgrtl.c:2930 #, gcc-internal-format, gfc-internal-format msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i" msgstr "" -#: cfgrtl.c:2935 +#: cfgrtl.c:2939 #, gcc-internal-format, gfc-internal-format msgid "verify_flow_info: Incorrect fallthru %i->%i" msgstr "" -#: cfgrtl.c:2971 +#: cfgrtl.c:2975 #, gcc-internal-format msgid "basic blocks not laid down consecutively" msgstr "" -#: cfgrtl.c:3010 +#: cfgrtl.c:3014 #, gcc-internal-format, gfc-internal-format msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)" msgstr "" -#: cgraph.c:3026 +#: cgraph.c:3032 #, gcc-internal-format msgid "caller edge count invalid" msgstr "" -#: cgraph.c:3110 +#: cgraph.c:3116 #, gcc-internal-format, gfc-internal-format msgid "aux field set for edge %s->%s" msgstr "" -#: cgraph.c:3117 +#: cgraph.c:3123 #, gcc-internal-format msgid "cgraph count invalid" msgstr "" -#: cgraph.c:3122 +#: cgraph.c:3128 #, gcc-internal-format msgid "inline clone in same comdat group list" msgstr "" -#: cgraph.c:3127 +#: cgraph.c:3133 #, gcc-internal-format msgid "local symbols must be defined" msgstr "" -#: cgraph.c:3132 +#: cgraph.c:3138 #, gcc-internal-format msgid "externally visible inline clone" msgstr "" -#: cgraph.c:3137 +#: cgraph.c:3143 #, gcc-internal-format msgid "inline clone with address taken" msgstr "" -#: cgraph.c:3142 +#: cgraph.c:3148 #, gcc-internal-format msgid "inline clone is forced to output" msgstr "" -#: cgraph.c:3149 +#: cgraph.c:3155 #, gcc-internal-format, gfc-internal-format msgid "aux field set for indirect edge from %s" msgstr "" -#: cgraph.c:3156 +#: cgraph.c:3162 #, gcc-internal-format, gfc-internal-format msgid "" "An indirect edge from %s is not marked as indirect or has associated " "indirect_info, the corresponding statement is: " msgstr "" -#: cgraph.c:3171 +#: cgraph.c:3177 #, gcc-internal-format, gfc-internal-format msgid "comdat-local function called by %s outside its comdat" msgstr "" -#: cgraph.c:3181 +#: cgraph.c:3187 #, gcc-internal-format msgid "inlined_to pointer is wrong" msgstr "" -#: cgraph.c:3186 +#: cgraph.c:3192 #, gcc-internal-format msgid "multiple inline callers" msgstr "" -#: cgraph.c:3193 +#: cgraph.c:3199 #, gcc-internal-format msgid "inlined_to pointer set for noninline callers" msgstr "" -#: cgraph.c:3213 +#: cgraph.c:3219 #, gcc-internal-format msgid "caller edge count does not match BB count" msgstr "" -#: cgraph.c:3235 +#: cgraph.c:3241 #, gcc-internal-format msgid "indirect call count does not match BB count" msgstr "" -#: cgraph.c:3246 +#: cgraph.c:3252 #, gcc-internal-format msgid "inlined_to pointer is set but no predecessors found" msgstr "" -#: cgraph.c:3251 +#: cgraph.c:3257 #, gcc-internal-format msgid "inlined_to pointer refers to itself" msgstr "" -#: cgraph.c:3262 +#: cgraph.c:3268 #, gcc-internal-format msgid "cgraph_node has wrong clone_of" msgstr "" -#: cgraph.c:3275 +#: cgraph.c:3281 #, gcc-internal-format msgid "cgraph_node has wrong clone list" msgstr "" -#: cgraph.c:3281 +#: cgraph.c:3287 #, gcc-internal-format msgid "cgraph_node is in clone list but it is not clone" msgstr "" -#: cgraph.c:3286 +#: cgraph.c:3292 #, gcc-internal-format msgid "cgraph_node has wrong prev_clone pointer" msgstr "" -#: cgraph.c:3291 +#: cgraph.c:3297 #, gcc-internal-format msgid "double linked list of clones corrupted" msgstr "" -#: cgraph.c:3303 +#: cgraph.c:3309 #, gcc-internal-format msgid "Alias has call edges" msgstr "" -#: cgraph.c:3309 +#: cgraph.c:3315 #, gcc-internal-format msgid "Alias has non-alias reference" msgstr "" -#: cgraph.c:3314 +#: cgraph.c:3320 #, gcc-internal-format msgid "Alias has more than one alias reference" msgstr "" -#: cgraph.c:3321 +#: cgraph.c:3327 #, gcc-internal-format msgid "Analyzed alias has no reference" msgstr "" -#: cgraph.c:3330 +#: cgraph.c:3336 #, gcc-internal-format msgid "No edge out of thunk node" msgstr "" -#: cgraph.c:3335 +#: cgraph.c:3341 #, gcc-internal-format msgid "More than one edge out of thunk node" msgstr "" -#: cgraph.c:3340 +#: cgraph.c:3346 #, gcc-internal-format msgid "Thunk is not supposed to have body" msgstr "" -#: cgraph.c:3376 +#: cgraph.c:3382 #, gcc-internal-format msgid "shared call_stmt:" msgstr "" -#: cgraph.c:3384 +#: cgraph.c:3390 #, gcc-internal-format msgid "edge points to wrong declaration:" msgstr "" -#: cgraph.c:3393 +#: cgraph.c:3399 #, gcc-internal-format msgid "" "an indirect edge with unknown callee corresponding to a call_stmt with a " "known declaration:" msgstr "" -#: cgraph.c:3403 +#: cgraph.c:3409 #, gcc-internal-format msgid "missing callgraph edge for call stmt:" msgstr "" -#: cgraph.c:3413 +#: cgraph.c:3419 #, gcc-internal-format msgid "reference to dead statement" msgstr "" -#: cgraph.c:3426 +#: cgraph.c:3432 #, gcc-internal-format, gfc-internal-format msgid "edge %s->%s has no corresponding call_stmt" msgstr "" -#: cgraph.c:3438 +#: cgraph.c:3444 #, gcc-internal-format, gfc-internal-format msgid "an indirect edge from %s has no corresponding call_stmt" msgstr "" -#: cgraph.c:3449 +#: cgraph.c:3455 #, gcc-internal-format msgid "verify_cgraph_node failed" msgstr "" -#: cgraph.c:3556 varpool.c:304 +#: cgraph.c:3562 varpool.c:304 #, gcc-internal-format, gfc-internal-format msgid "%s: section %s is missing" msgstr "" @@ -18867,12 +18876,12 @@ msgid "% attribute ignored because variable is initialized" msgstr "" #. include_self= -#: cgraphunit.c:976 c/c-decl.c:11490 +#: cgraphunit.c:976 c/c-decl.c:11507 #, gcc-internal-format msgid "%q+F used but never defined" msgstr "" -#: cgraphunit.c:978 c/c-decl.c:11500 +#: cgraphunit.c:978 c/c-decl.c:11517 #, gcc-internal-format msgid "%q+F declared % but never defined" msgstr "" @@ -19359,7 +19368,7 @@ msgstr "" msgid "internal consistency failure" msgstr "" -#: emit-rtl.c:4039 +#: emit-rtl.c:4040 #, gcc-internal-format msgid "ICE: emit_insn used where emit_jump_insn needed:\n" msgstr "" @@ -19471,12 +19480,12 @@ msgstr "" msgid "the frame size of %wu bytes is larger than %wu bytes" msgstr "" -#: final.c:4810 toplev.c:1493 tree-cfgcleanup.c:1488 +#: final.c:4810 toplev.c:1493 tree-cfgcleanup.c:1497 #, gcc-internal-format msgid "could not open final insn dump file %qs: %m" msgstr "" -#: final.c:4879 tree-cfgcleanup.c:1505 +#: final.c:4879 tree-cfgcleanup.c:1514 #, gcc-internal-format msgid "could not close final insn dump file %qs: %m" msgstr "" @@ -19491,7 +19500,7 @@ msgstr "" msgid "comparison is always %d due to width of bit-field" msgstr "" -#: fold-const.c:5557 tree-ssa-reassoc.c:2379 tree-ssa-reassoc.c:3259 +#: fold-const.c:5557 tree-ssa-reassoc.c:2380 tree-ssa-reassoc.c:3260 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying range test" msgstr "" @@ -20135,13 +20144,13 @@ msgstr "" msgid "null pointer dereference" msgstr "" -#: gimple-ssa-isolate-paths.c:431 gimple-ssa-isolate-paths.c:556 tree.c:13222 -#: tree.c:13259 c/c-typeck.c:2915 c/c-typeck.c:3001 c/c-typeck.c:10545 +#: gimple-ssa-isolate-paths.c:431 gimple-ssa-isolate-paths.c:556 tree.c:13241 +#: tree.c:13278 c/c-typeck.c:2915 c/c-typeck.c:3001 c/c-typeck.c:10545 #: c/c-typeck.c:10562 c/gimple-parser.c:2041 c/gimple-parser.c:2049 -#: cp/call.c:6746 cp/call.c:8480 cp/constexpr.c:839 cp/constexpr.c:2464 -#: cp/cvt.c:1038 cp/cvt.c:1067 cp/decl.c:7437 cp/decl2.c:5422 cp/pt.c:8440 -#: cp/semantics.c:1857 cp/semantics.c:4167 cp/typeck.c:1702 cp/typeck.c:1899 -#: cp/typeck.c:3949 cp/typeck.c:9306 +#: cp/call.c:6760 cp/call.c:8495 cp/constexpr.c:839 cp/constexpr.c:2464 +#: cp/cvt.c:1038 cp/cvt.c:1067 cp/decl.c:7453 cp/decl2.c:5422 cp/pt.c:8442 +#: cp/semantics.c:1857 cp/semantics.c:4159 cp/typeck.c:1719 cp/typeck.c:1916 +#: cp/typeck.c:3967 cp/typeck.c:9324 #, gcc-internal-format msgid "declared here" msgstr "" @@ -20476,92 +20485,86 @@ msgstr "" msgid "using the range [%E, %E] for directive argument" msgstr "" -#: gimple-ssa-sprintf.c:3021 +#: gimple-ssa-sprintf.c:3020 #, gcc-internal-format msgid "%qE output %wu byte into a destination of size %wu" -msgstr "" - -#: gimple-ssa-sprintf.c:3022 -#, gcc-internal-format -msgid "%qE output %wu bytes into a destination of size %wu" -msgstr "" +msgid_plural "%qE output %wu bytes into a destination of size %wu" +msgstr[0] "" +msgstr[1] "" -#: gimple-ssa-sprintf.c:3027 +#: gimple-ssa-sprintf.c:3025 #, gcc-internal-format msgid "%qE output between %wu and %wu bytes into a destination of size %wu" msgstr "" -#: gimple-ssa-sprintf.c:3032 +#: gimple-ssa-sprintf.c:3030 #, gcc-internal-format msgid "" "%qE output %wu or more bytes (assuming %wu) into a destination of size %wu" msgstr "" -#: gimple-ssa-sprintf.c:3037 +#: gimple-ssa-sprintf.c:3035 #, gcc-internal-format msgid "%qE output %wu or more bytes into a destination of size %wu" msgstr "" -#: gimple-ssa-sprintf.c:3049 +#: gimple-ssa-sprintf.c:3046 #, gcc-internal-format msgid "%qE output %wu byte" -msgstr "" +msgid_plural "%qE output %wu bytes" +msgstr[0] "" +msgstr[1] "" #: gimple-ssa-sprintf.c:3050 #, gcc-internal-format -msgid "%qE output %wu bytes" -msgstr "" - -#: gimple-ssa-sprintf.c:3054 -#, gcc-internal-format msgid "%qE output between %wu and %wu bytes" msgstr "" -#: gimple-ssa-sprintf.c:3058 +#: gimple-ssa-sprintf.c:3054 #, gcc-internal-format msgid "%qE output %wu or more bytes (assuming %wu)" msgstr "" -#: gimple-ssa-sprintf.c:3062 +#: gimple-ssa-sprintf.c:3058 #, gcc-internal-format msgid "%qE output %wu or more bytes" msgstr "" -#: gimple-ssa-sprintf.c:3437 +#: gimple-ssa-sprintf.c:3433 #, gcc-internal-format msgid "%<%.*s%> directive width out of range" msgstr "" -#: gimple-ssa-sprintf.c:3471 +#: gimple-ssa-sprintf.c:3467 #, gcc-internal-format msgid "%<%.*s%> directive precision out of range" msgstr "" -#: gimple-ssa-sprintf.c:4100 +#: gimple-ssa-sprintf.c:4096 #, gcc-internal-format msgid "specified bound %wu exceeds maximum object size %wu" msgstr "" -#: gimple-ssa-sprintf.c:4111 +#: gimple-ssa-sprintf.c:4107 #, gcc-internal-format msgid "specified bound %wu exceeds %" msgstr "" -#: gimple-ssa-sprintf.c:4132 +#: gimple-ssa-sprintf.c:4128 #, gcc-internal-format msgid "specified bound range [%wu, %wu] exceeds %" msgstr "" -#: gimple-ssa-sprintf.c:4183 +#: gimple-ssa-sprintf.c:4179 msgid "%Gnull destination pointer" msgstr "" -#: gimple-ssa-sprintf.c:4201 +#: gimple-ssa-sprintf.c:4197 #, gcc-internal-format msgid "specified bound %wu exceeds the size %wu of the destination object" msgstr "" -#: gimple-ssa-sprintf.c:4213 +#: gimple-ssa-sprintf.c:4209 msgid "%Gnull format string" msgstr "" @@ -20836,9 +20839,9 @@ msgstr "" msgid "%G%qD offset %s is out of the bounds of object %qD with type %qT" msgstr "" -#: gimple-ssa-warn-restrict.c:1767 c/c-decl.c:3771 c/c-decl.c:4044 -#: c/c-typeck.c:8688 cp/class.c:1343 cp/class.c:3104 cp/decl.c:3959 -#: cp/decl.c:10966 cp/decl.c:11402 cp/decl.c:11411 cp/friend.c:386 +#: gimple-ssa-warn-restrict.c:1767 c/c-decl.c:3788 c/c-decl.c:4061 +#: c/c-typeck.c:8688 cp/class.c:1343 cp/class.c:3104 cp/decl.c:3972 +#: cp/decl.c:10982 cp/decl.c:11419 cp/decl.c:11428 cp/friend.c:386 #: cp/friend.c:396 cp/parser.c:3295 cp/parser.c:3427 cp/parser.c:3478 #: cp/parser.c:6453 cp/parser.c:21874 #, gcc-internal-format @@ -21164,22 +21167,22 @@ msgid "" "%> clauses with % modifier on the same construct" msgstr "" -#: gimplify.c:13435 +#: gimplify.c:13436 #, gcc-internal-format msgid "gimplification failed" msgstr "" -#: gimplify.c:13956 +#: gimplify.c:13957 #, gcc-internal-format msgid "%qT is promoted to %qT when passed through %<...%>" msgstr "" -#: gimplify.c:13961 +#: gimplify.c:13962 #, gcc-internal-format msgid "(so you should pass %qT not %qT to %)" msgstr "" -#: gimplify.c:13968 +#: gimplify.c:13969 #, gcc-internal-format msgid "if this code is reached, the program will abort" msgstr "" @@ -21350,8 +21353,8 @@ msgstr "" msgid "type %qT violates the C++ One Definition Rule" msgstr "" -#: ipa-devirt.c:1027 ipa-devirt.c:1042 ipa-devirt.c:1305 ipa-devirt.c:1381 -#: ipa-devirt.c:1420 ipa-devirt.c:1438 +#: ipa-devirt.c:1027 ipa-devirt.c:1042 ipa-devirt.c:1323 ipa-devirt.c:1399 +#: ipa-devirt.c:1438 ipa-devirt.c:1456 #, gcc-internal-format msgid "a different type is defined in another translation unit" msgstr "" @@ -21430,123 +21433,123 @@ msgstr "" msgid "type %qT should match type %qT" msgstr "" -#: ipa-devirt.c:1331 +#: ipa-devirt.c:1349 #, gcc-internal-format msgid "" "an enum with different value name is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1338 +#: ipa-devirt.c:1356 #, gcc-internal-format msgid "an enum with different values is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1346 +#: ipa-devirt.c:1364 #, gcc-internal-format msgid "" "an enum with mismatching number of values is defined in another translation " "unit" msgstr "" -#: ipa-devirt.c:1364 +#: ipa-devirt.c:1382 #, gcc-internal-format msgid "a type with different precision is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1371 +#: ipa-devirt.c:1389 #, gcc-internal-format msgid "a type with different signedness is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1396 +#: ipa-devirt.c:1414 #, gcc-internal-format msgid "" "it is defined as a pointer in different address space in another translation " "unit" msgstr "" -#: ipa-devirt.c:1405 +#: ipa-devirt.c:1423 #, gcc-internal-format msgid "" "it is defined as a pointer to different type in another translation unit" msgstr "" -#: ipa-devirt.c:1465 +#: ipa-devirt.c:1483 #, gcc-internal-format msgid "an array of different size is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1480 +#: ipa-devirt.c:1498 #, gcc-internal-format msgid "has different return value in another translation unit" msgstr "" -#: ipa-devirt.c:1503 ipa-devirt.c:1515 +#: ipa-devirt.c:1521 ipa-devirt.c:1533 #, gcc-internal-format msgid "has different parameters in another translation unit" msgstr "" -#: ipa-devirt.c:1538 +#: ipa-devirt.c:1556 #, gcc-internal-format msgid "a type defined in another translation unit is not polymorphic" msgstr "" -#: ipa-devirt.c:1542 +#: ipa-devirt.c:1560 #, gcc-internal-format msgid "a type defined in another translation unit is polymorphic" msgstr "" -#: ipa-devirt.c:1560 ipa-devirt.c:1624 +#: ipa-devirt.c:1578 ipa-devirt.c:1642 #, gcc-internal-format msgid "" "a type with different virtual table pointers is defined in another " "translation unit" msgstr "" -#: ipa-devirt.c:1567 ipa-devirt.c:1629 +#: ipa-devirt.c:1585 ipa-devirt.c:1647 #, gcc-internal-format msgid "a type with different bases is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1575 +#: ipa-devirt.c:1593 #, gcc-internal-format msgid "a field with different name is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1589 +#: ipa-devirt.c:1607 #, gcc-internal-format msgid "" "a field of same name but different type is defined in another translation " "unit" msgstr "" -#: ipa-devirt.c:1602 +#: ipa-devirt.c:1620 #, gcc-internal-format msgid "fields have different layout in another translation unit" msgstr "" -#: ipa-devirt.c:1609 +#: ipa-devirt.c:1627 #, gcc-internal-format msgid "one field is a bitfield while the other is not" msgstr "" -#: ipa-devirt.c:1633 +#: ipa-devirt.c:1651 #, gcc-internal-format msgid "" "a type with different number of fields is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1655 +#: ipa-devirt.c:1673 #, gcc-internal-format msgid "a type with different size is defined in another translation unit" msgstr "" -#: ipa-devirt.c:1780 +#: ipa-devirt.c:1798 #, gcc-internal-format msgid "the extra base is defined here" msgstr "" -#: ipa-devirt.c:3955 +#: ipa-devirt.c:3973 #, gcc-internal-format msgid "Declaring type %qD final would enable devirtualization of %i call" msgid_plural "" @@ -21554,7 +21557,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ipa-devirt.c:3964 +#: ipa-devirt.c:3982 #, gcc-internal-format msgid "" "Declaring type %qD final would enable devirtualization of %i call executed " @@ -21565,7 +21568,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ipa-devirt.c:3994 +#: ipa-devirt.c:4012 #, gcc-internal-format msgid "" "Declaring virtual destructor of %qD final would enable devirtualization of " @@ -21576,7 +21579,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ipa-devirt.c:4002 +#: ipa-devirt.c:4020 #, gcc-internal-format msgid "Declaring method %qD final would enable devirtualization of %i call" msgid_plural "" @@ -21584,7 +21587,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ipa-devirt.c:4010 +#: ipa-devirt.c:4028 #, gcc-internal-format msgid "" "Declaring virtual destructor of %qD final would enable devirtualization of " @@ -21595,7 +21598,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ipa-devirt.c:4021 +#: ipa-devirt.c:4039 #, gcc-internal-format msgid "" "Declaring method %qD final would enable devirtualization of %i call executed " @@ -22297,12 +22300,12 @@ msgstr "" msgid "unrecognized argument in option %qs" msgstr "" -#: opts-common.c:1291 config/i386/i386.c:3382 +#: opts-common.c:1291 config/i386/i386.c:3383 #, gcc-internal-format msgid "valid arguments to %qs are: %s; did you mean %qs?" msgstr "" -#: opts-common.c:1294 config/i386/i386.c:3385 +#: opts-common.c:1294 config/i386/i386.c:3386 #, gcc-internal-format msgid "valid arguments to %qs are: %s" msgstr "" @@ -23070,7 +23073,7 @@ msgstr "" msgid "can%'t use %qs as a fixed register" msgstr "" -#: reginfo.c:762 config/arc/arc.c:1047 config/arc/arc.c:1089 +#: reginfo.c:762 config/arc/arc.c:1046 config/arc/arc.c:1088 #: config/ia64/ia64.c:6039 config/ia64/ia64.c:6046 config/pa/pa.c:468 #: config/pa/pa.c:475 config/sh/sh.c:8293 config/sh/sh.c:8300 #: config/spu/spu.c:4931 config/spu/spu.c:4938 @@ -23143,58 +23146,58 @@ msgstr "" msgid "output operand is constant in %" msgstr "" -#: rtl.c:854 +#: rtl.c:859 #, gcc-internal-format, gfc-internal-format msgid "RTL check: access of elt %d of '%s' with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:864 +#: rtl.c:869 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d" msgstr "" -#: rtl.c:874 +#: rtl.c:879 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at " "%s:%d" msgstr "" -#: rtl.c:883 +#: rtl.c:888 #, gcc-internal-format, gfc-internal-format msgid "RTL check: expected code '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:893 +#: rtl.c:898 #, gcc-internal-format, gfc-internal-format msgid "RTL check: expected code '%s' or '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:904 +#: rtl.c:909 #, gcc-internal-format, gfc-internal-format msgid "RTL check: expected code '%s', '%s' or '%s', have '%s' in %s, at %s:%d" msgstr "" -#: rtl.c:931 +#: rtl.c:936 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: attempt to treat non-block symbol as a block symbol in %s, at %s:" "%d" msgstr "" -#: rtl.c:941 +#: rtl.c:946 #, gcc-internal-format, gfc-internal-format msgid "" "RTL check: access of hwi elt %d of vector with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:951 +#: rtl.c:956 #, gcc-internal-format, gfc-internal-format msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d" msgstr "" -#: rtl.c:962 +#: rtl.c:967 #, gcc-internal-format, gfc-internal-format msgid "RTL flag check: %s used with unexpected rtx code '%s' in %s, at %s:%d" msgstr "" @@ -23876,7 +23879,7 @@ msgstr "" msgid "DECL_GIMPLE_REG_P set on a variable with address taken" msgstr "" -#: tree-cfg.c:2989 tree-ssa.c:987 +#: tree-cfg.c:2989 tree-ssa.c:992 #, gcc-internal-format msgid "address taken, but ADDRESSABLE bit not set" msgstr "" @@ -24782,7 +24785,7 @@ msgstr "" msgid "cannot update SSA form" msgstr "" -#: tree-into-ssa.c:3410 tree-outof-ssa.c:866 tree-ssa-coalesce.c:1002 +#: tree-into-ssa.c:3410 tree-outof-ssa.c:868 tree-ssa-coalesce.c:1002 #, gcc-internal-format msgid "SSA corruption" msgstr "" @@ -24807,16 +24810,16 @@ msgstr "" msgid "target does not support atomic profile update, single mode is selected" msgstr "" -#: tree-ssa-ccp.c:3456 +#: tree-ssa-ccp.c:3459 msgid "%Gargument %u null where non-null expected" msgstr "" -#: tree-ssa-ccp.c:3461 +#: tree-ssa-ccp.c:3464 #, gcc-internal-format msgid "in a call to built-in function %qD" msgstr "" -#: tree-ssa-ccp.c:3465 +#: tree-ssa-ccp.c:3468 #, gcc-internal-format msgid "in a call to function %qD declared here" msgstr "" @@ -24933,7 +24936,7 @@ msgstr "" msgid "%qD is used uninitialized in this function" msgstr "" -#: tree-ssa-uninit.c:265 tree-ssa-uninit.c:2615 +#: tree-ssa-uninit.c:265 tree-ssa-uninit.c:2620 #, gcc-internal-format msgid "%qD may be used uninitialized in this function" msgstr "" @@ -24948,142 +24951,142 @@ msgstr "" msgid "%qE may be used uninitialized in this function" msgstr "" -#: tree-ssa.c:647 +#: tree-ssa.c:652 #, gcc-internal-format, gfc-internal-format msgid "multiple virtual PHI nodes in BB %d" msgstr "" -#: tree-ssa.c:661 tree-ssa.c:690 +#: tree-ssa.c:666 tree-ssa.c:695 #, gcc-internal-format msgid "virtual definition is not an SSA name" msgstr "" -#: tree-ssa.c:677 +#: tree-ssa.c:682 #, gcc-internal-format msgid "stmt with wrong VUSE" msgstr "" -#: tree-ssa.c:707 +#: tree-ssa.c:712 #, gcc-internal-format, gfc-internal-format msgid "PHI node with wrong VUSE on edge from BB %d" msgstr "" -#: tree-ssa.c:733 +#: tree-ssa.c:738 #, gcc-internal-format msgid "expected an SSA_NAME object" msgstr "" -#: tree-ssa.c:739 +#: tree-ssa.c:744 #, gcc-internal-format msgid "found an SSA_NAME that had been released into the free pool" msgstr "" -#: tree-ssa.c:746 +#: tree-ssa.c:751 #, gcc-internal-format msgid "type mismatch between an SSA_NAME and its symbol" msgstr "" -#: tree-ssa.c:752 +#: tree-ssa.c:757 #, gcc-internal-format msgid "found a virtual definition for a GIMPLE register" msgstr "" -#: tree-ssa.c:758 +#: tree-ssa.c:763 #, gcc-internal-format msgid "virtual SSA name for non-VOP decl" msgstr "" -#: tree-ssa.c:764 +#: tree-ssa.c:769 #, gcc-internal-format msgid "found a real definition for a non-register" msgstr "" -#: tree-ssa.c:771 +#: tree-ssa.c:776 #, gcc-internal-format msgid "found a default name with a non-empty defining statement" msgstr "" -#: tree-ssa.c:801 +#: tree-ssa.c:806 #, gcc-internal-format msgid "RESULT_DECL should be read only when DECL_BY_REFERENCE is set" msgstr "" -#: tree-ssa.c:807 +#: tree-ssa.c:812 #, gcc-internal-format, gfc-internal-format msgid "SSA_NAME created in two different blocks %i and %i" msgstr "" -#: tree-ssa.c:816 tree-ssa.c:1150 +#: tree-ssa.c:821 tree-ssa.c:1155 #, gcc-internal-format msgid "SSA_NAME_DEF_STMT is wrong" msgstr "" -#: tree-ssa.c:868 +#: tree-ssa.c:873 #, gcc-internal-format msgid "missing definition" msgstr "" -#: tree-ssa.c:874 +#: tree-ssa.c:879 #, gcc-internal-format, gfc-internal-format msgid "definition in block %i does not dominate use in block %i" msgstr "" -#: tree-ssa.c:882 +#: tree-ssa.c:887 #, gcc-internal-format, gfc-internal-format msgid "definition in block %i follows the use" msgstr "" -#: tree-ssa.c:889 +#: tree-ssa.c:894 #, gcc-internal-format msgid "SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set" msgstr "" -#: tree-ssa.c:897 +#: tree-ssa.c:902 #, gcc-internal-format msgid "no immediate_use list" msgstr "" -#: tree-ssa.c:909 +#: tree-ssa.c:914 #, gcc-internal-format msgid "wrong immediate use list" msgstr "" -#: tree-ssa.c:943 +#: tree-ssa.c:948 #, gcc-internal-format msgid "incoming edge count does not match number of PHI arguments" msgstr "" -#: tree-ssa.c:957 +#: tree-ssa.c:962 #, gcc-internal-format, gfc-internal-format msgid "PHI argument is missing for edge %d->%d" msgstr "" -#: tree-ssa.c:966 +#: tree-ssa.c:971 #, gcc-internal-format msgid "PHI argument is not SSA_NAME, or invariant" msgstr "" -#: tree-ssa.c:994 +#: tree-ssa.c:999 #, gcc-internal-format, gfc-internal-format msgid "wrong edge %d->%d for PHI argument" msgstr "" -#: tree-ssa.c:1069 +#: tree-ssa.c:1074 #, gcc-internal-format msgid "shared SSA name info" msgstr "" -#: tree-ssa.c:1096 +#: tree-ssa.c:1101 #, gcc-internal-format, gfc-internal-format msgid "AUX pointer initialized for edge %d->%d" msgstr "" -#: tree-ssa.c:1122 +#: tree-ssa.c:1127 #, gcc-internal-format msgid "stmt (%p) marked modified after optimization pass: " msgstr "" -#: tree-ssa.c:1188 +#: tree-ssa.c:1193 #, gcc-internal-format msgid "verify_ssa failed" msgstr "" @@ -25183,97 +25186,97 @@ msgstr "" msgid "side-effects element in no-side-effects CONSTRUCTOR" msgstr "" -#: tree.c:8361 +#: tree.c:8372 #, gcc-internal-format msgid "arrays of functions are not meaningful" msgstr "" -#: tree.c:8530 +#: tree.c:8541 #, gcc-internal-format msgid "function return type cannot be function" msgstr "" -#: tree.c:9881 tree.c:9966 tree.c:10027 +#: tree.c:9900 tree.c:9985 tree.c:10046 #, gcc-internal-format, gfc-internal-format msgid "tree check: %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:9918 +#: tree.c:9937 #, gcc-internal-format, gfc-internal-format msgid "tree check: expected none of %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:9931 +#: tree.c:9950 #, gcc-internal-format msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d" msgstr "" -#: tree.c:9980 +#: tree.c:9999 #, gcc-internal-format msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d" msgstr "" -#: tree.c:9993 +#: tree.c:10012 #, gcc-internal-format, gfc-internal-format msgid "tree check: expected omp_clause %s, have %s in %s, at %s:%d" msgstr "" -#: tree.c:10053 +#: tree.c:10072 #, gcc-internal-format msgid "" "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:" "%d" msgstr "" -#: tree.c:10067 +#: tree.c:10086 #, gcc-internal-format, gfc-internal-format msgid "" "tree check: accessed elt %d of tree_int_cst with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:10079 +#: tree.c:10098 #, gcc-internal-format, gfc-internal-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "" -#: tree.c:10092 +#: tree.c:10111 #, gcc-internal-format, gfc-internal-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "" -#: tree.c:10105 +#: tree.c:10124 #, gcc-internal-format, gfc-internal-format msgid "" "tree check: accessed operand %d of omp_clause %s with %d operands in %s, at " "%s:%d" msgstr "" -#: tree.c:13217 +#: tree.c:13236 #, gcc-internal-format msgid "%qD is deprecated: %s" msgstr "" -#: tree.c:13220 +#: tree.c:13239 #, gcc-internal-format msgid "%qD is deprecated" msgstr "" -#: tree.c:13243 +#: tree.c:13262 #, gcc-internal-format msgid "%qE is deprecated: %s" msgstr "" -#: tree.c:13246 +#: tree.c:13265 #, gcc-internal-format msgid "%qE is deprecated" msgstr "" -#: tree.c:13252 +#: tree.c:13271 #, gcc-internal-format, gfc-internal-format msgid "type is deprecated: %s" msgstr "" -#: tree.c:13255 +#: tree.c:13274 #, gcc-internal-format msgid "type is deprecated" msgstr "" @@ -25298,242 +25301,242 @@ msgstr "" #. - vector types may differ by TYPE_VECTOR_OPAQUE #. #. Convenience macro for matching individual fields. -#: tree.c:13796 +#: tree.c:13815 #, gcc-internal-format, gfc-internal-format msgid "type variant differs by %s" msgstr "" -#: tree.c:13837 +#: tree.c:13856 #, gcc-internal-format msgid "type variant has different TYPE_SIZE_UNIT" msgstr "" -#: tree.c:13839 +#: tree.c:13858 #, gcc-internal-format msgid "type variant%'s TYPE_SIZE_UNIT" msgstr "" -#: tree.c:13841 +#: tree.c:13860 #, gcc-internal-format msgid "type%'s TYPE_SIZE_UNIT" msgstr "" -#: tree.c:13861 +#: tree.c:13880 #, gcc-internal-format msgid "type variant with TYPE_ALIAS_SET_KNOWN_P" msgstr "" -#: tree.c:13874 +#: tree.c:13893 #, gcc-internal-format msgid "type variant has different TYPE_VFIELD" msgstr "" -#: tree.c:13910 +#: tree.c:13929 #, gcc-internal-format msgid "type variant has different TYPE_BINFO" msgstr "" -#: tree.c:13912 +#: tree.c:13931 #, gcc-internal-format msgid "type variant%'s TYPE_BINFO" msgstr "" -#: tree.c:13914 +#: tree.c:13933 #, gcc-internal-format msgid "type%'s TYPE_BINFO" msgstr "" -#: tree.c:13953 +#: tree.c:13972 #, gcc-internal-format msgid "type variant has different TYPE_FIELDS" msgstr "" -#: tree.c:13955 +#: tree.c:13974 #, gcc-internal-format msgid "first mismatch is field" msgstr "" -#: tree.c:13957 +#: tree.c:13976 #, gcc-internal-format msgid "and field" msgstr "" -#: tree.c:13974 +#: tree.c:13993 #, gcc-internal-format msgid "type variant has different TREE_TYPE" msgstr "" -#: tree.c:13976 tree.c:13987 +#: tree.c:13995 tree.c:14006 #, gcc-internal-format msgid "type variant%'s TREE_TYPE" msgstr "" -#: tree.c:13978 tree.c:13989 +#: tree.c:13997 tree.c:14008 #, gcc-internal-format msgid "type%'s TREE_TYPE" msgstr "" -#: tree.c:13985 +#: tree.c:14004 #, gcc-internal-format msgid "type is not compatible with its variant" msgstr "" -#: tree.c:14288 +#: tree.c:14307 #, gcc-internal-format msgid "Main variant is not defined" msgstr "" -#: tree.c:14293 +#: tree.c:14312 #, gcc-internal-format msgid "TYPE_MAIN_VARIANT has different TYPE_MAIN_VARIANT" msgstr "" -#: tree.c:14305 +#: tree.c:14324 #, gcc-internal-format msgid "TYPE_CANONICAL has different TYPE_CANONICAL" msgstr "" -#: tree.c:14324 +#: tree.c:14343 #, gcc-internal-format msgid "TYPE_CANONICAL is not compatible" msgstr "" -#: tree.c:14332 +#: tree.c:14351 #, gcc-internal-format msgid "TYPE_MODE of TYPE_CANONICAL is not compatible" msgstr "" -#: tree.c:14338 +#: tree.c:14357 #, gcc-internal-format msgid "TYPE_CANONICAL of main variant is not main variant" msgstr "" -#: tree.c:14354 +#: tree.c:14373 #, gcc-internal-format msgid "TYPE_VFIELD is not FIELD_DECL nor TREE_LIST" msgstr "" -#: tree.c:14364 +#: tree.c:14383 #, gcc-internal-format msgid "TYPE_NEXT_PTR_TO is not POINTER_TYPE" msgstr "" -#: tree.c:14374 +#: tree.c:14393 #, gcc-internal-format msgid "TYPE_NEXT_REF_TO is not REFERENCE_TYPE" msgstr "" -#: tree.c:14395 +#: tree.c:14414 #, gcc-internal-format msgid "TYPE_BINFO is not TREE_BINFO" msgstr "" -#: tree.c:14401 +#: tree.c:14420 #, gcc-internal-format msgid "TYPE_BINFO type is not TYPE_MAIN_VARIANT" msgstr "" -#: tree.c:14412 +#: tree.c:14431 #, gcc-internal-format msgid "TYPE_METHOD_BASETYPE is not record nor union" msgstr "" -#: tree.c:14423 +#: tree.c:14442 #, gcc-internal-format msgid "TYPE_OFFSET_BASETYPE is not record nor union" msgstr "" -#: tree.c:14441 +#: tree.c:14460 #, gcc-internal-format msgid "TYPE_ARRAY_MAX_SIZE not INTEGER_CST" msgstr "" -#: tree.c:14448 +#: tree.c:14467 #, gcc-internal-format msgid "TYPE_MAX_VALUE_RAW non-NULL" msgstr "" -#: tree.c:14455 +#: tree.c:14474 #, gcc-internal-format msgid "TYPE_LANG_SLOT_1 (binfo) field is non-NULL" msgstr "" -#: tree.c:14471 +#: tree.c:14490 #, gcc-internal-format msgid "Enum value is not CONST_DECL or INTEGER_CST" msgstr "" -#: tree.c:14479 +#: tree.c:14498 #, gcc-internal-format msgid "Enum value type is not INTEGER_TYPE nor convertible to the enum" msgstr "" -#: tree.c:14486 +#: tree.c:14505 #, gcc-internal-format msgid "Enum value name is not IDENTIFIER_NODE" msgstr "" -#: tree.c:14496 +#: tree.c:14515 #, gcc-internal-format msgid "Array TYPE_DOMAIN is not integer type" msgstr "" -#: tree.c:14505 +#: tree.c:14524 #, gcc-internal-format msgid "TYPE_FIELDS defined in incomplete type" msgstr "" -#: tree.c:14527 +#: tree.c:14546 #, gcc-internal-format msgid "Wrong tree in TYPE_FIELDS list" msgstr "" -#: tree.c:14542 +#: tree.c:14561 #, gcc-internal-format msgid "TYPE_CACHED_VALUES_P is %i while TYPE_CACHED_VALUES is %p" msgstr "" -#: tree.c:14548 +#: tree.c:14567 #, gcc-internal-format msgid "TYPE_CACHED_VALUES is not TREE_VEC" msgstr "" -#: tree.c:14561 +#: tree.c:14580 #, gcc-internal-format msgid "wrong TYPE_CACHED_VALUES entry" msgstr "" -#: tree.c:14574 +#: tree.c:14593 #, gcc-internal-format msgid "TREE_PURPOSE is non-NULL in TYPE_ARG_TYPES list" msgstr "" -#: tree.c:14580 +#: tree.c:14599 #, gcc-internal-format msgid "Wrong entry in TYPE_ARG_TYPES list" msgstr "" -#: tree.c:14587 +#: tree.c:14606 #, gcc-internal-format msgid "TYPE_VALUES_RAW field is non-NULL" msgstr "" -#: tree.c:14599 +#: tree.c:14618 #, gcc-internal-format msgid "TYPE_CACHED_VALUES_P is set while it should not" msgstr "" -#: tree.c:14605 +#: tree.c:14624 #, gcc-internal-format msgid "TYPE_STRING_FLAG is set on wrong type code" msgstr "" -#: tree.c:14615 +#: tree.c:14634 #, gcc-internal-format msgid "TYPE_METHOD_BASETYPE is not main variant" msgstr "" -#: tree.c:14622 +#: tree.c:14641 #, gcc-internal-format msgid "verify_type failed" msgstr "" @@ -25668,7 +25671,7 @@ msgid "" "requested alignment for %q+D is greater than implemented alignment of %wu" msgstr "" -#: varasm.c:2217 c/c-decl.c:5202 c/c-parser.c:1544 +#: varasm.c:2217 c/c-decl.c:5219 c/c-parser.c:1544 #, gcc-internal-format msgid "storage size of %q+D isn%'t known" msgstr "" @@ -26477,611 +26480,591 @@ msgstr "" msgid "%qs attribute not supported in %<__builtin_has_attribute%>" msgstr "" -#: c-family/c-common.c:738 +#: c-family/c-common.c:736 #, gcc-internal-format msgid "%qD is not defined outside of function scope" msgstr "" -#: c-family/c-common.c:783 +#: c-family/c-common.c:781 #, gcc-internal-format msgid "size of string literal is too large" msgstr "" -#: c-family/c-common.c:806 +#: c-family/c-common.c:804 #, gcc-internal-format msgid "" "string length %qd is greater than the length %qd ISO C%d compilers are " "required to support" msgstr "" -#: c-family/c-common.c:979 +#: c-family/c-common.c:977 #, gcc-internal-format msgid "" "use %<-flax-vector-conversions%> to permit conversions between vectors with " "differing element types or numbers of subparts" msgstr "" -#: c-family/c-common.c:1019 +#: c-family/c-common.c:1017 #, gcc-internal-format msgid "%<__builtin_shuffle%> last argument must be an integer vector" msgstr "" -#: c-family/c-common.c:1028 +#: c-family/c-common.c:1026 #, gcc-internal-format msgid "%<__builtin_shuffle%> arguments must be vectors" msgstr "" -#: c-family/c-common.c:1035 +#: c-family/c-common.c:1033 #, gcc-internal-format msgid "%<__builtin_shuffle%> argument vectors must be of the same type" msgstr "" -#: c-family/c-common.c:1046 +#: c-family/c-common.c:1044 #, gcc-internal-format msgid "" "%<__builtin_shuffle%> number of elements of the argument vector(s) and the " "mask vector should be the same" msgstr "" -#: c-family/c-common.c:1056 +#: c-family/c-common.c:1054 #, gcc-internal-format msgid "" "%<__builtin_shuffle%> argument vector(s) inner type must have the same size " "as inner type of the mask" msgstr "" -#: c-family/c-common.c:1104 +#: c-family/c-common.c:1102 #, gcc-internal-format msgid "" "%<__builtin_convertvector%> first argument must be an integer or floating " "vector" msgstr "" -#: c-family/c-common.c:1112 +#: c-family/c-common.c:1110 #, gcc-internal-format msgid "" "%<__builtin_convertvector%> second argument must be an integer or floating " "vector type" msgstr "" -#: c-family/c-common.c:1121 +#: c-family/c-common.c:1119 #, gcc-internal-format msgid "" "%<__builtin_convertvector%> number of elements of the first argument vector " "and the second argument vector type should be the same" msgstr "" -#: c-family/c-common.c:1360 c-family/c-warn.c:1291 +#: c-family/c-common.c:1358 c-family/c-warn.c:1291 #, gcc-internal-format msgid "unsigned conversion from %qT to %qT changes value from %qE to %qE" msgstr "" -#: c-family/c-common.c:1365 c-family/c-warn.c:1299 +#: c-family/c-common.c:1363 c-family/c-warn.c:1299 #, gcc-internal-format msgid "unsigned conversion from %qT to %qT changes the value of %qE" msgstr "" -#: c-family/c-common.c:1374 +#: c-family/c-common.c:1372 #, gcc-internal-format msgid "signed conversion from %qT to %qT changes value from %qE to %qE" msgstr "" -#: c-family/c-common.c:1379 +#: c-family/c-common.c:1377 #, gcc-internal-format msgid "signed conversion from %qT to %qT changes the value of %qE" msgstr "" -#: c-family/c-common.c:1532 c-family/c-common.c:1594 +#: c-family/c-common.c:1530 c-family/c-common.c:1592 #, gcc-internal-format msgid "conversion to %qT from %qT may change the sign of the result" msgstr "" -#: c-family/c-common.c:1780 +#: c-family/c-common.c:1778 #, gcc-internal-format msgid "operation on %qE may be undefined" msgstr "" -#: c-family/c-common.c:2097 +#: c-family/c-common.c:2095 #, gcc-internal-format msgid "case label does not reduce to an integer constant" msgstr "" -#: c-family/c-common.c:2143 -#, gcc-internal-format -msgid "case label value is less than minimum value for type" -msgstr "" - -#: c-family/c-common.c:2153 -#, gcc-internal-format -msgid "case label value exceeds maximum value for type" -msgstr "" - -#: c-family/c-common.c:2162 -#, gcc-internal-format -msgid "lower value in case label range less than minimum value for type" -msgstr "" - -#: c-family/c-common.c:2172 -#, gcc-internal-format -msgid "upper value in case label range exceeds maximum value for type" -msgstr "" - -#: c-family/c-common.c:2260 +#: c-family/c-common.c:2178 #, gcc-internal-format msgid "" "GCC cannot support operators with integer types and fixed-point types that " "have too many integral and fractional bits together" msgstr "" -#: c-family/c-common.c:2799 +#: c-family/c-common.c:2717 #, gcc-internal-format msgid "invalid operands to binary %s (have %qT and %qT)" msgstr "" -#: c-family/c-common.c:3048 +#: c-family/c-common.c:2966 #, gcc-internal-format msgid "comparison is always false due to limited range of data type" msgstr "" -#: c-family/c-common.c:3051 +#: c-family/c-common.c:2969 #, gcc-internal-format msgid "comparison is always true due to limited range of data type" msgstr "" -#: c-family/c-common.c:3148 +#: c-family/c-common.c:3066 #, gcc-internal-format msgid "comparison of unsigned expression >= 0 is always true" msgstr "" -#: c-family/c-common.c:3155 +#: c-family/c-common.c:3073 #, gcc-internal-format msgid "comparison of unsigned expression < 0 is always false" msgstr "" -#: c-family/c-common.c:3198 +#: c-family/c-common.c:3116 #, gcc-internal-format msgid "pointer of type % used in arithmetic" msgstr "" -#: c-family/c-common.c:3207 +#: c-family/c-common.c:3125 #, gcc-internal-format msgid "pointer to a function used in arithmetic" msgstr "" -#: c-family/c-common.c:3381 +#: c-family/c-common.c:3299 #, gcc-internal-format msgid "enum constant in boolean context" msgstr "" -#: c-family/c-common.c:3408 +#: c-family/c-common.c:3326 #, gcc-internal-format msgid "the address of %qD will always evaluate as %" msgstr "" -#: c-family/c-common.c:3452 +#: c-family/c-common.c:3370 #, gcc-internal-format msgid "%<*%> in boolean context, suggest %<&&%> instead" msgstr "" -#: c-family/c-common.c:3464 +#: c-family/c-common.c:3382 #, gcc-internal-format msgid "%<<<%> in boolean context, did you mean %<<%> ?" msgstr "" -#: c-family/c-common.c:3480 +#: c-family/c-common.c:3398 #, gcc-internal-format msgid "" "?: using integer constants in boolean context, the expression will always " "evaluate to %" msgstr "" -#: c-family/c-common.c:3489 +#: c-family/c-common.c:3407 #, gcc-internal-format msgid "?: using integer constants in boolean context" msgstr "" -#: c-family/c-common.c:3525 +#: c-family/c-common.c:3443 #, gcc-internal-format msgid "" "the compiler can assume that the address of %qD will always evaluate to " "%" msgstr "" -#: c-family/c-common.c:3551 cp/semantics.c:662 cp/typeck.c:9090 +#: c-family/c-common.c:3469 cp/semantics.c:662 cp/typeck.c:9108 #, gcc-internal-format msgid "suggest parentheses around assignment used as truth value" msgstr "" -#: c-family/c-common.c:3638 c/c-decl.c:4495 c/c-decl.c:6630 c/c-typeck.c:14934 +#: c-family/c-common.c:3556 c/c-decl.c:4512 c/c-decl.c:6647 c/c-typeck.c:14939 #, gcc-internal-format msgid "invalid use of %" msgstr "" -#: c-family/c-common.c:3712 +#: c-family/c-common.c:3630 #, gcc-internal-format msgid "invalid application of % to a function type" msgstr "" -#: c-family/c-common.c:3722 +#: c-family/c-common.c:3640 #, gcc-internal-format msgid "ISO C++ does not permit % applied to a function type" msgstr "" -#: c-family/c-common.c:3725 +#: c-family/c-common.c:3643 #, gcc-internal-format msgid "ISO C does not permit %<_Alignof%> applied to a function type" msgstr "" -#: c-family/c-common.c:3736 +#: c-family/c-common.c:3654 #, gcc-internal-format msgid "invalid application of %qs to a void type" msgstr "" -#: c-family/c-common.c:3745 +#: c-family/c-common.c:3663 #, gcc-internal-format msgid "invalid application of %qs to incomplete type %qT" msgstr "" -#: c-family/c-common.c:3753 +#: c-family/c-common.c:3671 #, gcc-internal-format msgid "invalid application of %qs to array type %qT of incomplete element type" msgstr "" -#: c-family/c-common.c:3795 +#: c-family/c-common.c:3713 #, gcc-internal-format msgid "%<__alignof%> applied to a bit-field" msgstr "" -#: c-family/c-common.c:4590 +#: c-family/c-common.c:4508 #, gcc-internal-format msgid "first argument to % not of type %" msgstr "" -#: c-family/c-common.c:4710 +#: c-family/c-common.c:4628 #, gcc-internal-format msgid "cannot disable built-in function %qs" msgstr "" -#: c-family/c-common.c:4902 +#: c-family/c-common.c:4819 #, gcc-internal-format msgid "pointers are not permitted as case values" msgstr "" -#: c-family/c-common.c:4909 +#: c-family/c-common.c:4826 #, gcc-internal-format msgid "range expressions in switch statements are non-standard" msgstr "" -#: c-family/c-common.c:4935 +#: c-family/c-common.c:4854 #, gcc-internal-format msgid "empty range specified" msgstr "" -#: c-family/c-common.c:4996 +#: c-family/c-common.c:4906 #, gcc-internal-format msgid "duplicate (or overlapping) case value" msgstr "" -#: c-family/c-common.c:4998 +#: c-family/c-common.c:4908 #, gcc-internal-format msgid "this is the first entry overlapping that value" msgstr "" -#: c-family/c-common.c:5002 +#: c-family/c-common.c:4912 #, gcc-internal-format msgid "duplicate case value" msgstr "" -#: c-family/c-common.c:5003 c-family/c-warn.c:2326 +#: c-family/c-common.c:4913 c-family/c-warn.c:2401 #, gcc-internal-format msgid "previously used here" msgstr "" -#: c-family/c-common.c:5007 +#: c-family/c-common.c:4917 #, gcc-internal-format msgid "multiple default labels in one switch" msgstr "" -#: c-family/c-common.c:5009 +#: c-family/c-common.c:4919 #, gcc-internal-format msgid "this is the first default label" msgstr "" -#: c-family/c-common.c:5103 +#: c-family/c-common.c:5013 #, gcc-internal-format msgid "taking the address of a label is non-standard" msgstr "" -#: c-family/c-common.c:5277 +#: c-family/c-common.c:5187 #, gcc-internal-format msgid "requested alignment is not an integer constant" msgstr "" -#: c-family/c-common.c:5285 c-family/c-common.c:5295 +#: c-family/c-common.c:5195 c-family/c-common.c:5205 #, gcc-internal-format msgid "requested alignment %qE is not a positive power of 2" msgstr "" -#: c-family/c-common.c:5305 +#: c-family/c-common.c:5215 #, gcc-internal-format msgid "requested alignment %qE exceeds object file maximum %u" msgstr "" -#: c-family/c-common.c:5313 +#: c-family/c-common.c:5223 #, gcc-internal-format msgid "requested alignment %qE exceeds maximum %u" msgstr "" -#: c-family/c-common.c:5461 +#: c-family/c-common.c:5371 #, gcc-internal-format msgid "not enough variable arguments to fit a sentinel" msgstr "" -#: c-family/c-common.c:5475 +#: c-family/c-common.c:5385 #, gcc-internal-format msgid "missing sentinel in function call" msgstr "" -#: c-family/c-common.c:5580 +#: c-family/c-common.c:5490 #, gcc-internal-format, gfc-internal-format msgid "null argument where non-null required (argument %lu)" msgstr "" -#: c-family/c-common.c:5673 c-family/c-common.c:5723 +#: c-family/c-common.c:5583 c-family/c-common.c:5633 #, gcc-internal-format msgid "bad option %qs to attribute %" msgstr "" -#: c-family/c-common.c:5676 c-family/c-common.c:5727 +#: c-family/c-common.c:5586 c-family/c-common.c:5637 #, gcc-internal-format msgid "bad option %qs to pragma %" msgstr "" -#: c-family/c-common.c:5759 +#: c-family/c-common.c:5669 #, gcc-internal-format msgid "% attribute specified multiple times" msgstr "" -#: c-family/c-common.c:5763 +#: c-family/c-common.c:5673 #, gcc-internal-format msgid "% attribute specified with a parameter" msgstr "" -#: c-family/c-common.c:5908 c-family/c-common.c:6677 c-family/c-common.c:6724 -#: c-family/c-common.c:6797 c-family/c-common.c:6870 c/c-typeck.c:3641 +#: c-family/c-common.c:5818 c-family/c-common.c:6587 c-family/c-common.c:6634 +#: c-family/c-common.c:6707 c-family/c-common.c:6780 c/c-typeck.c:3641 #, gcc-internal-format msgid "too few arguments to function %qE" msgstr "" -#: c-family/c-common.c:5913 c-family/c-common.c:6730 c-family/c-common.c:6896 +#: c-family/c-common.c:5823 c-family/c-common.c:6640 c-family/c-common.c:6806 #: c/c-typeck.c:3505 #, gcc-internal-format msgid "too many arguments to function %qE" msgstr "" -#: c-family/c-common.c:5943 +#: c-family/c-common.c:5853 #, gcc-internal-format msgid "third argument to function %qE must be a constant integer" msgstr "" -#: c-family/c-common.c:5968 +#: c-family/c-common.c:5878 #, gcc-internal-format msgid "" "second argument to function %qE must be a constant integer power of 2 " "between %qi and %qu bits" msgstr "" -#: c-family/c-common.c:5989 c-family/c-common.c:6033 +#: c-family/c-common.c:5899 c-family/c-common.c:5943 #, gcc-internal-format msgid "non-floating-point argument in call to function %qE" msgstr "" -#: c-family/c-common.c:6012 +#: c-family/c-common.c:5922 #, gcc-internal-format msgid "non-floating-point arguments in call to function %qE" msgstr "" -#: c-family/c-common.c:6026 +#: c-family/c-common.c:5936 #, gcc-internal-format msgid "non-const integer argument %u in call to function %qE" msgstr "" -#: c-family/c-common.c:6046 +#: c-family/c-common.c:5956 #, gcc-internal-format msgid "non-integer argument 3 in call to function %qE" msgstr "" -#: c-family/c-common.c:6063 c-family/c-common.c:6099 +#: c-family/c-common.c:5973 c-family/c-common.c:6009 #, gcc-internal-format msgid "argument %u in call to function %qE does not have integral type" msgstr "" -#: c-family/c-common.c:6070 +#: c-family/c-common.c:5980 #, gcc-internal-format msgid "" "argument 3 in call to function %qE does not have pointer to integral type" msgstr "" -#: c-family/c-common.c:6076 +#: c-family/c-common.c:5986 #, gcc-internal-format msgid "argument 3 in call to function %qE has pointer to enumerated type" msgstr "" -#: c-family/c-common.c:6082 +#: c-family/c-common.c:5992 #, gcc-internal-format msgid "argument 3 in call to function %qE has pointer to boolean type" msgstr "" -#: c-family/c-common.c:6105 +#: c-family/c-common.c:6015 #, gcc-internal-format msgid "argument 3 in call to function %qE has enumerated type" msgstr "" -#: c-family/c-common.c:6111 +#: c-family/c-common.c:6021 #, gcc-internal-format msgid "argument 3 in call to function %qE has boolean type" msgstr "" -#: c-family/c-common.c:6362 +#: c-family/c-common.c:6272 #, gcc-internal-format msgid "cannot apply % to static data member %qD" msgstr "" -#: c-family/c-common.c:6367 +#: c-family/c-common.c:6277 #, gcc-internal-format msgid "cannot apply % when % is overloaded" msgstr "" -#: c-family/c-common.c:6374 +#: c-family/c-common.c:6284 #, gcc-internal-format msgid "cannot apply % to a non constant address" msgstr "" -#: c-family/c-common.c:6387 +#: c-family/c-common.c:6297 #, gcc-internal-format msgid "attempt to take address of bit-field structure member %qD" msgstr "" -#: c-family/c-common.c:6440 +#: c-family/c-common.c:6350 #, gcc-internal-format msgid "index %E denotes an offset greater than size of %qT" msgstr "" -#: c-family/c-common.c:6601 +#: c-family/c-common.c:6511 #, gcc-internal-format msgid "size of array is too large" msgstr "" -#: c-family/c-common.c:6707 c-family/c-common.c:6829 +#: c-family/c-common.c:6617 c-family/c-common.c:6739 #, gcc-internal-format msgid "operand type %qT is incompatible with argument %d of %qE" msgstr "" -#: c-family/c-common.c:6741 +#: c-family/c-common.c:6651 #, gcc-internal-format msgid "expecting argument of type pointer or of type integer for argument 1" msgstr "" -#: c-family/c-common.c:6755 +#: c-family/c-common.c:6665 #, gcc-internal-format msgid "both arguments must be compatible" msgstr "" -#: c-family/c-common.c:6963 +#: c-family/c-common.c:6873 #, gcc-internal-format msgid "incorrect number of arguments to function %qE" msgstr "" -#: c-family/c-common.c:6977 +#: c-family/c-common.c:6887 #, gcc-internal-format msgid "argument 1 of %qE must be a non-void pointer type" msgstr "" -#: c-family/c-common.c:6986 +#: c-family/c-common.c:6896 #, gcc-internal-format msgid "argument 1 of %qE must be a pointer to a constant size type" msgstr "" -#: c-family/c-common.c:6997 +#: c-family/c-common.c:6907 #, gcc-internal-format msgid "argument 1 of %qE must be a pointer to a nonzero size object" msgstr "" -#: c-family/c-common.c:7018 +#: c-family/c-common.c:6928 #, gcc-internal-format msgid "argument %d of %qE must be a pointer type" msgstr "" -#: c-family/c-common.c:7026 +#: c-family/c-common.c:6936 #, gcc-internal-format msgid "argument %d of %qE must be a pointer to a constant size type" msgstr "" -#: c-family/c-common.c:7032 +#: c-family/c-common.c:6942 #, gcc-internal-format msgid "argument %d of %qE must not be a pointer to a function" msgstr "" -#: c-family/c-common.c:7040 +#: c-family/c-common.c:6950 #, gcc-internal-format msgid "size mismatch in argument %d of %qE" msgstr "" -#: c-family/c-common.c:7052 +#: c-family/c-common.c:6962 #, gcc-internal-format msgid "non-integer memory model argument %d of %qE" msgstr "" -#: c-family/c-common.c:7065 +#: c-family/c-common.c:6975 #, gcc-internal-format msgid "invalid memory model argument %d of %qE" msgstr "" -#: c-family/c-common.c:7465 +#: c-family/c-common.c:7375 #, gcc-internal-format msgid "" "this target does not define a speculation barrier; your program will still " "execute correctly, but incorrect speculation may not be be restricted" msgstr "" -#: c-family/c-common.c:8037 +#: c-family/c-common.c:7947 #, gcc-internal-format msgid "index value is out of bound" msgstr "" -#: c-family/c-common.c:8079 c-family/c-common.c:8128 c-family/c-common.c:8144 +#: c-family/c-common.c:7989 c-family/c-common.c:8038 c-family/c-common.c:8054 #, gcc-internal-format msgid "conversion of scalar %qT to vector %qT involves truncation" msgstr "" #. Reject arguments that are built-in functions with #. no library fallback. -#: c-family/c-common.c:8232 +#: c-family/c-common.c:8142 #, gcc-internal-format msgid "built-in function %qE must be directly called" msgstr "" -#: c-family/c-common.c:8252 +#: c-family/c-common.c:8162 #, gcc-internal-format msgid "size of array %qE is not a constant expression" msgstr "" -#: c-family/c-common.c:8255 +#: c-family/c-common.c:8165 #, gcc-internal-format msgid "size of array is not a constant expression" msgstr "" -#: c-family/c-common.c:8259 +#: c-family/c-common.c:8169 #, gcc-internal-format msgid "size %qE of array %qE is negative" msgstr "" -#: c-family/c-common.c:8262 +#: c-family/c-common.c:8172 #, gcc-internal-format msgid "size %qE of array is negative" msgstr "" -#: c-family/c-common.c:8267 +#: c-family/c-common.c:8177 #, gcc-internal-format msgid "size %qE of array %qE exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8270 +#: c-family/c-common.c:8180 #, gcc-internal-format msgid "size %qE of array exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8275 +#: c-family/c-common.c:8185 #, gcc-internal-format msgid "size of array %qE exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8278 +#: c-family/c-common.c:8188 #, gcc-internal-format msgid "size of array exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8349 +#: c-family/c-common.c:8259 #, gcc-internal-format msgid "" "environment variable SOURCE_DATE_EPOCH must expand to a non-negative integer " @@ -27634,7 +27617,7 @@ msgstr "" msgid "% modifier may not be specified on % construct" msgstr "" -#: c-family/c-omp.c:721 cp/semantics.c:8688 +#: c-family/c-omp.c:721 cp/semantics.c:8680 #, gcc-internal-format msgid "invalid type for iteration variable %qE" msgstr "" @@ -27649,17 +27632,17 @@ msgstr "" msgid "%qE is not initialized" msgstr "" -#: c-family/c-omp.c:763 cp/semantics.c:8577 +#: c-family/c-omp.c:763 cp/semantics.c:8569 #, gcc-internal-format msgid "missing controlling predicate" msgstr "" -#: c-family/c-omp.c:869 cp/semantics.c:8219 +#: c-family/c-omp.c:869 cp/semantics.c:8211 #, gcc-internal-format msgid "invalid controlling predicate" msgstr "" -#: c-family/c-omp.c:876 cp/semantics.c:8583 +#: c-family/c-omp.c:876 cp/semantics.c:8575 #, gcc-internal-format msgid "missing increment expression" msgstr "" @@ -27669,7 +27652,7 @@ msgstr "" msgid "increment is not constant 1 or -1 for != condition" msgstr "" -#: c-family/c-omp.c:1007 cp/semantics.c:8334 +#: c-family/c-omp.c:1007 cp/semantics.c:8326 #, gcc-internal-format msgid "invalid increment expression" msgstr "" @@ -28583,422 +28566,442 @@ msgstr "" msgid "case value %qs not in enumerated type %qT" msgstr "" -#: c-family/c-warn.c:1445 +#: c-family/c-warn.c:1463 +#, gcc-internal-format +msgid "lower value in case label range less than minimum value for type" +msgstr "" + +#: c-family/c-warn.c:1477 +#, gcc-internal-format +msgid "case label value is less than minimum value for type" +msgstr "" + +#: c-family/c-warn.c:1494 +#, gcc-internal-format +msgid "upper value in case label range exceeds maximum value for type" +msgstr "" + +#: c-family/c-warn.c:1507 +#, gcc-internal-format +msgid "case label value exceeds maximum value for type" +msgstr "" + +#: c-family/c-warn.c:1520 #, gcc-internal-format msgid "switch missing default case" msgstr "" -#: c-family/c-warn.c:1490 +#: c-family/c-warn.c:1565 #, gcc-internal-format msgid "switch condition has boolean value" msgstr "" -#: c-family/c-warn.c:1563 +#: c-family/c-warn.c:1638 #, gcc-internal-format msgid "enumeration value %qE not handled in switch" msgstr "" -#: c-family/c-warn.c:1591 +#: c-family/c-warn.c:1666 #, gcc-internal-format msgid "" "the omitted middle operand in ?: will always be %, suggest explicit " "middle operand" msgstr "" -#: c-family/c-warn.c:1613 +#: c-family/c-warn.c:1688 #, gcc-internal-format msgid "assignment of member %qD in read-only object" msgstr "" -#: c-family/c-warn.c:1615 +#: c-family/c-warn.c:1690 #, gcc-internal-format msgid "increment of member %qD in read-only object" msgstr "" -#: c-family/c-warn.c:1617 +#: c-family/c-warn.c:1692 #, gcc-internal-format msgid "decrement of member %qD in read-only object" msgstr "" -#: c-family/c-warn.c:1619 +#: c-family/c-warn.c:1694 #, gcc-internal-format msgid "member %qD in read-only object used as % output" msgstr "" -#: c-family/c-warn.c:1623 +#: c-family/c-warn.c:1698 #, gcc-internal-format msgid "assignment of read-only member %qD" msgstr "" -#: c-family/c-warn.c:1624 +#: c-family/c-warn.c:1699 #, gcc-internal-format msgid "increment of read-only member %qD" msgstr "" -#: c-family/c-warn.c:1625 +#: c-family/c-warn.c:1700 #, gcc-internal-format msgid "decrement of read-only member %qD" msgstr "" -#: c-family/c-warn.c:1626 +#: c-family/c-warn.c:1701 #, gcc-internal-format msgid "read-only member %qD used as % output" msgstr "" -#: c-family/c-warn.c:1630 +#: c-family/c-warn.c:1705 #, gcc-internal-format msgid "assignment of read-only variable %qD" msgstr "" -#: c-family/c-warn.c:1631 +#: c-family/c-warn.c:1706 #, gcc-internal-format msgid "increment of read-only variable %qD" msgstr "" -#: c-family/c-warn.c:1632 +#: c-family/c-warn.c:1707 #, gcc-internal-format msgid "decrement of read-only variable %qD" msgstr "" -#: c-family/c-warn.c:1633 +#: c-family/c-warn.c:1708 #, gcc-internal-format msgid "read-only variable %qD used as % output" msgstr "" -#: c-family/c-warn.c:1636 +#: c-family/c-warn.c:1711 #, gcc-internal-format msgid "assignment of read-only parameter %qD" msgstr "" -#: c-family/c-warn.c:1637 +#: c-family/c-warn.c:1712 #, gcc-internal-format msgid "increment of read-only parameter %qD" msgstr "" -#: c-family/c-warn.c:1638 +#: c-family/c-warn.c:1713 #, gcc-internal-format msgid "decrement of read-only parameter %qD" msgstr "" -#: c-family/c-warn.c:1639 +#: c-family/c-warn.c:1714 #, gcc-internal-format msgid "read-only parameter %qD use as % output" msgstr "" -#: c-family/c-warn.c:1644 +#: c-family/c-warn.c:1719 #, gcc-internal-format msgid "assignment of read-only named return value %qD" msgstr "" -#: c-family/c-warn.c:1646 +#: c-family/c-warn.c:1721 #, gcc-internal-format msgid "increment of read-only named return value %qD" msgstr "" -#: c-family/c-warn.c:1648 +#: c-family/c-warn.c:1723 #, gcc-internal-format msgid "decrement of read-only named return value %qD" msgstr "" -#: c-family/c-warn.c:1650 +#: c-family/c-warn.c:1725 #, gcc-internal-format msgid "read-only named return value %qD used as %output" msgstr "" -#: c-family/c-warn.c:1655 +#: c-family/c-warn.c:1730 #, gcc-internal-format msgid "assignment of function %qD" msgstr "" -#: c-family/c-warn.c:1656 +#: c-family/c-warn.c:1731 #, gcc-internal-format msgid "increment of function %qD" msgstr "" -#: c-family/c-warn.c:1657 +#: c-family/c-warn.c:1732 #, gcc-internal-format msgid "decrement of function %qD" msgstr "" -#: c-family/c-warn.c:1658 +#: c-family/c-warn.c:1733 #, gcc-internal-format msgid "function %qD used as % output" msgstr "" -#: c-family/c-warn.c:1661 c/c-typeck.c:4886 +#: c-family/c-warn.c:1736 c/c-typeck.c:4886 #, gcc-internal-format msgid "assignment of read-only location %qE" msgstr "" -#: c-family/c-warn.c:1662 c/c-typeck.c:4889 +#: c-family/c-warn.c:1737 c/c-typeck.c:4889 #, gcc-internal-format msgid "increment of read-only location %qE" msgstr "" -#: c-family/c-warn.c:1663 c/c-typeck.c:4892 +#: c-family/c-warn.c:1738 c/c-typeck.c:4892 #, gcc-internal-format msgid "decrement of read-only location %qE" msgstr "" -#: c-family/c-warn.c:1664 +#: c-family/c-warn.c:1739 #, gcc-internal-format msgid "read-only location %qE used as % output" msgstr "" -#: c-family/c-warn.c:1678 +#: c-family/c-warn.c:1753 #, gcc-internal-format msgid "lvalue required as left operand of assignment" msgstr "" -#: c-family/c-warn.c:1681 +#: c-family/c-warn.c:1756 #, gcc-internal-format msgid "lvalue required as increment operand" msgstr "" -#: c-family/c-warn.c:1684 +#: c-family/c-warn.c:1759 #, gcc-internal-format msgid "lvalue required as decrement operand" msgstr "" -#: c-family/c-warn.c:1687 +#: c-family/c-warn.c:1762 #, gcc-internal-format msgid "lvalue required as unary %<&%> operand" msgstr "" -#: c-family/c-warn.c:1690 +#: c-family/c-warn.c:1765 #, gcc-internal-format msgid "lvalue required in asm statement" msgstr "" -#: c-family/c-warn.c:1707 +#: c-family/c-warn.c:1782 #, gcc-internal-format msgid "invalid type argument (have %qT)" msgstr "" -#: c-family/c-warn.c:1711 +#: c-family/c-warn.c:1786 #, gcc-internal-format msgid "invalid type argument of array indexing (have %qT)" msgstr "" -#: c-family/c-warn.c:1716 +#: c-family/c-warn.c:1791 #, gcc-internal-format msgid "invalid type argument of unary %<*%> (have %qT)" msgstr "" -#: c-family/c-warn.c:1721 +#: c-family/c-warn.c:1796 #, gcc-internal-format msgid "invalid type argument of %<->%> (have %qT)" msgstr "" -#: c-family/c-warn.c:1726 +#: c-family/c-warn.c:1801 #, gcc-internal-format msgid "invalid type argument of %<->*%> (have %qT)" msgstr "" -#: c-family/c-warn.c:1731 +#: c-family/c-warn.c:1806 #, gcc-internal-format msgid "invalid type argument of implicit conversion (have %qT)" msgstr "" -#: c-family/c-warn.c:1758 +#: c-family/c-warn.c:1833 #, gcc-internal-format msgid "array subscript has type %" msgstr "" -#: c-family/c-warn.c:1794 c-family/c-warn.c:1797 +#: c-family/c-warn.c:1869 c-family/c-warn.c:1872 #, gcc-internal-format msgid "suggest parentheses around %<+%> inside %<<<%>" msgstr "" -#: c-family/c-warn.c:1800 c-family/c-warn.c:1803 +#: c-family/c-warn.c:1875 c-family/c-warn.c:1878 #, gcc-internal-format msgid "suggest parentheses around %<-%> inside %<<<%>" msgstr "" -#: c-family/c-warn.c:1809 c-family/c-warn.c:1812 +#: c-family/c-warn.c:1884 c-family/c-warn.c:1887 #, gcc-internal-format msgid "suggest parentheses around %<+%> inside %<>>%>" msgstr "" -#: c-family/c-warn.c:1815 c-family/c-warn.c:1818 +#: c-family/c-warn.c:1890 c-family/c-warn.c:1893 #, gcc-internal-format msgid "suggest parentheses around %<-%> inside %<>>%>" msgstr "" -#: c-family/c-warn.c:1824 c-family/c-warn.c:1827 +#: c-family/c-warn.c:1899 c-family/c-warn.c:1902 #, gcc-internal-format msgid "suggest parentheses around %<&&%> within %<||%>" msgstr "" -#: c-family/c-warn.c:1834 c-family/c-warn.c:1838 +#: c-family/c-warn.c:1909 c-family/c-warn.c:1913 #, gcc-internal-format msgid "suggest parentheses around arithmetic in operand of %<|%>" msgstr "" -#: c-family/c-warn.c:1842 c-family/c-warn.c:1845 +#: c-family/c-warn.c:1917 c-family/c-warn.c:1920 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<|%>" msgstr "" -#: c-family/c-warn.c:1850 +#: c-family/c-warn.c:1925 #, gcc-internal-format msgid "" "suggest parentheses around operand of % or change %<|%> to %<||%> or % to %<~%>" msgstr "" -#: c-family/c-warn.c:1858 c-family/c-warn.c:1862 +#: c-family/c-warn.c:1933 c-family/c-warn.c:1937 #, gcc-internal-format msgid "suggest parentheses around arithmetic in operand of %<^%>" msgstr "" -#: c-family/c-warn.c:1866 c-family/c-warn.c:1869 +#: c-family/c-warn.c:1941 c-family/c-warn.c:1944 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<^%>" msgstr "" -#: c-family/c-warn.c:1875 c-family/c-warn.c:1878 +#: c-family/c-warn.c:1950 c-family/c-warn.c:1953 #, gcc-internal-format msgid "suggest parentheses around %<+%> in operand of %<&%>" msgstr "" -#: c-family/c-warn.c:1881 c-family/c-warn.c:1884 +#: c-family/c-warn.c:1956 c-family/c-warn.c:1959 #, gcc-internal-format msgid "suggest parentheses around %<-%> in operand of %<&%>" msgstr "" -#: c-family/c-warn.c:1888 c-family/c-warn.c:1891 +#: c-family/c-warn.c:1963 c-family/c-warn.c:1966 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<&%>" msgstr "" -#: c-family/c-warn.c:1896 +#: c-family/c-warn.c:1971 #, gcc-internal-format msgid "" "suggest parentheses around operand of % or change %<&%> to %<&&%> or % to %<~%>" msgstr "" -#: c-family/c-warn.c:1903 c-family/c-warn.c:1906 +#: c-family/c-warn.c:1978 c-family/c-warn.c:1981 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<==%>" msgstr "" -#: c-family/c-warn.c:1911 c-family/c-warn.c:1914 +#: c-family/c-warn.c:1986 c-family/c-warn.c:1989 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %" msgstr "" -#: c-family/c-warn.c:1924 c-family/c-warn.c:1930 +#: c-family/c-warn.c:1999 c-family/c-warn.c:2005 #, gcc-internal-format msgid "comparisons like % do not have their mathematical meaning" msgstr "" -#: c-family/c-warn.c:1946 +#: c-family/c-warn.c:2021 #, gcc-internal-format msgid "label %q+D defined but not used" msgstr "" -#: c-family/c-warn.c:1948 +#: c-family/c-warn.c:2023 #, gcc-internal-format msgid "label %q+D declared but not defined" msgstr "" -#: c-family/c-warn.c:1971 +#: c-family/c-warn.c:2046 #, gcc-internal-format msgid "division by zero" msgstr "" -#: c-family/c-warn.c:1991 +#: c-family/c-warn.c:2066 #, gcc-internal-format msgid "" "% used with constant zero length parameter; this could be due to " "transposed parameters" msgstr "" -#: c-family/c-warn.c:2015 +#: c-family/c-warn.c:2090 #, gcc-internal-format msgid "" "% used with length equal to number of elements without " "multiplication by element size" msgstr "" -#: c-family/c-warn.c:2054 c/c-typeck.c:11911 c/c-typeck.c:12079 -#: cp/typeck.c:5193 +#: c-family/c-warn.c:2129 c/c-typeck.c:11916 c/c-typeck.c:12084 +#: cp/typeck.c:5211 #, gcc-internal-format msgid "comparison between types %qT and %qT" msgstr "" -#: c-family/c-warn.c:2107 +#: c-family/c-warn.c:2182 #, gcc-internal-format msgid "comparison of integer expressions of different signedness: %qT and %qT" msgstr "" -#: c-family/c-warn.c:2160 +#: c-family/c-warn.c:2235 #, gcc-internal-format msgid "promoted ~unsigned is always non-zero" msgstr "" -#: c-family/c-warn.c:2163 +#: c-family/c-warn.c:2238 #, gcc-internal-format msgid "comparison of promoted ~unsigned with constant" msgstr "" -#: c-family/c-warn.c:2173 +#: c-family/c-warn.c:2248 #, gcc-internal-format msgid "comparison of promoted ~unsigned with unsigned" msgstr "" -#: c-family/c-warn.c:2227 +#: c-family/c-warn.c:2302 #, gcc-internal-format msgid "unused parameter %qD" msgstr "" -#: c-family/c-warn.c:2289 +#: c-family/c-warn.c:2364 #, gcc-internal-format msgid "typedef %qD locally defined but not used" msgstr "" -#: c-family/c-warn.c:2325 +#: c-family/c-warn.c:2400 #, gcc-internal-format msgid "duplicated % condition" msgstr "" -#: c-family/c-warn.c:2354 +#: c-family/c-warn.c:2429 #, gcc-internal-format msgid "" "optimization attribute on %qD follows definition but the attribute doesn%'t " "match" msgstr "" -#: c-family/c-warn.c:2362 +#: c-family/c-warn.c:2437 #, gcc-internal-format msgid "" "inline declaration of %qD follows declaration with attribute %" msgstr "" -#: c-family/c-warn.c:2367 +#: c-family/c-warn.c:2442 #, gcc-internal-format msgid "" "declaration of %q+D with attribute % follows inline declaration" msgstr "" -#: c-family/c-warn.c:2416 +#: c-family/c-warn.c:2491 #, gcc-internal-format msgid "result of %qE requires %u bits to represent, but %qT only has %u bits" msgstr "" -#: c-family/c-warn.c:2454 c-family/c-warn.c:2478 +#: c-family/c-warn.c:2529 c-family/c-warn.c:2553 #, gcc-internal-format msgid "comparison of constant %qE with boolean expression is always false" msgstr "" -#: c-family/c-warn.c:2457 c-family/c-warn.c:2475 +#: c-family/c-warn.c:2532 c-family/c-warn.c:2550 #, gcc-internal-format msgid "comparison of constant %qE with boolean expression is always true" msgstr "" -#: c-family/c-warn.c:2525 +#: c-family/c-warn.c:2600 msgid "" "passing argument %i to restrict-qualified parameter aliases with argument %Z" msgid_plural "" @@ -29006,34 +29009,34 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: c-family/c-warn.c:2590 c/c-typeck.c:5457 cp/call.c:5570 +#: c-family/c-warn.c:2665 c/c-typeck.c:5457 cp/call.c:5570 #, gcc-internal-format msgid "this condition has identical branches" msgstr "" -#: c-family/c-warn.c:2697 +#: c-family/c-warn.c:2772 #, gcc-internal-format msgid "macro expands to multiple statements" msgstr "" -#: c-family/c-warn.c:2698 +#: c-family/c-warn.c:2773 #, gcc-internal-format msgid "some parts of macro expansion are not guarded by this %qs clause" msgstr "" -#: c-family/c-warn.c:2789 +#: c-family/c-warn.c:2864 #, gcc-internal-format msgid "" "converting a packed %qT pointer (alignment %d) to a %qT pointer (alignment " "%d) may result in an unaligned pointer value" msgstr "" -#: c-family/c-warn.c:2796 c-family/c-warn.c:2799 cp/init.c:638 +#: c-family/c-warn.c:2871 c-family/c-warn.c:2874 cp/init.c:638 #, gcc-internal-format msgid "defined here" msgstr "" -#: c-family/c-warn.c:2886 +#: c-family/c-warn.c:2961 #, gcc-internal-format msgid "" "taking address of packed member of %qT may result in an unaligned pointer " @@ -29653,7 +29656,7 @@ msgstr "" #: config/aarch64/aarch64.c:3919 config/aarch64/aarch64.c:3965 #: config/aarch64/aarch64.c:4062 config/aarch64/aarch64.c:13445 -#: config/arm/arm.c:6715 config/arm/arm.c:6745 config/arm/arm.c:27085 +#: config/arm/arm.c:6720 config/arm/arm.c:6750 config/arm/arm.c:27090 #, gcc-internal-format msgid "parameter passing for argument of type %qT changed in GCC 9.1" msgstr "" @@ -29696,7 +29699,7 @@ msgstr "" #: config/aarch64/aarch64.c:11486 #, gcc-internal-format msgid "" -"incompatible options %<-mstack-protector-guard=global%> and%<-mstack-" +"incompatible options %<-mstack-protector-guard=global%> and %<-mstack-" "protector-guard-offset=%s%>" msgstr "" @@ -29863,9 +29866,9 @@ msgstr "" msgid "pragma or attribute % is not valid" msgstr "" -#: config/aarch64/aarch64.c:12699 config/arm/arm.c:30865 -#: config/i386/i386.c:5318 config/rs6000/rs6000.c:36763 -#: config/s390/s390.c:15399 +#: config/aarch64/aarch64.c:12699 config/arm/arm.c:30870 +#: config/i386/i386.c:5319 config/rs6000/rs6000.c:36763 +#: config/s390/s390.c:15409 #, gcc-internal-format msgid "attribute % argument not a string" msgstr "" @@ -29890,33 +29893,33 @@ msgstr "" msgid "lane %wd out of range %wd - %wd" msgstr "" -#: config/aarch64/aarch64.c:18647 config/i386/i386.c:50594 -#: config/i386/i386.c:50721 +#: config/aarch64/aarch64.c:18646 config/i386/i386.c:50576 +#: config/i386/i386.c:50703 #, gcc-internal-format, gfc-internal-format msgid "unsupported simdlen %d" msgstr "" -#: config/aarch64/aarch64.c:18657 config/aarch64/aarch64.c:18678 +#: config/aarch64/aarch64.c:18656 config/aarch64/aarch64.c:18677 #, gcc-internal-format msgid "GCC does not currently support mixed size types for % functions" msgstr "" -#: config/aarch64/aarch64.c:18661 +#: config/aarch64/aarch64.c:18660 #, gcc-internal-format msgid "GCC does not currently support return type %qT for % functions" msgstr "" -#: config/aarch64/aarch64.c:18665 +#: config/aarch64/aarch64.c:18664 #, gcc-internal-format msgid "unsupported return type %qT for % functions" msgstr "" -#: config/aarch64/aarch64.c:18682 +#: config/aarch64/aarch64.c:18681 #, gcc-internal-format msgid "GCC does not currently support argument type %qT for % functions" msgstr "" -#: config/aarch64/aarch64.c:18704 +#: config/aarch64/aarch64.c:18703 #, gcc-internal-format msgid "GCC does not currently support simdlen %d for type %qT" msgstr "" @@ -29976,8 +29979,8 @@ msgstr "" msgid "bad value %qs for %<-mmemory-latency%>" msgstr "" -#: config/alpha/alpha.c:6719 config/alpha/alpha.c:6722 config/arc/arc.c:6885 -#: config/arc/arc.c:7159 config/s390/s390.c:834 config/tilegx/tilegx.c:3544 +#: config/alpha/alpha.c:6719 config/alpha/alpha.c:6722 config/arc/arc.c:6900 +#: config/arc/arc.c:7174 config/s390/s390.c:834 config/tilegx/tilegx.c:3544 #: config/tilepro/tilepro.c:3108 #, gcc-internal-format msgid "bad builtin fcode" @@ -30005,48 +30008,48 @@ msgstr "" #: config/arc/arc.c:953 #, gcc-internal-format -msgid "No FPX/FPU mixing allowed" +msgid "no FPX/FPU mixing allowed" msgstr "" -#: config/arc/arc.c:959 -#, gcc-internal-format, gfc-internal-format -msgid "PIC is not supported for %s. Generating non-PIC code only.." +#: config/arc/arc.c:958 +#, gcc-internal-format +msgid "PIC is not supported for %qs" msgstr "" -#: config/arc/arc.c:1022 +#: config/arc/arc.c:1021 #, gcc-internal-format msgid "missing dash" msgstr "" -#: config/arc/arc.c:1034 +#: config/arc/arc.c:1033 #, gcc-internal-format msgid "first register must be R0" msgstr "" -#: config/arc/arc.c:1054 +#: config/arc/arc.c:1053 #, gcc-internal-format, gfc-internal-format msgid "last register name %s must be an odd register" msgstr "" -#: config/arc/arc.c:1063 config/ia64/ia64.c:6054 config/pa/pa.c:483 +#: config/arc/arc.c:1062 config/ia64/ia64.c:6054 config/pa/pa.c:483 #: config/sh/sh.c:8308 config/spu/spu.c:4946 #, gcc-internal-format, gfc-internal-format msgid "%s-%s is an empty range" msgstr "" -#: config/arc/arc.c:1113 +#: config/arc/arc.c:1112 #, gcc-internal-format msgid "" "invalid number in %<-mrgf-banked-regs=%s%> valid values are 0, 4, 8, 16, or " "32" msgstr "" -#: config/arc/arc.c:1175 +#: config/arc/arc.c:1174 #, gcc-internal-format msgid "option %<-mirq-ctrl-saved%> valid only for ARC v2 processors" msgstr "" -#: config/arc/arc.c:1184 +#: config/arc/arc.c:1183 #, gcc-internal-format msgid "option %<-mrgf-banked-regs%> valid only for ARC v2 processors" msgstr "" @@ -30055,56 +30058,59 @@ msgstr "" #. option is not allowed. Extra, check options against default #. architecture/cpu flags and throw an warning if we find a #. mismatch. -#: config/arc/arc.c:1225 -#, gcc-internal-format, gfc-internal-format -msgid "Option %s=%s is not available for %s CPU." +#. TRANSLATORS: the DOC/DOC0/DOC1 are strings which shouldn't be +#. translated. They are like keywords which one can relate with the +#. architectural choices taken for an ARC CPU implementation. +#: config/arc/arc.c:1227 +#, gcc-internal-format +msgid "option %<%s=%s%> is not available for %qs CPU" msgstr "" -#: config/arc/arc.c:1230 -#, gcc-internal-format, gfc-internal-format -msgid "Option %s is ignored, the default value %s is considered for %s CPU." +#: config/arc/arc.c:1232 +#, gcc-internal-format +msgid "option %qs is ignored, the default value %qs is considered for %qs CPU" msgstr "" -#: config/arc/arc.c:1238 -#, gcc-internal-format, gfc-internal-format -msgid "Option %s is not available for %s CPU" +#: config/arc/arc.c:1240 +#, gcc-internal-format +msgid "option %qs is not available for %qs CPU" msgstr "" -#: config/arc/arc.c:1243 -#, gcc-internal-format, gfc-internal-format -msgid "Unset option %s is ignored, it is always enabled for %s CPU." +#: config/arc/arc.c:1245 +#, gcc-internal-format +msgid "unset option %qs is ignored, it is always enabled for %qs CPU" msgstr "" -#: config/arc/arc.c:1809 +#: config/arc/arc.c:1812 #, gcc-internal-format, gfc-internal-format msgid "multiply option implies r%d is fixed" msgstr "" -#: config/arc/arc.c:1957 config/epiphany/epiphany.c:508 +#: config/arc/arc.c:1961 config/epiphany/epiphany.c:508 #: config/epiphany/epiphany.c:548 #, gcc-internal-format msgid "argument of %qE attribute is not a string constant" msgstr "" -#: config/arc/arc.c:1966 +#: config/arc/arc.c:1970 #, gcc-internal-format msgid "argument of %qE attribute is not \"ilink1\" or \"ilink2\"" msgstr "" -#: config/arc/arc.c:1975 +#: config/arc/arc.c:1979 #, gcc-internal-format msgid "argument of %qE attribute is not \"ilink\" or \"firq\"" msgstr "" -#: config/arc/arc.c:1989 config/arm/arm.c:6861 config/arm/arm.c:6879 -#: config/arm/arm.c:7054 config/avr/avr.c:9718 config/avr/avr.c:9734 +#: config/arc/arc.c:1993 config/arm/arm.c:6866 config/arm/arm.c:6884 +#: config/arm/arm.c:7059 config/avr/avr.c:9718 config/avr/avr.c:9734 #: config/bfin/bfin.c:4708 config/bfin/bfin.c:4769 config/bfin/bfin.c:4798 #: config/csky/csky.c:6020 config/csky/csky.c:6048 #: config/epiphany/epiphany.c:491 config/gcn/gcn.c:312 -#: config/h8300/h8300.c:5459 config/i386/i386.c:6332 config/i386/i386.c:12169 -#: config/i386/i386.c:41194 config/i386/i386.c:41244 config/i386/i386.c:41314 +#: config/h8300/h8300.c:5459 config/i386/i386.c:6333 config/i386/i386.c:12170 +#: config/i386/i386.c:41176 config/i386/i386.c:41226 config/i386/i386.c:41296 #: config/m68k/m68k.c:788 config/mcore/mcore.c:3073 config/nvptx/nvptx.c:5059 -#: config/riscv/riscv.c:2796 config/rl78/rl78.c:820 config/rl78/rl78.c:889 +#: config/riscv/riscv.c:2824 config/rl78/rl78.c:820 config/rl78/rl78.c:889 #: config/rs6000/rs6000.c:32872 config/rx/rx.c:2721 config/rx/rx.c:2747 #: config/s390/s390.c:1049 config/s390/s390.c:1136 config/sh/sh.c:8444 #: config/sh/sh.c:8462 config/sh/sh.c:8486 config/sh/sh.c:8557 @@ -30114,135 +30120,135 @@ msgstr "" msgid "%qE attribute only applies to functions" msgstr "" -#: config/arc/arc.c:6784 +#: config/arc/arc.c:6799 #, gcc-internal-format msgid "%<__builtin_arc_aligned%> with non-constant alignment" msgstr "" -#: config/arc/arc.c:6792 +#: config/arc/arc.c:6807 #, gcc-internal-format msgid "invalid alignment value for %<__builtin_arc_aligned%>" msgstr "" -#: config/arc/arc.c:6955 +#: config/arc/arc.c:6970 #, gcc-internal-format msgid "operand 1 should be an unsigned 3-bit immediate" msgstr "" -#: config/arc/arc.c:6996 config/arc/arc.c:7093 +#: config/arc/arc.c:7011 config/arc/arc.c:7108 #, gcc-internal-format msgid "operand 2 should be an unsigned 3-bit value (I0-I7)" msgstr "" -#: config/arc/arc.c:7029 config/arc/arc.c:7061 +#: config/arc/arc.c:7044 config/arc/arc.c:7076 #, gcc-internal-format msgid "operand 1 should be an unsigned 3-bit value (I0-I7)" msgstr "" -#: config/arc/arc.c:7033 config/arc/arc.c:7065 +#: config/arc/arc.c:7048 config/arc/arc.c:7080 #, gcc-internal-format msgid "operand 2 should be an unsigned 8-bit value" msgstr "" -#: config/arc/arc.c:7097 +#: config/arc/arc.c:7112 #, gcc-internal-format msgid "operand 3 should be an unsigned 8-bit value" msgstr "" -#: config/arc/arc.c:7130 +#: config/arc/arc.c:7145 #, gcc-internal-format msgid "operand 4 should be an unsigned 8-bit value (0-255)" msgstr "" -#: config/arc/arc.c:7134 +#: config/arc/arc.c:7149 #, gcc-internal-format msgid "operand 3 should be an unsigned 3-bit value (I0-I7)" msgstr "" -#: config/arc/arc.c:7141 +#: config/arc/arc.c:7156 #, gcc-internal-format msgid "operand 2 should be an unsigned 3-bit value (subreg 0-7)" msgstr "" -#: config/arc/arc.c:7144 +#: config/arc/arc.c:7159 #, gcc-internal-format msgid "operand 2 should be an even 3-bit value (subreg 0,2,4,6)" msgstr "" -#: config/arc/arc.c:7191 +#: config/arc/arc.c:7206 #, gcc-internal-format, gfc-internal-format msgid "builtin requires an immediate for operand %d" msgstr "" -#: config/arc/arc.c:7196 +#: config/arc/arc.c:7211 #, gcc-internal-format, gfc-internal-format msgid "operand %d should be a 6 bit unsigned immediate" msgstr "" -#: config/arc/arc.c:7200 +#: config/arc/arc.c:7215 #, gcc-internal-format, gfc-internal-format msgid "operand %d should be a 8 bit unsigned immediate" msgstr "" -#: config/arc/arc.c:7204 +#: config/arc/arc.c:7219 #, gcc-internal-format, gfc-internal-format msgid "operand %d should be a 3 bit unsigned immediate" msgstr "" -#: config/arc/arc.c:7207 +#: config/arc/arc.c:7222 #, gcc-internal-format, gfc-internal-format msgid "unknown builtin immediate operand type for operand %d" msgstr "" -#: config/arc/arc.c:7258 +#: config/arc/arc.c:7273 #, gcc-internal-format msgid "" -"register number must be a compile-time constant. Try giving higher " +"register number must be a compile-time constant. Try giving higher " "optimization levels" msgstr "" -#: config/arc/arc.c:8251 +#: config/arc/arc.c:8268 #, gcc-internal-format -msgid "Insn addresses not set after shorten_branches" +msgid "insn addresses not set after shorten_branches" msgstr "" -#: config/arc/arc.c:8464 +#: config/arc/arc.c:8481 #, gcc-internal-format msgid "insn addresses not freed" msgstr "" -#: config/arc/arc.c:11015 +#: config/arc/arc.c:11034 #, gcc-internal-format msgid "%qE attribute only valid for ARCv2 architecture" msgstr "" -#: config/arc/arc.c:11023 config/arc/arc.c:11062 +#: config/arc/arc.c:11042 config/arc/arc.c:11081 #, gcc-internal-format msgid "argument of %qE attribute is missing" msgstr "" -#: config/arc/arc.c:11034 config/arc/arc.c:11073 config/arc/arc.c:11183 +#: config/arc/arc.c:11053 config/arc/arc.c:11092 config/arc/arc.c:11202 #: config/avr/avr.c:9790 #, gcc-internal-format msgid "%qE attribute allows only an integer constant argument" msgstr "" -#: config/arc/arc.c:11054 +#: config/arc/arc.c:11073 #, gcc-internal-format msgid "%qE attribute only valid for ARC EM architecture" msgstr "" -#: config/arc/arc.c:11109 +#: config/arc/arc.c:11128 #, gcc-internal-format msgid "%qE attribute only applies to types" msgstr "" -#: config/arc/arc.c:11115 +#: config/arc/arc.c:11134 #, gcc-internal-format msgid "argument of %qE attribute ignored" msgstr "" -#: config/arc/arc.c:11173 config/avr/avr.c:9777 config/bfin/bfin.c:4830 +#: config/arc/arc.c:11192 config/avr/avr.c:9777 config/bfin/bfin.c:4830 #: config/i386/winnt.c:63 config/msp430/msp430.c:2055 config/nvptx/nvptx.c:5082 #, gcc-internal-format msgid "%qE attribute only applies to variables" @@ -30661,87 +30667,92 @@ msgstr "" msgid "Thumb-1 hard-float VFP ABI" msgstr "" -#: config/arm/arm.c:6496 config/arm/arm.c:6709 config/arm/arm.c:6742 -#: config/arm/arm.c:27078 +#: config/arm/arm.c:6117 +#, gcc-internal-format +msgid "argument of type %qT not permitted with -mgeneral-regs-only" +msgstr "" + +#: config/arm/arm.c:6501 config/arm/arm.c:6714 config/arm/arm.c:6747 +#: config/arm/arm.c:27083 #, gcc-internal-format msgid "parameter passing for argument of type %qT changed in GCC 7.1" msgstr "" -#: config/arm/arm.c:7003 +#: config/arm/arm.c:7008 #, gcc-internal-format msgid "" "%qE attribute not available to functions with arguments passed on the stack" msgstr "" -#: config/arm/arm.c:7015 +#: config/arm/arm.c:7020 #, gcc-internal-format msgid "" "%qE attribute not available to functions with variable number of arguments" msgstr "" -#: config/arm/arm.c:7024 +#: config/arm/arm.c:7029 #, gcc-internal-format msgid "%qE attribute not available to functions that return value on the stack" msgstr "" -#: config/arm/arm.c:7046 config/arm/arm.c:7098 +#: config/arm/arm.c:7051 config/arm/arm.c:7103 #, gcc-internal-format msgid "%qE attribute ignored without %<-mcmse%> option." msgstr "" -#: config/arm/arm.c:7065 +#: config/arm/arm.c:7070 #, gcc-internal-format msgid "%qE attribute has no effect on functions with static linkage" msgstr "" -#: config/arm/arm.c:7114 +#: config/arm/arm.c:7119 #, gcc-internal-format msgid "%qE attribute only applies to base type of a function pointer" msgstr "" -#: config/arm/arm.c:8888 +#: config/arm/arm.c:8893 #, gcc-internal-format msgid "" "accessing thread-local storage is not currently supported with %<-mpure-code" "%> or %<-mslow-flash-data%>" msgstr "" -#: config/arm/arm.c:12534 +#: config/arm/arm.c:12539 #, gcc-internal-format msgid "%K%s %wd out of range %wd - %wd" msgstr "" -#: config/arm/arm.c:12537 +#: config/arm/arm.c:12542 #, gcc-internal-format msgid "%s %wd out of range %wd - %wd" msgstr "" -#: config/arm/arm.c:24019 +#: config/arm/arm.c:24024 #, gcc-internal-format msgid "unable to compute real location of stacked parameter" msgstr "" -#: config/arm/arm.c:24675 +#: config/arm/arm.c:24680 #, gcc-internal-format msgid "Unexpected thumb1 far jump" msgstr "" -#: config/arm/arm.c:24939 +#: config/arm/arm.c:24944 #, gcc-internal-format msgid "no low registers available for popping high registers" msgstr "" -#: config/arm/arm.c:25189 +#: config/arm/arm.c:25194 #, gcc-internal-format msgid "interrupt Service Routines cannot be coded in Thumb mode" msgstr "" -#: config/arm/arm.c:25420 +#: config/arm/arm.c:25425 #, gcc-internal-format msgid "%<-fstack-check=specific%> for Thumb-1" msgstr "" -#: config/arm/arm.c:30889 +#: config/arm/arm.c:30895 #, gcc-internal-format msgid "invalid fpu for target attribute or pragma %qs" msgstr "" @@ -30749,17 +30760,17 @@ msgstr "" #. This doesn't really make sense until we support #. general dynamic selection of the architecture and all #. sub-features. -#: config/arm/arm.c:30897 +#: config/arm/arm.c:30903 #, gcc-internal-format msgid "auto fpu selection not currently permitted here" msgstr "" -#: config/arm/arm.c:30910 +#: config/arm/arm.c:30916 #, gcc-internal-format msgid "invalid architecture for target attribute or pragma %qs" msgstr "" -#: config/arm/arm.c:30924 +#: config/arm/arm.c:30930 #, gcc-internal-format msgid "unknown target attribute or pragma %qs" msgstr "" @@ -30838,17 +30849,17 @@ msgstr "" msgid "%<-fPIE%> is not supported" msgstr "" -#: config/avr/avr.c:1047 config/avr/avr.c:1052 config/riscv/riscv.c:4787 +#: config/avr/avr.c:1047 config/avr/avr.c:1052 config/riscv/riscv.c:4815 #, gcc-internal-format msgid "function attributes %qs and %qs are mutually exclusive" msgstr "" -#: config/avr/avr.c:1073 config/riscv/riscv.c:4799 +#: config/avr/avr.c:1073 config/riscv/riscv.c:4827 #, gcc-internal-format msgid "%qs function cannot have arguments" msgstr "" -#: config/avr/avr.c:1076 config/riscv/riscv.c:4796 +#: config/avr/avr.c:1076 config/riscv/riscv.c:4824 #, gcc-internal-format msgid "%qs function cannot return a value" msgstr "" @@ -31513,61 +31524,61 @@ msgstr "" msgid "can%'t set position in PCH file: %m" msgstr "" -#: config/i386/i386.c:3353 +#: config/i386/i386.c:3354 #, gcc-internal-format msgid "wrong argument %qs to option %qs" msgstr "" -#: config/i386/i386.c:3359 +#: config/i386/i386.c:3360 #, gcc-internal-format msgid "size ranges of option %qs should be increasing" msgstr "" -#: config/i386/i386.c:3369 +#: config/i386/i386.c:3370 #, gcc-internal-format msgid "wrong strategy name %qs specified for option %qs" msgstr "" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386.c:3395 +#: config/i386/i386.c:3396 #, gcc-internal-format msgid "" "strategy name %qs specified for option %qs not supported for 32-bit code" msgstr "" -#: config/i386/i386.c:3408 +#: config/i386/i386.c:3409 #, gcc-internal-format msgid "unknown alignment %qs specified for option %qs" msgstr "" -#: config/i386/i386.c:3418 +#: config/i386/i386.c:3419 #, gcc-internal-format msgid "the max value for the last size range should be -1 for option %qs" msgstr "" -#: config/i386/i386.c:3425 +#: config/i386/i386.c:3426 #, gcc-internal-format msgid "too many size ranges specified in option %qs" msgstr "" -#: config/i386/i386.c:3478 +#: config/i386/i386.c:3479 #, gcc-internal-format msgid "unknown parameter to option %<-mtune-ctrl%>: %s" msgstr "" -#: config/i386/i386.c:3598 +#: config/i386/i386.c:3599 #, gcc-internal-format msgid "Intel MCU psABI isn%'t supported in %s mode" msgstr "" -#: config/i386/i386.c:3647 +#: config/i386/i386.c:3648 #, gcc-internal-format msgid "" "%<-mtune=x86-64%> is deprecated; use %<-mtune=k8%> or %<-mtune=generic%> " "instead as appropriate" msgstr "" -#: config/i386/i386.c:3649 +#: config/i386/i386.c:3650 #, gcc-internal-format msgid "" "% is deprecated; use % or " @@ -31575,516 +31586,516 @@ msgid "" msgstr "" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386.c:3675 +#: config/i386/i386.c:3676 #, gcc-internal-format msgid "%<-mstringop-strategy=rep_8byte%> not supported for 32-bit code" msgstr "" -#: config/i386/i386.c:3692 +#: config/i386/i386.c:3693 #, gcc-internal-format msgid "address mode %qs not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:3704 +#: config/i386/i386.c:3705 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with X32 ABI" msgstr "" -#: config/i386/i386.c:3708 +#: config/i386/i386.c:3709 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with %<-fsanitize=address%>" msgstr "" -#: config/i386/i386.c:3710 +#: config/i386/i386.c:3711 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with %<-fsanitize=kernel-address%>" msgstr "" -#: config/i386/i386.c:3712 +#: config/i386/i386.c:3713 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with %<-fsanitize=thread%>" msgstr "" -#: config/i386/i386.c:3729 config/i386/i386.c:3738 config/i386/i386.c:3750 -#: config/i386/i386.c:3761 config/i386/i386.c:3772 +#: config/i386/i386.c:3730 config/i386/i386.c:3739 config/i386/i386.c:3751 +#: config/i386/i386.c:3762 config/i386/i386.c:3773 #, gcc-internal-format msgid "code model %qs not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:3741 config/i386/i386.c:3753 +#: config/i386/i386.c:3742 config/i386/i386.c:3754 #, gcc-internal-format msgid "code model %qs not supported in x32 mode" msgstr "" -#: config/i386/i386.c:3759 config/i386/i386.c:3768 config/i386/i386.c:5089 +#: config/i386/i386.c:3760 config/i386/i386.c:3769 config/i386/i386.c:5090 #, gcc-internal-format, gfc-internal-format msgid "code model %s does not support PIC mode" msgstr "" -#: config/i386/i386.c:3796 +#: config/i386/i386.c:3797 #, gcc-internal-format msgid "%<-masm=intel%> not supported in this configuration" msgstr "" -#: config/i386/i386.c:3801 +#: config/i386/i386.c:3802 #, gcc-internal-format, gfc-internal-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:3810 +#: config/i386/i386.c:3811 #, gcc-internal-format msgid "% CPU can be used only for %<-mtune=%> switch" msgstr "" -#: config/i386/i386.c:3812 +#: config/i386/i386.c:3813 #, gcc-internal-format msgid "% CPU can be used only for % attribute" msgstr "" -#: config/i386/i386.c:3819 +#: config/i386/i386.c:3820 #, gcc-internal-format msgid "% CPU can be used only for %<-mtune=%> switch" msgstr "" -#: config/i386/i386.c:3821 +#: config/i386/i386.c:3822 #, gcc-internal-format msgid "% CPU can be used only for % attribute" msgstr "" -#: config/i386/i386.c:3829 config/i386/i386.c:4137 +#: config/i386/i386.c:3830 config/i386/i386.c:4138 #, gcc-internal-format msgid "CPU you selected does not support x86-64 instruction set" msgstr "" -#: config/i386/i386.c:4077 +#: config/i386/i386.c:4078 #, gcc-internal-format msgid "bad value (%qs) for %<-march=%> switch" msgstr "" -#: config/i386/i386.c:4078 +#: config/i386/i386.c:4079 #, gcc-internal-format msgid "bad value (%qs) for % attribute" msgstr "" -#: config/i386/i386.c:4100 +#: config/i386/i386.c:4101 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4102 +#: config/i386/i386.c:4103 #, gcc-internal-format msgid "" "valid arguments to % attribute are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4107 +#: config/i386/i386.c:4108 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s" msgstr "" -#: config/i386/i386.c:4108 +#: config/i386/i386.c:4109 #, gcc-internal-format msgid "valid arguments to % attribute are: %s" msgstr "" -#: config/i386/i386.c:4156 +#: config/i386/i386.c:4157 #, gcc-internal-format msgid "bad value (%qs) for %<-mtune=%> switch" msgstr "" -#: config/i386/i386.c:4157 +#: config/i386/i386.c:4158 #, gcc-internal-format msgid "bad value (%qs) for % attribute" msgstr "" -#: config/i386/i386.c:4177 +#: config/i386/i386.c:4178 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4179 +#: config/i386/i386.c:4180 #, gcc-internal-format msgid "" "valid arguments to % attribute are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4184 +#: config/i386/i386.c:4185 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s" msgstr "" -#: config/i386/i386.c:4185 +#: config/i386/i386.c:4186 #, gcc-internal-format msgid "valid arguments to % attribute are: %s" msgstr "" -#: config/i386/i386.c:4251 +#: config/i386/i386.c:4252 #, gcc-internal-format msgid "%<-mregparm%> is ignored in 64-bit mode" msgstr "" -#: config/i386/i386.c:4253 +#: config/i386/i386.c:4254 #, gcc-internal-format msgid "%<-mregparm%> is ignored for Intel MCU psABI" msgstr "" -#: config/i386/i386.c:4256 +#: config/i386/i386.c:4257 #, gcc-internal-format msgid "%<-mregparm=%d%> is not between 0 and %d" msgstr "" -#: config/i386/i386.c:4284 +#: config/i386/i386.c:4285 #, gcc-internal-format msgid "%<-mrtd%> is ignored in 64bit mode" msgstr "" -#: config/i386/i386.c:4285 +#: config/i386/i386.c:4286 #, gcc-internal-format msgid "% is ignored in 64bit mode" msgstr "" -#: config/i386/i386.c:4364 +#: config/i386/i386.c:4365 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary%> is not supported for this target" msgstr "" -#: config/i386/i386.c:4367 +#: config/i386/i386.c:4368 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary=%d%> is not between %d and %d" msgstr "" -#: config/i386/i386.c:4390 +#: config/i386/i386.c:4391 #, gcc-internal-format msgid "%<-mincoming-stack-boundary=%d%> is not between %d and 12" msgstr "" -#: config/i386/i386.c:4403 +#: config/i386/i386.c:4404 #, gcc-internal-format msgid "%<-mnop-mcount%> is not compatible with this target" msgstr "" -#: config/i386/i386.c:4406 +#: config/i386/i386.c:4407 #, gcc-internal-format msgid "%<-mnop-mcount%> is not implemented for %<-fPIC%>" msgstr "" -#: config/i386/i386.c:4412 +#: config/i386/i386.c:4413 #, gcc-internal-format msgid "%<-msseregparm%> used without SSE enabled" msgstr "" -#: config/i386/i386.c:4413 +#: config/i386/i386.c:4414 #, gcc-internal-format msgid "% used without SSE enabled" msgstr "" -#: config/i386/i386.c:4423 +#: config/i386/i386.c:4424 #, gcc-internal-format msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:4430 +#: config/i386/i386.c:4431 #, gcc-internal-format msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:4480 +#: config/i386/i386.c:4481 #, gcc-internal-format msgid "stack probing requires %<-maccumulate-outgoing-args%> for correctness" msgstr "" -#: config/i386/i386.c:4482 +#: config/i386/i386.c:4483 #, gcc-internal-format msgid "" "stack probing requires % for " "correctness" msgstr "" -#: config/i386/i386.c:4496 +#: config/i386/i386.c:4497 #, gcc-internal-format msgid "fixed ebp register requires %<-maccumulate-outgoing-args%>" msgstr "" -#: config/i386/i386.c:4498 +#: config/i386/i386.c:4499 #, gcc-internal-format msgid "fixed ebp register requires %" msgstr "" -#: config/i386/i386.c:4608 +#: config/i386/i386.c:4609 #, gcc-internal-format msgid "%<-mfentry%> isn%'t supported for 32-bit in combination with %<-fpic%>" msgstr "" -#: config/i386/i386.c:4611 +#: config/i386/i386.c:4612 #, gcc-internal-format msgid "%<-mno-fentry%> isn%'t compatible with SEH" msgstr "" -#: config/i386/i386.c:4615 +#: config/i386/i386.c:4616 #, gcc-internal-format msgid "%<-mcall-ms2sysv-xlogues%> isn%'t currently supported with SEH" msgstr "" -#: config/i386/i386.c:4680 +#: config/i386/i386.c:4681 #, gcc-internal-format msgid "unknown option for %<-mrecip=%s%>" msgstr "" -#: config/i386/i386.c:4739 +#: config/i386/i386.c:4740 #, gcc-internal-format msgid "%qs is not a valid number in %<-mstack-protector-guard-offset=%>" msgstr "" -#: config/i386/i386.c:4744 +#: config/i386/i386.c:4745 #, gcc-internal-format msgid "%qs is not a valid offset in %<-mstack-protector-guard-offset=%>" msgstr "" -#: config/i386/i386.c:4772 +#: config/i386/i386.c:4773 #, gcc-internal-format msgid "%qs is not a valid base register in %<-mstack-protector-guard-reg=%>" msgstr "" -#: config/i386/i386.c:5384 config/i386/i386.c:5431 config/s390/s390.c:15465 -#: config/s390/s390.c:15515 config/s390/s390.c:15532 +#: config/i386/i386.c:5385 config/i386/i386.c:5432 config/s390/s390.c:15475 +#: config/s390/s390.c:15525 config/s390/s390.c:15542 #, gcc-internal-format, gfc-internal-format msgid "attribute(target(\"%s\")) is unknown" msgstr "" -#: config/i386/i386.c:5412 +#: config/i386/i386.c:5413 #, gcc-internal-format, gfc-internal-format msgid "option(\"%s\") was already specified" msgstr "" -#: config/i386/i386.c:5716 +#: config/i386/i386.c:5717 #, gcc-internal-format msgid "interrupt and naked attributes are not compatible" msgstr "" -#: config/i386/i386.c:5731 +#: config/i386/i386.c:5732 #, gcc-internal-format msgid "only DWARF debug format is supported for interrupt service routine" msgstr "" -#: config/i386/i386.c:5780 +#: config/i386/i386.c:5781 #, gcc-internal-format msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible" msgstr "" -#: config/i386/i386.c:5788 +#: config/i386/i386.c:5789 #, gcc-internal-format msgid "%<-mindirect-branch%> and %<-fcf-protection%> are not compatible" msgstr "" -#: config/i386/i386.c:5823 +#: config/i386/i386.c:5824 #, gcc-internal-format msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible" msgstr "" -#: config/i386/i386.c:5831 +#: config/i386/i386.c:5832 #, gcc-internal-format msgid "%<-mfunction-return%> and %<-fcf-protection%> are not compatible" msgstr "" -#: config/i386/i386.c:5925 +#: config/i386/i386.c:5926 #, gcc-internal-format msgid "%s instructions aren%'t allowed in an exception service routine" msgstr "" -#: config/i386/i386.c:5927 +#: config/i386/i386.c:5928 #, gcc-internal-format msgid "%s instructions aren%'t allowed in an interrupt service routine" msgstr "" -#: config/i386/i386.c:5931 +#: config/i386/i386.c:5932 #, gcc-internal-format msgid "" "%s instructions aren%'t allowed in a function with the " "% attribute" msgstr "" -#: config/i386/i386.c:6345 config/i386/i386.c:6396 +#: config/i386/i386.c:6346 config/i386/i386.c:6397 #, gcc-internal-format msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:6350 +#: config/i386/i386.c:6351 #, gcc-internal-format msgid "regparam and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6357 config/i386/i386.c:41214 +#: config/i386/i386.c:6358 config/i386/i386.c:41196 #, gcc-internal-format msgid "%qE attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:6363 +#: config/i386/i386.c:6364 #, gcc-internal-format msgid "argument to %qE attribute larger than %d" msgstr "" -#: config/i386/i386.c:6388 config/i386/i386.c:6431 +#: config/i386/i386.c:6389 config/i386/i386.c:6432 #, gcc-internal-format msgid "fastcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386.c:6392 +#: config/i386/i386.c:6393 #, gcc-internal-format msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6400 config/i386/i386.c:6449 +#: config/i386/i386.c:6401 config/i386/i386.c:6450 #, gcc-internal-format msgid "fastcall and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6410 config/i386/i386.c:6427 +#: config/i386/i386.c:6411 config/i386/i386.c:6428 #, gcc-internal-format msgid "stdcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386.c:6414 +#: config/i386/i386.c:6415 #, gcc-internal-format msgid "stdcall and fastcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6418 config/i386/i386.c:6445 +#: config/i386/i386.c:6419 config/i386/i386.c:6446 #, gcc-internal-format msgid "stdcall and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6435 config/i386/i386.c:6453 +#: config/i386/i386.c:6436 config/i386/i386.c:6454 #, gcc-internal-format msgid "cdecl and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6441 +#: config/i386/i386.c:6442 #, gcc-internal-format msgid "%qE attribute is used for non-class method" msgstr "" -#: config/i386/i386.c:6685 +#: config/i386/i386.c:6686 #, gcc-internal-format msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:6688 +#: config/i386/i386.c:6689 #, gcc-internal-format msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:7003 +#: config/i386/i386.c:7004 #, gcc-internal-format msgid "X32 does not support ms_abi attribute" msgstr "" -#: config/i386/i386.c:7037 +#: config/i386/i386.c:7038 #, gcc-internal-format msgid "ms_hook_prologue is not compatible with nested function" msgstr "" -#: config/i386/i386.c:7376 +#: config/i386/i386.c:7377 #, gcc-internal-format msgid "AVX512F vector argument without AVX512F enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7382 +#: config/i386/i386.c:7383 #, gcc-internal-format msgid "AVX512F vector return without AVX512F enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7396 +#: config/i386/i386.c:7397 #, gcc-internal-format msgid "AVX vector argument without AVX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7402 +#: config/i386/i386.c:7403 #, gcc-internal-format msgid "AVX vector return without AVX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7418 +#: config/i386/i386.c:7419 #, gcc-internal-format msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7424 +#: config/i386/i386.c:7425 #, gcc-internal-format msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7440 +#: config/i386/i386.c:7441 #, gcc-internal-format msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7446 +#: config/i386/i386.c:7447 #, gcc-internal-format msgid "MMX vector return without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7627 +#: config/i386/i386.c:7628 #, gcc-internal-format msgid "" "the ABI of passing struct with a flexible array member has changed in GCC 4.4" msgstr "" -#: config/i386/i386.c:7744 +#: config/i386/i386.c:7745 #, gcc-internal-format msgid "the ABI of passing union with long double has changed in GCC 4.4" msgstr "" -#: config/i386/i386.c:7862 +#: config/i386/i386.c:7863 #, gcc-internal-format msgid "" "the ABI of passing structure with complex float member has changed in GCC 4.4" msgstr "" -#: config/i386/i386.c:8025 +#: config/i386/i386.c:8026 #, gcc-internal-format msgid "SSE register return with SSE disabled" msgstr "" -#: config/i386/i386.c:8031 +#: config/i386/i386.c:8032 #, gcc-internal-format msgid "SSE register argument with SSE disabled" msgstr "" -#: config/i386/i386.c:8047 +#: config/i386/i386.c:8048 #, gcc-internal-format msgid "x87 register return with x87 disabled" msgstr "" -#: config/i386/i386.c:8357 config/i386/i386.c:8597 config/i386/i386.c:9097 +#: config/i386/i386.c:8358 config/i386/i386.c:8598 config/i386/i386.c:9098 #, gcc-internal-format msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:8359 config/i386/i386.c:8599 config/i386/i386.c:9099 +#: config/i386/i386.c:8360 config/i386/i386.c:8600 config/i386/i386.c:9100 #, gcc-internal-format msgid "" "this is a GCC bug that can be worked around by adding attribute used to " "function called" msgstr "" -#: config/i386/i386.c:9003 +#: config/i386/i386.c:9004 #, gcc-internal-format, gfc-internal-format msgid "" "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6" msgstr "" -#: config/i386/i386.c:11285 +#: config/i386/i386.c:11286 #, gcc-internal-format msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s" msgstr "" -#: config/i386/i386.c:13284 +#: config/i386/i386.c:13285 #, gcc-internal-format msgid "" "ms_hook_prologue attribute isn%'t compatible with %<-mfentry%> for 32-bit" msgstr "" -#: config/i386/i386.c:13374 +#: config/i386/i386.c:13375 #, gcc-internal-format msgid "" "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service " @@ -32092,12 +32103,12 @@ msgid "" "return." msgstr "" -#: config/i386/i386.c:14664 +#: config/i386/i386.c:14665 #, gcc-internal-format msgid "%<-fsplit-stack%> does not support fastcall with nested function" msgstr "" -#: config/i386/i386.c:14684 +#: config/i386/i386.c:14685 #, gcc-internal-format msgid "" "%<-fsplit-stack%> does not support 2 register parameters for a nested " @@ -32106,302 +32117,302 @@ msgstr "" #. FIXME: We could make this work by pushing a register #. around the addition and comparison. -#: config/i386/i386.c:14695 +#: config/i386/i386.c:14696 #, gcc-internal-format msgid "%<-fsplit-stack%> does not support 3 register parameters" msgstr "" -#: config/i386/i386.c:17635 +#: config/i386/i386.c:17636 #, gcc-internal-format msgid "% modifier on non-integer register" msgstr "" -#: config/i386/i386.c:17646 config/i386/i386.c:17660 +#: config/i386/i386.c:17647 config/i386/i386.c:17661 #, gcc-internal-format msgid "unsupported size for integer register" msgstr "" -#: config/i386/i386.c:17692 +#: config/i386/i386.c:17693 #, gcc-internal-format msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:17707 +#: config/i386/i386.c:17708 #, gcc-internal-format msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:17899 +#: config/i386/i386.c:17900 #, gcc-internal-format msgid "non-integer operand used with operand code %" msgstr "" -#: config/i386/i386.c:28369 +#: config/i386/i386.c:28372 #, gcc-internal-format msgid "interrupt service routine can%'t be called directly" msgstr "" -#: config/i386/i386.c:29748 +#: config/i386/i386.c:29751 #, gcc-internal-format msgid "" "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)" msgstr "" -#: config/i386/i386.c:32093 +#: config/i386/i386.c:32250 #, gcc-internal-format msgid "no dispatcher found for the versioning attributes" msgstr "" -#: config/i386/i386.c:32143 -#, gcc-internal-format, gfc-internal-format -msgid "no dispatcher found for %s" +#: config/i386/i386.c:32300 +#, gcc-internal-format +msgid "ISA %qs is not supported in % attribute, use % syntax" msgstr "" -#: config/i386/i386.c:32153 +#: config/i386/i386.c:32311 #, gcc-internal-format, gfc-internal-format msgid "no dispatcher found for the versioning attributes: %s" msgstr "" -#: config/i386/i386.c:32315 +#: config/i386/i386.c:32473 #, gcc-internal-format msgid "" "function versions cannot be marked as gnu_inline, bodies have to be generated" msgstr "" -#: config/i386/i386.c:32320 config/i386/i386.c:32597 +#: config/i386/i386.c:32478 config/i386/i386.c:32755 #, gcc-internal-format msgid "virtual function multiversioning not supported" msgstr "" -#: config/i386/i386.c:32453 config/rs6000/rs6000.c:37466 +#: config/i386/i386.c:32611 config/rs6000/rs6000.c:37466 #, gcc-internal-format msgid "multiversioning needs ifunc which is not supported on this target" msgstr "" -#: config/i386/i386.c:32876 +#: config/i386/i386.c:32853 #, gcc-internal-format msgid "parameter to builtin must be a string constant or literal" msgstr "" -#: config/i386/i386.c:32901 config/i386/i386.c:32951 +#: config/i386/i386.c:32878 config/i386/i386.c:32928 #, gcc-internal-format, gfc-internal-format msgid "parameter to builtin not valid: %s" msgstr "" -#: config/i386/i386.c:34181 config/i386/i386.c:35621 +#: config/i386/i386.c:34158 config/i386/i386.c:35598 #, gcc-internal-format msgid "the last argument must be a 2-bit immediate" msgstr "" -#: config/i386/i386.c:34576 +#: config/i386/i386.c:34553 #, gcc-internal-format msgid "the fifth argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:34671 +#: config/i386/i386.c:34648 #, gcc-internal-format msgid "the third argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:35552 +#: config/i386/i386.c:35529 #, gcc-internal-format msgid "the last argument must be an 1-bit immediate" msgstr "" -#: config/i386/i386.c:35567 +#: config/i386/i386.c:35544 #, gcc-internal-format msgid "the last argument must be a 3-bit immediate" msgstr "" -#: config/i386/i386.c:35600 +#: config/i386/i386.c:35577 #, gcc-internal-format msgid "the last argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386.c:35640 +#: config/i386/i386.c:35617 #, gcc-internal-format msgid "the last argument must be a 1-bit immediate" msgstr "" -#: config/i386/i386.c:35653 +#: config/i386/i386.c:35630 #, gcc-internal-format msgid "the last argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386.c:35663 +#: config/i386/i386.c:35640 #, gcc-internal-format msgid "the next to last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:35668 config/i386/i386.c:36455 +#: config/i386/i386.c:35645 config/i386/i386.c:36432 #, gcc-internal-format msgid "the last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:35802 +#: config/i386/i386.c:35779 #, gcc-internal-format msgid "the third argument must be comparison constant" msgstr "" -#: config/i386/i386.c:35807 +#: config/i386/i386.c:35784 #, gcc-internal-format msgid "incorrect comparison mode" msgstr "" -#: config/i386/i386.c:35813 config/i386/i386.c:36020 +#: config/i386/i386.c:35790 config/i386/i386.c:35997 #, gcc-internal-format msgid "incorrect rounding operand" msgstr "" -#: config/i386/i386.c:36002 +#: config/i386/i386.c:35979 #, gcc-internal-format msgid "the immediate argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386.c:36008 +#: config/i386/i386.c:35985 #, gcc-internal-format msgid "the immediate argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386.c:36011 +#: config/i386/i386.c:35988 #, gcc-internal-format msgid "the immediate argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:36453 +#: config/i386/i386.c:36430 #, gcc-internal-format msgid "the last argument must be a 32-bit immediate" msgstr "" -#: config/i386/i386.c:36535 config/rs6000/rs6000.c:14703 +#: config/i386/i386.c:36512 config/rs6000/rs6000.c:14703 #, gcc-internal-format msgid "selector must be an integer constant in the range 0..%wi" msgstr "" -#: config/i386/i386.c:36715 +#: config/i386/i386.c:36697 #, gcc-internal-format msgid "%qE needs unknown isa option" msgstr "" -#: config/i386/i386.c:36719 +#: config/i386/i386.c:36701 #, gcc-internal-format msgid "%qE needs isa option %s" msgstr "" -#: config/i386/i386.c:37298 +#: config/i386/i386.c:37280 #, gcc-internal-format msgid "last argument must be an immediate" msgstr "" -#: config/i386/i386.c:38054 config/i386/i386.c:38266 +#: config/i386/i386.c:38036 config/i386/i386.c:38248 #, gcc-internal-format msgid "the last argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386.c:38319 +#: config/i386/i386.c:38301 #, gcc-internal-format msgid "the forth argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386.c:38325 +#: config/i386/i386.c:38307 #, gcc-internal-format msgid "incorrect hint operand" msgstr "" -#: config/i386/i386.c:38344 +#: config/i386/i386.c:38326 #, gcc-internal-format msgid "the argument to % intrinsic must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:41201 +#: config/i386/i386.c:41183 #, gcc-internal-format msgid "%qE attribute only available for 32-bit" msgstr "" -#: config/i386/i386.c:41222 +#: config/i386/i386.c:41204 #, gcc-internal-format msgid "argument to %qE attribute is neither zero, nor one" msgstr "" -#: config/i386/i386.c:41255 config/i386/i386.c:41264 +#: config/i386/i386.c:41237 config/i386/i386.c:41246 #, gcc-internal-format msgid "ms_abi and sysv_abi attributes are not compatible" msgstr "" -#: config/i386/i386.c:41300 config/rs6000/rs6000.c:32977 +#: config/i386/i386.c:41282 config/rs6000/rs6000.c:32977 #, gcc-internal-format msgid "%qE incompatible attribute ignored" msgstr "" -#: config/i386/i386.c:41325 config/i386/i386.c:41347 config/ia64/ia64.c:815 +#: config/i386/i386.c:41307 config/i386/i386.c:41329 config/ia64/ia64.c:815 #: config/s390/s390.c:1146 #, gcc-internal-format msgid "%qE attribute requires a string constant argument" msgstr "" -#: config/i386/i386.c:41335 config/i386/i386.c:41357 config/s390/s390.c:1175 +#: config/i386/i386.c:41317 config/i386/i386.c:41339 config/s390/s390.c:1175 #, gcc-internal-format msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)" msgstr "" -#: config/i386/i386.c:41389 +#: config/i386/i386.c:41371 #, gcc-internal-format msgid "interrupt service routine should have a pointer as the first argument" msgstr "" -#: config/i386/i386.c:41396 +#: config/i386/i386.c:41378 #, gcc-internal-format msgid "interrupt service routine should have %qs as the second argument" msgstr "" -#: config/i386/i386.c:41407 +#: config/i386/i386.c:41389 #, gcc-internal-format msgid "" "interrupt service routine can only have a pointer argument and an optional " "integer argument" msgstr "" -#: config/i386/i386.c:41410 +#: config/i386/i386.c:41392 #, gcc-internal-format msgid "interrupt service routine can%'t have non-void return value" msgstr "" -#: config/i386/i386.c:44273 +#: config/i386/i386.c:44255 #, gcc-internal-format msgid "alternatives not allowed in asm flag output" msgstr "" -#: config/i386/i386.c:44337 +#: config/i386/i386.c:44319 #, gcc-internal-format msgid "unknown asm flag output %qs" msgstr "" -#: config/i386/i386.c:44366 +#: config/i386/i386.c:44348 #, gcc-internal-format msgid "invalid type for asm flag output" msgstr "" -#: config/i386/i386.c:50557 +#: config/i386/i386.c:50539 #, gcc-internal-format msgid "unknown architecture specific memory model" msgstr "" -#: config/i386/i386.c:50564 +#: config/i386/i386.c:50546 #, gcc-internal-format msgid "HLE_ACQUIRE not used with ACQUIRE or stronger memory model" msgstr "" -#: config/i386/i386.c:50570 +#: config/i386/i386.c:50552 #, gcc-internal-format msgid "HLE_RELEASE not used with RELEASE or stronger memory model" msgstr "" -#: config/i386/i386.c:50615 +#: config/i386/i386.c:50597 #, gcc-internal-format msgid "unsupported return type %qT for simd" msgstr "" -#: config/i386/i386.c:50645 +#: config/i386/i386.c:50627 #, gcc-internal-format msgid "unsupported argument type %qT for simd" msgstr "" @@ -32679,7 +32690,7 @@ msgstr "" msgid "%qE redeclared with conflicting %qs attributes" msgstr "" -#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:2824 +#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:2852 #, gcc-internal-format msgid "%qE attribute requires a string argument" msgstr "" @@ -33624,45 +33635,45 @@ msgstr "" msgid "unknown cpu %qs for %<-mtune%>" msgstr "" -#: config/riscv/riscv.c:2835 +#: config/riscv/riscv.c:2863 #, gcc-internal-format msgid "" "argument to %qE attribute is not \"user\", \"supervisor\", or \"machine\"" msgstr "" -#: config/riscv/riscv.c:4461 +#: config/riscv/riscv.c:4489 #, gcc-internal-format msgid "%<-mdiv%> requires %<-march%> to subsume the % extension" msgstr "" -#: config/riscv/riscv.c:4502 +#: config/riscv/riscv.c:4530 #, gcc-internal-format msgid "requested ABI requires %<-march%> to subsume the %qc extension" msgstr "" -#: config/riscv/riscv.c:4506 +#: config/riscv/riscv.c:4534 #, gcc-internal-format msgid "rv32e requires ilp32e ABI" msgstr "" -#: config/riscv/riscv.c:4510 +#: config/riscv/riscv.c:4538 #, gcc-internal-format msgid "ABI requires %<-march=rv%d%>" msgstr "" -#: config/riscv/riscv.c:4520 +#: config/riscv/riscv.c:4548 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary=%d%> must be between %d and %d" msgstr "" -#: config/riscv/riscv.c:4533 +#: config/riscv/riscv.c:4561 #, gcc-internal-format msgid "" "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-" "attribute%>]" msgstr "" -#: config/riscv/riscv.c:4825 +#: config/riscv/riscv.c:4853 #, gcc-internal-format msgid "%qs function cannot have different interrupt type" msgstr "" @@ -34673,14 +34684,14 @@ msgstr "" msgid "total size of local variables exceeds architecture limit" msgstr "" -#: config/s390/s390.c:11107 +#: config/s390/s390.c:11117 #, gcc-internal-format msgid "" "frame size of function %qs is %wd bytes exceeding user provided stack limit " "of %d bytes. An unconditional trap is added." msgstr "" -#: config/s390/s390.c:11123 +#: config/s390/s390.c:11133 #, gcc-internal-format msgid "" "frame size of function %qs is %wd bytes which is more than half the stack " @@ -34688,103 +34699,103 @@ msgid "" "function." msgstr "" -#: config/s390/s390.c:11151 +#: config/s390/s390.c:11161 #, gcc-internal-format msgid "frame size of %qs is %wd bytes" msgstr "" -#: config/s390/s390.c:11155 +#: config/s390/s390.c:11165 #, gcc-internal-format msgid "%qs uses dynamic stack allocation" msgstr "" -#: config/s390/s390.c:12761 +#: config/s390/s390.c:12771 #, gcc-internal-format msgid "nested functions cannot be profiled with %<-mfentry%> on s390" msgstr "" -#: config/s390/s390.c:15032 +#: config/s390/s390.c:15042 #, gcc-internal-format msgid "64-bit ABI not supported in ESA/390 mode" msgstr "" -#: config/s390/s390.c:15039 +#: config/s390/s390.c:15049 #, gcc-internal-format msgid "thunk-inline is only supported with %<-mindirect-branch-jump%>" msgstr "" -#: config/s390/s390.c:15074 +#: config/s390/s390.c:15084 #, gcc-internal-format, gfc-internal-format msgid "hardware vector support not available on %s" msgstr "" -#: config/s390/s390.c:15077 +#: config/s390/s390.c:15087 #, gcc-internal-format msgid "hardware vector support not available with %<-msoft-float%>" msgstr "" -#: config/s390/s390.c:15106 +#: config/s390/s390.c:15116 #, gcc-internal-format, gfc-internal-format msgid "hardware decimal floating point instructions not available on %s" msgstr "" -#: config/s390/s390.c:15110 +#: config/s390/s390.c:15120 #, gcc-internal-format msgid "" "hardware decimal floating point instructions not available in ESA/390 mode" msgstr "" -#: config/s390/s390.c:15122 +#: config/s390/s390.c:15132 #, gcc-internal-format msgid "%<-mhard-dfp%> can%'t be used in conjunction with %<-msoft-float%>" msgstr "" -#: config/s390/s390.c:15131 +#: config/s390/s390.c:15141 #, gcc-internal-format msgid "" "%<-mbackchain%> %<-mpacked-stack%> %<-mhard-float%> are not supported in " "combination" msgstr "" -#: config/s390/s390.c:15137 +#: config/s390/s390.c:15147 #, gcc-internal-format msgid "stack size must be greater than the stack guard value" msgstr "" -#: config/s390/s390.c:15139 +#: config/s390/s390.c:15149 #, gcc-internal-format msgid "stack size must not be greater than 64k" msgstr "" -#: config/s390/s390.c:15142 +#: config/s390/s390.c:15152 #, gcc-internal-format msgid "%<-mstack-guard%> implies use of %<-mstack-size%>" msgstr "" -#: config/s390/s390.c:15231 +#: config/s390/s390.c:15241 #, gcc-internal-format msgid "%<-mfentry%> is supported only for 64-bit CPUs" msgstr "" #. argument is not a plain number -#: config/s390/s390.c:15267 +#: config/s390/s390.c:15277 #, gcc-internal-format msgid "arguments to %qs should be non-negative integers" msgstr "" -#: config/s390/s390.c:15274 +#: config/s390/s390.c:15284 #, gcc-internal-format msgid "argument to %qs is too large (max. %d)" msgstr "" -#: config/s390/s390.c:15304 +#: config/s390/s390.c:15314 #, 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.c:15471 +#: config/s390/s390.c:15481 #, gcc-internal-format msgid "value %qs is not supported by attribute %" msgstr "" @@ -35252,8 +35263,8 @@ msgstr "" msgid "could not read the BRIG file" msgstr "" -#: c/c-convert.c:101 c/c-typeck.c:2176 c/c-typeck.c:12553 cp/typeck.c:2031 -#: cp/typeck.c:8137 cp/typeck.c:8915 +#: c/c-convert.c:101 c/c-typeck.c:2176 c/c-typeck.c:12558 cp/typeck.c:2048 +#: cp/typeck.c:8155 cp/typeck.c:8933 #, gcc-internal-format msgid "void value not ignored as it ought to be" msgstr "" @@ -35313,7 +35324,7 @@ msgstr "" msgid "type of array %q+D completed incompatibly with implicit initialization" msgstr "" -#: c/c-decl.c:1589 c/c-decl.c:6901 c/c-decl.c:7774 c/c-decl.c:8582 +#: c/c-decl.c:1589 c/c-decl.c:6918 c/c-decl.c:7791 c/c-decl.c:8599 #, gcc-internal-format msgid "originally defined here" msgstr "" @@ -35382,7 +35393,7 @@ msgstr "" msgid "built-in function %q+D declared as non-function" msgstr "" -#: c/c-decl.c:1932 c/c-decl.c:2977 +#: c/c-decl.c:1932 c/c-decl.c:2994 #, gcc-internal-format msgid "declaration of %q+D shadows a built-in function" msgstr "" @@ -35528,227 +35539,227 @@ msgstr "" msgid "redundant redeclaration of %q+D" msgstr "" -#: c/c-decl.c:2935 +#: c/c-decl.c:2952 #, gcc-internal-format msgid "declaration of %q+D shadows previous non-variable" msgstr "" -#: c/c-decl.c:2957 +#: c/c-decl.c:2974 #, gcc-internal-format msgid "declaration of %qD shadows a parameter" msgstr "" -#: c/c-decl.c:2970 cp/name-lookup.c:2827 +#: c/c-decl.c:2987 cp/name-lookup.c:2827 #, gcc-internal-format msgid "declaration of %qD shadows a global declaration" msgstr "" -#: c/c-decl.c:2996 +#: c/c-decl.c:3013 #, gcc-internal-format msgid "declaration of %qD shadows a previous local" msgstr "" -#: c/c-decl.c:3002 cp/name-lookup.c:2611 +#: c/c-decl.c:3019 cp/name-lookup.c:2611 #, gcc-internal-format msgid "shadowed declaration is here" msgstr "" -#: c/c-decl.c:3129 +#: c/c-decl.c:3146 #, gcc-internal-format msgid "nested extern declaration of %qD" msgstr "" -#: c/c-decl.c:3292 c/c-decl.c:3306 +#: c/c-decl.c:3309 c/c-decl.c:3323 #, gcc-internal-format msgid "implicit declaration of function %qE; did you mean %qs?" msgstr "" -#: c/c-decl.c:3298 c/c-decl.c:3311 +#: c/c-decl.c:3315 c/c-decl.c:3328 #, gcc-internal-format msgid "implicit declaration of function %qE" msgstr "" -#: c/c-decl.c:3572 +#: c/c-decl.c:3589 #, gcc-internal-format msgid "incompatible implicit declaration of built-in function %qD" msgstr "" -#: c/c-decl.c:3583 +#: c/c-decl.c:3600 #, gcc-internal-format msgid "include %qs or provide a declaration of %qD" msgstr "" -#: c/c-decl.c:3594 +#: c/c-decl.c:3611 #, gcc-internal-format msgid "incompatible implicit declaration of function %qD" msgstr "" -#: c/c-decl.c:3655 +#: c/c-decl.c:3672 #, gcc-internal-format msgid "%qE undeclared here (not in a function); did you mean %qs?" msgstr "" -#: c/c-decl.c:3660 +#: c/c-decl.c:3677 #, gcc-internal-format msgid "%qE undeclared here (not in a function)" msgstr "" -#: c/c-decl.c:3673 +#: c/c-decl.c:3690 #, gcc-internal-format msgid "%qE undeclared (first use in this function); did you mean %qs?" msgstr "" -#: c/c-decl.c:3678 +#: c/c-decl.c:3695 #, gcc-internal-format msgid "%qE undeclared (first use in this function)" msgstr "" -#: c/c-decl.c:3682 +#: c/c-decl.c:3699 #, gcc-internal-format msgid "" "each undeclared identifier is reported only once for each function it " "appears in" msgstr "" -#: c/c-decl.c:3730 cp/decl.c:3030 +#: c/c-decl.c:3747 cp/decl.c:3050 #, gcc-internal-format msgid "label %qE referenced outside of any function" msgstr "" -#: c/c-decl.c:3766 +#: c/c-decl.c:3783 #, gcc-internal-format msgid "jump into scope of identifier with variably modified type" msgstr "" -#: c/c-decl.c:3769 +#: c/c-decl.c:3786 #, gcc-internal-format msgid "jump skips variable initialization" msgstr "" -#: c/c-decl.c:3770 c/c-decl.c:3825 c/c-decl.c:3915 +#: c/c-decl.c:3787 c/c-decl.c:3842 c/c-decl.c:3932 #, gcc-internal-format msgid "label %qD defined here" msgstr "" -#: c/c-decl.c:3824 c/c-decl.c:3914 +#: c/c-decl.c:3841 c/c-decl.c:3931 #, gcc-internal-format msgid "jump into statement expression" msgstr "" -#: c/c-decl.c:3847 +#: c/c-decl.c:3864 #, gcc-internal-format msgid "duplicate label declaration %qE" msgstr "" -#: c/c-decl.c:3946 cp/decl.c:3436 +#: c/c-decl.c:3963 cp/decl.c:3456 #, gcc-internal-format msgid "duplicate label %qD" msgstr "" -#: c/c-decl.c:3977 +#: c/c-decl.c:3994 #, gcc-internal-format msgid "" "traditional C lacks a separate namespace for labels, identifier %qE conflicts" msgstr "" -#: c/c-decl.c:4042 +#: c/c-decl.c:4059 #, gcc-internal-format msgid "switch jumps over variable initialization" msgstr "" -#: c/c-decl.c:4043 c/c-decl.c:4054 +#: c/c-decl.c:4060 c/c-decl.c:4071 #, gcc-internal-format msgid "switch starts here" msgstr "" -#: c/c-decl.c:4053 +#: c/c-decl.c:4070 #, gcc-internal-format msgid "switch jumps into statement expression" msgstr "" -#: c/c-decl.c:4136 +#: c/c-decl.c:4153 #, gcc-internal-format msgid "%qE defined as wrong kind of tag" msgstr "" -#: c/c-decl.c:4505 +#: c/c-decl.c:4522 #, gcc-internal-format msgid "unnamed struct/union that defines no instances" msgstr "" -#: c/c-decl.c:4515 +#: c/c-decl.c:4532 #, gcc-internal-format msgid "empty declaration with storage class specifier does not redeclare tag" msgstr "" -#: c/c-decl.c:4530 +#: c/c-decl.c:4547 #, gcc-internal-format msgid "empty declaration with type qualifier does not redeclare tag" msgstr "" -#: c/c-decl.c:4541 +#: c/c-decl.c:4558 #, gcc-internal-format msgid "empty declaration with %<_Alignas%> does not redeclare tag" msgstr "" -#: c/c-decl.c:4563 c/c-decl.c:4571 +#: c/c-decl.c:4580 c/c-decl.c:4588 #, gcc-internal-format msgid "useless type name in empty declaration" msgstr "" -#: c/c-decl.c:4579 +#: c/c-decl.c:4596 #, gcc-internal-format msgid "% in empty declaration" msgstr "" -#: c/c-decl.c:4585 +#: c/c-decl.c:4602 #, gcc-internal-format msgid "%<_Noreturn%> in empty declaration" msgstr "" -#: c/c-decl.c:4591 +#: c/c-decl.c:4608 #, gcc-internal-format msgid "% in file-scope empty declaration" msgstr "" -#: c/c-decl.c:4597 +#: c/c-decl.c:4614 #, gcc-internal-format msgid "% in file-scope empty declaration" msgstr "" -#: c/c-decl.c:4604 +#: c/c-decl.c:4621 #, gcc-internal-format msgid "useless storage class specifier in empty declaration" msgstr "" -#: c/c-decl.c:4610 +#: c/c-decl.c:4627 #, gcc-internal-format msgid "useless %qs in empty declaration" msgstr "" -#: c/c-decl.c:4623 +#: c/c-decl.c:4640 #, gcc-internal-format msgid "useless type qualifier in empty declaration" msgstr "" -#: c/c-decl.c:4630 +#: c/c-decl.c:4647 #, gcc-internal-format msgid "useless %<_Alignas%> in empty declaration" msgstr "" -#: c/c-decl.c:4637 c/c-parser.c:1884 +#: c/c-decl.c:4654 c/c-parser.c:1884 #, gcc-internal-format msgid "empty declaration" msgstr "" -#: c/c-decl.c:4708 +#: c/c-decl.c:4725 #, gcc-internal-format msgid "" "ISO C90 does not support % or type qualifiers in parameter array " "declarators" msgstr "" -#: c/c-decl.c:4712 +#: c/c-decl.c:4729 #, gcc-internal-format msgid "ISO C90 does not support %<[*]%> array declarators" msgstr "" @@ -35756,28 +35767,28 @@ msgstr "" #. C99 6.7.5.2p4 #. A function definition isn't function prototype scope C99 6.2.1p4. #. C99 6.7.5.2p4 -#: c/c-decl.c:4718 c/c-decl.c:7347 +#: c/c-decl.c:4735 c/c-decl.c:7364 #, gcc-internal-format msgid "%<[*]%> not allowed in other than function prototype scope" msgstr "" -#: c/c-decl.c:4864 +#: c/c-decl.c:4881 #, gcc-internal-format msgid "%q+D is usually a function" msgstr "" -#: c/c-decl.c:4873 +#: c/c-decl.c:4890 #, gcc-internal-format msgid "typedef %qD is initialized (use __typeof__ instead)" msgstr "" -#: c/c-decl.c:4878 +#: c/c-decl.c:4895 #, gcc-internal-format msgid "function %qD is initialized like a variable" msgstr "" #. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. -#: c/c-decl.c:4884 +#: c/c-decl.c:4901 #, gcc-internal-format msgid "parameter %qD is initialized" msgstr "" @@ -35786,267 +35797,267 @@ msgstr "" #. of VLAs themselves count as VLAs, it does not make #. sense to permit them to be initialized given that #. ordinary VLAs may not be initialized. -#: c/c-decl.c:4903 c/c-decl.c:4918 c/c-typeck.c:7973 +#: c/c-decl.c:4920 c/c-decl.c:4935 c/c-typeck.c:7973 #, gcc-internal-format msgid "variable-sized object may not be initialized" msgstr "" -#: c/c-decl.c:4909 +#: c/c-decl.c:4926 #, gcc-internal-format msgid "variable %qD has initializer but incomplete type" msgstr "" -#: c/c-decl.c:4998 +#: c/c-decl.c:5015 #, gcc-internal-format msgid "inline function %q+D given attribute noinline" msgstr "" -#: c/c-decl.c:5048 +#: c/c-decl.c:5065 #, gcc-internal-format msgid "uninitialized const member in %qT is invalid in C++" msgstr "" -#: c/c-decl.c:5050 +#: c/c-decl.c:5067 #, gcc-internal-format msgid "%qD should be initialized" msgstr "" -#: c/c-decl.c:5131 +#: c/c-decl.c:5148 #, gcc-internal-format msgid "initializer fails to determine size of %q+D" msgstr "" -#: c/c-decl.c:5136 +#: c/c-decl.c:5153 #, gcc-internal-format msgid "array size missing in %q+D" msgstr "" -#: c/c-decl.c:5140 +#: c/c-decl.c:5157 #, gcc-internal-format msgid "zero or negative size array %q+D" msgstr "" -#: c/c-decl.c:5218 +#: c/c-decl.c:5235 #, gcc-internal-format msgid "storage size of %q+D isn%'t constant" msgstr "" -#: c/c-decl.c:5268 +#: c/c-decl.c:5285 #, gcc-internal-format msgid "ignoring asm-specifier for non-static local variable %q+D" msgstr "" -#: c/c-decl.c:5298 +#: c/c-decl.c:5315 #, gcc-internal-format msgid "cannot put object with volatile field into register" msgstr "" -#: c/c-decl.c:5384 +#: c/c-decl.c:5401 #, gcc-internal-format msgid "uninitialized const %qD is invalid in C++" msgstr "" -#: c/c-decl.c:5399 cp/decl.c:7400 +#: c/c-decl.c:5416 cp/decl.c:7416 #, gcc-internal-format msgid "%q+D in declare target directive does not have mappable type" msgstr "" -#: c/c-decl.c:5463 +#: c/c-decl.c:5480 #, gcc-internal-format msgid "ISO C forbids forward parameter declarations" msgstr "" -#: c/c-decl.c:5569 +#: c/c-decl.c:5586 #, gcc-internal-format msgid "defining a type in a compound literal is invalid in C++" msgstr "" -#: c/c-decl.c:5623 c/c-decl.c:5638 +#: c/c-decl.c:5640 c/c-decl.c:5655 #, gcc-internal-format msgid "bit-field %qs width not an integer constant" msgstr "" -#: c/c-decl.c:5633 +#: c/c-decl.c:5650 #, gcc-internal-format msgid "bit-field %qs width not an integer constant expression" msgstr "" -#: c/c-decl.c:5644 +#: c/c-decl.c:5661 #, gcc-internal-format msgid "negative width in bit-field %qs" msgstr "" -#: c/c-decl.c:5649 +#: c/c-decl.c:5666 #, gcc-internal-format msgid "zero width for bit-field %qs" msgstr "" -#: c/c-decl.c:5659 +#: c/c-decl.c:5676 #, gcc-internal-format msgid "bit-field %qs has invalid type" msgstr "" -#: c/c-decl.c:5665 +#: c/c-decl.c:5682 #, gcc-internal-format msgid "cannot declare bit-field %qs with % type" msgstr "" -#: c/c-decl.c:5676 +#: c/c-decl.c:5693 #, gcc-internal-format msgid "type of bit-field %qs is a GCC extension" msgstr "" -#: c/c-decl.c:5682 +#: c/c-decl.c:5699 #, gcc-internal-format msgid "width of %qs exceeds its type" msgstr "" -#: c/c-decl.c:5695 +#: c/c-decl.c:5712 #, gcc-internal-format msgid "%qs is narrower than values of its type" msgstr "" -#: c/c-decl.c:5710 +#: c/c-decl.c:5727 #, gcc-internal-format msgid "ISO C90 forbids array %qE whose size can%'t be evaluated" msgstr "" -#: c/c-decl.c:5713 +#: c/c-decl.c:5730 #, gcc-internal-format msgid "ISO C90 forbids array whose size can%'t be evaluated" msgstr "" -#: c/c-decl.c:5720 +#: c/c-decl.c:5737 #, gcc-internal-format msgid "ISO C90 forbids variable length array %qE" msgstr "" -#: c/c-decl.c:5722 +#: c/c-decl.c:5739 #, gcc-internal-format msgid "ISO C90 forbids variable length array" msgstr "" -#: c/c-decl.c:5931 c/c-decl.c:6305 c/c-decl.c:6315 +#: c/c-decl.c:5948 c/c-decl.c:6322 c/c-decl.c:6332 #, gcc-internal-format msgid "variably modified %qE at file scope" msgstr "" -#: c/c-decl.c:5933 +#: c/c-decl.c:5950 #, gcc-internal-format msgid "variably modified field at file scope" msgstr "" -#: c/c-decl.c:5953 +#: c/c-decl.c:5970 #, gcc-internal-format msgid "type defaults to % in declaration of %qE" msgstr "" -#: c/c-decl.c:5957 +#: c/c-decl.c:5974 #, gcc-internal-format msgid "type defaults to % in type name" msgstr "" -#: c/c-decl.c:5989 +#: c/c-decl.c:6006 #, gcc-internal-format msgid "duplicate %" msgstr "" -#: c/c-decl.c:5991 +#: c/c-decl.c:6008 #, gcc-internal-format msgid "duplicate %" msgstr "" -#: c/c-decl.c:5993 +#: c/c-decl.c:6010 #, gcc-internal-format msgid "duplicate %" msgstr "" -#: c/c-decl.c:5995 +#: c/c-decl.c:6012 #, gcc-internal-format msgid "duplicate %<_Atomic%>" msgstr "" -#: c/c-decl.c:5998 +#: c/c-decl.c:6015 #, gcc-internal-format, gfc-internal-format msgid "conflicting named address spaces (%s vs %s)" msgstr "" -#: c/c-decl.c:6021 c/c-parser.c:2849 +#: c/c-decl.c:6038 c/c-parser.c:2849 #, gcc-internal-format msgid "%<_Atomic%>-qualified array type" msgstr "" -#: c/c-decl.c:6035 +#: c/c-decl.c:6052 #, gcc-internal-format msgid "function definition declared %" msgstr "" -#: c/c-decl.c:6037 +#: c/c-decl.c:6054 #, gcc-internal-format msgid "function definition declared %" msgstr "" -#: c/c-decl.c:6039 +#: c/c-decl.c:6056 #, gcc-internal-format msgid "function definition declared %" msgstr "" -#: c/c-decl.c:6041 +#: c/c-decl.c:6058 #, gcc-internal-format msgid "function definition declared %qs" msgstr "" -#: c/c-decl.c:6059 +#: c/c-decl.c:6076 #, gcc-internal-format msgid "storage class specified for structure field %qE" msgstr "" -#: c/c-decl.c:6062 +#: c/c-decl.c:6079 #, gcc-internal-format msgid "storage class specified for structure field" msgstr "" -#: c/c-decl.c:6066 +#: c/c-decl.c:6083 #, gcc-internal-format msgid "storage class specified for parameter %qE" msgstr "" -#: c/c-decl.c:6069 +#: c/c-decl.c:6086 #, gcc-internal-format msgid "storage class specified for unnamed parameter" msgstr "" -#: c/c-decl.c:6072 cp/decl.c:11167 +#: c/c-decl.c:6089 cp/decl.c:11184 #, gcc-internal-format msgid "storage class specified for typename" msgstr "" -#: c/c-decl.c:6089 +#: c/c-decl.c:6106 #, gcc-internal-format msgid "%qE initialized and declared %" msgstr "" -#: c/c-decl.c:6093 +#: c/c-decl.c:6110 #, gcc-internal-format msgid "%qE has both % and initializer" msgstr "" -#: c/c-decl.c:6098 +#: c/c-decl.c:6115 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %" msgstr "" -#: c/c-decl.c:6102 +#: c/c-decl.c:6119 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %" msgstr "" -#: c/c-decl.c:6107 +#: c/c-decl.c:6124 #, gcc-internal-format msgid "nested function %qE declared %" msgstr "" -#: c/c-decl.c:6110 +#: c/c-decl.c:6127 #, gcc-internal-format msgid "function-scope %qE implicitly auto and declared %qs" msgstr "" @@ -36054,719 +36065,719 @@ msgstr "" #. Only the innermost declarator (making a parameter be of #. array type which is converted to pointer type) #. may have static or type qualifiers. -#: c/c-decl.c:6157 c/c-decl.c:6526 +#: c/c-decl.c:6174 c/c-decl.c:6543 #, gcc-internal-format msgid "static or type qualifiers in non-parameter array declarator" msgstr "" -#: c/c-decl.c:6205 +#: c/c-decl.c:6222 #, gcc-internal-format msgid "declaration of %qE as array of voids" msgstr "" -#: c/c-decl.c:6207 +#: c/c-decl.c:6224 #, gcc-internal-format msgid "declaration of type name as array of voids" msgstr "" -#: c/c-decl.c:6214 +#: c/c-decl.c:6231 #, gcc-internal-format msgid "declaration of %qE as array of functions" msgstr "" -#: c/c-decl.c:6217 +#: c/c-decl.c:6234 #, gcc-internal-format msgid "declaration of type name as array of functions" msgstr "" -#: c/c-decl.c:6225 c/c-decl.c:8285 +#: c/c-decl.c:6242 c/c-decl.c:8302 #, gcc-internal-format msgid "invalid use of structure with flexible array member" msgstr "" -#: c/c-decl.c:6251 +#: c/c-decl.c:6268 #, gcc-internal-format msgid "size of array %qE has non-integer type" msgstr "" -#: c/c-decl.c:6255 +#: c/c-decl.c:6272 #, gcc-internal-format msgid "size of unnamed array has non-integer type" msgstr "" -#: c/c-decl.c:6262 +#: c/c-decl.c:6279 #, gcc-internal-format msgid "size of array %qE has incomplete type" msgstr "" -#: c/c-decl.c:6265 +#: c/c-decl.c:6282 #, gcc-internal-format msgid "size of unnamed array has incomplete type" msgstr "" -#: c/c-decl.c:6276 +#: c/c-decl.c:6293 #, gcc-internal-format msgid "ISO C forbids zero-size array %qE" msgstr "" -#: c/c-decl.c:6279 +#: c/c-decl.c:6296 #, gcc-internal-format msgid "ISO C forbids zero-size array" msgstr "" -#: c/c-decl.c:6288 +#: c/c-decl.c:6305 #, gcc-internal-format msgid "size of array %qE is negative" msgstr "" -#: c/c-decl.c:6290 +#: c/c-decl.c:6307 #, gcc-internal-format msgid "size of unnamed array is negative" msgstr "" -#: c/c-decl.c:6375 +#: c/c-decl.c:6392 #, gcc-internal-format msgid "size of array %qE is too large" msgstr "" -#: c/c-decl.c:6378 +#: c/c-decl.c:6395 #, gcc-internal-format msgid "size of unnamed array is too large" msgstr "" -#: c/c-decl.c:6414 c/c-decl.c:7071 +#: c/c-decl.c:6431 c/c-decl.c:7088 #, gcc-internal-format msgid "ISO C90 does not support flexible array members" msgstr "" #. C99 6.7.5.2p4 -#: c/c-decl.c:6436 +#: c/c-decl.c:6453 #, gcc-internal-format msgid "%<[*]%> not in a declaration" msgstr "" -#: c/c-decl.c:6449 +#: c/c-decl.c:6466 #, gcc-internal-format msgid "array type has incomplete element type %qT" msgstr "" -#: c/c-decl.c:6455 +#: c/c-decl.c:6472 #, gcc-internal-format msgid "" "declaration of %qE as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: c/c-decl.c:6459 +#: c/c-decl.c:6476 #, gcc-internal-format msgid "" "declaration of multidimensional array must have bounds for all dimensions " "except the first" msgstr "" -#: c/c-decl.c:6562 +#: c/c-decl.c:6579 #, gcc-internal-format msgid "%qE declared as function returning a function" msgstr "" -#: c/c-decl.c:6565 +#: c/c-decl.c:6582 #, gcc-internal-format msgid "type name declared as function returning a function" msgstr "" -#: c/c-decl.c:6572 +#: c/c-decl.c:6589 #, gcc-internal-format msgid "%qE declared as function returning an array" msgstr "" -#: c/c-decl.c:6575 +#: c/c-decl.c:6592 #, gcc-internal-format msgid "type name declared as function returning an array" msgstr "" -#: c/c-decl.c:6616 +#: c/c-decl.c:6633 #, gcc-internal-format msgid "function definition has qualified void return type" msgstr "" -#: c/c-decl.c:6620 cp/decl.c:11454 +#: c/c-decl.c:6637 cp/decl.c:11471 #, gcc-internal-format msgid "type qualifiers ignored on function return type" msgstr "" -#: c/c-decl.c:6658 c/c-decl.c:6867 c/c-decl.c:6921 c/c-decl.c:7005 -#: c/c-decl.c:7126 c/c-parser.c:2851 +#: c/c-decl.c:6675 c/c-decl.c:6884 c/c-decl.c:6938 c/c-decl.c:7022 +#: c/c-decl.c:7143 c/c-parser.c:2851 #, gcc-internal-format msgid "%<_Atomic%>-qualified function type" msgstr "" -#: c/c-decl.c:6664 c/c-decl.c:6873 c/c-decl.c:7010 c/c-decl.c:7131 +#: c/c-decl.c:6681 c/c-decl.c:6890 c/c-decl.c:7027 c/c-decl.c:7148 #, gcc-internal-format msgid "ISO C forbids qualified function types" msgstr "" -#: c/c-decl.c:6758 +#: c/c-decl.c:6775 #, gcc-internal-format msgid "%qs combined with % qualifier for %qE" msgstr "" -#: c/c-decl.c:6762 +#: c/c-decl.c:6779 #, gcc-internal-format msgid "%qs combined with % qualifier for %qE" msgstr "" -#: c/c-decl.c:6768 +#: c/c-decl.c:6785 #, gcc-internal-format msgid "%qs specified for auto variable %qE" msgstr "" -#: c/c-decl.c:6784 +#: c/c-decl.c:6801 #, gcc-internal-format msgid "%qs specified for parameter %qE" msgstr "" -#: c/c-decl.c:6787 +#: c/c-decl.c:6804 #, gcc-internal-format msgid "%qs specified for unnamed parameter" msgstr "" -#: c/c-decl.c:6793 +#: c/c-decl.c:6810 #, gcc-internal-format msgid "%qs specified for structure field %qE" msgstr "" -#: c/c-decl.c:6796 +#: c/c-decl.c:6813 #, gcc-internal-format msgid "%qs specified for structure field" msgstr "" -#: c/c-decl.c:6811 +#: c/c-decl.c:6828 #, gcc-internal-format msgid "bit-field %qE has atomic type" msgstr "" -#: c/c-decl.c:6813 +#: c/c-decl.c:6830 #, gcc-internal-format msgid "bit-field has atomic type" msgstr "" -#: c/c-decl.c:6822 +#: c/c-decl.c:6839 #, gcc-internal-format msgid "alignment specified for typedef %qE" msgstr "" -#: c/c-decl.c:6824 +#: c/c-decl.c:6841 #, gcc-internal-format msgid "alignment specified for % object %qE" msgstr "" -#: c/c-decl.c:6829 +#: c/c-decl.c:6846 #, gcc-internal-format msgid "alignment specified for parameter %qE" msgstr "" -#: c/c-decl.c:6831 +#: c/c-decl.c:6848 #, gcc-internal-format msgid "alignment specified for unnamed parameter" msgstr "" -#: c/c-decl.c:6836 +#: c/c-decl.c:6853 #, gcc-internal-format msgid "alignment specified for bit-field %qE" msgstr "" -#: c/c-decl.c:6838 +#: c/c-decl.c:6855 #, gcc-internal-format msgid "alignment specified for unnamed bit-field" msgstr "" -#: c/c-decl.c:6841 +#: c/c-decl.c:6858 #, gcc-internal-format msgid "alignment specified for function %qE" msgstr "" -#: c/c-decl.c:6848 +#: c/c-decl.c:6865 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE" msgstr "" -#: c/c-decl.c:6851 +#: c/c-decl.c:6868 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field" msgstr "" -#: c/c-decl.c:6882 +#: c/c-decl.c:6899 #, gcc-internal-format msgid "typedef %q+D declared %" msgstr "" -#: c/c-decl.c:6884 +#: c/c-decl.c:6901 #, gcc-internal-format msgid "typedef %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:6927 +#: c/c-decl.c:6944 #, gcc-internal-format msgid "ISO C forbids const or volatile function types" msgstr "" #. C99 6.7.2.1p8 -#: c/c-decl.c:6938 +#: c/c-decl.c:6955 #, gcc-internal-format msgid "a member of a structure or union cannot have a variably modified type" msgstr "" -#: c/c-decl.c:6955 cp/decl.c:10177 +#: c/c-decl.c:6972 cp/decl.c:10193 #, gcc-internal-format msgid "variable or field %qE declared void" msgstr "" -#: c/c-decl.c:6995 +#: c/c-decl.c:7012 #, gcc-internal-format msgid "attributes in parameter array declarator ignored" msgstr "" -#: c/c-decl.c:7037 +#: c/c-decl.c:7054 #, gcc-internal-format msgid "parameter %q+D declared %" msgstr "" -#: c/c-decl.c:7039 +#: c/c-decl.c:7056 #, gcc-internal-format msgid "parameter %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7052 +#: c/c-decl.c:7069 #, gcc-internal-format msgid "field %qE declared as a function" msgstr "" -#: c/c-decl.c:7059 +#: c/c-decl.c:7076 #, gcc-internal-format msgid "field %qE has incomplete type" msgstr "" -#: c/c-decl.c:7061 +#: c/c-decl.c:7078 #, gcc-internal-format msgid "unnamed field has incomplete type" msgstr "" -#: c/c-decl.c:7097 c/c-decl.c:7108 c/c-decl.c:7111 +#: c/c-decl.c:7114 c/c-decl.c:7125 c/c-decl.c:7128 #, gcc-internal-format msgid "invalid storage class for function %qE" msgstr "" -#: c/c-decl.c:7168 +#: c/c-decl.c:7185 #, gcc-internal-format msgid "cannot inline function %" msgstr "" -#: c/c-decl.c:7170 +#: c/c-decl.c:7187 #, gcc-internal-format msgid "% declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7181 +#: c/c-decl.c:7198 #, gcc-internal-format msgid "ISO C99 does not support %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7184 +#: c/c-decl.c:7201 #, gcc-internal-format msgid "ISO C90 does not support %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7213 +#: c/c-decl.c:7230 #, gcc-internal-format msgid "variable previously declared % redeclared %" msgstr "" -#: c/c-decl.c:7223 +#: c/c-decl.c:7240 #, gcc-internal-format msgid "variable %q+D declared %" msgstr "" -#: c/c-decl.c:7225 +#: c/c-decl.c:7242 #, gcc-internal-format msgid "variable %q+D declared %<_Noreturn%>" msgstr "" -#: c/c-decl.c:7260 +#: c/c-decl.c:7277 #, gcc-internal-format msgid "non-nested function with variably modified type" msgstr "" -#: c/c-decl.c:7262 +#: c/c-decl.c:7279 #, gcc-internal-format msgid "object with variably modified type must have no linkage" msgstr "" -#: c/c-decl.c:7353 c/c-decl.c:9023 +#: c/c-decl.c:7370 c/c-decl.c:9040 #, gcc-internal-format msgid "function declaration isn%'t a prototype" msgstr "" -#: c/c-decl.c:7363 +#: c/c-decl.c:7380 #, gcc-internal-format msgid "parameter names (without types) in function declaration" msgstr "" -#: c/c-decl.c:7401 +#: c/c-decl.c:7418 #, gcc-internal-format msgid "parameter %u (%q+D) has incomplete type" msgstr "" -#: c/c-decl.c:7405 +#: c/c-decl.c:7422 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has incomplete type" msgstr "" -#: c/c-decl.c:7416 +#: c/c-decl.c:7433 #, gcc-internal-format msgid "parameter %u (%q+D) has void type" msgstr "" -#: c/c-decl.c:7420 +#: c/c-decl.c:7437 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has void type" msgstr "" -#: c/c-decl.c:7494 +#: c/c-decl.c:7511 #, gcc-internal-format msgid "% as only parameter may not be qualified" msgstr "" -#: c/c-decl.c:7498 c/c-decl.c:7534 +#: c/c-decl.c:7515 c/c-decl.c:7551 #, gcc-internal-format msgid "% must be the only parameter" msgstr "" -#: c/c-decl.c:7528 +#: c/c-decl.c:7545 #, gcc-internal-format msgid "parameter %q+D has just a forward declaration" msgstr "" -#: c/c-decl.c:7574 +#: c/c-decl.c:7591 #, gcc-internal-format msgid "" "%<%s %E%> declared inside parameter list will not be visible outside of this " "definition or declaration" msgstr "" -#: c/c-decl.c:7580 +#: c/c-decl.c:7597 #, gcc-internal-format, gfc-internal-format msgid "" "anonymous %s declared inside parameter list will not be visible outside of " "this definition or declaration" msgstr "" -#: c/c-decl.c:7682 +#: c/c-decl.c:7699 #, gcc-internal-format msgid "enum type defined here" msgstr "" -#: c/c-decl.c:7688 +#: c/c-decl.c:7705 #, gcc-internal-format msgid "struct defined here" msgstr "" -#: c/c-decl.c:7694 +#: c/c-decl.c:7711 #, gcc-internal-format msgid "union defined here" msgstr "" -#: c/c-decl.c:7770 +#: c/c-decl.c:7787 #, gcc-internal-format msgid "redefinition of %" msgstr "" -#: c/c-decl.c:7772 +#: c/c-decl.c:7789 #, gcc-internal-format msgid "redefinition of %" msgstr "" -#: c/c-decl.c:7781 +#: c/c-decl.c:7798 #, gcc-internal-format msgid "nested redefinition of %" msgstr "" -#: c/c-decl.c:7783 +#: c/c-decl.c:7800 #, gcc-internal-format msgid "nested redefinition of %" msgstr "" -#: c/c-decl.c:7813 c/c-decl.c:8601 +#: c/c-decl.c:7830 c/c-decl.c:8618 #, gcc-internal-format msgid "defining type in %qs expression is invalid in C++" msgstr "" -#: c/c-decl.c:7880 cp/decl.c:4823 +#: c/c-decl.c:7897 cp/decl.c:4836 #, gcc-internal-format msgid "declaration does not declare anything" msgstr "" -#: c/c-decl.c:7885 +#: c/c-decl.c:7902 #, gcc-internal-format msgid "ISO C99 doesn%'t support unnamed structs/unions" msgstr "" -#: c/c-decl.c:7888 +#: c/c-decl.c:7905 #, gcc-internal-format msgid "ISO C90 doesn%'t support unnamed structs/unions" msgstr "" -#: c/c-decl.c:7981 c/c-decl.c:7999 c/c-decl.c:8060 +#: c/c-decl.c:7998 c/c-decl.c:8016 c/c-decl.c:8077 #, gcc-internal-format msgid "duplicate member %q+D" msgstr "" -#: c/c-decl.c:8086 +#: c/c-decl.c:8103 #, gcc-internal-format msgid "empty struct has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.c:8089 +#: c/c-decl.c:8106 #, gcc-internal-format msgid "empty union has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.c:8194 +#: c/c-decl.c:8211 #, gcc-internal-format msgid "union has no named members" msgstr "" -#: c/c-decl.c:8196 +#: c/c-decl.c:8213 #, gcc-internal-format msgid "union has no members" msgstr "" -#: c/c-decl.c:8201 +#: c/c-decl.c:8218 #, gcc-internal-format msgid "struct has no named members" msgstr "" -#: c/c-decl.c:8203 +#: c/c-decl.c:8220 #, gcc-internal-format msgid "struct has no members" msgstr "" -#: c/c-decl.c:8264 cp/decl.c:12342 +#: c/c-decl.c:8281 cp/decl.c:12359 #, gcc-internal-format msgid "flexible array member in union" msgstr "" -#: c/c-decl.c:8270 +#: c/c-decl.c:8287 #, gcc-internal-format msgid "flexible array member not at end of struct" msgstr "" -#: c/c-decl.c:8276 +#: c/c-decl.c:8293 #, gcc-internal-format msgid "flexible array member in a struct with no named members" msgstr "" -#: c/c-decl.c:8307 +#: c/c-decl.c:8324 #, gcc-internal-format msgid "type %qT is too large" msgstr "" -#: c/c-decl.c:8412 +#: c/c-decl.c:8429 #, gcc-internal-format msgid "union cannot be made transparent" msgstr "" -#: c/c-decl.c:8573 +#: c/c-decl.c:8590 #, gcc-internal-format msgid "nested redefinition of %" msgstr "" #. This enum is a named one that has been declared already. -#: c/c-decl.c:8580 +#: c/c-decl.c:8597 #, gcc-internal-format msgid "redeclaration of %" msgstr "" -#: c/c-decl.c:8659 cp/decl.c:14713 +#: c/c-decl.c:8676 cp/decl.c:14730 #, gcc-internal-format msgid "specified mode too small for enumeral values" msgstr "" -#: c/c-decl.c:8674 +#: c/c-decl.c:8691 #, gcc-internal-format msgid "enumeration values exceed range of largest integer" msgstr "" -#: c/c-decl.c:8788 c/c-decl.c:8804 +#: c/c-decl.c:8805 c/c-decl.c:8821 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant" msgstr "" -#: c/c-decl.c:8799 +#: c/c-decl.c:8816 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant expression" msgstr "" -#: c/c-decl.c:8823 +#: c/c-decl.c:8840 #, gcc-internal-format msgid "overflow in enumeration values" msgstr "" -#: c/c-decl.c:8831 +#: c/c-decl.c:8848 #, gcc-internal-format msgid "ISO C restricts enumerator values to range of %" msgstr "" -#: c/c-decl.c:8920 cp/decl.c:5120 cp/decl.c:15242 +#: c/c-decl.c:8937 cp/decl.c:5133 cp/decl.c:15259 #, gcc-internal-format msgid "inline function %qD given attribute noinline" msgstr "" -#: c/c-decl.c:8938 +#: c/c-decl.c:8955 #, gcc-internal-format msgid "return type is an incomplete type" msgstr "" -#: c/c-decl.c:8949 +#: c/c-decl.c:8966 #, gcc-internal-format msgid "return type defaults to %" msgstr "" -#: c/c-decl.c:8973 +#: c/c-decl.c:8990 #, gcc-internal-format msgid "%q+D defined as variadic function without prototype" msgstr "" -#: c/c-decl.c:9032 +#: c/c-decl.c:9049 #, gcc-internal-format msgid "no previous prototype for %qD" msgstr "" -#: c/c-decl.c:9041 +#: c/c-decl.c:9058 #, gcc-internal-format msgid "%qD was used with no prototype before its definition" msgstr "" -#: c/c-decl.c:9049 cp/decl.c:15377 +#: c/c-decl.c:9066 cp/decl.c:15394 #, gcc-internal-format msgid "no previous declaration for %qD" msgstr "" -#: c/c-decl.c:9059 +#: c/c-decl.c:9076 #, gcc-internal-format msgid "%qD was used with no declaration before its definition" msgstr "" -#: c/c-decl.c:9078 +#: c/c-decl.c:9095 #, gcc-internal-format msgid "return type of %qD is not %" msgstr "" -#: c/c-decl.c:9080 +#: c/c-decl.c:9097 #, gcc-internal-format msgid "%<_Atomic%>-qualified return type of %qD" msgstr "" -#: c/c-decl.c:9087 +#: c/c-decl.c:9104 #, gcc-internal-format msgid "%qD is normally a non-static function" msgstr "" -#: c/c-decl.c:9124 +#: c/c-decl.c:9141 #, gcc-internal-format msgid "old-style parameter declarations in prototyped function definition" msgstr "" -#: c/c-decl.c:9139 +#: c/c-decl.c:9156 #, gcc-internal-format msgid "traditional C rejects ISO C style function definitions" msgstr "" -#: c/c-decl.c:9155 +#: c/c-decl.c:9172 #, gcc-internal-format msgid "parameter name omitted" msgstr "" -#: c/c-decl.c:9192 +#: c/c-decl.c:9209 #, gcc-internal-format msgid "old-style function definition" msgstr "" -#: c/c-decl.c:9201 +#: c/c-decl.c:9218 #, gcc-internal-format msgid "parameter name missing from parameter list" msgstr "" -#: c/c-decl.c:9217 +#: c/c-decl.c:9234 #, gcc-internal-format msgid "%qD declared as a non-parameter" msgstr "" -#: c/c-decl.c:9225 +#: c/c-decl.c:9242 #, gcc-internal-format msgid "multiple parameters named %qD" msgstr "" -#: c/c-decl.c:9234 +#: c/c-decl.c:9251 #, gcc-internal-format msgid "parameter %qD declared with void type" msgstr "" -#: c/c-decl.c:9263 c/c-decl.c:9268 +#: c/c-decl.c:9280 c/c-decl.c:9285 #, gcc-internal-format msgid "type of %qD defaults to %" msgstr "" -#: c/c-decl.c:9288 +#: c/c-decl.c:9305 #, gcc-internal-format msgid "parameter %qD has incomplete type" msgstr "" -#: c/c-decl.c:9295 +#: c/c-decl.c:9312 #, gcc-internal-format msgid "declaration for parameter %qD but no such parameter" msgstr "" -#: c/c-decl.c:9348 +#: c/c-decl.c:9365 #, gcc-internal-format msgid "number of arguments doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.c:9359 +#: c/c-decl.c:9376 #, gcc-internal-format msgid "number of arguments doesn%'t match prototype" msgstr "" -#: c/c-decl.c:9362 c/c-decl.c:9409 c/c-decl.c:9423 +#: c/c-decl.c:9379 c/c-decl.c:9426 c/c-decl.c:9440 #, gcc-internal-format msgid "prototype declaration" msgstr "" -#: c/c-decl.c:9401 +#: c/c-decl.c:9418 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.c:9406 +#: c/c-decl.c:9423 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match prototype" msgstr "" -#: c/c-decl.c:9416 +#: c/c-decl.c:9433 #, gcc-internal-format msgid "argument %qD doesn%'t match built-in prototype" msgstr "" -#: c/c-decl.c:9421 +#: c/c-decl.c:9438 #, gcc-internal-format msgid "argument %qD doesn%'t match prototype" msgstr "" -#: c/c-decl.c:9672 cp/decl.c:16203 +#: c/c-decl.c:9689 cp/decl.c:16220 #, gcc-internal-format msgid "no return statement in function returning non-void" msgstr "" -#: c/c-decl.c:9691 cp/decl.c:16235 +#: c/c-decl.c:9708 cp/decl.c:16252 #, gcc-internal-format msgid "parameter %qD set but not used" msgstr "" @@ -36774,259 +36785,259 @@ msgstr "" #. If we get here, declarations have been used in a for loop without #. the C99 for loop scope. This doesn't make much sense, so don't #. allow it. -#: c/c-decl.c:9787 +#: c/c-decl.c:9804 #, gcc-internal-format msgid "% loop initial declarations are only allowed in C99 or C11 mode" msgstr "" -#: c/c-decl.c:9792 +#: c/c-decl.c:9809 #, gcc-internal-format msgid "" "use option %<-std=c99%>, %<-std=gnu99%>, %<-std=c11%> or %<-std=gnu11%> to " "compile your code" msgstr "" -#: c/c-decl.c:9799 +#: c/c-decl.c:9816 #, gcc-internal-format msgid "ISO C90 does not support % loop initial declarations" msgstr "" -#: c/c-decl.c:9831 +#: c/c-decl.c:9848 #, gcc-internal-format msgid "declaration of static variable %qD in % loop initial declaration" msgstr "" -#: c/c-decl.c:9835 +#: c/c-decl.c:9852 #, gcc-internal-format msgid "" "declaration of % variable %qD in % loop initial declaration" msgstr "" -#: c/c-decl.c:9842 +#: c/c-decl.c:9859 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "" -#: c/c-decl.c:9847 +#: c/c-decl.c:9864 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "" -#: c/c-decl.c:9851 +#: c/c-decl.c:9868 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "" -#: c/c-decl.c:9855 +#: c/c-decl.c:9872 #, gcc-internal-format msgid "declaration of non-variable %qD in % loop initial declaration" msgstr "" -#: c/c-decl.c:10105 +#: c/c-decl.c:10122 #, gcc-internal-format msgid "incompatible address space qualifiers %qs and %qs" msgstr "" -#: c/c-decl.c:10163 c/c-decl.c:10170 +#: c/c-decl.c:10180 c/c-decl.c:10187 #, gcc-internal-format msgid "duplicate %qE declaration specifier" msgstr "" -#: c/c-decl.c:10197 c/c-decl.c:10581 c/c-decl.c:10971 +#: c/c-decl.c:10214 c/c-decl.c:10598 c/c-decl.c:10988 #, gcc-internal-format msgid "two or more data types in declaration specifiers" msgstr "" -#: c/c-decl.c:10209 cp/parser.c:29186 +#: c/c-decl.c:10226 cp/parser.c:29186 #, gcc-internal-format msgid "% is too long for GCC" msgstr "" -#: c/c-decl.c:10222 +#: c/c-decl.c:10239 #, gcc-internal-format msgid "ISO C90 does not support %" msgstr "" -#: c/c-decl.c:10451 c/c-parser.c:9089 +#: c/c-decl.c:10468 c/c-parser.c:9106 #, gcc-internal-format msgid "ISO C90 does not support complex types" msgstr "" -#: c/c-decl.c:10497 +#: c/c-decl.c:10514 #, gcc-internal-format msgid "ISO C does not support saturating types" msgstr "" -#: c/c-decl.c:10568 c/c-decl.c:11128 +#: c/c-decl.c:10585 c/c-decl.c:11145 #, gcc-internal-format msgid "duplicate %qE" msgstr "" -#: c/c-decl.c:10624 +#: c/c-decl.c:10641 #, gcc-internal-format msgid "ISO C does not support %<__int%d%> types" msgstr "" -#: c/c-decl.c:10646 +#: c/c-decl.c:10663 #, gcc-internal-format msgid "%<__int%d%> is not supported on this target" msgstr "" -#: c/c-decl.c:10689 +#: c/c-decl.c:10706 #, gcc-internal-format msgid "ISO C90 does not support boolean types" msgstr "" -#: c/c-decl.c:10808 +#: c/c-decl.c:10825 #, gcc-internal-format msgid "ISO C does not support the %<_Float%d%s%> type" msgstr "" -#: c/c-decl.c:10858 +#: c/c-decl.c:10875 #, gcc-internal-format msgid "%<_Float%d%s%> is not supported on this target" msgstr "" -#: c/c-decl.c:10929 +#: c/c-decl.c:10946 #, gcc-internal-format msgid "ISO C does not support decimal floating point" msgstr "" -#: c/c-decl.c:10952 c/c-decl.c:11221 c/c-parser.c:8080 +#: c/c-decl.c:10969 c/c-decl.c:11238 c/c-parser.c:8097 #, gcc-internal-format msgid "fixed-point types not supported for this target" msgstr "" -#: c/c-decl.c:10954 +#: c/c-decl.c:10971 #, gcc-internal-format msgid "ISO C does not support fixed-point types" msgstr "" -#: c/c-decl.c:10989 +#: c/c-decl.c:11006 #, gcc-internal-format msgid "C++ lookup of %qD would return a field, not a type" msgstr "" -#: c/c-decl.c:11002 +#: c/c-decl.c:11019 #, gcc-internal-format msgid "%qE fails to be a typedef or built in type" msgstr "" -#: c/c-decl.c:11050 +#: c/c-decl.c:11067 #, gcc-internal-format msgid "%qE is not at beginning of declaration" msgstr "" -#: c/c-decl.c:11071 +#: c/c-decl.c:11088 #, gcc-internal-format msgid "%qE used with %" msgstr "" -#: c/c-decl.c:11073 +#: c/c-decl.c:11090 #, gcc-internal-format msgid "%qE used with %" msgstr "" -#: c/c-decl.c:11075 +#: c/c-decl.c:11092 #, gcc-internal-format msgid "%qE used with %" msgstr "" -#: c/c-decl.c:11089 c/c-parser.c:7480 +#: c/c-decl.c:11106 c/c-parser.c:7497 #, gcc-internal-format msgid "ISO C99 does not support %qE" msgstr "" -#: c/c-decl.c:11092 c/c-parser.c:7483 +#: c/c-decl.c:11109 c/c-parser.c:7500 #, gcc-internal-format msgid "ISO C90 does not support %qE" msgstr "" -#: c/c-decl.c:11104 +#: c/c-decl.c:11121 #, gcc-internal-format msgid "%<__thread%> before %" msgstr "" -#: c/c-decl.c:11113 +#: c/c-decl.c:11130 #, gcc-internal-format msgid "%<__thread%> before %" msgstr "" -#: c/c-decl.c:11126 +#: c/c-decl.c:11143 #, gcc-internal-format msgid "duplicate %<_Thread_local%> or %<__thread%>" msgstr "" -#: c/c-decl.c:11134 +#: c/c-decl.c:11151 #, gcc-internal-format msgid "multiple storage classes in declaration specifiers" msgstr "" -#: c/c-decl.c:11142 +#: c/c-decl.c:11159 #, gcc-internal-format msgid "%qs used with %qE" msgstr "" -#: c/c-decl.c:11218 +#: c/c-decl.c:11235 #, gcc-internal-format msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>" msgstr "" -#: c/c-decl.c:11233 +#: c/c-decl.c:11250 #, gcc-internal-format msgid "ISO C does not support plain % meaning %" msgstr "" -#: c/c-decl.c:11284 c/c-decl.c:11300 c/c-decl.c:11326 +#: c/c-decl.c:11301 c/c-decl.c:11317 c/c-decl.c:11343 #, gcc-internal-format msgid "ISO C does not support complex integer types" msgstr "" -#: c/c-decl.c:11724 cp/semantics.c:5491 +#: c/c-decl.c:11741 cp/semantics.c:5483 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> combiner refers to variable %qD which is " "not % nor %" msgstr "" -#: c/c-decl.c:11728 cp/semantics.c:5495 +#: c/c-decl.c:11745 cp/semantics.c:5487 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> initializer refers to variable %qD which " "is not % nor %" msgstr "" -#: c/c-fold.c:385 c/c-typeck.c:11838 cp/typeck.c:4814 +#: c/c-fold.c:385 c/c-typeck.c:11843 cp/typeck.c:4832 #, gcc-internal-format msgid "left shift of negative value" msgstr "" -#: c/c-fold.c:395 c/c-typeck.c:11847 cp/typeck.c:4822 +#: c/c-fold.c:395 c/c-typeck.c:11852 cp/typeck.c:4840 #, gcc-internal-format msgid "left shift count is negative" msgstr "" -#: c/c-fold.c:396 c/c-typeck.c:11777 cp/typeck.c:4767 +#: c/c-fold.c:396 c/c-typeck.c:11782 cp/typeck.c:4785 #, gcc-internal-format msgid "right shift count is negative" msgstr "" -#: c/c-fold.c:404 c/c-typeck.c:11866 cp/typeck.c:4830 +#: c/c-fold.c:404 c/c-typeck.c:11871 cp/typeck.c:4848 #, gcc-internal-format msgid "left shift count >= width of type" msgstr "" -#: c/c-fold.c:405 c/c-typeck.c:11801 cp/typeck.c:4775 +#: c/c-fold.c:405 c/c-typeck.c:11806 cp/typeck.c:4793 #, gcc-internal-format msgid "right shift count >= width of type" msgstr "" -#: c/c-fold.c:412 c/c-typeck.c:11858 +#: c/c-fold.c:412 c/c-typeck.c:11863 #, gcc-internal-format msgid "left shift count >= width of vector element" msgstr "" -#: c/c-fold.c:413 c/c-typeck.c:11788 +#: c/c-fold.c:413 c/c-typeck.c:11793 #, gcc-internal-format msgid "right shift count >= width of vector element" msgstr "" @@ -37056,7 +37067,7 @@ msgstr "" msgid "ISO C forbids an empty translation unit" msgstr "" -#: c/c-parser.c:1629 c/c-parser.c:10331 +#: c/c-parser.c:1629 c/c-parser.c:10348 #, gcc-internal-format msgid "ISO C does not allow extra %<;%> outside of a function" msgstr "" @@ -37086,8 +37097,8 @@ msgstr "" msgid "unknown type name %qE" msgstr "" -#: c/c-parser.c:1859 c/c-parser.c:11564 c/c-parser.c:17329 c/c-parser.c:17818 -#: c/c-parser.c:18300 cp/parser.c:37977 cp/parser.c:41129 +#: c/c-parser.c:1859 c/c-parser.c:11581 c/c-parser.c:17346 c/c-parser.c:17835 +#: c/c-parser.c:18317 cp/parser.c:37977 cp/parser.c:41129 #, gcc-internal-format msgid "expected declaration specifiers" msgstr "" @@ -37185,7 +37196,7 @@ msgstr "" msgid "ISO C90 does not support %<_Static_assert%>" msgstr "" -#: c/c-parser.c:2463 c/c-parser.c:4189 c/c-parser.c:11622 cp/parser.c:40752 +#: c/c-parser.c:2463 c/c-parser.c:4189 c/c-parser.c:11639 cp/parser.c:40752 #, gcc-internal-format msgid "expected string literal" msgstr "" @@ -37215,7 +37226,7 @@ msgstr "" msgid "static assertion failed: %E" msgstr "" -#: c/c-parser.c:2502 cp/semantics.c:9326 +#: c/c-parser.c:2502 cp/semantics.c:9318 #, gcc-internal-format msgid "static assertion failed" msgstr "" @@ -37251,15 +37262,15 @@ msgid "empty enum is invalid" msgstr "" #: c/c-parser.c:2985 c/c-parser.c:3919 c/c-parser.c:4726 c/c-parser.c:5021 -#: c/c-parser.c:6550 c/c-parser.c:6638 c/c-parser.c:7344 c/c-parser.c:7646 -#: c/c-parser.c:7655 c/c-parser.c:8141 c/c-parser.c:8346 c/c-parser.c:8372 -#: c/c-parser.c:9200 c/c-parser.c:9624 c/c-parser.c:9661 c/c-parser.c:9914 -#: c/c-parser.c:9964 c/c-parser.c:10124 c/c-parser.c:10154 c/c-parser.c:10162 -#: c/c-parser.c:10191 c/c-parser.c:10204 c/c-parser.c:10510 c/c-parser.c:10634 -#: c/c-parser.c:11079 c/c-parser.c:11114 c/c-parser.c:11167 c/c-parser.c:11220 -#: c/c-parser.c:11236 c/c-parser.c:11282 c/c-parser.c:11939 c/c-parser.c:12050 -#: c/c-parser.c:14201 c/c-parser.c:14311 c/c-parser.c:14584 c/c-parser.c:16535 -#: c/c-parser.c:19644 c/gimple-parser.c:1478 c/gimple-parser.c:1516 +#: c/c-parser.c:6567 c/c-parser.c:6655 c/c-parser.c:7361 c/c-parser.c:7663 +#: c/c-parser.c:7672 c/c-parser.c:8158 c/c-parser.c:8363 c/c-parser.c:8389 +#: c/c-parser.c:9217 c/c-parser.c:9641 c/c-parser.c:9678 c/c-parser.c:9931 +#: c/c-parser.c:9981 c/c-parser.c:10141 c/c-parser.c:10171 c/c-parser.c:10179 +#: c/c-parser.c:10208 c/c-parser.c:10221 c/c-parser.c:10527 c/c-parser.c:10651 +#: c/c-parser.c:11096 c/c-parser.c:11131 c/c-parser.c:11184 c/c-parser.c:11237 +#: c/c-parser.c:11253 c/c-parser.c:11299 c/c-parser.c:11956 c/c-parser.c:12067 +#: c/c-parser.c:14218 c/c-parser.c:14328 c/c-parser.c:14601 c/c-parser.c:16552 +#: c/c-parser.c:19661 c/gimple-parser.c:1478 c/gimple-parser.c:1516 #: cp/parser.c:8602 cp/parser.c:29415 cp/parser.c:31951 cp/parser.c:31981 #: cp/parser.c:32051 cp/parser.c:34414 cp/parser.c:34536 cp/parser.c:40468 #, gcc-internal-format @@ -37451,542 +37462,542 @@ msgstr "" msgid "suggest explicit braces to avoid ambiguous %" msgstr "" -#: c/c-parser.c:6036 +#: c/c-parser.c:6037 #, gcc-internal-format msgid "suggest braces around empty body in % statement" msgstr "" -#: c/c-parser.c:6169 c/c-parser.c:6199 +#: c/c-parser.c:6174 c/c-parser.c:6205 #, gcc-internal-format msgid "multiple iterating variables in fast enumeration" msgstr "" -#: c/c-parser.c:6221 +#: c/c-parser.c:6228 #, gcc-internal-format msgid "invalid iterating variable in fast enumeration" msgstr "" -#: c/c-parser.c:6242 cp/parser.c:12187 +#: c/c-parser.c:6253 cp/parser.c:12187 #, gcc-internal-format msgid "missing loop condition in loop with % pragma" msgstr "" -#: c/c-parser.c:6248 cp/parser.c:12193 +#: c/c-parser.c:6259 cp/parser.c:12193 #, gcc-internal-format msgid "missing loop condition in loop with % pragma" msgstr "" -#: c/c-parser.c:6282 +#: c/c-parser.c:6295 #, gcc-internal-format msgid "missing collection in fast enumeration" msgstr "" -#: c/c-parser.c:6386 c/c-parser.c:6397 c/c-parser.c:6408 +#: c/c-parser.c:6403 c/c-parser.c:6414 c/c-parser.c:6425 #, gcc-internal-format msgid "duplicate asm qualifier %qE" msgstr "" -#: c/c-parser.c:6387 c/c-parser.c:6398 c/c-parser.c:6409 cp/parser.c:19841 +#: c/c-parser.c:6404 c/c-parser.c:6415 c/c-parser.c:6426 cp/parser.c:19841 #: cp/parser.c:19857 cp/parser.c:19870 #, gcc-internal-format msgid "first seen here" msgstr "" -#: c/c-parser.c:6418 +#: c/c-parser.c:6435 #, gcc-internal-format msgid "%qE is not an asm qualifier" msgstr "" -#: c/c-parser.c:6461 +#: c/c-parser.c:6478 #, gcc-internal-format msgid "expected %<:%> or %<)%>" msgstr "" -#: c/c-parser.c:6776 +#: c/c-parser.c:6793 #, gcc-internal-format msgid "ISO C forbids omitting the middle term of a ?: expression" msgstr "" #. Location of the binary operator. #. Quiet warning. -#: c/c-parser.c:6984 cp/typeck.c:4601 +#: c/c-parser.c:7001 cp/typeck.c:4619 #, gcc-internal-format msgid "" "division % does not compute the number of array " "elements" msgstr "" -#: c/c-parser.c:6990 cp/typeck.c:4606 +#: c/c-parser.c:7007 cp/typeck.c:4624 #, gcc-internal-format msgid "first % operand was declared here" msgstr "" -#: c/c-parser.c:7208 +#: c/c-parser.c:7225 #, gcc-internal-format msgid "alignment specified for type name in cast" msgstr "" -#: c/c-parser.c:7307 +#: c/c-parser.c:7324 #, gcc-internal-format msgid "traditional C rejects the unary plus operator" msgstr "" -#: c/c-parser.c:7438 +#: c/c-parser.c:7455 #, gcc-internal-format msgid "alignment specified for type name in %" msgstr "" -#: c/c-parser.c:7454 +#: c/c-parser.c:7471 #, gcc-internal-format msgid "% applied to a bit-field" msgstr "" -#: c/c-parser.c:7523 +#: c/c-parser.c:7540 #, gcc-internal-format msgid "alignment specified for type name in %qE" msgstr "" -#: c/c-parser.c:7546 +#: c/c-parser.c:7563 #, gcc-internal-format msgid "ISO C does not allow %<%E (expression)%>" msgstr "" -#: c/c-parser.c:7694 +#: c/c-parser.c:7711 #, gcc-internal-format msgid "cannot take address of %qs" msgstr "" -#: c/c-parser.c:7777 +#: c/c-parser.c:7794 #, gcc-internal-format msgid "ISO C99 does not support %<_Generic%>" msgstr "" -#: c/c-parser.c:7780 +#: c/c-parser.c:7797 #, gcc-internal-format msgid "ISO C90 does not support %<_Generic%>" msgstr "" -#: c/c-parser.c:7848 +#: c/c-parser.c:7865 #, gcc-internal-format msgid "%<_Generic%> association has function type" msgstr "" -#: c/c-parser.c:7851 +#: c/c-parser.c:7868 #, gcc-internal-format msgid "%<_Generic%> association has incomplete type" msgstr "" -#: c/c-parser.c:7855 +#: c/c-parser.c:7872 #, gcc-internal-format msgid "%<_Generic%> association has variable length type" msgstr "" -#: c/c-parser.c:7879 +#: c/c-parser.c:7896 #, gcc-internal-format msgid "duplicate % case in %<_Generic%>" msgstr "" -#: c/c-parser.c:7880 +#: c/c-parser.c:7897 #, gcc-internal-format msgid "original % is here" msgstr "" -#: c/c-parser.c:7888 +#: c/c-parser.c:7905 #, gcc-internal-format msgid "%<_Generic%> specifies two compatible types" msgstr "" -#: c/c-parser.c:7889 +#: c/c-parser.c:7906 #, gcc-internal-format msgid "compatible type is here" msgstr "" -#: c/c-parser.c:7912 +#: c/c-parser.c:7929 #, gcc-internal-format msgid "%<_Generic%> selector matches multiple associations" msgstr "" -#: c/c-parser.c:7914 +#: c/c-parser.c:7931 #, gcc-internal-format msgid "other match is here" msgstr "" -#: c/c-parser.c:7933 +#: c/c-parser.c:7950 #, gcc-internal-format msgid "" "%<_Generic%> selector of type %qT is not compatible with any association" msgstr "" -#: c/c-parser.c:7954 +#: c/c-parser.c:7971 #, gcc-internal-format msgid "argument %u of %<__builtin_tgmath%> is not a function pointer" msgstr "" -#: c/c-parser.c:7962 +#: c/c-parser.c:7979 #, gcc-internal-format msgid "argument %u of %<__builtin_tgmath%> is unprototyped" msgstr "" -#: c/c-parser.c:7968 +#: c/c-parser.c:7985 #, gcc-internal-format msgid "argument %u of %<__builtin_tgmath%> has variable arguments" msgstr "" -#: c/c-parser.c:7984 +#: c/c-parser.c:8001 #, gcc-internal-format msgid "argument %u of %<__builtin_tgmath%> has no arguments" msgstr "" -#: c/c-parser.c:8155 c/c-parser.c:9242 c/c-parser.c:9264 c/gimple-parser.c:1398 +#: c/c-parser.c:8172 c/c-parser.c:9259 c/c-parser.c:9281 c/gimple-parser.c:1398 #: c/gimple-parser.c:1404 c/gimple-parser.c:1918 #, gcc-internal-format msgid "expected expression" msgstr "" -#: c/c-parser.c:8176 +#: c/c-parser.c:8193 #, gcc-internal-format msgid "braced-group within expression allowed only inside a function" msgstr "" -#: c/c-parser.c:8190 +#: c/c-parser.c:8207 #, gcc-internal-format msgid "ISO C forbids braced-groups within expressions" msgstr "" -#: c/c-parser.c:8217 +#: c/c-parser.c:8234 #, gcc-internal-format msgid "ISO C does not support %<__FUNCTION__%> predefined identifier" msgstr "" -#: c/c-parser.c:8226 +#: c/c-parser.c:8243 #, gcc-internal-format msgid "ISO C does not support %<__PRETTY_FUNCTION__%> predefined identifier" msgstr "" -#: c/c-parser.c:8235 +#: c/c-parser.c:8252 #, gcc-internal-format msgid "ISO C90 does not support %<__func__%> predefined identifier" msgstr "" -#: c/c-parser.c:8399 +#: c/c-parser.c:8416 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_choose_expr%>" msgstr "" -#: c/c-parser.c:8415 +#: c/c-parser.c:8432 #, gcc-internal-format msgid "first argument to %<__builtin_choose_expr%> not a constant" msgstr "" -#: c/c-parser.c:8485 c/c-parser.c:8502 c/c-parser.c:8509 +#: c/c-parser.c:8502 c/c-parser.c:8519 c/c-parser.c:8526 #, gcc-internal-format msgid "too few arguments to %<__builtin_tgmath%>" msgstr "" -#: c/c-parser.c:8530 +#: c/c-parser.c:8547 #, gcc-internal-format msgid "argument %u of %<__builtin_tgmath%> has wrong number of arguments" msgstr "" -#: c/c-parser.c:8574 c/c-parser.c:8584 +#: c/c-parser.c:8591 c/c-parser.c:8601 #, gcc-internal-format msgid "" "invalid type-generic return type for argument %u of %<__builtin_tgmath%>" msgstr "" -#: c/c-parser.c:8606 c/c-parser.c:8616 +#: c/c-parser.c:8623 c/c-parser.c:8633 #, gcc-internal-format msgid "" "invalid type-generic type for argument %u of argument %u of " "%<__builtin_tgmath%>" msgstr "" -#: c/c-parser.c:8649 +#: c/c-parser.c:8666 #, gcc-internal-format msgid "function arguments of %<__builtin_tgmath%> all have the same type" msgstr "" -#: c/c-parser.c:8668 +#: c/c-parser.c:8685 #, gcc-internal-format msgid "function arguments of %<__builtin_tgmath%> lack type-generic parameter" msgstr "" -#: c/c-parser.c:8716 +#: c/c-parser.c:8733 #, gcc-internal-format msgid "" "duplicate type-generic parameter type for function argument %u of " "%<__builtin_tgmath%>" msgstr "" -#: c/c-parser.c:8739 +#: c/c-parser.c:8756 #, gcc-internal-format msgid "bad return type for function argument %u of %<__builtin_tgmath%>" msgstr "" -#: c/c-parser.c:8756 +#: c/c-parser.c:8773 #, gcc-internal-format msgid "" "bad type for argument %u of function argument %u of %<__builtin_tgmath%>" msgstr "" -#: c/c-parser.c:8794 +#: c/c-parser.c:8811 #, gcc-internal-format, gfc-internal-format msgid "invalid type of argument %u of type-generic function" msgstr "" -#: c/c-parser.c:8805 +#: c/c-parser.c:8822 #, gcc-internal-format, gfc-internal-format msgid "" "decimal floating-point argument %u to complex-only type-generic function" msgstr "" -#: c/c-parser.c:8813 +#: c/c-parser.c:8830 #, gcc-internal-format, gfc-internal-format msgid "decimal floating-point argument %u to binary-only type-generic function" msgstr "" -#: c/c-parser.c:8821 c/c-parser.c:8851 +#: c/c-parser.c:8838 c/c-parser.c:8868 #, gcc-internal-format msgid "" "both complex and decimal floating-point arguments to type-generic function" msgstr "" -#: c/c-parser.c:8829 c/c-parser.c:8871 +#: c/c-parser.c:8846 c/c-parser.c:8888 #, gcc-internal-format msgid "" "both binary and decimal floating-point arguments to type-generic function" msgstr "" -#: c/c-parser.c:8843 +#: c/c-parser.c:8860 #, gcc-internal-format, gfc-internal-format msgid "complex argument %u to decimal-only type-generic function" msgstr "" -#: c/c-parser.c:8863 +#: c/c-parser.c:8880 #, gcc-internal-format, gfc-internal-format msgid "binary argument %u to decimal-only type-generic function" msgstr "" -#: c/c-parser.c:8969 +#: c/c-parser.c:8986 #, gcc-internal-format msgid "no matching function for type-generic call" msgstr "" -#: c/c-parser.c:9010 +#: c/c-parser.c:9027 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_call_with_static_chain%>" msgstr "" -#: c/c-parser.c:9023 +#: c/c-parser.c:9040 #, gcc-internal-format msgid "" "first argument to %<__builtin_call_with_static_chain%> must be a call " "expression" msgstr "" -#: c/c-parser.c:9027 +#: c/c-parser.c:9044 #, gcc-internal-format msgid "" "second argument to %<__builtin_call_with_static_chain%> must be a pointer " "type" msgstr "" -#: c/c-parser.c:9053 +#: c/c-parser.c:9070 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_complex%>" msgstr "" -#: c/c-parser.c:9075 +#: c/c-parser.c:9092 #, gcc-internal-format msgid "%<__builtin_complex%> operand not of real binary floating-point type" msgstr "" -#: c/c-parser.c:9084 +#: c/c-parser.c:9101 #, gcc-internal-format msgid "%<__builtin_complex%> operands of different types" msgstr "" -#: c/c-parser.c:9129 cp/parser.c:7045 +#: c/c-parser.c:9146 cp/parser.c:7045 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_shuffle%>" msgstr "" -#: c/c-parser.c:9302 +#: c/c-parser.c:9319 #, gcc-internal-format msgid "compound literal has variable size" msgstr "" -#: c/c-parser.c:9313 +#: c/c-parser.c:9330 #, gcc-internal-format msgid "compound literal qualified by address-space qualifier" msgstr "" -#: c/c-parser.c:9317 +#: c/c-parser.c:9334 #, gcc-internal-format msgid "ISO C90 forbids compound literals" msgstr "" -#: c/c-parser.c:9330 +#: c/c-parser.c:9347 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of compound literal" msgstr "" -#: c/c-parser.c:9404 +#: c/c-parser.c:9421 #, gcc-internal-format msgid "" "using integer absolute value function %qD when argument is of floating point " "type %qT" msgstr "" -#: c/c-parser.c:9409 +#: c/c-parser.c:9426 #, gcc-internal-format msgid "" "using integer absolute value function %qD when argument is of complex type " "%qT" msgstr "" -#: c/c-parser.c:9417 +#: c/c-parser.c:9434 #, gcc-internal-format msgid "taking the absolute value of unsigned type %qT has no effect" msgstr "" -#: c/c-parser.c:9428 +#: c/c-parser.c:9445 #, gcc-internal-format msgid "" "using floating point absolute value function %qD when argument is of integer " "type %qT" msgstr "" -#: c/c-parser.c:9432 +#: c/c-parser.c:9449 #, gcc-internal-format msgid "" "using floating point absolute value function %qD when argument is of decimal " "floating point type %qT" msgstr "" -#: c/c-parser.c:9437 +#: c/c-parser.c:9454 #, gcc-internal-format msgid "" "using floating point absolute value function %qD when argument is of complex " "type %qT" msgstr "" -#: c/c-parser.c:9450 +#: c/c-parser.c:9467 #, gcc-internal-format msgid "" "using complex absolute value function %qD when argument is of integer type " "%qT" msgstr "" -#: c/c-parser.c:9454 +#: c/c-parser.c:9471 #, gcc-internal-format msgid "" "using complex absolute value function %qD when argument is of floating point " "type %qT" msgstr "" -#: c/c-parser.c:9471 +#: c/c-parser.c:9488 #, gcc-internal-format msgid "" "using decimal floating point absolute value function %qD when argument is of " "integer type %qT" msgstr "" -#: c/c-parser.c:9476 +#: c/c-parser.c:9493 #, gcc-internal-format msgid "" "using decimal floating point absolute value function %qD when argument is of " "floating point type %qT" msgstr "" -#: c/c-parser.c:9481 +#: c/c-parser.c:9498 #, gcc-internal-format msgid "" "using decimal floating point absolute value function %qD when argument is of " "complex type %qT" msgstr "" -#: c/c-parser.c:9507 +#: c/c-parser.c:9524 #, gcc-internal-format msgid "" "absolute value function %qD given an argument of type %qT but has parameter " "of type %qT which may cause truncation of value" msgstr "" -#: c/c-parser.c:9935 +#: c/c-parser.c:9952 #, gcc-internal-format msgid "expected identifier or %<)%>" msgstr "" -#: c/c-parser.c:10031 +#: c/c-parser.c:10048 #, gcc-internal-format msgid "extra semicolon" msgstr "" -#: c/c-parser.c:10279 +#: c/c-parser.c:10296 #, gcc-internal-format msgid "extra semicolon in method definition specified" msgstr "" -#: c/c-parser.c:10411 +#: c/c-parser.c:10428 #, gcc-internal-format msgid "method attributes must be specified at the end only" msgstr "" -#: c/c-parser.c:10431 +#: c/c-parser.c:10448 #, gcc-internal-format msgid "expected %<;%> or %<{%> after method attribute definition" msgstr "" -#: c/c-parser.c:10553 +#: c/c-parser.c:10570 #, gcc-internal-format msgid "objective-c method declaration is expected" msgstr "" -#: c/c-parser.c:10991 +#: c/c-parser.c:11008 #, gcc-internal-format msgid "no type or storage class may be specified here," msgstr "" -#: c/c-parser.c:11083 c/c-parser.c:11140 cp/parser.c:32011 +#: c/c-parser.c:11100 c/c-parser.c:11157 cp/parser.c:32011 #, gcc-internal-format msgid "unknown property attribute" msgstr "" -#: c/c-parser.c:11104 cp/parser.c:31971 +#: c/c-parser.c:11121 cp/parser.c:31971 #, gcc-internal-format msgid "missing %<=%> (after % attribute)" msgstr "" -#: c/c-parser.c:11107 cp/parser.c:31974 +#: c/c-parser.c:11124 cp/parser.c:31974 #, gcc-internal-format msgid "missing %<=%> (after % attribute)" msgstr "" -#: c/c-parser.c:11121 cp/parser.c:31989 +#: c/c-parser.c:11138 cp/parser.c:31989 #, gcc-internal-format msgid "the % attribute may only be specified once" msgstr "" -#: c/c-parser.c:11126 cp/parser.c:31995 +#: c/c-parser.c:11143 cp/parser.c:31995 #, gcc-internal-format msgid "setter name must terminate with %<:%>" msgstr "" -#: c/c-parser.c:11133 cp/parser.c:32003 +#: c/c-parser.c:11150 cp/parser.c:32003 #, gcc-internal-format msgid "the % attribute may only be specified once" msgstr "" -#: c/c-parser.c:11327 cp/parser.c:40792 +#: c/c-parser.c:11344 cp/parser.c:40792 #, gcc-internal-format msgid "" "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a " "non-negative integral constant less than %u" msgstr "" -#: c/c-parser.c:11371 c/c-parser.c:17815 c/c-parser.c:18079 c/c-parser.c:18138 -#: c/c-parser.c:18222 cp/parser.c:37974 cp/parser.c:38273 cp/parser.c:38361 +#: c/c-parser.c:11388 c/c-parser.c:17832 c/c-parser.c:18096 c/c-parser.c:18155 +#: c/c-parser.c:18239 cp/parser.c:37974 cp/parser.c:38273 cp/parser.c:38361 #: cp/parser.c:38432 cp/parser.c:40839 cp/parser.c:40854 cp/parser.c:40869 #: cp/parser.c:40885 cp/parser.c:40901 cp/parser.c:40917 cp/parser.c:40944 #: cp/parser.c:40957 cp/parser.c:40980 cp/parser.c:40993 @@ -37994,803 +38005,803 @@ msgstr "" msgid "%<#pragma %s%> may only be used in compound statements" msgstr "" -#: c/c-parser.c:11394 cp/parser.c:40970 +#: c/c-parser.c:11411 cp/parser.c:40970 #, gcc-internal-format msgid "%<#pragma acc routine%> must be at file scope" msgstr "" -#: c/c-parser.c:11481 cp/parser.c:41054 +#: c/c-parser.c:11498 cp/parser.c:41054 #, gcc-internal-format msgid "" "%<#pragma omp section%> may only be used in %<#pragma omp sections%> " "construct" msgstr "" -#: c/c-parser.c:11509 c/c-parser.c:11533 cp/parser.c:41083 cp/parser.c:41116 +#: c/c-parser.c:11526 c/c-parser.c:11550 cp/parser.c:41083 cp/parser.c:41116 #, gcc-internal-format msgid "for, while or do statement expected" msgstr "" -#: c/c-parser.c:11546 cp/parser.c:40829 +#: c/c-parser.c:11563 cp/parser.c:40829 #, gcc-internal-format msgid "%<#pragma GCC pch_preprocess%> must be first" msgstr "" -#: c/c-parser.c:11868 c/c-parser.c:19293 c/c-parser.c:19301 cp/parser.c:32405 +#: c/c-parser.c:11885 c/c-parser.c:19310 c/c-parser.c:19318 cp/parser.c:32405 #: cp/parser.c:39940 cp/parser.c:39948 #, gcc-internal-format msgid "too many %qs clauses" msgstr "" -#: c/c-parser.c:11897 +#: c/c-parser.c:11914 #, gcc-internal-format msgid "expression must be integral" msgstr "" -#: c/c-parser.c:12119 c/c-parser.c:12131 +#: c/c-parser.c:12136 c/c-parser.c:12148 #, gcc-internal-format msgid "expected %<)%> or %<,%>" msgstr "" -#: c/c-parser.c:12266 c/c-parser.c:19586 +#: c/c-parser.c:12283 c/c-parser.c:19603 #, gcc-internal-format msgid "%qD is not a variable" msgstr "" -#: c/c-parser.c:12270 cp/semantics.c:7243 +#: c/c-parser.c:12287 cp/semantics.c:7235 #, gcc-internal-format msgid "%qD is not a pointer variable" msgstr "" -#: c/c-parser.c:12312 cp/parser.c:33051 +#: c/c-parser.c:12329 cp/parser.c:33051 #, gcc-internal-format msgid "collapse argument needs positive constant integer expression" msgstr "" -#: c/c-parser.c:12389 cp/parser.c:33115 +#: c/c-parser.c:12406 cp/parser.c:33115 #, gcc-internal-format msgid "expected % or %" msgstr "" -#: c/c-parser.c:12391 cp/parser.c:33117 +#: c/c-parser.c:12408 cp/parser.c:33117 #, gcc-internal-format msgid "expected % or %" msgstr "" -#: c/c-parser.c:12511 cp/parser.c:33228 +#: c/c-parser.c:12528 cp/parser.c:33228 #, gcc-internal-format msgid "expected %, %, % or %" msgstr "" -#: c/c-parser.c:12531 c/c-parser.c:18131 c/c-parser.c:18215 cp/parser.c:33246 +#: c/c-parser.c:12548 c/c-parser.c:18148 c/c-parser.c:18232 cp/parser.c:33246 #: cp/parser.c:38265 cp/parser.c:38353 #, gcc-internal-format msgid "expected %" msgstr "" -#: c/c-parser.c:12584 cp/parser.c:33301 +#: c/c-parser.c:12601 cp/parser.c:33301 #, gcc-internal-format msgid "too many % clauses with %qs modifier" msgstr "" -#: c/c-parser.c:12591 cp/parser.c:33308 +#: c/c-parser.c:12608 cp/parser.c:33308 #, gcc-internal-format msgid "too many % clauses" msgstr "" -#: c/c-parser.c:12593 cp/parser.c:33310 +#: c/c-parser.c:12610 cp/parser.c:33310 #, gcc-internal-format msgid "too many % clauses without modifier" msgstr "" -#: c/c-parser.c:12599 cp/parser.c:33316 +#: c/c-parser.c:12616 cp/parser.c:33316 #, gcc-internal-format msgid "" "if any % clause has modifier, then all % clauses have to use " "modifier" msgstr "" -#: c/c-parser.c:12704 c/c-parser.c:12750 c/c-parser.c:12796 c/c-parser.c:12842 -#: c/c-parser.c:13249 c/c-parser.c:13331 c/c-parser.c:13790 c/c-parser.c:13918 -#: c/c-parser.c:13963 c/c-parser.c:14639 +#: c/c-parser.c:12721 c/c-parser.c:12767 c/c-parser.c:12813 c/c-parser.c:12859 +#: c/c-parser.c:13266 c/c-parser.c:13348 c/c-parser.c:13807 c/c-parser.c:13935 +#: c/c-parser.c:13980 c/c-parser.c:14656 #, gcc-internal-format msgid "expected integer expression" msgstr "" -#: c/c-parser.c:12715 +#: c/c-parser.c:12732 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:12761 +#: c/c-parser.c:12778 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:12807 cp/semantics.c:7438 +#: c/c-parser.c:12824 cp/semantics.c:7430 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:12854 cp/semantics.c:7468 +#: c/c-parser.c:12871 cp/semantics.c:7460 #, gcc-internal-format msgid "% value must be non-negative" msgstr "" -#: c/c-parser.c:12890 +#: c/c-parser.c:12907 #, gcc-internal-format msgid "expected constant integer expression" msgstr "" -#: c/c-parser.c:12929 cp/parser.c:33541 +#: c/c-parser.c:12946 cp/parser.c:33541 #, gcc-internal-format msgid "" "expected %, %, %, %, %, % " "or %" msgstr "" -#: c/c-parser.c:12990 cp/parser.c:33606 +#: c/c-parser.c:13007 cp/parser.c:33606 #, gcc-internal-format msgid "expected %, % or %" msgstr "" -#: c/c-parser.c:13056 cp/parser.c:33675 +#: c/c-parser.c:13073 cp/parser.c:33675 #, gcc-internal-format msgid "too many % clauses with %qs category" msgstr "" -#: c/c-parser.c:13059 cp/parser.c:33678 +#: c/c-parser.c:13076 cp/parser.c:33678 #, gcc-internal-format msgid "too many % clauses with unspecified category" msgstr "" -#: c/c-parser.c:13123 cp/semantics.c:6633 +#: c/c-parser.c:13140 cp/semantics.c:6625 #, gcc-internal-format msgid "%qs expression must be integral" msgstr "" -#: c/c-parser.c:13135 c/c-parser.c:13258 cp/semantics.c:6665 +#: c/c-parser.c:13152 c/c-parser.c:13275 cp/semantics.c:6657 #, gcc-internal-format msgid "%qs value must be positive" msgstr "" -#: c/c-parser.c:13197 cp/parser.c:32823 +#: c/c-parser.c:13214 cp/parser.c:32823 #, gcc-internal-format msgid "too many % arguments" msgstr "" -#: c/c-parser.c:13231 cp/parser.c:32856 +#: c/c-parser.c:13248 cp/parser.c:32856 #, gcc-internal-format msgid "unexpected argument" msgstr "" -#: c/c-parser.c:13398 cp/semantics.c:7577 +#: c/c-parser.c:13415 cp/semantics.c:7569 #, gcc-internal-format msgid "% argument needs positive integral constant" msgstr "" -#: c/c-parser.c:13472 cp/parser.c:33732 +#: c/c-parser.c:13489 cp/parser.c:33732 #, gcc-internal-format msgid "ordered argument needs positive constant integer expression" msgstr "" -#: c/c-parser.c:13545 cp/parser.c:33796 +#: c/c-parser.c:13562 cp/parser.c:33796 #, gcc-internal-format msgid "% modifier on % clause not supported yet" msgstr "" -#: c/c-parser.c:13601 c/c-parser.c:18869 cp/parser.c:39608 +#: c/c-parser.c:13618 c/c-parser.c:18886 cp/parser.c:39608 #, gcc-internal-format msgid "" "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or " "identifier" msgstr "" -#: c/c-parser.c:13714 cp/parser.c:33987 +#: c/c-parser.c:13731 cp/parser.c:33987 #, gcc-internal-format msgid "both % and % modifiers specified" msgstr "" -#: c/c-parser.c:13768 cp/parser.c:34003 +#: c/c-parser.c:13785 cp/parser.c:34003 #, gcc-internal-format msgid "schedule % does not take a % parameter" msgstr "" -#: c/c-parser.c:13772 cp/parser.c:34006 +#: c/c-parser.c:13789 cp/parser.c:34006 #, gcc-internal-format msgid "schedule % does not take a % parameter" msgstr "" -#: c/c-parser.c:13784 cp/semantics.c:6700 +#: c/c-parser.c:13801 cp/semantics.c:6692 #, gcc-internal-format msgid "chunk size value must be positive" msgstr "" -#: c/c-parser.c:13807 cp/parser.c:34026 +#: c/c-parser.c:13824 cp/parser.c:34026 #, gcc-internal-format msgid "invalid schedule kind" msgstr "" -#: c/c-parser.c:13928 +#: c/c-parser.c:13945 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:13973 cp/semantics.c:6794 +#: c/c-parser.c:13990 cp/semantics.c:6786 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:14018 cp/semantics.c:6913 +#: c/c-parser.c:14035 cp/semantics.c:6905 #, gcc-internal-format msgid "" "% clause alignment expression must be positive constant integer " "expression" msgstr "" -#: c/c-parser.c:14081 +#: c/c-parser.c:14098 #, gcc-internal-format msgid "% clause step expression must be integral" msgstr "" -#: c/c-parser.c:14131 +#: c/c-parser.c:14148 #, gcc-internal-format msgid "" "% clause expression must be positive constant integer expression" msgstr "" -#: c/c-parser.c:14170 +#: c/c-parser.c:14187 #, gcc-internal-format msgid "" "% clause expression must be positive constant integer expression" msgstr "" -#: c/c-parser.c:14438 cp/parser.c:34668 +#: c/c-parser.c:14455 cp/parser.c:34668 #, gcc-internal-format msgid "% modifier incompatible with %qs" msgstr "" -#: c/c-parser.c:14485 cp/parser.c:34716 cp/parser.c:34943 +#: c/c-parser.c:14502 cp/parser.c:34716 cp/parser.c:34943 #, gcc-internal-format msgid "invalid depend kind" msgstr "" -#: c/c-parser.c:14572 cp/parser.c:34791 +#: c/c-parser.c:14589 cp/parser.c:34791 #, gcc-internal-format msgid "invalid map kind" msgstr "" -#: c/c-parser.c:14670 cp/parser.c:34890 +#: c/c-parser.c:14687 cp/parser.c:34890 #, gcc-internal-format msgid "invalid dist_schedule kind" msgstr "" -#: c/c-parser.c:14742 +#: c/c-parser.c:14759 #, gcc-internal-format msgid "invalid proc_bind kind" msgstr "" -#: c/c-parser.c:14954 cp/parser.c:35162 +#: c/c-parser.c:14971 cp/parser.c:35162 #, gcc-internal-format msgid "expected %<#pragma acc%> clause" msgstr "" -#: c/c-parser.c:14965 c/c-parser.c:15258 cp/parser.c:35173 cp/parser.c:35502 +#: c/c-parser.c:14982 c/c-parser.c:15275 cp/parser.c:35173 cp/parser.c:35502 #, gcc-internal-format msgid "%qs is not valid for %qs" msgstr "" -#: c/c-parser.c:15127 cp/parser.c:35369 +#: c/c-parser.c:15144 cp/parser.c:35369 #, gcc-internal-format msgid "%qs must be the first clause of %qs" msgstr "" -#: c/c-parser.c:15247 cp/parser.c:35491 +#: c/c-parser.c:15264 cp/parser.c:35491 #, gcc-internal-format msgid "expected %<#pragma omp%> clause" msgstr "" -#: c/c-parser.c:15377 cp/parser.c:38774 +#: c/c-parser.c:15394 cp/parser.c:38774 #, gcc-internal-format msgid "no valid clauses specified in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:15387 cp/parser.c:38784 +#: c/c-parser.c:15404 cp/parser.c:38784 #, gcc-internal-format msgid "array section in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:15407 cp/parser.c:38804 +#: c/c-parser.c:15424 cp/parser.c:38804 #, gcc-internal-format msgid "%qD must be a global variable in %<#pragma acc declare link%>" msgstr "" -#: c/c-parser.c:15418 cp/parser.c:38815 +#: c/c-parser.c:15435 cp/parser.c:38815 #, gcc-internal-format msgid "invalid OpenACC clause at file scope" msgstr "" -#: c/c-parser.c:15425 cp/parser.c:38822 +#: c/c-parser.c:15442 cp/parser.c:38822 #, gcc-internal-format msgid "invalid use of % variable %qD in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:15433 cp/parser.c:38830 +#: c/c-parser.c:15450 cp/parser.c:38830 #, gcc-internal-format msgid "invalid use of % variable %qD in %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:15445 cp/parser.c:38842 +#: c/c-parser.c:15462 cp/parser.c:38842 #, gcc-internal-format msgid "variable %qD used more than once with %<#pragma acc declare%>" msgstr "" -#: c/c-parser.c:15536 cp/parser.c:38927 +#: c/c-parser.c:15553 cp/parser.c:38927 #, gcc-internal-format msgid "expected % after %<#pragma acc %s%>" msgstr "" -#: c/c-parser.c:15552 cp/parser.c:38944 +#: c/c-parser.c:15569 cp/parser.c:38944 #, gcc-internal-format msgid "%<#pragma acc %s data%> has no data movement clause" msgstr "" -#: c/c-parser.c:15770 cp/parser.c:2970 +#: c/c-parser.c:15787 cp/parser.c:2970 #, gcc-internal-format msgid "%qE has not been declared" msgstr "" -#: c/c-parser.c:15774 +#: c/c-parser.c:15791 #, gcc-internal-format msgid "expected function name" msgstr "" -#: c/c-parser.c:15789 cp/parser.c:40180 +#: c/c-parser.c:15806 cp/parser.c:40180 #, gcc-internal-format msgid "%qD does not refer to a function" msgstr "" -#: c/c-parser.c:15809 c/c-parser.c:15857 cp/parser.c:1385 +#: c/c-parser.c:15826 c/c-parser.c:15874 cp/parser.c:1385 #, gcc-internal-format msgid "" "%<#pragma acc routine%> not immediately followed by function declaration or " "definition" msgstr "" -#: c/c-parser.c:15849 cp/parser.c:40234 cp/parser.c:40276 +#: c/c-parser.c:15866 cp/parser.c:40234 cp/parser.c:40276 #, gcc-internal-format msgid "" "%<#pragma acc routine%> not immediately followed by a single function " "declaration or definition" msgstr "" -#: c/c-parser.c:15866 cp/parser.c:40290 +#: c/c-parser.c:15883 cp/parser.c:40290 #, gcc-internal-format msgid "%<#pragma acc routine%> already applied to %qD" msgstr "" -#: c/c-parser.c:15875 cp/parser.c:40299 +#: c/c-parser.c:15892 cp/parser.c:40299 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before use" msgstr "" -#: c/c-parser.c:15876 cp/parser.c:40300 +#: c/c-parser.c:15893 cp/parser.c:40300 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before definition" msgstr "" -#: c/c-parser.c:15919 cp/parser.c:39115 +#: c/c-parser.c:15936 cp/parser.c:39115 #, gcc-internal-format msgid "" "%<#pragma acc update%> must contain at least one % or % or " "% clause" msgstr "" -#: c/c-parser.c:16071 cp/parser.c:35668 +#: c/c-parser.c:16088 cp/parser.c:35668 #, gcc-internal-format msgid "" "expected %, %, %, %, %, %, %, % or % clause" msgstr "" -#: c/c-parser.c:16080 cp/parser.c:35677 +#: c/c-parser.c:16097 cp/parser.c:35677 #, gcc-internal-format msgid "too many atomic clauses" msgstr "" -#: c/c-parser.c:16087 cp/parser.c:35684 +#: c/c-parser.c:16104 cp/parser.c:35684 #, gcc-internal-format msgid "too many memory order clauses" msgstr "" -#: c/c-parser.c:16142 cp/parser.c:35739 +#: c/c-parser.c:16159 cp/parser.c:35739 #, gcc-internal-format msgid "" "%<#pragma omp atomic read%> incompatible with % or % " "clauses" msgstr "" -#: c/c-parser.c:16151 cp/parser.c:35748 +#: c/c-parser.c:16168 cp/parser.c:35748 #, gcc-internal-format msgid "" "%<#pragma omp atomic write%> incompatible with % or % " "clauses" msgstr "" -#: c/c-parser.c:16160 cp/parser.c:35757 +#: c/c-parser.c:16177 cp/parser.c:35757 #, gcc-internal-format msgid "" "%<#pragma omp atomic update%> incompatible with % or % " "clauses" msgstr "" -#: c/c-parser.c:16426 cp/parser.c:35962 cp/parser.c:35988 +#: c/c-parser.c:16443 cp/parser.c:35962 cp/parser.c:35988 #, gcc-internal-format msgid "invalid form of %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.c:16430 cp/parser.c:36019 cp/parser.c:36035 +#: c/c-parser.c:16447 cp/parser.c:36019 cp/parser.c:36035 #, gcc-internal-format msgid "invalid operator for %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.c:16479 cp/semantics.c:8959 cp/semantics.c:8969 +#: c/c-parser.c:16496 cp/semantics.c:8951 cp/semantics.c:8961 #, gcc-internal-format msgid "" "%<#pragma omp atomic capture%> uses two different expressions for memory" msgstr "" -#: c/c-parser.c:16548 c/c-parser.c:16705 +#: c/c-parser.c:16565 c/c-parser.c:16722 #, gcc-internal-format msgid "expected %<(%> or end of line" msgstr "" -#: c/c-parser.c:16588 cp/semantics.c:9035 +#: c/c-parser.c:16605 cp/semantics.c:9027 #, gcc-internal-format msgid "% expression is not lvalue expression" msgstr "" -#: c/c-parser.c:16645 cp/parser.c:36220 +#: c/c-parser.c:16662 cp/parser.c:36220 #, gcc-internal-format msgid "expected %, %, % or %" msgstr "" -#: c/c-parser.c:16657 cp/parser.c:36236 +#: c/c-parser.c:16674 cp/parser.c:36236 #, gcc-internal-format msgid "expected %, % or % clause" msgstr "" -#: c/c-parser.c:16693 cp/parser.c:36269 +#: c/c-parser.c:16710 cp/parser.c:36269 #, gcc-internal-format msgid "expected %, % or %" msgstr "" -#: c/c-parser.c:16700 cp/parser.c:36276 +#: c/c-parser.c:16717 cp/parser.c:36276 #, gcc-internal-format msgid "% list specified together with memory order clause" msgstr "" -#: c/c-parser.c:16749 cp/parser.c:36876 +#: c/c-parser.c:16766 cp/parser.c:36876 #, gcc-internal-format msgid "% clause parameter is less than %" msgstr "" -#: c/c-parser.c:16760 cp/parser.c:36887 +#: c/c-parser.c:16777 cp/parser.c:36887 #, gcc-internal-format msgid "" "% clause may not be specified together with % clause with " "a parameter" msgstr "" -#: c/c-parser.c:16778 cp/parser.c:36915 +#: c/c-parser.c:16795 cp/parser.c:36915 #, gcc-internal-format msgid "for statement expected" msgstr "" -#: c/c-parser.c:16848 cp/semantics.c:8564 cp/semantics.c:8655 +#: c/c-parser.c:16865 cp/semantics.c:8556 cp/semantics.c:8647 #, gcc-internal-format msgid "expected iteration declaration or initialization" msgstr "" -#: c/c-parser.c:16940 +#: c/c-parser.c:16957 #, gcc-internal-format msgid "not enough perfectly nested loops" msgstr "" -#: c/c-parser.c:16996 cp/parser.c:37226 +#: c/c-parser.c:17013 cp/parser.c:37226 #, gcc-internal-format msgid "collapsed loops not perfectly nested" msgstr "" -#: c/c-parser.c:17043 cp/parser.c:37024 cp/parser.c:37066 cp/pt.c:16754 +#: c/c-parser.c:17060 cp/parser.c:37024 cp/parser.c:37066 cp/pt.c:16757 #, gcc-internal-format msgid "iteration variable %qD should not be firstprivate" msgstr "" -#: c/c-parser.c:17136 cp/parser.c:37301 +#: c/c-parser.c:17153 cp/parser.c:37301 #, gcc-internal-format msgid "% clause with parameter may not be specified on %qs construct" msgstr "" -#: c/c-parser.c:17348 cp/parser.c:37517 +#: c/c-parser.c:17365 cp/parser.c:37517 #, gcc-internal-format msgid "" "%<#pragma omp ordered%> with % clause may only be used in compound " "statements" msgstr "" -#: c/c-parser.c:17556 cp/parser.c:37716 +#: c/c-parser.c:17573 cp/parser.c:37716 #, gcc-internal-format msgid "expected % after %qs" msgstr "" -#: c/c-parser.c:17806 cp/parser.c:37965 +#: c/c-parser.c:17823 cp/parser.c:37965 #, gcc-internal-format msgid "expected %" msgstr "" -#: c/c-parser.c:18030 cp/parser.c:38205 +#: c/c-parser.c:18047 cp/parser.c:38205 #, gcc-internal-format msgid "" "%<#pragma omp target data%> with map-type other than %, %, " "% or % on % clause" msgstr "" -#: c/c-parser.c:18045 cp/parser.c:38220 +#: c/c-parser.c:18062 cp/parser.c:38220 #, gcc-internal-format msgid "" "%<#pragma omp target data%> must contain at least one % or " "% clause" msgstr "" -#: c/c-parser.c:18092 cp/parser.c:38445 +#: c/c-parser.c:18109 cp/parser.c:38445 #, gcc-internal-format msgid "" "%<#pragma omp target update%> must contain at least one % or % " "clauses" msgstr "" -#: c/c-parser.c:18164 cp/parser.c:38300 +#: c/c-parser.c:18181 cp/parser.c:38300 #, gcc-internal-format msgid "" "%<#pragma omp target enter data%> with map-type other than % or % on % clause" msgstr "" -#: c/c-parser.c:18176 cp/parser.c:38312 +#: c/c-parser.c:18193 cp/parser.c:38312 #, gcc-internal-format msgid "" "%<#pragma omp target enter data%> must contain at least one % clause" msgstr "" -#: c/c-parser.c:18250 cp/parser.c:38389 +#: c/c-parser.c:18267 cp/parser.c:38389 #, gcc-internal-format msgid "" "%<#pragma omp target exit data%> with map-type other than %, % or % on % clause" msgstr "" -#: c/c-parser.c:18263 cp/parser.c:38402 +#: c/c-parser.c:18280 cp/parser.c:38402 #, gcc-internal-format msgid "" "%<#pragma omp target exit data%> must contain at least one % clause" msgstr "" -#: c/c-parser.c:18482 cp/parser.c:38659 +#: c/c-parser.c:18499 cp/parser.c:38659 #, gcc-internal-format msgid "" "%<#pragma omp target%> with map-type other than %, %, % " "or % on % clause" msgstr "" -#: c/c-parser.c:18532 +#: c/c-parser.c:18549 #, gcc-internal-format msgid "" "%<#pragma omp declare simd%> must be followed by function declaration or " "definition or another %<#pragma omp declare simd%>" msgstr "" -#: c/c-parser.c:18582 c/c-parser.c:18609 +#: c/c-parser.c:18599 c/c-parser.c:18626 #, gcc-internal-format msgid "" "%<#pragma omp declare simd%> must be followed by function declaration or " "definition" msgstr "" -#: c/c-parser.c:18631 +#: c/c-parser.c:18648 #, gcc-internal-format msgid "" "%<#pragma omp declare simd%> not immediately followed by a function " "declaration or definition" msgstr "" -#: c/c-parser.c:18639 cp/parser.c:39236 +#: c/c-parser.c:18656 cp/parser.c:39236 #, gcc-internal-format msgid "" "%<#pragma omp declare simd%> not immediately followed by a single function " "declaration or definition" msgstr "" -#: c/c-parser.c:18718 cp/parser.c:39306 +#: c/c-parser.c:18735 cp/parser.c:39306 #, gcc-internal-format msgid "" "%<#pragma omp declare target%> with clauses in between %<#pragma omp declare " "target%> without clauses and %<#pragma omp end declare target%>" msgstr "" -#: c/c-parser.c:18737 cp/parser.c:39325 +#: c/c-parser.c:18754 cp/parser.c:39325 #, gcc-internal-format msgid "%qD specified both in declare target % and % clauses" msgstr "" -#: c/c-parser.c:18778 cp/parser.c:39372 +#: c/c-parser.c:18795 cp/parser.c:39372 #, gcc-internal-format msgid "expected %" msgstr "" -#: c/c-parser.c:18785 cp/parser.c:39379 +#: c/c-parser.c:18802 cp/parser.c:39379 #, gcc-internal-format msgid "expected %" msgstr "" -#: c/c-parser.c:18791 cp/parser.c:39386 +#: c/c-parser.c:18808 cp/parser.c:39386 #, gcc-internal-format msgid "" "%<#pragma omp end declare target%> without corresponding %<#pragma omp " "declare target%>" msgstr "" -#: c/c-parser.c:18819 +#: c/c-parser.c:18836 #, gcc-internal-format msgid "%<#pragma omp declare reduction%> not at file or block scope" msgstr "" -#: c/c-parser.c:18896 +#: c/c-parser.c:18913 #, gcc-internal-format msgid "predeclared arithmetic type in %<#pragma omp declare reduction%>" msgstr "" -#: c/c-parser.c:18900 +#: c/c-parser.c:18917 #, gcc-internal-format msgid "function or array type in %<#pragma omp declare reduction%>" msgstr "" -#: c/c-parser.c:18903 +#: c/c-parser.c:18920 #, gcc-internal-format msgid "%<_Atomic%> qualified type in %<#pragma omp declare reduction%>" msgstr "" -#: c/c-parser.c:18906 +#: c/c-parser.c:18923 #, gcc-internal-format msgid "" "const, volatile or restrict qualified type in %<#pragma omp declare reduction" "%>" msgstr "" -#: c/c-parser.c:18914 +#: c/c-parser.c:18931 #, gcc-internal-format msgid "redeclaration of %qs %<#pragma omp declare reduction%> for type %qT" msgstr "" -#: c/c-parser.c:18923 +#: c/c-parser.c:18940 #, gcc-internal-format msgid "previous %<#pragma omp declare reduction%>" msgstr "" -#: c/c-parser.c:19040 +#: c/c-parser.c:19057 #, gcc-internal-format msgid "expected % or function-name" msgstr "" -#: c/c-parser.c:19051 +#: c/c-parser.c:19068 #, gcc-internal-format msgid "expected function-name %<(%>" msgstr "" -#: c/c-parser.c:19070 +#: c/c-parser.c:19087 #, gcc-internal-format msgid "one of the initializer call arguments should be %<&omp_priv%>" msgstr "" -#: c/c-parser.c:19191 cp/parser.c:39833 +#: c/c-parser.c:19208 cp/parser.c:39833 #, gcc-internal-format msgid "expected % or % or %" msgstr "" -#: c/c-parser.c:19255 cp/parser.c:39896 +#: c/c-parser.c:19272 cp/parser.c:39896 #, gcc-internal-format msgid "expected %, % or %" msgstr "" -#: c/c-parser.c:19275 cp/parser.c:39922 +#: c/c-parser.c:19292 cp/parser.c:39922 #, gcc-internal-format msgid "" "expected %, %, %, % or % clause" msgstr "" -#: c/c-parser.c:19284 cp/parser.c:39931 +#: c/c-parser.c:19301 cp/parser.c:39931 #, gcc-internal-format msgid "%qs clause on % directive not supported yet" msgstr "" -#: c/c-parser.c:19296 cp/parser.c:39943 +#: c/c-parser.c:19313 cp/parser.c:39943 #, gcc-internal-format msgid "" "%qs clause used lexically after first target construct or offloading API" msgstr "" -#: c/c-parser.c:19308 cp/parser.c:39955 +#: c/c-parser.c:19325 cp/parser.c:39955 #, gcc-internal-format msgid "" "more than one % clause in a single compilation " "unit" msgstr "" -#: c/c-parser.c:19317 cp/parser.c:39964 +#: c/c-parser.c:19334 cp/parser.c:39964 #, gcc-internal-format msgid "" "% clause used lexically after first % " "construct without memory order clause" msgstr "" -#: c/c-parser.c:19331 cp/parser.c:39978 +#: c/c-parser.c:19348 cp/parser.c:39978 #, gcc-internal-format msgid "% requires at least one clause" msgstr "" -#: c/c-parser.c:19350 +#: c/c-parser.c:19367 #, gcc-internal-format msgid "zero sized type %qT in % clause" msgstr "" -#: c/c-parser.c:19356 +#: c/c-parser.c:19373 #, gcc-internal-format msgid "variable sized type %qT in % clause" msgstr "" -#: c/c-parser.c:19588 cp/semantics.c:8025 +#: c/c-parser.c:19605 cp/semantics.c:8017 #, gcc-internal-format msgid "%qE declared % after first use" msgstr "" -#: c/c-parser.c:19590 cp/semantics.c:8027 +#: c/c-parser.c:19607 cp/semantics.c:8019 #, gcc-internal-format msgid "automatic variable %qE cannot be %" msgstr "" -#: c/c-parser.c:19594 cp/semantics.c:8029 +#: c/c-parser.c:19611 cp/semantics.c:8021 #, gcc-internal-format msgid "% %qE has incomplete type" msgstr "" -#: c/c-parser.c:19794 cp/parser.c:40683 +#: c/c-parser.c:19811 cp/parser.c:40683 #, gcc-internal-format msgid "%<__transaction_cancel%> without transactional memory support enabled" msgstr "" -#: c/c-parser.c:19800 cp/parser.c:40689 +#: c/c-parser.c:19817 cp/parser.c:40689 #, gcc-internal-format msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>" msgstr "" -#: c/c-parser.c:19809 cp/parser.c:40698 +#: c/c-parser.c:19826 cp/parser.c:40698 #, gcc-internal-format msgid "" "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>" msgstr "" -#: c/c-parser.c:19811 cp/parser.c:40701 +#: c/c-parser.c:19828 cp/parser.c:40701 #, gcc-internal-format msgid " or a % function" msgstr "" -#: c/c-parser.c:19817 cp/parser.c:40707 +#: c/c-parser.c:19834 cp/parser.c:40707 #, gcc-internal-format msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>" msgstr "" -#: c/c-parser.c:19898 +#: c/c-parser.c:19915 #, gcc-internal-format msgid "no closing brace" msgstr "" @@ -38921,7 +38932,7 @@ msgstr "" msgid "subscripted value is neither array nor pointer nor vector" msgstr "" -#: c/c-typeck.c:2628 cp/typeck.c:3428 cp/typeck.c:3517 +#: c/c-typeck.c:2628 cp/typeck.c:3446 cp/typeck.c:3535 #, gcc-internal-format msgid "array subscript is not an integer" msgstr "" @@ -38946,7 +38957,7 @@ msgstr "" msgid "enum constant defined here" msgstr "" -#: c/c-typeck.c:2912 cp/typeck.c:1700 +#: c/c-typeck.c:2912 cp/typeck.c:1717 #, gcc-internal-format msgid "% on array function parameter %qE will return size of %qT" msgstr "" @@ -39067,17 +39078,17 @@ msgstr "" msgid "too few arguments to built-in function %qE expecting %u" msgstr "" -#: c/c-typeck.c:3828 c/c-typeck.c:3856 cp/typeck.c:4887 cp/typeck.c:5148 +#: c/c-typeck.c:3828 c/c-typeck.c:3856 cp/typeck.c:4905 cp/typeck.c:5166 #, gcc-internal-format msgid "comparison with string literal results in unspecified behavior" msgstr "" -#: c/c-typeck.c:3836 c/c-typeck.c:3847 cp/typeck.c:4913 cp/typeck.c:4936 +#: c/c-typeck.c:3836 c/c-typeck.c:3847 cp/typeck.c:4931 cp/typeck.c:4954 #, gcc-internal-format msgid "comparison between pointer and zero character constant" msgstr "" -#: c/c-typeck.c:3839 c/c-typeck.c:3850 cp/typeck.c:4916 cp/typeck.c:4939 +#: c/c-typeck.c:3839 c/c-typeck.c:3850 cp/typeck.c:4934 cp/typeck.c:4957 #, gcc-internal-format msgid "did you mean to dereference the pointer?" msgstr "" @@ -39102,7 +39113,7 @@ msgstr "" msgid "arithmetic on pointer to an incomplete type" msgstr "" -#: c/c-typeck.c:3963 cp/typeck.c:5708 +#: c/c-typeck.c:3963 cp/typeck.c:5726 #, gcc-internal-format msgid "arithmetic on pointer to an empty aggregate" msgstr "" @@ -39277,7 +39288,7 @@ msgstr "" msgid "left-hand operand of comma expression has no effect" msgstr "" -#: c/c-typeck.c:5523 c/c-typeck.c:11034 +#: c/c-typeck.c:5523 c/c-typeck.c:11039 #, gcc-internal-format msgid "right-hand operand of comma expression has no effect" msgstr "" @@ -39354,7 +39365,7 @@ msgstr "" msgid "cast from function call of type %qT to non-matching type %qT" msgstr "" -#: c/c-typeck.c:5864 cp/typeck.c:7973 +#: c/c-typeck.c:5864 cp/typeck.c:7991 #, gcc-internal-format msgid "cast to pointer from integer of different size" msgstr "" @@ -39524,7 +39535,7 @@ msgid "" "initialization left-hand side might be a candidate for a format attribute" msgstr "" -#: c/c-typeck.c:7083 cp/typeck.c:9068 +#: c/c-typeck.c:7083 cp/typeck.c:9086 #, gcc-internal-format msgid "return type might be a candidate for a format attribute" msgstr "" @@ -39697,7 +39708,7 @@ msgstr "" msgid "array of inappropriate type initialized from string constant" msgstr "" -#: c/c-typeck.c:7857 cp/typeck.c:2067 +#: c/c-typeck.c:7857 cp/typeck.c:2084 #, gcc-internal-format msgid "invalid use of non-lvalue array" msgstr "" @@ -39728,7 +39739,7 @@ msgstr "" msgid "invalid initializer" msgstr "" -#: c/c-typeck.c:8255 cp/decl.c:6467 +#: c/c-typeck.c:8255 cp/decl.c:6484 #, gcc-internal-format msgid "opaque vector types cannot be initialized" msgstr "" @@ -39875,7 +39886,7 @@ msgstr "" msgid "ISO C forbids %" msgstr "" -#: c/c-typeck.c:10511 c/gimple-parser.c:2029 cp/typeck.c:9502 +#: c/c-typeck.c:10511 c/gimple-parser.c:2029 cp/typeck.c:9520 #, gcc-internal-format msgid "function declared % has a % statement" msgstr "" @@ -39900,602 +39911,602 @@ msgstr "" msgid "function returns address of label" msgstr "" -#: c/c-typeck.c:10725 cp/semantics.c:1191 +#: c/c-typeck.c:10721 cp/semantics.c:1191 #, gcc-internal-format msgid "switch quantity not an integer" msgstr "" -#: c/c-typeck.c:10750 +#: c/c-typeck.c:10746 #, gcc-internal-format msgid "% switch expression not converted to % in ISO C" msgstr "" -#: c/c-typeck.c:10788 c/c-typeck.c:10796 +#: c/c-typeck.c:10783 c/c-typeck.c:10791 #, gcc-internal-format msgid "case label is not an integer constant expression" msgstr "" -#: c/c-typeck.c:10802 cp/parser.c:11447 +#: c/c-typeck.c:10797 cp/parser.c:11447 #, gcc-internal-format msgid "case label not within a switch statement" msgstr "" -#: c/c-typeck.c:10804 +#: c/c-typeck.c:10799 #, gcc-internal-format msgid "% label not within a switch statement" msgstr "" -#: c/c-typeck.c:10976 cp/parser.c:12859 +#: c/c-typeck.c:10981 cp/parser.c:12859 #, gcc-internal-format msgid "break statement not within loop or switch" msgstr "" -#: c/c-typeck.c:10978 cp/parser.c:12882 +#: c/c-typeck.c:10983 cp/parser.c:12882 #, gcc-internal-format msgid "continue statement not within a loop" msgstr "" -#: c/c-typeck.c:10983 cp/parser.c:12872 +#: c/c-typeck.c:10988 cp/parser.c:12872 #, gcc-internal-format msgid "break statement used with OpenMP for loop" msgstr "" -#: c/c-typeck.c:10988 +#: c/c-typeck.c:10993 #, gcc-internal-format msgid "break statement within %<#pragma simd%> loop body" msgstr "" -#: c/c-typeck.c:10990 +#: c/c-typeck.c:10995 #, gcc-internal-format msgid "continue statement within %<#pragma simd%> loop body" msgstr "" -#: c/c-typeck.c:11016 cp/cp-gimplify.c:473 +#: c/c-typeck.c:11021 cp/cp-gimplify.c:473 #, gcc-internal-format msgid "statement with no effect" msgstr "" -#: c/c-typeck.c:11060 +#: c/c-typeck.c:11065 #, gcc-internal-format msgid "expression statement has incomplete type" msgstr "" -#: c/c-typeck.c:11888 c/c-typeck.c:12056 cp/typeck.c:5162 +#: c/c-typeck.c:11893 c/c-typeck.c:12061 cp/typeck.c:5180 #, gcc-internal-format msgid "comparing vectors with different element types" msgstr "" -#: c/c-typeck.c:11896 c/c-typeck.c:12064 cp/typeck.c:5175 +#: c/c-typeck.c:11901 c/c-typeck.c:12069 cp/typeck.c:5193 #, gcc-internal-format msgid "comparing vectors with different number of elements" msgstr "" -#: c/c-typeck.c:11921 c/c-typeck.c:12089 cp/typeck.c:5203 +#: c/c-typeck.c:11926 c/c-typeck.c:12094 cp/typeck.c:5221 #, gcc-internal-format msgid "could not find an integer type of the same size as %qT" msgstr "" -#: c/c-typeck.c:11935 cp/typeck.c:4878 +#: c/c-typeck.c:11940 cp/typeck.c:4896 #, gcc-internal-format msgid "comparing floating point with == or != is unsafe" msgstr "" -#: c/c-typeck.c:11953 c/c-typeck.c:11974 +#: c/c-typeck.c:11958 c/c-typeck.c:11979 #, gcc-internal-format msgid "" "the comparison will always evaluate as % for the address of %qD will " "never be NULL" msgstr "" -#: c/c-typeck.c:11959 c/c-typeck.c:11980 +#: c/c-typeck.c:11964 c/c-typeck.c:11985 #, gcc-internal-format msgid "" "the comparison will always evaluate as % for the address of %qD will " "never be NULL" msgstr "" -#: c/c-typeck.c:12001 c/c-typeck.c:12130 +#: c/c-typeck.c:12006 c/c-typeck.c:12135 #, gcc-internal-format msgid "comparison of pointers to disjoint address spaces" msgstr "" -#: c/c-typeck.c:12008 c/c-typeck.c:12014 +#: c/c-typeck.c:12013 c/c-typeck.c:12019 #, gcc-internal-format msgid "ISO C forbids comparison of % with function pointer" msgstr "" -#: c/c-typeck.c:12021 c/c-typeck.c:12140 +#: c/c-typeck.c:12026 c/c-typeck.c:12145 #, gcc-internal-format msgid "comparison of distinct pointer types lacks a cast" msgstr "" -#: c/c-typeck.c:12033 c/c-typeck.c:12038 c/c-typeck.c:12166 c/c-typeck.c:12171 +#: c/c-typeck.c:12038 c/c-typeck.c:12043 c/c-typeck.c:12171 c/c-typeck.c:12176 #, gcc-internal-format msgid "comparison between pointer and integer" msgstr "" -#: c/c-typeck.c:12118 +#: c/c-typeck.c:12123 #, gcc-internal-format msgid "comparison of complete and incomplete pointers" msgstr "" -#: c/c-typeck.c:12120 +#: c/c-typeck.c:12125 #, gcc-internal-format msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "" -#: c/c-typeck.c:12125 +#: c/c-typeck.c:12130 #, gcc-internal-format msgid "ordered comparison of pointer with null pointer" msgstr "" -#: c/c-typeck.c:12148 c/c-typeck.c:12151 c/c-typeck.c:12158 c/c-typeck.c:12161 -#: cp/typeck.c:5226 cp/typeck.c:5233 +#: c/c-typeck.c:12153 c/c-typeck.c:12156 c/c-typeck.c:12163 c/c-typeck.c:12166 +#: cp/typeck.c:5244 cp/typeck.c:5251 #, gcc-internal-format msgid "ordered comparison of pointer with integer zero" msgstr "" -#: c/c-typeck.c:12226 +#: c/c-typeck.c:12231 #, gcc-internal-format msgid "" "implicit conversion from %qT to %qT to match other operand of binary " "expression" msgstr "" -#: c/c-typeck.c:12541 +#: c/c-typeck.c:12546 #, gcc-internal-format msgid "used array that cannot be converted to pointer where scalar is required" msgstr "" -#: c/c-typeck.c:12545 +#: c/c-typeck.c:12550 #, gcc-internal-format msgid "used struct type value where scalar is required" msgstr "" -#: c/c-typeck.c:12549 +#: c/c-typeck.c:12554 #, gcc-internal-format msgid "used union type value where scalar is required" msgstr "" -#: c/c-typeck.c:12565 +#: c/c-typeck.c:12570 #, gcc-internal-format msgid "used vector type where scalar is required" msgstr "" -#: c/c-typeck.c:12755 cp/semantics.c:9111 +#: c/c-typeck.c:12760 cp/semantics.c:9103 #, gcc-internal-format msgid "" "%<#pragma omp cancel%> must specify one of %, %, % or % clauses" msgstr "" -#: c/c-typeck.c:12766 c/c-typeck.c:12776 cp/semantics.c:9122 -#: cp/semantics.c:9132 +#: c/c-typeck.c:12771 c/c-typeck.c:12781 cp/semantics.c:9114 +#: cp/semantics.c:9124 #, gcc-internal-format msgid "expected % % clause modifier" msgstr "" -#: c/c-typeck.c:12811 cp/semantics.c:9168 +#: c/c-typeck.c:12816 cp/semantics.c:9160 #, gcc-internal-format msgid "" "%<#pragma omp cancellation point%> must specify one of %, %, % or % clauses" msgstr "" -#: c/c-typeck.c:12855 c/c-typeck.c:14331 c/c-typeck.c:14395 c/c-typeck.c:14457 +#: c/c-typeck.c:12860 c/c-typeck.c:14336 c/c-typeck.c:14400 c/c-typeck.c:14462 #, gcc-internal-format msgid "%<_Atomic%> %qE in %qs clause" msgstr "" -#: c/c-typeck.c:12868 c/c-typeck.c:14263 c/c-typeck.c:14381 cp/semantics.c:4665 -#: cp/semantics.c:7021 cp/semantics.c:7148 +#: c/c-typeck.c:12873 c/c-typeck.c:14268 c/c-typeck.c:14386 cp/semantics.c:4657 +#: cp/semantics.c:7013 cp/semantics.c:7140 #, gcc-internal-format msgid "bit-field %qE in %qs clause" msgstr "" -#: c/c-typeck.c:12877 c/c-typeck.c:14405 cp/semantics.c:4675 -#: cp/semantics.c:7166 +#: c/c-typeck.c:12882 c/c-typeck.c:14410 cp/semantics.c:4667 +#: cp/semantics.c:7158 #, gcc-internal-format msgid "%qE is a member of a union" msgstr "" -#: c/c-typeck.c:12887 cp/semantics.c:4689 cp/semantics.c:7192 +#: c/c-typeck.c:12892 cp/semantics.c:4681 cp/semantics.c:7184 #, gcc-internal-format msgid "%qD is not a variable in %qs clause" msgstr "" -#: c/c-typeck.c:12891 c/c-typeck.c:14422 cp/semantics.c:4693 -#: cp/semantics.c:7196 +#: c/c-typeck.c:12896 c/c-typeck.c:14427 cp/semantics.c:4685 +#: cp/semantics.c:7188 #, gcc-internal-format msgid "%qE is not a variable in %qs clause" msgstr "" -#: c/c-typeck.c:12898 +#: c/c-typeck.c:12903 #, gcc-internal-format msgid "%<_Atomic%> %qD in %qs clause" msgstr "" -#: c/c-typeck.c:12907 c/c-typeck.c:14429 c/c-typeck.c:14539 cp/semantics.c:4711 -#: cp/semantics.c:7203 cp/semantics.c:7374 +#: c/c-typeck.c:12912 c/c-typeck.c:14434 c/c-typeck.c:14544 cp/semantics.c:4703 +#: cp/semantics.c:7195 cp/semantics.c:7366 #, gcc-internal-format msgid "%qD is threadprivate variable in %qs clause" msgstr "" -#: c/c-typeck.c:12943 cp/semantics.c:4745 +#: c/c-typeck.c:12948 cp/semantics.c:4737 #, gcc-internal-format msgid "low bound %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.c:12950 cp/semantics.c:4752 +#: c/c-typeck.c:12955 cp/semantics.c:4744 #, gcc-internal-format msgid "length %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.c:12979 c/c-typeck.c:13045 c/c-typeck.c:13317 cp/semantics.c:4790 -#: cp/semantics.c:4856 +#: c/c-typeck.c:12984 c/c-typeck.c:13050 c/c-typeck.c:13322 cp/semantics.c:4782 +#: cp/semantics.c:4848 #, gcc-internal-format msgid "zero length array section in %qs clause" msgstr "" -#: c/c-typeck.c:12998 cp/semantics.c:4809 +#: c/c-typeck.c:13003 cp/semantics.c:4801 #, gcc-internal-format msgid "for unknown bound array type length expression must be specified" msgstr "" -#: c/c-typeck.c:13006 cp/semantics.c:4817 +#: c/c-typeck.c:13011 cp/semantics.c:4809 #, gcc-internal-format msgid "negative low bound in array section in %qs clause" msgstr "" -#: c/c-typeck.c:13015 c/c-typeck.c:13131 cp/semantics.c:4826 -#: cp/semantics.c:4942 +#: c/c-typeck.c:13020 c/c-typeck.c:13136 cp/semantics.c:4818 +#: cp/semantics.c:4934 #, gcc-internal-format msgid "negative length in array section in %qs clause" msgstr "" -#: c/c-typeck.c:13032 cp/semantics.c:4843 +#: c/c-typeck.c:13037 cp/semantics.c:4835 #, gcc-internal-format msgid "low bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13073 cp/semantics.c:4884 +#: c/c-typeck.c:13078 cp/semantics.c:4876 #, gcc-internal-format msgid "length %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13088 cp/semantics.c:4899 +#: c/c-typeck.c:13093 cp/semantics.c:4891 #, gcc-internal-format msgid "high bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13123 cp/semantics.c:4934 +#: c/c-typeck.c:13128 cp/semantics.c:4926 #, gcc-internal-format msgid "for pointer type length expression must be specified" msgstr "" -#: c/c-typeck.c:13141 c/c-typeck.c:13256 cp/semantics.c:4952 -#: cp/semantics.c:5070 +#: c/c-typeck.c:13146 c/c-typeck.c:13261 cp/semantics.c:4944 +#: cp/semantics.c:5062 #, gcc-internal-format msgid "array section is not contiguous in %qs clause" msgstr "" -#: c/c-typeck.c:13149 cp/semantics.c:4960 +#: c/c-typeck.c:13154 cp/semantics.c:4952 #, gcc-internal-format msgid "%qE does not have pointer or array type" msgstr "" -#: c/c-typeck.c:13534 cp/semantics.c:6012 +#: c/c-typeck.c:13539 cp/semantics.c:6004 #, gcc-internal-format msgid "iterator %qD has neither integral nor pointer type" msgstr "" -#: c/c-typeck.c:13541 +#: c/c-typeck.c:13546 #, gcc-internal-format msgid "iterator %qD has %<_Atomic%> qualified type" msgstr "" -#: c/c-typeck.c:13547 cp/semantics.c:6019 +#: c/c-typeck.c:13552 cp/semantics.c:6011 #, gcc-internal-format msgid "iterator %qD has const qualified type" msgstr "" -#: c/c-typeck.c:13560 cp/semantics.c:6035 +#: c/c-typeck.c:13565 cp/semantics.c:6027 #, gcc-internal-format msgid "iterator step with non-integral type" msgstr "" -#: c/c-typeck.c:13580 cp/semantics.c:6068 +#: c/c-typeck.c:13585 cp/semantics.c:6060 #, gcc-internal-format msgid "iterator %qD has zero step" msgstr "" -#: c/c-typeck.c:13607 +#: c/c-typeck.c:13612 #, gcc-internal-format msgid "type of iterator %qD refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13614 cp/semantics.c:6102 +#: c/c-typeck.c:13619 cp/semantics.c:6094 #, gcc-internal-format msgid "begin expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13620 cp/semantics.c:6108 +#: c/c-typeck.c:13625 cp/semantics.c:6100 #, gcc-internal-format msgid "end expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13626 cp/semantics.c:6114 +#: c/c-typeck.c:13631 cp/semantics.c:6106 #, gcc-internal-format msgid "step expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13738 c/c-typeck.c:13748 +#: c/c-typeck.c:13743 c/c-typeck.c:13753 #, gcc-internal-format msgid "%qD in % clause is a zero size array" msgstr "" -#: c/c-typeck.c:13766 +#: c/c-typeck.c:13771 #, gcc-internal-format msgid "%<_Atomic%> %qE in % clause" msgstr "" -#: c/c-typeck.c:13778 +#: c/c-typeck.c:13783 #, gcc-internal-format msgid "zero sized type %qT in %qs clause" msgstr "" -#: c/c-typeck.c:13786 +#: c/c-typeck.c:13791 #, gcc-internal-format msgid "variable sized type %qT in %qs clause" msgstr "" -#: c/c-typeck.c:13836 +#: c/c-typeck.c:13841 #, gcc-internal-format msgid "%qE has invalid type for %" msgstr "" -#: c/c-typeck.c:13845 cp/semantics.c:5904 +#: c/c-typeck.c:13850 cp/semantics.c:5896 #, gcc-internal-format msgid "user defined reduction not found for %qE" msgstr "" -#: c/c-typeck.c:13933 +#: c/c-typeck.c:13938 #, gcc-internal-format msgid "variable length element type in array % clause" msgstr "" -#: c/c-typeck.c:13951 c/c-typeck.c:14597 cp/semantics.c:7720 +#: c/c-typeck.c:13956 c/c-typeck.c:14602 cp/semantics.c:7712 #, gcc-internal-format msgid "% clause must not be used together with %" msgstr "" -#: c/c-typeck.c:13963 cp/semantics.c:7763 +#: c/c-typeck.c:13968 cp/semantics.c:7755 #, gcc-internal-format msgid "%qE must be % for %" msgstr "" -#: c/c-typeck.c:13977 cp/semantics.c:6236 +#: c/c-typeck.c:13982 cp/semantics.c:6228 #, gcc-internal-format msgid "" "modifier should not be specified in % clause on % or % " "constructs" msgstr "" -#: c/c-typeck.c:13985 +#: c/c-typeck.c:13990 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with type %qT" msgstr "" -#: c/c-typeck.c:13993 +#: c/c-typeck.c:13998 #, gcc-internal-format msgid "%<_Atomic%> %qD in % clause" msgstr "" -#: c/c-typeck.c:14012 cp/semantics.c:6310 +#: c/c-typeck.c:14017 cp/semantics.c:6302 #, gcc-internal-format msgid "% clause step %qE is neither constant nor a parameter" msgstr "" -#: c/c-typeck.c:14042 c/c-typeck.c:14532 cp/semantics.c:6397 -#: cp/semantics.c:7367 +#: c/c-typeck.c:14047 c/c-typeck.c:14537 cp/semantics.c:6389 +#: cp/semantics.c:7359 #, gcc-internal-format msgid "%qE is not a variable in clause %qs" msgstr "" -#: c/c-typeck.c:14052 cp/semantics.c:6407 +#: c/c-typeck.c:14057 cp/semantics.c:6399 #, gcc-internal-format msgid "%qD appears more than once in reduction clauses" msgstr "" -#: c/c-typeck.c:14064 c/c-typeck.c:14096 c/c-typeck.c:14127 +#: c/c-typeck.c:14069 c/c-typeck.c:14101 c/c-typeck.c:14132 #, gcc-internal-format msgid "%qE appears more than once in data clauses" msgstr "" -#: c/c-typeck.c:14072 c/c-typeck.c:14103 c/c-typeck.c:14352 c/c-typeck.c:14468 -#: c/c-typeck.c:14475 c/c-typeck.c:14491 c/c-typeck.c:14502 cp/semantics.c:6419 -#: cp/semantics.c:6427 cp/semantics.c:6485 cp/semantics.c:6492 -#: cp/semantics.c:6536 cp/semantics.c:7110 cp/semantics.c:7253 -#: cp/semantics.c:7260 cp/semantics.c:7276 cp/semantics.c:7287 +#: c/c-typeck.c:14077 c/c-typeck.c:14108 c/c-typeck.c:14357 c/c-typeck.c:14473 +#: c/c-typeck.c:14480 c/c-typeck.c:14496 c/c-typeck.c:14507 cp/semantics.c:6411 +#: cp/semantics.c:6419 cp/semantics.c:6477 cp/semantics.c:6484 +#: cp/semantics.c:6528 cp/semantics.c:7102 cp/semantics.c:7245 +#: cp/semantics.c:7252 cp/semantics.c:7268 cp/semantics.c:7279 #, gcc-internal-format msgid "%qD appears more than once in data clauses" msgstr "" -#: c/c-typeck.c:14075 c/c-typeck.c:14106 c/c-typeck.c:14478 c/c-typeck.c:14505 -#: cp/semantics.c:6430 cp/semantics.c:6495 cp/semantics.c:7263 -#: cp/semantics.c:7290 +#: c/c-typeck.c:14080 c/c-typeck.c:14111 c/c-typeck.c:14483 c/c-typeck.c:14510 +#: cp/semantics.c:6422 cp/semantics.c:6487 cp/semantics.c:7255 +#: cp/semantics.c:7282 #, gcc-internal-format msgid "%qD appears both in data and map clauses" msgstr "" -#: c/c-typeck.c:14089 cp/semantics.c:6477 +#: c/c-typeck.c:14094 cp/semantics.c:6469 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "" -#: c/c-typeck.c:14120 cp/semantics.c:6528 +#: c/c-typeck.c:14125 cp/semantics.c:6520 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "" -#: c/c-typeck.c:14139 cp/semantics.c:6865 +#: c/c-typeck.c:14144 cp/semantics.c:6857 #, gcc-internal-format msgid "%qE is not a variable in % clause" msgstr "" -#: c/c-typeck.c:14146 +#: c/c-typeck.c:14151 #, gcc-internal-format msgid "%qE in % clause is neither a pointer nor an array" msgstr "" -#: c/c-typeck.c:14153 +#: c/c-typeck.c:14158 #, gcc-internal-format msgid "%<_Atomic%> %qD in % clause" msgstr "" -#: c/c-typeck.c:14160 +#: c/c-typeck.c:14165 #, gcc-internal-format msgid "%qE appears more than once in % clauses" msgstr "" -#: c/c-typeck.c:14173 cp/semantics.c:6936 +#: c/c-typeck.c:14178 cp/semantics.c:6928 #, gcc-internal-format msgid "%qE is not a variable in % clause" msgstr "" -#: c/c-typeck.c:14179 +#: c/c-typeck.c:14184 #, gcc-internal-format msgid "%qE appears more than once in % clauses" msgstr "" -#: c/c-typeck.c:14244 cp/semantics.c:6987 +#: c/c-typeck.c:14249 cp/semantics.c:6979 #, gcc-internal-format msgid "% clause with % dependence type on array section" msgstr "" -#: c/c-typeck.c:14255 cp/semantics.c:7012 +#: c/c-typeck.c:14260 cp/semantics.c:7004 #, gcc-internal-format msgid "%qE is not lvalue expression nor array section in % clause" msgstr "" -#: c/c-typeck.c:14271 cp/semantics.c:7031 +#: c/c-typeck.c:14276 cp/semantics.c:7023 #, gcc-internal-format msgid "" "%qE does not have % type in % clause with % " "dependence type" msgstr "" -#: c/c-typeck.c:14280 cp/semantics.c:7042 +#: c/c-typeck.c:14285 cp/semantics.c:7034 #, gcc-internal-format msgid "" "%qE should not have % type in % clause with " "dependence type other than %" msgstr "" -#: c/c-typeck.c:14323 cp/semantics.c:7086 +#: c/c-typeck.c:14328 cp/semantics.c:7078 #, gcc-internal-format msgid "array section does not have mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14348 c/c-typeck.c:14488 cp/semantics.c:7106 -#: cp/semantics.c:7273 +#: c/c-typeck.c:14353 c/c-typeck.c:14493 cp/semantics.c:7098 +#: cp/semantics.c:7265 #, gcc-internal-format msgid "%qD appears more than once in motion clauses" msgstr "" -#: c/c-typeck.c:14356 c/c-typeck.c:14494 cp/semantics.c:7114 -#: cp/semantics.c:7279 +#: c/c-typeck.c:14361 c/c-typeck.c:14499 cp/semantics.c:7106 +#: cp/semantics.c:7271 #, gcc-internal-format msgid "%qD appears more than once in map clauses" msgstr "" -#: c/c-typeck.c:14388 cp/semantics.c:7155 +#: c/c-typeck.c:14393 cp/semantics.c:7147 #, gcc-internal-format msgid "%qE does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14448 c/c-typeck.c:14546 cp/semantics.c:7233 -#: cp/semantics.c:7381 +#: c/c-typeck.c:14453 c/c-typeck.c:14551 cp/semantics.c:7225 +#: cp/semantics.c:7373 #, gcc-internal-format msgid "%qD does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14527 cp/semantics.c:7361 +#: c/c-typeck.c:14532 cp/semantics.c:7353 #, gcc-internal-format msgid "%qE is neither a variable nor a function name in clause %qs" msgstr "" -#: c/c-typeck.c:14555 cp/semantics.c:7390 +#: c/c-typeck.c:14560 cp/semantics.c:7382 #, gcc-internal-format msgid "%qE appears more than once on the same % directive" msgstr "" -#: c/c-typeck.c:14569 cp/semantics.c:7406 +#: c/c-typeck.c:14574 cp/semantics.c:7398 #, gcc-internal-format msgid "%qD is not an argument in % clause" msgstr "" -#: c/c-typeck.c:14572 cp/semantics.c:7409 +#: c/c-typeck.c:14577 cp/semantics.c:7401 #, gcc-internal-format msgid "%qE is not an argument in % clause" msgstr "" -#: c/c-typeck.c:14587 +#: c/c-typeck.c:14592 #, gcc-internal-format msgid "%qs variable is neither a pointer nor an array" msgstr "" -#: c/c-typeck.c:14675 cp/semantics.c:7599 +#: c/c-typeck.c:14680 cp/semantics.c:7591 #, gcc-internal-format msgid "% clause is incompatible with %" msgstr "" -#: c/c-typeck.c:14721 cp/semantics.c:7814 +#: c/c-typeck.c:14726 cp/semantics.c:7806 #, gcc-internal-format msgid "%qE is predetermined %qs for %qs" msgstr "" -#: c/c-typeck.c:14731 +#: c/c-typeck.c:14736 #, gcc-internal-format msgid "" "% qualified %qE may appear only in % or % " "clauses" msgstr "" -#: c/c-typeck.c:14750 cp/semantics.c:7683 +#: c/c-typeck.c:14755 cp/semantics.c:7675 #, gcc-internal-format msgid "% clause value is bigger than % clause value" msgstr "" -#: c/c-typeck.c:14762 cp/semantics.c:7696 +#: c/c-typeck.c:14767 cp/semantics.c:7688 #, gcc-internal-format msgid "" "% schedule modifier specified together with % clause" msgstr "" -#: c/c-typeck.c:14780 cp/semantics.c:7663 +#: c/c-typeck.c:14785 cp/semantics.c:7655 #, gcc-internal-format msgid "" "% clause step is a parameter %qD not specified in % clause" msgstr "" -#: c/c-typeck.c:14795 cp/semantics.c:7709 +#: c/c-typeck.c:14800 cp/semantics.c:7701 #, gcc-internal-format msgid "% clause must not be used together with % clause" msgstr "" -#: c/c-typeck.c:14961 +#: c/c-typeck.c:14966 #, gcc-internal-format msgid "cannot use % with reverse storage order" msgstr "" -#: c/c-typeck.c:14966 +#: c/c-typeck.c:14971 #, gcc-internal-format msgid "second argument to % is of incomplete type %qT" msgstr "" -#: c/c-typeck.c:14972 +#: c/c-typeck.c:14977 #, gcc-internal-format msgid "C++ requires promoted type, not enum type, in %" msgstr "" @@ -40660,7 +40671,7 @@ msgstr "" msgid " no known conversion for argument %d from %qH to %qI" msgstr "" -#: cp/call.c:3589 cp/pt.c:6503 +#: cp/call.c:3589 cp/pt.c:6505 #, gcc-internal-format, gfc-internal-format msgid " candidate expects %d argument, %d provided" msgid_plural " candidate expects %d arguments, %d provided" @@ -40760,7 +40771,7 @@ msgstr "" msgid "conversion from %qH to %qI in a converted constant expression" msgstr "" -#: cp/call.c:4289 cp/call.c:11228 +#: cp/call.c:4289 cp/call.c:11243 msgid "could not convert %qE from %qH to %qI" msgstr "" @@ -40943,489 +40954,489 @@ msgstr "" msgid "comparison between %q#T and %q#T" msgstr "" -#: cp/call.c:6505 +#: cp/call.c:6519 #, gcc-internal-format msgid "" "exception cleanup for this placement new selects non-placement operator " "delete" msgstr "" -#: cp/call.c:6508 +#: cp/call.c:6522 #, gcc-internal-format msgid "" "%qD is a usual (non-placement) deallocation function in C++14 (or with -" "fsized-deallocation)" msgstr "" -#: cp/call.c:6547 +#: cp/call.c:6561 #, gcc-internal-format msgid "%qD is a usual (non-placement) deallocation function" msgstr "" -#: cp/call.c:6707 +#: cp/call.c:6721 #, gcc-internal-format msgid "no corresponding deallocation function for %qD" msgstr "" -#: cp/call.c:6713 +#: cp/call.c:6727 #, gcc-internal-format msgid "no suitable % for %qT" msgstr "" -#: cp/call.c:6731 +#: cp/call.c:6745 #, gcc-internal-format msgid "%q#D is private within this context" msgstr "" -#: cp/call.c:6733 cp/decl.c:7446 +#: cp/call.c:6747 cp/decl.c:7462 #, gcc-internal-format msgid "declared private here" msgstr "" -#: cp/call.c:6738 +#: cp/call.c:6752 #, gcc-internal-format msgid "%q#D is protected within this context" msgstr "" -#: cp/call.c:6740 cp/decl.c:7447 +#: cp/call.c:6754 cp/decl.c:7463 #, gcc-internal-format msgid "declared protected here" msgstr "" -#: cp/call.c:6745 +#: cp/call.c:6759 #, gcc-internal-format msgid "%q#D is inaccessible within this context" msgstr "" -#: cp/call.c:6855 +#: cp/call.c:6870 #, gcc-internal-format msgid "passing NULL to non-pointer argument %P of %qD" msgstr "" -#: cp/call.c:6858 cp/call.c:6877 cp/typeck.c:4047 +#: cp/call.c:6873 cp/call.c:6892 cp/typeck.c:4065 #, gcc-internal-format msgid " declared here" msgstr "" -#: cp/call.c:6862 +#: cp/call.c:6877 #, gcc-internal-format msgid "converting to non-pointer type %qT from NULL" msgstr "" -#: cp/call.c:6874 +#: cp/call.c:6889 #, gcc-internal-format msgid "converting % to pointer type for argument %P of %qD" msgstr "" -#: cp/call.c:6881 +#: cp/call.c:6896 #, gcc-internal-format msgid "converting % to pointer type %qT" msgstr "" -#: cp/call.c:6948 +#: cp/call.c:6963 #, gcc-internal-format msgid " initializing argument %P of %qD" msgstr "" -#: cp/call.c:6993 +#: cp/call.c:7008 #, gcc-internal-format msgid "too many braces around initializer for %qT" msgstr "" -#: cp/call.c:7004 +#: cp/call.c:7019 msgid "converting to %qH from %qI requires direct-initialization" msgstr "" -#: cp/call.c:7013 +#: cp/call.c:7028 msgid "invalid user-defined conversion from %qH to %qI" msgstr "" -#: cp/call.c:7053 cp/cvt.c:226 +#: cp/call.c:7068 cp/cvt.c:226 msgid "invalid conversion from %qH to %qI" msgstr "" -#: cp/call.c:7095 cp/call.c:7102 +#: cp/call.c:7110 cp/call.c:7117 #, gcc-internal-format msgid "" "converting to %qT from initializer list would use explicit constructor %qD" msgstr "" -#: cp/call.c:7098 +#: cp/call.c:7113 #, gcc-internal-format msgid "in C++11 and above a default constructor can be explicit" msgstr "" -#: cp/call.c:7351 +#: cp/call.c:7366 msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI" msgstr "" -#: cp/call.c:7355 +#: cp/call.c:7370 msgid "" "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI" msgstr "" -#: cp/call.c:7358 +#: cp/call.c:7373 msgid "binding reference of type %qH to %qI discards qualifiers" msgstr "" -#: cp/call.c:7393 +#: cp/call.c:7408 #, gcc-internal-format msgid "cannot bind bitfield %qE to %qT" msgstr "" -#: cp/call.c:7396 cp/call.c:7413 +#: cp/call.c:7411 cp/call.c:7428 #, gcc-internal-format msgid "cannot bind packed field %qE to %qT" msgstr "" -#: cp/call.c:7399 +#: cp/call.c:7414 #, gcc-internal-format msgid "cannot bind rvalue %qE to %qT" msgstr "" -#: cp/call.c:7512 +#: cp/call.c:7527 msgid "implicit conversion from %qH to %qI when passing argument to function" msgstr "" -#: cp/call.c:7529 cp/cvt.c:1925 +#: cp/call.c:7544 cp/cvt.c:1925 #, gcc-internal-format msgid "" "scoped enum %qT passed through ... as %qT before %<-fabi-version=6%>, %qT " "after" msgstr "" -#: cp/call.c:7566 +#: cp/call.c:7581 #, gcc-internal-format msgid "" "passing objects of non-trivially-copyable type %q#T through %<...%> is " "conditionally supported" msgstr "" -#: cp/call.c:7602 +#: cp/call.c:7617 #, gcc-internal-format msgid "cannot receive reference type %qT through %<...%>" msgstr "" -#: cp/call.c:7612 +#: cp/call.c:7627 #, gcc-internal-format msgid "" "receiving objects of non-trivially-copyable type %q#T through %<...%> is " "conditionally-supported" msgstr "" -#: cp/call.c:7680 +#: cp/call.c:7695 #, gcc-internal-format msgid "recursive evaluation of default argument for %q#D" msgstr "" -#: cp/call.c:7689 +#: cp/call.c:7704 #, gcc-internal-format msgid "" "call to %qD uses the default argument for parameter %P, which is not yet " "defined" msgstr "" -#: cp/call.c:7793 +#: cp/call.c:7808 #, gcc-internal-format msgid "argument of function call might be a candidate for a format attribute" msgstr "" -#: cp/call.c:7852 +#: cp/call.c:7867 #, gcc-internal-format msgid "use of multiversioned function without a default" msgstr "" -#: cp/call.c:8245 +#: cp/call.c:8260 #, gcc-internal-format msgid "passing %qT as % argument discards qualifiers" msgstr "" -#: cp/call.c:8248 cp/call.c:8364 cp/call.c:10695 +#: cp/call.c:8263 cp/call.c:8379 cp/call.c:10710 #, gcc-internal-format msgid " in call to %qD" msgstr "" -#: cp/call.c:8278 +#: cp/call.c:8293 #, gcc-internal-format msgid "%qT is not an accessible base of %qT" msgstr "" -#: cp/call.c:8360 +#: cp/call.c:8375 #, gcc-internal-format msgid "deducing %qT as %qT" msgstr "" -#: cp/call.c:8366 +#: cp/call.c:8381 #, gcc-internal-format msgid " (you can disable this with %<-fno-deduce-init-list%>)" msgstr "" -#: cp/call.c:8478 +#: cp/call.c:8493 #, gcc-internal-format msgid "passing arguments to ellipsis of inherited constructor %qD" msgstr "" -#: cp/call.c:8609 +#: cp/call.c:8624 #, gcc-internal-format msgid "" "assignment from temporary initializer_list does not extend the lifetime of " "the underlying array" msgstr "" -#: cp/call.c:8966 +#: cp/call.c:8981 #, gcc-internal-format msgid "%qD writing to an object of type %#qT with no trivial copy-assignment" msgstr "" -#: cp/call.c:8969 +#: cp/call.c:8984 #, gcc-internal-format msgid "%qD writing to an object of non-trivial type %#qT%s" msgstr "" -#: cp/call.c:8974 +#: cp/call.c:8989 #, gcc-internal-format msgid "%qD writing to an object of type %#qT with %qs member %qD" msgstr "" -#: cp/call.c:8979 +#: cp/call.c:8994 #, gcc-internal-format msgid "" "%qD writing to an object of type %#qT containing a pointer to data member%s" msgstr "" -#: cp/call.c:8994 +#: cp/call.c:9009 #, gcc-internal-format msgid "; use assignment or value-initialization instead" msgstr "" -#: cp/call.c:8996 +#: cp/call.c:9011 #, gcc-internal-format msgid "; use assignment instead" msgstr "" -#: cp/call.c:8998 +#: cp/call.c:9013 #, gcc-internal-format msgid "; use value-initialization instead" msgstr "" -#: cp/call.c:9001 +#: cp/call.c:9016 #, gcc-internal-format msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s" msgstr "" -#: cp/call.c:9004 +#: cp/call.c:9019 #, gcc-internal-format msgid "%qD clearing an object of non-trivial type %#qT%s" msgstr "" -#: cp/call.c:9006 +#: cp/call.c:9021 #, gcc-internal-format msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s" msgstr "" -#: cp/call.c:9027 +#: cp/call.c:9042 #, gcc-internal-format msgid "; use copy-assignment or copy-initialization instead" msgstr "" -#: cp/call.c:9029 +#: cp/call.c:9044 #, gcc-internal-format msgid "; use copy-assignment instead" msgstr "" -#: cp/call.c:9031 +#: cp/call.c:9046 #, gcc-internal-format msgid "; use copy-initialization instead" msgstr "" -#: cp/call.c:9034 +#: cp/call.c:9049 #, gcc-internal-format msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s" msgstr "" -#: cp/call.c:9037 +#: cp/call.c:9052 #, gcc-internal-format msgid "%qD writing to an object of non-trivially copyable type %#qT%s" msgstr "" -#: cp/call.c:9040 +#: cp/call.c:9055 #, gcc-internal-format msgid "%qD writing to an object with a deleted copy constructor" msgstr "" -#: cp/call.c:9051 +#: cp/call.c:9066 #, gcc-internal-format msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT" msgstr "" -#: cp/call.c:9063 +#: cp/call.c:9078 #, gcc-internal-format msgid "" "%qD copying an object of type %#qT with %qs member %qD from an array of " "%#qT; use assignment or copy-initialization instead" msgstr "" -#: cp/call.c:9080 +#: cp/call.c:9095 #, gcc-internal-format msgid "" "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes " "unchanged" msgstr "" -#: cp/call.c:9083 +#: cp/call.c:9098 #, gcc-internal-format msgid "" "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged" msgstr "" -#: cp/call.c:9093 +#: cp/call.c:9108 #, gcc-internal-format msgid "" "%qD moving an object of non-trivially copyable type %#qT; use % and " "% instead" msgstr "" -#: cp/call.c:9096 +#: cp/call.c:9111 #, gcc-internal-format msgid "" "%qD moving an object of type %#qT with deleted copy constructor; use % " "and % instead" msgstr "" -#: cp/call.c:9099 +#: cp/call.c:9114 #, gcc-internal-format msgid "%qD moving an object of type %#qT with deleted destructor" msgstr "" -#: cp/call.c:9108 +#: cp/call.c:9123 #, gcc-internal-format msgid "" "%qD moving an object of non-trivial type %#qT and size %E into a region of " "size %E" msgstr "" -#: cp/call.c:9130 +#: cp/call.c:9145 #, gcc-internal-format msgid "%#qT declared here" msgstr "" -#: cp/call.c:9226 +#: cp/call.c:9241 #, gcc-internal-format msgid "constructor delegates to itself" msgstr "" -#: cp/call.c:9500 cp/typeck.c:9003 +#: cp/call.c:9515 cp/typeck.c:9021 msgid "cannot convert %qH to %qI" msgstr "" -#: cp/call.c:9522 +#: cp/call.c:9537 #, gcc-internal-format msgid "no matching function for call to %<%T::operator %T(%A)%#V%>" msgstr "" -#: cp/call.c:9551 +#: cp/call.c:9566 #, gcc-internal-format msgid "no matching function for call to %<%T::%s%E(%A)%#V%>" msgstr "" -#: cp/call.c:9598 +#: cp/call.c:9613 #, gcc-internal-format msgid "call to non-function %qD" msgstr "" -#: cp/call.c:9639 cp/pt.c:15262 cp/typeck.c:3029 +#: cp/call.c:9654 cp/pt.c:15265 cp/typeck.c:3047 #, gcc-internal-format msgid "cannot call constructor %<%T::%D%> directly" msgstr "" -#: cp/call.c:9641 +#: cp/call.c:9656 #, gcc-internal-format msgid "for a function-style cast, remove the redundant %<::%D%>" msgstr "" -#: cp/call.c:9799 +#: cp/call.c:9814 #, gcc-internal-format msgid "no matching function for call to %<%s(%A)%>" msgstr "" -#: cp/call.c:9802 +#: cp/call.c:9817 #, gcc-internal-format msgid "call of overloaded %<%s(%A)%> is ambiguous" msgstr "" -#: cp/call.c:9823 +#: cp/call.c:9838 #, gcc-internal-format msgid "pure virtual %q#D called from non-static data member initializer" msgstr "" -#: cp/call.c:9828 +#: cp/call.c:9843 #, gcc-internal-format msgid "pure virtual %q#D called from constructor" msgstr "" -#: cp/call.c:9829 +#: cp/call.c:9844 #, gcc-internal-format msgid "pure virtual %q#D called from destructor" msgstr "" -#: cp/call.c:9852 +#: cp/call.c:9867 #, gcc-internal-format msgid "cannot call member function %qD without object" msgstr "" -#: cp/call.c:10693 +#: cp/call.c:10708 #, gcc-internal-format msgid "passing %qT chooses %qT over %qT" msgstr "" -#: cp/call.c:10754 +#: cp/call.c:10769 #, gcc-internal-format msgid "choosing %qD over %qD" msgstr "" -#: cp/call.c:10755 +#: cp/call.c:10770 msgid " for conversion from %qH to %qI" msgstr "" -#: cp/call.c:10758 +#: cp/call.c:10773 #, gcc-internal-format msgid " because conversion sequence for the argument is better" msgstr "" -#: cp/call.c:10988 +#: cp/call.c:11003 #, gcc-internal-format msgid "default argument mismatch in overload resolution" msgstr "" -#: cp/call.c:10992 +#: cp/call.c:11007 #, gcc-internal-format msgid " candidate 1: %q#F" msgstr "" -#: cp/call.c:10994 +#: cp/call.c:11009 #, gcc-internal-format msgid " candidate 2: %q#F" msgstr "" -#: cp/call.c:11040 +#: cp/call.c:11055 #, gcc-internal-format msgid "" "ISO C++ says that these are ambiguous, even though the worst conversion for " "the first is better than the worst conversion for the second:" msgstr "" -#: cp/call.c:11443 +#: cp/call.c:11458 #, gcc-internal-format msgid "a temporary bound to %qD only persists until the constructor exits" msgstr "" -#: cp/call.c:11566 +#: cp/call.c:11581 msgid "" "invalid initialization of non-const reference of type %qH from an rvalue of " "type %qI" msgstr "" -#: cp/call.c:11570 +#: cp/call.c:11585 msgid "" "invalid initialization of reference of type %qH from expression of type %qI" msgstr "" @@ -42455,7 +42466,7 @@ msgstr "" msgid "conversion from %qH to %qI discards qualifiers" msgstr "" -#: cp/cvt.c:497 cp/typeck.c:7518 +#: cp/cvt.c:497 cp/typeck.c:7536 #, gcc-internal-format msgid "casting %qT to %qT does not dereference pointer" msgstr "" @@ -42875,7 +42886,7 @@ msgstr "" msgid "redeclaration %qD differs in % from previous declaration" msgstr "" -#: cp/decl.c:1225 cp/decl.c:14140 +#: cp/decl.c:1225 cp/decl.c:14157 #, gcc-internal-format msgid "previous declaration %qD" msgstr "" @@ -43070,12 +43081,12 @@ msgstr "" #. that specialization that would cause an implicit #. instantiation to take place, in every translation unit in #. which such a use occurs. -#: cp/decl.c:2422 +#: cp/decl.c:2442 #, gcc-internal-format msgid "explicit specialization of %qD after first use" msgstr "" -#: cp/decl.c:2561 +#: cp/decl.c:2581 #, gcc-internal-format msgid "" "%qD: visibility attribute ignored because it conflicts with previous " @@ -43083,28 +43094,28 @@ msgid "" msgstr "" #. Reject two definitions. -#: cp/decl.c:2815 cp/decl.c:2844 cp/decl.c:2877 cp/decl.c:2894 cp/decl.c:2992 +#: cp/decl.c:2835 cp/decl.c:2864 cp/decl.c:2897 cp/decl.c:2914 cp/decl.c:3012 #: cp/decl2.c:903 #, gcc-internal-format msgid "redefinition of %q#D" msgstr "" -#: cp/decl.c:2831 +#: cp/decl.c:2851 #, gcc-internal-format msgid "%qD conflicts with used function" msgstr "" -#: cp/decl.c:2841 +#: cp/decl.c:2861 #, gcc-internal-format msgid "%q#D not declared in class" msgstr "" -#: cp/decl.c:2855 cp/decl.c:2904 +#: cp/decl.c:2875 cp/decl.c:2924 #, gcc-internal-format msgid "%q+D redeclared inline with % attribute" msgstr "" -#: cp/decl.c:2858 cp/decl.c:2907 +#: cp/decl.c:2878 cp/decl.c:2927 #, gcc-internal-format msgid "%q+D redeclared inline without % attribute" msgstr "" @@ -43112,2100 +43123,2100 @@ msgstr "" #. is_primary= #. is_partial= #. is_friend_decl= -#: cp/decl.c:2924 +#: cp/decl.c:2944 #, gcc-internal-format msgid "redeclaration of friend %q#D may not have default template arguments" msgstr "" -#: cp/decl.c:2938 +#: cp/decl.c:2958 #, gcc-internal-format msgid "thread-local declaration of %q#D follows non-thread-local declaration" msgstr "" -#: cp/decl.c:2941 +#: cp/decl.c:2961 #, gcc-internal-format msgid "non-thread-local declaration of %q#D follows thread-local declaration" msgstr "" -#: cp/decl.c:2956 cp/decl.c:3000 cp/name-lookup.c:2276 cp/name-lookup.c:2708 +#: cp/decl.c:2976 cp/decl.c:3020 cp/name-lookup.c:2276 cp/name-lookup.c:2708 #: cp/name-lookup.c:2731 #, gcc-internal-format msgid "redeclaration of %q#D" msgstr "" -#: cp/decl.c:2983 +#: cp/decl.c:3003 #, gcc-internal-format msgid "redundant redeclaration of % static data member %qD" msgstr "" -#: cp/decl.c:3049 +#: cp/decl.c:3069 #, gcc-internal-format msgid "local label %qE conflicts with existing label" msgstr "" -#: cp/decl.c:3050 +#: cp/decl.c:3070 #, gcc-internal-format msgid "previous label" msgstr "" -#: cp/decl.c:3144 +#: cp/decl.c:3164 #, gcc-internal-format msgid " from here" msgstr "" -#: cp/decl.c:3167 cp/decl.c:3395 +#: cp/decl.c:3187 cp/decl.c:3415 #, gcc-internal-format msgid " exits OpenMP structured block" msgstr "" -#: cp/decl.c:3195 +#: cp/decl.c:3215 #, gcc-internal-format msgid " crosses initialization of %q#D" msgstr "" -#: cp/decl.c:3198 +#: cp/decl.c:3218 #, gcc-internal-format msgid " enters scope of %q#D, which has non-trivial destructor" msgstr "" -#: cp/decl.c:3253 +#: cp/decl.c:3273 #, gcc-internal-format, gfc-internal-format msgid " %s" msgstr "" -#: cp/decl.c:3348 cp/decl.c:3368 +#: cp/decl.c:3368 cp/decl.c:3388 #, gcc-internal-format msgid " enters catch block" msgstr "" -#: cp/decl.c:3355 +#: cp/decl.c:3375 #, gcc-internal-format msgid " skips initialization of %q#D" msgstr "" -#: cp/decl.c:3358 +#: cp/decl.c:3378 #, gcc-internal-format msgid " enters scope of %q#D which has non-trivial destructor" msgstr "" -#: cp/decl.c:3366 +#: cp/decl.c:3386 #, gcc-internal-format msgid " enters try block" msgstr "" -#: cp/decl.c:3370 +#: cp/decl.c:3390 #, gcc-internal-format msgid " enters synchronized or atomic statement" msgstr "" -#: cp/decl.c:3372 +#: cp/decl.c:3392 #, gcc-internal-format msgid " enters % if statement" msgstr "" -#: cp/decl.c:3378 +#: cp/decl.c:3398 #, gcc-internal-format msgid " enters OpenMP structured block" msgstr "" -#: cp/decl.c:3410 cp/parser.c:12869 cp/parser.c:12890 +#: cp/decl.c:3430 cp/parser.c:12869 cp/parser.c:12890 #, gcc-internal-format msgid "invalid exit from OpenMP structured block" msgstr "" -#: cp/decl.c:3809 +#: cp/decl.c:3822 #, gcc-internal-format msgid "%qD is not a type" msgstr "" -#: cp/decl.c:3816 cp/parser.c:6492 +#: cp/decl.c:3829 cp/parser.c:6492 #, gcc-internal-format msgid "%qD used without template arguments" msgstr "" -#: cp/decl.c:3827 +#: cp/decl.c:3840 #, gcc-internal-format msgid "%q#T is not a class" msgstr "" -#: cp/decl.c:3855 cp/decl.c:3948 +#: cp/decl.c:3868 cp/decl.c:3961 #, gcc-internal-format msgid "no class template named %q#T in %q#T" msgstr "" -#: cp/decl.c:3856 +#: cp/decl.c:3869 #, gcc-internal-format msgid "no type named %q#T in %q#T" msgstr "" -#: cp/decl.c:3869 +#: cp/decl.c:3882 #, gcc-internal-format msgid "lookup of %qT in %qT is ambiguous" msgstr "" -#: cp/decl.c:3878 +#: cp/decl.c:3891 #, gcc-internal-format msgid "% names %q#T, which is not a class template" msgstr "" -#: cp/decl.c:3885 +#: cp/decl.c:3898 #, gcc-internal-format msgid "% names %q#T, which is not a type" msgstr "" -#: cp/decl.c:3957 +#: cp/decl.c:3970 #, gcc-internal-format msgid "template parameters do not match template %qD" msgstr "" -#: cp/decl.c:4273 +#: cp/decl.c:4286 #, gcc-internal-format msgid "%<-faligned-new=%d%> is not a power of two" msgstr "" -#: cp/decl.c:4741 +#: cp/decl.c:4754 #, gcc-internal-format msgid "member %q+#D with constructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:4744 +#: cp/decl.c:4757 #, gcc-internal-format msgid "member %q+#D with destructor not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:4747 +#: cp/decl.c:4760 #, gcc-internal-format msgid "" "member %q+#D with copy assignment operator not allowed in anonymous aggregate" msgstr "" -#: cp/decl.c:4766 +#: cp/decl.c:4779 #, gcc-internal-format msgid "attribute ignored in declaration of %q#T" msgstr "" -#: cp/decl.c:4769 +#: cp/decl.c:4782 #, gcc-internal-format msgid "attribute for %q#T must follow the %qs keyword" msgstr "" -#: cp/decl.c:4792 +#: cp/decl.c:4805 #, gcc-internal-format msgid "multiple types in one declaration" msgstr "" -#: cp/decl.c:4797 +#: cp/decl.c:4810 #, gcc-internal-format msgid "redeclaration of C++ built-in type %qT" msgstr "" -#: cp/decl.c:4814 +#: cp/decl.c:4827 #, gcc-internal-format msgid "% can only be specified for variables or function declarations" msgstr "" -#: cp/decl.c:4846 +#: cp/decl.c:4859 #, gcc-internal-format msgid "missing type-name in typedef-declaration" msgstr "" -#: cp/decl.c:4854 +#: cp/decl.c:4867 #, gcc-internal-format msgid "ISO C++ prohibits anonymous structs" msgstr "" -#: cp/decl.c:4861 +#: cp/decl.c:4874 #, gcc-internal-format msgid "% can only be specified for functions" msgstr "" -#: cp/decl.c:4864 +#: cp/decl.c:4877 #, gcc-internal-format msgid "% can only be specified for functions" msgstr "" -#: cp/decl.c:4869 +#: cp/decl.c:4882 #, gcc-internal-format msgid "% can only be specified inside a class" msgstr "" -#: cp/decl.c:4872 +#: cp/decl.c:4885 #, gcc-internal-format msgid "% can only be specified for constructors" msgstr "" -#: cp/decl.c:4875 +#: cp/decl.c:4888 #, gcc-internal-format msgid "a storage class can only be specified for objects and functions" msgstr "" -#: cp/decl.c:4879 +#: cp/decl.c:4892 #, gcc-internal-format msgid "% can only be specified for objects and functions" msgstr "" -#: cp/decl.c:4883 +#: cp/decl.c:4896 #, gcc-internal-format msgid "% can only be specified for objects and functions" msgstr "" -#: cp/decl.c:4887 +#: cp/decl.c:4900 #, gcc-internal-format msgid "%<__restrict%> can only be specified for objects and functions" msgstr "" -#: cp/decl.c:4891 +#: cp/decl.c:4904 #, gcc-internal-format msgid "%<__thread%> can only be specified for objects and functions" msgstr "" -#: cp/decl.c:4895 +#: cp/decl.c:4908 #, gcc-internal-format msgid "% was ignored in this declaration" msgstr "" -#: cp/decl.c:4898 +#: cp/decl.c:4911 #, gcc-internal-format msgid "% cannot be used for type declarations" msgstr "" -#: cp/decl.c:4920 +#: cp/decl.c:4933 #, gcc-internal-format msgid "attribute ignored in explicit instantiation %q#T" msgstr "" -#: cp/decl.c:4923 +#: cp/decl.c:4936 #, gcc-internal-format msgid "no attribute can be applied to an explicit instantiation" msgstr "" -#: cp/decl.c:4995 +#: cp/decl.c:5008 #, gcc-internal-format msgid "ignoring attributes applied to class type %qT outside of definition" msgstr "" #. A template type parameter or other dependent type. -#: cp/decl.c:4999 +#: cp/decl.c:5012 #, gcc-internal-format msgid "" "ignoring attributes applied to dependent type %qT without an associated " "declaration" msgstr "" -#: cp/decl.c:5069 cp/decl2.c:834 +#: cp/decl.c:5082 cp/decl2.c:834 #, gcc-internal-format msgid "typedef %qD is initialized (use decltype instead)" msgstr "" -#: cp/decl.c:5077 +#: cp/decl.c:5090 #, gcc-internal-format msgid "declaration of %q#D has % and is initialized" msgstr "" -#: cp/decl.c:5107 +#: cp/decl.c:5120 #, gcc-internal-format msgid "definition of %q#D is marked %" msgstr "" -#: cp/decl.c:5131 +#: cp/decl.c:5144 #, gcc-internal-format msgid "%q+#D is not a static data member of %q#T" msgstr "" -#: cp/decl.c:5139 +#: cp/decl.c:5152 #, gcc-internal-format msgid "non-member-template declaration of %qD" msgstr "" -#: cp/decl.c:5140 +#: cp/decl.c:5153 #, gcc-internal-format msgid "does not match member template declaration here" msgstr "" -#: cp/decl.c:5152 +#: cp/decl.c:5165 #, gcc-internal-format msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>" msgstr "" -#: cp/decl.c:5164 +#: cp/decl.c:5177 #, gcc-internal-format msgid "duplicate initialization of %qD" msgstr "" -#: cp/decl.c:5214 +#: cp/decl.c:5227 #, gcc-internal-format msgid "declaration of %q#D outside of class is not definition" msgstr "" -#: cp/decl.c:5248 +#: cp/decl.c:5261 #, gcc-internal-format msgid "%qD declared % in % function" msgstr "" -#: cp/decl.c:5252 +#: cp/decl.c:5265 #, gcc-internal-format msgid "%qD declared % in % function" msgstr "" -#: cp/decl.c:5317 +#: cp/decl.c:5330 #, gcc-internal-format msgid "variable %q#D has initializer but incomplete type" msgstr "" -#: cp/decl.c:5323 cp/decl.c:6330 +#: cp/decl.c:5336 cp/decl.c:6347 #, gcc-internal-format msgid "elements of array %q#D have incomplete type" msgstr "" -#: cp/decl.c:5333 +#: cp/decl.c:5346 #, gcc-internal-format msgid "aggregate %q#D has incomplete type and cannot be defined" msgstr "" -#: cp/decl.c:5369 +#: cp/decl.c:5382 #, gcc-internal-format msgid "%qD declared as reference but not initialized" msgstr "" -#: cp/decl.c:5426 +#: cp/decl.c:5439 #, gcc-internal-format msgid "name used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.c:5432 +#: cp/decl.c:5445 #, gcc-internal-format msgid "name %qD used in a GNU-style designated initializer for an array" msgstr "" -#: cp/decl.c:5451 +#: cp/decl.c:5464 #, gcc-internal-format msgid "non-trivial designated initializers not supported" msgstr "" -#: cp/decl.c:5454 +#: cp/decl.c:5467 #, gcc-internal-format msgid "C99 designator %qE is not an integral constant-expression" msgstr "" -#: cp/decl.c:5510 +#: cp/decl.c:5523 #, gcc-internal-format msgid "initializer fails to determine size of %qD" msgstr "" -#: cp/decl.c:5517 +#: cp/decl.c:5530 #, gcc-internal-format msgid "array size missing in %qD" msgstr "" -#: cp/decl.c:5529 +#: cp/decl.c:5542 #, gcc-internal-format msgid "zero-size array %qD" msgstr "" -#: cp/decl.c:5569 +#: cp/decl.c:5582 #, gcc-internal-format msgid "storage size of %qD isn%'t known" msgstr "" -#: cp/decl.c:5593 +#: cp/decl.c:5606 #, gcc-internal-format msgid "storage size of %qD isn%'t constant" msgstr "" -#: cp/decl.c:5644 +#: cp/decl.c:5657 #, gcc-internal-format msgid "" "sorry: semantics of inline variable %q#D are wrong (you%'ll wind up with " "multiple copies)" msgstr "" -#: cp/decl.c:5648 +#: cp/decl.c:5661 #, gcc-internal-format msgid "" "sorry: semantics of inline function static data %q#D are wrong (you%'ll wind " "up with multiple copies)" msgstr "" -#: cp/decl.c:5654 +#: cp/decl.c:5667 #, gcc-internal-format msgid "you can work around this by removing the initializer" msgstr "" -#: cp/decl.c:5690 +#: cp/decl.c:5705 #, gcc-internal-format msgid "uninitialized const %qD" msgstr "" -#: cp/decl.c:5697 +#: cp/decl.c:5712 #, gcc-internal-format msgid "uninitialized variable %qD in % function" msgstr "" -#: cp/decl.c:5704 +#: cp/decl.c:5721 #, gcc-internal-format msgid "uninitialized variable %qD in % context" msgstr "" -#: cp/decl.c:5712 +#: cp/decl.c:5729 #, gcc-internal-format msgid "%q#T has no user-provided default constructor" msgstr "" -#: cp/decl.c:5716 +#: cp/decl.c:5733 #, gcc-internal-format msgid "" "constructor is not user-provided because it is explicitly defaulted in the " "class body" msgstr "" -#: cp/decl.c:5719 +#: cp/decl.c:5736 #, gcc-internal-format msgid "and the implicitly-defined constructor does not initialize %q#D" msgstr "" -#: cp/decl.c:5887 +#: cp/decl.c:5904 #, gcc-internal-format msgid "invalid type %qT as initializer for a vector of type %qT" msgstr "" -#: cp/decl.c:5928 +#: cp/decl.c:5945 #, gcc-internal-format msgid "initializer for %qT must be brace-enclosed" msgstr "" -#: cp/decl.c:5963 +#: cp/decl.c:5980 #, gcc-internal-format msgid "%<[%E] =%> used in a GNU-style designated initializer for class %qT" msgstr "" -#: cp/decl.c:5971 +#: cp/decl.c:5988 #, gcc-internal-format msgid "%qT has no non-static data member named %qD" msgstr "" -#: cp/decl.c:5991 +#: cp/decl.c:6008 #, gcc-internal-format msgid "invalid initializer for %q#D" msgstr "" -#: cp/decl.c:6021 +#: cp/decl.c:6038 #, gcc-internal-format msgid "C99 designator %qE outside aggregate initializer" msgstr "" -#: cp/decl.c:6060 cp/decl.c:6302 cp/typeck2.c:1400 cp/typeck2.c:1707 +#: cp/decl.c:6077 cp/decl.c:6319 cp/typeck2.c:1400 cp/typeck2.c:1707 #: cp/typeck2.c:1755 cp/typeck2.c:1802 #, gcc-internal-format msgid "too many initializers for %qT" msgstr "" -#: cp/decl.c:6097 +#: cp/decl.c:6114 #, gcc-internal-format msgid "braces around scalar initializer for type %qT" msgstr "" -#: cp/decl.c:6107 +#: cp/decl.c:6124 #, gcc-internal-format msgid "too many braces around scalar initializerfor type %qT" msgstr "" -#: cp/decl.c:6227 +#: cp/decl.c:6244 #, gcc-internal-format msgid "missing braces around initializer for %qT" msgstr "" -#: cp/decl.c:6332 +#: cp/decl.c:6349 #, gcc-internal-format msgid "elements of array %q#T have incomplete type" msgstr "" -#: cp/decl.c:6340 +#: cp/decl.c:6357 #, gcc-internal-format msgid "variable-sized compound literal" msgstr "" -#: cp/decl.c:6395 +#: cp/decl.c:6412 #, gcc-internal-format msgid "%q#D has incomplete type" msgstr "" -#: cp/decl.c:6416 +#: cp/decl.c:6433 #, gcc-internal-format msgid "scalar object %qD requires one element in initializer" msgstr "" -#: cp/decl.c:6461 +#: cp/decl.c:6478 #, gcc-internal-format msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>" msgstr "" -#: cp/decl.c:6568 +#: cp/decl.c:6585 #, gcc-internal-format msgid "array %qD initialized by parenthesized string literal %qE" msgstr "" -#: cp/decl.c:6603 +#: cp/decl.c:6620 #, gcc-internal-format msgid "initializer invalid for static member with constructor" msgstr "" -#: cp/decl.c:6605 +#: cp/decl.c:6622 #, gcc-internal-format msgid "non-constant in-class initialization invalid for static member %qD" msgstr "" -#: cp/decl.c:6608 +#: cp/decl.c:6625 #, gcc-internal-format msgid "" "non-constant in-class initialization invalid for non-inline static member %qD" msgstr "" -#: cp/decl.c:6613 +#: cp/decl.c:6630 #, gcc-internal-format msgid "(an out of class initialization is required)" msgstr "" -#: cp/decl.c:6791 +#: cp/decl.c:6808 #, gcc-internal-format msgid "reference %qD is initialized with itself" msgstr "" -#: cp/decl.c:6938 +#: cp/decl.c:6955 #, gcc-internal-format msgid "assignment (not initialization) in declaration" msgstr "" -#: cp/decl.c:6956 cp/decl.c:12902 +#: cp/decl.c:6973 cp/decl.c:12919 #, gcc-internal-format msgid "ISO C++17 does not allow % storage class specifier" msgstr "" -#: cp/decl.c:6960 cp/decl.c:12906 +#: cp/decl.c:6977 cp/decl.c:12923 #, gcc-internal-format msgid "% storage class specifier used" msgstr "" -#: cp/decl.c:7007 +#: cp/decl.c:7024 #, gcc-internal-format msgid "" "initializer for % has function type (did you forget the " "%<()%> ?)" msgstr "" -#: cp/decl.c:7103 +#: cp/decl.c:7120 #, gcc-internal-format msgid "variable concept has no initializer" msgstr "" -#: cp/decl.c:7156 +#: cp/decl.c:7173 #, gcc-internal-format msgid "shadowing previous type declaration of %q#D" msgstr "" -#: cp/decl.c:7348 +#: cp/decl.c:7365 #, gcc-internal-format msgid "function %q#D is initialized like a variable" msgstr "" -#: cp/decl.c:7432 +#: cp/decl.c:7448 #, gcc-internal-format msgid "" "cannot decompose class type %qT because it has an anonymous struct member" msgstr "" -#: cp/decl.c:7435 +#: cp/decl.c:7451 #, gcc-internal-format msgid "" "cannot decompose class type %qT because it has an anonymous union member" msgstr "" -#: cp/decl.c:7442 +#: cp/decl.c:7458 #, gcc-internal-format msgid "cannot decompose inaccessible member %qD of %qT" msgstr "" -#: cp/decl.c:7468 +#: cp/decl.c:7484 #, gcc-internal-format msgid "" "cannot decompose class type %qT: both it and its base class %qT have non-" "static data members" msgstr "" -#: cp/decl.c:7477 +#: cp/decl.c:7493 #, gcc-internal-format msgid "" "cannot decompose class type %qT: its base classes %qT and %qT have non-" "static data members" msgstr "" -#: cp/decl.c:7694 +#: cp/decl.c:7710 #, gcc-internal-format msgid "structured binding refers to incomplete type %qT" msgstr "" -#: cp/decl.c:7710 +#: cp/decl.c:7726 #, gcc-internal-format msgid "cannot decompose variable length array %qT" msgstr "" -#: cp/decl.c:7719 cp/decl.c:7804 +#: cp/decl.c:7735 cp/decl.c:7820 #, gcc-internal-format, gfc-internal-format msgid "%u name provided for structured binding" msgid_plural "%u names provided for structured binding" msgstr[0] "" msgstr[1] "" -#: cp/decl.c:7723 +#: cp/decl.c:7739 #, gcc-internal-format, gfc-internal-format msgid "only %u name provided for structured binding" msgid_plural "only %u names provided for structured binding" msgstr[0] "" msgstr[1] "" -#: cp/decl.c:7726 +#: cp/decl.c:7742 #, gcc-internal-format msgid "while %qT decomposes into %wu element" msgid_plural "while %qT decomposes into %wu elements" msgstr[0] "" msgstr[1] "" -#: cp/decl.c:7771 +#: cp/decl.c:7787 #, gcc-internal-format msgid "cannot decompose variable length vector %qT" msgstr "" -#: cp/decl.c:7797 +#: cp/decl.c:7813 #, gcc-internal-format msgid "%::value%> is not an integral constant expression" msgstr "" -#: cp/decl.c:7806 +#: cp/decl.c:7822 #, gcc-internal-format msgid "while %qT decomposes into %E elements" msgstr "" -#: cp/decl.c:7827 +#: cp/decl.c:7843 #, gcc-internal-format msgid "in initialization of structured binding variable %qD" msgstr "" -#: cp/decl.c:7853 +#: cp/decl.c:7869 #, gcc-internal-format msgid "cannot decompose union type %qT" msgstr "" -#: cp/decl.c:7858 +#: cp/decl.c:7874 #, gcc-internal-format msgid "cannot decompose non-array non-class type %qT" msgstr "" -#: cp/decl.c:7863 +#: cp/decl.c:7879 #, gcc-internal-format msgid "cannot decompose lambda closure type %qT" msgstr "" -#: cp/decl.c:7867 +#: cp/decl.c:7883 #, gcc-internal-format msgid "structured binding refers to incomplete class type %qT" msgstr "" -#: cp/decl.c:7876 +#: cp/decl.c:7892 #, gcc-internal-format msgid "cannot decompose class type %qT without non-static data members" msgstr "" -#: cp/decl.c:8316 +#: cp/decl.c:8332 #, gcc-internal-format msgid "" "non-local variable %qD declared %<__thread%> needs dynamic initialization" msgstr "" -#: cp/decl.c:8319 +#: cp/decl.c:8335 #, gcc-internal-format msgid "" "non-local variable %qD declared %<__thread%> has a non-trivial destructor" msgstr "" -#: cp/decl.c:8324 +#: cp/decl.c:8340 #, gcc-internal-format msgid "C++11 % allows dynamic initialization and destruction" msgstr "" -#: cp/decl.c:8553 +#: cp/decl.c:8569 #, gcc-internal-format msgid "initializer fails to determine size of %qT" msgstr "" -#: cp/decl.c:8557 +#: cp/decl.c:8573 #, gcc-internal-format msgid "array size missing in %qT" msgstr "" -#: cp/decl.c:8560 +#: cp/decl.c:8576 #, gcc-internal-format msgid "zero-size array %qT" msgstr "" -#: cp/decl.c:8576 +#: cp/decl.c:8592 #, gcc-internal-format msgid "destructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.c:8578 +#: cp/decl.c:8594 #, gcc-internal-format msgid "constructor for alien class %qT cannot be a member" msgstr "" -#: cp/decl.c:8604 +#: cp/decl.c:8620 #, gcc-internal-format msgid "%qD declared as a % variable" msgstr "" -#: cp/decl.c:8606 +#: cp/decl.c:8622 #, gcc-internal-format msgid "" "% and % function specifiers on %qD invalid in variable " "declaration" msgstr "" -#: cp/decl.c:8612 +#: cp/decl.c:8628 #, gcc-internal-format msgid "%qD declared as a % parameter" msgstr "" -#: cp/decl.c:8615 +#: cp/decl.c:8631 #, gcc-internal-format msgid "%qD declared as an % parameter" msgstr "" -#: cp/decl.c:8617 +#: cp/decl.c:8633 #, gcc-internal-format msgid "" "% and % function specifiers on %qD invalid in parameter " "declaration" msgstr "" -#: cp/decl.c:8623 +#: cp/decl.c:8639 #, gcc-internal-format msgid "%qD declared as a % type" msgstr "" -#: cp/decl.c:8626 +#: cp/decl.c:8642 #, gcc-internal-format msgid "%qD declared as an % type" msgstr "" -#: cp/decl.c:8628 +#: cp/decl.c:8644 #, gcc-internal-format msgid "" "% and % function specifiers on %qD invalid in type " "declaration" msgstr "" -#: cp/decl.c:8634 +#: cp/decl.c:8650 #, gcc-internal-format msgid "%qD declared as a % field" msgstr "" -#: cp/decl.c:8637 +#: cp/decl.c:8653 #, gcc-internal-format msgid "%qD declared as an % field" msgstr "" -#: cp/decl.c:8639 +#: cp/decl.c:8655 #, gcc-internal-format msgid "" "% and % function specifiers on %qD invalid in field " "declaration" msgstr "" -#: cp/decl.c:8646 +#: cp/decl.c:8662 #, gcc-internal-format msgid "%q+D declared as a friend" msgstr "" -#: cp/decl.c:8653 +#: cp/decl.c:8669 #, gcc-internal-format msgid "%q+D declared with an exception specification" msgstr "" -#: cp/decl.c:8685 +#: cp/decl.c:8701 #, gcc-internal-format msgid "definition of %qD is not in namespace enclosing %qT" msgstr "" -#: cp/decl.c:8725 +#: cp/decl.c:8741 #, gcc-internal-format msgid "static member function %q#D declared with type qualifiers" msgstr "" -#: cp/decl.c:8736 +#: cp/decl.c:8752 #, gcc-internal-format msgid "concept %q#D declared with function parameters" msgstr "" -#: cp/decl.c:8743 +#: cp/decl.c:8759 #, gcc-internal-format msgid "concept %q#D declared with a deduced return type" msgstr "" -#: cp/decl.c:8746 +#: cp/decl.c:8762 #, gcc-internal-format msgid "concept %q#D with non-% return type %qT" msgstr "" -#: cp/decl.c:8822 +#: cp/decl.c:8838 #, gcc-internal-format msgid "concept %qD has no definition" msgstr "" -#: cp/decl.c:8884 +#: cp/decl.c:8900 #, gcc-internal-format msgid "defining explicit specialization %qD in friend declaration" msgstr "" -#: cp/decl.c:8895 +#: cp/decl.c:8911 #, gcc-internal-format msgid "invalid use of template-id %qD in declaration of primary template" msgstr "" -#: cp/decl.c:8916 +#: cp/decl.c:8932 #, gcc-internal-format msgid "" "default arguments are not allowed in declaration of friend template " "specialization %qD" msgstr "" -#: cp/decl.c:8925 +#: cp/decl.c:8941 #, gcc-internal-format msgid "" "% is not allowed in declaration of friend template specialization " "%qD" msgstr "" -#: cp/decl.c:8942 +#: cp/decl.c:8958 #, gcc-internal-format msgid "" "friend declaration of %qD specifies default arguments and isn%'t a definition" msgstr "" -#: cp/decl.c:8989 +#: cp/decl.c:9005 #, gcc-internal-format msgid "cannot declare %<::main%> to be a template" msgstr "" -#: cp/decl.c:8992 +#: cp/decl.c:9008 #, gcc-internal-format msgid "cannot declare %<::main%> to be inline" msgstr "" -#: cp/decl.c:8995 +#: cp/decl.c:9011 #, gcc-internal-format msgid "cannot declare %<::main%> to be %" msgstr "" -#: cp/decl.c:8997 +#: cp/decl.c:9013 #, gcc-internal-format msgid "cannot declare %<::main%> to be static" msgstr "" -#: cp/decl.c:9054 +#: cp/decl.c:9070 #, gcc-internal-format msgid "static member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.c:9055 +#: cp/decl.c:9071 #, gcc-internal-format msgid "non-member function %qD cannot have cv-qualifier" msgstr "" -#: cp/decl.c:9063 +#: cp/decl.c:9079 #, gcc-internal-format msgid "static member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.c:9064 +#: cp/decl.c:9080 #, gcc-internal-format msgid "non-member function %qD cannot have ref-qualifier" msgstr "" -#: cp/decl.c:9074 +#: cp/decl.c:9090 #, gcc-internal-format msgid "deduction guide %qD must be declared at namespace scope" msgstr "" -#: cp/decl.c:9080 +#: cp/decl.c:9096 #, gcc-internal-format msgid "deduction guide %qD must not have a function body" msgstr "" -#: cp/decl.c:9093 +#: cp/decl.c:9109 #, gcc-internal-format msgid "literal operator with C linkage" msgstr "" -#: cp/decl.c:9103 +#: cp/decl.c:9119 #, gcc-internal-format msgid "%qD has invalid argument list" msgstr "" -#: cp/decl.c:9111 +#: cp/decl.c:9127 #, gcc-internal-format msgid "integer suffix %qs shadowed by implementation" msgstr "" -#: cp/decl.c:9117 +#: cp/decl.c:9133 #, gcc-internal-format msgid "floating point suffix %qs shadowed by implementation" msgstr "" -#: cp/decl.c:9125 +#: cp/decl.c:9141 #, gcc-internal-format msgid "" "literal operator suffixes not preceded by %<_%> are reserved for future " "standardization" msgstr "" -#: cp/decl.c:9130 +#: cp/decl.c:9146 #, gcc-internal-format msgid "%qD must be a non-member function" msgstr "" -#: cp/decl.c:9211 +#: cp/decl.c:9227 #, gcc-internal-format msgid "%<::main%> must return %" msgstr "" -#: cp/decl.c:9251 +#: cp/decl.c:9267 #, gcc-internal-format msgid "definition of implicitly-declared %qD" msgstr "" -#: cp/decl.c:9256 +#: cp/decl.c:9272 #, gcc-internal-format msgid "definition of explicitly-defaulted %q+D" msgstr "" -#: cp/decl.c:9258 +#: cp/decl.c:9274 #, gcc-internal-format msgid "%q#D explicitly defaulted here" msgstr "" -#: cp/decl.c:9275 +#: cp/decl.c:9291 #, gcc-internal-format msgid "no %q#D member function declared in class %qT" msgstr "" -#: cp/decl.c:9465 +#: cp/decl.c:9481 #, gcc-internal-format msgid "cannot declare %<::main%> to be a global variable" msgstr "" -#: cp/decl.c:9474 +#: cp/decl.c:9490 #, gcc-internal-format msgid "a non-template variable cannot be %" msgstr "" -#: cp/decl.c:9481 +#: cp/decl.c:9497 #, gcc-internal-format msgid "concept must have type %" msgstr "" -#: cp/decl.c:9601 +#: cp/decl.c:9617 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of incomplete type" msgstr "" -#: cp/decl.c:9605 +#: cp/decl.c:9621 #, gcc-internal-format msgid "" "% needed for in-class initialization of static data member %q#D " "of non-integral type" msgstr "" -#: cp/decl.c:9609 +#: cp/decl.c:9625 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of non-literal type" msgstr "" -#: cp/decl.c:9620 +#: cp/decl.c:9636 #, gcc-internal-format msgid "" "invalid in-class initialization of static data member of non-integral type " "%qT" msgstr "" -#: cp/decl.c:9625 +#: cp/decl.c:9641 #, gcc-internal-format msgid "ISO C++ forbids in-class initialization of non-const static member %qD" msgstr "" -#: cp/decl.c:9630 +#: cp/decl.c:9646 #, gcc-internal-format msgid "" "ISO C++ forbids initialization of member constant %qD of non-integral type " "%qT" msgstr "" -#: cp/decl.c:9739 +#: cp/decl.c:9755 #, gcc-internal-format msgid "size of array %qD has non-integral type %qT" msgstr "" -#: cp/decl.c:9742 +#: cp/decl.c:9758 #, gcc-internal-format msgid "size of array has non-integral type %qT" msgstr "" -#: cp/decl.c:9773 cp/decl.c:9842 +#: cp/decl.c:9789 cp/decl.c:9858 #, gcc-internal-format msgid "size of array %qD is not an integral constant-expression" msgstr "" -#: cp/decl.c:9777 cp/decl.c:9845 +#: cp/decl.c:9793 cp/decl.c:9861 #, gcc-internal-format msgid "size of array is not an integral constant-expression" msgstr "" -#: cp/decl.c:9825 +#: cp/decl.c:9841 #, gcc-internal-format msgid "ISO C++ forbids zero-size array %qD" msgstr "" -#: cp/decl.c:9828 +#: cp/decl.c:9844 #, gcc-internal-format msgid "ISO C++ forbids zero-size array" msgstr "" -#: cp/decl.c:9852 +#: cp/decl.c:9868 #, gcc-internal-format msgid "ISO C++ forbids variable length array %qD" msgstr "" -#: cp/decl.c:9855 +#: cp/decl.c:9871 #, gcc-internal-format msgid "ISO C++ forbids variable length array" msgstr "" -#: cp/decl.c:9861 +#: cp/decl.c:9877 #, gcc-internal-format msgid "variable length array %qD is used" msgstr "" -#: cp/decl.c:9864 +#: cp/decl.c:9880 #, gcc-internal-format msgid "variable length array is used" msgstr "" -#: cp/decl.c:9913 +#: cp/decl.c:9929 #, gcc-internal-format msgid "overflow in array dimension" msgstr "" -#: cp/decl.c:9973 +#: cp/decl.c:9989 #, gcc-internal-format msgid "%qD declared as array of %qT" msgstr "" -#: cp/decl.c:9975 cp/pt.c:14971 +#: cp/decl.c:9991 cp/pt.c:14974 #, gcc-internal-format msgid "creating array of %qT" msgstr "" -#: cp/decl.c:9985 +#: cp/decl.c:10001 #, gcc-internal-format msgid "declaration of %qD as array of void" msgstr "" -#: cp/decl.c:9987 +#: cp/decl.c:10003 #, gcc-internal-format msgid "creating array of void" msgstr "" -#: cp/decl.c:9992 +#: cp/decl.c:10008 #, gcc-internal-format msgid "declaration of %qD as array of functions" msgstr "" -#: cp/decl.c:9994 +#: cp/decl.c:10010 #, gcc-internal-format msgid "creating array of functions" msgstr "" -#: cp/decl.c:9999 +#: cp/decl.c:10015 #, gcc-internal-format msgid "declaration of %qD as array of references" msgstr "" -#: cp/decl.c:10001 +#: cp/decl.c:10017 #, gcc-internal-format msgid "creating array of references" msgstr "" -#: cp/decl.c:10006 +#: cp/decl.c:10022 #, gcc-internal-format msgid "declaration of %qD as array of function members" msgstr "" -#: cp/decl.c:10009 +#: cp/decl.c:10025 #, gcc-internal-format msgid "creating array of function members" msgstr "" -#: cp/decl.c:10023 +#: cp/decl.c:10039 #, gcc-internal-format msgid "" "declaration of %qD as multidimensional array must have bounds for all " "dimensions except the first" msgstr "" -#: cp/decl.c:10027 +#: cp/decl.c:10043 #, gcc-internal-format msgid "" "multidimensional array must have bounds for all dimensions except the first" msgstr "" -#: cp/decl.c:10097 +#: cp/decl.c:10113 #, gcc-internal-format msgid "return type specification for constructor invalid" msgstr "" -#: cp/decl.c:10100 +#: cp/decl.c:10116 #, gcc-internal-format msgid "qualifiers are not allowed on constructor declaration" msgstr "" -#: cp/decl.c:10110 +#: cp/decl.c:10126 #, gcc-internal-format msgid "return type specification for destructor invalid" msgstr "" -#: cp/decl.c:10113 +#: cp/decl.c:10129 #, gcc-internal-format msgid "qualifiers are not allowed on destructor declaration" msgstr "" -#: cp/decl.c:10125 +#: cp/decl.c:10141 #, gcc-internal-format msgid "return type specified for %" msgstr "" -#: cp/decl.c:10128 +#: cp/decl.c:10144 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of %" msgstr "" -#: cp/decl.c:10136 +#: cp/decl.c:10152 #, gcc-internal-format msgid "return type specified for deduction guide" msgstr "" -#: cp/decl.c:10139 +#: cp/decl.c:10155 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of deduction guide" msgstr "" -#: cp/decl.c:10143 +#: cp/decl.c:10159 #, gcc-internal-format msgid "template template parameter %qT in declaration of deduction guide" msgstr "" -#: cp/decl.c:10152 +#: cp/decl.c:10168 #, gcc-internal-format msgid "decl-specifier in declaration of deduction guide" msgstr "" -#: cp/decl.c:10173 +#: cp/decl.c:10189 #, gcc-internal-format msgid "unnamed variable or field declared void" msgstr "" -#: cp/decl.c:10180 +#: cp/decl.c:10196 #, gcc-internal-format msgid "variable or field declared void" msgstr "" -#: cp/decl.c:10195 +#: cp/decl.c:10211 #, gcc-internal-format msgid "% specifier invalid for variable %qD declared at block scope" msgstr "" -#: cp/decl.c:10200 +#: cp/decl.c:10216 #, gcc-internal-format msgid "" "inline variables are only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/decl.c:10458 +#: cp/decl.c:10474 #, gcc-internal-format msgid "invalid use of qualified-name %<::%D%>" msgstr "" -#: cp/decl.c:10461 cp/decl.c:10481 +#: cp/decl.c:10477 cp/decl.c:10497 #, gcc-internal-format msgid "invalid use of qualified-name %<%T::%D%>" msgstr "" -#: cp/decl.c:10464 +#: cp/decl.c:10480 #, gcc-internal-format msgid "invalid use of qualified-name %<%D::%D%>" msgstr "" -#: cp/decl.c:10473 +#: cp/decl.c:10489 #, gcc-internal-format msgid "%q#T is not a class or a namespace" msgstr "" -#: cp/decl.c:10495 cp/decl.c:10588 cp/decl.c:10597 cp/decl.c:12241 +#: cp/decl.c:10511 cp/decl.c:10604 cp/decl.c:10613 cp/decl.c:12258 #, gcc-internal-format msgid "declaration of %qD as non-function" msgstr "" -#: cp/decl.c:10501 +#: cp/decl.c:10517 #, gcc-internal-format msgid "declaration of %qD as non-member" msgstr "" -#: cp/decl.c:10529 +#: cp/decl.c:10545 #, gcc-internal-format msgid "declarator-id missing; using reserved word %qD" msgstr "" -#: cp/decl.c:10580 +#: cp/decl.c:10596 #, gcc-internal-format msgid "function definition does not declare parameters" msgstr "" -#: cp/decl.c:10605 +#: cp/decl.c:10621 #, gcc-internal-format msgid "declaration of %qD as %" msgstr "" -#: cp/decl.c:10610 +#: cp/decl.c:10626 #, gcc-internal-format msgid "declaration of %qD as parameter" msgstr "" -#: cp/decl.c:10645 +#: cp/decl.c:10661 #, gcc-internal-format msgid "% cannot appear in a typedef declaration" msgstr "" -#: cp/decl.c:10652 +#: cp/decl.c:10668 #, gcc-internal-format msgid "% cannot appear in a typedef declaration" msgstr "" -#: cp/decl.c:10660 +#: cp/decl.c:10676 #, gcc-internal-format msgid "two or more data types in declaration of %qs" msgstr "" -#: cp/decl.c:10666 +#: cp/decl.c:10682 #, gcc-internal-format msgid "conflicting specifiers in declaration of %qs" msgstr "" -#: cp/decl.c:10701 +#: cp/decl.c:10717 #, gcc-internal-format msgid "ISO C++ does not support plain % meaning %" msgstr "" -#: cp/decl.c:10750 cp/decl.c:10753 cp/decl.c:10756 +#: cp/decl.c:10766 cp/decl.c:10769 cp/decl.c:10772 #, gcc-internal-format msgid "ISO C++ forbids declaration of %qs with no type" msgstr "" -#: cp/decl.c:10772 +#: cp/decl.c:10788 #, gcc-internal-format msgid "%<__int%d%> is not supported by this target" msgstr "" -#: cp/decl.c:10778 +#: cp/decl.c:10794 #, gcc-internal-format msgid "ISO C++ does not support %<__int%d%> for %qs" msgstr "" -#: cp/decl.c:10832 +#: cp/decl.c:10848 #, gcc-internal-format msgid "% and % specified together" msgstr "" -#: cp/decl.c:10838 +#: cp/decl.c:10854 #, gcc-internal-format msgid "% and % specified together" msgstr "" -#: cp/decl.c:10846 cp/decl.c:10852 +#: cp/decl.c:10862 cp/decl.c:10868 #, gcc-internal-format msgid "%qs specified with %qT" msgstr "" -#: cp/decl.c:10857 +#: cp/decl.c:10873 #, gcc-internal-format msgid "%qs specified with %" msgstr "" -#: cp/decl.c:10859 +#: cp/decl.c:10875 #, gcc-internal-format msgid "%qs specified with %" msgstr "" -#: cp/decl.c:10925 +#: cp/decl.c:10941 #, gcc-internal-format msgid "complex invalid for %qs" msgstr "" -#: cp/decl.c:10964 +#: cp/decl.c:10980 #, gcc-internal-format msgid "" "template placeholder type %qT must be followed by a simple declarator-id" msgstr "" -#: cp/decl.c:10984 +#: cp/decl.c:11001 #, gcc-internal-format msgid "member %qD cannot be declared both % and %" msgstr "" -#: cp/decl.c:10993 +#: cp/decl.c:11010 #, gcc-internal-format msgid "" "member %qD can be declared both % and % only in %<-" "std=c++2a%> or %<-std=gnu++2a%>" msgstr "" -#: cp/decl.c:11006 +#: cp/decl.c:11023 #, gcc-internal-format msgid "typedef declaration invalid in parameter declaration" msgstr "" -#: cp/decl.c:11013 +#: cp/decl.c:11030 #, gcc-internal-format msgid "storage class specified for template parameter %qs" msgstr "" -#: cp/decl.c:11023 cp/decl.c:11165 +#: cp/decl.c:11040 cp/decl.c:11182 #, gcc-internal-format msgid "storage class specified for parameter %qs" msgstr "" -#: cp/decl.c:11030 +#: cp/decl.c:11047 #, gcc-internal-format msgid "a parameter cannot be declared %" msgstr "" -#: cp/decl.c:11036 +#: cp/decl.c:11053 #, gcc-internal-format msgid "a parameter cannot be declared %" msgstr "" -#: cp/decl.c:11046 +#: cp/decl.c:11063 #, gcc-internal-format msgid "% outside class declaration" msgstr "" -#: cp/decl.c:11056 +#: cp/decl.c:11073 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11059 +#: cp/decl.c:11076 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11061 +#: cp/decl.c:11078 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11065 +#: cp/decl.c:11082 #, gcc-internal-format msgid "structured binding declaration cannot be %qs" msgstr "" -#: cp/decl.c:11070 +#: cp/decl.c:11087 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11076 +#: cp/decl.c:11093 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11080 +#: cp/decl.c:11097 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11084 +#: cp/decl.c:11101 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11088 +#: cp/decl.c:11105 #, gcc-internal-format msgid "structured binding declaration cannot be %" msgstr "" -#: cp/decl.c:11092 +#: cp/decl.c:11109 #, gcc-internal-format msgid "structured binding declaration cannot be C++98 %" msgstr "" -#: cp/decl.c:11103 +#: cp/decl.c:11120 #, gcc-internal-format msgid "structured binding declaration cannot have type %qT" msgstr "" -#: cp/decl.c:11106 +#: cp/decl.c:11123 #, gcc-internal-format msgid "" "type must be cv-qualified % or reference to cv-qualified %" msgstr "" -#: cp/decl.c:11137 +#: cp/decl.c:11154 #, gcc-internal-format msgid "multiple storage classes in declaration of %qs" msgstr "" -#: cp/decl.c:11163 +#: cp/decl.c:11180 #, gcc-internal-format msgid "storage class specified for %qs" msgstr "" -#: cp/decl.c:11177 +#: cp/decl.c:11194 #, gcc-internal-format msgid "nested function %qs declared %" msgstr "" -#: cp/decl.c:11181 +#: cp/decl.c:11198 #, gcc-internal-format msgid "top-level declaration of %qs specifies %" msgstr "" -#: cp/decl.c:11189 +#: cp/decl.c:11206 #, gcc-internal-format msgid "function-scope %qs implicitly auto and declared %<__thread%>" msgstr "" -#: cp/decl.c:11203 +#: cp/decl.c:11220 #, gcc-internal-format msgid "storage class specifiers invalid in friend function declarations" msgstr "" -#: cp/decl.c:11285 +#: cp/decl.c:11302 #, gcc-internal-format msgid "unnecessary parentheses in declaration of %qs" msgstr "" -#: cp/decl.c:11334 +#: cp/decl.c:11351 #, gcc-internal-format msgid "requires-clause on return type" msgstr "" -#: cp/decl.c:11357 +#: cp/decl.c:11374 #, gcc-internal-format msgid "%qs function uses % type specifier without trailing return type" msgstr "" -#: cp/decl.c:11361 +#: cp/decl.c:11378 #, gcc-internal-format msgid "" "deduced return type only available with %<-std=c++14%> or %<-std=gnu++14%>" msgstr "" -#: cp/decl.c:11366 +#: cp/decl.c:11383 #, gcc-internal-format msgid "virtual function cannot have deduced return type" msgstr "" -#: cp/decl.c:11373 +#: cp/decl.c:11390 #, gcc-internal-format msgid "" "%qs function with trailing return type has %qT as its type rather than plain " "%" msgstr "" -#: cp/decl.c:11382 +#: cp/decl.c:11399 #, gcc-internal-format msgid "" "%qs function with trailing return type has % as its type " "rather than plain %" msgstr "" -#: cp/decl.c:11387 +#: cp/decl.c:11404 #, gcc-internal-format msgid "invalid use of %" msgstr "" -#: cp/decl.c:11398 +#: cp/decl.c:11415 #, gcc-internal-format msgid "deduced class type %qD in function return type" msgstr "" -#: cp/decl.c:11407 +#: cp/decl.c:11424 #, gcc-internal-format msgid "deduction guide for %qT must have trailing return type" msgstr "" -#: cp/decl.c:11420 +#: cp/decl.c:11437 #, gcc-internal-format msgid "" "trailing return type %qT of deduction guide is not a specialization of %qT" msgstr "" -#: cp/decl.c:11432 +#: cp/decl.c:11449 #, gcc-internal-format msgid "" "trailing return type only available with %<-std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/decl.c:11435 +#: cp/decl.c:11452 #, gcc-internal-format msgid "" "%qs function with trailing return type not declared with % type " "specifier" msgstr "" -#: cp/decl.c:11465 +#: cp/decl.c:11482 #, gcc-internal-format msgid "%qs declared as function returning a function" msgstr "" -#: cp/decl.c:11471 +#: cp/decl.c:11488 #, gcc-internal-format msgid "%qs declared as function returning an array" msgstr "" -#: cp/decl.c:11500 +#: cp/decl.c:11517 #, gcc-internal-format msgid "destructor cannot be static member function" msgstr "" -#: cp/decl.c:11501 +#: cp/decl.c:11518 #, gcc-internal-format msgid "constructor cannot be static member function" msgstr "" -#: cp/decl.c:11505 +#: cp/decl.c:11522 #, gcc-internal-format msgid "destructors may not be cv-qualified" msgstr "" -#: cp/decl.c:11506 +#: cp/decl.c:11523 #, gcc-internal-format msgid "constructors may not be cv-qualified" msgstr "" -#: cp/decl.c:11514 +#: cp/decl.c:11531 #, gcc-internal-format msgid "destructors may not be ref-qualified" msgstr "" -#: cp/decl.c:11515 +#: cp/decl.c:11532 #, gcc-internal-format msgid "constructors may not be ref-qualified" msgstr "" -#: cp/decl.c:11533 +#: cp/decl.c:11550 #, gcc-internal-format msgid "constructors cannot be declared %" msgstr "" -#: cp/decl.c:11550 +#: cp/decl.c:11567 #, gcc-internal-format msgid "virtual functions cannot be friends" msgstr "" -#: cp/decl.c:11554 +#: cp/decl.c:11571 #, gcc-internal-format msgid "friend declaration not in class definition" msgstr "" -#: cp/decl.c:11557 +#: cp/decl.c:11574 #, gcc-internal-format msgid "can%'t define friend function %qs in a local class definition" msgstr "" -#: cp/decl.c:11570 +#: cp/decl.c:11587 #, gcc-internal-format msgid "a conversion function cannot have a trailing return type" msgstr "" -#: cp/decl.c:11596 +#: cp/decl.c:11613 #, gcc-internal-format msgid "destructors may not have parameters" msgstr "" -#: cp/decl.c:11636 +#: cp/decl.c:11653 #, gcc-internal-format msgid "cannot declare pointer to %q#T" msgstr "" -#: cp/decl.c:11649 cp/decl.c:11656 +#: cp/decl.c:11666 cp/decl.c:11673 #, gcc-internal-format msgid "cannot declare reference to %q#T" msgstr "" -#: cp/decl.c:11658 +#: cp/decl.c:11675 #, gcc-internal-format msgid "cannot declare pointer to %q#T member" msgstr "" -#: cp/decl.c:11687 +#: cp/decl.c:11704 #, gcc-internal-format msgid "cannot declare reference to qualified function type %qT" msgstr "" -#: cp/decl.c:11688 +#: cp/decl.c:11705 #, gcc-internal-format msgid "cannot declare pointer to qualified function type %qT" msgstr "" -#: cp/decl.c:11761 +#: cp/decl.c:11778 #, gcc-internal-format msgid "" "cannot declare reference to %q#T, which is not a typedef or a template type " "argument" msgstr "" -#: cp/decl.c:11831 +#: cp/decl.c:11848 #, gcc-internal-format msgid "template-id %qD used as a declarator" msgstr "" -#: cp/decl.c:11856 +#: cp/decl.c:11873 #, gcc-internal-format msgid "member functions are implicitly friends of their class" msgstr "" -#: cp/decl.c:11862 +#: cp/decl.c:11879 #, gcc-internal-format msgid "extra qualification %<%T::%> on member %qs" msgstr "" -#: cp/decl.c:11892 +#: cp/decl.c:11909 #, gcc-internal-format msgid "cannot define member function %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:11894 +#: cp/decl.c:11911 #, gcc-internal-format msgid "cannot declare member function %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:11902 +#: cp/decl.c:11919 #, gcc-internal-format msgid "cannot declare member %<%T::%s%> within %qT" msgstr "" -#: cp/decl.c:11942 +#: cp/decl.c:11959 #, gcc-internal-format msgid "non-parameter %qs cannot be a parameter pack" msgstr "" -#: cp/decl.c:11950 +#: cp/decl.c:11967 #, gcc-internal-format msgid "data member may not have variably modified type %qT" msgstr "" -#: cp/decl.c:11952 +#: cp/decl.c:11969 #, gcc-internal-format msgid "parameter may not have variably modified type %qT" msgstr "" -#: cp/decl.c:11963 +#: cp/decl.c:11980 #, gcc-internal-format msgid "% outside class declaration" msgstr "" -#: cp/decl.c:11966 +#: cp/decl.c:11983 #, gcc-internal-format msgid "% in friend declaration" msgstr "" -#: cp/decl.c:11969 +#: cp/decl.c:11986 #, gcc-internal-format msgid "" "only declarations of constructors and conversion operators can be %" msgstr "" -#: cp/decl.c:11979 +#: cp/decl.c:11996 #, gcc-internal-format msgid "non-member %qs cannot be declared %" msgstr "" -#: cp/decl.c:11986 +#: cp/decl.c:12003 #, gcc-internal-format msgid "non-object member %qs cannot be declared %" msgstr "" -#: cp/decl.c:11993 +#: cp/decl.c:12010 #, gcc-internal-format msgid "function %qs cannot be declared %" msgstr "" -#: cp/decl.c:11999 +#: cp/decl.c:12016 #, gcc-internal-format msgid "% %qs cannot be declared %" msgstr "" -#: cp/decl.c:12005 +#: cp/decl.c:12022 #, gcc-internal-format msgid "% %qs cannot be declared %" msgstr "" -#: cp/decl.c:12011 +#: cp/decl.c:12028 #, gcc-internal-format msgid "reference %qs cannot be declared %" msgstr "" -#: cp/decl.c:12047 +#: cp/decl.c:12064 #, gcc-internal-format msgid "% not allowed in alias declaration" msgstr "" -#: cp/decl.c:12050 +#: cp/decl.c:12067 #, gcc-internal-format msgid "typedef declared %" msgstr "" -#: cp/decl.c:12055 +#: cp/decl.c:12072 #, gcc-internal-format msgid "requires-clause on typedef" msgstr "" -#: cp/decl.c:12059 +#: cp/decl.c:12076 #, gcc-internal-format msgid "typedef name may not be a nested-name-specifier" msgstr "" -#: cp/decl.c:12083 +#: cp/decl.c:12100 #, gcc-internal-format msgid "ISO C++ forbids nested type %qD with same name as enclosing class" msgstr "" -#: cp/decl.c:12171 +#: cp/decl.c:12188 #, gcc-internal-format msgid "% specified for friend class declaration" msgstr "" -#: cp/decl.c:12179 +#: cp/decl.c:12196 #, gcc-internal-format msgid "template parameters cannot be friends" msgstr "" -#: cp/decl.c:12181 +#: cp/decl.c:12198 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %" msgstr "" -#: cp/decl.c:12185 +#: cp/decl.c:12202 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %" msgstr "" -#: cp/decl.c:12198 +#: cp/decl.c:12215 #, gcc-internal-format msgid "trying to make class %qT a friend of global scope" msgstr "" -#: cp/decl.c:12218 +#: cp/decl.c:12235 #, gcc-internal-format msgid "invalid qualifiers on non-member function type" msgstr "" -#: cp/decl.c:12222 +#: cp/decl.c:12239 #, gcc-internal-format msgid "requires-clause on type-id" msgstr "" -#: cp/decl.c:12232 +#: cp/decl.c:12249 #, gcc-internal-format msgid "abstract declarator %qT used as declaration" msgstr "" -#: cp/decl.c:12247 +#: cp/decl.c:12264 #, gcc-internal-format msgid "requires-clause on declaration of non-function type %qT" msgstr "" -#: cp/decl.c:12266 +#: cp/decl.c:12283 #, gcc-internal-format msgid "cannot use %<::%> in parameter declaration" msgstr "" -#: cp/decl.c:12272 +#: cp/decl.c:12289 #, gcc-internal-format msgid "% parameter not permitted in this context" msgstr "" -#: cp/decl.c:12274 +#: cp/decl.c:12291 #, gcc-internal-format msgid "parameter declared %" msgstr "" -#: cp/decl.c:12325 cp/parser.c:3290 +#: cp/decl.c:12342 cp/parser.c:3290 #, gcc-internal-format msgid "invalid use of template-name %qE without an argument list" msgstr "" -#: cp/decl.c:12329 +#: cp/decl.c:12346 #, gcc-internal-format msgid "non-static data member declared with placeholder %qT" msgstr "" -#: cp/decl.c:12353 +#: cp/decl.c:12370 #, gcc-internal-format msgid "ISO C++ forbids flexible array member %qs" msgstr "" -#: cp/decl.c:12356 +#: cp/decl.c:12373 #, gcc-internal-format msgid "ISO C++ forbids flexible array members" msgstr "" #. Something like struct S { int N::j; }; -#: cp/decl.c:12372 +#: cp/decl.c:12389 #, gcc-internal-format msgid "invalid use of %<::%>" msgstr "" -#: cp/decl.c:12393 +#: cp/decl.c:12410 #, gcc-internal-format msgid "declaration of function %qD in invalid context" msgstr "" -#: cp/decl.c:12403 +#: cp/decl.c:12420 #, gcc-internal-format msgid "function %qD declared % inside a union" msgstr "" -#: cp/decl.c:12413 +#: cp/decl.c:12430 #, gcc-internal-format msgid "%qD cannot be declared %, since it is always static" msgstr "" -#: cp/decl.c:12427 +#: cp/decl.c:12444 #, gcc-internal-format msgid "expected qualified name in friend declaration for destructor %qD" msgstr "" -#: cp/decl.c:12434 +#: cp/decl.c:12451 #, gcc-internal-format msgid "declaration of %qD as member of %qT" msgstr "" -#: cp/decl.c:12441 +#: cp/decl.c:12458 #, gcc-internal-format msgid "a destructor cannot be %" msgstr "" -#: cp/decl.c:12447 +#: cp/decl.c:12464 #, gcc-internal-format msgid "a destructor cannot be %" msgstr "" -#: cp/decl.c:12453 +#: cp/decl.c:12470 #, gcc-internal-format msgid "expected qualified name in friend declaration for constructor %qD" msgstr "" -#: cp/decl.c:12462 +#: cp/decl.c:12479 #, gcc-internal-format msgid "a constructor cannot be %" msgstr "" -#: cp/decl.c:12468 +#: cp/decl.c:12485 #, gcc-internal-format msgid "a concept cannot be a member function" msgstr "" -#: cp/decl.c:12477 +#: cp/decl.c:12494 #, gcc-internal-format msgid "specialization of variable template %qD declared as function" msgstr "" -#: cp/decl.c:12480 +#: cp/decl.c:12497 #, gcc-internal-format msgid "variable template declared here" msgstr "" -#: cp/decl.c:12538 +#: cp/decl.c:12555 #, gcc-internal-format msgid "field %qD has incomplete type %qT" msgstr "" -#: cp/decl.c:12543 +#: cp/decl.c:12560 #, gcc-internal-format msgid "name %qT has incomplete type" msgstr "" -#: cp/decl.c:12555 +#: cp/decl.c:12572 #, gcc-internal-format msgid "%qE is neither function nor member function; cannot be declared friend" msgstr "" -#: cp/decl.c:12558 +#: cp/decl.c:12575 #, gcc-internal-format msgid "" "unnamed field is neither function nor member function; cannot be declared " "friend" msgstr "" -#: cp/decl.c:12603 +#: cp/decl.c:12620 #, gcc-internal-format msgid "static data member %qE declared %" msgstr "" -#: cp/decl.c:12608 +#: cp/decl.c:12625 #, gcc-internal-format msgid "% static data member %qD must have an initializer" msgstr "" -#: cp/decl.c:12637 +#: cp/decl.c:12654 #, gcc-internal-format msgid "non-static data member %qE declared %" msgstr "" -#: cp/decl.c:12642 +#: cp/decl.c:12659 #, gcc-internal-format msgid "non-static data member %qE declared %" msgstr "" -#: cp/decl.c:12697 +#: cp/decl.c:12714 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "" -#: cp/decl.c:12699 +#: cp/decl.c:12716 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "" -#: cp/decl.c:12704 +#: cp/decl.c:12721 #, gcc-internal-format msgid "storage class %<__thread%> invalid for function %qs" msgstr "" -#: cp/decl.c:12708 +#: cp/decl.c:12725 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "" -#: cp/decl.c:12713 +#: cp/decl.c:12730 #, gcc-internal-format msgid "virt-specifiers in %qs not allowed outside a class definition" msgstr "" -#: cp/decl.c:12725 +#: cp/decl.c:12742 #, gcc-internal-format msgid "" "% specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.c:12729 +#: cp/decl.c:12746 #, gcc-internal-format msgid "" "% specifier invalid for function %qs declared out of global scope" msgstr "" -#: cp/decl.c:12737 +#: cp/decl.c:12754 #, gcc-internal-format msgid "virtual non-class function %qs" msgstr "" -#: cp/decl.c:12744 +#: cp/decl.c:12761 #, gcc-internal-format msgid "%qs defined in a non-class scope" msgstr "" -#: cp/decl.c:12745 +#: cp/decl.c:12762 #, gcc-internal-format msgid "%qs declared in a non-class scope" msgstr "" -#: cp/decl.c:12779 +#: cp/decl.c:12796 #, gcc-internal-format msgid "cannot declare member function %qD to have static linkage" msgstr "" -#: cp/decl.c:12788 +#: cp/decl.c:12805 #, gcc-internal-format msgid "cannot declare static function inside another function" msgstr "" -#: cp/decl.c:12827 +#: cp/decl.c:12844 #, gcc-internal-format msgid "" "% may not be used when defining (as opposed to declaring) a static " "data member" msgstr "" -#: cp/decl.c:12834 +#: cp/decl.c:12851 #, gcc-internal-format msgid "static member %qD declared %" msgstr "" -#: cp/decl.c:12840 +#: cp/decl.c:12857 #, gcc-internal-format msgid "cannot explicitly declare member %q#D to have extern linkage" msgstr "" -#: cp/decl.c:12848 +#: cp/decl.c:12865 #, gcc-internal-format msgid "declaration of % variable %qD is not a definition" msgstr "" -#: cp/decl.c:12869 +#: cp/decl.c:12886 #, gcc-internal-format msgid "declaration of %q#D has no initializer" msgstr "" -#: cp/decl.c:12881 +#: cp/decl.c:12898 #, gcc-internal-format msgid "%qs initialized and declared %" msgstr "" -#: cp/decl.c:12886 +#: cp/decl.c:12903 #, gcc-internal-format msgid "%qs has both % and initializer" msgstr "" -#: cp/decl.c:13051 +#: cp/decl.c:13068 #, gcc-internal-format msgid "default argument %qE uses %qD" msgstr "" -#: cp/decl.c:13054 +#: cp/decl.c:13071 #, gcc-internal-format msgid "default argument %qE uses local variable %qD" msgstr "" -#: cp/decl.c:13138 +#: cp/decl.c:13155 #, gcc-internal-format msgid "invalid use of cv-qualified type %qT in parameter declaration" msgstr "" -#: cp/decl.c:13142 +#: cp/decl.c:13159 #, gcc-internal-format msgid "invalid use of type % in parameter declaration" msgstr "" -#: cp/decl.c:13165 +#: cp/decl.c:13182 #, gcc-internal-format msgid "parameter %qD invalidly declared method type" msgstr "" -#: cp/decl.c:13192 +#: cp/decl.c:13209 #, gcc-internal-format msgid "parameter %qD includes pointer to array of unknown bound %qT" msgstr "" -#: cp/decl.c:13194 +#: cp/decl.c:13211 #, gcc-internal-format msgid "parameter %qD includes reference to array of unknown bound %qT" msgstr "" @@ -45225,171 +45236,171 @@ msgstr "" #. or implicitly defined), there's no need to worry about their #. existence. Theoretically, they should never even be #. instantiated, but that's hard to forestall. -#: cp/decl.c:13448 +#: cp/decl.c:13465 #, gcc-internal-format msgid "invalid constructor; you probably meant %<%T (const %T&)%>" msgstr "" -#: cp/decl.c:13527 +#: cp/decl.c:13544 #, gcc-internal-format msgid "%qD may not be declared within a namespace" msgstr "" -#: cp/decl.c:13534 +#: cp/decl.c:13551 #, gcc-internal-format msgid "%qD may not be declared as static" msgstr "" -#: cp/decl.c:13561 +#: cp/decl.c:13578 #, gcc-internal-format msgid "%qD must be a nonstatic member function" msgstr "" -#: cp/decl.c:13567 +#: cp/decl.c:13584 #, gcc-internal-format msgid "" "%qD must be either a non-static member function or a non-member function" msgstr "" -#: cp/decl.c:13577 +#: cp/decl.c:13594 #, gcc-internal-format msgid "%qD must have an argument of class or enumerated type" msgstr "" #. 13.4.0.3 -#: cp/decl.c:13603 +#: cp/decl.c:13620 #, gcc-internal-format msgid "ISO C++ prohibits overloading operator ?:" msgstr "" #. Variadic. -#: cp/decl.c:13614 +#: cp/decl.c:13631 #, gcc-internal-format msgid "%qD must not have variable number of arguments" msgstr "" -#: cp/decl.c:13640 +#: cp/decl.c:13657 #, gcc-internal-format msgid "%qD must have either zero or one argument" msgstr "" -#: cp/decl.c:13641 +#: cp/decl.c:13658 #, gcc-internal-format msgid "%qD must have either one or two arguments" msgstr "" -#: cp/decl.c:13653 +#: cp/decl.c:13670 #, gcc-internal-format msgid "postfix %qD must have % as its argument" msgstr "" -#: cp/decl.c:13654 +#: cp/decl.c:13671 #, gcc-internal-format msgid "postfix %qD must have % as its second argument" msgstr "" -#: cp/decl.c:13665 +#: cp/decl.c:13682 #, gcc-internal-format msgid "%qD must have no arguments" msgstr "" -#: cp/decl.c:13666 cp/decl.c:13676 +#: cp/decl.c:13683 cp/decl.c:13693 #, gcc-internal-format msgid "%qD must have exactly one argument" msgstr "" -#: cp/decl.c:13677 +#: cp/decl.c:13694 #, gcc-internal-format msgid "%qD must have exactly two arguments" msgstr "" -#: cp/decl.c:13691 +#: cp/decl.c:13708 #, gcc-internal-format msgid "%qD cannot have default arguments" msgstr "" -#: cp/decl.c:13715 +#: cp/decl.c:13732 #, gcc-internal-format msgid "converting %qT to % will never use a type conversion operator" msgstr "" -#: cp/decl.c:13722 +#: cp/decl.c:13739 #, gcc-internal-format msgid "" "converting %qT to a reference to the same type will never use a type " "conversion operator" msgstr "" -#: cp/decl.c:13724 +#: cp/decl.c:13741 #, gcc-internal-format msgid "" "converting %qT to the same type will never use a type conversion operator" msgstr "" -#: cp/decl.c:13733 +#: cp/decl.c:13750 #, gcc-internal-format msgid "" "converting %qT to a reference to a base class %qT will never use a type " "conversion operator" msgstr "" -#: cp/decl.c:13735 +#: cp/decl.c:13752 #, gcc-internal-format msgid "" "converting %qT to a base class %qT will never use a type conversion operator" msgstr "" -#: cp/decl.c:13751 +#: cp/decl.c:13768 #, gcc-internal-format msgid "user-defined %qD always evaluates both arguments" msgstr "" -#: cp/decl.c:13770 +#: cp/decl.c:13787 #, gcc-internal-format msgid "prefix %qD should return %qT" msgstr "" -#: cp/decl.c:13777 +#: cp/decl.c:13794 #, gcc-internal-format msgid "postfix %qD should return %qT" msgstr "" -#: cp/decl.c:13789 +#: cp/decl.c:13806 #, gcc-internal-format msgid "%qD should return by value" msgstr "" -#: cp/decl.c:13844 +#: cp/decl.c:13861 #, gcc-internal-format msgid "using template type parameter %qT after %qs" msgstr "" -#: cp/decl.c:13867 +#: cp/decl.c:13884 #, gcc-internal-format msgid "using alias template specialization %qT after %qs" msgstr "" -#: cp/decl.c:13870 +#: cp/decl.c:13887 #, gcc-internal-format msgid "using typedef-name %qD after %qs" msgstr "" -#: cp/decl.c:13872 +#: cp/decl.c:13889 #, gcc-internal-format msgid "%qD has a previous declaration here" msgstr "" -#: cp/decl.c:13880 +#: cp/decl.c:13897 #, gcc-internal-format msgid "%qT referred to as %qs" msgstr "" -#: cp/decl.c:13881 cp/decl.c:13888 +#: cp/decl.c:13898 cp/decl.c:13905 #, gcc-internal-format msgid "%qT has a previous declaration here" msgstr "" -#: cp/decl.c:13887 +#: cp/decl.c:13904 #, gcc-internal-format msgid "%qT referred to as enum" msgstr "" @@ -45401,94 +45412,94 @@ msgstr "" #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:13902 +#: cp/decl.c:13919 #, gcc-internal-format msgid "template argument required for %<%s %T%>" msgstr "" -#: cp/decl.c:13956 cp/name-lookup.c:4570 +#: cp/decl.c:13973 cp/name-lookup.c:4570 #, gcc-internal-format msgid "%qD has the same name as the class in which it is declared" msgstr "" -#: cp/decl.c:13986 cp/friend.c:302 cp/parser.c:3115 cp/parser.c:6551 -#: cp/pt.c:9306 +#: cp/decl.c:14003 cp/friend.c:302 cp/parser.c:3115 cp/parser.c:6551 +#: cp/pt.c:9308 #, gcc-internal-format msgid "%qT is not a template" msgstr "" -#: cp/decl.c:13991 +#: cp/decl.c:14008 #, gcc-internal-format msgid "perhaps you want to explicitly add %<%T::%>" msgstr "" -#: cp/decl.c:14000 cp/name-lookup.c:3997 cp/name-lookup.c:4004 +#: cp/decl.c:14017 cp/name-lookup.c:3997 cp/name-lookup.c:4004 #: cp/name-lookup.c:4857 cp/parser.c:6502 cp/parser.c:27221 #, gcc-internal-format msgid "reference to %qD is ambiguous" msgstr "" -#: cp/decl.c:14103 +#: cp/decl.c:14120 #, gcc-internal-format msgid "use of enum %q#D without previous declaration" msgstr "" -#: cp/decl.c:14139 +#: cp/decl.c:14156 #, gcc-internal-format msgid "redeclaration of %qT as a non-template" msgstr "" -#: cp/decl.c:14279 +#: cp/decl.c:14296 #, gcc-internal-format msgid "derived union %qT invalid" msgstr "" -#: cp/decl.c:14286 +#: cp/decl.c:14303 #, gcc-internal-format msgid "%qT defined with multiple direct bases" msgstr "" -#: cp/decl.c:14297 +#: cp/decl.c:14314 #, gcc-internal-format msgid "%qT defined with direct virtual base" msgstr "" -#: cp/decl.c:14322 +#: cp/decl.c:14339 #, gcc-internal-format msgid "base type %qT fails to be a struct or class type" msgstr "" -#: cp/decl.c:14352 +#: cp/decl.c:14369 #, gcc-internal-format msgid "recursive type %qT undefined" msgstr "" -#: cp/decl.c:14354 +#: cp/decl.c:14371 #, gcc-internal-format msgid "duplicate base type %qT invalid" msgstr "" -#: cp/decl.c:14499 +#: cp/decl.c:14516 #, gcc-internal-format msgid "scoped/unscoped mismatch in enum %q#T" msgstr "" -#: cp/decl.c:14502 cp/decl.c:14510 cp/decl.c:14520 cp/parser.c:18945 +#: cp/decl.c:14519 cp/decl.c:14527 cp/decl.c:14537 cp/parser.c:18945 #, gcc-internal-format msgid "previous definition here" msgstr "" -#: cp/decl.c:14507 +#: cp/decl.c:14524 #, gcc-internal-format msgid "underlying type mismatch in enum %q#T" msgstr "" -#: cp/decl.c:14517 +#: cp/decl.c:14534 #, gcc-internal-format msgid "different underlying type in enum %q#T" msgstr "" -#: cp/decl.c:14590 +#: cp/decl.c:14607 #, gcc-internal-format msgid "underlying type %qT of %qT must be an integral type" msgstr "" @@ -45497,78 +45508,78 @@ msgstr "" #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:14737 +#: cp/decl.c:14754 #, gcc-internal-format msgid "no integral type can represent all of the enumerator values for %qT" msgstr "" -#: cp/decl.c:14909 +#: cp/decl.c:14926 #, gcc-internal-format msgid "" "enumerator value for %qD must have integral or unscoped enumeration type" msgstr "" -#: cp/decl.c:14919 +#: cp/decl.c:14936 #, gcc-internal-format msgid "enumerator value for %qD is not an integer constant" msgstr "" -#: cp/decl.c:14968 +#: cp/decl.c:14985 #, gcc-internal-format msgid "incremented enumerator value is too large for %" msgstr "" -#: cp/decl.c:14969 +#: cp/decl.c:14986 #, gcc-internal-format msgid "incremented enumerator value is too large for %" msgstr "" -#: cp/decl.c:14980 +#: cp/decl.c:14997 #, gcc-internal-format msgid "overflow in enumeration values at %qD" msgstr "" -#: cp/decl.c:15000 +#: cp/decl.c:15017 #, gcc-internal-format msgid "enumerator value %qE is outside the range of underlying type %qT" msgstr "" -#: cp/decl.c:15111 +#: cp/decl.c:15128 #, gcc-internal-format msgid "return type %q#T is incomplete" msgstr "" -#: cp/decl.c:15286 cp/typeck.c:9675 +#: cp/decl.c:15303 cp/typeck.c:9693 #, gcc-internal-format msgid "% should return a reference to %<*this%>" msgstr "" -#: cp/decl.c:15633 +#: cp/decl.c:15650 #, gcc-internal-format msgid "invalid function declaration" msgstr "" -#: cp/decl.c:16102 +#: cp/decl.c:16119 #, gcc-internal-format msgid "no return statements in function returning %qT" msgstr "" -#: cp/decl.c:16104 cp/typeck.c:9555 +#: cp/decl.c:16121 cp/typeck.c:9573 #, gcc-internal-format msgid "only plain % return type can be deduced to %" msgstr "" -#: cp/decl.c:16324 +#: cp/decl.c:16341 #, gcc-internal-format msgid "invalid member function declaration" msgstr "" -#: cp/decl.c:16338 +#: cp/decl.c:16355 #, gcc-internal-format msgid "%qD is already defined in class %qT" msgstr "" -#: cp/decl.c:16711 +#: cp/decl.c:16728 #, gcc-internal-format msgid "use of %qD before deduction of %" msgstr "" @@ -45610,7 +45621,7 @@ msgstr "" msgid "deleting %qT is undefined" msgstr "" -#: cp/decl2.c:566 cp/pt.c:5559 +#: cp/decl2.c:566 cp/pt.c:5561 #, gcc-internal-format msgid "template declaration of %q#D" msgstr "" @@ -45624,7 +45635,7 @@ msgstr "" #. [temp.mem] #. #. A destructor shall not be a member template. -#: cp/decl2.c:621 cp/pt.c:5518 +#: cp/decl2.c:621 cp/pt.c:5520 #, gcc-internal-format msgid "destructor %qD declared as member template" msgstr "" @@ -46079,7 +46090,7 @@ msgstr "" msgid "%qD is not a member of %qT; did you mean %qs?" msgstr "" -#: cp/error.c:4292 cp/typeck.c:2420 +#: cp/error.c:4292 cp/typeck.c:2437 #, gcc-internal-format msgid "%qD is not a member of %qT" msgstr "" @@ -46089,7 +46100,7 @@ msgstr "" msgid "%qD is not a member of %qD; did you mean %qs?" msgstr "" -#: cp/error.c:4318 cp/typeck.c:3013 +#: cp/error.c:4318 cp/typeck.c:3031 #, gcc-internal-format msgid "%qD is not a member of %qD" msgstr "" @@ -46437,7 +46448,7 @@ msgstr "" msgid "invalid pointer to bit-field %qD" msgstr "" -#: cp/init.c:2264 cp/typeck.c:1897 +#: cp/init.c:2264 cp/typeck.c:1914 #, gcc-internal-format msgid "invalid use of non-static member function %qD" msgstr "" @@ -46914,40 +46925,40 @@ msgid "" "match the implicit exception-specification %qX" msgstr "" -#: cp/method.c:2192 +#: cp/method.c:2191 #, gcc-internal-format msgid "defaulted declaration %q+D does not match the expected signature" msgstr "" -#: cp/method.c:2195 +#: cp/method.c:2194 #, gcc-internal-format msgid "expected signature: %qD" msgstr "" -#: cp/method.c:2233 +#: cp/method.c:2232 msgid "" "function %q+D defaulted on its redeclaration with an exception-specification " "that differs from the implicit exception-specification %qX" msgstr "" -#: cp/method.c:2255 +#: cp/method.c:2254 #, gcc-internal-format msgid "" "explicitly defaulted function %q+D cannot be declared as % " "because the implicit declaration is not %:" msgstr "" -#: cp/method.c:2303 +#: cp/method.c:2302 #, gcc-internal-format msgid "a template cannot be defaulted" msgstr "" -#: cp/method.c:2331 +#: cp/method.c:2330 #, gcc-internal-format msgid "%qD cannot be defaulted" msgstr "" -#: cp/method.c:2340 +#: cp/method.c:2339 #, gcc-internal-format msgid "defaulted function %q+D with default argument" msgstr "" @@ -47345,7 +47356,7 @@ msgstr "" msgid "ISO C++ forbids using a floating-point literal in a constant-expression" msgstr "" -#: cp/parser.c:3162 cp/pt.c:18411 +#: cp/parser.c:3162 cp/pt.c:18414 #, gcc-internal-format msgid "" "a cast to a type other than an integral or enumeration type cannot appear in " @@ -47645,7 +47656,7 @@ msgstr "" msgid "fold-expressions only available with %<-std=c++17%> or %<-std=gnu++17%>" msgstr "" -#: cp/parser.c:5394 cp/parser.c:5571 cp/parser.c:5746 cp/semantics.c:3693 +#: cp/parser.c:5394 cp/parser.c:5571 cp/parser.c:5746 cp/semantics.c:3684 #, gcc-internal-format msgid "expected primary-expression" msgstr "" @@ -47715,7 +47726,7 @@ msgstr "" msgid "variable template-id %qD in nested-name-specifier" msgstr "" -#: cp/parser.c:6552 cp/typeck.c:2712 cp/typeck.c:2715 cp/typeck.c:2732 +#: cp/parser.c:6552 cp/typeck.c:2730 cp/typeck.c:2733 cp/typeck.c:2750 #, gcc-internal-format msgid "%qD is not a template" msgstr "" @@ -47740,7 +47751,7 @@ msgstr "" msgid "wrong number of arguments to %<__builtin_addressof%>" msgstr "" -#: cp/parser.c:7028 cp/pt.c:19023 +#: cp/parser.c:7028 cp/pt.c:19026 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_launder%>" msgstr "" @@ -47755,7 +47766,7 @@ msgstr "" msgid "two consecutive %<[%> shall only introduce an attribute" msgstr "" -#: cp/parser.c:7744 cp/typeck.c:2600 +#: cp/parser.c:7744 cp/typeck.c:2618 #, gcc-internal-format msgid "invalid use of %qD" msgstr "" @@ -47911,7 +47922,7 @@ msgstr "" msgid "capture of non-variable %qE" msgstr "" -#: cp/parser.c:10703 cp/parser.c:10713 cp/semantics.c:3539 cp/semantics.c:3551 +#: cp/parser.c:10703 cp/parser.c:10713 cp/semantics.c:3530 cp/semantics.c:3542 #, gcc-internal-format msgid "%q#D declared here" msgstr "" @@ -48227,12 +48238,12 @@ msgstr "" msgid "cannot expand initializer for member %qD" msgstr "" -#: cp/parser.c:14972 cp/pt.c:25054 +#: cp/parser.c:14972 cp/pt.c:25053 #, gcc-internal-format msgid "mem-initializer for %qD follows constructor delegation" msgstr "" -#: cp/parser.c:14984 cp/pt.c:25066 +#: cp/parser.c:14984 cp/pt.c:25065 #, gcc-internal-format msgid "constructor delegation follows mem-initializer for %qD" msgstr "" @@ -49509,7 +49520,7 @@ msgstr "" msgid "% clause with parameter on range-based % loop" msgstr "" -#: cp/parser.c:37072 cp/pt.c:16761 +#: cp/parser.c:37072 cp/pt.c:16764 #, gcc-internal-format msgid "iteration variable %qD should not be reduction" msgstr "" @@ -49540,22 +49551,22 @@ msgstr "" msgid "types may not be defined in declare reduction type list" msgstr "" -#: cp/parser.c:39647 cp/semantics.c:5548 +#: cp/parser.c:39647 cp/semantics.c:5540 #, gcc-internal-format msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:39652 cp/semantics.c:5557 +#: cp/parser.c:39652 cp/semantics.c:5549 #, gcc-internal-format msgid "function or array type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:39655 cp/pt.c:13085 cp/semantics.c:5563 +#: cp/parser.c:39655 cp/pt.c:13087 cp/semantics.c:5555 #, gcc-internal-format msgid "reference type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:39658 cp/semantics.c:5569 +#: cp/parser.c:39658 cp/semantics.c:5561 #, gcc-internal-format msgid "" "const, volatile or __restrict qualified type %qT in %<#pragma omp declare " @@ -49578,12 +49589,12 @@ msgstr "" msgid "atomic_cancel" msgstr "" -#: cp/parser.c:40553 cp/semantics.c:9198 +#: cp/parser.c:40553 cp/semantics.c:9190 #, gcc-internal-format msgid "%<__transaction_relaxed%> without transactional memory support enabled" msgstr "" -#: cp/parser.c:40555 cp/semantics.c:9200 +#: cp/parser.c:40555 cp/semantics.c:9192 #, gcc-internal-format msgid "%<__transaction_atomic%> without transactional memory support enabled" msgstr "" @@ -49702,7 +49713,7 @@ msgstr "" msgid "specialization of %qD after instantiation" msgstr "" -#: cp/pt.c:2006 cp/semantics.c:5417 +#: cp/pt.c:2006 cp/semantics.c:5409 #, gcc-internal-format msgid "%s %#qD" msgstr "" @@ -49896,7 +49907,7 @@ msgstr "" msgid "parameter packs not expanded with %<...%>:" msgstr "" -#: cp/pt.c:4083 cp/pt.c:4835 +#: cp/pt.c:4083 cp/pt.c:4837 #, gcc-internal-format msgid " %qD" msgstr "" @@ -49921,24 +49932,24 @@ msgstr "" msgid "template parameter %qD declared here" msgstr "" -#: cp/pt.c:4771 +#: cp/pt.c:4773 #, gcc-internal-format msgid "specialization of variable concept %q#D" msgstr "" -#: cp/pt.c:4830 +#: cp/pt.c:4832 #, gcc-internal-format msgid "template parameters not deducible in partial specialization:" msgstr "" -#: cp/pt.c:4854 +#: cp/pt.c:4856 #, gcc-internal-format msgid "" "partial specialization %q+D does not specialize any template arguments; to " "define the primary template, remove the template argument list" msgstr "" -#: cp/pt.c:4858 +#: cp/pt.c:4860 #, gcc-internal-format msgid "" "partial specialization %q+D does not specialize any template arguments and " @@ -49946,63 +49957,63 @@ msgid "" "template, remove the template argument list" msgstr "" -#: cp/pt.c:4862 cp/pt.c:4873 +#: cp/pt.c:4864 cp/pt.c:4875 #, gcc-internal-format msgid "primary template here" msgstr "" -#: cp/pt.c:4870 +#: cp/pt.c:4872 #, gcc-internal-format msgid "" "partial specialization is not more specialized than the primary template " "because it replaces multiple parameters with a pack expansion" msgstr "" -#: cp/pt.c:4886 +#: cp/pt.c:4888 #, gcc-internal-format msgid "partial specialization %qD is not more specialized than" msgstr "" -#: cp/pt.c:4888 +#: cp/pt.c:4890 #, gcc-internal-format msgid "primary template %qD" msgstr "" -#: cp/pt.c:4935 +#: cp/pt.c:4937 #, gcc-internal-format msgid "" "parameter pack argument %qE must be at the end of the template argument list" msgstr "" -#: cp/pt.c:4938 +#: cp/pt.c:4940 #, gcc-internal-format msgid "" "parameter pack argument %qT must be at the end of the template argument list" msgstr "" -#: cp/pt.c:4959 +#: cp/pt.c:4961 #, gcc-internal-format msgid "template argument %qE involves template parameter(s)" msgstr "" -#: cp/pt.c:5005 +#: cp/pt.c:5007 #, gcc-internal-format msgid "type %qT of template argument %qE depends on a template parameter" msgid_plural "type %qT of template argument %qE depends on template parameters" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:5067 +#: cp/pt.c:5069 #, gcc-internal-format msgid "declaration of %qD ambiguates earlier template instantiation for %qD" msgstr "" -#: cp/pt.c:5071 +#: cp/pt.c:5073 #, gcc-internal-format msgid "partial specialization of %qD after instantiation of %qD" msgstr "" -#: cp/pt.c:5254 +#: cp/pt.c:5256 #, gcc-internal-format msgid "no default argument for %qD" msgstr "" @@ -50010,52 +50021,52 @@ msgstr "" #. A primary class template can only have one #. parameter pack, at the end of the template #. parameter list. -#: cp/pt.c:5276 +#: cp/pt.c:5278 #, gcc-internal-format msgid "parameter pack %q+D must be at the end of the template parameter list" msgstr "" -#: cp/pt.c:5312 +#: cp/pt.c:5314 #, gcc-internal-format msgid "" "default template arguments may not be used in function template friend re-" "declaration" msgstr "" -#: cp/pt.c:5315 +#: cp/pt.c:5317 #, gcc-internal-format msgid "" "default template arguments may not be used in template friend declarations" msgstr "" -#: cp/pt.c:5318 +#: cp/pt.c:5320 #, gcc-internal-format msgid "" "default template arguments may not be used in function templates without %<-" "std=c++11%> or %<-std=gnu++11%>" msgstr "" -#: cp/pt.c:5321 +#: cp/pt.c:5323 #, gcc-internal-format msgid "default template arguments may not be used in partial specializations" msgstr "" -#: cp/pt.c:5324 cp/pt.c:5382 +#: cp/pt.c:5326 cp/pt.c:5384 #, gcc-internal-format msgid "default argument for template parameter for class enclosing %qD" msgstr "" -#: cp/pt.c:5496 +#: cp/pt.c:5498 #, gcc-internal-format msgid "template %qD declared" msgstr "" -#: cp/pt.c:5503 +#: cp/pt.c:5505 #, gcc-internal-format msgid "template class without a name" msgstr "" -#: cp/pt.c:5511 +#: cp/pt.c:5513 #, gcc-internal-format msgid "member template %qD may not have virt-specifiers" msgstr "" @@ -50065,76 +50076,76 @@ msgstr "" #. An allocation function can be a function #. template. ... Template allocation functions shall #. have two or more parameters. -#: cp/pt.c:5533 +#: cp/pt.c:5535 #, gcc-internal-format msgid "invalid template declaration of %qD" msgstr "" -#: cp/pt.c:5676 +#: cp/pt.c:5678 #, gcc-internal-format msgid "template definition of non-template %q#D" msgstr "" -#: cp/pt.c:5719 +#: cp/pt.c:5721 #, gcc-internal-format msgid "expected %d levels of template parms for %q#D, got %d" msgstr "" -#: cp/pt.c:5733 +#: cp/pt.c:5735 #, gcc-internal-format msgid "got %d template parameters for %q#D" msgstr "" -#: cp/pt.c:5736 +#: cp/pt.c:5738 #, gcc-internal-format msgid "got %d template parameters for %q#T" msgstr "" -#: cp/pt.c:5738 +#: cp/pt.c:5740 #, gcc-internal-format, gfc-internal-format msgid " but %d required" msgstr "" -#: cp/pt.c:5759 +#: cp/pt.c:5761 #, gcc-internal-format msgid "template arguments to %qD do not match original template %qD" msgstr "" -#: cp/pt.c:5762 +#: cp/pt.c:5764 #, gcc-internal-format msgid "use %%> for an explicit specialization" msgstr "" -#: cp/pt.c:5889 +#: cp/pt.c:5891 #, gcc-internal-format msgid "%qT is not a template type" msgstr "" -#: cp/pt.c:5902 +#: cp/pt.c:5904 #, gcc-internal-format msgid "template specifiers not specified in declaration of %qD" msgstr "" -#: cp/pt.c:5913 +#: cp/pt.c:5915 #, gcc-internal-format, gfc-internal-format msgid "redeclared with %d template parameter" msgid_plural "redeclared with %d template parameters" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:5917 +#: cp/pt.c:5919 #, gcc-internal-format msgid "previous declaration %qD used %d template parameter" msgid_plural "previous declaration %qD used %d template parameters" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:5954 +#: cp/pt.c:5956 #, gcc-internal-format msgid "template parameter %q+#D" msgstr "" -#: cp/pt.c:5955 +#: cp/pt.c:5957 #, gcc-internal-format msgid "redeclared here as %q#D" msgstr "" @@ -50143,434 +50154,434 @@ msgstr "" #. #. A template-parameter may not be given default arguments #. by two different declarations in the same scope. -#: cp/pt.c:5965 +#: cp/pt.c:5967 #, gcc-internal-format msgid "redefinition of default argument for %q#D" msgstr "" -#: cp/pt.c:5967 +#: cp/pt.c:5969 #, gcc-internal-format msgid "original definition appeared here" msgstr "" -#: cp/pt.c:5995 +#: cp/pt.c:5997 #, gcc-internal-format msgid "redeclaration %q#D with different constraints" msgstr "" -#: cp/pt.c:5998 +#: cp/pt.c:6000 #, gcc-internal-format msgid "original declaration appeared here" msgstr "" -#: cp/pt.c:6258 cp/pt.c:6326 +#: cp/pt.c:6260 cp/pt.c:6328 #, gcc-internal-format msgid "%qE is not a valid template argument for type %qT" msgstr "" -#: cp/pt.c:6261 +#: cp/pt.c:6263 #, gcc-internal-format msgid "it must be the address of a function with external linkage" msgstr "" -#: cp/pt.c:6264 +#: cp/pt.c:6266 #, gcc-internal-format msgid "it must be the name of a function with external linkage" msgstr "" -#: cp/pt.c:6276 +#: cp/pt.c:6278 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because %qD has no linkage" msgstr "" -#: cp/pt.c:6280 +#: cp/pt.c:6282 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because %qD does not have " "external linkage" msgstr "" -#: cp/pt.c:6329 +#: cp/pt.c:6331 #, gcc-internal-format msgid "it must be a pointer-to-member of the form %<&X::Y%>" msgstr "" -#: cp/pt.c:6331 +#: cp/pt.c:6333 #, gcc-internal-format msgid "because it is a member of %qT" msgstr "" -#: cp/pt.c:6391 +#: cp/pt.c:6393 #, gcc-internal-format msgid " couldn%'t deduce template parameter %qD" msgstr "" -#: cp/pt.c:6400 +#: cp/pt.c:6402 #, gcc-internal-format msgid " types %qT and %qT have incompatible cv-qualifiers" msgstr "" -#: cp/pt.c:6409 +#: cp/pt.c:6411 #, gcc-internal-format msgid " mismatched types %qT and %qT" msgstr "" -#: cp/pt.c:6418 +#: cp/pt.c:6420 #, gcc-internal-format msgid " template parameter %qD is not a parameter pack, but argument %qD is" msgstr "" -#: cp/pt.c:6429 +#: cp/pt.c:6431 #, gcc-internal-format msgid " template argument %qE does not match pointer-to-member constant %qE" msgstr "" -#: cp/pt.c:6439 +#: cp/pt.c:6441 #, gcc-internal-format msgid " %qE is not equivalent to %qE" msgstr "" -#: cp/pt.c:6448 +#: cp/pt.c:6450 #, gcc-internal-format msgid " inconsistent parameter pack deduction with %qT and %qT" msgstr "" -#: cp/pt.c:6460 +#: cp/pt.c:6462 #, gcc-internal-format msgid " deduced conflicting types for parameter %qT (%qT and %qT)" msgstr "" -#: cp/pt.c:6464 +#: cp/pt.c:6466 #, gcc-internal-format msgid " deduced conflicting values for non-type parameter %qE (%qE and %qE)" msgstr "" -#: cp/pt.c:6475 +#: cp/pt.c:6477 #, gcc-internal-format msgid " variable-sized array type %qT is not a valid template argument" msgstr "" -#: cp/pt.c:6486 +#: cp/pt.c:6488 #, gcc-internal-format msgid " member function type %qT is not a valid template argument" msgstr "" -#: cp/pt.c:6498 +#: cp/pt.c:6500 #, gcc-internal-format, gfc-internal-format msgid " candidate expects at least %d argument, %d provided" msgid_plural " candidate expects at least %d arguments, %d provided" msgstr[0] "" msgstr[1] "" -#: cp/pt.c:6529 +#: cp/pt.c:6531 #, gcc-internal-format msgid " cannot convert %qE (type %qT) to type %qT" msgstr "" -#: cp/pt.c:6542 +#: cp/pt.c:6544 #, gcc-internal-format msgid " %qT is an ambiguous base class of %qT" msgstr "" -#: cp/pt.c:6546 +#: cp/pt.c:6548 #, gcc-internal-format msgid " %qT is not derived from %qT" msgstr "" -#: cp/pt.c:6557 +#: cp/pt.c:6559 #, gcc-internal-format msgid "" " template parameters of a template template argument are inconsistent with " "other deduced template arguments" msgstr "" -#: cp/pt.c:6567 +#: cp/pt.c:6569 #, gcc-internal-format msgid " can%'t deduce a template for %qT from non-template type %qT" msgstr "" -#: cp/pt.c:6577 +#: cp/pt.c:6579 #, gcc-internal-format msgid " template argument %qE does not match %qE" msgstr "" -#: cp/pt.c:6623 +#: cp/pt.c:6625 #, gcc-internal-format msgid "" "%qE is not a valid template argument of type %qT because %qE is not a " "variable" msgstr "" -#: cp/pt.c:6630 +#: cp/pt.c:6632 #, gcc-internal-format msgid "" "%qE is not a valid template argument of type %qT in C++98 because %qD does " "not have external linkage" msgstr "" -#: cp/pt.c:6639 +#: cp/pt.c:6641 #, gcc-internal-format msgid "" "%qE is not a valid template argument of type %qT because %qD has no linkage" msgstr "" -#: cp/pt.c:6654 +#: cp/pt.c:6656 #, gcc-internal-format msgid "the address of %qD is not a valid template argument" msgstr "" -#: cp/pt.c:6663 +#: cp/pt.c:6665 #, gcc-internal-format msgid "" "the address of the %qT subobject of %qD is not a valid template argument" msgstr "" -#: cp/pt.c:6670 +#: cp/pt.c:6672 #, gcc-internal-format msgid "" "the address of %qD is not a valid template argument because it does not have " "static storage duration" msgstr "" -#: cp/pt.c:6688 +#: cp/pt.c:6690 #, gcc-internal-format msgid "" "%qD is not a valid template argument because %qD is a variable, not the " "address of a variable" msgstr "" -#: cp/pt.c:6696 +#: cp/pt.c:6698 #, gcc-internal-format msgid "" "%qE is not a valid template argument for %qT because it is not the address " "of a variable" msgstr "" -#: cp/pt.c:6778 +#: cp/pt.c:6780 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because string literals " "can never be used in this context" msgstr "" -#: cp/pt.c:6944 +#: cp/pt.c:6946 #, gcc-internal-format msgid "in template argument for type %qT" msgstr "" -#: cp/pt.c:6958 +#: cp/pt.c:6960 #, gcc-internal-format msgid "template argument %qE for type %qT not a constant integer" msgstr "" -#: cp/pt.c:7044 +#: cp/pt.c:7046 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because of conflicts in cv-" "qualification" msgstr "" -#: cp/pt.c:7052 +#: cp/pt.c:7054 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because it is not an lvalue" msgstr "" -#: cp/pt.c:7070 +#: cp/pt.c:7072 #, gcc-internal-format msgid "" "%q#D is not a valid template argument for type %qT because a reference " "variable does not have a constant address" msgstr "" -#: cp/pt.c:7130 +#: cp/pt.c:7132 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because it is a pointer" msgstr "" -#: cp/pt.c:7132 +#: cp/pt.c:7134 #, gcc-internal-format msgid "try using %qE instead" msgstr "" -#: cp/pt.c:7186 +#: cp/pt.c:7188 #, gcc-internal-format msgid "" "%qE is not a valid template argument for type %qT because it is of type %qT" msgstr "" -#: cp/pt.c:7758 +#: cp/pt.c:7760 #, gcc-internal-format msgid "ignoring attributes on template argument %qT" msgstr "" -#: cp/pt.c:7774 +#: cp/pt.c:7776 #, gcc-internal-format msgid "ignoring attributes in template argument %qE" msgstr "" -#: cp/pt.c:7909 +#: cp/pt.c:7911 #, gcc-internal-format msgid "injected-class-name %qD used as template template argument" msgstr "" -#: cp/pt.c:7938 +#: cp/pt.c:7940 #, gcc-internal-format msgid "invalid use of destructor %qE as a type" msgstr "" -#: cp/pt.c:7943 +#: cp/pt.c:7945 #, gcc-internal-format msgid "to refer to a type member of a template parameter, use %" msgstr "" -#: cp/pt.c:7959 cp/pt.c:7981 cp/pt.c:8035 +#: cp/pt.c:7961 cp/pt.c:7983 cp/pt.c:8037 #, gcc-internal-format msgid "type/value mismatch at argument %d in template parameter list for %qD" msgstr "" -#: cp/pt.c:7964 +#: cp/pt.c:7966 #, gcc-internal-format msgid " expected a constant of type %qT, got %qT" msgstr "" -#: cp/pt.c:7969 +#: cp/pt.c:7971 #, gcc-internal-format msgid " expected a class template, got %qE" msgstr "" -#: cp/pt.c:7972 +#: cp/pt.c:7974 #, gcc-internal-format msgid " expected a type, got %qE" msgstr "" -#: cp/pt.c:7986 +#: cp/pt.c:7988 #, gcc-internal-format msgid " expected a type, got %qT" msgstr "" -#: cp/pt.c:7989 +#: cp/pt.c:7991 #, gcc-internal-format msgid " expected a class template, got %qT" msgstr "" -#: cp/pt.c:8039 +#: cp/pt.c:8041 #, gcc-internal-format msgid " expected a template of type %qD, got %qT" msgstr "" -#: cp/pt.c:8053 +#: cp/pt.c:8055 #, gcc-internal-format msgid "constraint mismatch at argument %d in template parameter list for %qD" msgstr "" -#: cp/pt.c:8056 +#: cp/pt.c:8058 #, gcc-internal-format msgid " expected %qD but got %qD" msgstr "" -#: cp/pt.c:8119 +#: cp/pt.c:8121 #, gcc-internal-format msgid "could not convert template argument %qE from %qT to %qT" msgstr "" -#: cp/pt.c:8257 cp/pt.c:8570 +#: cp/pt.c:8259 cp/pt.c:8572 #, gcc-internal-format, gfc-internal-format msgid "template argument %d is invalid" msgstr "" -#: cp/pt.c:8272 cp/pt.c:8404 +#: cp/pt.c:8274 cp/pt.c:8406 #, gcc-internal-format, gfc-internal-format msgid "wrong number of template arguments (%d, should be %d)" msgstr "" -#: cp/pt.c:8400 +#: cp/pt.c:8402 #, gcc-internal-format, gfc-internal-format msgid "wrong number of template arguments (%d, should be at least %d)" msgstr "" -#: cp/pt.c:8409 +#: cp/pt.c:8411 #, gcc-internal-format msgid "provided for %qD" msgstr "" -#: cp/pt.c:8434 +#: cp/pt.c:8436 #, gcc-internal-format msgid "" "pack expansion argument for non-pack parameter %qD of alias template %qD" msgstr "" -#: cp/pt.c:8438 +#: cp/pt.c:8440 #, gcc-internal-format msgid "pack expansion argument for non-pack parameter %qD of concept %qD" msgstr "" -#: cp/pt.c:8536 +#: cp/pt.c:8538 #, gcc-internal-format msgid "" "so any instantiation with a non-empty parameter pack would be ill-formed" msgstr "" -#: cp/pt.c:9155 +#: cp/pt.c:9157 #, gcc-internal-format msgid "%q#D is not a function template" msgstr "" -#: cp/pt.c:9318 +#: cp/pt.c:9320 #, gcc-internal-format msgid "non-template type %qT used as a template" msgstr "" -#: cp/pt.c:9320 +#: cp/pt.c:9322 #, gcc-internal-format msgid "for template declaration %q+D" msgstr "" -#: cp/pt.c:9444 +#: cp/pt.c:9446 #, gcc-internal-format msgid "template constraint failure" msgstr "" -#: cp/pt.c:9814 +#: cp/pt.c:9816 #, gcc-internal-format msgid "use of invalid variable template %qE" msgstr "" -#: cp/pt.c:10244 +#: cp/pt.c:10246 #, gcc-internal-format msgid "" "template instantiation depth exceeds maximum of %d (use %<-ftemplate-depth=" "%> to increase the maximum)" msgstr "" -#: cp/pt.c:11324 +#: cp/pt.c:11326 #, gcc-internal-format msgid "flexible array member %qD in union" msgstr "" -#: cp/pt.c:11819 +#: cp/pt.c:11821 #, gcc-internal-format msgid "fold of empty expansion over %O" msgstr "" -#: cp/pt.c:12201 +#: cp/pt.c:12203 #, gcc-internal-format msgid "%qE is not the entire pattern of the pack expansion" msgstr "" -#: cp/pt.c:12291 +#: cp/pt.c:12293 #, gcc-internal-format msgid "mismatched argument pack lengths while expanding %qT" msgstr "" -#: cp/pt.c:12294 +#: cp/pt.c:12296 #, gcc-internal-format msgid "mismatched argument pack lengths while expanding %qE" msgstr "" -#: cp/pt.c:12855 +#: cp/pt.c:12857 #, gcc-internal-format msgid " when instantiating default argument for call to %qD" msgstr "" @@ -50588,300 +50599,300 @@ msgstr "" #. #. is an attempt to declare a variable with function #. type. -#: cp/pt.c:13880 +#: cp/pt.c:13882 #, gcc-internal-format msgid "variable %qD has function type" msgstr "" -#: cp/pt.c:14053 +#: cp/pt.c:14056 #, gcc-internal-format msgid "invalid parameter type %qT" msgstr "" -#: cp/pt.c:14055 +#: cp/pt.c:14058 #, gcc-internal-format msgid "in declaration %q+D" msgstr "" -#: cp/pt.c:14173 +#: cp/pt.c:14176 #, gcc-internal-format msgid "function returning an array" msgstr "" -#: cp/pt.c:14175 +#: cp/pt.c:14178 #, gcc-internal-format msgid "function returning a function" msgstr "" -#: cp/pt.c:14213 +#: cp/pt.c:14216 #, gcc-internal-format msgid "creating pointer to member function of non-class type %qT" msgstr "" -#: cp/pt.c:14825 +#: cp/pt.c:14828 #, gcc-internal-format msgid "forming reference to void" msgstr "" -#: cp/pt.c:14827 +#: cp/pt.c:14830 #, gcc-internal-format msgid "forming pointer to reference type %qT" msgstr "" -#: cp/pt.c:14829 +#: cp/pt.c:14832 #, gcc-internal-format msgid "forming reference to reference type %qT" msgstr "" -#: cp/pt.c:14842 +#: cp/pt.c:14845 #, gcc-internal-format msgid "forming pointer to qualified function type %qT" msgstr "" -#: cp/pt.c:14845 +#: cp/pt.c:14848 #, gcc-internal-format msgid "forming reference to qualified function type %qT" msgstr "" -#: cp/pt.c:14893 +#: cp/pt.c:14896 #, gcc-internal-format msgid "creating pointer to member of non-class type %qT" msgstr "" -#: cp/pt.c:14899 +#: cp/pt.c:14902 #, gcc-internal-format msgid "creating pointer to member reference type %qT" msgstr "" -#: cp/pt.c:14905 +#: cp/pt.c:14908 #, gcc-internal-format msgid "creating pointer to member of type void" msgstr "" -#: cp/pt.c:15005 +#: cp/pt.c:15008 #, gcc-internal-format msgid "%qD is instantiated for an empty pack" msgstr "" -#: cp/pt.c:15025 +#: cp/pt.c:15028 #, gcc-internal-format msgid "%qT is not a class, struct, or union type" msgstr "" -#: cp/pt.c:15062 +#: cp/pt.c:15065 #, gcc-internal-format msgid "%qT resolves to %qT, which is not an enumeration type" msgstr "" -#: cp/pt.c:15070 +#: cp/pt.c:15073 #, gcc-internal-format msgid "%qT resolves to %qT, which is is not a class type" msgstr "" -#: cp/pt.c:15134 +#: cp/pt.c:15137 #, gcc-internal-format msgid "empty initializer in lambda init-capture" msgstr "" -#: cp/pt.c:15209 +#: cp/pt.c:15212 #, gcc-internal-format msgid "use of %qs in template" msgstr "" -#: cp/pt.c:15387 +#: cp/pt.c:15390 #, gcc-internal-format msgid "qualifying type %qT does not match destructor name ~%qT" msgstr "" -#: cp/pt.c:15402 +#: cp/pt.c:15405 #, gcc-internal-format msgid "" "dependent-name %qE is parsed as a non-type, but instantiation yields a type" msgstr "" -#: cp/pt.c:15404 +#: cp/pt.c:15407 #, gcc-internal-format msgid "say % if a type is meant" msgstr "" -#: cp/pt.c:15494 +#: cp/pt.c:15497 #, gcc-internal-format msgid "initializer for %q#D expands to an empty list of expressions" msgstr "" -#: cp/pt.c:15617 +#: cp/pt.c:15620 #, gcc-internal-format msgid "using invalid field %qD" msgstr "" -#: cp/pt.c:16133 cp/pt.c:17885 +#: cp/pt.c:16136 cp/pt.c:17888 #, gcc-internal-format msgid "invalid use of pack expansion expression" msgstr "" -#: cp/pt.c:16137 cp/pt.c:17889 +#: cp/pt.c:16140 cp/pt.c:17892 #, gcc-internal-format msgid "use %<...%> to expand argument pack" msgstr "" -#: cp/pt.c:18941 +#: cp/pt.c:18944 #, gcc-internal-format msgid "" "%qD was not declared in this scope, and no declarations were found by " "argument-dependent lookup at the point of instantiation" msgstr "" -#: cp/pt.c:18969 +#: cp/pt.c:18972 #, gcc-internal-format msgid "declarations in dependent base %qT are not found by unqualified lookup" msgstr "" -#: cp/pt.c:18974 +#: cp/pt.c:18977 #, gcc-internal-format msgid "use %%D%> instead" msgstr "" -#: cp/pt.c:18977 +#: cp/pt.c:18980 #, gcc-internal-format msgid "use %<%T::%D%> instead" msgstr "" -#: cp/pt.c:18982 +#: cp/pt.c:18985 #, gcc-internal-format msgid "%qD declared here, later in the translation unit" msgstr "" -#: cp/pt.c:19038 +#: cp/pt.c:19041 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_convertvector%>" msgstr "" -#: cp/pt.c:19333 +#: cp/pt.c:19336 #, gcc-internal-format msgid "%qT is not a class or namespace" msgstr "" -#: cp/pt.c:19336 +#: cp/pt.c:19339 #, gcc-internal-format msgid "%qD is not a class or namespace" msgstr "" -#: cp/pt.c:19659 +#: cp/pt.c:19662 #, gcc-internal-format msgid "%qT is/uses unnamed type" msgstr "" -#: cp/pt.c:19661 +#: cp/pt.c:19664 #, gcc-internal-format msgid "template argument for %qD uses local type %qT" msgstr "" -#: cp/pt.c:19671 +#: cp/pt.c:19674 #, gcc-internal-format msgid "%qT is a variably modified type" msgstr "" -#: cp/pt.c:19686 +#: cp/pt.c:19689 #, gcc-internal-format msgid "integral expression %qE is not constant" msgstr "" -#: cp/pt.c:19704 +#: cp/pt.c:19707 #, gcc-internal-format msgid " trying to instantiate %qD" msgstr "" -#: cp/pt.c:23704 +#: cp/pt.c:23703 #, gcc-internal-format msgid "ambiguous template instantiation for %q#T" msgstr "" -#: cp/pt.c:23706 +#: cp/pt.c:23705 #, gcc-internal-format msgid "ambiguous template instantiation for %q#D" msgstr "" -#: cp/pt.c:23712 +#: cp/pt.c:23711 msgid "%s %#qS" msgstr "" -#: cp/pt.c:23736 cp/pt.c:23831 +#: cp/pt.c:23735 cp/pt.c:23830 #, gcc-internal-format msgid "explicit instantiation of non-template %q#D" msgstr "" -#: cp/pt.c:23742 +#: cp/pt.c:23741 #, gcc-internal-format msgid "explicit instantiation of variable concept %q#D" msgstr "" -#: cp/pt.c:23744 +#: cp/pt.c:23743 #, gcc-internal-format msgid "explicit instantiation of function concept %q#D" msgstr "" -#: cp/pt.c:23763 +#: cp/pt.c:23762 #, gcc-internal-format msgid "%qD is not a static data member of a class template" msgstr "" -#: cp/pt.c:23769 cp/pt.c:23826 +#: cp/pt.c:23768 cp/pt.c:23825 #, gcc-internal-format msgid "no matching template for %qD found" msgstr "" -#: cp/pt.c:23774 +#: cp/pt.c:23773 #, gcc-internal-format msgid "" "type %qT for explicit instantiation %qD does not match declared type %qT" msgstr "" -#: cp/pt.c:23782 +#: cp/pt.c:23781 #, gcc-internal-format msgid "explicit instantiation of %q#D" msgstr "" -#: cp/pt.c:23818 +#: cp/pt.c:23817 #, gcc-internal-format msgid "duplicate explicit instantiation of %q#D" msgstr "" -#: cp/pt.c:23841 cp/pt.c:23927 +#: cp/pt.c:23840 cp/pt.c:23926 #, gcc-internal-format msgid "ISO C++ 1998 forbids the use of % on explicit instantiations" msgstr "" -#: cp/pt.c:23846 cp/pt.c:23944 +#: cp/pt.c:23845 cp/pt.c:23943 #, gcc-internal-format msgid "storage class %qD applied to template instantiation" msgstr "" -#: cp/pt.c:23903 +#: cp/pt.c:23902 #, gcc-internal-format msgid "explicit instantiation of non-class template %qD" msgstr "" -#: cp/pt.c:23905 +#: cp/pt.c:23904 #, gcc-internal-format msgid "explicit instantiation of non-template type %qT" msgstr "" -#: cp/pt.c:23914 +#: cp/pt.c:23913 #, gcc-internal-format msgid "explicit instantiation of %q#T before definition of template" msgstr "" -#: cp/pt.c:23932 +#: cp/pt.c:23931 #, gcc-internal-format msgid "ISO C++ forbids the use of %qE on explicit instantiations" msgstr "" -#: cp/pt.c:23978 +#: cp/pt.c:23977 #, gcc-internal-format msgid "duplicate explicit instantiation of %q#T" msgstr "" -#: cp/pt.c:24300 +#: cp/pt.c:24299 #, gcc-internal-format msgid "exception specification of %qD depends on itself" msgstr "" @@ -50893,12 +50904,12 @@ msgstr "" #. member function or static data member of a class template #. shall be present in every translation unit in which it is #. explicitly instantiated. -#: cp/pt.c:24640 +#: cp/pt.c:24639 #, gcc-internal-format msgid "explicit instantiation of %qD but no definition available" msgstr "" -#: cp/pt.c:24842 +#: cp/pt.c:24841 #, gcc-internal-format msgid "" "template instantiation depth exceeds maximum of %d instantiating %q+D, " @@ -50906,125 +50917,125 @@ msgid "" "increase the maximum)" msgstr "" -#: cp/pt.c:25217 +#: cp/pt.c:25216 #, gcc-internal-format msgid "" "non-type template parameters of class type only available with %<-std=c++2a" "%> or %<-std=gnu++2a%>" msgstr "" -#: cp/pt.c:25225 +#: cp/pt.c:25224 #, gcc-internal-format msgid "" "%qT is not a valid type for a template non-type parameter because it is not " "literal" msgstr "" -#: cp/pt.c:25232 +#: cp/pt.c:25231 #, gcc-internal-format msgid "" "%qT is not a valid type for a template non-type parameter because it has a " "mutable member" msgstr "" -#: cp/pt.c:25244 +#: cp/pt.c:25243 #, gcc-internal-format msgid "invalid template non-type parameter" msgstr "" -#: cp/pt.c:25246 +#: cp/pt.c:25245 #, gcc-internal-format msgid "%q#T is not a valid type for a template non-type parameter" msgstr "" -#: cp/pt.c:26582 +#: cp/pt.c:26581 #, gcc-internal-format msgid "keyword % not allowed in declarator-id" msgstr "" -#: cp/pt.c:26822 +#: cp/pt.c:26821 #, gcc-internal-format msgid "" "deducing from brace-enclosed initializer list requires %<#include " "%>" msgstr "" -#: cp/pt.c:27303 +#: cp/pt.c:27302 #, gcc-internal-format msgid "non-class template %qT used without template arguments" msgstr "" -#: cp/pt.c:27452 +#: cp/pt.c:27454 #, gcc-internal-format msgid "" "cannot deduce template arguments for copy-initialization of %qT, as it has " "no non-explicit deduction guides or user-declared constructors" msgstr "" -#: cp/pt.c:27459 +#: cp/pt.c:27461 #, gcc-internal-format msgid "" "cannot deduce template arguments of %qT, as it has no viable deduction guides" msgstr "" -#: cp/pt.c:27473 +#: cp/pt.c:27475 #, gcc-internal-format msgid "class template argument deduction failed:" msgstr "" -#: cp/pt.c:27480 +#: cp/pt.c:27482 #, gcc-internal-format msgid "explicit deduction guides not considered for copy-initialization" msgstr "" -#: cp/pt.c:27546 +#: cp/pt.c:27548 #, gcc-internal-format msgid "direct-list-initialization of % requires exactly one element" msgstr "" -#: cp/pt.c:27549 +#: cp/pt.c:27551 #, gcc-internal-format msgid "" "for deduction to %, use copy-list-initialization (i." "e. add %<=%> before the %<{%>)" msgstr "" -#: cp/pt.c:27582 +#: cp/pt.c:27584 #, gcc-internal-format msgid "%qT as type rather than plain %" msgstr "" -#: cp/pt.c:27617 +#: cp/pt.c:27619 #, gcc-internal-format msgid "unable to deduce lambda return type from %qE" msgstr "" -#: cp/pt.c:27619 +#: cp/pt.c:27621 #, gcc-internal-format msgid "unable to deduce %qT from %qE" msgstr "" -#: cp/pt.c:27653 +#: cp/pt.c:27655 #, gcc-internal-format msgid "placeholder constraints not satisfied" msgstr "" -#: cp/pt.c:27657 +#: cp/pt.c:27659 #, gcc-internal-format msgid "deduced initializer does not satisfy placeholder constraints" msgstr "" -#: cp/pt.c:27661 +#: cp/pt.c:27663 #, gcc-internal-format msgid "deduced return type does not satisfy placeholder constraints" msgstr "" -#: cp/pt.c:27665 +#: cp/pt.c:27667 #, gcc-internal-format msgid "deduced expression type does not satisfy placeholder constraints" msgstr "" -#: cp/pt.c:27783 +#: cp/pt.c:27785 #, gcc-internal-format msgid "invalid use of %qT in template argument" msgstr "" @@ -51237,7 +51248,7 @@ msgstr "" msgid "invalid qualifying scope in pseudo-destructor name" msgstr "" -#: cp/semantics.c:2703 cp/typeck.c:2632 +#: cp/semantics.c:2703 cp/typeck.c:2650 #, gcc-internal-format msgid "qualified type %qT does not match destructor name ~%qT" msgstr "" @@ -51283,399 +51294,399 @@ msgstr "" msgid "invalid base-class specification" msgstr "" -#: cp/semantics.c:3509 +#: cp/semantics.c:3504 #, gcc-internal-format msgid "cannot capture member %qD of anonymous union" msgstr "" -#: cp/semantics.c:3529 cp/semantics.c:9894 +#: cp/semantics.c:3521 cp/semantics.c:9886 #, gcc-internal-format msgid "%qD is not captured" msgstr "" -#: cp/semantics.c:3534 +#: cp/semantics.c:3525 #, gcc-internal-format msgid "the lambda has no capture-default" msgstr "" -#: cp/semantics.c:3536 +#: cp/semantics.c:3527 #, gcc-internal-format msgid "" "lambda in local class %q+T cannot capture variables from the enclosing " "context" msgstr "" -#: cp/semantics.c:3548 +#: cp/semantics.c:3539 #, gcc-internal-format msgid "use of local variable with automatic storage from containing function" msgstr "" -#: cp/semantics.c:3550 +#: cp/semantics.c:3541 #, gcc-internal-format msgid "use of parameter from containing function" msgstr "" -#: cp/semantics.c:3677 +#: cp/semantics.c:3668 #, gcc-internal-format msgid "use of parameter outside function body" msgstr "" -#: cp/semantics.c:3687 +#: cp/semantics.c:3678 #, gcc-internal-format msgid "missing template arguments" msgstr "" -#: cp/semantics.c:3723 +#: cp/semantics.c:3714 #, gcc-internal-format msgid "" "template parameter %qD of type %qT is not allowed in an integral constant " "expression because it is not of integral or enumeration type" msgstr "" -#: cp/semantics.c:3754 +#: cp/semantics.c:3745 #, gcc-internal-format msgid "use of namespace %qD as expression" msgstr "" -#: cp/semantics.c:3759 +#: cp/semantics.c:3750 #, gcc-internal-format msgid "use of class template %qT as expression" msgstr "" #. Ambiguous reference to base members. -#: cp/semantics.c:3765 +#: cp/semantics.c:3756 #, gcc-internal-format msgid "request for member %qD is ambiguous in multiple inheritance lattice" msgstr "" -#: cp/semantics.c:3792 +#: cp/semantics.c:3783 #, gcc-internal-format msgid "%qD cannot appear in a constant-expression" msgstr "" -#: cp/semantics.c:3952 +#: cp/semantics.c:3944 #, gcc-internal-format msgid "type of %qE is unknown" msgstr "" -#: cp/semantics.c:3981 +#: cp/semantics.c:3973 #, gcc-internal-format msgid "%qT is not an enumeration type" msgstr "" #. Parameter packs can only be used in templates -#: cp/semantics.c:4120 +#: cp/semantics.c:4112 #, gcc-internal-format msgid "Parameter pack __bases only valid in template declaration" msgstr "" -#: cp/semantics.c:4152 +#: cp/semantics.c:4144 #, gcc-internal-format msgid "cannot apply % to destructor %<~%T%>" msgstr "" -#: cp/semantics.c:4166 +#: cp/semantics.c:4158 #, gcc-internal-format msgid "cannot apply % to member function %qD" msgstr "" -#: cp/semantics.c:4170 +#: cp/semantics.c:4162 #, gcc-internal-format msgid "cannot apply % to member function" msgstr "" -#: cp/semantics.c:4175 +#: cp/semantics.c:4167 #, gcc-internal-format msgid "cannot apply % to an enumerator %qD" msgstr "" -#: cp/semantics.c:4186 +#: cp/semantics.c:4178 #, gcc-internal-format msgid "offsetof within non-standard-layout type %qT is conditionally-supported" msgstr "" -#: cp/semantics.c:4703 cp/semantics.c:6381 cp/semantics.c:6460 -#: cp/semantics.c:6511 cp/semantics.c:6851 cp/semantics.c:6998 -#: cp/semantics.c:7210 +#: cp/semantics.c:4695 cp/semantics.c:6373 cp/semantics.c:6452 +#: cp/semantics.c:6503 cp/semantics.c:6843 cp/semantics.c:6990 +#: cp/semantics.c:7202 #, gcc-internal-format msgid "% allowed in OpenMP only in % clauses" msgstr "" -#: cp/semantics.c:5414 +#: cp/semantics.c:5406 #, gcc-internal-format msgid "user defined reduction lookup is ambiguous" msgstr "" -#: cp/semantics.c:5688 +#: cp/semantics.c:5680 #, gcc-internal-format msgid "%qE in % clause is a zero size array" msgstr "" -#: cp/semantics.c:5738 +#: cp/semantics.c:5730 #, gcc-internal-format msgid "%qE has const type for %" msgstr "" -#: cp/semantics.c:5855 +#: cp/semantics.c:5847 #, gcc-internal-format msgid "user defined reduction with constructor initializer for base class %qT" msgstr "" -#: cp/semantics.c:6249 +#: cp/semantics.c:6241 #, gcc-internal-format msgid "" "linear clause with %qs modifier applied to non-reference variable with %qT " "type" msgstr "" -#: cp/semantics.c:6264 +#: cp/semantics.c:6256 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with %qT type" msgstr "" -#: cp/semantics.c:6288 +#: cp/semantics.c:6280 #, gcc-internal-format msgid "linear step expression must be integral" msgstr "" -#: cp/semantics.c:6393 +#: cp/semantics.c:6385 #, gcc-internal-format msgid "%qD is not a variable in clause %qs" msgstr "" -#: cp/semantics.c:6473 +#: cp/semantics.c:6465 #, gcc-internal-format msgid "%qD is not a variable in clause %" msgstr "" -#: cp/semantics.c:6524 +#: cp/semantics.c:6516 #, gcc-internal-format msgid "%qD is not a variable in clause %" msgstr "" -#: cp/semantics.c:6574 +#: cp/semantics.c:6566 #, gcc-internal-format msgid "% static expression must be integral" msgstr "" -#: cp/semantics.c:6588 +#: cp/semantics.c:6580 #, gcc-internal-format msgid "% static value must be positive" msgstr "" -#: cp/semantics.c:6622 +#: cp/semantics.c:6614 #, gcc-internal-format msgid "% num expression must be integral" msgstr "" -#: cp/semantics.c:6625 +#: cp/semantics.c:6617 #, gcc-internal-format msgid "% length expression must be integral" msgstr "" -#: cp/semantics.c:6629 +#: cp/semantics.c:6621 #, gcc-internal-format msgid "% num expression must be integral" msgstr "" -#: cp/semantics.c:6651 +#: cp/semantics.c:6643 #, gcc-internal-format msgid "% num value must be positive" msgstr "" -#: cp/semantics.c:6655 +#: cp/semantics.c:6647 #, gcc-internal-format msgid "% length value must be positive" msgstr "" -#: cp/semantics.c:6660 +#: cp/semantics.c:6652 #, gcc-internal-format msgid "% num value must be positive" msgstr "" -#: cp/semantics.c:6687 +#: cp/semantics.c:6679 #, gcc-internal-format msgid "schedule chunk size expression must be integral" msgstr "" -#: cp/semantics.c:6718 +#: cp/semantics.c:6710 #, gcc-internal-format msgid "%qs length expression must be integral" msgstr "" -#: cp/semantics.c:6732 +#: cp/semantics.c:6724 #, gcc-internal-format msgid "%qs length expression must be positive constant integer expression" msgstr "" -#: cp/semantics.c:6752 +#: cp/semantics.c:6744 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:6781 +#: cp/semantics.c:6773 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:6811 +#: cp/semantics.c:6803 #, gcc-internal-format msgid "% id must be integral" msgstr "" -#: cp/semantics.c:6833 +#: cp/semantics.c:6825 #, gcc-internal-format msgid "% chunk size expression must be integral" msgstr "" -#: cp/semantics.c:6862 +#: cp/semantics.c:6854 #, gcc-internal-format msgid "%qD is not a variable in % clause" msgstr "" -#: cp/semantics.c:6877 +#: cp/semantics.c:6869 #, gcc-internal-format msgid "" "%qE in % clause is neither a pointer nor an array nor a reference " "to pointer or array" msgstr "" -#: cp/semantics.c:6884 +#: cp/semantics.c:6876 #, gcc-internal-format msgid "%qD appears more than once in % clauses" msgstr "" -#: cp/semantics.c:6899 +#: cp/semantics.c:6891 #, gcc-internal-format msgid "% clause alignment expression must be integral" msgstr "" -#: cp/semantics.c:6932 +#: cp/semantics.c:6924 #, gcc-internal-format msgid "%qD is not a variable in % clause" msgstr "" -#: cp/semantics.c:6943 +#: cp/semantics.c:6935 #, gcc-internal-format msgid "%qD appears more than once in % clauses" msgstr "" -#: cp/semantics.c:7008 +#: cp/semantics.c:7000 #, gcc-internal-format msgid "%qD is not lvalue expression nor array section in % clause" msgstr "" -#: cp/semantics.c:7353 +#: cp/semantics.c:7345 #, gcc-internal-format msgid "template %qE in clause %qs" msgstr "" -#: cp/semantics.c:7357 +#: cp/semantics.c:7349 #, gcc-internal-format msgid "overloaded function name %qE in clause %qs" msgstr "" -#: cp/semantics.c:7425 +#: cp/semantics.c:7417 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:7455 +#: cp/semantics.c:7447 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:7485 +#: cp/semantics.c:7477 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:7498 +#: cp/semantics.c:7490 #, gcc-internal-format msgid "% expression must be constant integer expression" msgstr "" -#: cp/semantics.c:7521 +#: cp/semantics.c:7513 #, gcc-internal-format msgid "" "%qs variable is neither a pointer, nor an array nor reference to pointer or " "array" msgstr "" -#: cp/semantics.c:7562 +#: cp/semantics.c:7554 #, gcc-internal-format msgid "% argument needs integral type" msgstr "" -#: cp/semantics.c:7824 +#: cp/semantics.c:7816 #, gcc-internal-format msgid "" "% qualified %qE without % member may appear only in " "% or % clauses" msgstr "" -#: cp/semantics.c:8018 +#: cp/semantics.c:8010 #, gcc-internal-format msgid "% %qD is not file, namespace or block scope variable" msgstr "" -#: cp/semantics.c:8032 +#: cp/semantics.c:8024 #, gcc-internal-format msgid "% %qE directive not in %qT definition" msgstr "" -#: cp/semantics.c:8230 +#: cp/semantics.c:8222 #, gcc-internal-format msgid "difference between %qE and %qD does not have integer type" msgstr "" -#: cp/semantics.c:8673 +#: cp/semantics.c:8665 #, gcc-internal-format msgid "%<#pragma omp simd%> used with class iteration variable %qE" msgstr "" -#: cp/semantics.c:8956 cp/semantics.c:8966 +#: cp/semantics.c:8948 cp/semantics.c:8958 #, gcc-internal-format msgid "%<#pragma omp atomic update%> uses two different expressions for memory" msgstr "" -#: cp/semantics.c:9328 +#: cp/semantics.c:9320 #, gcc-internal-format, gfc-internal-format msgid "static assertion failed: %s" msgstr "" -#: cp/semantics.c:9333 +#: cp/semantics.c:9325 #, gcc-internal-format msgid "non-constant condition for static assertion" msgstr "" -#: cp/semantics.c:9363 +#: cp/semantics.c:9355 #, gcc-internal-format msgid "argument to decltype must be an expression" msgstr "" -#: cp/semantics.c:9391 +#: cp/semantics.c:9383 #, gcc-internal-format msgid "decltype cannot resolve address of overloaded function" msgstr "" -#: cp/semantics.c:9933 +#: cp/semantics.c:9925 #, gcc-internal-format msgid "operand of fold expression has no unexpanded parameter packs" msgstr "" -#: cp/semantics.c:9986 +#: cp/semantics.c:9978 #, gcc-internal-format msgid "both arguments in binary fold have unexpanded parameter packs" msgstr "" -#: cp/semantics.c:9988 +#: cp/semantics.c:9980 #, gcc-internal-format msgid "no unexpanded parameter packs in binary fold" msgstr "" -#: cp/semantics.c:10006 +#: cp/semantics.c:9998 #, gcc-internal-format msgid "non-pointer argument to %<__builtin_launder%>" msgstr "" @@ -51907,403 +51918,403 @@ msgid "" "lacks a cast" msgstr "" -#: cp/typeck.c:1480 +#: cp/typeck.c:1495 #, gcc-internal-format msgid "canonical types differ for identical types %qT and %qT" msgstr "" -#: cp/typeck.c:1487 +#: cp/typeck.c:1502 #, gcc-internal-format msgid "same canonical type node for different types %qT and %qT" msgstr "" -#: cp/typeck.c:1618 +#: cp/typeck.c:1635 #, gcc-internal-format msgid "invalid application of %qs to a member function" msgstr "" -#: cp/typeck.c:1710 +#: cp/typeck.c:1727 #, gcc-internal-format msgid "invalid application of % to a bit-field" msgstr "" -#: cp/typeck.c:1718 +#: cp/typeck.c:1735 #, gcc-internal-format msgid "ISO C++ forbids applying % to an expression of function type" msgstr "" -#: cp/typeck.c:1769 +#: cp/typeck.c:1786 #, gcc-internal-format msgid "invalid application of %<__alignof%> to a bit-field" msgstr "" -#: cp/typeck.c:1780 +#: cp/typeck.c:1797 #, gcc-internal-format msgid "" "ISO C++ forbids applying %<__alignof%> to an expression of function type" msgstr "" -#: cp/typeck.c:1857 +#: cp/typeck.c:1874 #, gcc-internal-format msgid "% argument has non-integral type %qT" msgstr "" -#: cp/typeck.c:1902 +#: cp/typeck.c:1919 #, gcc-internal-format msgid "invalid use of non-static member function of type %qT" msgstr "" -#: cp/typeck.c:2076 +#: cp/typeck.c:2093 #, gcc-internal-format msgid "taking address of temporary array" msgstr "" -#: cp/typeck.c:2245 +#: cp/typeck.c:2262 #, gcc-internal-format msgid "ISO C++ forbids converting a string constant to %qT" msgstr "" -#: cp/typeck.c:2249 +#: cp/typeck.c:2266 #, gcc-internal-format msgid "deprecated conversion from string constant to %qT" msgstr "" -#: cp/typeck.c:2383 cp/typeck.c:2945 +#: cp/typeck.c:2400 cp/typeck.c:2963 #, gcc-internal-format msgid "" "request for member %qD in %qE, which is of pointer type %qT (maybe you meant " "to use %<->%> ?)" msgstr "" -#: cp/typeck.c:2387 cp/typeck.c:2949 +#: cp/typeck.c:2404 cp/typeck.c:2967 #, gcc-internal-format msgid "request for member %qD in %qE, which is of non-class type %qT" msgstr "" -#: cp/typeck.c:2418 +#: cp/typeck.c:2435 #, gcc-internal-format msgid "invalid use of nonstatic data member %qE" msgstr "" -#: cp/typeck.c:2497 +#: cp/typeck.c:2515 #, gcc-internal-format msgid "" "invalid access to non-static data member %qD in virtual base of NULL object" msgstr "" -#: cp/typeck.c:2647 +#: cp/typeck.c:2665 #, gcc-internal-format msgid "object type %qT does not match destructor name ~%qT" msgstr "" -#: cp/typeck.c:2656 +#: cp/typeck.c:2674 #, gcc-internal-format msgid "the type being destroyed is %qT, but the destructor refers to %qT" msgstr "" -#: cp/typeck.c:2797 +#: cp/typeck.c:2815 #, gcc-internal-format msgid "field %q#D can be accessed via %q#D" msgstr "" #. No hint. -#: cp/typeck.c:2816 +#: cp/typeck.c:2834 #, gcc-internal-format msgid "%q#T has no member named %qE" msgstr "" -#: cp/typeck.c:2839 +#: cp/typeck.c:2857 #, gcc-internal-format msgid "%q#T has no member named %qE; did you mean %q#D? (accessible via %q#D)" msgstr "" -#: cp/typeck.c:2850 +#: cp/typeck.c:2868 #, gcc-internal-format msgid "" "%q#T has no member named %qE; did you mean %q#D? (not accessible from this " "context)" msgstr "" -#: cp/typeck.c:2864 +#: cp/typeck.c:2882 #, gcc-internal-format msgid "%q#T has no member named %qE; did you mean %qE?" msgstr "" -#: cp/typeck.c:2979 cp/typeck.c:3005 +#: cp/typeck.c:2997 cp/typeck.c:3023 #, gcc-internal-format msgid "%<%D::%D%> is not a member of %qT" msgstr "" -#: cp/typeck.c:3044 +#: cp/typeck.c:3062 #, gcc-internal-format msgid "%qT is not a base of %qT" msgstr "" -#: cp/typeck.c:3097 +#: cp/typeck.c:3115 #, gcc-internal-format msgid "%qD is not a member template function" msgstr "" -#: cp/typeck.c:3276 +#: cp/typeck.c:3294 #, gcc-internal-format msgid "%qT is not a pointer-to-object type" msgstr "" -#: cp/typeck.c:3307 +#: cp/typeck.c:3325 #, gcc-internal-format msgid "invalid use of array indexing on pointer to member" msgstr "" -#: cp/typeck.c:3310 +#: cp/typeck.c:3328 #, gcc-internal-format msgid "invalid use of unary %<*%> on pointer to member" msgstr "" -#: cp/typeck.c:3313 +#: cp/typeck.c:3331 #, gcc-internal-format msgid "invalid use of implicit conversion on pointer to member" msgstr "" -#: cp/typeck.c:3316 +#: cp/typeck.c:3334 #, gcc-internal-format msgid "" "left hand operand of %<->*%> must be a pointer to class, but is a pointer to " "member of type %qT" msgstr "" -#: cp/typeck.c:3380 +#: cp/typeck.c:3398 #, gcc-internal-format msgid "subscript missing in array reference" msgstr "" -#: cp/typeck.c:3477 +#: cp/typeck.c:3495 #, gcc-internal-format msgid "subscripting array declared %" msgstr "" -#: cp/typeck.c:3511 +#: cp/typeck.c:3529 #, gcc-internal-format msgid "subscripted value is neither array nor pointer" msgstr "" -#: cp/typeck.c:3584 +#: cp/typeck.c:3602 #, gcc-internal-format msgid "object missing in use of %qE" msgstr "" -#: cp/typeck.c:3816 +#: cp/typeck.c:3834 #, gcc-internal-format msgid "cannot call function %qD" msgstr "" -#: cp/typeck.c:3831 +#: cp/typeck.c:3849 #, gcc-internal-format msgid "ISO C++ forbids calling %<::main%> from within program" msgstr "" -#: cp/typeck.c:3852 +#: cp/typeck.c:3870 #, gcc-internal-format msgid "" "must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E " "(...)%>, e.g. %<(... ->* %E) (...)%>" msgstr "" -#: cp/typeck.c:3869 +#: cp/typeck.c:3887 #, gcc-internal-format msgid "%qE cannot be used as a function" msgstr "" -#: cp/typeck.c:3872 +#: cp/typeck.c:3890 #, gcc-internal-format msgid "%qD cannot be used as a function" msgstr "" -#: cp/typeck.c:3875 +#: cp/typeck.c:3893 #, gcc-internal-format msgid "expression cannot be used as a function" msgstr "" -#: cp/typeck.c:3932 +#: cp/typeck.c:3950 #, gcc-internal-format msgid "too many arguments to constructor %q#D" msgstr "" -#: cp/typeck.c:3933 +#: cp/typeck.c:3951 #, gcc-internal-format msgid "too few arguments to constructor %q#D" msgstr "" -#: cp/typeck.c:3938 +#: cp/typeck.c:3956 #, gcc-internal-format msgid "too many arguments to member function %q#D" msgstr "" -#: cp/typeck.c:3939 +#: cp/typeck.c:3957 #, gcc-internal-format msgid "too few arguments to member function %q#D" msgstr "" -#: cp/typeck.c:3945 +#: cp/typeck.c:3963 #, gcc-internal-format msgid "too many arguments to function %q#D" msgstr "" -#: cp/typeck.c:3946 +#: cp/typeck.c:3964 #, gcc-internal-format msgid "too few arguments to function %q#D" msgstr "" -#: cp/typeck.c:3956 +#: cp/typeck.c:3974 #, gcc-internal-format msgid "too many arguments to method %q#D" msgstr "" -#: cp/typeck.c:3957 +#: cp/typeck.c:3975 #, gcc-internal-format msgid "too few arguments to method %q#D" msgstr "" -#: cp/typeck.c:3960 +#: cp/typeck.c:3978 #, gcc-internal-format msgid "too many arguments to function" msgstr "" -#: cp/typeck.c:3961 +#: cp/typeck.c:3979 #, gcc-internal-format msgid "too few arguments to function" msgstr "" -#: cp/typeck.c:4044 +#: cp/typeck.c:4062 #, gcc-internal-format msgid "parameter %P of %qD has incomplete type %qT" msgstr "" -#: cp/typeck.c:4050 +#: cp/typeck.c:4068 #, gcc-internal-format msgid "parameter %P has incomplete type %qT" msgstr "" -#: cp/typeck.c:4299 +#: cp/typeck.c:4317 #, gcc-internal-format msgid "the address of %qD will never be NULL" msgstr "" -#: cp/typeck.c:4310 +#: cp/typeck.c:4328 #, gcc-internal-format msgid "the compiler can assume that the address of %qD will never be NULL" msgstr "" -#: cp/typeck.c:4428 cp/typeck.c:4439 +#: cp/typeck.c:4446 cp/typeck.c:4457 #, gcc-internal-format msgid "assuming cast to type %qT from overloaded function" msgstr "" -#: cp/typeck.c:4485 +#: cp/typeck.c:4503 #, gcc-internal-format msgid "NULL used in arithmetic" msgstr "" -#: cp/typeck.c:4852 +#: cp/typeck.c:4870 #, gcc-internal-format msgid "left rotate count is negative" msgstr "" -#: cp/typeck.c:4853 +#: cp/typeck.c:4871 #, gcc-internal-format msgid "right rotate count is negative" msgstr "" -#: cp/typeck.c:4859 +#: cp/typeck.c:4877 #, gcc-internal-format msgid "left rotate count >= width of type" msgstr "" -#: cp/typeck.c:4860 +#: cp/typeck.c:4878 #, gcc-internal-format msgid "right rotate count >= width of type" msgstr "" -#: cp/typeck.c:4954 cp/typeck.c:4962 cp/typeck.c:5242 cp/typeck.c:5250 +#: cp/typeck.c:4972 cp/typeck.c:4980 cp/typeck.c:5260 cp/typeck.c:5268 #, gcc-internal-format msgid "ISO C++ forbids comparison between pointer and integer" msgstr "" -#: cp/typeck.c:5164 cp/typeck.c:5177 +#: cp/typeck.c:5182 cp/typeck.c:5195 #, gcc-internal-format msgid "operand types are %qT and %qT" msgstr "" -#: cp/typeck.c:5279 +#: cp/typeck.c:5297 #, gcc-internal-format msgid "unordered comparison on non-floating point argument" msgstr "" -#: cp/typeck.c:5324 +#: cp/typeck.c:5342 msgid "" "implicit conversion from %qH to %qI to match other operand of binary " "expression" msgstr "" -#: cp/typeck.c:5337 +#: cp/typeck.c:5355 #, gcc-internal-format msgid "invalid operands of types %qT and %qT to binary %qO" msgstr "" -#: cp/typeck.c:5637 +#: cp/typeck.c:5655 #, gcc-internal-format msgid "ISO C++ forbids using pointer of type % in subtraction" msgstr "" -#: cp/typeck.c:5645 +#: cp/typeck.c:5663 #, gcc-internal-format msgid "ISO C++ forbids using pointer to a function in subtraction" msgstr "" -#: cp/typeck.c:5653 +#: cp/typeck.c:5671 #, gcc-internal-format msgid "ISO C++ forbids using pointer to a method in subtraction" msgstr "" -#: cp/typeck.c:5699 +#: cp/typeck.c:5717 #, gcc-internal-format msgid "invalid use of a pointer to an incomplete type in pointer arithmetic" msgstr "" -#: cp/typeck.c:5778 +#: cp/typeck.c:5796 #, gcc-internal-format msgid "taking address of constructor %qD" msgstr "" -#: cp/typeck.c:5779 +#: cp/typeck.c:5797 #, gcc-internal-format msgid "taking address of destructor %qD" msgstr "" -#: cp/typeck.c:5795 +#: cp/typeck.c:5813 #, gcc-internal-format msgid "invalid use of %qE to form a pointer-to-member-function" msgstr "" -#: cp/typeck.c:5798 +#: cp/typeck.c:5816 #, gcc-internal-format msgid " a qualified-id is required" msgstr "" -#: cp/typeck.c:5805 +#: cp/typeck.c:5823 #, gcc-internal-format msgid "" "parentheses around %qE cannot be used to form a pointer-to-member-function" msgstr "" #. An expression like &memfn. -#: cp/typeck.c:5980 +#: cp/typeck.c:5998 #, gcc-internal-format msgid "" "ISO C++ forbids taking the address of an unqualified or parenthesized non-" "static member function to form a pointer to member function. Say %<&%T::%D%>" msgstr "" -#: cp/typeck.c:5985 +#: cp/typeck.c:6003 #, gcc-internal-format msgid "" "ISO C++ forbids taking the address of a bound member function to form a " @@ -52311,422 +52322,422 @@ msgid "" msgstr "" #. Make this a permerror because we used to accept it. -#: cp/typeck.c:6021 +#: cp/typeck.c:6039 #, gcc-internal-format msgid "taking address of rvalue" msgstr "" -#: cp/typeck.c:6038 +#: cp/typeck.c:6056 #, gcc-internal-format msgid "ISO C++ forbids taking address of function %<::main%>" msgstr "" -#: cp/typeck.c:6095 +#: cp/typeck.c:6113 #, gcc-internal-format msgid "cannot create pointer to reference member %qD" msgstr "" -#: cp/typeck.c:6115 +#: cp/typeck.c:6133 #, gcc-internal-format msgid "attempt to take address of bit-field" msgstr "" -#: cp/typeck.c:6265 +#: cp/typeck.c:6283 #, gcc-internal-format msgid "%<~%> on an expression of type bool" msgstr "" -#: cp/typeck.c:6266 +#: cp/typeck.c:6284 #, gcc-internal-format msgid "did you mean to use logical not (%)?" msgstr "" -#: cp/typeck.c:6388 +#: cp/typeck.c:6406 #, gcc-internal-format msgid "ISO C++ forbids incrementing an enum" msgstr "" -#: cp/typeck.c:6389 +#: cp/typeck.c:6407 #, gcc-internal-format msgid "ISO C++ forbids decrementing an enum" msgstr "" -#: cp/typeck.c:6405 +#: cp/typeck.c:6423 #, gcc-internal-format msgid "cannot increment a pointer to incomplete type %qT" msgstr "" -#: cp/typeck.c:6406 +#: cp/typeck.c:6424 #, gcc-internal-format msgid "cannot decrement a pointer to incomplete type %qT" msgstr "" -#: cp/typeck.c:6417 +#: cp/typeck.c:6435 #, gcc-internal-format msgid "ISO C++ forbids incrementing a pointer of type %qT" msgstr "" -#: cp/typeck.c:6418 +#: cp/typeck.c:6436 #, gcc-internal-format msgid "ISO C++ forbids decrementing a pointer of type %qT" msgstr "" -#: cp/typeck.c:6453 +#: cp/typeck.c:6471 #, gcc-internal-format msgid "use of an operand of type %qT in % is forbidden" msgstr "" -#: cp/typeck.c:6462 +#: cp/typeck.c:6480 #, gcc-internal-format msgid "use of an operand of type %qT in % is forbidden in C++17" msgstr "" -#: cp/typeck.c:6469 +#: cp/typeck.c:6487 #, gcc-internal-format msgid "use of an operand of type %qT in % is deprecated" msgstr "" -#: cp/typeck.c:6650 +#: cp/typeck.c:6668 #, gcc-internal-format msgid "cannot take the address of %, which is an rvalue expression" msgstr "" -#: cp/typeck.c:6672 +#: cp/typeck.c:6690 #, gcc-internal-format msgid "address of explicit register variable %qD requested" msgstr "" -#: cp/typeck.c:6677 +#: cp/typeck.c:6695 #, gcc-internal-format msgid "address requested for %qD, which is declared %" msgstr "" -#: cp/typeck.c:6752 +#: cp/typeck.c:6770 #, gcc-internal-format msgid "list-initializer for non-class type must not be parenthesized" msgstr "" -#: cp/typeck.c:6764 +#: cp/typeck.c:6782 #, gcc-internal-format msgid "expression list treated as compound expression in initializer" msgstr "" -#: cp/typeck.c:6768 +#: cp/typeck.c:6786 #, gcc-internal-format msgid "expression list treated as compound expression in mem-initializer" msgstr "" -#: cp/typeck.c:6772 +#: cp/typeck.c:6790 #, gcc-internal-format msgid "expression list treated as compound expression in functional cast" msgstr "" -#: cp/typeck.c:6809 +#: cp/typeck.c:6827 #, gcc-internal-format, gfc-internal-format msgid "%s expression list treated as compound expression" msgstr "" -#: cp/typeck.c:6895 +#: cp/typeck.c:6913 #, gcc-internal-format msgid "no context to resolve type of %qE" msgstr "" -#: cp/typeck.c:6928 +#: cp/typeck.c:6946 #, gcc-internal-format msgid "cast from type %qT to type %qT casts away qualifiers" msgstr "" -#: cp/typeck.c:6934 +#: cp/typeck.c:6952 #, gcc-internal-format msgid "static_cast from type %qT to type %qT casts away qualifiers" msgstr "" -#: cp/typeck.c:6940 +#: cp/typeck.c:6958 #, gcc-internal-format msgid "reinterpret_cast from type %qT to type %qT casts away qualifiers" msgstr "" -#: cp/typeck.c:6961 +#: cp/typeck.c:6979 #, gcc-internal-format msgid "useless cast to type %q#T" msgstr "" -#: cp/typeck.c:6974 +#: cp/typeck.c:6992 #, gcc-internal-format msgid "type qualifiers ignored on cast result type" msgstr "" -#: cp/typeck.c:7393 +#: cp/typeck.c:7411 #, gcc-internal-format msgid "invalid static_cast from type %qT to type %qT" msgstr "" -#: cp/typeck.c:7399 cp/typeck.c:7405 cp/typeck.c:9031 +#: cp/typeck.c:7417 cp/typeck.c:7423 cp/typeck.c:9049 #, gcc-internal-format msgid "class type %qT is incomplete" msgstr "" -#: cp/typeck.c:7431 +#: cp/typeck.c:7449 msgid "converting from %qH to %qI" msgstr "" -#: cp/typeck.c:7505 +#: cp/typeck.c:7523 #, gcc-internal-format msgid "invalid cast of an rvalue expression of type %qT to type %qT" msgstr "" -#: cp/typeck.c:7575 +#: cp/typeck.c:7593 msgid "cast from %qH to %qI loses precision" msgstr "" -#: cp/typeck.c:7600 +#: cp/typeck.c:7618 msgid "cast between incompatible function types from %qH to %qI" msgstr "" -#: cp/typeck.c:7611 +#: cp/typeck.c:7629 msgid "cast between incompatible pointer to member types from %qH to %qI" msgstr "" -#: cp/typeck.c:7632 cp/typeck.c:7814 +#: cp/typeck.c:7650 cp/typeck.c:7832 msgid "cast from %qH to %qI increases required alignment of target type" msgstr "" -#: cp/typeck.c:7648 +#: cp/typeck.c:7666 #, gcc-internal-format msgid "" "casting between pointer-to-function and pointer-to-object is conditionally-" "supported" msgstr "" -#: cp/typeck.c:7662 +#: cp/typeck.c:7680 #, gcc-internal-format msgid "invalid cast from type %qT to type %qT" msgstr "" -#: cp/typeck.c:7730 +#: cp/typeck.c:7748 #, gcc-internal-format msgid "" "invalid use of const_cast with type %qT, which is not a pointer, reference, " "nor a pointer-to-data-member type" msgstr "" -#: cp/typeck.c:7739 +#: cp/typeck.c:7757 #, gcc-internal-format msgid "" "invalid use of const_cast with type %qT, which is a pointer or reference to " "a function type" msgstr "" -#: cp/typeck.c:7780 +#: cp/typeck.c:7798 #, gcc-internal-format msgid "invalid const_cast of an rvalue of type %qT to type %qT" msgstr "" -#: cp/typeck.c:7849 +#: cp/typeck.c:7867 #, gcc-internal-format msgid "invalid const_cast from type %qT to type %qT" msgstr "" -#: cp/typeck.c:7945 cp/typeck.c:7953 +#: cp/typeck.c:7963 cp/typeck.c:7971 #, gcc-internal-format msgid "ISO C++ forbids casting to an array type %qT" msgstr "" -#: cp/typeck.c:7962 +#: cp/typeck.c:7980 #, gcc-internal-format msgid "invalid cast to function type %qT" msgstr "" -#: cp/typeck.c:8281 +#: cp/typeck.c:8299 #, gcc-internal-format msgid " in evaluation of %<%Q(%#T, %#T)%>" msgstr "" -#: cp/typeck.c:8341 +#: cp/typeck.c:8359 #, gcc-internal-format msgid "assigning to an array from an initializer list" msgstr "" -#: cp/typeck.c:8368 +#: cp/typeck.c:8386 #, gcc-internal-format msgid "incompatible types in assignment of %qT to %qT" msgstr "" -#: cp/typeck.c:8382 +#: cp/typeck.c:8400 #, gcc-internal-format msgid "array used as initializer" msgstr "" -#: cp/typeck.c:8384 +#: cp/typeck.c:8402 #, gcc-internal-format msgid "invalid array assignment" msgstr "" -#: cp/typeck.c:8518 +#: cp/typeck.c:8536 #, gcc-internal-format msgid " in pointer to member function conversion" msgstr "" -#: cp/typeck.c:8532 +#: cp/typeck.c:8550 #, gcc-internal-format msgid "pointer to member conversion via virtual base %qT" msgstr "" -#: cp/typeck.c:8579 cp/typeck.c:8598 +#: cp/typeck.c:8597 cp/typeck.c:8616 #, gcc-internal-format msgid " in pointer to member conversion" msgstr "" -#: cp/typeck.c:8679 +#: cp/typeck.c:8697 #, gcc-internal-format msgid "invalid conversion to type %qT from type %qT" msgstr "" -#: cp/typeck.c:8994 +#: cp/typeck.c:9012 msgid "cannot convert %qH to %qI in default argument" msgstr "" -#: cp/typeck.c:8999 +#: cp/typeck.c:9017 msgid "cannot convert %qH to %qI in argument passing" msgstr "" -#: cp/typeck.c:9008 +#: cp/typeck.c:9026 msgid "cannot convert %qH to %qI in initialization" msgstr "" -#: cp/typeck.c:9012 +#: cp/typeck.c:9030 msgid "cannot convert %qH to %qI in return" msgstr "" -#: cp/typeck.c:9017 +#: cp/typeck.c:9035 msgid "cannot convert %qH to %qI in assignment" msgstr "" -#: cp/typeck.c:9049 +#: cp/typeck.c:9067 #, gcc-internal-format msgid "parameter %qP of %qD might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9053 +#: cp/typeck.c:9071 #, gcc-internal-format msgid "parameter might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9058 +#: cp/typeck.c:9076 #, gcc-internal-format msgid "target of conversion might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9063 +#: cp/typeck.c:9081 #, gcc-internal-format msgid "target of initialization might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9073 +#: cp/typeck.c:9091 #, gcc-internal-format msgid "" "left-hand side of assignment might be a candidate for a format attribute" msgstr "" -#: cp/typeck.c:9169 +#: cp/typeck.c:9187 #, gcc-internal-format msgid "in passing argument %P of %qD" msgstr "" -#: cp/typeck.c:9252 +#: cp/typeck.c:9270 #, gcc-internal-format msgid "returning reference to temporary" msgstr "" -#: cp/typeck.c:9255 +#: cp/typeck.c:9273 #, gcc-internal-format msgid "" "returning temporary initializer_list does not extend the lifetime of the " "underlying array" msgstr "" -#: cp/typeck.c:9289 +#: cp/typeck.c:9307 #, gcc-internal-format msgid "reference to local variable %qD returned" msgstr "" -#: cp/typeck.c:9293 +#: cp/typeck.c:9311 #, gcc-internal-format msgid "" "returning local initializer_list variable %qD does not extend the lifetime " "of the underlying array" msgstr "" -#: cp/typeck.c:9298 +#: cp/typeck.c:9316 #, gcc-internal-format msgid "address of label %qD returned" msgstr "" -#: cp/typeck.c:9302 +#: cp/typeck.c:9320 #, gcc-internal-format msgid "address of local variable %qD returned" msgstr "" -#: cp/typeck.c:9446 +#: cp/typeck.c:9464 #, gcc-internal-format msgid "moving a local object in a return statement prevents copy elision" msgstr "" -#: cp/typeck.c:9448 cp/typeck.c:9471 +#: cp/typeck.c:9466 cp/typeck.c:9489 #, gcc-internal-format msgid "remove % call" msgstr "" -#: cp/typeck.c:9470 +#: cp/typeck.c:9488 #, gcc-internal-format msgid "redundant move in return statement" msgstr "" -#: cp/typeck.c:9508 +#: cp/typeck.c:9526 #, gcc-internal-format msgid "returning a value from a destructor" msgstr "" #. If a return statement appears in a handler of the #. function-try-block of a constructor, the program is ill-formed. -#: cp/typeck.c:9516 +#: cp/typeck.c:9534 #, gcc-internal-format msgid "cannot return from a handler of a function-try-block of a constructor" msgstr "" #. You can't return a value from a constructor. -#: cp/typeck.c:9519 +#: cp/typeck.c:9537 #, gcc-internal-format msgid "returning a value from a constructor" msgstr "" #. Give a helpful error message. -#: cp/typeck.c:9553 cp/typeck.c:9599 +#: cp/typeck.c:9571 cp/typeck.c:9617 #, gcc-internal-format msgid "return-statement with no value, in function returning %qT" msgstr "" -#: cp/typeck.c:9561 +#: cp/typeck.c:9579 #, gcc-internal-format msgid "returning initializer list" msgstr "" -#: cp/typeck.c:9580 +#: cp/typeck.c:9598 #, gcc-internal-format msgid "inconsistent types %qT and %qT deduced for lambda return type" msgstr "" -#: cp/typeck.c:9583 +#: cp/typeck.c:9601 #, gcc-internal-format msgid "inconsistent deduction for auto return type: %qT and then %qT" msgstr "" -#: cp/typeck.c:9619 +#: cp/typeck.c:9637 #, gcc-internal-format msgid "return-statement with a value, in function returning %qT" msgstr "" -#: cp/typeck.c:9648 +#: cp/typeck.c:9666 #, gcc-internal-format msgid "" "% must not return NULL unless it is declared % (or -" @@ -52734,7 +52745,7 @@ msgid "" msgstr "" #. Make this a permerror because we used to accept it. -#: cp/typeck.c:10262 +#: cp/typeck.c:10280 #, gcc-internal-format msgid "using rvalue as lvalue" msgstr "" @@ -54700,7 +54711,7 @@ msgstr "" #. Since the extension field is 8 bit wide, we can only have #. up to 255 extension levels. -#: fortran/class.c:739 fortran/decl.c:3787 fortran/decl.c:10258 +#: fortran/class.c:739 fortran/decl.c:3787 fortran/decl.c:10287 #, gcc-internal-format msgid "Maximum extension level reached with type %qs at %L" msgstr "" @@ -54897,7 +54908,7 @@ msgstr "" msgid "deferred type parameter at %C" msgstr "" -#: fortran/decl.c:1095 fortran/resolve.c:11972 +#: fortran/decl.c:1095 fortran/resolve.c:11976 #, gcc-internal-format, gfc-internal-format msgid "Scalar INTEGER expression expected at %L" msgstr "" @@ -55193,7 +55204,7 @@ msgstr "" msgid "%qs entity cannot have an initializer at %C" msgstr "" -#: fortran/decl.c:2663 fortran/decl.c:8554 +#: fortran/decl.c:2663 fortran/decl.c:8583 #, gcc-internal-format, gfc-internal-format msgid "Duplicate array spec for Cray pointee at %C" msgstr "" @@ -55218,7 +55229,7 @@ msgstr "" msgid "Syntax error in old style initialization of %s at %C" msgstr "" -#: fortran/decl.c:2775 fortran/decl.c:6822 +#: fortran/decl.c:2775 fortran/decl.c:6851 #, gcc-internal-format, gfc-internal-format msgid "Initialization at %C isn't for a pointer variable" msgstr "" @@ -55228,7 +55239,7 @@ msgstr "" msgid "Pointer initialization at %C requires %<=>%>, not %<=%>" msgstr "" -#: fortran/decl.c:2797 fortran/decl.c:10432 +#: fortran/decl.c:2797 fortran/decl.c:10461 #, gcc-internal-format, gfc-internal-format msgid "Expected an initialization expression at %C" msgstr "" @@ -55579,7 +55590,7 @@ msgstr "" msgid "CONTIGUOUS attribute at %C" msgstr "" -#: fortran/decl.c:5468 fortran/decl.c:8858 +#: fortran/decl.c:5468 fortran/decl.c:8887 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED at %C only allowed in specification part of a module" msgstr "" @@ -55711,951 +55722,956 @@ msgstr "" msgid "Syntax error in data declaration at %C" msgstr "" -#: fortran/decl.c:6103 +#: fortran/decl.c:6125 #, gcc-internal-format, gfc-internal-format msgid "MODULE prefix at %C" msgstr "" -#: fortran/decl.c:6148 +#: fortran/decl.c:6130 +#, gcc-internal-format, gfc-internal-format +msgid "MODULE prefix at %C found outside of a module, submodule, or interface" +msgstr "" + +#: fortran/decl.c:6177 #, gcc-internal-format, gfc-internal-format msgid "IMPURE procedure at %C" msgstr "" -#: fortran/decl.c:6160 +#: fortran/decl.c:6189 #, gcc-internal-format, gfc-internal-format msgid "PURE and IMPURE must not appear both at %C" msgstr "" -#: fortran/decl.c:6206 +#: fortran/decl.c:6235 #, gcc-internal-format, gfc-internal-format msgid "ELEMENTAL prefix in MODULE PROCEDURE interface is missing at %L" msgstr "" -#: fortran/decl.c:6213 +#: fortran/decl.c:6242 #, gcc-internal-format, gfc-internal-format msgid "PURE prefix in MODULE PROCEDURE interface is missing at %L" msgstr "" -#: fortran/decl.c:6220 +#: fortran/decl.c:6249 #, gcc-internal-format, gfc-internal-format msgid "RECURSIVE prefix in MODULE PROCEDURE interface is missing at %L" msgstr "" -#: fortran/decl.c:6281 +#: fortran/decl.c:6310 #, gcc-internal-format, gfc-internal-format msgid "A type parameter list is required at %C" msgstr "" -#: fortran/decl.c:6295 fortran/primary.c:1820 +#: fortran/decl.c:6324 fortran/primary.c:1820 #, gcc-internal-format, gfc-internal-format msgid "Alternate-return argument at %C" msgstr "" -#: fortran/decl.c:6301 fortran/decl.c:6309 +#: fortran/decl.c:6330 fortran/decl.c:6338 #, gcc-internal-format, gfc-internal-format msgid "A parameter name is required at %C" msgstr "" -#: fortran/decl.c:6349 +#: fortran/decl.c:6378 #, gcc-internal-format msgid "Name %qs at %C is the name of the procedure" msgstr "" -#: fortran/decl.c:6362 +#: fortran/decl.c:6391 #, gcc-internal-format, gfc-internal-format msgid "Expected parameter list in type declaration at %C" msgstr "" -#: fortran/decl.c:6365 +#: fortran/decl.c:6394 #, gcc-internal-format, gfc-internal-format msgid "Unexpected junk in formal argument list at %C" msgstr "" -#: fortran/decl.c:6383 +#: fortran/decl.c:6412 #, gcc-internal-format msgid "Duplicate name %qs in parameter list at %C" msgstr "" -#: fortran/decl.c:6386 +#: fortran/decl.c:6415 #, gcc-internal-format msgid "Duplicate symbol %qs in formal argument list at %C" msgstr "" -#: fortran/decl.c:6425 +#: fortran/decl.c:6454 #, gcc-internal-format, gfc-internal-format msgid "Mismatch in MODULE PROCEDURE formal argument names (%s/%s) at %C" msgstr "" -#: fortran/decl.c:6431 +#: fortran/decl.c:6460 #, gcc-internal-format, gfc-internal-format msgid "Mismatch in number of MODULE PROCEDURE formal arguments at %C" msgstr "" -#: fortran/decl.c:6470 +#: fortran/decl.c:6499 #, gcc-internal-format, gfc-internal-format msgid "RESULT variable at %C must be different than function name" msgstr "" -#: fortran/decl.c:6547 +#: fortran/decl.c:6576 #, gcc-internal-format, gfc-internal-format msgid "Unexpected junk after function declaration at %C" msgstr "" -#: fortran/decl.c:6557 fortran/decl.c:7670 +#: fortran/decl.c:6586 fortran/decl.c:7699 #, gcc-internal-format, gfc-internal-format msgid "BIND(C) attribute at %L may not be specified for an internal procedure" msgstr "" -#: fortran/decl.c:6761 +#: fortran/decl.c:6790 #, gcc-internal-format, gfc-internal-format msgid "BIND(C) attribute at %C requires an interface with BIND(C)" msgstr "" -#: fortran/decl.c:6768 +#: fortran/decl.c:6797 #, gcc-internal-format, gfc-internal-format msgid "BIND(C) procedure with NAME may not have POINTER attribute at %C" msgstr "" -#: fortran/decl.c:6774 +#: fortran/decl.c:6803 #, gcc-internal-format, gfc-internal-format msgid "Dummy procedure at %C may not have BIND(C) attribute with NAME" msgstr "" -#: fortran/decl.c:6797 +#: fortran/decl.c:6826 #, gcc-internal-format msgid "Procedure %qs at %L already has basic type of %s" msgstr "" -#: fortran/decl.c:6843 fortran/decl.c:7031 fortran/decl.c:10916 +#: fortran/decl.c:6872 fortran/decl.c:7060 fortran/decl.c:10945 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in PROCEDURE statement at %C" msgstr "" -#: fortran/decl.c:6892 fortran/decl.c:10816 +#: fortran/decl.c:6921 fortran/decl.c:10845 #, gcc-internal-format msgid "Expected %<::%> after binding-attributes at %C" msgstr "" -#: fortran/decl.c:6899 +#: fortran/decl.c:6928 #, gcc-internal-format, gfc-internal-format msgid "NOPASS or explicit interface required at %C" msgstr "" -#: fortran/decl.c:6903 +#: fortran/decl.c:6932 #, gcc-internal-format, gfc-internal-format msgid "Procedure pointer component at %C" msgstr "" -#: fortran/decl.c:6975 +#: fortran/decl.c:7004 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in procedure pointer component at %C" msgstr "" -#: fortran/decl.c:6993 +#: fortran/decl.c:7022 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE at %C must be in a generic interface" msgstr "" -#: fortran/decl.c:7002 fortran/decl.c:9577 +#: fortran/decl.c:7031 fortran/decl.c:9606 #, gcc-internal-format, gfc-internal-format msgid "double colon in MODULE PROCEDURE statement at %L" msgstr "" -#: fortran/decl.c:7072 +#: fortran/decl.c:7101 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE statement at %C" msgstr "" -#: fortran/decl.c:7144 +#: fortran/decl.c:7173 #, gcc-internal-format, gfc-internal-format msgid "Expected formal argument list in function definition at %C" msgstr "" -#: fortran/decl.c:7168 fortran/decl.c:7172 fortran/decl.c:7427 -#: fortran/decl.c:7431 fortran/decl.c:7634 fortran/decl.c:7638 +#: fortran/decl.c:7197 fortran/decl.c:7201 fortran/decl.c:7456 +#: fortran/decl.c:7460 fortran/decl.c:7663 fortran/decl.c:7667 #: fortran/symbol.c:1903 #, gcc-internal-format, gfc-internal-format msgid "BIND(C) attribute at %L can only be used for variables or common blocks" msgstr "" -#: fortran/decl.c:7325 +#: fortran/decl.c:7354 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C" msgstr "" -#: fortran/decl.c:7334 +#: fortran/decl.c:7363 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a PROGRAM" msgstr "" -#: fortran/decl.c:7337 +#: fortran/decl.c:7366 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a MODULE" msgstr "" -#: fortran/decl.c:7340 +#: fortran/decl.c:7369 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a SUBMODULE" msgstr "" -#: fortran/decl.c:7343 +#: fortran/decl.c:7372 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a BLOCK DATA" msgstr "" -#: fortran/decl.c:7347 fortran/decl.c:7392 +#: fortran/decl.c:7376 fortran/decl.c:7421 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within an INTERFACE" msgstr "" -#: fortran/decl.c:7351 +#: fortran/decl.c:7380 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a STRUCTURE block" msgstr "" -#: fortran/decl.c:7355 +#: fortran/decl.c:7384 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a DERIVED TYPE block" msgstr "" -#: fortran/decl.c:7359 +#: fortran/decl.c:7388 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within an IF-THEN block" msgstr "" -#: fortran/decl.c:7364 +#: fortran/decl.c:7393 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a DO block" msgstr "" -#: fortran/decl.c:7368 +#: fortran/decl.c:7397 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a SELECT block" msgstr "" -#: fortran/decl.c:7372 +#: fortran/decl.c:7401 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a FORALL block" msgstr "" -#: fortran/decl.c:7376 +#: fortran/decl.c:7405 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a WHERE block" msgstr "" -#: fortran/decl.c:7380 +#: fortran/decl.c:7409 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear within a contained subprogram" msgstr "" -#: fortran/decl.c:7384 +#: fortran/decl.c:7413 #, gcc-internal-format, gfc-internal-format msgid "Unexpected ENTRY statement at %C" msgstr "" -#: fortran/decl.c:7405 +#: fortran/decl.c:7434 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %C cannot appear in a contained procedure" msgstr "" -#: fortran/decl.c:7456 fortran/decl.c:7677 +#: fortran/decl.c:7485 fortran/decl.c:7706 #, gcc-internal-format, gfc-internal-format msgid "Missing required parentheses before BIND(C) at %C" msgstr "" -#: fortran/decl.c:7550 +#: fortran/decl.c:7579 #, gcc-internal-format, gfc-internal-format msgid "ENTRY statement at %L with BIND(C) prohibited in an elemental procedure" msgstr "" -#: fortran/decl.c:7685 +#: fortran/decl.c:7714 #, gcc-internal-format, gfc-internal-format msgid "" "Alternate return dummy argument cannot appear in a SUBROUTINE with the " "BIND(C) attribute at %L" msgstr "" -#: fortran/decl.c:7748 fortran/decl.c:7755 +#: fortran/decl.c:7777 fortran/decl.c:7784 #, gcc-internal-format, gfc-internal-format msgid "Invalid C identifier in NAME= specifier at %C" msgstr "" -#: fortran/decl.c:7795 +#: fortran/decl.c:7824 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in NAME= specifier for binding label at %C" msgstr "" -#: fortran/decl.c:7811 +#: fortran/decl.c:7840 #, gcc-internal-format, gfc-internal-format msgid "NAME= specifier at %C should be a constant expression" msgstr "" -#: fortran/decl.c:7819 +#: fortran/decl.c:7848 #, gcc-internal-format, gfc-internal-format msgid "NAME= specifier at %C should be a scalar of default character kind" msgstr "" -#: fortran/decl.c:7838 +#: fortran/decl.c:7867 #, gcc-internal-format, gfc-internal-format msgid "Missing closing paren for binding label at %C" msgstr "" -#: fortran/decl.c:7844 +#: fortran/decl.c:7873 #, gcc-internal-format, gfc-internal-format msgid "No binding name is allowed in BIND(C) at %C" msgstr "" -#: fortran/decl.c:7850 +#: fortran/decl.c:7879 #, gcc-internal-format, gfc-internal-format msgid "For dummy procedure %s, no binding name is allowed in BIND(C) at %C" msgstr "" -#: fortran/decl.c:7879 +#: fortran/decl.c:7908 #, gcc-internal-format, gfc-internal-format msgid "NAME not allowed on BIND(C) for ABSTRACT INTERFACE at %C" msgstr "" -#: fortran/decl.c:8124 +#: fortran/decl.c:8153 #, gcc-internal-format, gfc-internal-format msgid "Unexpected END statement at %C" msgstr "" -#: fortran/decl.c:8133 +#: fortran/decl.c:8162 #, gcc-internal-format, gfc-internal-format msgid "END statement instead of %s statement at %L" msgstr "" #. We would have required END [something]. -#: fortran/decl.c:8142 +#: fortran/decl.c:8171 #, gcc-internal-format, gfc-internal-format msgid "%s statement expected at %L" msgstr "" -#: fortran/decl.c:8153 +#: fortran/decl.c:8182 #, gcc-internal-format, gfc-internal-format msgid "Expecting %s statement at %L" msgstr "" -#: fortran/decl.c:8173 +#: fortran/decl.c:8202 #, gcc-internal-format msgid "Expected block name of %qs in %s statement at %L" msgstr "" -#: fortran/decl.c:8190 +#: fortran/decl.c:8219 #, gcc-internal-format, gfc-internal-format msgid "Expected terminating name at %C" msgstr "" -#: fortran/decl.c:8204 fortran/decl.c:8212 +#: fortran/decl.c:8233 fortran/decl.c:8241 #, gcc-internal-format msgid "Expected label %qs for %s statement at %C" msgstr "" -#: fortran/decl.c:8311 +#: fortran/decl.c:8340 #, gcc-internal-format, gfc-internal-format msgid "Missing array specification at %L in DIMENSION statement" msgstr "" -#: fortran/decl.c:8319 +#: fortran/decl.c:8348 #, gcc-internal-format, gfc-internal-format msgid "Dimensions specified for %s at %L after its initialization" msgstr "" -#: fortran/decl.c:8327 +#: fortran/decl.c:8356 #, gcc-internal-format, gfc-internal-format msgid "Missing array specification at %L in CODIMENSION statement" msgstr "" -#: fortran/decl.c:8336 +#: fortran/decl.c:8365 #, gcc-internal-format, gfc-internal-format msgid "Array specification must be deferred at %L" msgstr "" -#: fortran/decl.c:8434 +#: fortran/decl.c:8463 #, gcc-internal-format, gfc-internal-format msgid "Unexpected character in variable list at %C" msgstr "" -#: fortran/decl.c:8471 +#: fortran/decl.c:8500 #, gcc-internal-format msgid "Expected %<(%> at %C" msgstr "" -#: fortran/decl.c:8485 fortran/decl.c:8525 +#: fortran/decl.c:8514 fortran/decl.c:8554 #, gcc-internal-format, gfc-internal-format msgid "Expected variable name at %C" msgstr "" -#: fortran/decl.c:8501 +#: fortran/decl.c:8530 #, gcc-internal-format, gfc-internal-format msgid "Cray pointer at %C must be an integer" msgstr "" -#: fortran/decl.c:8505 +#: fortran/decl.c:8534 #, gcc-internal-format, gfc-internal-format msgid "" "Cray pointer at %C has %d bytes of precision; memory addresses require %d " "bytes" msgstr "" -#: fortran/decl.c:8511 +#: fortran/decl.c:8540 #, gcc-internal-format, gfc-internal-format msgid "Expected \",\" at %C" msgstr "" -#: fortran/decl.c:8550 +#: fortran/decl.c:8579 #, gcc-internal-format msgid "Cannot set Cray pointee array spec." msgstr "" -#: fortran/decl.c:8574 +#: fortran/decl.c:8603 #, gcc-internal-format, gfc-internal-format msgid "Expected \")\" at %C" msgstr "" -#: fortran/decl.c:8586 +#: fortran/decl.c:8615 #, gcc-internal-format msgid "Expected %<,%> or end of statement at %C" msgstr "" -#: fortran/decl.c:8612 +#: fortran/decl.c:8641 #, gcc-internal-format, gfc-internal-format msgid "INTENT is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/decl.c:8644 +#: fortran/decl.c:8673 #, gcc-internal-format, gfc-internal-format msgid "OPTIONAL is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/decl.c:8663 +#: fortran/decl.c:8692 #, gcc-internal-format msgid "Cray pointer declaration at %C requires %<-fcray-pointer%> flag" msgstr "" -#: fortran/decl.c:8702 +#: fortran/decl.c:8731 #, gcc-internal-format, gfc-internal-format msgid "CONTIGUOUS statement at %C" msgstr "" -#: fortran/decl.c:8808 +#: fortran/decl.c:8837 #, gcc-internal-format, gfc-internal-format msgid "" "Access specification of the %s operator at %C has already been specified" msgstr "" -#: fortran/decl.c:8825 +#: fortran/decl.c:8854 #, gcc-internal-format, gfc-internal-format msgid "" "Access specification of the .%s. operator at %C has already been specified" msgstr "" -#: fortran/decl.c:8864 +#: fortran/decl.c:8893 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED statement at %C" msgstr "" -#: fortran/decl.c:8902 +#: fortran/decl.c:8931 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in PROTECTED statement at %C" msgstr "" -#: fortran/decl.c:8926 +#: fortran/decl.c:8955 #, gcc-internal-format, gfc-internal-format msgid "" "PRIVATE statement at %C is only allowed in the specification part of a module" msgstr "" -#: fortran/decl.c:8963 +#: fortran/decl.c:8992 #, gcc-internal-format, gfc-internal-format msgid "" "PUBLIC statement at %C is only allowed in the specification part of a module" msgstr "" -#: fortran/decl.c:8991 +#: fortran/decl.c:9020 #, gcc-internal-format, gfc-internal-format msgid "Expected variable name at %C in PARAMETER statement" msgstr "" -#: fortran/decl.c:8998 +#: fortran/decl.c:9027 #, gcc-internal-format, gfc-internal-format msgid "Expected = sign in PARAMETER statement at %C" msgstr "" -#: fortran/decl.c:9004 +#: fortran/decl.c:9033 #, gcc-internal-format, gfc-internal-format msgid "Expected expression at %C in PARAMETER statement" msgstr "" -#: fortran/decl.c:9024 +#: fortran/decl.c:9053 #, gcc-internal-format, gfc-internal-format msgid "Initializing already initialized variable at %C" msgstr "" #. With legacy PARAMETER statements, don't expect a terminating ')'. -#: fortran/decl.c:9049 +#: fortran/decl.c:9078 #, gcc-internal-format, gfc-internal-format msgid "PARAMETER without '()' at %C" msgstr "" -#: fortran/decl.c:9065 +#: fortran/decl.c:9094 #, gcc-internal-format, gfc-internal-format msgid "Unexpected characters in PARAMETER statement at %C" msgstr "" -#: fortran/decl.c:9084 fortran/decl.c:9140 +#: fortran/decl.c:9113 fortran/decl.c:9169 #, gcc-internal-format msgid "%s at %C is a DEC extension, enable with %<-fdec-static%>" msgstr "" -#: fortran/decl.c:9119 +#: fortran/decl.c:9148 #, gcc-internal-format, gfc-internal-format msgid "Expected entity-list in AUTOMATIC statement at %C" msgstr "" -#: fortran/decl.c:9126 +#: fortran/decl.c:9155 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in AUTOMATIC statement at %C" msgstr "" -#: fortran/decl.c:9175 +#: fortran/decl.c:9204 #, gcc-internal-format, gfc-internal-format msgid "Expected entity-list in STATIC statement at %C" msgstr "" -#: fortran/decl.c:9182 +#: fortran/decl.c:9211 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in STATIC statement at %C" msgstr "" -#: fortran/decl.c:9201 +#: fortran/decl.c:9230 #, gcc-internal-format, gfc-internal-format msgid "Blanket SAVE statement at %C follows previous SAVE statement" msgstr "" -#: fortran/decl.c:9212 +#: fortran/decl.c:9241 #, gcc-internal-format, gfc-internal-format msgid "SAVE statement at %C follows blanket SAVE statement" msgstr "" -#: fortran/decl.c:9258 +#: fortran/decl.c:9287 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in SAVE statement at %C" msgstr "" -#: fortran/decl.c:9272 +#: fortran/decl.c:9301 #, gcc-internal-format, gfc-internal-format msgid "VALUE is not allowed inside of BLOCK at %C" msgstr "" -#: fortran/decl.c:9276 +#: fortran/decl.c:9305 #, gcc-internal-format, gfc-internal-format msgid "VALUE statement at %C" msgstr "" -#: fortran/decl.c:9314 +#: fortran/decl.c:9343 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in VALUE statement at %C" msgstr "" -#: fortran/decl.c:9326 +#: fortran/decl.c:9355 #, gcc-internal-format, gfc-internal-format msgid "VOLATILE statement at %C" msgstr "" -#: fortran/decl.c:9353 +#: fortran/decl.c:9382 #, gcc-internal-format msgid "" "Specifying VOLATILE for coarray variable %qs at %C, which is use-/host-" "associated" msgstr "" -#: fortran/decl.c:9378 +#: fortran/decl.c:9407 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in VOLATILE statement at %C" msgstr "" -#: fortran/decl.c:9390 +#: fortran/decl.c:9419 #, gcc-internal-format, gfc-internal-format msgid "ASYNCHRONOUS statement at %C" msgstr "" -#: fortran/decl.c:9434 +#: fortran/decl.c:9463 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in ASYNCHRONOUS statement at %C" msgstr "" -#: fortran/decl.c:9459 +#: fortran/decl.c:9488 #, gcc-internal-format, gfc-internal-format msgid "MODULE PROCEDURE declaration at %C" msgstr "" -#: fortran/decl.c:9552 +#: fortran/decl.c:9581 #, gcc-internal-format, gfc-internal-format msgid "MODULE PROCEDURE at %C must be in a generic module interface" msgstr "" -#: fortran/decl.c:9610 +#: fortran/decl.c:9639 #, gcc-internal-format, gfc-internal-format msgid "Intrinsic procedure at %L cannot be a MODULE PROCEDURE" msgstr "" -#: fortran/decl.c:9659 +#: fortran/decl.c:9688 #, gcc-internal-format, gfc-internal-format msgid "Ambiguous symbol in TYPE definition at %C" msgstr "" -#: fortran/decl.c:9668 +#: fortran/decl.c:9697 #, gcc-internal-format msgid "Symbol %qs at %C has not been previously defined" msgstr "" -#: fortran/decl.c:9674 +#: fortran/decl.c:9703 #, gcc-internal-format msgid "%qs in EXTENDS expression at %C is not a derived type" msgstr "" -#: fortran/decl.c:9681 +#: fortran/decl.c:9710 #, gcc-internal-format msgid "%qs cannot be extended at %C because it is BIND(C)" msgstr "" -#: fortran/decl.c:9688 +#: fortran/decl.c:9717 #, gcc-internal-format msgid "%qs cannot be extended at %C because it is a SEQUENCE type" msgstr "" -#: fortran/decl.c:9711 +#: fortran/decl.c:9740 #, gcc-internal-format, gfc-internal-format msgid "" "Derived type at %C can only be PRIVATE in the specification part of a module" msgstr "" -#: fortran/decl.c:9723 +#: fortran/decl.c:9752 #, gcc-internal-format, gfc-internal-format msgid "" "Derived type at %C can only be PUBLIC in the specification part of a module" msgstr "" -#: fortran/decl.c:9744 +#: fortran/decl.c:9773 #, gcc-internal-format, gfc-internal-format msgid "ABSTRACT type at %C" msgstr "" -#: fortran/decl.c:9790 +#: fortran/decl.c:9819 #, gcc-internal-format, gfc-internal-format msgid "Failed to create structure type '%s' at %C" msgstr "" -#: fortran/decl.c:9796 +#: fortran/decl.c:9825 #, gcc-internal-format msgid "Type definition of %qs at %C was already defined at %L" msgstr "" -#: fortran/decl.c:9843 +#: fortran/decl.c:9872 #, gcc-internal-format, gfc-internal-format msgid "Junk after MAP statement at %C" msgstr "" -#: fortran/decl.c:9876 +#: fortran/decl.c:9905 #, gcc-internal-format, gfc-internal-format msgid "Junk after UNION statement at %C" msgstr "" -#: fortran/decl.c:9911 +#: fortran/decl.c:9940 #, gcc-internal-format msgid "%s at %C is a DEC extension, enable with %<-fdec-structure%>" msgstr "" -#: fortran/decl.c:9925 +#: fortran/decl.c:9954 #, gcc-internal-format, gfc-internal-format msgid "Structure name expected in non-nested structure declaration at %C" msgstr "" -#: fortran/decl.c:9943 +#: fortran/decl.c:9972 #, gcc-internal-format, gfc-internal-format msgid "Junk after non-nested STRUCTURE statement at %C" msgstr "" -#: fortran/decl.c:9950 +#: fortran/decl.c:9979 #, gcc-internal-format msgid "Structure name %qs at %C cannot be the same as an intrinsic type" msgstr "" -#: fortran/decl.c:10113 +#: fortran/decl.c:10142 #, gcc-internal-format, gfc-internal-format msgid "Expected :: in TYPE definition at %C" msgstr "" -#: fortran/decl.c:10141 +#: fortran/decl.c:10170 #, gcc-internal-format msgid "Type name %qs at %C cannot be the same as an intrinsic type" msgstr "" -#: fortran/decl.c:10152 +#: fortran/decl.c:10181 #, gcc-internal-format msgid "Derived type name %qs at %C already has a basic type of %s" msgstr "" -#: fortran/decl.c:10155 +#: fortran/decl.c:10184 #, gcc-internal-format msgid "Derived type name %qs at %C already has a basic type" msgstr "" -#: fortran/decl.c:10172 +#: fortran/decl.c:10201 #, gcc-internal-format msgid "Derived type definition of %qs at %C has already been defined" msgstr "" -#: fortran/decl.c:10235 +#: fortran/decl.c:10264 #, gcc-internal-format, gfc-internal-format msgid "Garbage after PARAMETERIZED TYPE declaration at %C" msgstr "" -#: fortran/decl.c:10318 +#: fortran/decl.c:10347 #, gcc-internal-format, gfc-internal-format msgid "Cray Pointee at %C cannot be assumed shape array" msgstr "" -#: fortran/decl.c:10338 +#: fortran/decl.c:10367 #, gcc-internal-format, gfc-internal-format msgid "ENUM and ENUMERATOR at %C" msgstr "" -#: fortran/decl.c:10370 +#: fortran/decl.c:10399 #, gcc-internal-format, gfc-internal-format msgid "Enumerator exceeds the C integer type at %C" msgstr "" -#: fortran/decl.c:10449 +#: fortran/decl.c:10478 #, gcc-internal-format, gfc-internal-format msgid "ENUMERATOR %L not initialized with integer expression" msgstr "" -#: fortran/decl.c:10497 +#: fortran/decl.c:10526 #, gcc-internal-format, gfc-internal-format msgid "ENUM definition statement expected before %C" msgstr "" -#: fortran/decl.c:10533 +#: fortran/decl.c:10562 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in ENUMERATOR definition at %C" msgstr "" -#: fortran/decl.c:10580 fortran/decl.c:10595 +#: fortran/decl.c:10609 fortran/decl.c:10624 #, gcc-internal-format, gfc-internal-format msgid "Duplicate access-specifier at %C" msgstr "" -#: fortran/decl.c:10615 +#: fortran/decl.c:10644 #, gcc-internal-format, gfc-internal-format msgid "Binding attributes already specify passing, illegal NOPASS at %C" msgstr "" -#: fortran/decl.c:10635 +#: fortran/decl.c:10664 #, gcc-internal-format, gfc-internal-format msgid "Binding attributes already specify passing, illegal PASS at %C" msgstr "" -#: fortran/decl.c:10662 +#: fortran/decl.c:10691 #, gcc-internal-format, gfc-internal-format msgid "Duplicate POINTER attribute at %C" msgstr "" -#: fortran/decl.c:10680 +#: fortran/decl.c:10709 #, gcc-internal-format, gfc-internal-format msgid "Duplicate NON_OVERRIDABLE at %C" msgstr "" -#: fortran/decl.c:10696 +#: fortran/decl.c:10725 #, gcc-internal-format, gfc-internal-format msgid "Duplicate DEFERRED at %C" msgstr "" -#: fortran/decl.c:10709 +#: fortran/decl.c:10738 #, gcc-internal-format, gfc-internal-format msgid "Expected access-specifier at %C" msgstr "" -#: fortran/decl.c:10711 +#: fortran/decl.c:10740 #, gcc-internal-format, gfc-internal-format msgid "Expected binding attribute at %C" msgstr "" -#: fortran/decl.c:10719 +#: fortran/decl.c:10748 #, gcc-internal-format, gfc-internal-format msgid "NON_OVERRIDABLE and DEFERRED cannot both appear at %C" msgstr "" -#: fortran/decl.c:10732 +#: fortran/decl.c:10761 #, gcc-internal-format, gfc-internal-format msgid "POINTER attribute is required for procedure pointer component at %C" msgstr "" -#: fortran/decl.c:10774 +#: fortran/decl.c:10803 #, gcc-internal-format msgid "Interface-name expected after %<(%> at %C" msgstr "" -#: fortran/decl.c:10780 +#: fortran/decl.c:10809 #, gcc-internal-format msgid "%<)%> expected at %C" msgstr "" -#: fortran/decl.c:10800 +#: fortran/decl.c:10829 #, gcc-internal-format, gfc-internal-format msgid "Interface must be specified for DEFERRED binding at %C" msgstr "" -#: fortran/decl.c:10805 +#: fortran/decl.c:10834 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE(interface) at %C should be declared DEFERRED" msgstr "" -#: fortran/decl.c:10828 +#: fortran/decl.c:10857 #, gcc-internal-format, gfc-internal-format msgid "Expected binding name at %C" msgstr "" -#: fortran/decl.c:10832 +#: fortran/decl.c:10861 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE list at %C" msgstr "" -#: fortran/decl.c:10844 +#: fortran/decl.c:10873 #, gcc-internal-format msgid "%<=> target%> is invalid for DEFERRED binding at %C" msgstr "" -#: fortran/decl.c:10850 +#: fortran/decl.c:10879 #, gcc-internal-format msgid "%<::%> needed in PROCEDURE binding with explicit target at %C" msgstr "" -#: fortran/decl.c:10860 +#: fortran/decl.c:10889 #, gcc-internal-format msgid "Expected binding target after %<=>%> at %C" msgstr "" -#: fortran/decl.c:10877 +#: fortran/decl.c:10906 #, gcc-internal-format msgid "Type %qs containing DEFERRED binding at %C is not ABSTRACT" msgstr "" -#: fortran/decl.c:10888 +#: fortran/decl.c:10917 #, gcc-internal-format msgid "" "There is already a procedure with binding name %qs for the derived type %qs " "at %C" msgstr "" -#: fortran/decl.c:10939 +#: fortran/decl.c:10968 #, gcc-internal-format, gfc-internal-format msgid "GENERIC at %C must be inside a derived-type CONTAINS" msgstr "" -#: fortran/decl.c:10959 +#: fortran/decl.c:10988 #, gcc-internal-format msgid "Expected %<::%> at %C" msgstr "" -#: fortran/decl.c:10971 +#: fortran/decl.c:11000 #, gcc-internal-format, gfc-internal-format msgid "Expected generic name or operator descriptor at %C" msgstr "" -#: fortran/decl.c:10992 +#: fortran/decl.c:11021 #, gcc-internal-format, gfc-internal-format msgid "Malformed GENERIC statement at %C" msgstr "" -#: fortran/decl.c:11003 +#: fortran/decl.c:11032 #, gcc-internal-format msgid "Expected %<=>%> at %C" msgstr "" -#: fortran/decl.c:11039 +#: fortran/decl.c:11068 #, gcc-internal-format msgid "" "There's already a non-generic procedure with binding name %qs for the " "derived type %qs at %C" msgstr "" -#: fortran/decl.c:11047 +#: fortran/decl.c:11076 #, gcc-internal-format msgid "Binding at %C must have the same access as already defined binding %qs" msgstr "" -#: fortran/decl.c:11095 +#: fortran/decl.c:11124 #, gcc-internal-format, gfc-internal-format msgid "Expected specific binding name at %C" msgstr "" -#: fortran/decl.c:11105 +#: fortran/decl.c:11134 #, gcc-internal-format msgid "%qs already defined as specific binding for the generic %qs at %C" msgstr "" -#: fortran/decl.c:11123 +#: fortran/decl.c:11152 #, gcc-internal-format, gfc-internal-format msgid "Junk after GENERIC binding at %C" msgstr "" -#: fortran/decl.c:11158 +#: fortran/decl.c:11187 #, gcc-internal-format, gfc-internal-format msgid "FINAL declaration at %C must be inside a derived type CONTAINS section" msgstr "" -#: fortran/decl.c:11169 +#: fortran/decl.c:11198 #, gcc-internal-format, gfc-internal-format msgid "" "Derived type declaration with FINAL at %C must be in the specification part " "of a MODULE" msgstr "" -#: fortran/decl.c:11191 +#: fortran/decl.c:11220 #, gcc-internal-format, gfc-internal-format msgid "Empty FINAL at %C" msgstr "" -#: fortran/decl.c:11198 +#: fortran/decl.c:11227 #, gcc-internal-format, gfc-internal-format msgid "Expected module procedure name at %C" msgstr "" -#: fortran/decl.c:11208 +#: fortran/decl.c:11237 #, gcc-internal-format msgid "Expected %<,%> at %C" msgstr "" -#: fortran/decl.c:11214 +#: fortran/decl.c:11243 #, gcc-internal-format msgid "Unknown procedure name %qs at %C" msgstr "" -#: fortran/decl.c:11227 +#: fortran/decl.c:11256 #, gcc-internal-format msgid "%qs at %C is already defined as FINAL procedure" msgstr "" -#: fortran/decl.c:11297 +#: fortran/decl.c:11326 #, gcc-internal-format, gfc-internal-format msgid "Unknown attribute in !GCC$ ATTRIBUTES statement at %C" msgstr "" -#: fortran/decl.c:11343 +#: fortran/decl.c:11372 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ ATTRIBUTES statement at %C" msgstr "" -#: fortran/decl.c:11363 +#: fortran/decl.c:11392 #, gcc-internal-format msgid "" "% directive requires a non-negative integral constant less than " "or equal to %u at %C" msgstr "" -#: fortran/decl.c:11377 +#: fortran/decl.c:11406 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in !GCC$ UNROLL directive at %C" msgstr "" @@ -56766,458 +56782,458 @@ msgstr "" msgid "gfc_is_constant_expr(): Unknown expression type" msgstr "" -#: fortran/expr.c:1227 +#: fortran/expr.c:1251 #, gcc-internal-format msgid "simplify_intrinsic_op(): Bad operator" msgstr "" -#: fortran/expr.c:1333 +#: fortran/expr.c:1357 #, gcc-internal-format, gfc-internal-format msgid "Index in dimension %d is out of bounds at %L" msgstr "" -#: fortran/expr.c:1521 fortran/expr.c:1572 +#: fortran/expr.c:1545 fortran/expr.c:1596 #, gcc-internal-format, gfc-internal-format msgid "index in dimension %d is out of bounds at %L" msgstr "" -#: fortran/expr.c:1648 +#: fortran/expr.c:1672 #, gcc-internal-format msgid "" "The number of elements in the array constructor at %L requires an increase " "of the allowed %d upper limit. See %<-fmax-array-constructor%> option" msgstr "" -#: fortran/expr.c:1756 fortran/primary.c:2309 +#: fortran/expr.c:1780 fortran/primary.c:2309 #, gcc-internal-format, gfc-internal-format msgid "LEN part_ref at %C" msgstr "" -#: fortran/expr.c:1770 fortran/primary.c:2324 +#: fortran/expr.c:1794 fortran/primary.c:2324 #, gcc-internal-format, gfc-internal-format msgid "KIND part_ref at %C" msgstr "" -#: fortran/expr.c:1781 +#: fortran/expr.c:1805 #, gcc-internal-format, gfc-internal-format msgid "RE part_ref at %C" msgstr "" -#: fortran/expr.c:1793 +#: fortran/expr.c:1817 #, gcc-internal-format, gfc-internal-format msgid "IM part_ref at %C" msgstr "" -#: fortran/expr.c:2372 +#: fortran/expr.c:2396 #, gcc-internal-format, gfc-internal-format msgid "elemental function arguments at %C are not compliant" msgstr "" -#: fortran/expr.c:2416 +#: fortran/expr.c:2440 #, gcc-internal-format, gfc-internal-format msgid "Numeric or CHARACTER operands are required in expression at %L" msgstr "" -#: fortran/expr.c:2441 +#: fortran/expr.c:2465 #, gcc-internal-format, gfc-internal-format msgid "" "Concatenation operator in expression at %L must have two CHARACTER operands" msgstr "" -#: fortran/expr.c:2448 +#: fortran/expr.c:2472 #, gcc-internal-format, gfc-internal-format msgid "Concat operator at %L must concatenate strings of the same kind" msgstr "" -#: fortran/expr.c:2458 +#: fortran/expr.c:2482 #, gcc-internal-format, gfc-internal-format msgid ".NOT. operator in expression at %L must have a LOGICAL operand" msgstr "" -#: fortran/expr.c:2474 +#: fortran/expr.c:2498 #, gcc-internal-format, gfc-internal-format msgid "LOGICAL operands are required in expression at %L" msgstr "" -#: fortran/expr.c:2485 +#: fortran/expr.c:2509 #, gcc-internal-format, gfc-internal-format msgid "Only intrinsic operators can be used in expression at %L" msgstr "" -#: fortran/expr.c:2493 +#: fortran/expr.c:2517 #, gcc-internal-format, gfc-internal-format msgid "Numeric operands are required in expression at %L" msgstr "" -#: fortran/expr.c:2516 +#: fortran/expr.c:2540 #, gcc-internal-format msgid "" "Invalid initialization expression for ALLOCATABLE component %qs in structure " "constructor at %L" msgstr "" -#: fortran/expr.c:2640 +#: fortran/expr.c:2664 #, gcc-internal-format msgid "" "Assumed or deferred character length variable %qs in constant expression at " "%L" msgstr "" -#: fortran/expr.c:2717 +#: fortran/expr.c:2741 #, gcc-internal-format msgid "" "transformational intrinsic %qs at %L is not permitted in an initialization " "expression" msgstr "" -#: fortran/expr.c:2748 +#: fortran/expr.c:2772 #, gcc-internal-format, gfc-internal-format msgid "Evaluation of nonstandard initialization expression at %L" msgstr "" -#: fortran/expr.c:2825 fortran/resolve.c:2694 +#: fortran/expr.c:2849 fortran/resolve.c:2694 #, gcc-internal-format msgid "" "Function %qs in initialization expression at %L must be an intrinsic function" msgstr "" -#: fortran/expr.c:2837 +#: fortran/expr.c:2861 #, gcc-internal-format msgid "" "Intrinsic function %qs at %L is not permitted in an initialization expression" msgstr "" -#: fortran/expr.c:2876 +#: fortran/expr.c:2900 #, gcc-internal-format msgid "PARAMETER %qs is used at %L before its definition is complete" msgstr "" -#: fortran/expr.c:2896 +#: fortran/expr.c:2920 #, gcc-internal-format msgid "" "Assumed size array %qs at %L is not permitted in an initialization expression" msgstr "" -#: fortran/expr.c:2902 +#: fortran/expr.c:2926 #, gcc-internal-format msgid "" "Assumed shape array %qs at %L is not permitted in an initialization " "expression" msgstr "" -#: fortran/expr.c:2911 +#: fortran/expr.c:2935 #, gcc-internal-format msgid "" "Assumed-shape array %qs at %L is not permitted in an initialization " "expression" msgstr "" -#: fortran/expr.c:2915 +#: fortran/expr.c:2939 #, gcc-internal-format msgid "" "Deferred array %qs at %L is not permitted in an initialization expression" msgstr "" -#: fortran/expr.c:2921 +#: fortran/expr.c:2945 #, gcc-internal-format msgid "" "Array %qs at %L is a variable, which does not reduce to a constant expression" msgstr "" -#: fortran/expr.c:2931 +#: fortran/expr.c:2955 #, gcc-internal-format msgid "" "Parameter %qs at %L has not been declared or is a variable, which does not " "reduce to a constant expression" msgstr "" -#: fortran/expr.c:2985 +#: fortran/expr.c:3009 #, gcc-internal-format msgid "check_init_expr(): Unknown expression type" msgstr "" -#: fortran/expr.c:3120 +#: fortran/expr.c:3144 #, gcc-internal-format msgid "Specification function %qs at %L cannot be a statement function" msgstr "" -#: fortran/expr.c:3127 +#: fortran/expr.c:3151 #, gcc-internal-format msgid "Specification function %qs at %L cannot be an internal function" msgstr "" -#: fortran/expr.c:3134 +#: fortran/expr.c:3158 #, gcc-internal-format msgid "Specification function %qs at %L must be PURE" msgstr "" -#: fortran/expr.c:3142 +#: fortran/expr.c:3166 #, gcc-internal-format msgid "Specification function %qs at %L cannot be RECURSIVE" msgstr "" -#: fortran/expr.c:3288 +#: fortran/expr.c:3312 #, gcc-internal-format msgid "Dummy argument %qs not allowed in expression at %L" msgstr "" -#: fortran/expr.c:3295 +#: fortran/expr.c:3319 #, gcc-internal-format msgid "Dummy argument %qs at %L cannot be OPTIONAL" msgstr "" -#: fortran/expr.c:3302 +#: fortran/expr.c:3326 #, gcc-internal-format msgid "Dummy argument %qs at %L cannot be INTENT(OUT)" msgstr "" -#: fortran/expr.c:3331 +#: fortran/expr.c:3355 #, gcc-internal-format msgid "Variable %qs cannot appear in the expression at %L" msgstr "" -#: fortran/expr.c:3362 +#: fortran/expr.c:3386 #, gcc-internal-format msgid "check_restricted(): Unknown expression type" msgstr "" -#: fortran/expr.c:3382 +#: fortran/expr.c:3406 #, gcc-internal-format, gfc-internal-format msgid "Expression at %L must be of INTEGER type, found %s" msgstr "" -#: fortran/expr.c:3394 +#: fortran/expr.c:3418 #, gcc-internal-format msgid "Function %qs at %L must be PURE" msgstr "" -#: fortran/expr.c:3403 +#: fortran/expr.c:3427 #, gcc-internal-format, gfc-internal-format msgid "Expression at %L must be scalar" msgstr "" -#: fortran/expr.c:3437 +#: fortran/expr.c:3461 #, gcc-internal-format, gfc-internal-format msgid "Incompatible ranks in %s (%d and %d) at %L" msgstr "" -#: fortran/expr.c:3451 +#: fortran/expr.c:3475 #, gcc-internal-format, gfc-internal-format msgid "Different shape for %s at %L on dimension %d (%d and %d)" msgstr "" -#: fortran/expr.c:3499 +#: fortran/expr.c:3523 #, gcc-internal-format, gfc-internal-format msgid "Assignment to a LEN or KIND part_ref at %L is not allowed" msgstr "" -#: fortran/expr.c:3555 +#: fortran/expr.c:3579 #, gcc-internal-format msgid "%qs at %L is not a VALUE" msgstr "" -#: fortran/expr.c:3566 +#: fortran/expr.c:3590 #, gcc-internal-format, gfc-internal-format msgid "Illegal assignment to external procedure at %L" msgstr "" -#: fortran/expr.c:3574 +#: fortran/expr.c:3598 #, gcc-internal-format, gfc-internal-format msgid "Incompatible ranks %d and %d in assignment at %L" msgstr "" -#: fortran/expr.c:3581 +#: fortran/expr.c:3605 #, gcc-internal-format, gfc-internal-format msgid "Variable type is UNKNOWN in assignment at %L" msgstr "" -#: fortran/expr.c:3593 +#: fortran/expr.c:3617 #, gcc-internal-format, gfc-internal-format msgid "NULL appears on right-hand side in assignment at %L" msgstr "" -#: fortran/expr.c:3603 +#: fortran/expr.c:3627 #, gcc-internal-format, gfc-internal-format msgid "POINTER-valued function appears on right-hand side of assignment at %L" msgstr "" -#: fortran/expr.c:3613 +#: fortran/expr.c:3637 #, gcc-internal-format msgid "BOZ literal at %L used to initialize non-integer variable %qs" msgstr "" -#: fortran/expr.c:3618 fortran/resolve.c:10445 +#: fortran/expr.c:3642 fortran/resolve.c:10449 #, gcc-internal-format, gfc-internal-format msgid "" "BOZ literal at %L outside a DATA statement and outside INT/REAL/DBLE/CMPLX" msgstr "" -#: fortran/expr.c:3629 fortran/resolve.c:10456 +#: fortran/expr.c:3653 fortran/resolve.c:10460 #, gcc-internal-format msgid "BOZ literal at %L is bitwise transferred non-integer symbol %qs" msgstr "" -#: fortran/expr.c:3637 fortran/resolve.c:10465 +#: fortran/expr.c:3661 fortran/resolve.c:10469 #, gcc-internal-format msgid "" "Arithmetic underflow of bit-wise transferred BOZ at %L. This check can be " "disabled with the option %<-fno-range-check%>" msgstr "" -#: fortran/expr.c:3641 fortran/resolve.c:10469 +#: fortran/expr.c:3665 fortran/resolve.c:10473 #, gcc-internal-format msgid "" "Arithmetic overflow of bit-wise transferred BOZ at %L. This check can be " "disabled with the option %<-fno-range-check%>" msgstr "" -#: fortran/expr.c:3645 fortran/resolve.c:10473 +#: fortran/expr.c:3669 fortran/resolve.c:10477 #, gcc-internal-format msgid "" "Arithmetic NaN of bit-wise transferred BOZ at %L. This check can be disabled " "with the option %<-fno-range-check%>" msgstr "" -#: fortran/expr.c:3654 +#: fortran/expr.c:3678 #, gcc-internal-format, gfc-internal-format msgid "" "The assignment to a KIND or LEN component of a parameterized type at %L is " "not allowed" msgstr "" -#: fortran/expr.c:3678 +#: fortran/expr.c:3702 #, gcc-internal-format, gfc-internal-format msgid "" "Incompatible types in DATA statement at %L; attempted conversion of %s to %s" msgstr "" -#: fortran/expr.c:3719 +#: fortran/expr.c:3743 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target is not a POINTER at %L" msgstr "" -#: fortran/expr.c:3727 +#: fortran/expr.c:3751 #, gcc-internal-format msgid "" "%qs in the pointer assignment at %L cannot be an l-value since it is a " "procedure" msgstr "" -#: fortran/expr.c:3751 +#: fortran/expr.c:3775 #, gcc-internal-format msgid "Expected bounds specification for %qs at %L" msgstr "" -#: fortran/expr.c:3756 +#: fortran/expr.c:3780 #, gcc-internal-format msgid "Bounds specification for %qs in pointer assignment at %L" msgstr "" -#: fortran/expr.c:3785 +#: fortran/expr.c:3809 #, gcc-internal-format, gfc-internal-format msgid "Stride must not be present at %L" msgstr "" -#: fortran/expr.c:3791 fortran/expr.c:3811 +#: fortran/expr.c:3815 fortran/expr.c:3835 #, gcc-internal-format msgid "" "Rank remapping requires a list of % " "specifications at %L" msgstr "" -#: fortran/expr.c:3799 fortran/expr.c:3818 +#: fortran/expr.c:3823 fortran/expr.c:3842 #, gcc-internal-format msgid "" "Expected list of % or list of % " "specifications at %L" msgstr "" -#: fortran/expr.c:3845 +#: fortran/expr.c:3869 #, gcc-internal-format, gfc-internal-format msgid "Pointer object at %L shall not have a coindex" msgstr "" -#: fortran/expr.c:3866 +#: fortran/expr.c:3890 #, gcc-internal-format, gfc-internal-format msgid "Invalid procedure pointer assignment at %L" msgstr "" -#: fortran/expr.c:3891 +#: fortran/expr.c:3915 #, gcc-internal-format msgid "" "Function result %qs is invalid as proc-target in procedure pointer " "assignment at %L" msgstr "" -#: fortran/expr.c:3900 +#: fortran/expr.c:3924 #, gcc-internal-format msgid "Abstract interface %qs is invalid in procedure pointer assignment at %L" msgstr "" -#: fortran/expr.c:3910 +#: fortran/expr.c:3934 #, gcc-internal-format msgid "Statement function %qs is invalid in procedure pointer assignment at %L" msgstr "" -#: fortran/expr.c:3916 +#: fortran/expr.c:3940 #, gcc-internal-format msgid "Internal procedure %qs is invalid in procedure pointer assignment at %L" msgstr "" -#: fortran/expr.c:3923 +#: fortran/expr.c:3947 #, gcc-internal-format msgid "Intrinsic %qs at %L is invalid in procedure pointer assignment" msgstr "" -#: fortran/expr.c:3931 +#: fortran/expr.c:3955 #, gcc-internal-format msgid "" "Nonintrinsic elemental procedure %qs is invalid in procedure pointer " "assignment at %L" msgstr "" -#: fortran/expr.c:3954 +#: fortran/expr.c:3978 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in the procedure pointer assignment at %L: mismatch in the calling " "convention" msgstr "" -#: fortran/expr.c:4007 +#: fortran/expr.c:4031 #, gcc-internal-format msgid "" "Interface mismatch in procedure pointer assignment at %L: %qs is not a " "subroutine" msgstr "" -#: fortran/expr.c:4017 fortran/expr.c:4032 +#: fortran/expr.c:4041 fortran/expr.c:4056 #, gcc-internal-format msgid "Explicit interface required for component %qs at %L: %s" msgstr "" -#: fortran/expr.c:4023 fortran/expr.c:4038 fortran/resolve.c:2572 +#: fortran/expr.c:4047 fortran/expr.c:4062 fortran/resolve.c:2572 #, gcc-internal-format msgid "Explicit interface required for %qs at %L: %s" msgstr "" -#: fortran/expr.c:4050 +#: fortran/expr.c:4074 #, gcc-internal-format, gfc-internal-format msgid "Interface mismatch in procedure pointer assignment at %L: %s" msgstr "" -#: fortran/expr.c:4059 +#: fortran/expr.c:4083 #, gcc-internal-format msgid "" "Procedure pointer target %qs at %L must be either an intrinsic, host or use " "associated, referenced or have the EXTERNAL attribute" msgstr "" -#: fortran/expr.c:4072 +#: fortran/expr.c:4096 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target cannot be a constant at %L" msgstr "" -#: fortran/expr.c:4086 +#: fortran/expr.c:4110 #, gcc-internal-format, gfc-internal-format msgid "" "Data-pointer-object at %L must be unlimited polymorphic, or of a type with " @@ -57225,34 +57241,34 @@ msgid "" "polymorphic target" msgstr "" -#: fortran/expr.c:4091 +#: fortran/expr.c:4115 #, gcc-internal-format, gfc-internal-format msgid "" "Different types in pointer assignment at %L; attempted assignment of %s to %s" msgstr "" -#: fortran/expr.c:4100 +#: fortran/expr.c:4124 #, gcc-internal-format, gfc-internal-format msgid "Different kind type parameters in pointer assignment at %L" msgstr "" -#: fortran/expr.c:4107 +#: fortran/expr.c:4131 #, gcc-internal-format, gfc-internal-format msgid "Different ranks in pointer assignment at %L" msgstr "" -#: fortran/expr.c:4126 +#: fortran/expr.c:4150 #, gcc-internal-format, gfc-internal-format msgid "" "Rank remapping target is smaller than size of the pointer (%ld < %ld) at %L" msgstr "" -#: fortran/expr.c:4139 +#: fortran/expr.c:4163 #, gcc-internal-format, gfc-internal-format msgid "Rank remapping target must be rank 1 or simply contiguous at %L" msgstr "" -#: fortran/expr.c:4143 +#: fortran/expr.c:4167 #, gcc-internal-format, gfc-internal-format msgid "Rank remapping target is not rank 1 at %L" msgstr "" @@ -57260,190 +57276,190 @@ msgstr "" #. The test above might need to be extend when F08, Note 5.4 has to be #. interpreted in the way that target and pointer with the same coindex #. are allowed. -#: fortran/expr.c:4175 fortran/expr.c:4247 +#: fortran/expr.c:4199 fortran/expr.c:4271 #, gcc-internal-format, gfc-internal-format msgid "Data target at %L shall not have a coindex" msgstr "" -#: fortran/expr.c:4178 +#: fortran/expr.c:4202 #, gcc-internal-format, gfc-internal-format msgid "" "Target expression in pointer assignment at %L must deliver a pointer result" msgstr "" -#: fortran/expr.c:4199 +#: fortran/expr.c:4223 #, gcc-internal-format, gfc-internal-format msgid "" "Pointer assignment target in initialization expression does not have the " "TARGET attribute at %L" msgstr "" -#: fortran/expr.c:4209 +#: fortran/expr.c:4233 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target is neither TARGET nor POINTER at %L" msgstr "" -#: fortran/expr.c:4217 +#: fortran/expr.c:4241 #, gcc-internal-format, gfc-internal-format msgid "Bad target in pointer assignment in PURE procedure at %L" msgstr "" -#: fortran/expr.c:4226 +#: fortran/expr.c:4250 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment with vector subscript on rhs at %L" msgstr "" -#: fortran/expr.c:4234 +#: fortran/expr.c:4258 #, gcc-internal-format, gfc-internal-format msgid "Pointer assignment target has PROTECTED attribute at %L" msgstr "" -#: fortran/expr.c:4258 +#: fortran/expr.c:4282 #, gcc-internal-format, gfc-internal-format msgid "Assignment to contiguous pointer from non-contiguous target at %L" msgstr "" -#: fortran/expr.c:4297 +#: fortran/expr.c:4321 #, gcc-internal-format, gfc-internal-format msgid "Pointer at %L in pointer assignment might outlive the pointer target" msgstr "" -#: fortran/expr.c:4373 fortran/resolve.c:1457 +#: fortran/expr.c:4397 fortran/resolve.c:1457 #, gcc-internal-format, gfc-internal-format msgid "Pointer initialization target at %L must not be ALLOCATABLE" msgstr "" -#: fortran/expr.c:4379 +#: fortran/expr.c:4403 #, gcc-internal-format, gfc-internal-format msgid "Pointer initialization target at %L must have the TARGET attribute" msgstr "" -#: fortran/expr.c:4394 fortran/resolve.c:1463 +#: fortran/expr.c:4418 fortran/resolve.c:1463 #, gcc-internal-format, gfc-internal-format msgid "Pointer initialization target at %L must have the SAVE attribute" msgstr "" -#: fortran/expr.c:4406 +#: fortran/expr.c:4430 #, gcc-internal-format, gfc-internal-format msgid "" "Procedure pointer initialization target at %L may not be a procedure pointer" msgstr "" -#: fortran/expr.c:4412 +#: fortran/expr.c:4436 #, gcc-internal-format msgid "" "Internal procedure %qs is invalid in procedure pointer initialization at %L" msgstr "" -#: fortran/expr.c:4419 +#: fortran/expr.c:4443 #, gcc-internal-format msgid "" "Dummy procedure %qs is invalid in procedure pointer initialization at %L" msgstr "" -#: fortran/expr.c:4887 +#: fortran/expr.c:4911 #, gcc-internal-format msgid "" "generate_isocbinding_initializer(): bad iso_c_binding type, expected % or %" msgstr "" -#: fortran/expr.c:5969 +#: fortran/expr.c:5993 #, gcc-internal-format, gfc-internal-format msgid "" "Fortran 2008: Pointer functions in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:5977 +#: fortran/expr.c:6001 #, gcc-internal-format, gfc-internal-format msgid "Non-variable expression in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:5985 +#: fortran/expr.c:6009 #, gcc-internal-format msgid "Named constant %qs in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:5994 +#: fortran/expr.c:6018 #, gcc-internal-format msgid "%qs in variable definition context (%s) at %L is not a variable" msgstr "" -#: fortran/expr.c:6005 +#: fortran/expr.c:6029 #, gcc-internal-format, gfc-internal-format msgid "Non-POINTER in pointer association context (%s) at %L" msgstr "" -#: fortran/expr.c:6014 +#: fortran/expr.c:6038 #, gcc-internal-format, gfc-internal-format msgid "Type inaccessible in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:6027 +#: fortran/expr.c:6051 #, gcc-internal-format, gfc-internal-format msgid "LOCK_TYPE in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:6040 +#: fortran/expr.c:6064 #, gcc-internal-format, gfc-internal-format msgid "LOCK_EVENT in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:6070 +#: fortran/expr.c:6094 #, gcc-internal-format msgid "" "Dummy argument %qs with INTENT(IN) in pointer association context (%s) at %L" msgstr "" -#: fortran/expr.c:6078 +#: fortran/expr.c:6102 #, gcc-internal-format msgid "" "Dummy argument %qs with INTENT(IN) in variable definition context (%s) at %L" msgstr "" -#: fortran/expr.c:6091 +#: fortran/expr.c:6115 #, gcc-internal-format msgid "" "Variable %qs is PROTECTED and cannot appear in a pointer association context " "(%s) at %L" msgstr "" -#: fortran/expr.c:6099 +#: fortran/expr.c:6123 #, gcc-internal-format msgid "" "Variable %qs is PROTECTED and cannot appear in a variable definition context " "(%s) at %L" msgstr "" -#: fortran/expr.c:6111 +#: fortran/expr.c:6135 #, gcc-internal-format msgid "" "Variable %qs cannot appear in a variable definition context (%s) at %L in " "PURE procedure" msgstr "" -#: fortran/expr.c:6170 +#: fortran/expr.c:6194 #, gcc-internal-format msgid "" "%qs at %L associated to vector-indexed target cannot be used in a variable " "definition context (%s)" msgstr "" -#: fortran/expr.c:6175 +#: fortran/expr.c:6199 #, gcc-internal-format msgid "" "%qs at %L associated to expression cannot be used in a variable definition " "context (%s)" msgstr "" -#: fortran/expr.c:6187 +#: fortran/expr.c:6211 #, gcc-internal-format msgid "" "Associate-name %qs cannot appear in a variable definition context (%s) at %L " "because its target at %L cannot, either" msgstr "" -#: fortran/expr.c:6229 +#: fortran/expr.c:6253 #, gcc-internal-format, gfc-internal-format msgid "" "Elements with the same value at %L and %L in vector subscript in a variable " @@ -57470,9 +57486,9 @@ msgstr "" msgid "Illegal id in copy_walk_reduction_arg" msgstr "" -#: fortran/frontend-passes.c:868 fortran/trans-array.c:1229 -#: fortran/trans-array.c:6568 fortran/trans-array.c:8072 -#: fortran/trans-intrinsic.c:7954 +#: fortran/frontend-passes.c:868 fortran/trans-array.c:1269 +#: fortran/trans-array.c:6616 fortran/trans-array.c:8120 +#: fortran/trans-intrinsic.c:7975 #, gcc-internal-format, gfc-internal-format msgid "Creating array temporary at %L" msgstr "" @@ -57674,12 +57690,12 @@ msgstr "" msgid "Second argument of defined assignment at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.c:987 fortran/resolve.c:16640 +#: fortran/interface.c:987 fortran/resolve.c:16644 #, gcc-internal-format, gfc-internal-format msgid "First argument of operator interface at %L must be INTENT(IN)" msgstr "" -#: fortran/interface.c:994 fortran/resolve.c:16658 +#: fortran/interface.c:994 fortran/resolve.c:16662 #, gcc-internal-format, gfc-internal-format msgid "Second argument of operator interface at %L must be INTENT(IN)" msgstr "" @@ -59015,7 +59031,7 @@ msgid "" "defined input/output procedure" msgstr "" -#: fortran/io.c:3397 fortran/resolve.c:14541 +#: fortran/io.c:3397 fortran/resolve.c:14545 #, gcc-internal-format msgid "" "NAMELIST object %qs in namelist %qs at %L with ALLOCATABLE or POINTER " @@ -60561,12 +60577,12 @@ msgstr "" msgid "Unexpected junk after $OMP FLUSH statement at %C" msgstr "" -#: fortran/openmp.c:3013 fortran/openmp.c:6285 +#: fortran/openmp.c:3013 fortran/openmp.c:6299 #, gcc-internal-format, gfc-internal-format msgid "Redefinition of predefined %s !$OMP DECLARE REDUCTION at %L" msgstr "" -#: fortran/openmp.c:3017 fortran/openmp.c:6289 +#: fortran/openmp.c:3017 fortran/openmp.c:6303 #, gcc-internal-format, gfc-internal-format msgid "Redefinition of predefined !$OMP DECLARE REDUCTION at %L" msgstr "" @@ -60820,8 +60836,8 @@ msgstr "" msgid "ORDERED clause parameter is less than COLLAPSE at %L" msgstr "" -#: fortran/openmp.c:4023 fortran/openmp.c:4034 fortran/resolve.c:10276 -#: fortran/resolve.c:11559 +#: fortran/openmp.c:4023 fortran/openmp.c:4034 fortran/resolve.c:10280 +#: fortran/resolve.c:11563 #, gcc-internal-format, gfc-internal-format msgid "IF clause at %L requires a scalar LOGICAL expression" msgstr "" @@ -60874,14 +60890,14 @@ msgstr "" msgid "Variable %qs is not a dummy argument at %L" msgstr "" -#: fortran/openmp.c:4211 fortran/openmp.c:6026 +#: fortran/openmp.c:4211 fortran/openmp.c:6040 #, gcc-internal-format msgid "Object %qs is not a variable at %L" msgstr "" #: fortran/openmp.c:4227 fortran/openmp.c:4238 fortran/openmp.c:4246 #: fortran/openmp.c:4257 fortran/openmp.c:4269 fortran/openmp.c:4284 -#: fortran/openmp.c:6056 +#: fortran/openmp.c:6070 #, gcc-internal-format msgid "Symbol %qs present on multiple clauses at %L" msgstr "" @@ -61224,188 +61240,188 @@ msgid "" "intrinsic type at %L" msgstr "" -#: fortran/openmp.c:5637 +#: fortran/openmp.c:5636 #, gcc-internal-format, gfc-internal-format msgid "%s cannot be a DO WHILE or DO without loop control at %L" msgstr "" -#: fortran/openmp.c:5643 +#: fortran/openmp.c:5642 #, gcc-internal-format, gfc-internal-format msgid "%s cannot be a DO CONCURRENT loop at %L" msgstr "" -#: fortran/openmp.c:5649 +#: fortran/openmp.c:5648 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable must be of type integer at %L" msgstr "" -#: fortran/openmp.c:5653 +#: fortran/openmp.c:5652 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable must not be THREADPRIVATE at %L" msgstr "" -#: fortran/openmp.c:5666 +#: fortran/openmp.c:5665 #, gcc-internal-format, gfc-internal-format msgid "" "%s iteration variable present on clause other than PRIVATE or LASTPRIVATE at " "%L" msgstr "" -#: fortran/openmp.c:5670 +#: fortran/openmp.c:5669 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable present on clause other than LASTPRIVATE at %L" msgstr "" -#: fortran/openmp.c:5674 +#: fortran/openmp.c:5673 #, gcc-internal-format, gfc-internal-format msgid "%s iteration variable present on clause other than LINEAR at %L" msgstr "" -#: fortran/openmp.c:5692 +#: fortran/openmp.c:5691 #, gcc-internal-format, gfc-internal-format msgid "%s collapsed loops don't form rectangular iteration space at %L" msgstr "" -#: fortran/openmp.c:5704 +#: fortran/openmp.c:5703 #, gcc-internal-format, gfc-internal-format msgid "collapsed %s loops not perfectly nested at %L" msgstr "" -#: fortran/openmp.c:5713 fortran/openmp.c:5721 +#: fortran/openmp.c:5712 fortran/openmp.c:5720 #, gcc-internal-format, gfc-internal-format msgid "not enough DO loops for collapsed %s at %L" msgstr "" -#: fortran/openmp.c:5799 fortran/openmp.c:5812 +#: fortran/openmp.c:5798 fortran/openmp.c:5811 #, gcc-internal-format, gfc-internal-format msgid "The %s directive cannot be specified within a %s region at %L" msgstr "" -#: fortran/openmp.c:5831 +#: fortran/openmp.c:5830 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP cannot be a DO WHILE or DO without loop control at %L" msgstr "" -#: fortran/openmp.c:5837 +#: fortran/openmp.c:5836 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP cannot be a DO CONCURRENT loop at %L" msgstr "" -#: fortran/openmp.c:5843 +#: fortran/openmp.c:5842 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP iteration variable must be of type integer at %L" msgstr "" -#: fortran/openmp.c:5859 +#: fortran/openmp.c:5858 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP %s loops don't form rectangular iteration space at %L" msgstr "" -#: fortran/openmp.c:5871 +#: fortran/openmp.c:5870 #, gcc-internal-format, gfc-internal-format msgid "%s !$ACC LOOP loops not perfectly nested at %L" msgstr "" -#: fortran/openmp.c:5881 fortran/openmp.c:5890 +#: fortran/openmp.c:5880 fortran/openmp.c:5889 #, gcc-internal-format, gfc-internal-format msgid "not enough DO loops for %s !$ACC LOOP at %L" msgstr "" -#: fortran/openmp.c:5905 fortran/openmp.c:5912 +#: fortran/openmp.c:5904 fortran/openmp.c:5911 #, gcc-internal-format, gfc-internal-format msgid "!$ACC LOOP %s in PARALLEL region doesn't allow %s arguments at %L" msgstr "" -#: fortran/openmp.c:5926 +#: fortran/openmp.c:5925 #, gcc-internal-format, gfc-internal-format msgid "" "Tiled loop cannot be parallelized across gangs, workers and vectors at the " "same time at %L" msgstr "" -#: fortran/openmp.c:5961 +#: fortran/openmp.c:5960 #, gcc-internal-format, gfc-internal-format msgid "TILE requires constant expression at %L" msgstr "" -#: fortran/openmp.c:6032 +#: fortran/openmp.c:6046 #, gcc-internal-format msgid "PARAMETER object %qs is not allowed at %L" msgstr "" -#: fortran/openmp.c:6039 +#: fortran/openmp.c:6053 #, gcc-internal-format msgid "Array sections: %qs not allowed in !$ACC DECLARE at %L" msgstr "" -#: fortran/openmp.c:6086 +#: fortran/openmp.c:6100 #, gcc-internal-format msgid "" "NAME %qs does not refer to a subroutine or function in !$ACC ROUTINE " "( NAME ) at %L" msgstr "" -#: fortran/openmp.c:6092 +#: fortran/openmp.c:6106 #, gcc-internal-format msgid "NAME %qs invalid in !$ACC ROUTINE ( NAME ) at %L" msgstr "" -#: fortran/openmp.c:6193 +#: fortran/openmp.c:6207 #, gcc-internal-format, gfc-internal-format msgid "OMP TARGET UPDATE at %L requires at least one TO or FROM clause" msgstr "" -#: fortran/openmp.c:6215 +#: fortran/openmp.c:6229 #, gcc-internal-format msgid "!$OMP DECLARE SIMD should refer to containing procedure %qs at %L" msgstr "" -#: fortran/openmp.c:6239 +#: fortran/openmp.c:6253 #, gcc-internal-format, gfc-internal-format msgid "" "Variable other than OMP_PRIV or OMP_ORIG used in INITIALIZER clause of !$OMP " "DECLARE REDUCTION at %L" msgstr "" -#: fortran/openmp.c:6247 +#: fortran/openmp.c:6261 #, gcc-internal-format, gfc-internal-format msgid "" "Variable other than OMP_OUT or OMP_IN used in combiner of !$OMP DECLARE " "REDUCTION at %L" msgstr "" -#: fortran/openmp.c:6276 +#: fortran/openmp.c:6290 #, gcc-internal-format, gfc-internal-format msgid "Invalid operator for !$OMP DECLARE REDUCTION %s at %L" msgstr "" -#: fortran/openmp.c:6298 +#: fortran/openmp.c:6312 #, gcc-internal-format, gfc-internal-format msgid "CHARACTER length in !$OMP DECLARE REDUCTION %s not constant at %L" msgstr "" -#: fortran/openmp.c:6314 +#: fortran/openmp.c:6328 #, gcc-internal-format, gfc-internal-format msgid "" "Subroutine call with alternate returns in combiner of !$OMP DECLARE " "REDUCTION at %L" msgstr "" -#: fortran/openmp.c:6329 +#: fortran/openmp.c:6343 #, gcc-internal-format, gfc-internal-format msgid "" "Subroutine call with alternate returns in INITIALIZER clause of !$OMP " "DECLARE REDUCTION at %L" msgstr "" -#: fortran/openmp.c:6339 +#: fortran/openmp.c:6353 #, gcc-internal-format, gfc-internal-format msgid "" "One of actual subroutine arguments in INITIALIZER clause of !$OMP DECLARE " "REDUCTION must be OMP_PRIV at %L" msgstr "" -#: fortran/openmp.c:6347 +#: fortran/openmp.c:6361 #, gcc-internal-format, gfc-internal-format msgid "" "Missing INITIALIZER clause for !$OMP DECLARE REDUCTION of derived type " @@ -62893,7 +62909,7 @@ msgid "" "Declare it RECURSIVE or use %<-frecursive%>" msgstr "" -#: fortran/resolve.c:1896 fortran/resolve.c:9805 fortran/resolve.c:11488 +#: fortran/resolve.c:1896 fortran/resolve.c:9809 fortran/resolve.c:11492 #, gcc-internal-format, gfc-internal-format msgid "Label %d referenced at %L is never defined" msgstr "" @@ -63015,7 +63031,7 @@ msgstr "" msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?" msgstr "" -#: fortran/resolve.c:2911 fortran/resolve.c:16572 +#: fortran/resolve.c:2911 fortran/resolve.c:16576 #, gcc-internal-format msgid "Function %qs at %L has no IMPLICIT type" msgstr "" @@ -63274,99 +63290,99 @@ msgstr "" msgid "Argument dim at %L must be of INTEGER type" msgstr "" -#: fortran/resolve.c:4726 +#: fortran/resolve.c:4730 #, gcc-internal-format msgid "find_array_spec(): Missing spec" msgstr "" -#: fortran/resolve.c:4737 +#: fortran/resolve.c:4741 #, gcc-internal-format msgid "find_array_spec(): unused as(1)" msgstr "" -#: fortran/resolve.c:4749 +#: fortran/resolve.c:4753 #, gcc-internal-format msgid "find_array_spec(): unused as(2)" msgstr "" -#: fortran/resolve.c:4792 +#: fortran/resolve.c:4796 #, gcc-internal-format, gfc-internal-format msgid "Array index at %L is an array of rank %d" msgstr "" -#: fortran/resolve.c:4890 +#: fortran/resolve.c:4894 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:4897 +#: fortran/resolve.c:4901 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L must be scalar" msgstr "" -#: fortran/resolve.c:4906 +#: fortran/resolve.c:4910 #, gcc-internal-format, gfc-internal-format msgid "Substring start index at %L is less than one" msgstr "" -#: fortran/resolve.c:4919 +#: fortran/resolve.c:4923 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L must be of type INTEGER" msgstr "" -#: fortran/resolve.c:4926 +#: fortran/resolve.c:4930 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L must be scalar" msgstr "" -#: fortran/resolve.c:4936 +#: fortran/resolve.c:4940 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L exceeds the string length" msgstr "" -#: fortran/resolve.c:4946 +#: fortran/resolve.c:4950 #, gcc-internal-format, gfc-internal-format msgid "Substring end index at %L is too large" msgstr "" -#: fortran/resolve.c:5136 +#: fortran/resolve.c:5140 #, gcc-internal-format msgid "resolve_ref(): Bad array reference" msgstr "" -#: fortran/resolve.c:5150 +#: fortran/resolve.c:5154 #, gcc-internal-format, gfc-internal-format msgid "" "Component to the right of a part reference with nonzero rank must not have " "the POINTER attribute at %L" msgstr "" -#: fortran/resolve.c:5160 +#: fortran/resolve.c:5164 #, gcc-internal-format, gfc-internal-format msgid "" "Component to the right of a part reference with nonzero rank must not have " "the ALLOCATABLE attribute at %L" msgstr "" -#: fortran/resolve.c:5180 +#: fortran/resolve.c:5184 #, gcc-internal-format, gfc-internal-format msgid "" "Two or more part references with nonzero rank must not be specified at %L" msgstr "" -#: fortran/resolve.c:5278 +#: fortran/resolve.c:5282 #, gcc-internal-format msgid "expression_rank(): Two array specs" msgstr "" -#: fortran/resolve.c:5360 +#: fortran/resolve.c:5364 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may only be used as actual " "argument" msgstr "" -#: fortran/resolve.c:5370 +#: fortran/resolve.c:5374 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L may only be used as actual argument" msgstr "" @@ -63375,14 +63391,14 @@ msgstr "" #. for all inquiry functions in resolve_function; the reason is #. that the function-name resolution happens too late in that #. function. -#: fortran/resolve.c:5380 +#: fortran/resolve.c:5384 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-type variable %s at %L as actual argument to an inquiry function " "shall be the first argument" msgstr "" -#: fortran/resolve.c:5395 +#: fortran/resolve.c:5399 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank variable %s at %L may only be used as actual argument" msgstr "" @@ -63391,309 +63407,309 @@ msgstr "" #. for all inquiry functions in resolve_function; the reason is #. that the function-name resolution happens too late in that #. function. -#: fortran/resolve.c:5405 +#: fortran/resolve.c:5409 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-rank variable %s at %L as actual argument to an inquiry function " "shall be the first argument" msgstr "" -#: fortran/resolve.c:5416 +#: fortran/resolve.c:5420 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall not have a subobject " "reference" msgstr "" -#: fortran/resolve.c:5425 +#: fortran/resolve.c:5429 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L shall not have a subobject reference" msgstr "" -#: fortran/resolve.c:5440 +#: fortran/resolve.c:5444 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank variable %s at %L shall not have a subobject reference" msgstr "" -#: fortran/resolve.c:5620 +#: fortran/resolve.c:5624 #, gcc-internal-format msgid "" "Variable %qs, used in a specification expression, is referenced at %L before " "the ENTRY statement in which it is a parameter" msgstr "" -#: fortran/resolve.c:5625 +#: fortran/resolve.c:5629 #, gcc-internal-format msgid "" "Variable %qs is used at %L before the ENTRY statement in which it is a " "parameter" msgstr "" -#: fortran/resolve.c:5695 +#: fortran/resolve.c:5699 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic subobject of coindexed object at %L" msgstr "" -#: fortran/resolve.c:5708 +#: fortran/resolve.c:5712 #, gcc-internal-format, gfc-internal-format msgid "Coindexed object with polymorphic allocatable subcomponent at %L" msgstr "" -#: fortran/resolve.c:5952 fortran/resolve.c:6104 +#: fortran/resolve.c:5956 fortran/resolve.c:6108 #, gcc-internal-format, gfc-internal-format msgid "Error in typebound call at %L" msgstr "" -#: fortran/resolve.c:6068 +#: fortran/resolve.c:6072 #, gcc-internal-format, gfc-internal-format msgid "Passed-object at %L must be scalar" msgstr "" -#: fortran/resolve.c:6075 +#: fortran/resolve.c:6079 #, gcc-internal-format msgid "" "Base object for procedure-pointer component call at %L is of ABSTRACT type " "%qs" msgstr "" -#: fortran/resolve.c:6114 +#: fortran/resolve.c:6118 #, gcc-internal-format msgid "Base object for type-bound procedure call at %L is of ABSTRACT type %qs" msgstr "" -#: fortran/resolve.c:6123 +#: fortran/resolve.c:6127 #, gcc-internal-format, gfc-internal-format msgid "Base object for NOPASS type-bound procedure call at %L must be scalar" msgstr "" #. Nothing matching found! -#: fortran/resolve.c:6311 +#: fortran/resolve.c:6315 #, gcc-internal-format msgid "" "Found no matching specific binding for the call to the GENERIC %qs at %L" msgstr "" -#: fortran/resolve.c:6345 +#: fortran/resolve.c:6349 #, gcc-internal-format msgid "%qs at %L should be a SUBROUTINE" msgstr "" -#: fortran/resolve.c:6397 +#: fortran/resolve.c:6401 #, gcc-internal-format msgid "%qs at %L should be a FUNCTION" msgstr "" -#: fortran/resolve.c:6947 +#: fortran/resolve.c:6951 #, gcc-internal-format msgid "gfc_resolve_expr(): Bad expression type" msgstr "" -#: fortran/resolve.c:6973 +#: fortran/resolve.c:6977 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be a scalar" msgstr "" -#: fortran/resolve.c:6983 +#: fortran/resolve.c:6987 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be integer" msgstr "" -#: fortran/resolve.c:6987 fortran/resolve.c:6994 +#: fortran/resolve.c:6991 fortran/resolve.c:6998 #, gcc-internal-format, gfc-internal-format msgid "%s at %L must be INTEGER" msgstr "" -#: fortran/resolve.c:7036 +#: fortran/resolve.c:7040 #, gcc-internal-format, gfc-internal-format msgid "Step expression in DO loop at %L cannot be zero" msgstr "" -#: fortran/resolve.c:7072 +#: fortran/resolve.c:7076 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L will be executed zero times" msgstr "" -#: fortran/resolve.c:7089 +#: fortran/resolve.c:7093 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L is undefined as it overflows" msgstr "" -#: fortran/resolve.c:7095 +#: fortran/resolve.c:7099 #, gcc-internal-format, gfc-internal-format msgid "DO loop at %L is undefined as it underflows" msgstr "" -#: fortran/resolve.c:7156 +#: fortran/resolve.c:7160 #, gcc-internal-format, gfc-internal-format msgid "FORALL index-name at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:7161 +#: fortran/resolve.c:7165 #, gcc-internal-format, gfc-internal-format msgid "FORALL start expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:7168 +#: fortran/resolve.c:7172 #, gcc-internal-format, gfc-internal-format msgid "FORALL end expression at %L must be a scalar INTEGER" msgstr "" -#: fortran/resolve.c:7176 +#: fortran/resolve.c:7180 #, gcc-internal-format, gfc-internal-format msgid "FORALL stride expression at %L must be a scalar %s" msgstr "" -#: fortran/resolve.c:7181 +#: fortran/resolve.c:7185 #, gcc-internal-format, gfc-internal-format msgid "FORALL stride expression at %L cannot be zero" msgstr "" -#: fortran/resolve.c:7194 +#: fortran/resolve.c:7198 #, gcc-internal-format msgid "FORALL index %qs may not appear in triplet specification at %L" msgstr "" -#: fortran/resolve.c:7298 fortran/resolve.c:7591 +#: fortran/resolve.c:7302 fortran/resolve.c:7595 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER" msgstr "" -#: fortran/resolve.c:7306 fortran/resolve.c:7555 +#: fortran/resolve.c:7310 fortran/resolve.c:7559 #, gcc-internal-format, gfc-internal-format msgid "Coindexed allocatable object at %L" msgstr "" -#: fortran/resolve.c:7412 +#: fortran/resolve.c:7416 #, gcc-internal-format, gfc-internal-format msgid "" "Source-expr at %L must be scalar or have the same rank as the allocate-" "object at %L" msgstr "" -#: fortran/resolve.c:7443 +#: fortran/resolve.c:7447 #, gcc-internal-format, gfc-internal-format msgid "Source-expr at %L and allocate-object at %L must have the same shape" msgstr "" -#: fortran/resolve.c:7602 +#: fortran/resolve.c:7606 #, gcc-internal-format, gfc-internal-format msgid "Type of entity at %L is type incompatible with source-expr at %L" msgstr "" -#: fortran/resolve.c:7614 +#: fortran/resolve.c:7618 #, gcc-internal-format, gfc-internal-format msgid "" "The allocate-object at %L and the source-expr at %L shall have the same kind " "type parameter" msgstr "" -#: fortran/resolve.c:7628 +#: fortran/resolve.c:7632 #, gcc-internal-format, gfc-internal-format msgid "" "The source-expr at %L shall neither be of type LOCK_TYPE nor have a " "LOCK_TYPE component if allocate-object at %L is a coarray" msgstr "" -#: fortran/resolve.c:7643 +#: fortran/resolve.c:7647 #, gcc-internal-format, gfc-internal-format msgid "" "The source-expr at %L shall neither be of type EVENT_TYPE nor have a " "EVENT_TYPE component if allocate-object at %L is a coarray" msgstr "" -#: fortran/resolve.c:7656 +#: fortran/resolve.c:7660 #, gcc-internal-format, gfc-internal-format msgid "" "Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr" msgstr "" -#: fortran/resolve.c:7674 +#: fortran/resolve.c:7678 #, gcc-internal-format, gfc-internal-format msgid "" "Allocating %s at %L with type-spec requires the same character-length " "parameter as in the declaration" msgstr "" -#: fortran/resolve.c:7755 fortran/resolve.c:7770 +#: fortran/resolve.c:7759 fortran/resolve.c:7774 #, gcc-internal-format, gfc-internal-format msgid "Array specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:7762 +#: fortran/resolve.c:7766 #, gcc-internal-format, gfc-internal-format msgid "" "Array specification or array-valued SOURCE= expression required in ALLOCATE " "statement at %L" msgstr "" -#: fortran/resolve.c:7787 +#: fortran/resolve.c:7791 #, gcc-internal-format, gfc-internal-format msgid "Coarray specification required in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:7796 fortran/resolve.c:7825 fortran/resolve.c:7853 +#: fortran/resolve.c:7800 fortran/resolve.c:7829 fortran/resolve.c:7857 #, gcc-internal-format, gfc-internal-format msgid "Bad array specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:7802 +#: fortran/resolve.c:7806 #, gcc-internal-format, gfc-internal-format msgid "Upper cobound is less than lower cobound at %L" msgstr "" -#: fortran/resolve.c:7814 +#: fortran/resolve.c:7818 #, gcc-internal-format, gfc-internal-format msgid "Upper cobound is less than lower cobound of 1 at %L" msgstr "" -#: fortran/resolve.c:7872 +#: fortran/resolve.c:7876 #, gcc-internal-format msgid "" "%qs must not appear in the array specification at %L in the same ALLOCATE " "statement where it is itself allocated" msgstr "" -#: fortran/resolve.c:7887 +#: fortran/resolve.c:7891 #, gcc-internal-format, gfc-internal-format msgid "Expected '*' in coindex specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:7898 +#: fortran/resolve.c:7902 #, gcc-internal-format, gfc-internal-format msgid "Bad coarray specification in ALLOCATE statement at %L" msgstr "" -#: fortran/resolve.c:7930 +#: fortran/resolve.c:7934 #, gcc-internal-format, gfc-internal-format msgid "Stat-variable at %L must be a scalar INTEGER variable" msgstr "" -#: fortran/resolve.c:7953 +#: fortran/resolve.c:7957 #, gcc-internal-format, gfc-internal-format msgid "Stat-variable at %L shall not be %sd within the same %s statement" msgstr "" -#: fortran/resolve.c:7964 +#: fortran/resolve.c:7968 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG at %L is useless without a STAT tag" msgstr "" -#: fortran/resolve.c:7980 +#: fortran/resolve.c:7984 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG variable at %L shall be a scalar default CHARACTER variable" msgstr "" -#: fortran/resolve.c:8003 +#: fortran/resolve.c:8007 #, gcc-internal-format, gfc-internal-format msgid "Errmsg-variable at %L shall not be %sd within the same %s statement" msgstr "" -#: fortran/resolve.c:8033 +#: fortran/resolve.c:8037 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L also appears at %L" msgstr "" -#: fortran/resolve.c:8039 fortran/resolve.c:8045 +#: fortran/resolve.c:8043 fortran/resolve.c:8049 #, gcc-internal-format, gfc-internal-format msgid "Allocate-object at %L is subobject of object at %L" msgstr "" @@ -63702,260 +63718,260 @@ msgstr "" #. element in the list. Either way, we must #. issue an error and get the next case from P. #. FIXME: Sort P and Q by line number. -#: fortran/resolve.c:8273 +#: fortran/resolve.c:8277 #, gcc-internal-format, gfc-internal-format msgid "CASE label at %L overlaps with CASE label at %L" msgstr "" -#: fortran/resolve.c:8324 +#: fortran/resolve.c:8328 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be of type %s" msgstr "" -#: fortran/resolve.c:8335 +#: fortran/resolve.c:8339 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be of kind %d" msgstr "" -#: fortran/resolve.c:8348 +#: fortran/resolve.c:8352 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L must be scalar" msgstr "" -#: fortran/resolve.c:8394 +#: fortran/resolve.c:8398 #, gcc-internal-format, gfc-internal-format msgid "" "Selection expression in computed GOTO statement at %L must be a scalar " "integer expression" msgstr "" -#: fortran/resolve.c:8413 +#: fortran/resolve.c:8417 #, gcc-internal-format, gfc-internal-format msgid "Argument of SELECT statement at %L cannot be %s" msgstr "" -#: fortran/resolve.c:8423 +#: fortran/resolve.c:8427 #, gcc-internal-format, gfc-internal-format msgid "Argument of SELECT statement at %L must be a scalar expression" msgstr "" -#: fortran/resolve.c:8441 fortran/resolve.c:8449 +#: fortran/resolve.c:8445 fortran/resolve.c:8453 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE statement at %L is not in the range of %s" msgstr "" -#: fortran/resolve.c:8511 fortran/resolve.c:9118 +#: fortran/resolve.c:8515 fortran/resolve.c:9122 #, gcc-internal-format, gfc-internal-format msgid "" "The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L" msgstr "" -#: fortran/resolve.c:8537 +#: fortran/resolve.c:8541 #, gcc-internal-format, gfc-internal-format msgid "Logical range in CASE statement at %L is not allowed" msgstr "" -#: fortran/resolve.c:8549 +#: fortran/resolve.c:8553 #, gcc-internal-format, gfc-internal-format msgid "Constant logical value in CASE statement is repeated at %L" msgstr "" -#: fortran/resolve.c:8564 +#: fortran/resolve.c:8568 #, gcc-internal-format, gfc-internal-format msgid "Range specification at %L can never be matched" msgstr "" -#: fortran/resolve.c:8667 +#: fortran/resolve.c:8671 #, gcc-internal-format, gfc-internal-format msgid "Logical SELECT CASE block at %L has more that two cases" msgstr "" -#: fortran/resolve.c:8727 +#: fortran/resolve.c:8731 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L cannot be NULL()" msgstr "" -#: fortran/resolve.c:8732 +#: fortran/resolve.c:8736 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L has no type" msgstr "" -#: fortran/resolve.c:8754 +#: fortran/resolve.c:8758 #, gcc-internal-format msgid "Associate-name %qs at %L is used as array" msgstr "" -#: fortran/resolve.c:8765 +#: fortran/resolve.c:8769 #, gcc-internal-format, gfc-internal-format msgid "CLASS selector at %L needs a temporary which is not yet implemented" msgstr "" -#: fortran/resolve.c:8993 +#: fortran/resolve.c:8997 #, gcc-internal-format, gfc-internal-format msgid "Selector shall be polymorphic in SELECT TYPE statement at %L" msgstr "" -#: fortran/resolve.c:9028 fortran/resolve.c:9040 +#: fortran/resolve.c:9032 fortran/resolve.c:9044 #, gcc-internal-format, gfc-internal-format msgid "Selector at %L must not be coindexed" msgstr "" -#: fortran/resolve.c:9069 +#: fortran/resolve.c:9073 #, gcc-internal-format, gfc-internal-format msgid "TYPE IS at %L overlaps with TYPE IS at %L" msgstr "" -#: fortran/resolve.c:9081 +#: fortran/resolve.c:9085 #, gcc-internal-format msgid "Derived type %qs at %L must be extensible" msgstr "" -#: fortran/resolve.c:9093 +#: fortran/resolve.c:9097 #, gcc-internal-format msgid "Derived type %qs at %L must be an extension of %qs" msgstr "" -#: fortran/resolve.c:9096 +#: fortran/resolve.c:9100 #, gcc-internal-format msgid "Unexpected intrinsic type %qs at %L" msgstr "" -#: fortran/resolve.c:9106 +#: fortran/resolve.c:9110 #, gcc-internal-format, gfc-internal-format msgid "" "The type-spec at %L shall specify that each length type parameter is assumed" msgstr "" -#: fortran/resolve.c:9353 +#: fortran/resolve.c:9357 #, gcc-internal-format, gfc-internal-format msgid "Double CLASS IS block in SELECT TYPE statement at %L" msgstr "" -#: fortran/resolve.c:9448 +#: fortran/resolve.c:9452 #, gcc-internal-format, gfc-internal-format msgid "Invalid context for NULL () intrinsic at %L" msgstr "" -#: fortran/resolve.c:9500 +#: fortran/resolve.c:9504 #, gcc-internal-format, gfc-internal-format msgid "DTIO %s procedure at %L must be recursive" msgstr "" -#: fortran/resolve.c:9510 +#: fortran/resolve.c:9514 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot be polymorphic unless it is processed by " "a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9523 +#: fortran/resolve.c:9527 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have POINTER components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9532 +#: fortran/resolve.c:9536 #, gcc-internal-format, gfc-internal-format msgid "Data transfer element at %L cannot have procedure pointer components" msgstr "" -#: fortran/resolve.c:9539 +#: fortran/resolve.c:9543 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have ALLOCATABLE components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9550 +#: fortran/resolve.c:9554 #, gcc-internal-format, gfc-internal-format msgid "Data transfer element at %L cannot have PRIVATE components" msgstr "" -#: fortran/resolve.c:9556 +#: fortran/resolve.c:9560 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot have PRIVATE components unless it is " "processed by a defined input/output procedure" msgstr "" -#: fortran/resolve.c:9571 +#: fortran/resolve.c:9575 #, gcc-internal-format, gfc-internal-format msgid "" "Data transfer element at %L cannot be a full reference to an assumed-size " "array" msgstr "" -#: fortran/resolve.c:9631 +#: fortran/resolve.c:9635 #, gcc-internal-format, gfc-internal-format msgid "Lock variable at %L must be a scalar of type LOCK_TYPE" msgstr "" -#: fortran/resolve.c:9641 +#: fortran/resolve.c:9645 #, gcc-internal-format, gfc-internal-format msgid "Event variable at %L must be a scalar of type EVENT_TYPE" msgstr "" -#: fortran/resolve.c:9645 +#: fortran/resolve.c:9649 #, gcc-internal-format, gfc-internal-format msgid "Event variable argument at %L must be a coarray or coindexed" msgstr "" -#: fortran/resolve.c:9648 +#: fortran/resolve.c:9652 #, gcc-internal-format, gfc-internal-format msgid "Event variable argument at %L must be a coarray but not coindexed" msgstr "" -#: fortran/resolve.c:9655 fortran/resolve.c:9777 +#: fortran/resolve.c:9659 fortran/resolve.c:9781 #, gcc-internal-format, gfc-internal-format msgid "STAT= argument at %L must be a scalar INTEGER variable" msgstr "" -#: fortran/resolve.c:9667 fortran/resolve.c:9785 +#: fortran/resolve.c:9671 fortran/resolve.c:9789 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable" msgstr "" -#: fortran/resolve.c:9679 +#: fortran/resolve.c:9683 #, gcc-internal-format, gfc-internal-format msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable" msgstr "" -#: fortran/resolve.c:9692 +#: fortran/resolve.c:9696 #, gcc-internal-format, gfc-internal-format msgid "UNTIL_COUNT= argument at %L must be a scalar INTEGER expression" msgstr "" -#: fortran/resolve.c:9753 +#: fortran/resolve.c:9757 #, gcc-internal-format, gfc-internal-format msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression" msgstr "" -#: fortran/resolve.c:9757 fortran/resolve.c:9767 +#: fortran/resolve.c:9761 fortran/resolve.c:9771 #, gcc-internal-format, gfc-internal-format msgid "Imageset argument at %L must between 1 and num_images()" msgstr "" -#: fortran/resolve.c:9812 +#: fortran/resolve.c:9816 #, gcc-internal-format, gfc-internal-format msgid "" "Statement at %L is not a valid branch target statement for the branch " "statement at %L" msgstr "" -#: fortran/resolve.c:9822 +#: fortran/resolve.c:9826 #, gcc-internal-format, gfc-internal-format msgid "Branch at %L may result in an infinite loop" msgstr "" #. Note: A label at END CRITICAL does not leave the CRITICAL #. construct as END CRITICAL is still part of it. -#: fortran/resolve.c:9839 fortran/resolve.c:9862 +#: fortran/resolve.c:9843 fortran/resolve.c:9866 #, gcc-internal-format, gfc-internal-format msgid "GOTO statement at %L leaves CRITICAL construct for label at %L" msgstr "" -#: fortran/resolve.c:9843 fortran/resolve.c:9868 +#: fortran/resolve.c:9847 fortran/resolve.c:9872 #, gcc-internal-format, gfc-internal-format msgid "GOTO statement at %L leaves DO CONCURRENT construct for label at %L" msgstr "" @@ -63963,124 +63979,124 @@ msgstr "" #. The label is not in an enclosing block, so illegal. This was #. allowed in Fortran 66, so we allow it as extension. No #. further checks are necessary in this case. -#: fortran/resolve.c:9883 +#: fortran/resolve.c:9887 #, gcc-internal-format, gfc-internal-format msgid "Label at %L is not in the same block as the GOTO statement at %L" msgstr "" -#: fortran/resolve.c:9955 +#: fortran/resolve.c:9959 #, gcc-internal-format, gfc-internal-format msgid "WHERE mask at %L has inconsistent shape" msgstr "" -#: fortran/resolve.c:9971 +#: fortran/resolve.c:9975 #, gcc-internal-format, gfc-internal-format msgid "WHERE assignment target at %L has inconsistent shape" msgstr "" -#: fortran/resolve.c:9979 fortran/resolve.c:10066 +#: fortran/resolve.c:9983 fortran/resolve.c:10070 #, gcc-internal-format, gfc-internal-format msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L" msgstr "" -#: fortran/resolve.c:9989 fortran/resolve.c:10076 +#: fortran/resolve.c:9993 fortran/resolve.c:10080 #, gcc-internal-format, gfc-internal-format msgid "Unsupported statement inside WHERE at %L" msgstr "" -#: fortran/resolve.c:10020 +#: fortran/resolve.c:10024 #, gcc-internal-format, gfc-internal-format msgid "Assignment to a FORALL index variable at %L" msgstr "" -#: fortran/resolve.c:10029 +#: fortran/resolve.c:10033 #, gcc-internal-format msgid "" "The FORALL with index %qs is not used on the left side of the assignment at " "%L and so might cause multiple assignment to this object" msgstr "" -#: fortran/resolve.c:10176 +#: fortran/resolve.c:10180 #, gcc-internal-format, gfc-internal-format msgid "FORALL construct at %L" msgstr "" -#: fortran/resolve.c:10197 +#: fortran/resolve.c:10201 #, gcc-internal-format, gfc-internal-format msgid "FORALL index-name at %L must be a scalar variable of type integer" msgstr "" -#: fortran/resolve.c:10207 +#: fortran/resolve.c:10211 #, gcc-internal-format, gfc-internal-format msgid "An outer FORALL construct already has an index with this name %L" msgstr "" -#: fortran/resolve.c:10284 +#: fortran/resolve.c:10288 #, gcc-internal-format, gfc-internal-format msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array" msgstr "" -#: fortran/resolve.c:10386 +#: fortran/resolve.c:10390 #, gcc-internal-format msgid "gfc_resolve_blocks(): Bad block type" msgstr "" -#: fortran/resolve.c:10499 +#: fortran/resolve.c:10503 #, gcc-internal-format, gfc-internal-format msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L" msgstr "" -#: fortran/resolve.c:10531 +#: fortran/resolve.c:10535 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed expression at %L is assigned to a derived type variable with a " "POINTER component in a PURE procedure" msgstr "" -#: fortran/resolve.c:10536 +#: fortran/resolve.c:10540 #, gcc-internal-format, gfc-internal-format msgid "" "The impure variable at %L is assigned to a derived type variable with a " "POINTER component in a PURE procedure (12.6)" msgstr "" -#: fortran/resolve.c:10546 +#: fortran/resolve.c:10550 #, gcc-internal-format, gfc-internal-format msgid "Assignment to coindexed variable at %L in a PURE procedure" msgstr "" -#: fortran/resolve.c:10578 +#: fortran/resolve.c:10582 #, gcc-internal-format, gfc-internal-format msgid "Assignment to polymorphic coarray at %L is not permitted" msgstr "" -#: fortran/resolve.c:10582 +#: fortran/resolve.c:10586 #, gcc-internal-format, gfc-internal-format msgid "Assignment to an allocatable polymorphic variable at %L" msgstr "" -#: fortran/resolve.c:10587 +#: fortran/resolve.c:10591 #, gcc-internal-format msgid "" "Assignment to an allocatable polymorphic variable at %L requires %<-frealloc-" "lhs%>" msgstr "" -#: fortran/resolve.c:10594 +#: fortran/resolve.c:10598 #, gcc-internal-format, gfc-internal-format msgid "" "Nonallocatable variable must not be polymorphic in intrinsic assignment at " "%L - check that there is a matching specific subroutine for '=' operator" msgstr "" -#: fortran/resolve.c:10605 +#: fortran/resolve.c:10609 #, gcc-internal-format, gfc-internal-format msgid "" "Coindexed variable must not have an allocatable ultimate component in " "assignment at %L" msgstr "" -#: fortran/resolve.c:10923 +#: fortran/resolve.c:10927 #, gcc-internal-format, gfc-internal-format msgid "" "TODO: type-bound defined assignment(s) at %L not done because multiple part " @@ -64089,72 +64105,72 @@ msgstr "" #. Even if standard does not support this feature, continue to build #. the two statements to avoid upsetting frontend_passes.c. -#: fortran/resolve.c:11165 +#: fortran/resolve.c:11169 #, gcc-internal-format, gfc-internal-format msgid "Pointer procedure assignment at %L" msgstr "" -#: fortran/resolve.c:11177 +#: fortran/resolve.c:11181 #, gcc-internal-format, gfc-internal-format msgid "" "The function result on the lhs of the assignment at %L must have the pointer " "attribute." msgstr "" -#: fortran/resolve.c:11420 +#: fortran/resolve.c:11424 #, gcc-internal-format, gfc-internal-format msgid "ASSIGNED GOTO statement at %L requires an INTEGER variable" msgstr "" -#: fortran/resolve.c:11423 +#: fortran/resolve.c:11427 #, gcc-internal-format msgid "Variable %qs has not been assigned a target label at %L" msgstr "" -#: fortran/resolve.c:11434 +#: fortran/resolve.c:11438 #, gcc-internal-format, gfc-internal-format msgid "" "Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier" msgstr "" -#: fortran/resolve.c:11496 +#: fortran/resolve.c:11500 #, gcc-internal-format, gfc-internal-format msgid "ASSIGN statement at %L requires a scalar default INTEGER variable" msgstr "" -#: fortran/resolve.c:11542 +#: fortran/resolve.c:11546 #, gcc-internal-format, gfc-internal-format msgid "Invalid NULL at %L" msgstr "" -#: fortran/resolve.c:11546 +#: fortran/resolve.c:11550 #, gcc-internal-format, gfc-internal-format msgid "" "Arithmetic IF statement at %L requires a scalar REAL or INTEGER expression" msgstr "" -#: fortran/resolve.c:11603 +#: fortran/resolve.c:11607 #, gcc-internal-format msgid "gfc_resolve_code(): No expression on DO WHILE" msgstr "" -#: fortran/resolve.c:11608 +#: fortran/resolve.c:11612 #, gcc-internal-format, gfc-internal-format msgid "" "Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.c:11692 +#: fortran/resolve.c:11696 #, gcc-internal-format, gfc-internal-format msgid "FORALL mask clause at %L requires a scalar LOGICAL expression" msgstr "" -#: fortran/resolve.c:11771 +#: fortran/resolve.c:11775 #, gcc-internal-format msgid "gfc_resolve_code(): Bad statement code" msgstr "" -#: fortran/resolve.c:11881 +#: fortran/resolve.c:11885 #, gcc-internal-format msgid "" "Variable %qs with binding label %qs at %L uses the same global identifier as " @@ -64163,7 +64179,7 @@ msgstr "" #. This can only happen if the variable is defined in a module - if it #. isn't the same module, reject it. -#: fortran/resolve.c:11895 +#: fortran/resolve.c:11899 #, gcc-internal-format msgid "" "Variable %qs from module %qs with binding label %qs at %L uses the same " @@ -64173,63 +64189,63 @@ msgstr "" #. Print an error if the procedure is defined multiple times; we have to #. exclude references to the same procedure via module association or #. multiple checks for the same procedure. -#: fortran/resolve.c:11914 +#: fortran/resolve.c:11918 #, gcc-internal-format msgid "" "Procedure %qs with binding label %qs at %L uses the same global identifier " "as entity at %L" msgstr "" -#: fortran/resolve.c:11999 +#: fortran/resolve.c:12003 #, gcc-internal-format, gfc-internal-format msgid "String length at %L is too large" msgstr "" -#: fortran/resolve.c:12228 +#: fortran/resolve.c:12232 #, gcc-internal-format msgid "Allocatable array %qs at %L must have a deferred shape or assumed rank" msgstr "" -#: fortran/resolve.c:12232 +#: fortran/resolve.c:12236 #, gcc-internal-format msgid "Scalar object %qs at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:12240 +#: fortran/resolve.c:12244 #, gcc-internal-format msgid "Array pointer %qs at %L must have a deferred shape or assumed rank" msgstr "" -#: fortran/resolve.c:12250 +#: fortran/resolve.c:12254 #, gcc-internal-format msgid "Array %qs at %L cannot have a deferred shape" msgstr "" -#: fortran/resolve.c:12265 +#: fortran/resolve.c:12269 #, gcc-internal-format msgid "Type %qs of CLASS variable %qs at %L is not extensible" msgstr "" -#: fortran/resolve.c:12277 +#: fortran/resolve.c:12281 #, gcc-internal-format msgid "CLASS variable %qs at %L must be dummy, allocatable or pointer" msgstr "" -#: fortran/resolve.c:12309 +#: fortran/resolve.c:12313 #, gcc-internal-format msgid "" "The type %qs cannot be host associated at %L because it is blocked by an " "incompatible object of the same name declared at %L" msgstr "" -#: fortran/resolve.c:12331 +#: fortran/resolve.c:12335 #, gcc-internal-format msgid "" "Implied SAVE for module variable %qs at %L, needed due to the default " "initialization" msgstr "" -#: fortran/resolve.c:12358 +#: fortran/resolve.c:12362 #, gcc-internal-format msgid "" "Entity %qs at %L has a deferred type parameter and requires either the " @@ -64238,1009 +64254,1009 @@ msgstr "" #. F08:C541. The shape of an array defined in a main program or module #. * needs to be constant. -#: fortran/resolve.c:12394 +#: fortran/resolve.c:12398 #, gcc-internal-format msgid "The module or main program array %qs at %L must have constant shape" msgstr "" -#: fortran/resolve.c:12419 +#: fortran/resolve.c:12423 #, gcc-internal-format, gfc-internal-format msgid "" "Entity with assumed character length at %L must be a dummy argument or a " "PARAMETER" msgstr "" -#: fortran/resolve.c:12440 +#: fortran/resolve.c:12444 #, gcc-internal-format msgid "%qs at %L must have constant character length in this context" msgstr "" -#: fortran/resolve.c:12447 +#: fortran/resolve.c:12451 #, gcc-internal-format msgid "COMMON variable %qs at %L must have constant character length" msgstr "" -#: fortran/resolve.c:12494 +#: fortran/resolve.c:12498 #, gcc-internal-format msgid "Allocatable %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12497 +#: fortran/resolve.c:12501 #, gcc-internal-format msgid "External %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12501 +#: fortran/resolve.c:12505 #, gcc-internal-format msgid "Dummy %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12504 +#: fortran/resolve.c:12508 #, gcc-internal-format msgid "Intrinsic %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12507 +#: fortran/resolve.c:12511 #, gcc-internal-format msgid "Function result %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12510 +#: fortran/resolve.c:12514 #, gcc-internal-format msgid "Automatic array %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12552 +#: fortran/resolve.c:12556 #, gcc-internal-format, gfc-internal-format msgid "%s at %L" msgstr "" -#: fortran/resolve.c:12579 +#: fortran/resolve.c:12583 #, gcc-internal-format msgid "Character-valued statement function %qs at %L must have constant length" msgstr "" -#: fortran/resolve.c:12601 +#: fortran/resolve.c:12605 #, gcc-internal-format msgid "" "%qs is of a PRIVATE type and cannot be a dummy argument of %qs, which is " "PUBLIC at %L" msgstr "" -#: fortran/resolve.c:12623 +#: fortran/resolve.c:12627 #, gcc-internal-format msgid "" "Procedure %qs in PUBLIC interface %qs at %L takes dummy arguments of %qs " "which is PRIVATE" msgstr "" -#: fortran/resolve.c:12641 +#: fortran/resolve.c:12645 #, gcc-internal-format msgid "Function %qs at %L cannot have an initializer" msgstr "" -#: fortran/resolve.c:12653 +#: fortran/resolve.c:12657 #, gcc-internal-format msgid "External object %qs at %L may not have an initializer" msgstr "" -#: fortran/resolve.c:12662 +#: fortran/resolve.c:12666 #, gcc-internal-format msgid "ELEMENTAL function %qs at %L must have a scalar result" msgstr "" -#: fortran/resolve.c:12672 +#: fortran/resolve.c:12676 #, gcc-internal-format msgid "" "Statement function %qs at %L may not have pointer or allocatable attribute" msgstr "" -#: fortran/resolve.c:12691 +#: fortran/resolve.c:12695 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be array-valued" msgstr "" -#: fortran/resolve.c:12695 +#: fortran/resolve.c:12699 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be pointer-valued" msgstr "" -#: fortran/resolve.c:12699 +#: fortran/resolve.c:12703 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be pure" msgstr "" -#: fortran/resolve.c:12703 +#: fortran/resolve.c:12707 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L cannot be recursive" msgstr "" -#: fortran/resolve.c:12716 +#: fortran/resolve.c:12720 #, gcc-internal-format msgid "CHARACTER(*) function %qs at %L" msgstr "" -#: fortran/resolve.c:12725 +#: fortran/resolve.c:12729 #, gcc-internal-format msgid "Procedure pointer %qs at %L shall not be elemental" msgstr "" -#: fortran/resolve.c:12731 +#: fortran/resolve.c:12735 #, gcc-internal-format msgid "Dummy procedure %qs at %L shall not be elemental" msgstr "" -#: fortran/resolve.c:12743 +#: fortran/resolve.c:12747 #, gcc-internal-format msgid "" "Function result variable %qs at %L of elemental function %qs shall not have " "an ALLOCATABLE or POINTER attribute" msgstr "" -#: fortran/resolve.c:12800 +#: fortran/resolve.c:12804 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with SAVE attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:12806 +#: fortran/resolve.c:12810 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with INTENT attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:12812 +#: fortran/resolve.c:12816 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with RESULT attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:12820 +#: fortran/resolve.c:12824 #, gcc-internal-format msgid "EXTERNAL attribute conflicts with FUNCTION attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:12826 +#: fortran/resolve.c:12830 #, gcc-internal-format msgid "Procedure pointer result %qs at %L is missing the pointer attribute" msgstr "" -#: fortran/resolve.c:12869 +#: fortran/resolve.c:12873 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in ELEMENTAL attribute between MODULE PROCEDURE at %L and its " "interface in %s" msgstr "" -#: fortran/resolve.c:12877 +#: fortran/resolve.c:12881 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in PURE attribute between MODULE PROCEDURE at %L and its interface " "in %s" msgstr "" -#: fortran/resolve.c:12885 +#: fortran/resolve.c:12889 #, gcc-internal-format, gfc-internal-format msgid "" "Mismatch in RECURSIVE attribute between MODULE PROCEDURE at %L and its " "interface in %s" msgstr "" -#: fortran/resolve.c:12894 +#: fortran/resolve.c:12898 #, gcc-internal-format msgid "" "%s between the MODULE PROCEDURE declaration in MODULE %qs and the " "declaration at %L in (SUB)MODULE %qs" msgstr "" -#: fortran/resolve.c:12978 +#: fortran/resolve.c:12982 #, gcc-internal-format msgid "FINAL procedure %qs at %L is not a SUBROUTINE" msgstr "" -#: fortran/resolve.c:12987 +#: fortran/resolve.c:12991 #, gcc-internal-format, gfc-internal-format msgid "FINAL procedure at %L must have exactly one argument" msgstr "" -#: fortran/resolve.c:12996 +#: fortran/resolve.c:13000 #, gcc-internal-format msgid "Argument of FINAL procedure at %L must be of type %qs" msgstr "" -#: fortran/resolve.c:13004 +#: fortran/resolve.c:13008 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be a POINTER" msgstr "" -#: fortran/resolve.c:13010 +#: fortran/resolve.c:13014 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:13016 +#: fortran/resolve.c:13020 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be OPTIONAL" msgstr "" -#: fortran/resolve.c:13024 +#: fortran/resolve.c:13028 #, gcc-internal-format, gfc-internal-format msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)" msgstr "" -#: fortran/resolve.c:13033 +#: fortran/resolve.c:13037 #, gcc-internal-format, gfc-internal-format msgid "Non-scalar FINAL procedure at %L should have assumed shape argument" msgstr "" -#: fortran/resolve.c:13055 +#: fortran/resolve.c:13059 #, gcc-internal-format msgid "FINAL procedure %qs declared at %L has the same rank (%d) as %qs" msgstr "" -#: fortran/resolve.c:13092 +#: fortran/resolve.c:13096 #, gcc-internal-format msgid "" "Only array FINAL procedures declared for derived type %qs defined at %L, " "suggest also scalar one" msgstr "" -#: fortran/resolve.c:13132 +#: fortran/resolve.c:13136 #, gcc-internal-format msgid "%qs and %qs cannot be mixed FUNCTION/SUBROUTINE for GENERIC %qs at %L" msgstr "" -#: fortran/resolve.c:13168 +#: fortran/resolve.c:13172 #, gcc-internal-format msgid "%qs and %qs for GENERIC %qs at %L are ambiguous" msgstr "" -#: fortran/resolve.c:13227 +#: fortran/resolve.c:13231 #, gcc-internal-format msgid "Undefined specific binding %qs as target of GENERIC %qs at %L" msgstr "" -#: fortran/resolve.c:13239 +#: fortran/resolve.c:13243 #, gcc-internal-format msgid "GENERIC %qs at %L must target a specific binding, %qs is GENERIC, too" msgstr "" -#: fortran/resolve.c:13267 +#: fortran/resolve.c:13271 #, gcc-internal-format msgid "GENERIC %qs at %L cannot overwrite specific binding with the same name" msgstr "" -#: fortran/resolve.c:13323 +#: fortran/resolve.c:13327 #, gcc-internal-format, gfc-internal-format msgid "Type-bound operator at %L cannot be NOPASS" msgstr "" -#: fortran/resolve.c:13515 +#: fortran/resolve.c:13519 #, gcc-internal-format msgid "" "%qs must be a module procedure or an external procedure with an explicit " "interface at %L" msgstr "" -#: fortran/resolve.c:13557 +#: fortran/resolve.c:13561 #, gcc-internal-format msgid "Procedure %qs with PASS(%s) at %L has no argument %qs" msgstr "" -#: fortran/resolve.c:13571 +#: fortran/resolve.c:13575 #, gcc-internal-format msgid "Procedure %qs with PASS at %L must have at least one argument" msgstr "" -#: fortran/resolve.c:13585 fortran/resolve.c:14071 +#: fortran/resolve.c:13589 fortran/resolve.c:14075 #, gcc-internal-format msgid "Non-polymorphic passed-object dummy argument of %qs at %L" msgstr "" -#: fortran/resolve.c:13593 +#: fortran/resolve.c:13597 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived-type %qs" msgstr "" -#: fortran/resolve.c:13602 +#: fortran/resolve.c:13606 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must be scalar" msgstr "" -#: fortran/resolve.c:13608 +#: fortran/resolve.c:13612 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:13614 +#: fortran/resolve.c:13618 #, gcc-internal-format msgid "Passed-object dummy argument of %qs at %L must not be POINTER" msgstr "" -#: fortran/resolve.c:13643 +#: fortran/resolve.c:13647 #, gcc-internal-format msgid "Procedure %qs at %L has the same name as a component of %qs" msgstr "" -#: fortran/resolve.c:13653 +#: fortran/resolve.c:13657 #, gcc-internal-format msgid "Procedure %qs at %L has the same name as an inherited component of %qs" msgstr "" -#: fortran/resolve.c:13748 +#: fortran/resolve.c:13752 #, gcc-internal-format msgid "" "Derived-type %qs declared at %L must be ABSTRACT because %qs is DEFERRED and " "not overridden" msgstr "" -#: fortran/resolve.c:13851 +#: fortran/resolve.c:13855 #, gcc-internal-format msgid "Coarray component %qs at %L must be allocatable with deferred shape" msgstr "" -#: fortran/resolve.c:13860 +#: fortran/resolve.c:13864 #, gcc-internal-format msgid "" "Component %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray" msgstr "" -#: fortran/resolve.c:13870 +#: fortran/resolve.c:13874 #, gcc-internal-format msgid "" "Component %qs at %L with coarray component shall be a nonpointer, " "nonallocatable scalar" msgstr "" -#: fortran/resolve.c:13895 +#: fortran/resolve.c:13899 #, gcc-internal-format msgid "" "Component %qs at %L has the CONTIGUOUS attribute but is not an array pointer" msgstr "" -#: fortran/resolve.c:13906 +#: fortran/resolve.c:13910 #, gcc-internal-format msgid "Component %qs of BIND(C) type at %L must have length one" msgstr "" -#: fortran/resolve.c:14004 +#: fortran/resolve.c:14008 #, gcc-internal-format msgid "Procedure pointer component %qs with PASS(%s) at %L has no argument %qs" msgstr "" -#: fortran/resolve.c:14018 +#: fortran/resolve.c:14022 #, gcc-internal-format msgid "" "Procedure pointer component %qs with PASS at %L must have at least one " "argument" msgstr "" -#: fortran/resolve.c:14034 +#: fortran/resolve.c:14038 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be of the derived type %qs" msgstr "" -#: fortran/resolve.c:14044 +#: fortran/resolve.c:14048 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L must be scalar" msgstr "" -#: fortran/resolve.c:14053 +#: fortran/resolve.c:14057 #, gcc-internal-format msgid "" "Argument %qs of %qs with PASS(%s) at %L may not have the POINTER attribute" msgstr "" -#: fortran/resolve.c:14062 +#: fortran/resolve.c:14066 #, gcc-internal-format msgid "Argument %qs of %qs with PASS(%s) at %L may not be ALLOCATABLE" msgstr "" -#: fortran/resolve.c:14104 +#: fortran/resolve.c:14108 #, gcc-internal-format msgid "" "Component %qs of %qs at %L has the same name as an inherited type-bound " "procedure" msgstr "" -#: fortran/resolve.c:14117 +#: fortran/resolve.c:14121 #, gcc-internal-format msgid "" "Character length of component %qs needs to be a constant specification " "expression at %L" msgstr "" -#: fortran/resolve.c:14128 +#: fortran/resolve.c:14132 #, gcc-internal-format msgid "" "Character component %qs of %qs at %L with deferred length must be a POINTER " "or ALLOCATABLE" msgstr "" -#: fortran/resolve.c:14161 +#: fortran/resolve.c:14165 #, gcc-internal-format msgid "" "the component %qs is a PRIVATE type and cannot be a component of %qs, which " "is PUBLIC at %L" msgstr "" -#: fortran/resolve.c:14169 +#: fortran/resolve.c:14173 #, gcc-internal-format, gfc-internal-format msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s" msgstr "" -#: fortran/resolve.c:14178 +#: fortran/resolve.c:14182 #, gcc-internal-format, gfc-internal-format msgid "" "Component %s of SEQUENCE type declared at %L does not have the SEQUENCE " "attribute" msgstr "" -#: fortran/resolve.c:14260 +#: fortran/resolve.c:14264 #, gcc-internal-format, gfc-internal-format msgid "Conflicting initializers in union at %L and %L" msgstr "" -#: fortran/resolve.c:14305 +#: fortran/resolve.c:14309 #, gcc-internal-format msgid "" "As extending type %qs at %L has a coarray component, parent type %qs shall " "also have one" msgstr "" -#: fortran/resolve.c:14318 +#: fortran/resolve.c:14322 #, gcc-internal-format msgid "Non-extensible derived-type %qs at %L must not be ABSTRACT" msgstr "" -#: fortran/resolve.c:14382 +#: fortran/resolve.c:14386 #, gcc-internal-format msgid "" "Parameterized type %qs does not have a component corresponding to parameter " "%qs at %L" msgstr "" -#: fortran/resolve.c:14415 +#: fortran/resolve.c:14419 #, gcc-internal-format msgid "" "Generic name %qs of function %qs at %L being the same name as derived type " "at %L" msgstr "" -#: fortran/resolve.c:14429 +#: fortran/resolve.c:14433 #, gcc-internal-format msgid "Derived type %qs at %L has not been declared" msgstr "" -#: fortran/resolve.c:14494 +#: fortran/resolve.c:14498 #, gcc-internal-format msgid "Assumed size array %qs in namelist %qs at %L is not allowed" msgstr "" -#: fortran/resolve.c:14500 +#: fortran/resolve.c:14504 #, gcc-internal-format msgid "NAMELIST array object %qs with assumed shape in namelist %qs at %L" msgstr "" -#: fortran/resolve.c:14506 +#: fortran/resolve.c:14510 #, gcc-internal-format msgid "NAMELIST array object %qs with nonconstant shape in namelist %qs at %L" msgstr "" -#: fortran/resolve.c:14514 +#: fortran/resolve.c:14518 #, gcc-internal-format msgid "" "NAMELIST object %qs with nonconstant character length in namelist %qs at %L" msgstr "" -#: fortran/resolve.c:14531 +#: fortran/resolve.c:14535 #, gcc-internal-format msgid "" "NAMELIST object %qs was declared PRIVATE and cannot be member of PUBLIC " "namelist %qs at %L" msgstr "" -#: fortran/resolve.c:14553 +#: fortran/resolve.c:14557 #, gcc-internal-format msgid "" "NAMELIST object %qs has use-associated PRIVATE components and cannot be " "member of namelist %qs at %L" msgstr "" -#: fortran/resolve.c:14564 +#: fortran/resolve.c:14568 #, gcc-internal-format msgid "" "NAMELIST object %qs has PRIVATE components and cannot be a member of PUBLIC " "namelist %qs at %L" msgstr "" -#: fortran/resolve.c:14591 +#: fortran/resolve.c:14595 #, gcc-internal-format msgid "PROCEDURE attribute conflicts with NAMELIST attribute in %qs at %L" msgstr "" -#: fortran/resolve.c:14615 +#: fortran/resolve.c:14619 #, gcc-internal-format msgid "Parameter array %qs at %L cannot be automatic or of deferred shape" msgstr "" -#: fortran/resolve.c:14631 +#: fortran/resolve.c:14635 #, gcc-internal-format msgid "" "Implicitly typed PARAMETER %qs at %L doesn't match a later IMPLICIT type" msgstr "" -#: fortran/resolve.c:14642 +#: fortran/resolve.c:14646 #, gcc-internal-format, gfc-internal-format msgid "Incompatible derived type in PARAMETER at %L" msgstr "" -#: fortran/resolve.c:14650 +#: fortran/resolve.c:14654 #, gcc-internal-format msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute" msgstr "" -#: fortran/resolve.c:14701 +#: fortran/resolve.c:14705 #, gcc-internal-format msgid "" "The object %qs at %L has a deferred LEN parameter %qs and is neither " "allocatable nor a pointer" msgstr "" -#: fortran/resolve.c:14712 +#: fortran/resolve.c:14716 #, gcc-internal-format msgid "" "The AUTOMATIC object %qs at %L must not have the SAVE attribute or be a " "variable declared in the main program, a module or a submodule(F08/C513)" msgstr "" -#: fortran/resolve.c:14719 +#: fortran/resolve.c:14723 #, gcc-internal-format msgid "" "The object %qs at %L with ASSUMED type parameters must be a dummy or a " "SELECT TYPE selector(F08/4.2)" msgstr "" -#: fortran/resolve.c:14758 +#: fortran/resolve.c:14762 #, gcc-internal-format, gfc-internal-format msgid "" "Sorry, allocatable/pointer components in polymorphic (CLASS) type coarrays " "at %L are unsupported" msgstr "" -#: fortran/resolve.c:14822 +#: fortran/resolve.c:14826 #, gcc-internal-format, gfc-internal-format msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L" msgstr "" -#: fortran/resolve.c:14825 +#: fortran/resolve.c:14829 #, gcc-internal-format, gfc-internal-format msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L" msgstr "" -#: fortran/resolve.c:14921 +#: fortran/resolve.c:14925 #, gcc-internal-format msgid "" "%qs at %L has the CONTIGUOUS attribute but is not an array pointer or an " "assumed-shape or assumed-rank array" msgstr "" -#: fortran/resolve.c:14942 +#: fortran/resolve.c:14946 #, gcc-internal-format, gfc-internal-format msgid "Bad specification for assumed size array at %L" msgstr "" -#: fortran/resolve.c:14955 +#: fortran/resolve.c:14959 #, gcc-internal-format, gfc-internal-format msgid "Assumed size array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:14958 +#: fortran/resolve.c:14962 #, gcc-internal-format, gfc-internal-format msgid "Assumed shape array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:14966 +#: fortran/resolve.c:14970 #, gcc-internal-format, gfc-internal-format msgid "Assumed-rank array at %L must be a dummy argument" msgstr "" -#: fortran/resolve.c:14973 +#: fortran/resolve.c:14977 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-rank array at %L may not have the VALUE or CODIMENSION attribute" msgstr "" -#: fortran/resolve.c:14986 +#: fortran/resolve.c:14990 #, gcc-internal-format, gfc-internal-format msgid "Symbol at %L is not a DUMMY variable" msgstr "" -#: fortran/resolve.c:14992 +#: fortran/resolve.c:14996 #, gcc-internal-format msgid "" "%qs at %L cannot have the VALUE attribute because it is not a dummy argument" msgstr "" -#: fortran/resolve.c:15002 +#: fortran/resolve.c:15006 #, gcc-internal-format msgid "" "Character dummy variable %qs at %L with VALUE attribute must have constant " "length" msgstr "" -#: fortran/resolve.c:15011 +#: fortran/resolve.c:15015 #, gcc-internal-format msgid "" "C interoperable character dummy variable %qs at %L with VALUE attribute must " "have length one" msgstr "" -#: fortran/resolve.c:15024 fortran/resolve.c:15201 +#: fortran/resolve.c:15028 fortran/resolve.c:15205 #, gcc-internal-format msgid "The derived type %qs at %L is of type %qs, which has not been defined" msgstr "" -#: fortran/resolve.c:15038 +#: fortran/resolve.c:15042 #, gcc-internal-format, gfc-internal-format msgid "Variable %s at %L with NO_ARG_CHECK attribute shall be a dummy argument" msgstr "" -#: fortran/resolve.c:15047 +#: fortran/resolve.c:15051 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall be of type TYPE(*) or of " "an numeric intrinsic type" msgstr "" -#: fortran/resolve.c:15056 +#: fortran/resolve.c:15060 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may not have the ALLOCATABLE, " "CODIMENSION, POINTER or VALUE attribute" msgstr "" -#: fortran/resolve.c:15064 +#: fortran/resolve.c:15068 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute may not have the INTENT(OUT) " "attribute" msgstr "" -#: fortran/resolve.c:15071 +#: fortran/resolve.c:15075 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L with NO_ARG_CHECK attribute shall either be a scalar or an " "assumed-size array" msgstr "" -#: fortran/resolve.c:15091 +#: fortran/resolve.c:15095 #, gcc-internal-format, gfc-internal-format msgid "Assumed type of variable %s at %L is only permitted for dummy variables" msgstr "" -#: fortran/resolve.c:15098 +#: fortran/resolve.c:15102 #, gcc-internal-format, gfc-internal-format msgid "" "Assumed-type variable %s at %L may not have the ALLOCATABLE, CODIMENSION, " "POINTER or VALUE attribute" msgstr "" -#: fortran/resolve.c:15105 +#: fortran/resolve.c:15109 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L may not have the INTENT(OUT) attribute" msgstr "" -#: fortran/resolve.c:15112 +#: fortran/resolve.c:15116 #, gcc-internal-format, gfc-internal-format msgid "Assumed-type variable %s at %L shall not be an explicit-shape array" msgstr "" -#: fortran/resolve.c:15138 +#: fortran/resolve.c:15142 #, gcc-internal-format msgid "" "Variable %qs at %L cannot be BIND(C) because it is neither a COMMON block " "nor declared at the module level scope" msgstr "" -#: fortran/resolve.c:15148 +#: fortran/resolve.c:15152 #, gcc-internal-format msgid "BIND(C) Variable %qs at %L must have length one" msgstr "" -#: fortran/resolve.c:15227 +#: fortran/resolve.c:15231 #, gcc-internal-format msgid "PUBLIC %s %qs at %L of PRIVATE derived type %qs" msgstr "" -#: fortran/resolve.c:15242 +#: fortran/resolve.c:15246 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L of type LOCK_TYPE or with subcomponent of type LOCK_TYPE " "must be a coarray" msgstr "" -#: fortran/resolve.c:15255 +#: fortran/resolve.c:15259 #, gcc-internal-format, gfc-internal-format msgid "" "Variable %s at %L of type EVENT_TYPE or with subcomponent of type EVENT_TYPE " "must be a coarray" msgstr "" -#: fortran/resolve.c:15273 +#: fortran/resolve.c:15277 #, gcc-internal-format msgid "" "The INTENT(OUT) dummy argument %qs at %L is ASSUMED SIZE and so cannot have " "a default initializer" msgstr "" -#: fortran/resolve.c:15285 +#: fortran/resolve.c:15289 #, gcc-internal-format msgid "Dummy argument %qs at %L of LOCK_TYPE shall not be INTENT(OUT)" msgstr "" -#: fortran/resolve.c:15294 +#: fortran/resolve.c:15298 #, gcc-internal-format msgid "Dummy argument %qs at %L of EVENT_TYPE shall not be INTENT(OUT)" msgstr "" -#: fortran/resolve.c:15306 +#: fortran/resolve.c:15310 #, gcc-internal-format msgid "" "Function result %qs at %L shall not be a coarray or have a coarray component" msgstr "" -#: fortran/resolve.c:15315 +#: fortran/resolve.c:15319 #, gcc-internal-format msgid "" "Variable %qs at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray" msgstr "" -#: fortran/resolve.c:15327 +#: fortran/resolve.c:15331 #, gcc-internal-format msgid "" "Variable %qs at %L with coarray component shall be a nonpointer, " "nonallocatable scalar, which is not a coarray" msgstr "" -#: fortran/resolve.c:15343 +#: fortran/resolve.c:15347 #, gcc-internal-format msgid "" "Variable %qs at %L is a coarray and is not ALLOCATABLE, SAVE nor a dummy " "argument" msgstr "" -#: fortran/resolve.c:15351 +#: fortran/resolve.c:15355 #, gcc-internal-format msgid "" "Coarray variable %qs at %L shall not have codimensions with deferred shape" msgstr "" -#: fortran/resolve.c:15358 +#: fortran/resolve.c:15362 #, gcc-internal-format msgid "Allocatable coarray variable %qs at %L must have deferred shape" msgstr "" -#: fortran/resolve.c:15370 +#: fortran/resolve.c:15374 #, gcc-internal-format msgid "" "Variable %qs at %L is INTENT(OUT) and can thus not be an allocatable coarray " "or have coarray components" msgstr "" -#: fortran/resolve.c:15379 +#: fortran/resolve.c:15383 #, gcc-internal-format msgid "Coarray dummy variable %qs at %L not allowed in BIND(C) procedure %qs" msgstr "" -#: fortran/resolve.c:15395 +#: fortran/resolve.c:15399 #, gcc-internal-format msgid "" "LOGICAL dummy argument %qs at %L with non-C_Bool kind in BIND(C) procedure " "%qs" msgstr "" -#: fortran/resolve.c:15401 +#: fortran/resolve.c:15405 #, gcc-internal-format msgid "" "LOGICAL result variable %qs at %L with non-C_Bool kind in BIND(C) procedure " "%qs" msgstr "" -#: fortran/resolve.c:15426 +#: fortran/resolve.c:15430 #, gcc-internal-format msgid "Namelist %qs cannot be an argument to subroutine or function at %L" msgstr "" -#: fortran/resolve.c:15496 +#: fortran/resolve.c:15500 #, gcc-internal-format, gfc-internal-format msgid "Threadprivate at %L isn't SAVEd" msgstr "" -#: fortran/resolve.c:15507 +#: fortran/resolve.c:15511 #, gcc-internal-format msgid "!$OMP DECLARE TARGET variable %qs at %L isn't SAVEd" msgstr "" -#: fortran/resolve.c:15612 +#: fortran/resolve.c:15616 #, gcc-internal-format, gfc-internal-format msgid "Expecting definable entity near %L" msgstr "" -#: fortran/resolve.c:15620 +#: fortran/resolve.c:15624 #, gcc-internal-format msgid "BLOCK DATA element %qs at %L must be in COMMON" msgstr "" -#: fortran/resolve.c:15627 +#: fortran/resolve.c:15631 #, gcc-internal-format msgid "DATA array %qs at %L must be specified in a previous declaration" msgstr "" -#: fortran/resolve.c:15636 +#: fortran/resolve.c:15640 #, gcc-internal-format msgid "DATA element %qs at %L cannot have a coindex" msgstr "" -#: fortran/resolve.c:15650 +#: fortran/resolve.c:15654 #, gcc-internal-format msgid "DATA element %qs at %L is a pointer and so must be a full array" msgstr "" -#: fortran/resolve.c:15696 +#: fortran/resolve.c:15700 #, gcc-internal-format, gfc-internal-format msgid "Nonconstant array section at %L in DATA statement" msgstr "" -#: fortran/resolve.c:15709 +#: fortran/resolve.c:15713 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %L has more variables than values" msgstr "" -#: fortran/resolve.c:15808 +#: fortran/resolve.c:15812 #, gcc-internal-format, gfc-internal-format msgid "" "start of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.c:15816 +#: fortran/resolve.c:15820 #, gcc-internal-format, gfc-internal-format msgid "" "end of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.c:15824 +#: fortran/resolve.c:15828 #, gcc-internal-format, gfc-internal-format msgid "" "step of implied-do loop at %L could not be simplified to a constant value" msgstr "" -#: fortran/resolve.c:15949 +#: fortran/resolve.c:15953 #, gcc-internal-format, gfc-internal-format msgid "DATA statement at %L has more values than variables" msgstr "" -#: fortran/resolve.c:16114 +#: fortran/resolve.c:16118 #, gcc-internal-format, gfc-internal-format msgid "Label %d at %L defined but not used" msgstr "" -#: fortran/resolve.c:16120 +#: fortran/resolve.c:16124 #, gcc-internal-format, gfc-internal-format msgid "Label %d at %L defined but cannot be used" msgstr "" -#: fortran/resolve.c:16204 +#: fortran/resolve.c:16208 #, gcc-internal-format msgid "" "Derived type variable %qs at %L must have SEQUENCE attribute to be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16213 +#: fortran/resolve.c:16217 #, gcc-internal-format msgid "" "Derived type variable %qs at %L cannot have ALLOCATABLE components to be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16221 +#: fortran/resolve.c:16225 #, gcc-internal-format msgid "" "Derived type variable %qs at %L with default initialization cannot be in " "EQUIVALENCE with a variable in COMMON" msgstr "" -#: fortran/resolve.c:16237 +#: fortran/resolve.c:16241 #, gcc-internal-format msgid "" "Derived type variable %qs at %L with pointer component(s) cannot be an " "EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16340 +#: fortran/resolve.c:16344 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in EQUIVALENCE statement at %L" msgstr "" -#: fortran/resolve.c:16355 +#: fortran/resolve.c:16359 #, gcc-internal-format, gfc-internal-format msgid "" "Either all or none of the objects in the EQUIVALENCE set at %L shall have " "the PROTECTED attribute" msgstr "" -#: fortran/resolve.c:16380 +#: fortran/resolve.c:16384 #, gcc-internal-format msgid "" "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure " "procedure %qs" msgstr "" -#: fortran/resolve.c:16389 +#: fortran/resolve.c:16393 #, gcc-internal-format msgid "Named constant %qs at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16462 +#: fortran/resolve.c:16466 #, gcc-internal-format msgid "" "Array %qs at %L with non-constant bounds cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16473 +#: fortran/resolve.c:16477 #, gcc-internal-format msgid "Structure component %qs at %L cannot be an EQUIVALENCE object" msgstr "" -#: fortran/resolve.c:16484 +#: fortran/resolve.c:16488 #, gcc-internal-format, gfc-internal-format msgid "Substring at %L has length zero" msgstr "" -#: fortran/resolve.c:16515 +#: fortran/resolve.c:16519 #, gcc-internal-format msgid "Self reference in character length expression for %qs at %L" msgstr "" -#: fortran/resolve.c:16582 +#: fortran/resolve.c:16586 #, gcc-internal-format msgid "PUBLIC function %qs at %L of PRIVATE type %qs" msgstr "" -#: fortran/resolve.c:16595 +#: fortran/resolve.c:16599 #, gcc-internal-format msgid "ENTRY %qs at %L has no IMPLICIT type" msgstr "" -#: fortran/resolve.c:16615 +#: fortran/resolve.c:16619 #, gcc-internal-format msgid "User operator procedure %qs at %L must be a FUNCTION" msgstr "" -#: fortran/resolve.c:16625 +#: fortran/resolve.c:16629 #, gcc-internal-format msgid "User operator procedure %qs at %L cannot be assumed character length" msgstr "" -#: fortran/resolve.c:16633 +#: fortran/resolve.c:16637 #, gcc-internal-format msgid "User operator procedure %qs at %L must have at least one argument" msgstr "" -#: fortran/resolve.c:16647 +#: fortran/resolve.c:16651 #, gcc-internal-format, gfc-internal-format msgid "First argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.c:16665 +#: fortran/resolve.c:16669 #, gcc-internal-format, gfc-internal-format msgid "Second argument of operator interface at %L cannot be optional" msgstr "" -#: fortran/resolve.c:16672 +#: fortran/resolve.c:16676 #, gcc-internal-format, gfc-internal-format msgid "Operator interface at %L must have, at most, two arguments" msgstr "" -#: fortran/resolve.c:16750 +#: fortran/resolve.c:16754 #, gcc-internal-format msgid "Contained procedure %qs at %L of a PURE procedure must also be PURE" msgstr "" @@ -66149,19 +66165,19 @@ msgstr "" #. Problems occur when we get something like #. integer :: a(lots) = (/(i, i=1, lots)/) -#: fortran/trans-array.c:6035 +#: fortran/trans-array.c:6083 #, gcc-internal-format msgid "" "The number of elements in the array constructor at %L requires an increase " "of the allowed %d upper limit. See %<-fmax-array-constructor%> option" msgstr "" -#: fortran/trans-array.c:8068 +#: fortran/trans-array.c:8116 #, gcc-internal-format msgid "Creating array temporary at %L for argument %qs" msgstr "" -#: fortran/trans-array.c:10972 +#: fortran/trans-array.c:11020 #, gcc-internal-format, gfc-internal-format msgid "bad expression type during walk (%d)" msgstr "" @@ -66265,69 +66281,69 @@ msgstr "" msgid "intrinsic variable which isn't a procedure" msgstr "" -#: fortran/trans-decl.c:4327 fortran/trans-decl.c:6660 +#: fortran/trans-decl.c:4393 fortran/trans-decl.c:6733 #, gcc-internal-format msgid "Return value of function %qs at %L not set" msgstr "" -#: fortran/trans-decl.c:4815 +#: fortran/trans-decl.c:4881 #, gcc-internal-format msgid "Deferred type parameter not yet supported" msgstr "" -#: fortran/trans-decl.c:5048 +#: fortran/trans-decl.c:5121 #, gcc-internal-format msgid "backend decl for module variable %qs already exists" msgstr "" -#: fortran/trans-decl.c:5061 +#: fortran/trans-decl.c:5134 #, gcc-internal-format msgid "Unused PRIVATE module variable %qs declared at %L" msgstr "" -#: fortran/trans-decl.c:5686 +#: fortran/trans-decl.c:5759 #, gcc-internal-format msgid "Dummy argument %qs at %L was declared INTENT(OUT) but was not set" msgstr "" -#: fortran/trans-decl.c:5692 +#: fortran/trans-decl.c:5765 #, gcc-internal-format msgid "" "Derived-type dummy argument %qs at %L was declared INTENT(OUT) but was not " "set and does not have a default initializer" msgstr "" -#: fortran/trans-decl.c:5702 fortran/trans-decl.c:5840 +#: fortran/trans-decl.c:5775 fortran/trans-decl.c:5913 #, gcc-internal-format msgid "Unused dummy argument %qs at %L" msgstr "" -#: fortran/trans-decl.c:5717 +#: fortran/trans-decl.c:5790 #, gcc-internal-format msgid "Unused module variable %qs which has been explicitly imported at %L" msgstr "" -#: fortran/trans-decl.c:5736 +#: fortran/trans-decl.c:5809 #, gcc-internal-format msgid "Unused variable %qs declared at %L" msgstr "" -#: fortran/trans-decl.c:5785 +#: fortran/trans-decl.c:5858 #, gcc-internal-format msgid "Unused parameter %qs declared at %L" msgstr "" -#: fortran/trans-decl.c:5789 +#: fortran/trans-decl.c:5862 #, gcc-internal-format msgid "Unused parameter %qs which has been explicitly imported at %L" msgstr "" -#: fortran/trans-decl.c:5812 +#: fortran/trans-decl.c:5885 #, gcc-internal-format msgid "Return value %qs of function %qs declared at %L not set" msgstr "" -#: fortran/trans-decl.c:6389 +#: fortran/trans-decl.c:6462 #, gcc-internal-format, gfc-internal-format msgid "Sorry, !$ACC DECLARE at %L is not allowed in BLOCK construct" msgstr "" @@ -66377,12 +66393,12 @@ msgstr "" msgid "% argument of %s intrinsic at %L is not a valid dimension index" msgstr "" -#: fortran/trans-intrinsic.c:11246 fortran/trans-stmt.c:1066 +#: fortran/trans-intrinsic.c:11267 fortran/trans-stmt.c:1066 #, gcc-internal-format, gfc-internal-format msgid "Sorry, the event component of derived type at %L is not yet supported" msgstr "" -#: fortran/trans-intrinsic.c:11253 +#: fortran/trans-intrinsic.c:11274 #, gcc-internal-format, gfc-internal-format msgid "The event variable at %L shall not be coindexed" msgstr "" @@ -66492,7 +66508,7 @@ msgstr "" msgid "gfc_validate_kind(): Got bad kind" msgstr "" -#: fortran/trans.c:2114 +#: fortran/trans.c:2117 #, gcc-internal-format msgid "gfc_trans_code(): Bad statement code" msgstr "" @@ -67699,46 +67715,92 @@ msgstr "" msgid "creating selector for nonexistent method %qE" msgstr "" -#: config/fused-madd.opt:22 +#: fortran/lang.opt:409 #, gcc-internal-format -msgid "%<-mfused-madd%> is deprecated; use %<-ffp-contract=%> instead" +msgid "Unrecognized option to endianness value: %qs" msgstr "" -#: config/microblaze/microblaze.opt:87 +#: fortran/lang.opt:600 #, gcc-internal-format -msgid "%qs is deprecated; use -fstack-check" +msgid "Unrecognized option to floating-point init value: %qs" msgstr "" -#: config/microblaze/microblaze.opt:95 +#: fortran/lang.opt:730 #, gcc-internal-format -msgid "%qs is deprecated; use -fno-zero-initialized-in-bss" +msgid "Unrecognized option: %qs" msgstr "" -#: config/arc/arc.opt:173 config/arc/arc.opt:334 config/arc/arc.opt:342 -#: config/arc/arc.opt:349 config/arc/arc.opt:353 config/arc/arc.opt:357 -#: config/arc/arc.opt:361 config/arc/arc.opt:364 config/arc/arc.opt:367 -#: config/arc/arc.opt:384 +#: c-family/c.opt:43 c-family/c.opt:46 c-family/c.opt:181 #, gcc-internal-format -msgid "%qs is deprecated" +msgid "assertion missing after %qs" msgstr "" -#: config/vms/vms.opt:42 +#: c-family/c.opt:55 c-family/c.opt:58 c-family/c.opt:163 c-family/c.opt:166 +#: c-family/c.opt:193 c-family/c.opt:256 #, gcc-internal-format -msgid "unknown pointer size model %qs" +msgid "macro name missing after %qs" msgstr "" -#: config/avr/avr.opt:26 +#: c-family/c.opt:70 c-family/c.opt:73 c-family/c.opt:76 c-family/c.opt:79 +#: c-family/c.opt:175 c-family/c.opt:178 c-family/c.opt:220 c-family/c.opt:224 +#: c-family/c.opt:236 c-family/c.opt:1906 c-family/c.opt:1914 brig/lang.opt:44 +#: config/darwin.opt:56 common.opt:326 common.opt:329 common.opt:3140 #, gcc-internal-format -msgid "missing device or architecture after %qs" +msgid "missing filename after %qs" msgstr "" -#: config/darwin.opt:56 brig/lang.opt:44 common.opt:326 common.opt:329 -#: common.opt:3140 c-family/c.opt:70 c-family/c.opt:73 c-family/c.opt:76 -#: c-family/c.opt:79 c-family/c.opt:175 c-family/c.opt:178 c-family/c.opt:220 -#: c-family/c.opt:224 c-family/c.opt:236 c-family/c.opt:1906 -#: c-family/c.opt:1914 +#: c-family/c.opt:85 c-family/c.opt:88 c-family/c.opt:91 c-family/c.opt:94 +#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:1902 +#: c-family/c.opt:1922 c-family/c.opt:1926 c-family/c.opt:1930 #, gcc-internal-format -msgid "missing filename after %qs" +msgid "missing path after %qs" +msgstr "" + +#: c-family/c.opt:244 c-family/c.opt:248 +#, gcc-internal-format +msgid "missing makefile target after %qs" +msgstr "" + +#: c-family/c.opt:283 +#, gcc-internal-format +msgid "argument %qs to %<-Waligned-new%> not recognized" +msgstr "" + +#: c-family/c.opt:903 +#, gcc-internal-format +msgid "argument %qs to %<-Wnormalized%> not recognized" +msgstr "" + +#: c-family/c.opt:1408 +#, gcc-internal-format +msgid "no class name specified with %qs" +msgstr "" + +#: c-family/c.opt:1519 +#, gcc-internal-format +msgid "" +"%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by " +"default)" +msgstr "" + +#: c-family/c.opt:1602 +#, gcc-internal-format +msgid "unrecognized ivar visibility value %qs" +msgstr "" + +#: c-family/c.opt:1762 +#, gcc-internal-format +msgid "unrecognized scalar storage order value %qs" +msgstr "" + +#: d/lang.opt:189 +#, gcc-internal-format +msgid "unknown array bounds setting %qs" +msgstr "" + +#: config/vms/vms.opt:42 +#, gcc-internal-format +msgid "unknown pointer size model %qs" msgstr "" #: config/i386/i386.opt:319 @@ -67758,6 +67820,11 @@ msgstr "" msgid "%<-msse5%> was removed" msgstr "" +#: config/avr/avr.opt:26 +#, gcc-internal-format +msgid "missing device or architecture after %qs" +msgstr "" + #: config/rs6000/rs6000.opt:317 #, gcc-internal-format msgid "%<-mvrsave=no%> is deprecated; use %<-mno-vrsave%> instead" @@ -67778,6 +67845,34 @@ msgstr "" msgid "using old darwin ABI" msgstr "" +#: config/fused-madd.opt:22 +#, gcc-internal-format +msgid "%<-mfused-madd%> is deprecated; use %<-ffp-contract=%> instead" +msgstr "" + +#: config/microblaze/microblaze.opt:87 +#, gcc-internal-format +msgid "%qs is deprecated; use -fstack-check" +msgstr "" + +#: config/microblaze/microblaze.opt:95 +#, gcc-internal-format +msgid "%qs is deprecated; use -fno-zero-initialized-in-bss" +msgstr "" + +#: config/arc/arc.opt:173 config/arc/arc.opt:334 config/arc/arc.opt:342 +#: config/arc/arc.opt:349 config/arc/arc.opt:353 config/arc/arc.opt:357 +#: config/arc/arc.opt:361 config/arc/arc.opt:364 config/arc/arc.opt:367 +#: config/arc/arc.opt:384 +#, gcc-internal-format +msgid "%qs is deprecated" +msgstr "" + +#: lto/lang.opt:28 +#, gcc-internal-format +msgid "unknown linker output %qs" +msgstr "" + #: common.opt:1406 #, gcc-internal-format msgid "unknown excess precision style %qs" @@ -67863,83 +67958,3 @@ msgstr "" #, gcc-internal-format msgid "unknown vtable verify initialization priority %qs" msgstr "" - -#: d/lang.opt:189 -#, gcc-internal-format -msgid "unknown array bounds setting %qs" -msgstr "" - -#: c-family/c.opt:43 c-family/c.opt:46 c-family/c.opt:181 -#, gcc-internal-format -msgid "assertion missing after %qs" -msgstr "" - -#: c-family/c.opt:55 c-family/c.opt:58 c-family/c.opt:163 c-family/c.opt:166 -#: c-family/c.opt:193 c-family/c.opt:256 -#, gcc-internal-format -msgid "macro name missing after %qs" -msgstr "" - -#: c-family/c.opt:85 c-family/c.opt:88 c-family/c.opt:91 c-family/c.opt:94 -#: c-family/c.opt:200 c-family/c.opt:212 c-family/c.opt:1902 -#: c-family/c.opt:1922 c-family/c.opt:1926 c-family/c.opt:1930 -#, gcc-internal-format -msgid "missing path after %qs" -msgstr "" - -#: c-family/c.opt:244 c-family/c.opt:248 -#, gcc-internal-format -msgid "missing makefile target after %qs" -msgstr "" - -#: c-family/c.opt:283 -#, gcc-internal-format -msgid "argument %qs to %<-Waligned-new%> not recognized" -msgstr "" - -#: c-family/c.opt:903 -#, gcc-internal-format -msgid "argument %qs to %<-Wnormalized%> not recognized" -msgstr "" - -#: c-family/c.opt:1408 -#, gcc-internal-format -msgid "no class name specified with %qs" -msgstr "" - -#: c-family/c.opt:1519 -#, gcc-internal-format -msgid "" -"%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by " -"default)" -msgstr "" - -#: c-family/c.opt:1602 -#, gcc-internal-format -msgid "unrecognized ivar visibility value %qs" -msgstr "" - -#: c-family/c.opt:1762 -#, gcc-internal-format -msgid "unrecognized scalar storage order value %qs" -msgstr "" - -#: fortran/lang.opt:409 -#, gcc-internal-format -msgid "Unrecognized option to endianness value: %qs" -msgstr "" - -#: fortran/lang.opt:600 -#, gcc-internal-format -msgid "Unrecognized option to floating-point init value: %qs" -msgstr "" - -#: fortran/lang.opt:730 -#, gcc-internal-format -msgid "Unrecognized option: %qs" -msgstr "" - -#: lto/lang.opt:28 -#, gcc-internal-format -msgid "unknown linker output %qs" -msgstr "" -- cgit v1.1 From 63b805aba9941f131133050ec9e32271572adf02 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Mon, 29 Apr 2019 23:45:23 +0100 Subject: * sv.po: Update. From-SVN: r270667 --- gcc/po/ChangeLog | 4 + gcc/po/sv.po | 1097 ++++++++++++++++++++++-------------------------------- 2 files changed, 441 insertions(+), 660 deletions(-) (limited to 'gcc') diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 60d6901..115d85a 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,5 +1,9 @@ 2019-04-29 Joseph Myers + * sv.po: Update. + +2019-04-29 Joseph Myers + * gcc.pot: Regenerate. 2019-04-23 Joseph Myers diff --git a/gcc/po/sv.po b/gcc/po/sv.po index 8b7c31b..2b03ece 100644 --- a/gcc/po/sv.po +++ b/gcc/po/sv.po @@ -1,4 +1,4 @@ -# Swedish messages for GCC. +# Swedish messages for GCCs. # Copyright © 2000, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Free Software Foundation, Inc. # This file is distributed under the same license as the gcc package. # Dennis Björklund , 2000, 2001, 2002. @@ -22,10 +22,10 @@ # thunk snutt msgid "" msgstr "" -"Project-Id-Version: gcc 9.1-b20190324\n" +"Project-Id-Version: gcc 9.1-b20190414\n" "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n" "POT-Creation-Date: 2019-04-13 17:21+0200\n" -"PO-Revision-Date: 2019-04-14 12:59+0200\n" +"PO-Revision-Date: 2019-04-28 15:25+0200\n" "Last-Translator: Göran Uddeborg \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -2343,10 +2343,9 @@ msgid "Maximum number of parameters in a SCoP." msgstr "Maximalt antal parameter i en SCoP." #: params.def:960 -#, fuzzy, no-c-format -#| msgid "Maximum number of arrays per scop." +#, no-c-format msgid "Maximum number of arrays per SCoP." -msgstr "Maximalt antal vektorer per scop." +msgstr "Maximalt antal vektorer per SCoP." #: params.def:965 #, no-c-format @@ -2496,7 +2495,7 @@ msgstr "Maximal storlek på en partition för LTO (i uppskattade instruktioner). #: params.def:1151 #, no-c-format msgid "maximal number of LTO partitions streamed in parallel." -msgstr "" +msgstr "maximalt antal LTO-partitioner som strömmas parallellt." #: params.def:1158 #, no-c-format @@ -5002,22 +5001,19 @@ msgstr "vektortilldelning" #. Macros for unified error messages. #: fortran/frontend-passes.c:3746 -#, fuzzy, c-format -#| msgid "Incorrect extent in argument B in MATMUL intrinsic in dimension " +#, c-format msgid "Incorrect extent in argument B in MATMUL intrinsic in dimension 1: is %ld, should be %ld" -msgstr "Felaktig utsträckning i argument B i inbyggd MATMUL i dimension " +msgstr "Felaktig utsträckning i argument B i inbyggd MATMUL i dimension 1: är %ld, skulle vara %ld" #: fortran/frontend-passes.c:3749 -#, fuzzy, c-format -#| msgid "Array bound mismatch for dimension " +#, c-format msgid "Array bound mismatch for dimension 1 of array (%ld/%ld)" -msgstr "Vektorbindning stämmer inte för dimension " +msgstr "Vektorbindning stämmer inte för dimension 1 av vektorn (%ld/%ld)" #: fortran/frontend-passes.c:3752 -#, fuzzy, c-format -#| msgid "Array bound mismatch for dimension " +#, c-format msgid "Array bound mismatch for dimension 2 of array (%ld/%ld)" -msgstr "Vektorbindning stämmer inte för dimension " +msgstr "Vektorbindning stämmer inte för dimension 2 av vektorn (%ld/%ld)" #: fortran/gfortranspec.c:427 #, c-format @@ -5629,8 +5625,6 @@ msgid "-E or -x required when input is from standard input" msgstr "-E eller -x krävs när indata tas från standard in" #: config/darwin.h:126 config/darwin.h:427 -#, fuzzy -#| msgid "gsplit-dwarf is not supported on this platform " msgid "gsplit-dwarf is not supported on this platform" msgstr "gsplit-dwarf stödjs inte på denna plattform" @@ -5698,8 +5692,6 @@ msgstr "-Xbind-now och -Xbind-lazy är inkompatibla" #: config/aarch64/aarch64-freebsd.h:37 config/arm/freebsd.h:49 #: config/riscv/freebsd.h:44 -#, fuzzy -#| msgid "consider using `-pg' instead of `-p' with gprof (1) " msgid "consider using `-pg' instead of `-p' with gprof (1)" msgstr "överväg att använda ”-pg” istället för ”-p” med gprof (1)" @@ -5801,10 +5793,8 @@ msgid "SH2a does not support little-endian" msgstr "SH2a stödjer inte omvänd byteordning" #: config/sparc/linux64.h:148 -#, fuzzy -#| msgid "-pie is not supported in this configuration" msgid "-fsanitize=address is not supported in this configuration" -msgstr "-pie stödjs inte i denna konfiguration" +msgstr "-fsanitize=address stödjs inte i denna konfiguration" #: config/sparc/linux64.h:162 config/sparc/linux64.h:168 #: config/sparc/netbsd-elf.h:108 config/sparc/netbsd-elf.h:117 @@ -10447,10 +10437,8 @@ msgid "The possible SVE vector lengths:" msgstr "De möjliga SVE-vektorlängderna:" #: config/aarch64/aarch64.opt:219 -#, fuzzy -#| msgid "-msve-vector-bits=\tSet the number of bits in an SVE vector register to N." msgid "-msve-vector-bits=\tSet the number of bits in an SVE vector register." -msgstr "-msve-vector-bits=\tAnge antalet bitar i ett SVE-vektorregister till N." +msgstr "-msve-vector-bits=\tAnge antalet bitar i ett SVE-vektorregister." #: config/aarch64/aarch64.opt:223 msgid "Enables verbose cost model dumping in the debug dump files." @@ -17954,10 +17942,9 @@ msgid "could not close response file %s" msgstr "det gick inte att stänga svarsfilen %s" #: collect-utils.c:179 -#, fuzzy, gcc-internal-format -#| msgid "[cannot find %s]" +#, gcc-internal-format msgid "cannot find %qs" -msgstr "[kan inte hitta %s]" +msgstr "kan inte hitta %qs" #: collect-utils.c:183 collect2.c:2451 collect2.c:2621 gcc.c:3201 gcc.c:6927 #, gcc-internal-format @@ -17996,10 +17983,9 @@ msgid "can%'t open %s: %m" msgstr "det går inte att öppna %s: %m" #: collect2.c:1519 -#, fuzzy, gcc-internal-format -#| msgid "unknown demangling style '%s'" +#, gcc-internal-format msgid "unknown demangling style %qs" -msgstr "okänd avmanglingsstil ”%s”" +msgstr "okänd avmanglingsstil %qs" #: collect2.c:1621 collect2.c:1802 collect2.c:1842 #, gcc-internal-format @@ -18017,10 +18003,9 @@ msgid "%s: %s\n" msgstr "%s: %s\n" #: collect2.c:2425 -#, fuzzy, gcc-internal-format -#| msgid "cannot find 'nm'" +#, gcc-internal-format msgid "cannot find %" -msgstr "kan inte hitta ”nm”" +msgstr "kan inte hitta %" #: collect2.c:2473 #, gcc-internal-format @@ -18038,10 +18023,9 @@ msgid "fini function found in object %s" msgstr "fini-funktion funnen i objekt %s" #: collect2.c:2596 -#, fuzzy, gcc-internal-format -#| msgid "cannot find 'ldd'" +#, gcc-internal-format msgid "cannot find %" -msgstr "kan inte hitta ”ldd”" +msgstr "kan inte hitta %" #: collect2.c:2642 #, gcc-internal-format @@ -18054,10 +18038,9 @@ msgid "dynamic dependency %s not found" msgstr "dynamiskt beroende %s inte funnet" #: collect2.c:2672 -#, fuzzy, gcc-internal-format -#| msgid "unable to open dynamic dependency '%s'" +#, gcc-internal-format msgid "unable to open dynamic dependency %qs" -msgstr "kan inte öppna dynamiskt beroende ”%s”" +msgstr "kan inte öppna dynamiskt beroende %qs" #: collect2.c:2826 #, gcc-internal-format, gfc-internal-format @@ -18240,10 +18223,9 @@ msgid "%<-fdbg-cnt=%s%>" msgstr "%<-fdbg-cnt=%s%>" #: dbgcnt.c:188 -#, fuzzy, gcc-internal-format, gfc-internal-format -#| msgid " %s" +#, gcc-internal-format, gfc-internal-format msgid " %s" -msgstr " %s" +msgstr " %s" #: dbxout.c:3380 #, gcc-internal-format @@ -20589,10 +20571,9 @@ msgid "Option %s not used consistently in all LTO input files" msgstr "Flaggan %s inte konsekvent använd i alla LTO-indatafiler" #: lto-wrapper.c:825 -#, fuzzy, gcc-internal-format -#| msgid "could not find %s in %s (consider using '-B')\n" +#, gcc-internal-format msgid "could not find %s in %s (consider using %<-B%>)\n" -msgstr "kunde inte hitta %s i %s (överväg att använda ”-B”)\n" +msgstr "kunde inte hitta %s i %s (överväg att använda %<-B%>)\n" #: lto-wrapper.c:906 #, gcc-internal-format, gfc-internal-format @@ -20650,10 +20631,9 @@ msgid "Corrupted ltrans output file %s" msgstr "Trasig ltrans-utdatafil %s" #: multiple_target.c:76 -#, fuzzy, gcc-internal-format -#| msgid "the call requires ifunc, which is not supported by this target" +#, gcc-internal-format msgid "the call requires %, which is not supported by this target" -msgstr "anropet behöver ifunc, som inte stödjs av detta mål" +msgstr "anropet behöver %, som inte stödjs av detta mål" #: multiple_target.c:83 #, gcc-internal-format @@ -20681,10 +20661,9 @@ msgid "function %q+F can never be copied because it has % attribute" msgstr "funktion %q+F kan aldrig kopieras eftersom den har attributet %" #: multiple_target.c:384 -#, fuzzy, gcc-internal-format -#| msgid "default target was not set" +#, gcc-internal-format msgid "% target was not set" -msgstr "standardmålet var inte satt" +msgstr "målet % sattes inte" #: multiple_target.c:388 #, gcc-internal-format @@ -20692,10 +20671,9 @@ msgid "an empty string cannot be in % attribute" msgstr "en ensam sträng kan inte finnas i attributet %" #: multiple_target.c:392 -#, fuzzy, gcc-internal-format -#| msgid "multiple default labels in one switch" +#, gcc-internal-format msgid "multiple % targets were set" -msgstr "flera default-etiketter i en switch" +msgstr "flera %-mål sattes" #: omp-expand.c:2150 #, gcc-internal-format @@ -20914,10 +20892,9 @@ msgid "invalid branch to/from %s structured block" msgstr "ogiltig gren till/från strukturerat %s-block" #: omp-offload.c:642 -#, fuzzy, gcc-internal-format -#| msgid "%<-fopenacc-dim%> operand is malformed at '%s'" +#, gcc-internal-format msgid "%<-fopenacc-dim%> operand is malformed at %qs" -msgstr "operand till %<-fopenacc-dim%> är felformulerad vid ”%s”" +msgstr "operand till %<-fopenacc-dim%> är felformulerad vid %qs" #: omp-offload.c:1217 #, gcc-internal-format @@ -22013,10 +21990,9 @@ msgid "function symbol is not function" msgstr "funktionssymbol som inte är en funktion" #: symtab.c:1005 -#, fuzzy, gcc-internal-format -#| msgid "inconsistent `ifunc' attribute" +#, gcc-internal-format msgid "inconsistent % attribute" -msgstr "inkonsistent ”ifunc”-attribut" +msgstr "inkonsistent %-attribut" #: symtab.c:1013 #, gcc-internal-format @@ -22204,16 +22180,14 @@ msgid "renaming .rpo file: %m" msgstr "byter namn på .rpo-fil: %m" #: tlink.c:493 -#, fuzzy, gcc-internal-format -#| msgid "repository file '%s' does not contain command-line arguments" +#, gcc-internal-format msgid "repository file %qs does not contain command-line arguments" -msgstr "lagerfil ”%s” innehåller inte kommandoradsargument" +msgstr "förrådsfilen %qs innehåller inte kommandoradsargument" #: tlink.c:619 -#, fuzzy, gcc-internal-format -#| msgid "'%s' was assigned to '%s', but was not defined during recompilation, or vice versa" +#, gcc-internal-format msgid "%qs was assigned to %qs, but was not defined during recompilation, or vice versa" -msgstr "”%s” tilldelades till ”%s”, men definierades inte under omkompilering, eller vice versa" +msgstr "%qs tilldelades till %qs, men definierades inte under omkompilering, eller vice versa" #: tlink.c:856 #, gcc-internal-format, gfc-internal-format @@ -23429,10 +23403,9 @@ msgid "%s from %s called in %s" msgstr "%s från %s anropad i %s" #: tree-profile.c:635 -#, fuzzy, gcc-internal-format -#| msgid "invalid regular expression '%s' in %<%s%>" +#, gcc-internal-format msgid "invalid regular expression %qs in %qs" -msgstr "ogiltigt reguljärt uttryck ”%s” i %<%s%>" +msgstr "ogiltigt reguljärt uttryck %qs i %qs" #: tree-profile.c:725 #, gcc-internal-format @@ -24258,10 +24231,9 @@ msgid "register name given for non-register variable %q+D" msgstr "registernamn angivet icke-registervariabel %q+D" #: varasm.c:1881 -#, fuzzy, gcc-internal-format -#| msgid "Patchable function entry > size" +#, gcc-internal-format msgid "patchable function entry > size" -msgstr "Patchbar funktionsingång > storlek" +msgstr "patchbar funktionsingång > storlek" #: varasm.c:2081 #, gcc-internal-format @@ -24531,10 +24503,9 @@ msgid "%qE attribute ignored due to conflict with attribute %qs" msgstr "attributet %qE ignoreras eftersom det står i konflikt med attributet %qs" #: c-family/c-attribs.c:1074 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute ignored. Use -fcf-protection option to enable it" +#, gcc-internal-format msgid "%qE attribute ignored. Use %<-fcf-protection%> option to enable it" -msgstr "attributet %qE ignorerat. Använd flaggan -fcf-protection för att aktivera det" +msgstr "attributet %qE ignorerat. Använd flaggan %<-fcf-protection%> för att aktivera det" #: c-family/c-attribs.c:1114 c-family/c-attribs.c:1120 #: c-family/c-attribs.c:3862 c-family/c-attribs.c:3897 @@ -24750,40 +24721,34 @@ msgid "%+qD declared ifunc after being used" msgstr "%+qD deklarerad ifunc efter att ha använts" #: c-family/c-attribs.c:2383 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument not a string constant" +#, gcc-internal-format msgid "%qE attribute argument cannot be a string" -msgstr "argument till attribut %qE är inte en strängkonstant" +msgstr "argument till attribut %qE får inte vara en sträng" #: c-family/c-attribs.c:2396 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument not a string constant" +#, gcc-internal-format msgid "%qE attribute argument cannot be a constant arithmetic expression" -msgstr "argument till attribut %qE är inte en strängkonstant" +msgstr "argument till attribut %qE får inte vara ett konstant aritmetiskt uttryck" #: c-family/c-attribs.c:2407 -#, fuzzy, gcc-internal-format -#| msgid "attribute ignored in declaration of %q#T" +#, gcc-internal-format msgid "%qE attribute ignored on a redeclaration of the referenced symbol" -msgstr "attribut ignoreras i deklaration av %q#T" +msgstr "attributet %qE ignoreras vid en omdeklaration av den refererade symbolen" #: c-family/c-attribs.c:2458 -#, fuzzy, gcc-internal-format -#| msgid "%qE redeclared as different kind of symbol" +#, gcc-internal-format msgid "%qE attribute ignored on a declaration of a different kind than referenced symbol" -msgstr "%qE omdeklarerad som en annan sorts symbol" +msgstr "attributet %qE ignoreras vid en deklareration av en annan sort än den referade symbolen" #: c-family/c-attribs.c:2463 -#, fuzzy, gcc-internal-format -#| msgid "local member %q#D declared here" +#, gcc-internal-format msgid "symbol %qD referenced by %qD declared here" -msgstr "den lokala medlemmen %q#D är deklarerad här" +msgstr "symbolen %qD refererad av %qD är deklarerad här" #: c-family/c-attribs.c:2510 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute doesn't apply to functions" +#, gcc-internal-format msgid "%qE attribute must apply to a declaration" -msgstr "attributet %qE är inte tillämpligt på funktioner" +msgstr "attributet %qE måste tillämpas på en deklaration" #: c-family/c-attribs.c:2569 #, gcc-internal-format @@ -24836,22 +24801,19 @@ msgid "%qD was declared %qs which implies default visibility" msgstr "%qD deklarerades %qs vilket medför standardsynlighet" #: c-family/c-attribs.c:2721 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute ignored because %qT is already defined" +#, gcc-internal-format msgid "%qE attribute ignored because %qD is not a variable" -msgstr "attributet %qE ignorerat för att %qT redan är definierat" +msgstr "attributet %qE ignorerat för att %qD inte är en variabel" #: c-family/c-attribs.c:2729 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute ignored because %qT is already defined" +#, gcc-internal-format msgid "%qE attribute ignored because %qD does not have thread storage duration" -msgstr "attributet %qE ignorerat för att %qT redan är definierat" +msgstr "attributet %qE ignorerat för att %qD inte har trådlagringsvaraktighet" #: c-family/c-attribs.c:2738 -#, fuzzy, gcc-internal-format -#| msgid "attribute %qE argument not a string" +#, gcc-internal-format msgid "%qE argument not a string" -msgstr "argument till attribut %qE är inte en sträng" +msgstr "argument %qE är inte en sträng" #: c-family/c-attribs.c:2751 #, gcc-internal-format @@ -24866,28 +24828,24 @@ msgstr "attributet %qE är bara tillämpligt på funktioner" #: c-family/c-attribs.c:2829 c-family/c-attribs.c:2870 #: c-family/c-attribs.c:2894 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute on function returning %" +#, gcc-internal-format msgid "%qE attribute ignored on a function returning %qT" -msgstr "attributet %qE på en funktion som returnerar %" +msgstr "attributet %qE ignoreras på en funktion som returnerar %qT" #: c-family/c-attribs.c:2913 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument not an integer constant" +#, gcc-internal-format msgid "%qE attribute %E is not an integer constant" -msgstr "argumentet till attribut %qE är inte en heltalskonstant" +msgstr "%qE attribut %E är inte en heltalskonstant" #: c-family/c-attribs.c:2925 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument not an integer constant" +#, gcc-internal-format msgid "%qE attribute argument %E is not a power of 2" -msgstr "argumentet till attribut %qE är inte en heltalskonstant" +msgstr "argument %2$E till attributet %1$qE är inte en potens av 2" #: c-family/c-attribs.c:2938 -#, fuzzy, gcc-internal-format -#| msgid "argument %i in the range [%E, %E]" +#, gcc-internal-format msgid "%qE attribute argument %E is not in the range [0, %E)" -msgstr "argument %i i intervallet [%E, %E]" +msgstr "argumentet %2$E till attributet %1$qE är inte i intervallet [0, %3$E)" #: c-family/c-attribs.c:3019 #, gcc-internal-format @@ -24950,16 +24908,14 @@ msgid "invalid vector type for attribute %qE" msgstr "ogiltig vektortyp för attributet %qE" #: c-family/c-attribs.c:3521 c-family/c-attribs.c:3525 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument value %qE is not an integer constant" +#, gcc-internal-format msgid "%qE attribute argument value %qE is negative" -msgstr "attributet %qE argumentet %qE värde är inte en heltalskonstant" +msgstr "värdet på argumentet %2$qE till attributet %1$qE är negativt" #: c-family/c-attribs.c:3538 c-family/c-attribs.c:3542 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument value %qE refers to parameter type %qT" +#, gcc-internal-format msgid "%qE attribute argument value %qE exceeds %wu" -msgstr "attributet %qE argumentvärdet %qE refererar till parametertypen %qT" +msgstr "värdet på argument %2$qE till attributet %1$qE överskrider %3$wu" #: c-family/c-attribs.c:3550 ada/gcc-interface/utils.c:3969 #, gcc-internal-format @@ -25037,40 +24993,34 @@ msgid "%qE attribute is only valid on % type" msgstr "attributet %qE är bara tillämpligt på %-typer" #: c-family/c-attribs.c:4045 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute argument value %qE is not an integer constant" +#, gcc-internal-format msgid "%qE attribute argument %qE is not an integer constant" -msgstr "attributet %qE argumentet %qE värde är inte en heltalskonstant" +msgstr "argumentet %2$qE till attributet %1$qE är inte en heltalskonstant" #: c-family/c-attribs.c:4066 -#, fuzzy, gcc-internal-format -#| msgid "unknown property attribute" +#, gcc-internal-format msgid "unknown attribute %qE" -msgstr "okänt egenskapsattribut" +msgstr "okänt attribut %qE" #: c-family/c-attribs.c:4093 -#, fuzzy, gcc-internal-format -#| msgid "invalid abstract type %qT for %qE" +#, gcc-internal-format msgid "invalid operand type %qT for %qs" -msgstr "ogiltigt abstrakt typ %qT för %qE" +msgstr "felaktig operandtyp %qT för %qs" #: c-family/c-attribs.c:4197 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute is not supported for R8C target" +#, gcc-internal-format msgid "%qs attribute not supported for %qT in %<__builtin_has_attribute%>" -msgstr "attributet %qE stödjs inte för denna målarkitekturen R8C" +msgstr "attributet %qs stödjs inte för %qT i %<__builtin_has_attribute%>" #: c-family/c-attribs.c:4199 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute is not supported for R8C target" +#, gcc-internal-format msgid "%qs attribute not supported for %qE in %<__builtin_has_attribute%>" -msgstr "attributet %qE stödjs inte för denna målarkitekturen R8C" +msgstr "attributet %qs stödjs inte för %qE i %<__builtin_has_attribute%>" #: c-family/c-attribs.c:4376 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute is not supported on this platform" +#, gcc-internal-format msgid "%qs attribute not supported in %<__builtin_has_attribute%>" -msgstr "attributet %qE stödjs inte på denna plattform" +msgstr "attributet %qs stödjs inte i %<__builtin_has_attribute%>" #: c-family/c-common.c:738 #, gcc-internal-format @@ -25078,10 +25028,9 @@ msgid "%qD is not defined outside of function scope" msgstr "%qD är inte definierad utanför funktionsnivå" #: c-family/c-common.c:783 -#, fuzzy, gcc-internal-format -#| msgid "size of array is too large" +#, gcc-internal-format msgid "size of string literal is too large" -msgstr "storleken på vektorn är för stor" +msgstr "storleken på strängliteralen är för stor" #: c-family/c-common.c:806 #, gcc-internal-format @@ -25089,58 +25038,49 @@ msgid "string length %qd is greater than the length %qd ISO C%d compilers are re msgstr "stränglängden %qd är större än den längden %qd som ISO C%d-kompilatorer skall stödja" #: c-family/c-common.c:979 -#, fuzzy, gcc-internal-format -#| msgid "use -flax-vector-conversions to permit conversions between vectors with differing element types or numbers of subparts" +#, gcc-internal-format msgid "use %<-flax-vector-conversions%> to permit conversions between vectors with differing element types or numbers of subparts" -msgstr "använd -flax-vector-conversions för att tillåta konvertering mellan vektorer med olika elementtyper eller antal underdelar" +msgstr "använd %<-flax-vector-conversions%> för att tillåta konvertering mellan vektorer med olika elementtyper eller antal underdelar" #: c-family/c-common.c:1019 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle last argument must be an integer vector" +#, gcc-internal-format msgid "%<__builtin_shuffle%> last argument must be an integer vector" -msgstr "sista argumentet till __builtin_shuffle måste vara en heltalsvektor" +msgstr "sista argumentet till %<__builtin_shuffle%> måste vara en heltalsvektor" #: c-family/c-common.c:1028 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle arguments must be vectors" +#, gcc-internal-format msgid "%<__builtin_shuffle%> arguments must be vectors" -msgstr "argumenten till __builtin_shuffle måste vara vektorer" +msgstr "argumenten till %<__builtin_shuffle%> måste vara vektorer" #: c-family/c-common.c:1035 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle argument vectors must be of the same type" +#, gcc-internal-format msgid "%<__builtin_shuffle%> argument vectors must be of the same type" -msgstr "argumentvektorerna till __builtin_shuffle måste ha samma typ" +msgstr "argumentvektorerna till %<__builtin_shuffle%> måste ha samma typ" #: c-family/c-common.c:1046 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle number of elements of the argument vector(s) and the mask vector should be the same" +#, gcc-internal-format msgid "%<__builtin_shuffle%> number of elements of the argument vector(s) and the mask vector should be the same" -msgstr "__builtin_shuffle antalet element i argumentvektorn och maskvektorn skall vara samma" +msgstr "%<__builtin_shuffle%> antalet element i argumentvektorn och maskvektorn skall vara samma" #: c-family/c-common.c:1056 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle argument vector(s) inner type must have the same size as inner type of the mask" +#, gcc-internal-format msgid "%<__builtin_shuffle%> argument vector(s) inner type must have the same size as inner type of the mask" -msgstr "__builtin_shuffle argumentvektorns inre typ måste ha samma storlek som den inre typen för masken" +msgstr "%<__builtin_shuffle%> argumentvektorns inre typ måste ha samma storlek som den inre typen för masken" #: c-family/c-common.c:1104 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle last argument must be an integer vector" +#, gcc-internal-format msgid "%<__builtin_convertvector%> first argument must be an integer or floating vector" -msgstr "sista argumentet till __builtin_shuffle måste vara en heltalsvektor" +msgstr "första argumentet till %<__builtin_convertvector%> måste vara en heltals- eller flyttalsvektor" #: c-family/c-common.c:1112 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle last argument must be an integer vector" +#, gcc-internal-format msgid "%<__builtin_convertvector%> second argument must be an integer or floating vector type" -msgstr "sista argumentet till __builtin_shuffle måste vara en heltalsvektor" +msgstr "andra argumentet till %<__builtin_convertvector%> måste vara en heltals- eller flyttalsvektortyp" #: c-family/c-common.c:1121 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_shuffle number of elements of the argument vector(s) and the mask vector should be the same" +#, gcc-internal-format msgid "%<__builtin_convertvector%> number of elements of the first argument vector and the second argument vector type should be the same" -msgstr "__builtin_shuffle antalet element i argumentvektorn och maskvektorn skall vara samma" +msgstr "antalet element i den första argumentvektorn och den andra argumentvektorn till %<__builtin_convertvector%> skall vara samma" #: c-family/c-common.c:1360 c-family/c-warn.c:1291 #, gcc-internal-format @@ -25383,22 +25323,19 @@ msgid "requested alignment is not an integer constant" msgstr "begärd minnesjustering är inte en heltalskonstant" #: c-family/c-common.c:5285 c-family/c-common.c:5295 -#, fuzzy, gcc-internal-format -#| msgid "requested alignment is not a positive power of 2" +#, gcc-internal-format msgid "requested alignment %qE is not a positive power of 2" -msgstr "begärd minnesjustering är inte en positiv potens av 2" +msgstr "begärd minnesjustering %qE är inte en positiv potens av 2" #: c-family/c-common.c:5305 -#, fuzzy, gcc-internal-format -#| msgid "requested alignment %d is larger than %d" +#, gcc-internal-format msgid "requested alignment %qE exceeds object file maximum %u" -msgstr "begärd minnesjustering %d är större än %d" +msgstr "begärd minnesjustering %qE överskrider objektfilsmaximum %u" #: c-family/c-common.c:5313 -#, fuzzy, gcc-internal-format -#| msgid "requested alignment %d is larger than %d" +#, gcc-internal-format msgid "requested alignment %qE exceeds maximum %u" -msgstr "begärd minnesjustering %d är större än %d" +msgstr "begärd minnesjustering %qE överskrider maximum %u" #: c-family/c-common.c:5461 #, gcc-internal-format @@ -25543,16 +25480,14 @@ msgid "operand type %qT is incompatible with argument %d of %qE" msgstr "operandtypen %qT är inkompatibel med argument %d till %qE" #: c-family/c-common.c:6741 -#, fuzzy, gcc-internal-format -#| msgid "passing argument %d of %qE makes pointer from integer without a cast" +#, gcc-internal-format msgid "expecting argument of type pointer or of type integer for argument 1" -msgstr "att skicka argument %d till %qE skapar pekare av ett heltal utan typkonvertering" +msgstr "argument av typen pekare eller av typen heltal förväntades som argument 1" #: c-family/c-common.c:6755 -#, fuzzy, gcc-internal-format -#| msgid "left argument must be a slice" +#, gcc-internal-format msgid "both arguments must be compatible" -msgstr "vänstra argumentet måste vara en skiva" +msgstr "båda argumenten måste vara kompatibla" #: c-family/c-common.c:6963 #, gcc-internal-format @@ -25627,52 +25562,44 @@ msgid "built-in function %qE must be directly called" msgstr "inbyggd funktion %qE måste anropas direkt" #: c-family/c-common.c:8252 -#, fuzzy, gcc-internal-format -#| msgid "size of array %qD is not an integral constant-expression" +#, gcc-internal-format msgid "size of array %qE is not a constant expression" -msgstr "storlek på vektorn %qD är inte ett konstantuttryck av heltalstyp" +msgstr "storlek på vektorn %qE är inte ett konstant uttryck" #: c-family/c-common.c:8255 -#, fuzzy, gcc-internal-format -#| msgid "size of array is not an integral constant-expression" +#, gcc-internal-format msgid "size of array is not a constant expression" -msgstr "storlek på vektorn är inte ett konstantuttryck av heltalstyp" +msgstr "storlek på vektorn är inte ett konstant uttryck" #: c-family/c-common.c:8259 -#, fuzzy, gcc-internal-format -#| msgid "size of array %qE is negative" +#, gcc-internal-format msgid "size %qE of array %qE is negative" -msgstr "storleken på vektorn %qE är negativ" +msgstr "storleken %qE på vektorn %qE är negativ" #: c-family/c-common.c:8262 -#, fuzzy, gcc-internal-format -#| msgid "size of array is negative" +#, gcc-internal-format msgid "size %qE of array is negative" -msgstr "storleken på vektorn är negativ" +msgstr "storleken %qE på vektorn är negativ" #: c-family/c-common.c:8267 -#, fuzzy, gcc-internal-format -#| msgid "specified bound %wu exceeds maximum object size %wu" +#, gcc-internal-format msgid "size %qE of array %qE exceeds maximum object size %qE" -msgstr "angiven gräns på %wu överskrider maximal objektstorlek %wu" +msgstr "storleken %qE på vektorn %qE överskrider maximal objektstorlek %qE" #: c-family/c-common.c:8270 -#, fuzzy, gcc-internal-format -#| msgid "specified bound %wu exceeds maximum object size %wu" +#, gcc-internal-format msgid "size %qE of array exceeds maximum object size %qE" -msgstr "angiven gräns på %wu överskrider maximal objektstorlek %wu" +msgstr "storleken %qE på vektorn överskrider maximal objektstorlek %qE" #: c-family/c-common.c:8275 -#, fuzzy, gcc-internal-format -#| msgid "specified bound %wu exceeds maximum object size %wu" +#, gcc-internal-format msgid "size of array %qE exceeds maximum object size %qE" -msgstr "angiven gräns på %wu överskrider maximal objektstorlek %wu" +msgstr "storleken på vektorn %qE överskrider maximal objektstorlek %qE" #: c-family/c-common.c:8278 -#, fuzzy, gcc-internal-format -#| msgid "specified bound %wu exceeds maximum object size %wu" +#, gcc-internal-format msgid "size of array exceeds maximum object size %qE" -msgstr "angiven gräns på %wu överskrider maximal objektstorlek %wu" +msgstr "sotrleken på vektorn överskrider maximal objektstorlek %qE" #: c-family/c-common.c:8349 #, gcc-internal-format @@ -25800,10 +25727,9 @@ msgid "format is a wide character string" msgstr "formatet är en sträng breda tecken" #: c-family/c-format.c:1539 -#, fuzzy, gcc-internal-format -#| msgid "format string argument is not a string type" +#, gcc-internal-format msgid "format string is not an array of type %qs" -msgstr "argument för formatsträng är inte en strängtyp" +msgstr "formatsträngen är inte en vektor av typen %qs" #: c-family/c-format.c:1542 #, gcc-internal-format @@ -26036,10 +25962,9 @@ msgid "% is not defined as a type" msgstr "% är inte definierad som en typ" #: c-family/c-format.c:3927 -#, fuzzy, gcc-internal-format -#| msgid "% is not defined as a type" +#, gcc-internal-format msgid "%qs is not defined as a type" -msgstr "% är inte definierad som en typ" +msgstr "%qs är inte definierat som en typ" #: c-family/c-format.c:3955 #, gcc-internal-format @@ -26067,10 +25992,9 @@ msgid "strftime formats cannot format arguments" msgstr "strftime-format kan inte formatera argument" #: c-family/c-indentation.c:67 -#, fuzzy, gcc-internal-format -#| msgid "-Wmisleading-indentation is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers" +#, gcc-internal-format msgid "%<-Wmisleading-indentation%> is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers" -msgstr "-Wmisleading-indentation är avaktiverad härifrån och framåt, eftersom kolumnspårning avaktiverades på grund av storleken på kod/huvuden." +msgstr "%<-Wmisleading-indentation%> är avaktiverad härifrån och framåt, eftersom kolumnspårning avaktiverades på grund av storleken på kod/huvuden." #: c-family/c-indentation.c:614 #, gcc-internal-format @@ -26204,22 +26128,19 @@ msgid "% qualified % expression" msgstr "%-kvalificerat uttryck %" #: c-family/c-omp.c:479 -#, fuzzy, gcc-internal-format -#| msgid "more than one % clause on an % construct" +#, gcc-internal-format msgid "more than one locator in % clause on % construct" -msgstr "mer än en %-klausul på en %-konstruktion" +msgstr "mer än lokaliserare i %-klausul på en %-konstruktion" #: c-family/c-omp.c:485 -#, fuzzy, gcc-internal-format -#| msgid "% clause specified together with % clauses on the same construct" +#, gcc-internal-format msgid "% dependence type specified in % clause on % construct" -msgstr "%-klausul angiven tillsammans med %-klausuler på samma konstruktion" +msgstr "%-beroendetyp angiven i %-klausul på en %-konstruktion" #: c-family/c-omp.c:507 -#, fuzzy, gcc-internal-format -#| msgid "% clause with parameter may not be specified on %qs construct" +#, gcc-internal-format msgid "% modifier may not be specified on % construct" -msgstr "en %-klausul med parameter får inte anges på en %qs-konstruktion" +msgstr "en %-modifierare får inte anges på en %-konstruktion" #: c-family/c-omp.c:721 cp/semantics.c:8688 #, gcc-internal-format @@ -26292,16 +26213,14 @@ msgid "%qD is not an function argument" msgstr "%qD är inte en funktionsmall" #: c-family/c-opts.c:327 -#, fuzzy, gcc-internal-format -#| msgid "-I- specified twice" +#, gcc-internal-format msgid "%<-I-%> specified twice" -msgstr "-I- angiven två gånger" +msgstr "%<-I-%> angivet två gånger" #: c-family/c-opts.c:330 -#, fuzzy, gcc-internal-format -#| msgid "obsolete option -I- used, please use -iquote instead" +#, gcc-internal-format msgid "obsolete option %<-I-%> used, please use %<-iquote%> instead" -msgstr "föråldrad flagga -I- använd, använd -iquote istället" +msgstr "föråldrad flagga %<-I-%> använd, använd %<-iquote%> istället" #: c-family/c-opts.c:409 #, gcc-internal-format @@ -26314,52 +26233,44 @@ msgid "output filename specified twice" msgstr "utdatafilnamn angivet två gånger" #: c-family/c-opts.c:800 -#, fuzzy, gcc-internal-format -#| msgid "-fexcess-precision=standard for C++" +#, gcc-internal-format msgid "%<-fexcess-precision=standard%> for C++" -msgstr "-fexcess-precision=standard för C++" +msgstr "%<-fexcess-precision=standard%> för C++" #: c-family/c-opts.c:835 -#, fuzzy, gcc-internal-format -#| msgid "-fno-gnu89-inline is only supported in GNU99 or C99 mode" +#, gcc-internal-format msgid "%<-fno-gnu89-inline%> is only supported in GNU99 or C99 mode" -msgstr "-fno-gnu89-inline stödjs endast i GNU99- C99-läge" +msgstr "%<-fno-gnu89-inline%> stödjs endast i GNU99- C99-läge" #: c-family/c-opts.c:881 -#, fuzzy, gcc-internal-format -#| msgid "-Wformat-y2k ignored without -Wformat" +#, gcc-internal-format msgid "%<-Wformat-y2k%> ignored without %<-Wformat%>" -msgstr "-Wformat-y2k ignorerad utan -Wformat" +msgstr "%<-Wformat-y2k%> ignorerad utan %<-Wformat%>" #: c-family/c-opts.c:883 -#, fuzzy, gcc-internal-format -#| msgid "-Wformat-extra-args ignored without -Wformat" +#, gcc-internal-format msgid "%<-Wformat-extra-args%> ignored without %<-Wformat%>" -msgstr "-Wformat-extra-args ignorerad utan -Wformat" +msgstr "%<-Wformat-extra-args%> ignorerad utan %<-Wformat%>" #: c-family/c-opts.c:885 -#, fuzzy, gcc-internal-format -#| msgid "-Wformat-zero-length ignored without -Wformat" +#, gcc-internal-format msgid "%<-Wformat-zero-length%> ignored without %<-Wformat%>" -msgstr "-Wformat-zero-length ignoreras utan -Wformat" +msgstr "%<-Wformat-zero-length%> ignoreras utan %<-Wformat%>" #: c-family/c-opts.c:887 -#, fuzzy, gcc-internal-format -#| msgid "-Wformat-nonliteral ignored without -Wformat" +#, gcc-internal-format msgid "%<-Wformat-nonliteral%> ignored without %<-Wformat%>" -msgstr "-Wformat-nonliteral ignorerad utan -Wformat" +msgstr "%<-Wformat-nonliteral%> ignorerad utan %<-Wformat%>" #: c-family/c-opts.c:889 -#, fuzzy, gcc-internal-format -#| msgid "-Wformat-contains-nul ignored without -Wformat" +#, gcc-internal-format msgid "%<-Wformat-contains-nul%> ignored without %<-Wformat%>" -msgstr "-Wformat-contains-nul ignoreras utan -Wformat" +msgstr "%<-Wformat-contains-nul%> ignoreras utan %<-Wformat%>" #: c-family/c-opts.c:891 -#, fuzzy, gcc-internal-format -#| msgid "-Wformat-security ignored without -Wformat" +#, gcc-internal-format msgid "%<-Wformat-security%> ignored without %<-Wformat%>" -msgstr "-Wformat-security ignorerad utan -Wformat" +msgstr "%<-Wformat-security%> ignorerad utan %<-Wformat%>" #: c-family/c-opts.c:921 #, gcc-internal-format @@ -26367,22 +26278,19 @@ msgid "%<-fabi-compat-version=1%> is not supported, using =2" msgstr "%<-fabi-compat-version=1%> stödjs inte, använder =2" #: c-family/c-opts.c:948 -#, fuzzy, gcc-internal-format -#| msgid "-Wabi won't warn about anything" +#, gcc-internal-format msgid "%<-Wabi%> won%'t warn about anything" -msgstr "-Wabi kommer inte att varna om något" +msgstr "%<-Wabi%> kommer inte att varna om något" #: c-family/c-opts.c:950 -#, fuzzy, gcc-internal-format -#| msgid "-Wabi warns about differences from the most up-to-date ABI, which is also used by default" +#, gcc-internal-format msgid "%<-Wabi%> warns about differences from the most up-to-date ABI, which is also used by default" -msgstr "-Wabi varnar om skillnader mot den mest aktuella ABI:et, vilket även används som standard" +msgstr "%<-Wabi%> varnar om skillnader mot den mest aktuella ABI:et, vilket även används som standard" #: c-family/c-opts.c:953 -#, fuzzy, gcc-internal-format -#| msgid "use e.g. -Wabi=11 to warn about changes from GCC 7" +#, gcc-internal-format msgid "use e.g. %<-Wabi=11%> to warn about changes from GCC 7" -msgstr "använd t.ex. -Wabi=11 för att varna om ändringar sedan GCC 7" +msgstr "använd t.ex. %<-Wabi=11%> för att varna om ändringar sedan GCC 7" #: c-family/c-opts.c:1011 #, gcc-internal-format @@ -26420,28 +26328,24 @@ msgid "when writing output to %s: %m" msgstr "när utdata skrevs till %s: %m" #: c-family/c-opts.c:1308 -#, fuzzy, gcc-internal-format -#| msgid "to generate dependencies you must specify either -M or -MM" +#, gcc-internal-format msgid "to generate dependencies you must specify either %<-M%> or %<-MM%>" -msgstr "för att generera beroenden måste du ange antingen -M eller -MM" +msgstr "för att generera beroenden måste du ange antingen %<-M%> eller %<-MM%>" #: c-family/c-opts.c:1332 -#, fuzzy, gcc-internal-format -#| msgid "-MG may only be used with -M or -MM" +#, gcc-internal-format msgid "%<-MG%> may only be used with %<-M%> or %<-MM%>" -msgstr "-MG kan endast används med -M eller -MM" +msgstr "%<-MG%> kan endast används med %<-M%> eller %<-MM%>" #: c-family/c-opts.c:1365 -#, fuzzy, gcc-internal-format -#| msgid "-fdirectives-only is incompatible with -Wunused_macros" +#, gcc-internal-format msgid "%<-fdirectives-only%> is incompatible with %<-Wunused-macros%>" -msgstr "-fdirectives-only är inkompatibel med -Wunused_macros" +msgstr "%<-fdirectives-only%> är inkompatibel med %<-Wunused_macros%>" #: c-family/c-opts.c:1368 -#, fuzzy, gcc-internal-format -#| msgid "-fdirectives-only is incompatible with -traditional" +#, gcc-internal-format msgid "%<-fdirectives-only%> is incompatible with %<-traditional%>" -msgstr "-fdirectives-only är inkompatibel med -traditional" +msgstr "%<-fdirectives-only%> är inkompatibel med %<-traditional%>" #: c-family/c-opts.c:1553 #, gcc-internal-format @@ -26469,10 +26373,9 @@ msgid "can%'t read %s: %m" msgstr "kan inte läsa %s: %m" #: c-family/c-pch.c:409 -#, fuzzy, gcc-internal-format -#| msgid "pch_preprocess pragma should only be used with -fpreprocessed" +#, gcc-internal-format msgid "pch_preprocess pragma should only be used with %<-fpreprocessed%>" -msgstr "pragmat pch_preprocess skall bara användas med -fpreprocessed" +msgstr "pragmat pch_preprocess skall bara användas med %<-fpreprocessed%>" #: c-family/c-pch.c:411 #, gcc-internal-format @@ -26485,10 +26388,9 @@ msgid "%s: couldn%'t open PCH file: %m" msgstr "%s: kunde inte öppna PCH-fil: %m" #: c-family/c-pch.c:422 -#, fuzzy, gcc-internal-format -#| msgid "use -Winvalid-pch for more information" +#, gcc-internal-format msgid "use %<-Winvalid-pch%> for more information" -msgstr "använd -Winvalid-pch för mer information" +msgstr "använd %<-Winvalid-pch%> för mer information" #: c-family/c-pch.c:423 #, gcc-internal-format, gfc-internal-format @@ -26541,10 +26443,9 @@ msgid "junk at end of %<#pragma pack%>" msgstr "skräp vid slutet av %<#pragma pack%>" #: c-family/c-pragma.c:199 -#, fuzzy, gcc-internal-format -#| msgid "#pragma pack has no effect with -fpack-struct - ignored" +#, gcc-internal-format msgid "#pragma pack has no effect with %<-fpack-struct%> - ignored" -msgstr "#pragma pack har ingen effekt med -fpack-struct - ignoreras" +msgstr "#pragma pack har ingen effekt med %<-fpack-struct%> — ignoreras" #: c-family/c-pragma.c:220 #, gcc-internal-format, gfc-internal-format @@ -27509,16 +27410,14 @@ msgid "optimization attribute on %qD follows definition but the attribute doesn% msgstr "optimeringsattributet på %qD följer på en definition men attributet stämmer inte" #: c-family/c-warn.c:2362 -#, fuzzy, gcc-internal-format -#| msgid "inline declaration of %qD follows declaration with attribute %qs" +#, gcc-internal-format msgid "inline declaration of %qD follows declaration with attribute %" -msgstr "inline-deklaration av %qD följer på deklaration med attributet %qs" +msgstr "inline-deklaration av %qD följer på deklaration med attributet %" #: c-family/c-warn.c:2367 -#, fuzzy, gcc-internal-format -#| msgid "declaration of %q+D with attribute %qs follows inline declaration" +#, gcc-internal-format msgid "declaration of %q+D with attribute % follows inline declaration" -msgstr "deklaration av %q+D med attributet %qs följer på inline-deklaration" +msgstr "deklaration av %q+D med attributet % följer på inline-deklaration" #: c-family/c-warn.c:2416 #, gcc-internal-format @@ -27587,22 +27486,19 @@ msgid "only values 12 (4 KB) and 16 (64 KB) are supported for guard size. Given msgstr "endast värdena 12 (4 kB) och 16 (64 kB) stödjs som vaktstorlek. Det givna värdet %d (%llu kB) är utanför intervallet" #: common/config/aarch64/aarch64-common.c:539 config/aarch64/aarch64.c:11719 -#, fuzzy, gcc-internal-format -#| msgid "unknown value %qs for -mcpu" +#, gcc-internal-format msgid "unknown value %qs for %<-mcpu%>" -msgstr "okänt värde %qs till -mcpu" +msgstr "okänt värde %qs till %<-mcpu%>" #: common/config/alpha/alpha-common.c:75 -#, fuzzy, gcc-internal-format -#| msgid "bad value %qs for -mtls-size switch" +#, gcc-internal-format msgid "bad value %qs for %<-mtls-size%> switch" -msgstr "felaktigt värde %qs till flaggan -mtls-size" +msgstr "felaktigt värde %qs till flaggan %<-mtls-size%>" #: common/config/arc/arc-common.c:87 -#, fuzzy, gcc-internal-format -#| msgid "multiple -mcpu= options specified." +#, gcc-internal-format msgid "multiple %<-mcpu=%> options specified." -msgstr "flera flaggor -mcpu= angivna." +msgstr "flera %<-mcpu=%>-flaggor angivna." #: common/config/arc/arc-common.c:93 #, gcc-internal-format @@ -27638,10 +27534,9 @@ msgid "unrecognized %s target: %s" msgstr "okänt %s-mål: %s" #: common/config/arm/arm-common.c:461 -#, fuzzy, gcc-internal-format -#| msgid "unrecognized -mfpu target: %s" +#, gcc-internal-format msgid "unrecognized %<-mfpu%> target: %s" -msgstr "okänt -mfpu-mål: %s" +msgstr "okänt %<-mfpu%>-mål: %s" #: common/config/arm/arm-common.c:489 #, gcc-internal-format @@ -27679,64 +27574,54 @@ msgid "unrecognized operand to %%:asm_auto_mfpu" msgstr "okänd operand till %%:asm_auto_mfpu" #: common/config/bfin/bfin-common.c:304 common/config/m68k/m68k-common.c:60 -#, fuzzy, gcc-internal-format -#| msgid "-mshared-library-id=%s is not between 0 and %d" +#, gcc-internal-format msgid "%<-mshared-library-id=%s%> is not between 0 and %d" -msgstr "-mshared-library-id=%s är inte mellan 0 och %d" +msgstr "%<-mshared-library-id=%s%> är inte mellan 0 och %d" #: common/config/bfin/bfin-common.c:323 -#, fuzzy, gcc-internal-format -#| msgid "-mcpu=%s is not valid" +#, gcc-internal-format msgid "%<-mcpu=%s%> is not valid" -msgstr "-mcpu=%s är inte giltigt" +msgstr "%<-mcpu=%s%> är inte giltigt" #: common/config/bfin/bfin-common.c:359 -#, fuzzy, gcc-internal-format -#| msgid "-mcpu=%s has invalid silicon revision" +#, gcc-internal-format msgid "%<-mcpu=%s%> has invalid silicon revision" -msgstr "-mcpu=%s har ogiltig kiselversion" +msgstr "%<-mcpu=%s%> har ogiltig kiselversion" #: common/config/i386/i386-common.c:1340 -#, fuzzy, gcc-internal-format -#| msgid "-malign-loops is obsolete, use -falign-loops" +#, gcc-internal-format msgid "%<-malign-loops%> is obsolete, use %<-falign-loops%>" -msgstr "-malign-loops är föråldrat, använd -falign-loops" +msgstr "%<-malign-loops%> är föråldrat, använd %<-falign-loops%>" #: common/config/i386/i386-common.c:1343 -#, fuzzy, gcc-internal-format -#| msgid "-malign-loops=%d is not between 0 and %d" +#, gcc-internal-format msgid "%<-malign-loops=%d%> is not between 0 and %d" -msgstr "-malign-loops=%d är inte mellan 0 och %d" +msgstr "%<-malign-loops=%d%> är inte mellan 0 och %d" #: common/config/i386/i386-common.c:1350 -#, fuzzy, gcc-internal-format -#| msgid "-malign-jumps is obsolete, use -falign-jumps" +#, gcc-internal-format msgid "%<-malign-jumps%> is obsolete, use %<-falign-jumps%>" -msgstr "-malign-jumps är föråldrat, använd -falign-jumps" +msgstr "%<-malign-jumps%> är föråldrat, använd %<-falign-jumps%>" #: common/config/i386/i386-common.c:1353 -#, fuzzy, gcc-internal-format -#| msgid "-malign-jumps=%d is not between 0 and %d" +#, gcc-internal-format msgid "%<-malign-jumps=%d%> is not between 0 and %d" -msgstr "-malign-jumps=%d är inte mellan 0 och %d" +msgstr "%<-malign-jumps=%d%> är inte mellan 0 och %d" #: common/config/i386/i386-common.c:1361 -#, fuzzy, gcc-internal-format -#| msgid "-malign-functions is obsolete, use -falign-functions" +#, gcc-internal-format msgid "%<-malign-functions%> is obsolete, use %<-falign-functions%>" -msgstr "-malign-functions är föråldrat, använd -falign-functions" +msgstr "%<-malign-functions%> är föråldrat, använd %<-falign-functions%>" #: common/config/i386/i386-common.c:1364 -#, fuzzy, gcc-internal-format -#| msgid "-malign-functions=%d is not between 0 and %d" +#, gcc-internal-format msgid "%<-malign-functions=%d%> is not between 0 and %d" -msgstr "-malign-functions=%d är inte mellan 0 och %d" +msgstr "%<-malign-functions=%d%> är inte mellan 0 och %d" #: common/config/i386/i386-common.c:1373 -#, fuzzy, gcc-internal-format -#| msgid "-mbranch-cost=%d is not between 0 and 5" +#, gcc-internal-format msgid "%<-mbranch-cost=%d%> is not between 0 and 5" -msgstr "-mbranch-cost=%d är inte mellan 0 och 5" +msgstr "%<-mbranch-cost=%d%> är inte mellan 0 och 5" #: common/config/i386/i386-common.c:1427 #, gcc-internal-format @@ -27749,60 +27634,51 @@ msgid "%<-fsplit-stack%> requires assembler support for CFI directives" msgstr "%<-fsplit-stack%> kräver assemblerstöd för CFI-direktiv" #: common/config/ia64/ia64-common.c:58 -#, fuzzy, gcc-internal-format -#| msgid "bad value %<%s%> for -mtls-size= switch" +#, gcc-internal-format msgid "bad value %<%s%> for %<-mtls-size=%> switch" -msgstr "felaktigt värde %<%s%> till flaggan -mtls-size=" +msgstr "felaktigt värde %<%s%> till flaggan %<-mtls-size=%>" #: common/config/msp430/msp430-common.c:57 -#, fuzzy, gcc-internal-format -#| msgid "unrecognized argument of -mcpu: %s" +#, gcc-internal-format msgid "unrecognized argument of %<-mcpu%>: %s" -msgstr "okänt argument till -mcpu: %s" +msgstr "okänt argument till %<-mcpu%>: %s" #: common/config/nds32/nds32-common.c:49 -#, fuzzy, gcc-internal-format -#| msgid "for the option -misr-vector-size=X, the valid X must be: 4 or 16" +#, gcc-internal-format msgid "%<-misr-vector-size=%d%> argument must be 4 or 16" -msgstr "för flaggan -misr-vector-size=X måste ett giltigt X vara: 4 eller 16" +msgstr "argumentet till %<-misr-vector-size=%d%> måste vara 4 eller 16" #: common/config/nds32/nds32-common.c:59 -#, fuzzy, gcc-internal-format -#| msgid "-mregparm=%d is not between 0 and %d" +#, gcc-internal-format msgid "%<-misr-secure=%d%> argument not in between 0 and 3" -msgstr "-mregparm=%d är inte mellan 0 och %d" +msgstr "argumentet till %<-misr-secure=%d%> är inte mellan 0 och 3" #: common/config/nds32/nds32-common.c:69 -#, fuzzy, gcc-internal-format -#| msgid "for the option -mcache-block-size=X, the valid X must be: 4, 8, 16, 32, 64, 128, 256, or 512" +#, gcc-internal-format msgid "for the option %<-mcache-block-size=X%>, the valid X must be: 4, 8, 16, 32, 64, 128, 256, or 512" -msgstr "för flaggan -mcache-block-size=X, måste ett giltigt X vara: 4, 8, 16, 32, 64, 128, 256 eller 512" +msgstr "för flaggan %<-mcache-block-size=X%> måste ett giltigt X vara: 4, 8, 16, 32, 64, 128, 256 eller 512" #: common/config/powerpcspe/powerpcspe-common.c:173 #: common/config/rs6000/rs6000-common.c:181 config/sparc/sparc.c:1743 -#, fuzzy, gcc-internal-format -#| msgid "unknown -mdebug-%s switch" +#, gcc-internal-format msgid "unknown %<-mdebug-%s%> switch" -msgstr "okänd flagga -mdebug-%s" +msgstr "okänd flagga %<-mdebug-%s%>" #: common/config/powerpcspe/powerpcspe-common.c:221 #: common/config/rs6000/rs6000-common.c:220 -#, fuzzy, gcc-internal-format -#| msgid "unknown switch -mlong-double-%s" +#, gcc-internal-format msgid "unknown switch %<-mlong-double-%s%>" -msgstr "okänd flagga -mlong-double-%s" +msgstr "okänd flagga %<-mlong-double-%s%>" #: common/config/powerpcspe/powerpcspe-common.c:231 -#, fuzzy, gcc-internal-format -#| msgid "-msingle-float option equivalent to -mhard-float" +#, gcc-internal-format msgid "%<-msingle-float%> option equivalent to %<-mhard-float%>" -msgstr "flaggan -msingle-float är likvärdig med -mhard-float" +msgstr "flaggan %<-msingle-float%> är likvärdig med %<-mhard-float%>" #: common/config/powerpcspe/powerpcspe-common.c:247 -#, fuzzy, gcc-internal-format -#| msgid "-msimple-fpu option ignored" +#, gcc-internal-format msgid "%<-msimple-fpu%> option ignored" -msgstr "flaggan -msimple-fpu ignoreras" +msgstr "flaggan %<-msimple-fpu%> ignoreras" #: common/config/powerpcspe/powerpcspe-common.c:313 #: common/config/rs6000/rs6000-common.c:255 @@ -27811,46 +27687,39 @@ msgid "%<-fsplit-stack%> currently only supported on PowerPC64 GNU/Linux with gl msgstr "%<-fsplit-stack%> stödjs för närvarande bara på PowerPC64 GNU/Linux med glibc-2.18 eller senare" #: common/config/riscv/riscv-common.c:253 -#, fuzzy, gcc-internal-format -#| msgid "%<-march=%s%>: Expect number after `%dp'." +#, gcc-internal-format msgid "%<-march=%s%>: Expect number after %<%dp%>." -msgstr "%<-march=%s%>: ett tal förväntades efter ”%dp”." +msgstr "%<-march=%s%>: ett tal förväntades efter %<%dp%>." #: common/config/riscv/riscv-common.c:329 -#, fuzzy, gcc-internal-format -#| msgid "%qE is not a variable in clause %qs" +#, gcc-internal-format msgid "%<-march=%s%>: rv%de is not a valid base ISA" -msgstr "%qE är inte en variabel i klausul %qs" +msgstr "%<-march%s%>: rv%de är inte en giltig bas-ISA" #: common/config/riscv/riscv-common.c:351 -#, fuzzy, gcc-internal-format -#| msgid "%<-march=%s%>: first ISA subset must be `e', `i' or `g'" +#, gcc-internal-format msgid "%<-march=%s%>: first ISA subset must be %, % or %" -msgstr "%<-march=%s%>: första ISA-undergrupp måste vara ”e”, ”i” eller ”g”" +msgstr "%<-march=%s%>: första ISA-undergrupp måste vara %, % eller %" #: common/config/riscv/riscv-common.c:378 -#, fuzzy, gcc-internal-format -#| msgid "-march=%s: unsupported ISA substring %qs" +#, gcc-internal-format msgid "%<-march=%s%>: unsupported ISA subset %<%c%>" -msgstr "-march=%s: ISA-understräng som ej stödjs %qs" +msgstr "%<-march=%s%>: ISA-delmängd som ej stödjs %<%c%>" #: common/config/riscv/riscv-common.c:382 -#, fuzzy, gcc-internal-format -#| msgid "-march=%s: ISA string must begin with rv32 or rv64" +#, gcc-internal-format msgid "%<-march=%s%>: ISA string is not in canonical order. %<%c%>" -msgstr "-march=%s: ISA-sträng måste börja med rv32 eller rv64" +msgstr "%<-march=%s%>: ISA-strängen är inte i kanonisk ordning. %<%c%>" #: common/config/riscv/riscv-common.c:458 -#, fuzzy, gcc-internal-format -#| msgid "%<-march=%s%> is not compatible with the selected ABI" +#, gcc-internal-format msgid "%<-march=%s%>: %s must separate with _" -msgstr "%<-march=%s%> är inte kompatibelt med det valda ABI:et" +msgstr "%<-march=%s%>: %s måste separeras med _" #: common/config/riscv/riscv-common.c:486 -#, fuzzy, gcc-internal-format -#| msgid "-march=%s: ISA string must begin with rv32 or rv64" +#, gcc-internal-format msgid "%<-march=%s%>: ISA string must begin with rv32 or rv64" -msgstr "-march=%s: ISA-sträng måste börja med rv32 eller rv64" +msgstr "%<-march=%s%>: ISA-strängen måste börja med rv32 eller rv64" #: common/config/rx/rx-common.c:61 #, gcc-internal-format @@ -27884,58 +27753,49 @@ msgstr "för många #pragma-flaggor align=reset" #: config/darwin-c.c:102 config/darwin-c.c:105 config/darwin-c.c:107 #: config/darwin-c.c:109 -#, fuzzy, gcc-internal-format -#| msgid "malformed '#pragma options', ignoring" +#, gcc-internal-format msgid "malformed %<#pragma options%>, ignoring" -msgstr "felformaterat ”#pragma options”, ignoreras" +msgstr "felformaterat %<#pragma options%>, ignoreras" #: config/darwin-c.c:112 -#, fuzzy, gcc-internal-format -#| msgid "junk at end of %<#pragma pop_options%>" +#, gcc-internal-format msgid "junk at end of %<#pragma options%>" -msgstr "skräp vid slutet av %<#pragma pop_options%>" +msgstr "skräp vid slutet av %<#pragma options%>" #: config/darwin-c.c:122 -#, fuzzy, gcc-internal-format -#| msgid "malformed '#pragma options align={mac68k|power|reset}', ignoring" +#, gcc-internal-format msgid "malformed %<#pragma options align={mac68k|power|reset}%>, ignoring" -msgstr "felformaterat ”#pragma options align={mac68k|power|reset}”>, ignoreras" +msgstr "felformaterat %<#pragma options align={mac68k|power|reset}%>, ignoreras" #: config/darwin-c.c:134 -#, fuzzy, gcc-internal-format -#| msgid "missing '(' after '#pragma unused', ignoring" +#, gcc-internal-format msgid "missing %<(%> after %<#pragma unused%>, ignoring" -msgstr "”(” saknas efter ”#pragma unused”, ignoreras" +msgstr "%<(%> saknas efter %<#pragma unused%>, ignoreras" #: config/darwin-c.c:155 -#, fuzzy, gcc-internal-format -#| msgid "missing ')' after '#pragma unused', ignoring" +#, gcc-internal-format msgid "missing %<)%> after %<#pragma unused%>, ignoring" -msgstr "”)” saknas efter ”#pragma unused”, ignoreras" +msgstr "%<)%> saknas efter %<#pragma unused%>, ignoreras" #: config/darwin-c.c:158 -#, fuzzy, gcc-internal-format -#| msgid "junk at end of '#pragma unused'" +#, gcc-internal-format msgid "junk at end of %<#pragma unused%>" -msgstr "skräp vid slutet av ”#pragma unused”" +msgstr "skräp vid slutet av %<#pragma unused%>" #: config/darwin-c.c:169 -#, fuzzy, gcc-internal-format -#| msgid "malformed '#pragma ms_struct', ignoring" +#, gcc-internal-format msgid "malformed %<#pragma ms_struct%>, ignoring" -msgstr "felformaterat ”#pragma ms_struct”, ignoreras" +msgstr "felformaterat %<#pragma ms_struct%>, ignoreras" #: config/darwin-c.c:177 -#, fuzzy, gcc-internal-format -#| msgid "malformed '#pragma ms_struct {on|off|reset}', ignoring" +#, gcc-internal-format msgid "malformed %<#pragma ms_struct {on|off|reset}%>, ignoring" -msgstr "felformaterat ”#pragma ms_struct {on|off|reset}”, ignoreras" +msgstr "felformaterat %<#pragma ms_struct {on|off|reset}%>, ignoreras" #: config/darwin-c.c:180 -#, fuzzy, gcc-internal-format -#| msgid "junk at end of '#pragma ms_struct'" +#, gcc-internal-format msgid "junk at end of %<#pragma ms_struct%>" -msgstr "skräp vid slutet av ”#pragma ms_struct”" +msgstr "skräp vid slutet av %<#pragma ms_struct%>" #: config/darwin-c.c:406 #, gcc-internal-format, gfc-internal-format @@ -27943,10 +27803,9 @@ msgid "subframework include %s conflicts with framework include" msgstr "underramverks inkludering %s står i konflikt med ramverks inkludering" #: config/darwin-c.c:718 -#, fuzzy, gcc-internal-format -#| msgid "unknown value %qs of -mmacosx-version-min" +#, gcc-internal-format msgid "unknown value %qs of %<-mmacosx-version-min%>" -msgstr "okänt värde %qs till -mmacosx-version-min" +msgstr "okänt värde %qs till %<-mmacosx-version-min%>" #: config/darwin-driver.c:48 #, gcc-internal-format @@ -28040,10 +27899,9 @@ msgid "%<-fobjc-abi-version%> >= 2 is not supported on %<-m32%> targets with %<- msgstr "%<-fobjc-abi-version%> ≥ 2 stödjs inte för %<-m32%>-mål med %<-fnext-runtime%>" #: config/darwin.c:3176 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute is not supported on this platform" +#, gcc-internal-format msgid "%<-gsplit-dwarf%> is not supported on this platform, ignored" -msgstr "attributet %qE stödjs inte på denna plattform" +msgstr "%<-gsplit-dwarf%> stödjs inte på denna plattform, ignoreras" #: config/darwin.c:3254 #, gcc-internal-format @@ -28071,16 +27929,14 @@ msgid "CFString literal expression is not a string constant" msgstr "CFString-litteraluttryck är inte en strängkonstant" #: config/darwin.c:3570 -#, fuzzy, gcc-internal-format -#| msgid "%s in CFString literal" +#, gcc-internal-format msgid "non-ASCII character in CFString literal" -msgstr "%s i CFString-litteral" +msgstr "icke-ASCII-tecklen i CFString-litteral" #: config/darwin.c:3571 -#, fuzzy, gcc-internal-format -#| msgid "%s in CFString literal" +#, gcc-internal-format msgid "embedded NUL in CFString literal" -msgstr "%s i CFString-litteral" +msgstr "inbäddad NUL i CFString-litteral" #: config/host-darwin.c:61 #, gcc-internal-format @@ -28185,42 +28041,36 @@ msgid "%Ktotal size and element size must be a non-zero constant immediate" msgstr "%Ktotal storlek och elementstorlek måste vara en konstant omedelbar skild från noll" #: config/aarch64/aarch64.c:1234 config/aarch64/aarch64.c:1247 -#, fuzzy, gcc-internal-format -#| msgid "expected % after %qs" +#, gcc-internal-format msgid "unexpected %<%s%> after %<%s%>" -msgstr "% förväntades efter %qs" +msgstr "oväntat %<%s%> efter %<%s%>" #: config/aarch64/aarch64.c:1326 -#, fuzzy, gcc-internal-format -#| msgid "%qs is incompatible with %s %s" +#, gcc-internal-format msgid "%qs is incompatible with the use of floating-point types" -msgstr "%qs är inkompatibel med %s %s" +msgstr "%qs är inkompatibel med användningen av flyttalstyper" #: config/aarch64/aarch64.c:1329 -#, fuzzy, gcc-internal-format -#| msgid "%qs is incompatible with %s %s" +#, gcc-internal-format msgid "%qs is incompatible with the use of vector types" -msgstr "%qs är inkompatibel med %s %s" +msgstr "%qs är inkompatibel med användningen av vektortyper" #: config/aarch64/aarch64.c:1333 -#, fuzzy, gcc-internal-format -#| msgid "%qs feature modifier is incompatible with %s %s" +#, gcc-internal-format msgid "%qs feature modifier is incompatible with the use of floating-point types" -msgstr "funktionsmodifieraren %qs är inkompatibel med %s %s" +msgstr "funktionsmodifieraren %qs är inkompatibel med användningen av flyttalstyper" #: config/aarch64/aarch64.c:1336 -#, fuzzy, gcc-internal-format -#| msgid "%qs feature modifier is incompatible with %s %s" +#, gcc-internal-format msgid "%qs feature modifier is incompatible with the use of vector types" -msgstr "funktionsmodifieraren %qs är inkompatibel med %s %s" +msgstr "funktionsmodifieraren %qs är inkompatibel med med användningen av vektortyper" #: config/aarch64/aarch64.c:3919 config/aarch64/aarch64.c:3965 #: config/aarch64/aarch64.c:4062 config/aarch64/aarch64.c:13445 #: config/arm/arm.c:6715 config/arm/arm.c:6745 config/arm/arm.c:27085 -#, fuzzy, gcc-internal-format -#| msgid "parameter passing for argument of type %qT changed in GCC 7.1" +#, gcc-internal-format msgid "parameter passing for argument of type %qT changed in GCC 9.1" -msgstr "parameterskickandet för argument av typen %qT ändrades i GCC 7.1" +msgstr "parameterskickandet för argument av typen %qT ändrades i GCC 9.1" #: config/aarch64/aarch64.c:4184 #, gcc-internal-format @@ -28228,10 +28078,9 @@ msgid "stack probes for SVE frames" msgstr "stackprov för SVE-ramar" #: config/aarch64/aarch64.c:11183 -#, fuzzy, gcc-internal-format -#| msgid "unknown flag passed in -moverride=%s (%s)" +#, gcc-internal-format msgid "unknown flag passed in %<-moverride=%s%> (%s)" -msgstr "okänd flagga skickad i -moverride=%s (%s)" +msgstr "okänd flagga skickad i %<-moverride=%s%> (%s)" #: config/aarch64/aarch64.c:11227 #, gcc-internal-format, gfc-internal-format @@ -28239,16 +28088,14 @@ msgid "%s string ill-formed\n" msgstr "%s-sträng är felformad\n" #: config/aarch64/aarch64.c:11283 -#, fuzzy, gcc-internal-format -#| msgid "invalid format of %s" +#, gcc-internal-format msgid "invalid format for sve_width" -msgstr "felaktigt format på %s" +msgstr "felaktigt format på sve_width" #: config/aarch64/aarch64.c:11295 -#, fuzzy, gcc-internal-format, gfc-internal-format -#| msgid "invalid %%h value" +#, gcc-internal-format, gfc-internal-format msgid "invalid sve_width value: %d" -msgstr "ogiltigt %%h-värde" +msgstr "ogiltigt sve_width-värde: %d" #: config/aarch64/aarch64.c:11315 #, gcc-internal-format, gfc-internal-format @@ -28261,16 +28108,14 @@ msgid "unknown tuning option (%s)" msgstr "okänd trimningsflagga (%s)" #: config/aarch64/aarch64.c:11486 -#, fuzzy, gcc-internal-format -#| msgid "incompatible options -mstack-protector-guard=global and-mstack-protector-guard-offset=%qs" +#, gcc-internal-format msgid "incompatible options %<-mstack-protector-guard=global%> and%<-mstack-protector-guard-offset=%s%>" -msgstr "inkompatibla flaggor -mstack-protector-guard=global och -mstack-protector-guard-offset=%qs" +msgstr "inkompatibla flaggor %<-mstack-protector-guard=global%> och %<-mstack-protector-guard-offset=%s%>" #: config/aarch64/aarch64.c:11495 -#, fuzzy, gcc-internal-format -#| msgid "both -mstack-protector-guard-offset and -mstack-protector-guard-reg must be used with -mstack-protector-guard=sysreg" +#, gcc-internal-format msgid "both %<-mstack-protector-guard-offset%> and %<-mstack-protector-guard-reg%> must be used with %<-mstack-protector-guard=sysreg%>" -msgstr "både -mstack-protector-guard-offset och -mstack-protector-guard-reg måste användas med -mstack-protector-guard=sysreg" +msgstr "både %<-mstack-protector-guard-offset%> och %<-mstack-protector-guard-reg%> måste användas med %<-mstack-protector-guard=sysreg%>" #: config/aarch64/aarch64.c:11503 #, gcc-internal-format @@ -28283,16 +28128,14 @@ msgid "%qs is not a valid offset in %qs" msgstr "%qs är inte ett giltigt avstånd i %qs" #: config/aarch64/aarch64.c:11607 -#, fuzzy, gcc-internal-format -#| msgid "stack clash guard size '%d' must be equal to probing interval '%d'" +#, gcc-internal-format msgid "stack clash guard size %<%d%> must be equal to probing interval %<%d%>" -msgstr "stackkrockvaktsstorlek ”%d” måste vara lika med testintervallet ”%d”" +msgstr "stackkrockvaktsstorlek %<%d%> måste vara lika med testintervallet %<%d%>" #: config/aarch64/aarch64.c:11692 -#, fuzzy, gcc-internal-format, gfc-internal-format -#| msgid "valid arguments are: %s" +#, gcc-internal-format, gfc-internal-format msgid "valid arguments are: %s;" -msgstr "giltiga argument är: %s" +msgstr "giltiga argument är: %s;" #: config/aarch64/aarch64.c:11716 #, gcc-internal-format @@ -28300,16 +28143,14 @@ msgid "missing cpu name in %<-mcpu=%s%>" msgstr "cpu-namn saknas i %<-mcpu=%s%>" #: config/aarch64/aarch64.c:11723 -#, fuzzy, gcc-internal-format -#| msgid "invalid feature modifier in %<-mcpu=%s%>" +#, gcc-internal-format msgid "invalid feature modifier %qs in %<-mcpu=%s%>" -msgstr "ogiltig funktionsmodifierare i %<-mcpu=%s%>" +msgstr "ogiltig funktionsmodifierare %qs i %<-mcpu=%s%>" #: config/aarch64/aarch64.c:11831 -#, fuzzy, gcc-internal-format -#| msgid "invalid arguments for %<-fpatchable_function_entry%>" +#, gcc-internal-format msgid "invalid arg %<%s%> for %<-mbranch-protection=%>" -msgstr "ogiltigt argument till %<-fpatchable_function_entry%>" +msgstr "ogiltigt argument %<%s%> till %<-mbranch-protection=%>" #: config/aarch64/aarch64.c:11833 #, gcc-internal-format @@ -28322,16 +28163,14 @@ msgid "missing arch name in %<-march=%s%>" msgstr "arkitekturnamn saknas i %<-march=%s%>" #: config/aarch64/aarch64.c:11860 -#, fuzzy, gcc-internal-format -#| msgid "unknown value %qs for -march" +#, gcc-internal-format msgid "unknown value %qs for %<-march%>" -msgstr "okänt värde %qs till -march" +msgstr "okänt värde %qs till %<-march%>" #: config/aarch64/aarch64.c:11864 -#, fuzzy, gcc-internal-format -#| msgid "invalid feature modifier in %<-march=%s%>" +#, gcc-internal-format msgid "invalid feature modifier %qs in %<-march=%s%>" -msgstr "ogiltig funktionsmodifierare i %<-march=%s%>" +msgstr "ogiltig funktionsmodifierare %qs i %<-march=%s%>" #: config/aarch64/aarch64.c:11892 #, gcc-internal-format @@ -28339,34 +28178,29 @@ msgid "missing cpu name in %<-mtune=%s%>" msgstr "cpu-namn saknas i %<-mtune=%s%>" #: config/aarch64/aarch64.c:11895 -#, fuzzy, gcc-internal-format -#| msgid "unknown value %qs for -mtune" +#, gcc-internal-format msgid "unknown value %qs for %<-mtune%>" -msgstr "okänt värde %qs till -mtune" +msgstr "okänt värde %qs till %<-mtune%>" #: config/aarch64/aarch64.c:12020 config/arm/arm.c:3185 -#, fuzzy, gcc-internal-format -#| msgid "switch -mcpu=%s conflicts with -march=%s switch" +#, gcc-internal-format msgid "switch %<-mcpu=%s%> conflicts with %<-march=%s%> switch" -msgstr "flaggan -mcpu=%s står i konflikt med flaggan -march=%s" +msgstr "flaggan %<-mcpu=%s%> står i konflikt med flaggan %<-march=%s%>" #: config/aarch64/aarch64.c:12076 -#, fuzzy, gcc-internal-format -#| msgid "assembler does not support -mabi=ilp32" +#, gcc-internal-format msgid "assembler does not support %<-mabi=ilp32%>" -msgstr "assemblern stödjer inte -mabi=ilp32" +msgstr "assemblern stödjer inte %<-mabi=ilp32%>" #: config/aarch64/aarch64.c:12083 -#, fuzzy, gcc-internal-format -#| msgid "return address signing is only supported for -mabi=lp64" +#, gcc-internal-format msgid "return address signing is only supported for %<-mabi=lp64%>" -msgstr "signering av returadress stödjs endast för -mabi=lp64" +msgstr "signering av returadress stödjs endast för %<-mabi=lp64%>" #: config/aarch64/aarch64.c:12151 -#, fuzzy, gcc-internal-format -#| msgid "code model %qs with -f%s" +#, gcc-internal-format msgid "code model %qs with %<-f%s%>" -msgstr "kodmodell %qs med -f%s" +msgstr "kodmodell %qs med %<-f%s%>" #: config/aarch64/aarch64.c:12324 #, gcc-internal-format @@ -28380,10 +28214,9 @@ msgstr "felaktigt namn (”%s”) i pragmat eller attributet % pragma or attribute" +#, gcc-internal-format msgid "invalid feature modifier %s of value (\"%s\") in % pragma or attribute" -msgstr "felaktigt värde (”%s”) i pragmat eller attributet %" +msgstr "felaktig funktionsmodifierare %s på värdet (”%s”) i pragmat eller attributet %" #: config/aarch64/aarch64.c:12366 #, gcc-internal-format @@ -28396,16 +28229,14 @@ msgid "invalid name (\"%s\") in % pragma or attribute" msgstr "felaktigt namn (”%s”) i pragmat eller attributet %" #: config/aarch64/aarch64.c:12396 -#, fuzzy, gcc-internal-format -#| msgid "missing name in % pragma or attribute" +#, gcc-internal-format msgid "missing argument to % pragma or attribute" -msgstr "namn saknas i pragmat eller attributet %" +msgstr "argument saknas till pragmat eller attributet %" #: config/aarch64/aarch64.c:12400 -#, fuzzy, gcc-internal-format -#| msgid "invalid name (\"%s\") in % pragma or attribute" +#, gcc-internal-format msgid "invalid protection type (\"%s\") in % pragma or attribute" -msgstr "felaktigt namn (”%s”) i pragmat eller attributet %" +msgstr "felaktig skyddstyp (”%s”) i pragmat eller attributet %" #: config/aarch64/aarch64.c:12435 #, gcc-internal-format @@ -28476,64 +28307,54 @@ msgid "GCC does not currently support mixed size types for % functions" msgstr "GCC stödjer för närvarande inte typer av blandad storlek till %-funktioner" #: config/aarch64/aarch64.c:18661 -#, fuzzy, gcc-internal-format -#| msgid "unsupported return type %qT for simd" +#, gcc-internal-format msgid "GCC does not currently support return type %qT for % functions" -msgstr "returtyp %qT stödjs ej för simd" +msgstr "GCC stödjer för närvarande inte returtypen %qT för %-funktioner" #: config/aarch64/aarch64.c:18665 -#, fuzzy, gcc-internal-format -#| msgid "unsupported return type %qT for simd" +#, gcc-internal-format msgid "unsupported return type %qT for % functions" -msgstr "returtyp %qT stödjs ej för simd" +msgstr "returtypen %qT stödjs ej för %-funktioner" #: config/aarch64/aarch64.c:18682 -#, fuzzy, gcc-internal-format -#| msgid "unsupported argument type %qT for simd" +#, gcc-internal-format msgid "GCC does not currently support argument type %qT for % functions" -msgstr "argumenttyp %qT som inte stödjs till simd" +msgstr "GCC stödjer för närvarande inte argumenttypen %qT för %-funktioner" #: config/aarch64/aarch64.c:18704 -#, fuzzy, gcc-internal-format -#| msgid "the -shared option is not currently supported for VAX ELF" +#, gcc-internal-format msgid "GCC does not currently support simdlen %d for type %qT" -msgstr "flaggan -shared stödjs för närvarande inte för VAX ELF" +msgstr "GCC stödjer för närvarande inte simdlen %d för typen %qT" #: config/alpha/alpha.c:420 -#, fuzzy, gcc-internal-format -#| msgid "bad value %qs for -mtrap-precision switch" +#, gcc-internal-format msgid "bad value %qs for %<-mtrap-precision%> switch" -msgstr "felaktigt värde %qs till flaggan -mtrap-precision" +msgstr "felaktigt värde %qs till flaggan %<-mtrap-precision%>" #: config/alpha/alpha.c:435 -#, fuzzy, gcc-internal-format -#| msgid "bad value %qs for -mfp-rounding-mode switch" +#, gcc-internal-format msgid "bad value %qs for %<-mfp-rounding-mode%> switch" -msgstr "felaktigt värde %qs till flaggan -mfp-rounding-mode" +msgstr "felaktigt värde %qs till flaggan %<-mfp-rounding-mode%>" #: config/alpha/alpha.c:450 -#, fuzzy, gcc-internal-format -#| msgid "bad value %qs for -mfp-trap-mode switch" +#, gcc-internal-format msgid "bad value %qs for %<-mfp-trap-mode%> switch" -msgstr "felaktigt värde %qs till flaggan -mfp-trap-mode" +msgstr "felaktigt värde %qs till flaggan %<-mfp-trap-mode%>" #: config/alpha/alpha.c:468 -#, fuzzy, gcc-internal-format -#| msgid "bad value %qs for -mcpu switch" +#, gcc-internal-format msgid "bad value %qs for %<-mcpu%> switch" -msgstr "felaktigt värde %qs till flaggan -mcpu" +msgstr "felaktigt värde %qs till flaggan %<-mcpu%>" #: config/alpha/alpha.c:483 -#, fuzzy, gcc-internal-format -#| msgid "bad value (%qs) for %<-mtune=%> switch" +#, gcc-internal-format msgid "bad value %qs for %<-mtune%> switch" -msgstr "felaktigt värde (%qs) till flaggan %<-mtune=%>" +msgstr "felaktigt värde %qs till flaggan %<-mtune=%>" #: config/alpha/alpha.c:504 -#, fuzzy, gcc-internal-format -#| msgid "fp software completion requires -mtrap-precision=i" +#, gcc-internal-format msgid "fp software completion requires %<-mtrap-precision=i%>" -msgstr "fp-mjukvarukomplettering kräver -mtrap-precision=i" +msgstr "fp-mjukvarukomplettering kräver %<-mtrap-precision=i%>" #: config/alpha/alpha.c:520 #, gcc-internal-format @@ -28556,10 +28377,9 @@ msgid "L%d cache latency unknown for %s" msgstr "L%d-cachelatens okänd för %s" #: config/alpha/alpha.c:572 -#, fuzzy, gcc-internal-format -#| msgid "bad value %qs for -mmemory-latency" +#, gcc-internal-format msgid "bad value %qs for %<-mmemory-latency%>" -msgstr "felaktigt värde %qs till flaggan -mmemory-latency" +msgstr "felaktigt värde %qs till %<-mmemory-latency%>" #: config/alpha/alpha.c:6719 config/alpha/alpha.c:6722 config/arc/arc.c:6885 #: config/arc/arc.c:7159 config/s390/s390.c:834 config/tilegx/tilegx.c:3544 @@ -28569,16 +28389,14 @@ msgid "bad builtin fcode" msgstr "felaktig inbyggd fcode" #: config/arc/arc.c:936 -#, fuzzy, gcc-internal-format -#| msgid "-mno-mpy supported only for ARC700 or ARCv2" +#, gcc-internal-format msgid "%<-mno-mpy%> supported only for ARC700 or ARCv2" -msgstr "-mno-mpy stödjs endast för ARC700 eller ARCv2" +msgstr "%<-mno-mpy%> stödjs endast för ARC700 eller ARCv2" #: config/arc/arc.c:939 -#, fuzzy, gcc-internal-format -#| msgid "-mno-dpfp-lrsr supported only with -mdpfp" +#, gcc-internal-format msgid "%<-mno-dpfp-lrsr%> supported only with %<-mdpfp%>" -msgstr "-mno-dpfp-lrsr stödjs endast med -mdpfp" +msgstr "%<-mno-dpfp-lrsr%> stödjs endast med %<-mdpfp%>" #: config/arc/arc.c:944 #, gcc-internal-format @@ -28586,10 +28404,9 @@ msgid "FPX fast and compact options cannot be specified together" msgstr "Snabba och kompakta FPX-flaggor kan inte användas tillsammans" #: config/arc/arc.c:948 -#, fuzzy, gcc-internal-format -#| msgid "-mspfp_fast not available on ARC600 or ARC601" +#, gcc-internal-format msgid "%<-mspfp_fast%> not available on ARC600 or ARC601" -msgstr "-mspfp_fast är inte tillgängligt på ARC600 eller ARC601" +msgstr "%<-mspfp_fast%> är inte tillgängligt på ARC600 eller ARC601" #: config/arc/arc.c:953 #, gcc-internal-format @@ -28602,10 +28419,9 @@ msgid "PIC is not supported for %s. Generating non-PIC code only.." msgstr "PIC stödjs inte för %s. Genererar endast icke-PIC-kod." #: config/arc/arc.c:1022 -#, fuzzy, gcc-internal-format -#| msgid "missing operand" +#, gcc-internal-format msgid "missing dash" -msgstr "operand saknas" +msgstr "bindestreck saknas" #: config/arc/arc.c:1034 #, gcc-internal-format @@ -28624,32 +28440,28 @@ msgid "%s-%s is an empty range" msgstr "%s-%s är ett tomt intervall" #: config/arc/arc.c:1113 -#, fuzzy, gcc-internal-format -#| msgid "invalid number in -mrgf-banked-regs=%s valid values are 0, 4, 8, 16, or 32" +#, gcc-internal-format msgid "invalid number in %<-mrgf-banked-regs=%s%> valid values are 0, 4, 8, 16, or 32" -msgstr "felaktigt antal i -mrgf-banked-regs=%s giltiga värden är 0, 4, 8, 16 eller 32" +msgstr "felaktigt antal i %<-mrgf-banked-regs=%s%> giltiga värden är 0, 4, 8, 16 eller 32" #: config/arc/arc.c:1175 -#, fuzzy, gcc-internal-format -#| msgid "option -mirq-ctrl-saved valid only for ARC v2 processors" +#, gcc-internal-format msgid "option %<-mirq-ctrl-saved%> valid only for ARC v2 processors" -msgstr "flaggan -mirq-ctrl-saved är giltig endast för ARC v2-processorer" +msgstr "flaggan %<-mirq-ctrl-saved%> är giltig endast för ARC v2-processorer" #: config/arc/arc.c:1184 -#, fuzzy, gcc-internal-format -#| msgid "option -mrgf-banked-regs valid only for ARC v2 processors" +#, gcc-internal-format msgid "option %<-mrgf-banked-regs%> valid only for ARC v2 processors" -msgstr "flaggan -mrgf-banked-regs är giltig endast för ARC v2-processorer" +msgstr "flaggan %<-mrgf-banked-regs%> är giltig endast för ARC v2-processorer" #. Check options against architecture options. Throw an error if #. option is not allowed. Extra, check options against default #. architecture/cpu flags and throw an warning if we find a #. mismatch. #: config/arc/arc.c:1225 -#, fuzzy, gcc-internal-format, gfc-internal-format -#| msgid "%s is not available for %s architecture" +#, gcc-internal-format, gfc-internal-format msgid "Option %s=%s is not available for %s CPU." -msgstr "%s är inte tillgängligt för arkitekturen %s" +msgstr "Flaggan %s=%s är inte tillgänglig för CPU:n %s." #: config/arc/arc.c:1230 #, gcc-internal-format, gfc-internal-format @@ -28657,10 +28469,9 @@ msgid "Option %s is ignored, the default value %s is considered for %s CPU." msgstr "Flaggan %s ignoreras, standardvärdet %s antas för CPU:n %s." #: config/arc/arc.c:1238 -#, fuzzy, gcc-internal-format, gfc-internal-format -#| msgid "%s is not available for %s architecture" +#, gcc-internal-format, gfc-internal-format msgid "Option %s is not available for %s CPU" -msgstr "%s är inte tillgängligt för arkitekturen %s" +msgstr "Flaggan %s är inte tillgänglig för CPU:n %s" #: config/arc/arc.c:1243 #, gcc-internal-format, gfc-internal-format @@ -28707,16 +28518,14 @@ msgid "%qE attribute only applies to functions" msgstr "attributet %qE är bara tillämpligt på funktioner" #: config/arc/arc.c:6784 -#, fuzzy, gcc-internal-format -#| msgid "__builtin_arc_aligned with non-constant alignment" +#, gcc-internal-format msgid "%<__builtin_arc_aligned%> with non-constant alignment" -msgstr "__builtin_arc_aligned med icke konstant justering" +msgstr "%<__builtin_arc_aligned%> med icke konstant justering" #: config/arc/arc.c:6792 -#, fuzzy, gcc-internal-format -#| msgid "invalid alignment value for __builtin_arc_aligned" +#, gcc-internal-format msgid "invalid alignment value for %<__builtin_arc_aligned%>" -msgstr "ogiltigt argument till __builtin_arc_aligned" +msgstr "ogiltigt argument till %<__builtin_arc_aligned%>" #: config/arc/arc.c:6955 #, gcc-internal-format @@ -28847,10 +28656,9 @@ msgid "this builtin is not supported for this target" msgstr "denna inbyggda stödjs inte på denna målarkitektur" #: config/arm/arm-builtins.c:2516 -#, fuzzy, gcc-internal-format -#| msgid "You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use these intrinsics." +#, gcc-internal-format msgid "You must enable NEON instructions (e.g. %<-mfloat-abi=softfp%> %<-mfpu=neon%>) to use these intrinsics." -msgstr "Du måste aktivera NEON-instruktioner (t.ex. -mfloat-abi=softfp -mfpu=neon) för att använda dessa inbyggda." +msgstr "Du måste aktivera NEON-instruktioner (t.ex. %<-mfloat-abi=softfp%> %<-mfpu=neon%>) för att använda dessa inbyggda." #: config/arm/arm-builtins.c:2554 #, gcc-internal-format @@ -28858,10 +28666,9 @@ msgid "You must enable VFP instructions to use these intrinsics." msgstr "Du måste aktivera VFP-instruktioner för att använda dessa inbyggda." #: config/arm/arm-builtins.c:2614 -#, fuzzy, gcc-internal-format -#| msgid "You must enable crypto instructions (e.g. include -mfloat-abi=softfp -mfpu=crypto-neon...) to use these intrinsics." +#, gcc-internal-format msgid "You must enable crypto instructions (e.g. include %<-mfloat-abi=softfp%> %<-mfpu=crypto-neon%>) to use these intrinsics." -msgstr "Du måste aktivera kryptoinstruktioner (t.ex. inkludera -mfloat-abi=softfp -mfpu=crypto-neon …) för att använda dessa inbyggda." +msgstr "Du måste aktivera kryptoinstruktioner (t.ex. inkludera %<-mfloat-abi=softfp%> %<-mfpu=crypto-neon%>) för att använda dessa inbyggda." #. @@@ better error message #: config/arm/arm-builtins.c:2675 config/arm/arm-builtins.c:2779 @@ -29036,10 +28843,9 @@ msgid "enabling callee interworking support is only meaningful when compiling fo msgstr "aktivering av stöd för anroparnätverkande är endast meningsfullt vid kompilering för Thumb" #: config/arm/arm.c:2887 -#, fuzzy, gcc-internal-format -#| msgid "-g with -mno-apcs-frame may not give sensible debugging" +#, gcc-internal-format msgid "%<-g%> with %<-mno-apcs-frame%> may not give sensible debugging" -msgstr "-g med -mno-apcs-frame ger kanske inte vettig felsökning" +msgstr "%<-g%> med %<-mno-apcs-frame%> ger kanske inte meningsfull felsökning" #: config/arm/arm.c:2892 #, gcc-internal-format @@ -29047,10 +28853,9 @@ msgid "iWMMXt unsupported under Thumb mode" msgstr "iWMMXt stödjs inte i Thumb-läge" #: config/arm/arm.c:2895 -#, fuzzy, gcc-internal-format -#| msgid "can not use -mtp=cp15 with 16-bit Thumb" +#, gcc-internal-format msgid "cannot use %<-mtp=cp15%> with 16-bit Thumb" -msgstr "det går inte att använda -mtp=cp15 med 16-bitars Thumb" +msgstr "det går inte att använda %<-mtp=cp15%> med 16-bitars Thumb" #: config/arm/arm.c:2899 #, gcc-internal-format @@ -29063,10 +28868,9 @@ msgid "%s only supports non-pic code on M-profile targets with the MOVT instruct msgstr "%s stödjer endast icke-pic-kod på M-profile-mål med instruktionen MOVT" #: config/arm/arm.c:2917 -#, fuzzy, gcc-internal-format -#| msgid "%qs incompatible with explicitly disabled options" +#, gcc-internal-format msgid "%s incompatible with %<-mword-relocations%>" -msgstr "%qs är inkompatibel med uttryckligen avaktiverade flaggor" +msgstr "%s är inkompatibel med %<-mword-relocations%>" #: config/arm/arm.c:3027 #, gcc-internal-format @@ -29079,16 +28883,14 @@ msgid "target CPU does not support unaligned accesses" msgstr "målprocessorn stödjer inte ojusterade åtkomster" #: config/arm/arm.c:3411 -#, fuzzy, gcc-internal-format -#| msgid "-mapcs-stack-check incompatible with -mno-apcs-frame" +#, gcc-internal-format msgid "%<-mapcs-stack-check%> incompatible with %<-mno-apcs-frame%>" -msgstr "-mapcs-stack-check är inkompatibel med -mno-apcs-frame" +msgstr "%<-mapcs-stack-check%> är inkompatibel med %<-mno-apcs-frame%>" #: config/arm/arm.c:3420 -#, fuzzy, gcc-internal-format -#| msgid "-fpic and -mapcs-reent are incompatible" +#, gcc-internal-format msgid "%<-fpic%> and %<-mapcs-reent%> are incompatible" -msgstr "-fpic och -mapcs-reent är inkompatibla" +msgstr "%<-fpic%> och %<-mapcs-reent%> är inkompatibla" #: config/arm/arm.c:3423 #, gcc-internal-format @@ -29111,28 +28913,24 @@ msgid "structure size boundary can only be set to 8 or 32" msgstr "storleksgräns för poster kan bara sättas till 8 eller 32" #: config/arm/arm.c:3481 -#, fuzzy, gcc-internal-format -#| msgid "RTP PIC is incompatible with -msingle-pic-base" +#, gcc-internal-format msgid "RTP PIC is incompatible with %<-msingle-pic-base%>" -msgstr "RTP PIC är inkompatibelt med -msingle-pic-base" +msgstr "RTP PIC är inkompatibelt med %<-msingle-pic-base%>" #: config/arm/arm.c:3493 -#, fuzzy, gcc-internal-format -#| msgid "-mpic-register= is useless without -fpic" +#, gcc-internal-format msgid "%<-mpic-register=%> is useless without %<-fpic%>" -msgstr "-mpic-register= är oanvändbar utan -fpic" +msgstr "%<-mpic-register=%> är meningslös utan %<-fpic%>" #: config/arm/arm.c:3502 -#, fuzzy, gcc-internal-format -#| msgid "unable to use '%s' for PIC register" +#, gcc-internal-format msgid "unable to use %qs for PIC register" -msgstr "kan inte använda ”%s” som PIC-register" +msgstr "kan inte använda %qs som PIC-register" #: config/arm/arm.c:3524 -#, fuzzy, gcc-internal-format -#| msgid "-freorder-blocks-and-partition not supported on this architecture" +#, gcc-internal-format msgid "%<-freorder-blocks-and-partition%> not supported on this architecture" -msgstr "-freorder-blocks-and-partition stödjs inte på denna arkitektur" +msgstr "%<-freorder-blocks-and-partition%> stödjs inte på denna arkitektur" #: config/arm/arm.c:3679 #, gcc-internal-format @@ -29155,16 +28953,14 @@ msgid "target CPU does not support interworking" msgstr "målprocessorn stödjer inte interworking" #: config/arm/arm.c:3740 -#, fuzzy, gcc-internal-format -#| msgid "AAPCS does not support -mcaller-super-interworking" +#, gcc-internal-format msgid "AAPCS does not support %<-mcaller-super-interworking%>" -msgstr "AAPCS stödjer inte -mcaller-super-interworking" +msgstr "AAPCS stödjer inte %<-mcaller-super-interworking%>" #: config/arm/arm.c:3743 -#, fuzzy, gcc-internal-format -#| msgid "AAPCS does not support -mcallee-super-interworking" +#, gcc-internal-format msgid "AAPCS does not support %<-mcallee-super-interworking%>" -msgstr "AAPCS stödjer inte -mcallee-super-interworking" +msgstr "AAPCS stödjer inte %<-mcallee-super-interworking%>" #: config/arm/arm.c:3748 #, gcc-internal-format @@ -29182,16 +28978,14 @@ msgid "ARMv8-M Security Extensions incompatible with selected FPU" msgstr "ARMv8-M Security Extensions är inkompatibelt med den valda FPU:n" #: config/arm/arm.c:3767 -#, fuzzy, gcc-internal-format -#| msgid "-mfloat-abi=hard: selected processor lacks an FPU" +#, gcc-internal-format msgid "%<-mfloat-abi=hard%>: selected processor lacks an FPU" -msgstr "-mfloat-abi=hard: den valda processorn saknar en FPU" +msgstr "%<-mfloat-abi=hard%>: den valda processorn saknar en FPU" #: config/arm/arm.c:3775 -#, fuzzy, gcc-internal-format -#| msgid "-mfloat-abi=hard and VFP" +#, gcc-internal-format msgid "%<-mfloat-abi=hard%> and VFP" -msgstr "-mfloat-abi=hard och VFP" +msgstr "%<-mfloat-abi=hard%> och VFP" #: config/arm/arm.c:5838 #, gcc-internal-format @@ -29235,10 +29029,9 @@ msgid "%qE attribute not available to functions that return value on the stack" msgstr "attributet %qE är inte tillgängligt för funktioner som returnerar ett värde på stacken" #: config/arm/arm.c:7046 config/arm/arm.c:7098 -#, fuzzy, gcc-internal-format -#| msgid "%qE attribute ignored without -mcmse option." +#, gcc-internal-format msgid "%qE attribute ignored without %<-mcmse%> option." -msgstr "attributet %qE ignorerat utan flaggan -mcmse." +msgstr "attributet %qE ignorerat utan flaggan %<-mcmse%>." #: config/arm/arm.c:7065 #, gcc-internal-format @@ -29251,10 +29044,9 @@ msgid "%qE attribute only applies to base type of a function pointer" msgstr "attributet %qE är bara tillämpligt på bastypen av en funktionspekare" #: config/arm/arm.c:8888 -#, fuzzy, gcc-internal-format -#| msgid "accessing thread-local storage is not currently supported with -mpure-code or -mslow-flash-data" +#, gcc-internal-format msgid "accessing thread-local storage is not currently supported with %<-mpure-code%> or %<-mslow-flash-data%>" -msgstr "att nå trådlokal lagring stödjs inte för närvarande med -mpure-code eller -mslow-flash-data" +msgstr "att nå trådlokal lagring stödjs inte för närvarande med %<-mpure-code%> eller %<-mslow-flash-data%>" #: config/arm/arm.c:12534 #, gcc-internal-format @@ -29287,10 +29079,9 @@ msgid "interrupt Service Routines cannot be coded in Thumb mode" msgstr "avbrottshanteringsrutiner kan inte kodas i Thumb-läge" #: config/arm/arm.c:25420 -#, fuzzy, gcc-internal-format -#| msgid "-fstack-check=specific for Thumb-1" +#, gcc-internal-format msgid "%<-fstack-check=specific%> for Thumb-1" -msgstr "-fstack-check=specific för Thumb-1" +msgstr "%<-fstack-check=specific%> för Thumb-1" #: config/arm/arm.c:30889 #, gcc-internal-format @@ -29370,28 +29161,24 @@ msgid "unknown core architecture %qs specified with %qs" msgstr "okänd kärnarkitektur %qs angiven till %qs" #: config/avr/avr.c:765 config/visium/visium.c:422 -#, fuzzy, gcc-internal-format -#| msgid "-fpic is not supported" +#, gcc-internal-format msgid "%<-fpic%> is not supported" -msgstr "-fpic stödjs inte" +msgstr "%<-fpic%> stödjs inte" #: config/avr/avr.c:767 config/visium/visium.c:424 -#, fuzzy, gcc-internal-format -#| msgid "-fPIC is not supported" +#, gcc-internal-format msgid "%<-fPIC%> is not supported" -msgstr "-fPIC stödjs inte" +msgstr "%<-fPIC%> stödjs inte" #: config/avr/avr.c:769 -#, fuzzy, gcc-internal-format -#| msgid "-fpie is not supported" +#, gcc-internal-format msgid "%<-fpie%> is not supported" -msgstr "-fpie stödjs inte" +msgstr "%<-fpie%> stödjs inte" #: config/avr/avr.c:771 -#, fuzzy, gcc-internal-format -#| msgid "-fPIE is not supported" +#, gcc-internal-format msgid "%<-fPIE%> is not supported" -msgstr "-fPIE stödjs inte" +msgstr "%<-fPIE%> stödjs inte" #: config/avr/avr.c:1047 config/avr/avr.c:1052 config/riscv/riscv.c:4787 #, gcc-internal-format @@ -29575,22 +29362,19 @@ msgid "strange device name %qs after %qs: bad character %qc" msgstr "konstigt enhetsnamn %qs efter %qs: felaktigt tecken %qc" #: config/bfin/bfin.c:2382 -#, fuzzy, gcc-internal-format -#| msgid "-mfdpic is not supported, please use a bfin-linux-uclibc target" +#, gcc-internal-format msgid "%<-mfdpic%> is not supported, please use a bfin-linux-uclibc target" -msgstr "-mfdpic stödjs inte, välj ett bfin-linux-uclibc-mål" +msgstr "%<-mfdpic%> stödjs inte, välj ett bfin-linux-uclibc-mål" #: config/bfin/bfin.c:2388 -#, fuzzy, gcc-internal-format -#| msgid "-mshared-library-id= specified without -mid-shared-library" +#, gcc-internal-format msgid "%<-mshared-library-id=%> specified without %<-mid-shared-library%>" -msgstr "-mshared-library-id= angiven utan -mid-shared-library" +msgstr "%<-mshared-library-id=%> angiven utan %<-mid-shared-library%>" #: config/bfin/bfin.c:2393 -#, fuzzy, gcc-internal-format -#| msgid "-fstack-limit- options are ignored with -mfdpic; use -mstack-check-l1" +#, gcc-internal-format msgid "%<-fstack-limit-%> options are ignored with %<-mfdpic%>; use %<-mstack-check-l1%>" -msgstr "-fstack-limit- flaggor ignoreras med -mfdpic; använd -mstack-check-l1" +msgstr "%<-fstack-limit-%>-flaggor ignoreras med %<-mfdpic%>; använd %<-mstack-check-l1%>" #: config/bfin/bfin.c:2399 #, gcc-internal-format @@ -29603,34 +29387,29 @@ msgid "ID shared libraries and FD-PIC mode can%'t be used together" msgstr "ID-delade bibliotek och FD-PIC-läget inte användas tillsammans" #: config/bfin/bfin.c:2407 config/m68k/m68k.c:586 -#, fuzzy, gcc-internal-format -#| msgid "cannot specify both -msep-data and -mid-shared-library" +#, gcc-internal-format msgid "cannot specify both %<-msep-data%> and %<-mid-shared-library%>" -msgstr "det går inte att ange både -msep-data och -mid-shared-library" +msgstr "det går inte att ange både %<-msep-data%> och %<-mid-shared-library%>" #: config/bfin/bfin.c:2427 -#, fuzzy, gcc-internal-format -#| msgid "-mmulticore can only be used with BF561" +#, gcc-internal-format msgid "%<-mmulticore%> can only be used with BF561" -msgstr "-mmulticore kan endast användas med BF561" +msgstr "%<-mmulticore%> kan endast användas med BF561" #: config/bfin/bfin.c:2430 -#, fuzzy, gcc-internal-format -#| msgid "-mcorea should be used with -mmulticore" +#, gcc-internal-format msgid "%<-mcorea%> should be used with %<-mmulticore%>" -msgstr "-mcorea måste användas tillsammans med -mmulticore" +msgstr "%<-mcorea%> måste användas tillsammans med %<-mmulticore%>" #: config/bfin/bfin.c:2433 -#, fuzzy, gcc-internal-format -#| msgid "-mcoreb should be used with -mmulticore" +#, gcc-internal-format msgid "%<-mcoreb%> should be used with %<-mmulticore%>" -msgstr "-mcoreb måste användas tillsammans med -mmulticore" +msgstr "%<-mcoreb%> måste användas tillsammans med %<-mmulticore%>" #: config/bfin/bfin.c:2436 -#, fuzzy, gcc-internal-format -#| msgid "-mcorea and -mcoreb can%'t be used together" +#, gcc-internal-format msgid "%<-mcorea%> and %<-mcoreb%> can%'t be used together" -msgstr "-mcorea och -mcoreb kan inte användas tillsammans" +msgstr "%<-mcorea%> och %<-mcoreb%> kan inte användas tillsammans" #: config/bfin/bfin.c:4713 #, gcc-internal-format @@ -29648,10 +29427,9 @@ msgid "%qE attribute cannot be specified for local variables" msgstr "attributet %qE kan inte anges för lokala variabler" #: config/c6x/c6x.c:242 -#, fuzzy, gcc-internal-format -#| msgid "-fpic and -fPIC not supported without -mdsbt on this target" +#, gcc-internal-format msgid "%<-fpic%> and %<-fPIC%> not supported without %<-mdsbt%> on this target" -msgstr "-fpic och -fPIC stödjs inte utan -mdsbt för detta mål" +msgstr "%<-fpic%> och %<-fPIC%> stödjs inte utan %<-mdsbt%> för detta mål" #: config/c6x/c6x.h:351 config/nvptx/nvptx.h:181 #, gcc-internal-format @@ -29664,10 +29442,9 @@ msgid "data-model=far not valid for cr16c architecture" msgstr "data-model=far är inte giltigt för arkitekturen cr16c" #: config/cr16/cr16.c:309 -#, fuzzy, gcc-internal-format -#| msgid "invalid data model option -mdata-model=%s" +#, gcc-internal-format msgid "invalid data model option %<-mdata-model=%s%>" -msgstr "ogiltig datamodellflagga -mdata-model=%s" +msgstr "ogiltig datamodellflagga %<-mdata-model=%s%>" #: config/cr16/cr16.h:408 #, gcc-internal-format @@ -51154,7 +50931,7 @@ msgstr "initierarsträng för vektor av tecken är för stor" #: cp/typeck2.c:1226 #, gcc-internal-format msgid "initializing a base class of type %qT results in object slicing" -msgstr "" +msgstr "att initiera en basklass av typ %qT resulterar i objektskivning" #: cp/typeck2.c:1228 #, fuzzy, gcc-internal-format -- cgit v1.1 From 0c0b2104b467f85b7dcdd97285fbfa22c08b70f8 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Tue, 30 Apr 2019 00:16:15 +0000 Subject: Daily bump. From-SVN: r270672 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 5ffe417..3556de5 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190429 +20190430 -- cgit v1.1 From 8c3ce59e2b10ecc3cf7fe9804005405bedc3e280 Mon Sep 17 00:00:00 2001 From: Bin Cheng Date: Tue, 30 Apr 2019 03:00:59 +0000 Subject: re PR tree-optimization/90240 (ICE in try_improve_iv_set, at tree-ssa-loop-ivopts.c:6694) PR tree-optimization/90240 Revert: 2019-04-23 Bin Cheng PR tree-optimization/90078 * tree-ssa-loop-ivopts.c (comp_cost::operator +,-,+=,-+,/=,*=): Add checks for infinite_cost overflow. * gcc/testsuite/g++.dg/tree-ssa/pr90078.C: New test. From-SVN: r270673 --- gcc/ChangeLog | 10 ++ gcc/testsuite/ChangeLog | 9 ++ gcc/testsuite/g++.dg/tree-ssa/pr90078.C | 199 -------------------------------- gcc/tree-ssa-loop-ivopts.c | 13 --- 4 files changed, 19 insertions(+), 212 deletions(-) delete mode 100644 gcc/testsuite/g++.dg/tree-ssa/pr90078.C (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4a0d547..99c5402 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2019-04-30 Bin Cheng + + PR tree-optimization/90240 + Revert: + 2019-04-23 Bin Cheng + + PR tree-optimization/90078 + * tree-ssa-loop-ivopts.c (comp_cost::operator +,-,+=,-+,/=,*=): Add + checks for infinite_cost overflow. + 2019-04-29 Jeff Law * passes.def: Move -Wrestrict pass after copy propagation. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d642815..eb2599a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2019-04-30 Bin Cheng + + PR tree-optimization/90240 + Revert: + 2019-04-23 Bin Cheng + + PR tree-optimization/90078 + * gcc/testsuite/g++.dg/tree-ssa/pr90078.C: New test. + 2019-04-29 Vladislav Ivanishin * gcc.dg/uninit-25-gimple.c: New test. diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr90078.C b/gcc/testsuite/g++.dg/tree-ssa/pr90078.C deleted file mode 100644 index e36f50e..0000000 --- a/gcc/testsuite/g++.dg/tree-ssa/pr90078.C +++ /dev/null @@ -1,199 +0,0 @@ -// { dg-do compile } -// { dg-options "-std=c++14 -O2 -ftemplate-depth=1000000" } - -template struct Tensor3; -template -struct Tensor3_Expr; - -template struct Tensor4; -template -struct Tensor4_Expr; - -template struct Index -{}; -template struct Number -{ - Number(){}; - operator int() const { return N; } -}; - -template -struct Tensor3 -{ - T data[Tensor_Dim0][Tensor_Dim1][Tensor_Dim2]; - - T operator()(const int N1, const int N2, const int N3) const - { - return data[N1][N2][N3]; - } - - template - Tensor3_Expr, T, - Dim0, Dim1, Dim2, i, j, k> - operator()(const Index, const Index, - const Index) const - { - return Tensor3_Expr, - T, Dim0, Dim1, Dim2, i, j, k>(*this); - } -}; - -template -struct Tensor3_Expr -{ - A iter; - - Tensor3_Expr(const A &a) : iter(a) {} - T operator()(const int N1, const int N2, const int N3) const - { - return iter(N1, N2, N3); - } -}; - -template -struct Tensor3_Expr, T, Dim0, - Dim1, Dim2, i, j, k> -{ - Tensor3 &iter; - - Tensor3_Expr(Tensor3 &a) : iter(a) - {} - T operator()(const int N1, const int N2, const int N3) const - { - return iter(N1, N2, N3); - } -}; - -template -struct Tensor3_times_Tensor3_21 -{ - Tensor3_Expr iterA; - Tensor3_Expr iterB; - - template - T eval(const int N1, const int N2, const int N3, const int N4, - const Number &) const - { - return iterA(N1, N2, CurrentDim - 1) * iterB(CurrentDim - 1, N3, N4) - + eval(N1, N2, N3, N4, Number()); - } - T eval(const int N1, const int N2, const int N3, const int N4, - const Number<1> &) const - { - return iterA(N1, N2, 0) * iterB(0, N3, N4); - } - - Tensor3_times_Tensor3_21( - const Tensor3_Expr &a, - const Tensor3_Expr &b) - : iterA(a), iterB(b) - {} - T operator()(const int &N1, const int &N2, const int &N3, - const int &N4) const - { - return eval(N1, N2, N3, N4, Number()); - } -}; - -template -Tensor4_Expr, - T, Dim0, Dim1, Dim4, Dim5, i, j, l, m> -operator*(const Tensor3_Expr &a, - const Tensor3_Expr &b) -{ - using TensorExpr = Tensor3_times_Tensor3_21; - return Tensor4_Expr( - TensorExpr(a, b)); -}; - -template -struct Tensor4 -{ - T data[Tensor_Dim0][Tensor_Dim1][Tensor_Dim2][Tensor_Dim3]; - - Tensor4() {} - T &operator()(const int N1, const int N2, const int N3, const int N4) - { - return data[N1][N2][N3][N4]; - } - - template - Tensor4_Expr, - T, Dim0, Dim1, Dim2, Dim3, i, j, k, l> - operator()(const Index, const Index, const Index, - const Index) - { - return Tensor4_Expr< - Tensor4, T, Dim0, - Dim1, Dim2, Dim3, i, j, k, l>(*this); - }; -}; - -template -struct Tensor4_Expr -{ - A iter; - - Tensor4_Expr(const A &a) : iter(a) {} - T operator()(const int N1, const int N2, const int N3, const int N4) const - { - return iter(N1, N2, N3, N4); - } -}; - -template -struct Tensor4_Expr, T, Dim0, Dim1, Dim2, - Dim3, i, j, k, l> -{ - Tensor4 &iter; - - Tensor4_Expr(Tensor4 &a) : iter(a) {} - T operator()(const int N1, const int N2, const int N3, const int N4) const - { - return iter(N1, N2, N3, N4); - } - - template - auto &operator=(const Tensor4_Expr &rhs) - { - for(int ii = 0; ii < Dim0; ++ii) - for(int jj = 0; jj < Dim1; ++jj) - for(int kk = 0; kk < Dim2; ++kk) - for(int ll = 0; ll < Dim3; ++ll) - { - iter(ii, jj, kk, ll) = rhs(ii, jj, kk, ll); - } - return *this; - } -}; - -int main() -{ - Tensor3 t1; - Tensor3 t2; - - Index<'l', 100> l; - Index<'m', 100> m; - Index<'k', 1000> k; - Index<'n', 100> n; - Index<'o', 100> o; - - Tensor4 res; - res(l, m, n, o) = t1(l, m, k) * t2(k, n, o); - return 0; -} - diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c index 4ca1f0e..a2b6b2b 100644 --- a/gcc/tree-ssa-loop-ivopts.c +++ b/gcc/tree-ssa-loop-ivopts.c @@ -243,9 +243,6 @@ operator+ (comp_cost cost1, comp_cost cost2) if (cost1.infinite_cost_p () || cost2.infinite_cost_p ()) return infinite_cost; - if (cost1.cost + cost2.cost >= infinite_cost.cost) - return infinite_cost; - cost1.cost += cost2.cost; cost1.complexity += cost2.complexity; @@ -259,8 +256,6 @@ operator- (comp_cost cost1, comp_cost cost2) return infinite_cost; gcc_assert (!cost2.infinite_cost_p ()); - if (cost1.cost - cost2.cost >= infinite_cost.cost) - return infinite_cost; cost1.cost -= cost2.cost; cost1.complexity -= cost2.complexity; @@ -281,8 +276,6 @@ comp_cost::operator+= (HOST_WIDE_INT c) if (infinite_cost_p ()) return *this; - if (this->cost + c >= infinite_cost.cost) - return infinite_cost; this->cost += c; return *this; @@ -294,8 +287,6 @@ comp_cost::operator-= (HOST_WIDE_INT c) if (infinite_cost_p ()) return *this; - if (this->cost - c >= infinite_cost.cost) - return infinite_cost; this->cost -= c; return *this; @@ -304,7 +295,6 @@ comp_cost::operator-= (HOST_WIDE_INT c) comp_cost comp_cost::operator/= (HOST_WIDE_INT c) { - gcc_assert (c != 0); if (infinite_cost_p ()) return *this; @@ -319,9 +309,6 @@ comp_cost::operator*= (HOST_WIDE_INT c) if (infinite_cost_p ()) return *this; - if (this->cost * c >= infinite_cost.cost) - return infinite_cost; - this->cost *= c; return *this; -- cgit v1.1 From 3f58b66d6b8b01328ca4b08f9da6910adbfad3ec Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 30 Apr 2019 10:33:29 +0200 Subject: Wrap a string with _ for translation (PR translation/90274). 2019-04-30 Martin Liska PR translation/90274 * opts.c (print_filtered_help): Wrap string in _(...). From-SVN: r270675 --- gcc/ChangeLog | 5 +++++ gcc/opts.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 99c5402..2604ffa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-04-30 Martin Liska + + PR translation/90274 + * opts.c (print_filtered_help): Wrap string in _(...). + 2019-04-30 Bin Cheng PR tree-optimization/90240 diff --git a/gcc/opts.c b/gcc/opts.c index 02f6b46..6d6ff19 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -1578,7 +1578,8 @@ print_filtered_help (unsigned int include_flags, for (unsigned i = 0; i < help_tuples.length (); i++) { const struct cl_option *option = cl_options + help_tuples[i].m_code; - printf (" Known valid arguments for %s option:\n ", option->opt_text); + printf (_(" Known valid arguments for %s option:\n "), + option->opt_text); for (unsigned j = 0; j < help_tuples[i].m_values.length (); j++) printf (" %s", help_tuples[i].m_values[j]); printf ("\n\n"); -- cgit v1.1 From ae8f39886b954f37941a72c8e020604f27fff14f Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 30 Apr 2019 11:07:28 +0200 Subject: re PR tree-optimization/89475 (Teach ccp about __builtin_bswap{16,32,64}) PR tree-optimization/89475 * tree-ssa-ccp.c (evaluate_stmt): Handle BUILT_IN_BSWAP{16,32,64} calls. * gcc.dg/tree-ssa/pr89475.c: New test. From-SVN: r270680 --- gcc/ChangeLog | 6 ++ gcc/gimple-ssa-store-merging.c | 53 +++++++++++++--- gcc/testsuite/ChangeLog | 5 ++ gcc/testsuite/gcc.dg/tree-ssa/pr89475.c | 104 ++++++++++++++++++++++++++++++++ gcc/tree-ssa-ccp.c | 29 +++++++++ 5 files changed, 190 insertions(+), 7 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/pr89475.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2604ffa..ff57006 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-30 Jakub Jelinek + + PR tree-optimization/89475 + * tree-ssa-ccp.c (evaluate_stmt): Handle BUILT_IN_BSWAP{16,32,64} + calls. + 2019-04-30 Martin Liska PR translation/90274 diff --git a/gcc/gimple-ssa-store-merging.c b/gcc/gimple-ssa-store-merging.c index 4a8cf6f..5fdff6e 100644 --- a/gcc/gimple-ssa-store-merging.c +++ b/gcc/gimple-ssa-store-merging.c @@ -1615,13 +1615,31 @@ encode_tree_to_bitpos (tree expr, unsigned char *ptr, int bitlen, int bitpos, unsigned int total_bytes) { unsigned int first_byte = bitpos / BITS_PER_UNIT; - tree tmp_int = expr; bool sub_byte_op_p = ((bitlen % BITS_PER_UNIT) || (bitpos % BITS_PER_UNIT) || !int_mode_for_size (bitlen, 0).exists ()); + bool empty_ctor_p + = (TREE_CODE (expr) == CONSTRUCTOR + && CONSTRUCTOR_NELTS (expr) == 0 + && TYPE_SIZE_UNIT (TREE_TYPE (expr)) + && tree_fits_uhwi_p (TYPE_SIZE_UNIT (TREE_TYPE (expr)))); if (!sub_byte_op_p) - return native_encode_expr (tmp_int, ptr + first_byte, total_bytes) != 0; + { + if (first_byte >= total_bytes) + return false; + total_bytes -= first_byte; + if (empty_ctor_p) + { + unsigned HOST_WIDE_INT rhs_bytes + = tree_to_uhwi (TYPE_SIZE_UNIT (TREE_TYPE (expr))); + if (rhs_bytes > total_bytes) + return false; + memset (ptr + first_byte, '\0', rhs_bytes); + return true; + } + return native_encode_expr (expr, ptr + first_byte, total_bytes) != 0; + } /* LITTLE-ENDIAN We are writing a non byte-sized quantity or at a position that is not @@ -1667,14 +1685,29 @@ encode_tree_to_bitpos (tree expr, unsigned char *ptr, int bitlen, int bitpos, /* We must be dealing with fixed-size data at this point, since the total size is also fixed. */ - fixed_size_mode mode = as_a (TYPE_MODE (TREE_TYPE (expr))); + unsigned int byte_size; + if (empty_ctor_p) + { + unsigned HOST_WIDE_INT rhs_bytes + = tree_to_uhwi (TYPE_SIZE_UNIT (TREE_TYPE (expr))); + if (rhs_bytes > total_bytes) + return false; + byte_size = rhs_bytes; + } + else + { + fixed_size_mode mode + = as_a (TYPE_MODE (TREE_TYPE (expr))); + byte_size = GET_MODE_SIZE (mode); + } /* Allocate an extra byte so that we have space to shift into. */ - unsigned int byte_size = GET_MODE_SIZE (mode) + 1; + byte_size++; unsigned char *tmpbuf = XALLOCAVEC (unsigned char, byte_size); memset (tmpbuf, '\0', byte_size); /* The store detection code should only have allowed constants that are - accepted by native_encode_expr. */ - if (native_encode_expr (expr, tmpbuf, byte_size - 1) == 0) + accepted by native_encode_expr or empty ctors. */ + if (!empty_ctor_p + && native_encode_expr (expr, tmpbuf, byte_size - 1) == 0) gcc_unreachable (); /* The native_encode_expr machinery uses TYPE_MODE to determine how many @@ -4164,7 +4197,8 @@ lhs_valid_for_store_merging_p (tree lhs) tree_code code = TREE_CODE (lhs); if (code == ARRAY_REF || code == ARRAY_RANGE_REF || code == MEM_REF - || code == COMPONENT_REF || code == BIT_FIELD_REF) + || code == COMPONENT_REF || code == BIT_FIELD_REF + || DECL_P (lhs)) return true; return false; @@ -4178,6 +4212,11 @@ static bool rhs_valid_for_store_merging_p (tree rhs) { unsigned HOST_WIDE_INT size; + if (TREE_CODE (rhs) == CONSTRUCTOR + && CONSTRUCTOR_NELTS (rhs) == 0 + && TYPE_SIZE_UNIT (TREE_TYPE (rhs)) + && tree_fits_uhwi_p (TYPE_SIZE_UNIT (TREE_TYPE (rhs)))) + return true; return (GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (rhs))).is_constant (&size) && native_encode_expr (rhs, NULL, size) != 0); } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index eb2599a..b1f2585 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-30 Jakub Jelinek + + PR tree-optimization/89475 + * gcc.dg/tree-ssa/pr89475.c: New test. + 2019-04-30 Bin Cheng PR tree-optimization/90240 diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr89475.c b/gcc/testsuite/gcc.dg/tree-ssa/pr89475.c new file mode 100644 index 0000000..4a84bea --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr89475.c @@ -0,0 +1,104 @@ +/* PR tree-optimization/89475 */ +/* { dg-do compile { target { ilp32 || lp64 } } } */ +/* { dg-options "-O2 -fdump-tree-optimized" } */ +/* { dg-final { scan-tree-dump-not "link_error " "optimized" } } */ + +void link_error (void); + +unsigned short +f0 (unsigned short x) +{ + x &= 0xaa55; + x = __builtin_bswap16 (x); + if (x & 0xaa55) + link_error (); + return x; +} + +unsigned short +f1 (unsigned short x) +{ + x &= 0x55aa; + x = __builtin_bswap16 (x); + if (x & 0x55aa) + link_error (); + return x; +} + +unsigned int +f2 (unsigned int x) +{ + x &= 0x55aa5aa5U; + x = __builtin_bswap32 (x); + if (x & 0x5aa555aaU) + link_error (); + return x; +} + +unsigned long long int +f3 (unsigned long long int x) +{ + x &= 0x55aa5aa544cc2211ULL; + x = __builtin_bswap64 (x); + if (x & 0xeedd33bb5aa555aaULL) + link_error (); + return x; +} + +unsigned short +f4 (unsigned short x) +{ + x = __builtin_bswap32 (x); + if (x != 0) + link_error (); + return x; +} + +unsigned int +f5 (unsigned int x) +{ + x = __builtin_bswap64 (x); + if (x != 0) + link_error (); + return x; +} + +unsigned short +f6 (unsigned short x) +{ + x |= 0xaa55; + x = __builtin_bswap16 (x); + if ((x | 0xaa55) != 0xffff) + link_error (); + return x; +} + +unsigned short +f7 (unsigned short x) +{ + x |= 0x55aa; + x = __builtin_bswap16 (x); + if ((x | 0x55aa) != 0xffff) + link_error (); + return x; +} + +unsigned int +f8 (unsigned int x) +{ + x |= 0x55aa5aa5U; + x = __builtin_bswap32 (x); + if ((x | 0x5aa555aaU) != 0xffffffffU) + link_error (); + return x; +} + +unsigned long long int +f9 (unsigned long long int x) +{ + x |= 0x55aa5aa544cc2211ULL; + x = __builtin_bswap64 (x); + if ((x | 0xeedd33bb5aa555aaULL) != 0xffffffffffffffffULL) + link_error (); + return x; +} diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c index e6bcc21..51b9d9f 100644 --- a/gcc/tree-ssa-ccp.c +++ b/gcc/tree-ssa-ccp.c @@ -1960,6 +1960,35 @@ evaluate_stmt (gimple *stmt) break; } + case BUILT_IN_BSWAP16: + case BUILT_IN_BSWAP32: + case BUILT_IN_BSWAP64: + val = get_value_for_expr (gimple_call_arg (stmt, 0), true); + if (val.lattice_val == UNDEFINED) + break; + else if (val.lattice_val == CONSTANT + && val.value + && TREE_CODE (val.value) == INTEGER_CST) + { + tree type = TREE_TYPE (gimple_call_lhs (stmt)); + int prec = TYPE_PRECISION (type); + wide_int wval = wi::to_wide (val.value); + val.value + = wide_int_to_tree (type, + wide_int::from (wval, prec, + UNSIGNED).bswap ()); + val.mask + = widest_int::from (wide_int::from (val.mask, prec, + UNSIGNED).bswap (), + UNSIGNED); + if (wi::sext (val.mask, prec) != -1) + break; + } + val.lattice_val = VARYING; + val.value = NULL_TREE; + val.mask = -1; + break; + default:; } } -- cgit v1.1 From 791536baadc9f469ec8eef2d7213c6f6091c5fa9 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 30 Apr 2019 11:16:36 +0200 Subject: Fix -Wenum-compare-switch warning in i386.c. 2019-04-30 Martin Liska * config/i386/i386.c (ix86_builtin_reciprocal): Cast DECL_FUNCTION_CODE into ix86_builtins enum before the switch statement. From-SVN: r270681 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.c | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ff57006..e053ff1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-30 Martin Liska + + * config/i386/i386.c (ix86_builtin_reciprocal): Cast + DECL_FUNCTION_CODE into ix86_builtins enum before + the switch statement. + 2019-04-30 Jakub Jelinek PR tree-optimization/89475 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index d191e8c..43ee776 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -39382,7 +39382,9 @@ use_rsqrt_p () static tree ix86_builtin_reciprocal (tree fndecl) { - switch (DECL_FUNCTION_CODE (fndecl)) + enum ix86_builtins fn_code + = (enum ix86_builtins) DECL_FUNCTION_CODE (fndecl); + switch (fn_code) { /* Vectorized version of sqrt to rsqrt conversion. */ case IX86_BUILTIN_SQRTPS_NR: -- cgit v1.1 From 0d67a51060e7d67b685ace6ba5395d9a98e2f5be Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 30 Apr 2019 11:19:41 +0200 Subject: Refactor gimple_fold_builtin_memory_op function. 2019-04-30 Martin Liska * gimple-fold.c (gimple_fold_builtin_memory_op): Change endp into built_in_function enum. Remove code for endp == 2 and use BUILT_IN_* constants. (gimple_fold_builtin): Call the function with fcode. From-SVN: r270682 --- gcc/ChangeLog | 7 +++++++ gcc/gimple-fold.c | 19 +++++++------------ 2 files changed, 14 insertions(+), 12 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e053ff1..cb69c4d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2019-04-30 Martin Liska + * gimple-fold.c (gimple_fold_builtin_memory_op): Change endp + into built_in_function enum. Remove code for endp == 2 and + use BUILT_IN_* constants. + (gimple_fold_builtin): Call the function with fcode. + +2019-04-30 Martin Liska + * config/i386/i386.c (ix86_builtin_reciprocal): Cast DECL_FUNCTION_CODE into ix86_builtins enum before the switch statement. diff --git a/gcc/gimple-fold.c b/gcc/gimple-fold.c index f308180..d3ef05b 100644 --- a/gcc/gimple-fold.c +++ b/gcc/gimple-fold.c @@ -692,7 +692,7 @@ size_must_be_zero_p (tree size) static bool gimple_fold_builtin_memory_op (gimple_stmt_iterator *gsi, - tree dest, tree src, int endp) + tree dest, tree src, enum built_in_function code) { gimple *stmt = gsi_stmt (*gsi); tree lhs = gimple_call_lhs (stmt); @@ -839,7 +839,7 @@ gimple_fold_builtin_memory_op (gimple_stmt_iterator *gsi, } } - if (endp == 3) + if (code == BUILT_IN_MEMMOVE) { /* Both DEST and SRC must be pointer types. ??? This is what old code did. Is the testing for pointer types @@ -1102,17 +1102,16 @@ set_vop_and_replace: done: gimple_seq stmts = NULL; - if (endp == 0 || endp == 3) + if (code == BUILT_IN_MEMCPY || code == BUILT_IN_MEMMOVE) len = NULL_TREE; - else if (endp == 2) - len = gimple_build (&stmts, loc, MINUS_EXPR, TREE_TYPE (len), len, - ssize_int (1)); - if (endp == 2 || endp == 1) + else if (code == BUILT_IN_MEMPCPY) { len = gimple_convert_to_ptrofftype (&stmts, loc, len); dest = gimple_build (&stmts, loc, POINTER_PLUS_EXPR, TREE_TYPE (dest), dest, len); } + else + gcc_unreachable (); gsi_insert_seq_before (gsi, stmts, GSI_SAME_STMT); gimple *repl = gimple_build_assign (lhs, dest); @@ -3847,14 +3846,10 @@ gimple_fold_builtin (gimple_stmt_iterator *gsi) gimple_call_arg (stmt, 1), gimple_call_arg (stmt, 2)); case BUILT_IN_MEMCPY: - return gimple_fold_builtin_memory_op (gsi, gimple_call_arg (stmt, 0), - gimple_call_arg (stmt, 1), 0); case BUILT_IN_MEMPCPY: - return gimple_fold_builtin_memory_op (gsi, gimple_call_arg (stmt, 0), - gimple_call_arg (stmt, 1), 1); case BUILT_IN_MEMMOVE: return gimple_fold_builtin_memory_op (gsi, gimple_call_arg (stmt, 0), - gimple_call_arg (stmt, 1), 3); + gimple_call_arg (stmt, 1), fcode); case BUILT_IN_SPRINTF_CHK: case BUILT_IN_VSPRINTF_CHK: return gimple_fold_builtin_sprintf_chk (gsi, fcode); -- cgit v1.1 From abb3c64e76e7d72c0465cbec7cf6e0a47b64e82b Mon Sep 17 00:00:00 2001 From: Ramana Radhakrishnan Date: Tue, 30 Apr 2019 11:22:11 +0000 Subject: [Patch AArch64] Add __ARM_FEATURE_ATOMICS This keeps coming up repeatedly and the ACLE has finally added __ARM_FEATURE_ATOMICS for the LSE feature in GCC. This is now part of the latest ACLE release (https://developer.arm.com/docs/101028/latest/5-feature-test-macros) I know it's late for GCC-9 but this is a simple macro which need not wait for another year. Ok for trunk and to backport to all release branches ? Tested with a simple build and a smoke test. PR target/86538 * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): Define __ARM_FEATURE_ATOMICS From-SVN: r270686 --- gcc/ChangeLog | 6 ++++++ gcc/config/aarch64/aarch64-c.c | 1 + 2 files changed, 7 insertions(+) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cb69c4d..471a96f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-30 Ramana Radhakrishnan + + PR target/86538 + * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): + Define __ARM_FEATURE_ATOMICS + 2019-04-30 Martin Liska * gimple-fold.c (gimple_fold_builtin_memory_op): Change endp diff --git a/gcc/config/aarch64/aarch64-c.c b/gcc/config/aarch64/aarch64-c.c index fcb1e80..6d5acb0 100644 --- a/gcc/config/aarch64/aarch64-c.c +++ b/gcc/config/aarch64/aarch64-c.c @@ -147,6 +147,7 @@ aarch64_update_cpp_builtins (cpp_reader *pfile) builtin_define_with_int_value ("__ARM_FEATURE_SVE_BITS", bits); } + aarch64_def_or_undef (TARGET_LSE, "__ARM_FEATURE_ATOMICS", pfile); aarch64_def_or_undef (TARGET_AES, "__ARM_FEATURE_AES", pfile); aarch64_def_or_undef (TARGET_SHA2, "__ARM_FEATURE_SHA2", pfile); aarch64_def_or_undef (TARGET_SHA3, "__ARM_FEATURE_SHA3", pfile); -- cgit v1.1 From d7b0896b2392b803679ac5ca88087b5c3ecede7e Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 30 Apr 2019 14:07:27 +0200 Subject: re PR target/89093 (C++ exception handling clobbers d8 VFP register) PR target/89093 * config/aarch64/aarch64.c (aarch64_process_one_target_attr): Don't skip whitespace at the start of target attribute string. * gcc.target/aarch64/pr89093.c: New test. * gcc.target/aarch64/pr63304_1.c: Remove space from target string. From-SVN: r270690 --- gcc/ChangeLog | 8 +++++++- gcc/config/aarch64/aarch64.c | 4 ---- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gcc.target/aarch64/pr63304_1.c | 2 +- gcc/testsuite/gcc.target/aarch64/pr89093.c | 7 +++++++ 5 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 gcc/testsuite/gcc.target/aarch64/pr89093.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 471a96f..4ed2fc4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,8 +1,14 @@ +2019-04-30 Jakub Jelinek + + PR target/89093 + * config/aarch64/aarch64.c (aarch64_process_one_target_attr): Don't skip + whitespace at the start of target attribute string. + 2019-04-30 Ramana Radhakrishnan PR target/86538 * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): - Define __ARM_FEATURE_ATOMICS + Define __ARM_FEATURE_ATOMICS. 2019-04-30 Martin Liska diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 1425943..c3c88c8 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -12536,10 +12536,6 @@ aarch64_process_one_target_attr (char *arg_str) char *str_to_check = (char *) alloca (len + 1); strcpy (str_to_check, arg_str); - /* Skip leading whitespace. */ - while (*str_to_check == ' ' || *str_to_check == '\t') - str_to_check++; - /* We have something like __attribute__ ((target ("+fp+nosimd"))). It is easier to detect and handle it explicitly here rather than going through the machinery for the rest of the target attributes in this diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b1f2585..b3908ea 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,9 @@ 2019-04-30 Jakub Jelinek + PR target/89093 + * gcc.target/aarch64/pr89093.c: New test. + * gcc.target/aarch64/pr63304_1.c: Remove space from target string. + PR tree-optimization/89475 * gcc.dg/tree-ssa/pr89475.c: New test. diff --git a/gcc/testsuite/gcc.target/aarch64/pr63304_1.c b/gcc/testsuite/gcc.target/aarch64/pr63304_1.c index b00f9a6..99b1552 100644 --- a/gcc/testsuite/gcc.target/aarch64/pr63304_1.c +++ b/gcc/testsuite/gcc.target/aarch64/pr63304_1.c @@ -1,7 +1,7 @@ /* { dg-do assemble } */ /* { dg-options "-O1 --save-temps" } */ #pragma GCC push_options -#pragma GCC target ("+nothing+simd, cmodel=small") +#pragma GCC target ("+nothing+simd,cmodel=small") int cal (double a) diff --git a/gcc/testsuite/gcc.target/aarch64/pr89093.c b/gcc/testsuite/gcc.target/aarch64/pr89093.c new file mode 100644 index 0000000..08a3f41 --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/pr89093.c @@ -0,0 +1,7 @@ +/* PR target/89093 */ +/* { dg-do compile } */ + +__attribute__((target (" no-strict-align"))) void f1 (void) {} /* { dg-error "is not valid" } */ +__attribute__((target (" general-regs-only"))) void f2 (void) {} /* { dg-error "is not valid" } */ +#pragma GCC target (" general-regs-only") /* { dg-error "is not valid" } */ +void f3 (void) {} -- cgit v1.1 From b174ca9bb7bfcf7f60e33fee7937c7844751ab68 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 30 Apr 2019 14:11:18 +0200 Subject: Remove unintended part of r270680 commit. From-SVN: r270691 --- gcc/gimple-ssa-store-merging.c | 53 ++++++------------------------------------ 1 file changed, 7 insertions(+), 46 deletions(-) (limited to 'gcc') diff --git a/gcc/gimple-ssa-store-merging.c b/gcc/gimple-ssa-store-merging.c index 5fdff6e..4a8cf6f 100644 --- a/gcc/gimple-ssa-store-merging.c +++ b/gcc/gimple-ssa-store-merging.c @@ -1615,31 +1615,13 @@ encode_tree_to_bitpos (tree expr, unsigned char *ptr, int bitlen, int bitpos, unsigned int total_bytes) { unsigned int first_byte = bitpos / BITS_PER_UNIT; + tree tmp_int = expr; bool sub_byte_op_p = ((bitlen % BITS_PER_UNIT) || (bitpos % BITS_PER_UNIT) || !int_mode_for_size (bitlen, 0).exists ()); - bool empty_ctor_p - = (TREE_CODE (expr) == CONSTRUCTOR - && CONSTRUCTOR_NELTS (expr) == 0 - && TYPE_SIZE_UNIT (TREE_TYPE (expr)) - && tree_fits_uhwi_p (TYPE_SIZE_UNIT (TREE_TYPE (expr)))); if (!sub_byte_op_p) - { - if (first_byte >= total_bytes) - return false; - total_bytes -= first_byte; - if (empty_ctor_p) - { - unsigned HOST_WIDE_INT rhs_bytes - = tree_to_uhwi (TYPE_SIZE_UNIT (TREE_TYPE (expr))); - if (rhs_bytes > total_bytes) - return false; - memset (ptr + first_byte, '\0', rhs_bytes); - return true; - } - return native_encode_expr (expr, ptr + first_byte, total_bytes) != 0; - } + return native_encode_expr (tmp_int, ptr + first_byte, total_bytes) != 0; /* LITTLE-ENDIAN We are writing a non byte-sized quantity or at a position that is not @@ -1685,29 +1667,14 @@ encode_tree_to_bitpos (tree expr, unsigned char *ptr, int bitlen, int bitpos, /* We must be dealing with fixed-size data at this point, since the total size is also fixed. */ - unsigned int byte_size; - if (empty_ctor_p) - { - unsigned HOST_WIDE_INT rhs_bytes - = tree_to_uhwi (TYPE_SIZE_UNIT (TREE_TYPE (expr))); - if (rhs_bytes > total_bytes) - return false; - byte_size = rhs_bytes; - } - else - { - fixed_size_mode mode - = as_a (TYPE_MODE (TREE_TYPE (expr))); - byte_size = GET_MODE_SIZE (mode); - } + fixed_size_mode mode = as_a (TYPE_MODE (TREE_TYPE (expr))); /* Allocate an extra byte so that we have space to shift into. */ - byte_size++; + unsigned int byte_size = GET_MODE_SIZE (mode) + 1; unsigned char *tmpbuf = XALLOCAVEC (unsigned char, byte_size); memset (tmpbuf, '\0', byte_size); /* The store detection code should only have allowed constants that are - accepted by native_encode_expr or empty ctors. */ - if (!empty_ctor_p - && native_encode_expr (expr, tmpbuf, byte_size - 1) == 0) + accepted by native_encode_expr. */ + if (native_encode_expr (expr, tmpbuf, byte_size - 1) == 0) gcc_unreachable (); /* The native_encode_expr machinery uses TYPE_MODE to determine how many @@ -4197,8 +4164,7 @@ lhs_valid_for_store_merging_p (tree lhs) tree_code code = TREE_CODE (lhs); if (code == ARRAY_REF || code == ARRAY_RANGE_REF || code == MEM_REF - || code == COMPONENT_REF || code == BIT_FIELD_REF - || DECL_P (lhs)) + || code == COMPONENT_REF || code == BIT_FIELD_REF) return true; return false; @@ -4212,11 +4178,6 @@ static bool rhs_valid_for_store_merging_p (tree rhs) { unsigned HOST_WIDE_INT size; - if (TREE_CODE (rhs) == CONSTRUCTOR - && CONSTRUCTOR_NELTS (rhs) == 0 - && TYPE_SIZE_UNIT (TREE_TYPE (rhs)) - && tree_fits_uhwi_p (TYPE_SIZE_UNIT (TREE_TYPE (rhs)))) - return true; return (GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (rhs))).is_constant (&size) && native_encode_expr (rhs, NULL, size) != 0); } -- cgit v1.1 From 44bf4743079e18380ff7ef208299545675f05671 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 30 Apr 2019 15:31:22 +0200 Subject: Add missing dash for 2 options in documentation (PR debug/90288). 2019-04-30 Martin Liska PR debug/90288 * doc/invoke.texi: Add missing dash for gas-locview-support and gno-as-locview-support. From-SVN: r270692 --- gcc/ChangeLog | 6 ++++++ gcc/doc/invoke.texi | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4ed2fc4..9d1cd01 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-30 Martin Liska + + PR debug/90288 + * doc/invoke.texi: Add missing dash for gas-locview-support + and gno-as-locview-support. + 2019-04-30 Jakub Jelinek PR target/89093 diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 29585cf..516eb24 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -7961,7 +7961,7 @@ assembler was found to support such directives. Force GCC to generate DWARF2+ line number tables internally, if DWARF2+ line number tables are to be generated. -@item gas-locview-support +@item -gas-locview-support @opindex gas-locview-support Inform the compiler that the assembler supports @code{view} assignment and reset assertion checking in @code{.loc} directives. @@ -7969,7 +7969,7 @@ and reset assertion checking in @code{.loc} directives. This option will be enabled by default if, at GCC configure time, the assembler was found to support them. -@item gno-as-locview-support +@item -gno-as-locview-support Force GCC to assign view numbers internally, if @option{-gvariable-location-views} are explicitly requested. -- cgit v1.1 From 5bcc5a3b28d56bff2c70e5f52ce25f2cd7ee055e Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Tue, 30 Apr 2019 15:50:24 +0200 Subject: Add option suggestion for -Werror=foo and corresponding pragma. 2019-04-30 Martin Liska * opts.c (enable_warning_as_error): Provide hints for unknown options. 2019-04-30 Martin Liska * c-pragma.c (handle_pragma_diagnostic): Provide hints for unknown options. 2019-04-30 Martin Liska * gcc.dg/Werror-13.c: Add new tests for it. * gcc.dg/pragma-diag-6.c: Likewise. From-SVN: r270693 --- gcc/ChangeLog | 5 +++++ gcc/c-family/ChangeLog | 5 +++++ gcc/c-family/c-pragma.c | 13 +++++++++++-- gcc/opts.c | 17 ++++++++++++++--- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/Werror-13.c | 12 +++++++----- gcc/testsuite/gcc.dg/pragma-diag-6.c | 3 +++ 7 files changed, 50 insertions(+), 10 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d1cd01..f1df76a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2019-04-30 Martin Liska + * opts.c (enable_warning_as_error): Provide hints + for unknown options. + +2019-04-30 Martin Liska + PR debug/90288 * doc/invoke.texi: Add missing dash for gas-locview-support and gno-as-locview-support. diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 9a662f0..8975865 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,8 @@ +2019-04-30 Martin Liska + + * c-pragma.c (handle_pragma_diagnostic): Provide hints + for unknown options. + 2019-04-26 Richard Sandiford * c-warn.c (strict_aliasing_warning): Apply COMPLETE_TYPE_P to diff --git a/gcc/c-family/c-pragma.c b/gcc/c-family/c-pragma.c index fbc734a..6b8ada5 100644 --- a/gcc/c-family/c-pragma.c +++ b/gcc/c-family/c-pragma.c @@ -33,6 +33,7 @@ along with GCC; see the file COPYING3. If not see #include "c-pragma.h" #include "opts.h" #include "plugin.h" +#include "opt-suggestions.h" #define GCC_BAD(gmsgid) \ do { warning (OPT_Wpragmas, gmsgid); return; } while (0) @@ -804,8 +805,16 @@ handle_pragma_diagnostic(cpp_reader *ARG_UNUSED(dummy)) unsigned int option_index = find_opt (option_string + 1, lang_mask); if (option_index == OPT_SPECIAL_unknown) { - warning_at (loc, OPT_Wpragmas, - "unknown option after %<#pragma GCC diagnostic%> kind"); + option_proposer op; + const char *hint = op.suggest_option (option_string + 1); + if (hint) + warning_at (loc, OPT_Wpragmas, + "unknown option after %<#pragma GCC diagnostic%> kind;" + " did you mean %<-%s%>", hint); + else + warning_at (loc, OPT_Wpragmas, + "unknown option after %<#pragma GCC diagnostic%> kind"); + return; } else if (!(cl_options[option_index].flags & CL_WARNING)) diff --git a/gcc/opts.c b/gcc/opts.c index 6d6ff19..926904c 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -31,6 +31,7 @@ along with GCC; see the file COPYING3. If not see #include "insn-attr-common.h" #include "common/common-target.h" #include "spellcheck.h" +#include "opt-suggestions.h" static void set_Wstrict_aliasing (struct gcc_options *opts, int onoff); @@ -3088,10 +3089,20 @@ enable_warning_as_error (const char *arg, int value, unsigned int lang_mask, strcpy (new_option + 1, arg); option_index = find_opt (new_option, lang_mask); if (option_index == OPT_SPECIAL_unknown) - error_at (loc, "%<-Werror=%s%>: no option -%s", arg, new_option); + { + option_proposer op; + const char *hint = op.suggest_option (new_option); + if (hint) + error_at (loc, "%<-W%serror=%s%>: no option %<-%s%>;" + " did you mean %<-%s%>?", value ? "" : "no-", + arg, new_option, hint); + else + error_at (loc, "%<-W%serror=%s%>: no option %<-%s%>", + value ? "" : "no-", arg, new_option); + } else if (!(cl_options[option_index].flags & CL_WARNING)) - error_at (loc, "%<-Werror=%s%>: -%s is not an option that controls " - "warnings", arg, new_option); + error_at (loc, "%<-Werror=%s%>: %<-%s%> is not an option that " + "controls warnings", arg, new_option); else { const diagnostic_t kind = value ? DK_ERROR : DK_WARNING; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b3908ea..b05cdcf 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-30 Martin Liska + + * gcc.dg/Werror-13.c: Add new tests for it. + * gcc.dg/pragma-diag-6.c: Likewise. + 2019-04-30 Jakub Jelinek PR target/89093 diff --git a/gcc/testsuite/gcc.dg/Werror-13.c b/gcc/testsuite/gcc.dg/Werror-13.c index e8aa992..3a02b7e 100644 --- a/gcc/testsuite/gcc.dg/Werror-13.c +++ b/gcc/testsuite/gcc.dg/Werror-13.c @@ -1,8 +1,10 @@ /* { dg-do compile } */ -/* { dg-options "-Werror=error -Werror=p, -Werror=l, -Werror=fatal-errors" } */ -/* { dg-error "-Wp, is not an option that controls warnings" "" { target *-*-* } 0 } */ -/* { dg-error "-Wl, is not an option that controls warnings" "" { target *-*-* } 0 } */ -/* { dg-error "-Werror is not an option that controls warnings" "" { target *-*-* } 0 } */ -/* { dg-error "-Wfatal-errors is not an option that controls warnings" "" { target *-*-* } 0 } */ +/* { dg-options "-Werror=error -Werror=p, -Werror=l, -Werror=fatal-errors -Werror=vla2 -Wno-error=misleading-indentation2" } */ +/* { dg-error "'-Wp,' is not an option that controls warnings" "" { target *-*-* } 0 } */ +/* { dg-error "'-Wl,' is not an option that controls warnings" "" { target *-*-* } 0 } */ +/* { dg-error "'-Werror' is not an option that controls warnings" "" { target *-*-* } 0 } */ +/* { dg-error "'-Wfatal-errors' is not an option that controls warnings" "" { target *-*-* } 0 } */ +/* { dg-error "'-Werror=vla2': no option '-Wvla2'; did you mean '-Wvla." "" { target *-*-* } 0 } */ +/* { dg-error "'-Wno-error=misleading-indentation2': no option '-Wmisleading-indentation2'; did you mean '-Wmisleading-indentation'" "" { target *-*-* } 0 } */ int i; diff --git a/gcc/testsuite/gcc.dg/pragma-diag-6.c b/gcc/testsuite/gcc.dg/pragma-diag-6.c index 6ce76d9..0dca1dc 100644 --- a/gcc/testsuite/gcc.dg/pragma-diag-6.c +++ b/gcc/testsuite/gcc.dg/pragma-diag-6.c @@ -2,4 +2,7 @@ #pragma GCC diagnostic error "-Wnoexcept" /* { dg-warning "is valid for C../ObjC.. but not for C" } */ #pragma GCC diagnostic error "-fstrict-aliasing" /* { dg-warning "not an option that controls warnings" } */ #pragma GCC diagnostic error "-Werror" /* { dg-warning "not an option that controls warnings" } */ +#pragma GCC diagnostic error "-Wvla2" /* { dg-warning "unknown option after '#pragma GCC diagnostic' kind; did you mean '-Wvla'" } */ +#pragma GCC diagnostic error "-Walla" /* { dg-warning "unknown option after '#pragma GCC diagnostic' kind; did you mean '-Wall'" } */ +#pragma GCC diagnostic warning "-Walla" /* { dg-warning "unknown option after '#pragma GCC diagnostic' kind; did you mean '-Wall'" } */ int i; -- cgit v1.1 From 7df942516727f9043403090ad0e3319afbc11adc Mon Sep 17 00:00:00 2001 From: Giuliano Belinassi Date: Tue, 30 Apr 2019 15:06:31 +0000 Subject: sinhatanh-2.c: Count the number of functions. * gcc.dg/sinhatanh-2.c: Count the number of functions. * gcc.dg/sinhatanh-3.c: Likewise. From-SVN: r270703 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/sinhatanh-2.c | 18 +++++++++--------- gcc/testsuite/gcc.dg/sinhatanh-3.c | 18 +++++++++--------- 3 files changed, 23 insertions(+), 18 deletions(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b05cdcf..585b350 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-30 Giuliano Belinassi + + * gcc.dg/sinhatanh-2.c: Count the number of functions. + * gcc.dg/sinhatanh-3.c: Likewise. + 2019-04-30 Martin Liska * gcc.dg/Werror-13.c: Add new tests for it. diff --git a/gcc/testsuite/gcc.dg/sinhatanh-2.c b/gcc/testsuite/gcc.dg/sinhatanh-2.c index 40a9b8b..ca0b616 100644 --- a/gcc/testsuite/gcc.dg/sinhatanh-2.c +++ b/gcc/testsuite/gcc.dg/sinhatanh-2.c @@ -57,12 +57,12 @@ sinatanl_(long double x) } /* There should be calls to sinh, cosh and atanh */ -/* { dg-final { scan-tree-dump "cosh " "optimized" } } */ -/* { dg-final { scan-tree-dump "sinh " "optimized" } } */ -/* { dg-final { scan-tree-dump "atanh " "optimized" } } */ -/* { dg-final { scan-tree-dump "coshf " "optimized" } } */ -/* { dg-final { scan-tree-dump "sinhf " "optimized" } } */ -/* { dg-final { scan-tree-dump "atanhf " "optimized" } } */ -/* { dg-final { scan-tree-dump "coshl " "optimized" } } */ -/* { dg-final { scan-tree-dump "sinhl " "optimized" } } */ -/* { dg-final { scan-tree-dump "atanhl " "optimized" } } */ +/* { dg-final { scan-tree-dump-times "cosh " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "sinh " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "atanh " "2" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "coshf " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "sinhf " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "atanhf " "2" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "coshl " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "sinhl " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "atanhl " "2" "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/sinhatanh-3.c b/gcc/testsuite/gcc.dg/sinhatanh-3.c index 32e2de5..ad0353a 100644 --- a/gcc/testsuite/gcc.dg/sinhatanh-3.c +++ b/gcc/testsuite/gcc.dg/sinhatanh-3.c @@ -51,12 +51,12 @@ coshatanhl_ (long double x) } /* There should be calls to sinh, cosh and atanh */ -/* { dg-final { scan-tree-dump "cosh " "optimized" } } */ -/* { dg-final { scan-tree-dump "sinh " "optimized" } } */ -/* { dg-final { scan-tree-dump "atanh " "optimized" } } */ -/* { dg-final { scan-tree-dump "coshf " "optimized" } } */ -/* { dg-final { scan-tree-dump "sinhf " "optimized" } } */ -/* { dg-final { scan-tree-dump "atanhf " "optimized" } } */ -/* { dg-final { scan-tree-dump "coshl " "optimized" } } */ -/* { dg-final { scan-tree-dump "sinhl " "optimized" } } */ -/* { dg-final { scan-tree-dump "atanhl " "optimized" } } */ +/* { dg-final { scan-tree-dump-times "cosh " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "sinh " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "atanh " "2" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "coshf " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "sinhf " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "atanhf " "2" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "coshl " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "sinhl " "1" "optimized" } } */ +/* { dg-final { scan-tree-dump-times "atanhl " "2" "optimized" } } */ -- cgit v1.1 From 7248a6309cc7a5b071f2eeed310b3a2e16c89da2 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 30 Apr 2019 18:30:44 +0200 Subject: re PR target/89093 (C++ exception handling clobbers d8 VFP register) PR target/89093 * gcc.target/aarch64/return_address_sign_3.c: Remove extra space in target attribute. From-SVN: r270705 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.target/aarch64/return_address_sign_3.c | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 585b350..2d0240b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-04-30 Jakub Jelinek + + PR target/89093 + * gcc.target/aarch64/return_address_sign_3.c: Remove extra space in + target attribute. + 2019-04-30 Giuliano Belinassi * gcc.dg/sinhatanh-2.c: Count the number of functions. diff --git a/gcc/testsuite/gcc.target/aarch64/return_address_sign_3.c b/gcc/testsuite/gcc.target/aarch64/return_address_sign_3.c index e39ed34..646186e 100644 --- a/gcc/testsuite/gcc.target/aarch64/return_address_sign_3.c +++ b/gcc/testsuite/gcc.target/aarch64/return_address_sign_3.c @@ -5,13 +5,13 @@ int bar (int, int); -int __attribute__ ((target ("arch=armv8.3-a, branch-protection=pac-ret"))) +int __attribute__ ((target ("arch=armv8.3-a,branch-protection=pac-ret"))) func1_leaf (int a, int b, int c, int d) { return a + b + c + d; } -int __attribute__ ((target ("arch=armv8.3-a, branch-protection=none"))) +int __attribute__ ((target ("arch=armv8.3-a,branch-protection=none"))) func2_none (int a, int b, int c, int d) { return c + bar (a, b) + d; -- cgit v1.1 From 41003284ed4f91dfa7d20afa00b9bace5feea4df Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 30 Apr 2019 20:57:37 +0100 Subject: * de.po: Update. From-SVN: r270709 --- gcc/po/ChangeLog | 4 ++++ gcc/po/de.po | 36 ++++++++++++++++++------------------ 2 files changed, 22 insertions(+), 18 deletions(-) (limited to 'gcc') diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 115d85a..4e5f927 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2019-04-30 Joseph Myers + + * de.po: Update. + 2019-04-29 Joseph Myers * sv.po: Update. diff --git a/gcc/po/de.po b/gcc/po/de.po index 615c248..11a2a60 100644 --- a/gcc/po/de.po +++ b/gcc/po/de.po @@ -11,7 +11,7 @@ msgstr "" "Project-Id-Version: gcc 9.1-b20190414\n" "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n" "POT-Creation-Date: 2019-04-13 17:21+0200\n" -"PO-Revision-Date: 2019-04-19 21:07+0200\n" +"PO-Revision-Date: 2019-04-30 20:26+0200\n" "Last-Translator: Roland Illig \n" "Language-Team: German \n" "Language: de\n" @@ -338,7 +338,7 @@ msgstr " -print-file-name= Vollen Pfad zur Bibliothek anzeigen.\n" #: gcc.c:3561 msgid " -print-prog-name= Display the full path to compiler component .\n" -msgstr " -print-prog-name= Vollen Pfad zur Compilerkomponente anzeigen\n" +msgstr " -print-prog-name= Vollen Pfad zur Compilerkomponente anzeigen.\n" #: gcc.c:3562 msgid "" @@ -386,15 +386,15 @@ msgstr " -Wl, Die durch Kommata getrennten an de #: gcc.c:3575 msgid " -Xassembler Pass on to the assembler.\n" -msgstr " -Xassembler an den Assembler übergeben.\n" +msgstr " -Xassembler an den Assembler übergeben.\n" #: gcc.c:3576 msgid " -Xpreprocessor Pass on to the preprocessor.\n" -msgstr " -Xpreprocessor an den Präprozessor übergeben.\n" +msgstr " -Xpreprocessor an den Präprozessor übergeben.\n" #: gcc.c:3577 msgid " -Xlinker Pass on to the linker.\n" -msgstr " -Xlinker an den Linker übergeben.\n" +msgstr " -Xlinker an den Linker übergeben.\n" #: gcc.c:3578 msgid " -save-temps Do not delete intermediate files.\n" @@ -402,7 +402,7 @@ msgstr " -save-temps Temporäre Dateien nicht löschen.\n" #: gcc.c:3579 msgid " -save-temps= Do not delete intermediate files.\n" -msgstr " -save-temps= Temporäre Dateien nicht löschen.\n" +msgstr " -save-temps= Temporäre Dateien nicht löschen.\n" #: gcc.c:3580 msgid "" @@ -410,11 +410,11 @@ msgid "" " prefixes to other gcc components.\n" msgstr "" " -no-canonical-prefixes Pfade beim Erzeugen relativer Präfixe zu anderen\n" -" GCC-Komponenten nicht kanonisieren\n" +" GCC-Komponenten nicht kanonisieren.\n" #: gcc.c:3583 msgid " -pipe Use pipes rather than intermediate files.\n" -msgstr " -pipe Pipes statt temporärer Dateien verwenden\n" +msgstr " -pipe Pipes statt temporärer Dateien verwenden.\n" #: gcc.c:3584 msgid " -time Time the execution of each subprocess.\n" @@ -424,7 +424,7 @@ msgstr " -time Zeit für die Ausführung jedes Subprozesses msgid " -specs= Override built-in specs with the contents of .\n" msgstr "" " -specs= Eingebaute Spezifikationen mit dem Inhalt von \n" -" überschreiben\n" +" überschreiben.\n" #: gcc.c:3586 msgid " -std= Assume that the input sources are for .\n" @@ -455,7 +455,7 @@ msgstr "" #: gcc.c:3593 msgid " -E Preprocess only; do not compile, assemble or link.\n" msgstr "" -" -E Nur den Präprozessor ausführen, nicht Kompiler, Assembler oder\n" +" -E Nur den Präprozessor ausführen, nicht Compiler, Assembler oder\n" " Linker.\n" #: gcc.c:3594 @@ -1307,7 +1307,7 @@ msgstr "Die folgenden Optionen steuern Optimierungen" #: opts.c:1639 opts.c:1678 msgid "The following options are language-independent" -msgstr "Die folgenden Optionen sind sprach-unabhängig" +msgstr "Die folgenden Optionen sind sprachunabhängig" #: opts.c:1642 msgid "The --param option recognizes the following as parameters" @@ -2314,7 +2314,7 @@ msgstr "Die Anzahl der Register in jeder Klasse, die von Schleifeninvariantenbew #: params.def:925 #, no-c-format msgid "The max number of reload pseudos which are considered during spilling a non-reload pseudo." -msgstr "Die maximale Anzahl Reload-Pseudos, die beim Auslagern eines Nicht-Reload-Pseudos berücksichtigt werden." +msgstr "Die Höchstzahl Reload-Pseudos, die beim Auslagern eines Nicht-Reload-Pseudos berücksichtigt werden." #: params.def:930 #, no-c-format @@ -5693,7 +5693,7 @@ msgstr "evtl. »-pg« statt »-p« mit gprof(1) verwenden" #: config/arc/arc.h:68 config/mips/mips.h:1452 msgid "may not use both -EB and -EL" -msgstr "»-EB« und »-EL« können nicht gleichzeitig verwendet werden" +msgstr "»-EB« und »-EL« dürfen nicht gleichzeitig verwendet werden" #: config/arm/arm.h:88 msgid "-mfloat-abi=soft and -mfloat-abi=hard may not be used together" @@ -5796,7 +5796,7 @@ msgstr "-fsanitize=address wird in dieser Konfiguration nicht unterstützt" #: config/sparc/netbsd-elf.h:108 config/sparc/netbsd-elf.h:117 #: config/sparc/sol2.h:237 config/sparc/sol2.h:243 msgid "may not use both -m32 and -m64" -msgstr "»-m32« und »-m64« können nicht zusammen angegeben werden" +msgstr "»-m32« und »-m64« dürfen nicht zusammen angegeben werden" #: config/vax/netbsd-elf.h:51 msgid "the -shared option is not currently supported for VAX ELF" @@ -14925,11 +14925,11 @@ msgstr "-fconstexpr-depth=\tGrößte Rekursionstiefe für konstante Ausdr #: c-family/c.opt:1417 msgid "-fconstexpr-loop-limit=\tSpecify maximum constexpr loop iteration count." -msgstr "-fconstexpr-loop-limit=\tMaximale Anzahl der Schleifeniterationen für »constexpr« angeben." +msgstr "-fconstexpr-loop-limit=\tHöchstzahl der Schleifeniterationen für »constexpr« angeben." #: c-family/c.opt:1421 msgid "-fconstexpr-ops-limit=\tSpecify maximum number of constexpr operations during a single constexpr evaluation." -msgstr "-fconstexpr-ops-limit=\tMaximale Anzahl der constexpr-Operationen pro einzelner »constexpr« angeben." +msgstr "-fconstexpr-ops-limit=\tHöchstzahl der constexpr-Operationen pro einzelner »constexpr« angeben." #: c-family/c.opt:1425 msgid "Emit debug annotations during preprocessing." @@ -42350,7 +42350,7 @@ msgstr "%<__int%d%> wird von diesem Ziel nicht unterstützt" #: cp/decl.c:10778 #, gcc-internal-format msgid "ISO C++ does not support %<__int%d%> for %qs" -msgstr "ISO-C++ unterstützt %<__int%d%> for %qs nicht" +msgstr "ISO-C++ unterstützt %<__int%d%> für %qs nicht" #: cp/decl.c:10832 #, gcc-internal-format @@ -63477,7 +63477,7 @@ msgstr "Kategorie-Attribute sind in Objective-C 1.0 nicht verfügbar" #: objc/objc-act.c:596 #, gcc-internal-format msgid "category attributes are not available in this version of the compiler, (ignored)" -msgstr "Kategorie-Attribute sind in dieser Version des Kompilers nicht verfügbar (wird ignoriert)" +msgstr "Kategorie-Attribute sind in dieser Version des Compilers nicht verfügbar (wird ignoriert)" #: objc/objc-act.c:602 #, gcc-internal-format -- cgit v1.1 From 598f50d7891b420331f2027e60ba63824d335bad Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Tue, 30 Apr 2019 20:23:45 +0000 Subject: [GC PATCH] Correct TS marking of _EXPR nodes https://gcc.gnu.org/ml/gcc-patches/2019-04/msg01266.html gcc/ * tree.h (MARK_TS_EXP): New. gcc/c-family/ * c-common.c (c_common_init_ts): Use MARK_TS_EXP. Mark SIZEOF_EXPR. gcc/cp/ * cp-objcp-common.c (cp_common_init_ts): Use MARK_TS_EXP for _EXPR nodes. Call c_common_init_ts. From-SVN: r270711 --- gcc/ChangeLog | 4 ++ gcc/c-family/ChangeLog | 4 ++ gcc/c-family/c-common.c | 5 ++- gcc/cp/ChangeLog | 5 +++ gcc/cp/cp-objcp-common.c | 107 ++++++++++++++++++++++++++++------------------- gcc/tree.h | 4 ++ 6 files changed, 84 insertions(+), 45 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f1df76a..6de15651 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-04-30 Nathan Sidwell + + * tree.h (MARK_TS_EXP): New. + 2019-04-30 Martin Liska * opts.c (enable_warning_as_error): Provide hints diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 8975865..dcbac10 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,7 @@ +2019-04-30 Nathan Sidwell + + * c-common.c (c_common_init_ts): Use MARK_TS_EXP. Mark SIZEOF_EXPR. + 2019-04-30 Martin Liska * c-pragma.c (handle_pragma_diagnostic): Provide hints diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c index 99ca1ad..3c2f7a9 100644 --- a/gcc/c-family/c-common.c +++ b/gcc/c-family/c-common.c @@ -7907,8 +7907,9 @@ keyword_is_decl_specifier (enum rid keyword) void c_common_init_ts (void) { - MARK_TS_TYPED (C_MAYBE_CONST_EXPR); - MARK_TS_TYPED (EXCESS_PRECISION_EXPR); + MARK_TS_EXP (SIZEOF_EXPR); + MARK_TS_EXP (C_MAYBE_CONST_EXPR); + MARK_TS_EXP (EXCESS_PRECISION_EXPR); } /* Build a user-defined numeric literal out of an integer constant type VALUE diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 5650324..ec15854 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2019-04-30 Nathan Sidwell + + * cp-objcp-common.c (cp_common_init_ts): Use MARK_TS_EXP for _EXPR + nodes. Call c_common_init_ts. + 2019-04-29 Nathan Sidwell * decl.c (duplicate_decls): Add whitespace, move comments into diff --git a/gcc/cp/cp-objcp-common.c b/gcc/cp/cp-objcp-common.c index 4765104..bfd3fa6 100644 --- a/gcc/cp/cp-objcp-common.c +++ b/gcc/cp/cp-objcp-common.c @@ -386,67 +386,88 @@ cp_common_init_ts (void) MARK_TS_COMMON (BOUND_TEMPLATE_TEMPLATE_PARM); MARK_TS_COMMON (UNBOUND_CLASS_TEMPLATE); - MARK_TS_TYPED (EXPR_PACK_EXPANSION); MARK_TS_TYPED (SWITCH_STMT); MARK_TS_TYPED (IF_STMT); MARK_TS_TYPED (FOR_STMT); MARK_TS_TYPED (RANGE_FOR_STMT); - MARK_TS_TYPED (AGGR_INIT_EXPR); - MARK_TS_TYPED (EXPR_STMT); MARK_TS_TYPED (EH_SPEC_BLOCK); MARK_TS_TYPED (CLEANUP_STMT); MARK_TS_TYPED (SCOPE_REF); - MARK_TS_TYPED (CAST_EXPR); - MARK_TS_TYPED (NON_DEPENDENT_EXPR); - MARK_TS_TYPED (MODOP_EXPR); MARK_TS_TYPED (TRY_BLOCK); - MARK_TS_TYPED (THROW_EXPR); MARK_TS_TYPED (HANDLER); - MARK_TS_TYPED (REINTERPRET_CAST_EXPR); - MARK_TS_TYPED (CONST_CAST_EXPR); - MARK_TS_TYPED (STATIC_CAST_EXPR); - MARK_TS_TYPED (DYNAMIC_CAST_EXPR); - MARK_TS_TYPED (IMPLICIT_CONV_EXPR); - MARK_TS_TYPED (TEMPLATE_ID_EXPR); - MARK_TS_TYPED (ARROW_EXPR); - MARK_TS_TYPED (SIZEOF_EXPR); - MARK_TS_TYPED (ALIGNOF_EXPR); - MARK_TS_TYPED (AT_ENCODE_EXPR); - MARK_TS_TYPED (UNARY_PLUS_EXPR); - MARK_TS_TYPED (TRAIT_EXPR); MARK_TS_TYPED (TYPE_ARGUMENT_PACK); MARK_TS_TYPED (NOEXCEPT_EXPR); - MARK_TS_TYPED (NONTYPE_ARGUMENT_PACK); MARK_TS_TYPED (WHILE_STMT); - MARK_TS_TYPED (NEW_EXPR); - MARK_TS_TYPED (VEC_NEW_EXPR); MARK_TS_TYPED (BREAK_STMT); - MARK_TS_TYPED (MEMBER_REF); - MARK_TS_TYPED (DOTSTAR_EXPR); MARK_TS_TYPED (DO_STMT); - MARK_TS_TYPED (DELETE_EXPR); - MARK_TS_TYPED (VEC_DELETE_EXPR); MARK_TS_TYPED (CONTINUE_STMT); - MARK_TS_TYPED (TAG_DEFN); - MARK_TS_TYPED (PSEUDO_DTOR_EXPR); - MARK_TS_TYPED (TYPEID_EXPR); - MARK_TS_TYPED (MUST_NOT_THROW_EXPR); - MARK_TS_TYPED (STMT_EXPR); - MARK_TS_TYPED (OFFSET_REF); - MARK_TS_TYPED (OFFSETOF_EXPR); - MARK_TS_TYPED (ADDRESSOF_EXPR); MARK_TS_TYPED (PTRMEM_CST); - MARK_TS_TYPED (EMPTY_CLASS_EXPR); - MARK_TS_TYPED (VEC_INIT_EXPR); MARK_TS_TYPED (USING_STMT); - MARK_TS_TYPED (LAMBDA_EXPR); - MARK_TS_TYPED (CTOR_INITIALIZER); - MARK_TS_TYPED (REQUIRES_EXPR); - MARK_TS_TYPED (UNARY_LEFT_FOLD_EXPR); - MARK_TS_TYPED (UNARY_RIGHT_FOLD_EXPR); - MARK_TS_TYPED (BINARY_LEFT_FOLD_EXPR); - MARK_TS_TYPED (BINARY_RIGHT_FOLD_EXPR); MARK_TS_TYPED (OMP_DEPOBJ); + + MARK_TS_EXP (AGGR_INIT_EXPR); + MARK_TS_EXP (CTOR_INITIALIZER); + MARK_TS_EXP (EXPR_STMT); + MARK_TS_EXP (TAG_DEFN); + MARK_TS_EXP (EMPTY_CLASS_EXPR); + MARK_TS_EXP (MODOP_EXPR); + MARK_TS_EXP (THROW_EXPR); + MARK_TS_EXP (CAST_EXPR); + MARK_TS_EXP (TYPE_EXPR); + MARK_TS_EXP (REINTERPRET_CAST_EXPR); + MARK_TS_EXP (CONST_CAST_EXPR); + MARK_TS_EXP (STATIC_CAST_EXPR); + MARK_TS_EXP (DYNAMIC_CAST_EXPR); + MARK_TS_EXP (IMPLICIT_CONV_EXPR); + MARK_TS_EXP (TEMPLATE_ID_EXPR); + MARK_TS_EXP (ARROW_EXPR); + MARK_TS_EXP (UNARY_PLUS_EXPR); + MARK_TS_EXP (TRAIT_EXPR); + + MARK_TS_EXP (NON_DEPENDENT_EXPR); + MARK_TS_EXP (NEW_EXPR); + MARK_TS_EXP (VEC_NEW_EXPR); + MARK_TS_EXP (MEMBER_REF); + MARK_TS_EXP (DOTSTAR_EXPR); + MARK_TS_EXP (DELETE_EXPR); + MARK_TS_EXP (VEC_DELETE_EXPR); + MARK_TS_EXP (PSEUDO_DTOR_EXPR); + MARK_TS_EXP (TYPEID_EXPR); + MARK_TS_EXP (MUST_NOT_THROW_EXPR); + MARK_TS_EXP (STMT_EXPR); + MARK_TS_EXP (OFFSET_REF); + MARK_TS_EXP (OFFSETOF_EXPR); + MARK_TS_EXP (ADDRESSOF_EXPR); + MARK_TS_EXP (VEC_INIT_EXPR); + MARK_TS_EXP (LAMBDA_EXPR); + + MARK_TS_EXP (ALIGNOF_EXPR); + MARK_TS_EXP (AT_ENCODE_EXPR); + + MARK_TS_EXP (NONTYPE_ARGUMENT_PACK); + MARK_TS_EXP (EXPR_PACK_EXPANSION); + MARK_TS_EXP (UNARY_LEFT_FOLD_EXPR); + MARK_TS_EXP (UNARY_RIGHT_FOLD_EXPR); + MARK_TS_EXP (BINARY_LEFT_FOLD_EXPR); + MARK_TS_EXP (BINARY_RIGHT_FOLD_EXPR); + + MARK_TS_EXP (REQUIRES_EXPR); + MARK_TS_EXP (SIMPLE_REQ); + MARK_TS_EXP (TYPE_REQ); + MARK_TS_EXP (COMPOUND_REQ); + MARK_TS_EXP (NESTED_REQ); + MARK_TS_EXP (PRED_CONSTR); + MARK_TS_EXP (CHECK_CONSTR); + MARK_TS_EXP (EXPR_CONSTR); + MARK_TS_EXP (TYPE_CONSTR); + MARK_TS_EXP (ICONV_CONSTR); + MARK_TS_EXP (DEDUCT_CONSTR); + MARK_TS_EXP (EXCEPT_CONSTR); + MARK_TS_EXP (PARM_CONSTR); + MARK_TS_EXP (CONJ_CONSTR); + MARK_TS_EXP (DISJ_CONSTR); + + c_common_init_ts (); } #include "gt-cp-cp-objcp-common.h" diff --git a/gcc/tree.h b/gcc/tree.h index f030082..d65affe 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -114,6 +114,10 @@ as_internal_fn (combined_fn code) (MARK_TS_DECL_WITH_VIS (C), \ tree_contains_struct[C][TS_DECL_NON_COMMON] = true) +#define MARK_TS_EXP(C) \ + (MARK_TS_TYPED (C), \ + tree_contains_struct[C][TS_EXP] = true) + /* Returns the string representing CLASS. */ #define TREE_CODE_CLASS_STRING(CLASS)\ -- cgit v1.1 From 4f4753914455ad186f7c1f994743abfcb05a7dc9 Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Tue, 30 Apr 2019 16:45:36 -0700 Subject: RISC-V: Short-forward-branch opt for SiFive 7 series cores. gcc/ * config/riscv/constraints.md (L): New. * config/riscv/predicates.md (lui_operand): New. (sfb_alu_operand): New. * config/riscv/riscv-protos.h (riscv_expand_conditional_move): Declare. * config/riscv/riscv.c (riscv_expand_conditional_move): New. * config/riscv/riscv.h (TARGET_SFB_ALU): New. * config/riscv/risc.md (type): Add sfb_alu. (branch): Renamed from branch_order. Change predicate for operand 3 to reg_or_0_operand. In output string, change %3 to %z3. (branch_zero): Delete. (movcc): New. (movcc): Likewise. * config/riscv/sifive-7.md (sifive_7_sfb_alu): New. Use in bypasses. From-SVN: r270758 --- gcc/ChangeLog | 16 +++++++++++++ gcc/config/riscv/constraints.md | 5 ++++ gcc/config/riscv/predicates.md | 8 +++++++ gcc/config/riscv/riscv-protos.h | 1 + gcc/config/riscv/riscv.c | 12 ++++++++++ gcc/config/riscv/riscv.h | 11 +++++++++ gcc/config/riscv/riscv.md | 53 ++++++++++++++++++++++++++++------------- gcc/config/riscv/sifive-7.md | 12 ++++++++-- 8 files changed, 100 insertions(+), 18 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6de15651..805ab8a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,19 @@ +2019-04-30 Jim Wilson + + * config/riscv/constraints.md (L): New. + * config/riscv/predicates.md (lui_operand): New. + (sfb_alu_operand): New. + * config/riscv/riscv-protos.h (riscv_expand_conditional_move): Declare. + * config/riscv/riscv.c (riscv_expand_conditional_move): New. + * config/riscv/riscv.h (TARGET_SFB_ALU): New. + * config/riscv/risc.md (type): Add sfb_alu. + (branch): Renamed from branch_order. Change predicate for + operand 3 to reg_or_0_operand. In output string, change %3 to %z3. + (branch_zero): Delete. + (movcc): New. + (movcc): Likewise. + * config/riscv/sifive-7.md (sifive_7_sfb_alu): New. Use in bypasses. + 2019-04-30 Nathan Sidwell * tree.h (MARK_TS_EXP): New. diff --git a/gcc/config/riscv/constraints.md b/gcc/config/riscv/constraints.md index b4de83f..40faf0e 100644 --- a/gcc/config/riscv/constraints.md +++ b/gcc/config/riscv/constraints.md @@ -49,6 +49,11 @@ (and (match_code "const_int") (match_test "IN_RANGE (ival, 0, 31)"))) +(define_constraint "L" + "A U-type 20-bit signed immediate." + (and (match_code "const_int") + (match_test "LUI_OPERAND (ival)"))) + ;; Floating-point constant +0.0, used for FCVT-based moves when FMV is ;; not available in RV32. (define_constraint "G" diff --git a/gcc/config/riscv/predicates.md b/gcc/config/riscv/predicates.md index 83fc4bd..aa5e132 100644 --- a/gcc/config/riscv/predicates.md +++ b/gcc/config/riscv/predicates.md @@ -27,6 +27,14 @@ (ior (match_operand 0 "const_arith_operand") (match_operand 0 "register_operand"))) +(define_predicate "lui_operand" + (and (match_code "const_int") + (match_test "LUI_OPERAND (INTVAL (op))"))) + +(define_predicate "sfb_alu_operand" + (ior (match_operand 0 "arith_operand") + (match_operand 0 "lui_operand"))) + (define_predicate "const_csr_operand" (and (match_code "const_int") (match_test "IN_RANGE (INTVAL (op), 0, 31)"))) diff --git a/gcc/config/riscv/riscv-protos.h b/gcc/config/riscv/riscv-protos.h index 5c1002b..69e39f7 100644 --- a/gcc/config/riscv/riscv-protos.h +++ b/gcc/config/riscv/riscv-protos.h @@ -59,6 +59,7 @@ extern const char *riscv_output_return (); extern void riscv_expand_int_scc (rtx, enum rtx_code, rtx, rtx); extern void riscv_expand_float_scc (rtx, enum rtx_code, rtx, rtx); extern void riscv_expand_conditional_branch (rtx, enum rtx_code, rtx, rtx); +extern void riscv_expand_conditional_move (rtx, rtx, rtx, rtx_code, rtx, rtx); #endif extern rtx riscv_legitimize_call_address (rtx); extern void riscv_set_return_address (rtx, rtx); diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c index 6fb6c6a..3f66b9d 100644 --- a/gcc/config/riscv/riscv.c +++ b/gcc/config/riscv/riscv.c @@ -2324,6 +2324,18 @@ riscv_expand_conditional_branch (rtx label, rtx_code code, rtx op0, rtx op1) emit_jump_insn (gen_condjump (condition, label)); } +/* If (CODE OP0 OP1) holds, move CONS to DEST; else move ALT to DEST. */ + +void +riscv_expand_conditional_move (rtx dest, rtx cons, rtx alt, rtx_code code, + rtx op0, rtx op1) +{ + riscv_emit_int_compare (&code, &op0, &op1); + rtx cond = gen_rtx_fmt_ee (code, GET_MODE (op0), op0, op1); + emit_insn (gen_rtx_SET (dest, gen_rtx_IF_THEN_ELSE (GET_MODE (dest), cond, + cons, alt))); +} + /* Implement TARGET_FUNCTION_ARG_BOUNDARY. Every parameter gets at least PARM_BOUNDARY bits of alignment, but will be given anything up to PREFERRED_STACK_BOUNDARY bits if the type requires it. */ diff --git a/gcc/config/riscv/riscv.h b/gcc/config/riscv/riscv.h index c93743f..4edd2a6 100644 --- a/gcc/config/riscv/riscv.h +++ b/gcc/config/riscv/riscv.h @@ -662,6 +662,17 @@ typedef struct { #define BRANCH_COST(speed_p, predictable_p) \ ((!(speed_p) || (predictable_p)) ? 2 : riscv_branch_cost) +/* True if the target optimizes short forward branches around integer + arithmetic instructions into predicated operations, e.g., for + conditional-move operations. The macro assumes that all branch + instructions (BEQ, BNE, BLT, BLTU, BGE, BGEU, C.BEQZ, and C.BNEZ) + support this feature. The macro further assumes that any integer + arithmetic and logical operation (ADD[I], SUB, SLL[I], SRL[I], SRA[I], + SLT[I][U], AND[I], XOR[I], OR[I], LUI, AUIPC, and their compressed + counterparts, including C.MV and C.LI) can be in the branch shadow. */ + +#define TARGET_SFB_ALU (riscv_microarchitecture == sifive_7) + #define LOGICAL_OP_NON_SHORT_CIRCUIT 0 /* Control the assembler format that we output. */ diff --git a/gcc/config/riscv/riscv.md b/gcc/config/riscv/riscv.md index fc81daa..8b21c19 100644 --- a/gcc/config/riscv/riscv.md +++ b/gcc/config/riscv/riscv.md @@ -156,7 +156,7 @@ (define_attr "type" "unknown,branch,jump,call,load,fpload,store,fpstore, mtc,mfc,const,arith,logical,shift,slt,imul,idiv,move,fmove,fadd,fmul, - fmadd,fdiv,fcmp,fcvt,fsqrt,multi,auipc,nop,ghost" + fmadd,fdiv,fcmp,fcvt,fsqrt,multi,auipc,sfb_alu,nop,ghost" (cond [(eq_attr "got" "load") (const_string "load") ;; If a doubleword move uses these expensive instructions, @@ -1804,31 +1804,52 @@ ;; Conditional branches -(define_insn "*branch_order" +(define_insn "*branch" [(set (pc) (if_then_else (match_operator 1 "order_operator" [(match_operand:X 2 "register_operand" "r") - (match_operand:X 3 "register_operand" "r")]) + (match_operand:X 3 "reg_or_0_operand" "rJ")]) (label_ref (match_operand 0 "" "")) (pc)))] "" - "b%C1\t%2,%3,%0" + "b%C1\t%2,%z3,%0" [(set_attr "type" "branch") (set_attr "mode" "none")]) -(define_insn "*branch_zero" - [(set (pc) - (if_then_else - (match_operator 1 "signed_order_operator" - [(match_operand:X 2 "register_operand" "r") - (const_int 0)]) - (label_ref (match_operand 0 "" "")) - (pc)))] - "" - "b%C1z\t%2,%0" - [(set_attr "type" "branch") - (set_attr "mode" "none")]) +;; Patterns for implementations that optimize short forward branches. + +(define_expand "movcc" + [(set (match_operand:GPR 0 "register_operand") + (if_then_else:GPR (match_operand 1 "comparison_operator") + (match_operand:GPR 2 "register_operand") + (match_operand:GPR 3 "sfb_alu_operand")))] + "TARGET_SFB_ALU" +{ + rtx cmp = operands[1]; + /* We only handle word mode integer compares for now. */ + if (GET_MODE (XEXP (cmp, 0)) != word_mode) + FAIL; + riscv_expand_conditional_move (operands[0], operands[2], operands[3], + GET_CODE (cmp), XEXP (cmp, 0), XEXP (cmp, 1)); + DONE; +}) + +(define_insn "*movcc" + [(set (match_operand:GPR 0 "register_operand" "=r,r") + (if_then_else:GPR + (match_operator 5 "order_operator" + [(match_operand:X 1 "register_operand" "r,r") + (match_operand:X 2 "reg_or_0_operand" "rJ,rJ")]) + (match_operand:GPR 3 "register_operand" "0,0") + (match_operand:GPR 4 "sfb_alu_operand" "rJ,IL")))] + "TARGET_SFB_ALU" + "@ + b%C5 %1,%z2,1f; mv %0,%z4; 1: # movcc + b%C5 %1,%z2,1f; li %0,%4; 1: # movcc" + [(set_attr "length" "8") + (set_attr "type" "sfb_alu") + (set_attr "mode" "")]) ;; Used to implement built-in functions. (define_expand "condjump" diff --git a/gcc/config/riscv/sifive-7.md b/gcc/config/riscv/sifive-7.md index d58e01f..526278e 100644 --- a/gcc/config/riscv/sifive-7.md +++ b/gcc/config/riscv/sifive-7.md @@ -37,6 +37,11 @@ (eq_attr "type" "branch")) "sifive_7_B") +(define_insn_reservation "sifive_7_sfb_alu" 2 + (and (eq_attr "tune" "sifive_7") + (eq_attr "type" "sfb_alu")) + "sifive_7_A+sifive_7_B") + (define_insn_reservation "sifive_7_jump" 1 (and (eq_attr "tune" "sifive_7") (eq_attr "type" "jump,call")) @@ -101,10 +106,13 @@ (eq_attr "type" "mfc")) "sifive_7_A") -(define_bypass 1 "sifive_7_load,sifive_7_alu,sifive_7_mul,sifive_7_f2i" +(define_bypass 1 "sifive_7_load,sifive_7_alu,sifive_7_mul,sifive_7_f2i,sifive_7_sfb_alu" "sifive_7_alu,sifive_7_branch") -(define_bypass 1 "sifive_7_load,sifive_7_alu,sifive_7_mul,sifive_7_f2i" +(define_bypass 1 "sifive_7_alu,sifive_7_sfb_alu" + "sifive_7_sfb_alu") + +(define_bypass 1 "sifive_7_load,sifive_7_alu,sifive_7_mul,sifive_7_f2i,sifive_7_sfb_alu" "sifive_7_store" "riscv_store_data_bypass_p") (define_bypass 2 "sifive_7_i2f" -- cgit v1.1 From fc2749e5fdfcc9ac08e50ddf3ab3a120c3bb7d11 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Wed, 1 May 2019 00:16:14 +0000 Subject: Daily bump. From-SVN: r270763 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 3556de5..1c23fed 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190430 +20190501 -- cgit v1.1 From 243dd48646beb0de2a2aac8236eef8fa60f5b99d Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Tue, 30 Apr 2019 21:45:34 -0700 Subject: RISC-V: Update last ChangeLog entry to mention Andrew Waterman. From-SVN: r270764 --- gcc/ChangeLog | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 805ab8a..b6b501f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,4 +1,5 @@ -2019-04-30 Jim Wilson +2019-04-30 Andrew Waterman + Jim Wilson * config/riscv/constraints.md (L): New. * config/riscv/predicates.md (lui_operand): New. -- cgit v1.1 From 9a54a0d916273cf9b1be93ee5b9bed207bd3ef40 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Wed, 1 May 2019 11:38:54 +0000 Subject: [C++ PATCH] Simplify class member lookup https://gcc.gnu.org/ml/gcc-patches/2019-05/msg00004.html gcc/cp/ * name-lookup.h (get_class_binding_direct): Change final arg to bool. (get_class_binding): Likewise. * name-lookup.c (get_class_binding_direct): Replace TYPE_OR_FNS arg with WANT_TYPE bool. Simplify. (get_class_binding): Adjust final arg. * decl.c (reshape_init_class): Adjust get_class_binding calls. gcc/testsuite/ * g++.dg/cpp0x/decltype9.C: Adjust expected diagnostics. From-SVN: r270765 --- gcc/cp/ChangeLog | 10 ++++++++++ gcc/cp/decl.c | 4 ++-- gcc/cp/name-lookup.c | 35 +++++++++++++++------------------- gcc/cp/name-lookup.h | 4 ++-- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/g++.dg/cpp0x/decltype9.C | 3 +-- 6 files changed, 34 insertions(+), 26 deletions(-) (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ec15854..3213b4a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,13 @@ +2019-05-01 Nathan Sidwell + + * name-lookup.h (get_class_binding_direct): Change final arg to + bool. + (get_class_binding): Likewise. + * name-lookup.c (get_class_binding_direct): Replace TYPE_OR_FNS + arg with WANT_TYPE bool. Simplify. + (get_class_binding): Adjust final arg. + * decl.c (reshape_init_class): Adjust get_class_binding calls. + 2019-04-30 Nathan Sidwell * cp-objcp-common.c (cp_common_init_ts): Use MARK_TS_EXP for _EXPR diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 5c4a38e..ee38ac2 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -5968,12 +5968,12 @@ reshape_init_class (tree type, reshape_iter *d, bool first_initializer_p, tree id = DECL_NAME (d->cur->index); gcc_assert (id); gcc_checking_assert (d->cur->index - == get_class_binding (type, id, false)); + == get_class_binding (type, id)); field = d->cur->index; } } else if (TREE_CODE (d->cur->index) == IDENTIFIER_NODE) - field = get_class_binding (type, d->cur->index, false); + field = get_class_binding (type, d->cur->index); else { if (complain & tf_error) diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c index 4ca976c..89d85f6 100644 --- a/gcc/cp/name-lookup.c +++ b/gcc/cp/name-lookup.c @@ -1217,7 +1217,7 @@ search_anon_aggr (tree anon, tree name, bool want_type) Use this if you do not want lazy member creation. */ tree -get_class_binding_direct (tree klass, tree name, int type_or_fns) +get_class_binding_direct (tree klass, tree name, bool want_type) { gcc_checking_assert (RECORD_OR_UNION_TYPE_P (klass)); @@ -1233,31 +1233,26 @@ get_class_binding_direct (tree klass, tree name, int type_or_fns) val = member_vec_binary_search (member_vec, lookup); if (!val) ; - else if (type_or_fns > 0) - { - if (STAT_HACK_P (val)) - val = STAT_TYPE (val); - else if (!DECL_DECLARES_TYPE_P (val)) - val = NULL_TREE; - } else if (STAT_HACK_P (val)) - val = STAT_DECL (val); + val = want_type ? STAT_TYPE (val) : STAT_DECL (val); + else if (want_type && !DECL_DECLARES_TYPE_P (val)) + val = NULL_TREE; } else { - if (member_vec && type_or_fns <= 0) + if (member_vec && !want_type) val = member_vec_linear_search (member_vec, lookup); - if (type_or_fns < 0) - /* Don't bother looking for field. We don't want it. */; - else if (!val || (TREE_CODE (val) == OVERLOAD - && OVL_DEDUP_P (val))) + if (!val || (TREE_CODE (val) == OVERLOAD && OVL_DEDUP_P (val))) /* Dependent using declarations are a 'field', make sure we return that even if we saw an overload already. */ - if (tree field_val = fields_linear_search (klass, lookup, - type_or_fns > 0)) - if (!val || TREE_CODE (field_val) == USING_DECL) - val = field_val; + if (tree field_val = fields_linear_search (klass, lookup, want_type)) + { + if (!val) + val = field_val; + else if (TREE_CODE (field_val) == USING_DECL) + val = ovl_make (field_val, val); + } } /* Extract the conversion operators asked for, unless the general @@ -1278,7 +1273,7 @@ get_class_binding_direct (tree klass, tree name, int type_or_fns) special function creation as necessary. */ tree -get_class_binding (tree klass, tree name, int type_or_fns) +get_class_binding (tree klass, tree name, bool want_type) { klass = complete_type (klass); @@ -1308,7 +1303,7 @@ get_class_binding (tree klass, tree name, int type_or_fns) } } - return get_class_binding_direct (klass, name, type_or_fns); + return get_class_binding_direct (klass, name, want_type); } /* Find the slot containing overloads called 'NAME'. If there is no diff --git a/gcc/cp/name-lookup.h b/gcc/cp/name-lookup.h index a47486d..311654a 100644 --- a/gcc/cp/name-lookup.h +++ b/gcc/cp/name-lookup.h @@ -303,8 +303,8 @@ extern void do_namespace_alias (tree, tree); extern tree do_class_using_decl (tree, tree); extern tree lookup_arg_dependent (tree, tree, vec *); extern tree search_anon_aggr (tree, tree, bool = false); -extern tree get_class_binding_direct (tree, tree, int type_or_fns = -1); -extern tree get_class_binding (tree, tree, int type_or_fns = -1); +extern tree get_class_binding_direct (tree, tree, bool want_type = false); +extern tree get_class_binding (tree, tree, bool want_type = false); extern tree *find_member_slot (tree klass, tree name); extern tree *add_member_slot (tree klass, tree name); extern void resort_type_member_vec (void *, void *, diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2d0240b..1427a8e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-05-01 Nathan Sidwell + + * g++.dg/cpp0x/decltype9.C: Adjust expected diagnostics. + 2019-04-30 Jakub Jelinek PR target/89093 diff --git a/gcc/testsuite/g++.dg/cpp0x/decltype9.C b/gcc/testsuite/g++.dg/cpp0x/decltype9.C index 45cd9ed..f6cfb0c 100644 --- a/gcc/testsuite/g++.dg/cpp0x/decltype9.C +++ b/gcc/testsuite/g++.dg/cpp0x/decltype9.C @@ -2,8 +2,7 @@ // { dg-do compile { target c++11 } } template struct A { // { dg-message "defined here" } - static int i; + static int i; // { dg-message "candidate" } }; template int A::i(decltype (A::i)); // { dg-error "no declaration" } -// { dg-message "no functions" "note" { target *-*-* } .-1 } -- cgit v1.1 From d36405344205c58beb1947719345ec80fdc00a34 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Wed, 1 May 2019 11:33:32 -0600 Subject: re PR tree-optimization/88797 (Unneeded branch added when function is inlined (function runs faster if not inlined)) PR tree-optimization/88797 * gimple-ssa-split-paths (is_feasible_trace): Reject cases where the PHI feeds a conditional on the RHS of an assignment. PR tree-optimization/88797 * g++.dg/tree-ssa/pr88797.C: New test. From-SVN: r270775 --- gcc/ChangeLog | 6 ++++++ gcc/gimple-ssa-split-paths.c | 8 ++++++-- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/tree-ssa/pr88797.C | 16 ++++++++++++++++ 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/g++.dg/tree-ssa/pr88797.C (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b6b501f..7f6ccd9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-05-01 Jeff Law + + PR tree-optimization/88797 + * gimple-ssa-split-paths (is_feasible_trace): Reject cases where the + PHI feeds a conditional on the RHS of an assignment. + 2019-04-30 Andrew Waterman Jim Wilson diff --git a/gcc/gimple-ssa-split-paths.c b/gcc/gimple-ssa-split-paths.c index 33bbb66..5bf45ee 100644 --- a/gcc/gimple-ssa-split-paths.c +++ b/gcc/gimple-ssa-split-paths.c @@ -264,8 +264,12 @@ is_feasible_trace (basic_block bb) if (is_gimple_debug (stmt)) continue; /* If there's a use in the joiner this might be a CSE/DCE - opportunity. */ - if (gimple_bb (stmt) == bb) + opportunity, but not if the use is in a conditional + which makes this a likely if-conversion candidate. */ + if (gimple_bb (stmt) == bb + && (!is_gimple_assign (stmt) + || (TREE_CODE_CLASS (gimple_assign_rhs_code (stmt)) + != tcc_comparison))) { found_useful_phi = true; break; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1427a8e..3620c23 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-05-01 Jeff Law + + PR tree-optimization/90037 + * g++.dg/tree-ssa/pr88797.C: New test. + 2019-05-01 Nathan Sidwell * g++.dg/cpp0x/decltype9.C: Adjust expected diagnostics. diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr88797.C b/gcc/testsuite/g++.dg/tree-ssa/pr88797.C new file mode 100644 index 0000000..75391d6 --- /dev/null +++ b/gcc/testsuite/g++.dg/tree-ssa/pr88797.C @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options "-O3 -fdump-tree-split-paths-details" } */ + + +void use(unsigned); +bool f(unsigned x, unsigned y) { + return x < 1111 + (y <= 2222); +} +void test_f(unsigned x, unsigned y) { + for (unsigned i = 0; i < 3333; ++i) + use(f(x++, y++)); +} + +/* { dg-final { scan-tree-dump-not "Duplicating join block" "split-paths" } } */ +/* { dg-final { scan-tree-dump-times "Block . is a join that does not expose" 1 "split-paths" } } */ + -- cgit v1.1 From db9c37294126d7c918b0cc918bd73feade0599c2 Mon Sep 17 00:00:00 2001 From: Dominique d'Humieres Date: Wed, 1 May 2019 19:40:22 +0200 Subject: re PR fortran/60144 (Misleading error message when missing "then" after "if" and "else if") 2019-05-01 Dominique d'Humieres PR fortran/60144 * match.c (gfc_match_parens): Change the location for missing ')'. (gfc_match_if): Detect a missing '('. Remove the spurious named constant error. Change the wording of some errors. (gfc_match_else): Change the wording of an error. (gfc_match_elseif): Detect a missing '('. Improve the matching process to get a better syntax analysis. PR fortran/60144 * gfortran.dg/block_name_2.f90: Adjust dg-error. * gfortran.dg/dec_type_print_3.f90.f90: Likewise * gfortran.dg/pr60144.f90: New test. From-SVN: r270776 --- gcc/fortran/ChangeLog | 10 +++ gcc/fortran/match.c | 84 ++++++++++++++++---------- gcc/testsuite/ChangeLog | 7 +++ gcc/testsuite/gfortran.dg/block_name_2.f90 | 6 +- gcc/testsuite/gfortran.dg/dec_type_print_3.f90 | 2 +- gcc/testsuite/gfortran.dg/pr60144.f90 | 27 +++++++++ 6 files changed, 101 insertions(+), 35 deletions(-) create mode 100644 gcc/testsuite/gfortran.dg/pr60144.f90 (limited to 'gcc') diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 12cb55c..2d76d9c 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,13 @@ +2019-05-01 Dominique d'Humieres + + PR fortran/60144 + * match.c (gfc_match_parens): Change the location for missing ')'. + (gfc_match_if): Detect a missing '('. Remove the spurious named + constant error. Change the wording of some errors. + (gfc_match_else): Change the wording of an error. + (gfc_match_elseif): Detect a missing '('. Improve the matching + process to get a better syntax analysis. + 2019-04-19 Steven G. Kargl PR fortran/90166 diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c index eba428f..268217a4 100644 --- a/gcc/fortran/match.c +++ b/gcc/fortran/match.c @@ -262,6 +262,8 @@ gfc_match_parens (void) for (;;) { + if (count > 0) + where = gfc_current_locus; c = gfc_next_char_literal (instring); if (c == '\n') break; @@ -281,7 +283,6 @@ gfc_match_parens (void) if (c == '(' && quote == ' ') { count++; - where = gfc_current_locus; } if (c == ')' && quote == ' ') { @@ -292,14 +293,10 @@ gfc_match_parens (void) gfc_current_locus = old_loc; - if (count > 0) - { - gfc_error ("Missing %<)%> in statement at or before %L", &where); - return MATCH_ERROR; - } - if (count < 0) + if (count != 0) { - gfc_error ("Missing %<(%> in statement at or before %L", &where); + gfc_error ("Missing %qs in statement at or before %L", + count > 0? ")":"(", &where); return MATCH_ERROR; } @@ -1495,7 +1492,17 @@ gfc_match_if (gfc_statement *if_type) old_loc = gfc_current_locus; - m = gfc_match (" if ( %e", &expr); + m = gfc_match (" if ", &expr); + if (m != MATCH_YES) + return m; + + if (gfc_match_char ('(') != MATCH_YES) + { + gfc_error ("Missing %<(%> in IF-expression at %C"); + return MATCH_ERROR; + } + + m = gfc_match ("%e", &expr); if (m != MATCH_YES) return m; @@ -1648,30 +1655,17 @@ gfc_match_if (gfc_statement *if_type) if (flag_dec) match ("type", gfc_match_print, ST_WRITE) - /* The gfc_match_assignment() above may have returned a MATCH_NO - where the assignment was to a named constant. Check that - special case here. */ - m = gfc_match_assignment (); - if (m == MATCH_NO) - { - gfc_error ("Cannot assign to a named constant at %C"); - gfc_free_expr (expr); - gfc_undo_symbols (); - gfc_current_locus = old_loc; - return MATCH_ERROR; - } - /* All else has failed, so give up. See if any of the matchers has stored an error message of some sort. */ if (!gfc_error_check ()) - gfc_error ("Unclassifiable statement in IF-clause at %C"); + gfc_error ("Syntax error in IF-clause after %C"); gfc_free_expr (expr); return MATCH_ERROR; got_match: if (m == MATCH_NO) - gfc_error ("Syntax error in IF-clause at %C"); + gfc_error ("Syntax error in IF-clause after %C"); if (m != MATCH_YES) { gfc_free_expr (expr); @@ -1714,7 +1708,7 @@ gfc_match_else (void) || gfc_current_block () == NULL || gfc_match_eos () != MATCH_YES) { - gfc_error ("Unexpected junk after ELSE statement at %C"); + gfc_error ("Invalid character(s) in ELSE statement after %C"); return MATCH_ERROR; } @@ -1735,31 +1729,59 @@ match gfc_match_elseif (void) { char name[GFC_MAX_SYMBOL_LEN + 1]; - gfc_expr *expr; + gfc_expr *expr, *then; + locus where; match m; - m = gfc_match (" ( %e ) then", &expr); + if (gfc_match_char ('(') != MATCH_YES) + { + gfc_error ("Missing %<(%> in ELSE IF expression at %C"); + return MATCH_ERROR; + } + + m = gfc_match (" %e ", &expr); if (m != MATCH_YES) return m; - if (gfc_match_eos () == MATCH_YES) + if (gfc_match_char (')') != MATCH_YES) + { + gfc_error ("Missing %<)%> in ELSE IF expression at %C"); + goto cleanup; + } + + m = gfc_match (" then ", &then); + + where = gfc_current_locus; + + if (m == MATCH_YES && (gfc_match_eos () == MATCH_YES + || (gfc_current_block () + && gfc_match_name (name) == MATCH_YES))) goto done; + if (gfc_match_eos () == MATCH_YES) + { + gfc_error ("Missing THEN in ELSE IF statement after %L", &where); + goto cleanup; + } + if (gfc_match_name (name) != MATCH_YES || gfc_current_block () == NULL || gfc_match_eos () != MATCH_YES) { - gfc_error ("Unexpected junk after ELSE IF statement at %C"); + gfc_error ("Syntax error in ELSE IF statement after %L", &where); goto cleanup; } if (strcmp (name, gfc_current_block ()->name) != 0) { - gfc_error ("Label %qs at %C doesn't match IF label %qs", - name, gfc_current_block ()->name); + gfc_error ("Label %qs after %L doesn't match IF label %qs", + name, &where, gfc_current_block ()->name); goto cleanup; } + if (m != MATCH_YES) + return m; + done: new_st.op = EXEC_IF; new_st.expr1 = expr; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3620c23..45b181a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2019-05-01 Dominique d'Humieres + + PR fortran/60144 + * gfortran.dg/block_name_2.f90: Adjust dg-error. + * gfortran.dg/dec_type_print_3.f90.f90: Likewise + * gfortran.dg/pr60144.f90: New test. + 2019-05-01 Jeff Law PR tree-optimization/90037 diff --git a/gcc/testsuite/gfortran.dg/block_name_2.f90 b/gcc/testsuite/gfortran.dg/block_name_2.f90 index d86e77e..289ea99 100644 --- a/gcc/testsuite/gfortran.dg/block_name_2.f90 +++ b/gcc/testsuite/gfortran.dg/block_name_2.f90 @@ -37,8 +37,8 @@ program blocks end do if (i > 0) then - else if (i ==0) then i2 ! { dg-error "Unexpected junk after ELSE IF statement" } - else i2 ! { dg-error "Unexpected junk after ELSE statement" } + else if (i ==0) then i2 ! { dg-error "Syntax error in ELSE IF statement" } + else i2 ! { dg-error "Invalid character.s. in ELSE statement" } end if i2 ! { dg-error "Syntax error in END IF statement" } end if @@ -49,7 +49,7 @@ program blocks end select where (a > 0) - elsewhere w2 ! { dg-error "Unexpected junk after ELSE statement" } + elsewhere w2 ! { dg-error "Invalid character.s. in ELSE statement" } end where w2 ! { dg-error "Syntax error in END WHERE statement" } end where diff --git a/gcc/testsuite/gfortran.dg/dec_type_print_3.f90 b/gcc/testsuite/gfortran.dg/dec_type_print_3.f90 index e5b455e..409e991 100644 --- a/gcc/testsuite/gfortran.dg/dec_type_print_3.f90 +++ b/gcc/testsuite/gfortran.dg/dec_type_print_3.f90 @@ -16,5 +16,5 @@ include 'dec_type_print.f90' ! { dg-error "Invalid character in name" "" { target *-*-* } 57 } ! { dg-error "Invalid character in name" "" { target *-*-* } 58 } ! { dg-error "conflicts with PROCEDURE" "" { target *-*-* } 60 } -! { dg-error "Cannot assign to a named constant" "" { target *-*-* } 80 } +! { dg-error "Syntax error in IF-clause" "" { target *-*-* } 80 } diff --git a/gcc/testsuite/gfortran.dg/pr60144.f90 b/gcc/testsuite/gfortran.dg/pr60144.f90 new file mode 100644 index 0000000..fe6c182 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr60144.f90 @@ -0,0 +1,27 @@ +! { dg-do compile } +! +! fortran PR/60144 +! Contributed by Sergio Losilla +! +program ifelif + if a=b ! { dg-error "Missing ... in IF-expression" } + if (a=b ! { dg-error "Missing ... in statement at or before" } + if (a=b then ! { dg-error "Missing ... in statement at or before" } + if ((a=b) ! { dg-error "Expected a right parenthesis in expression" } + if ((a==b ! { dg-error "Expected a right parenthesis in expression" } + if ((a==b) ! { dg-error "Missing ... in statement at or before" } + if ((a==b) then ! { dg-error "Missing ... in statement at or before" } + if (a=b)) ! { dg-error "Missing ... in statement at or before" } + if .TRUE.) ! { dg-error "Missing ... in IF-expression" } + if (.TRUE.) ! { dg-error "Syntax error in IF-clause after" } + if (.TRUE.) the ! { dg-error "Syntax error in IF-clause after" } + if ((.TRUE.) ! { dg-error "Missing ... in statement at or before" } + else if .FALSE.) ! { dg-error "Missing ... in ELSE IF expression" } + else if (.FALSE. ! { dg-error "Missing ... in ELSE IF expression" } + else if (.FALSE.) ! { dg-error "Missing THEN in ELSE IF statement" } + else if (.FALSE.) the ! { dg-error "doesn't match IF label" } + else (.true.) ! { dg-error "Invalid character.s. in ELSE statement after" } + else a=1 ! { dg-error "Invalid character.s. in ELSE statement after" } + if a=b ! { dg-error "Missing ... in IF-expression" } +! end if +end program -- cgit v1.1 From 9f3a481e08cbcce98793b3c7a78045e4e9621493 Mon Sep 17 00:00:00 2001 From: Andrew Benson Date: Wed, 1 May 2019 19:47:51 +0000 Subject: module.c (write_module): Initialize module_column before writing module to ensure line break occurs at... * module.c (write_module): Initialize module_column before writing module to ensure line break occurs at correct column From-SVN: r270777 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/module.c | 3 +++ 2 files changed, 8 insertions(+) (limited to 'gcc') diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 2d76d9c..387bf1b 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2019-05-01 Andrew Benson + + * module.c (write_module): Initialize module_column before writing + module to ensure line break occurs at correct column. + 2019-05-01 Dominique d'Humieres PR fortran/60144 diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index 3e1ffedd8..9c8ae13 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -6052,6 +6052,9 @@ write_module (void) { int i; + /* Initialize the column counter. */ + module_column = 1; + /* Write the operator interfaces. */ mio_lparen (); -- cgit v1.1 From 1da37f43b21e0c35e57b627edfa99ec80d2976ee Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 1 May 2019 20:27:36 +0000 Subject: runtime: persistentalloc and cache itabs Previously, each time we do an interface conversion for which the method table is not known at compile time, we allocate a new method table. This CL ports the mechanism of itab caching from the gc runtime, adapted to our itab representation and method finding mechanism. With the cache, we reuse the same itab for the same (interface, concrete) type pair. This reduces allocations in interface conversions. Unlike the gc runtime, we don't prepopulate the cache with statically allocated itabs, as currently we don't have a way to find them. This means we don't deduplicate run-time allocated itabs with compile-time allocated ones. But that is not too bad -- it is just a cache anyway. As now itabs are never freed, it is also possible to drop the write barrier for writing the first word of an interface header. I'll leave this optimization for the future. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/171617 From-SVN: r270778 --- gcc/go/gofrontend/MERGE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 0b4e3f1..b3042d0 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -9476f6183791477dd9b883f51e2a46b224227735 +e0b906b13cbc947406c634aaf8b06270292bd7e0 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. -- cgit v1.1 From 5e87c2806ff4e9057c4c46fa1d9c8ac91ce3dae9 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 1 May 2019 21:34:16 +0000 Subject: compiler,runtime: do more direct interfaces A direct interface is an interface whose data word contains the actual data value, instead of a pointer to it. The gc toolchain creates a direct interface if the value is pointer shaped, that includes pointers (including unsafe.Pointer), functions, channels, maps, and structs and arrays containing a single pointer-shaped field. In gccgo, we only do this for pointers. This CL unifies direct interface types with gc. This reduces allocations when converting such types to interfaces. Our method functions used to always take pointer receivers, to make interface calls easy. Now for direct interface types, their value methods will take value receivers. For a pointer to those types, when converted to interface, the interface data contains the pointer. For that interface to call a value method, it will need a wrapper method that dereference the pointer and invokes the value method. The wrapper method, instead of the actual one, is put into the itable of the pointer type. In the runtime, adjust funcPC for the new layout of interfaces of functions. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/168409 From-SVN: r270779 --- gcc/go/gofrontend/MERGE | 2 +- gcc/go/gofrontend/expressions.cc | 106 ++++++++++++++++--- gcc/go/gofrontend/expressions.h | 8 ++ gcc/go/gofrontend/gogo.cc | 4 +- gcc/go/gofrontend/types.cc | 223 +++++++++++++++++++++++++++++++++++++-- gcc/go/gofrontend/types.h | 40 ++++++- 6 files changed, 357 insertions(+), 26 deletions(-) (limited to 'gcc') diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index b3042d0..f5aa6a9 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -e0b906b13cbc947406c634aaf8b06270292bd7e0 +b42744825e3f2d1d2981eedbb67d6ac6419b8122 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 6f9775d..0dd869b 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -292,11 +292,11 @@ Expression::convert_type_to_interface(Type* lhs_type, Expression* rhs, } Expression* obj; - if (rhs_type->points_to() != NULL) + if (rhs_type->is_direct_iface_type()) { // We are assigning a pointer to the interface; the interface // holds the pointer itself. - obj = rhs; + obj = unpack_direct_iface(rhs, location); } else { @@ -310,6 +310,60 @@ Expression::convert_type_to_interface(Type* lhs_type, Expression* rhs, return Expression::make_interface_value(lhs_type, first_field, obj, location); } +// Return an expression for the pointer-typed value of a direct interface +// type. Specifically, for single field struct or array, get the single +// field, and do this recursively. The reason for this is that we don't +// want to assign a struct or an array to a pointer-typed field. The +// backend may not like that. + +Expression* +Expression::unpack_direct_iface(Expression* rhs, Location loc) +{ + Struct_type* st = rhs->type()->struct_type(); + if (st != NULL) + { + go_assert(st->field_count() == 1); + Expression* field = Expression::make_field_reference(rhs, 0, loc); + return unpack_direct_iface(field, loc); + } + Array_type* at = rhs->type()->array_type(); + if (at != NULL) + { + int64_t len; + bool ok = at->int_length(&len); + go_assert(ok && len == 1); + Type* int_type = Type::lookup_integer_type("int"); + Expression* index = Expression::make_integer_ul(0, int_type, loc); + Expression* elem = Expression::make_array_index(rhs, index, NULL, NULL, loc); + return unpack_direct_iface(elem, loc); + } + return rhs; +} + +// The opposite of unpack_direct_iface. + +Expression* +Expression::pack_direct_iface(Type* t, Expression* rhs, Location loc) +{ + if (rhs->type() == t) + return rhs; + Struct_type* st = t->struct_type(); + if (st != NULL) + { + Expression_list* vals = new Expression_list(); + vals->push_back(pack_direct_iface(st->field(0)->type(), rhs, loc)); + return Expression::make_struct_composite_literal(t, vals, loc); + } + Array_type* at = t->array_type(); + if (at != NULL) + { + Expression_list* vals = new Expression_list(); + vals->push_back(pack_direct_iface(at->element_type(), rhs, loc)); + return Expression::make_array_composite_literal(t, vals, loc); + } + return Expression::make_unsafe_cast(t, rhs, loc); +} + // Return an expression for the type descriptor of RHS. Expression* @@ -426,9 +480,11 @@ Expression::convert_interface_to_type(Type *lhs_type, Expression* rhs, Expression* obj = Expression::make_interface_info(rhs, INTERFACE_INFO_OBJECT, location); - // If the value is a pointer, then it is the value we want. + // If the value is a direct interface, then it is the value we want. // Otherwise it points to the value. - if (lhs_type->points_to() == NULL) + if (lhs_type->is_direct_iface_type()) + obj = Expression::pack_direct_iface(lhs_type, obj, location); + else { obj = Expression::make_unsafe_cast(Type::make_pointer_type(lhs_type), obj, location); @@ -3871,9 +3927,9 @@ Unsafe_type_conversion_expression::do_get_backend(Translate_context* context) && Type::are_convertible(t, et, NULL)); } else if (t->map_type() != NULL) - go_assert(et->map_type() != NULL); + go_assert(et->map_type() != NULL || et->points_to() != NULL); else if (t->channel_type() != NULL) - go_assert(et->channel_type() != NULL); + go_assert(et->channel_type() != NULL || et->points_to() != NULL); else if (t->points_to() != NULL) go_assert(et->points_to() != NULL || et->channel_type() != NULL @@ -3881,6 +3937,8 @@ Unsafe_type_conversion_expression::do_get_backend(Translate_context* context) || et->function_type() != NULL || et->integer_type() != NULL || et->is_nil_type()); + else if (t->function_type() != NULL) + go_assert(et->points_to() != NULL); else if (et->is_unsafe_pointer_type()) go_assert(t->points_to() != NULL || (t->integer_type() != NULL @@ -3899,8 +3957,6 @@ Unsafe_type_conversion_expression::do_get_backend(Translate_context* context) || et->map_type() != NULL || et->channel_type() != NULL || et->is_nil_type()); - else if (t->function_type() != NULL) - go_assert(et->points_to() != NULL); else go_unreachable(); @@ -6723,10 +6779,10 @@ Expression::comparison(Translate_context* context, Type* result_type, } // The right operand is not an interface. We need to take its - // address if it is not a pointer. + // address if it is not a direct interface type. Expression* pointer_arg = NULL; - if (right_type->points_to() != NULL) - pointer_arg = right; + if (right_type->is_direct_iface_type()) + pointer_arg = Expression::unpack_direct_iface(right, location); else { go_assert(right->is_addressable()); @@ -9871,11 +9927,15 @@ Call_expression::do_lower(Gogo* gogo, Named_object* function, if (bme != NULL) { Named_object* methodfn = bme->function(); + Function_type* mft = (methodfn->is_function() + ? methodfn->func_value()->type() + : methodfn->func_declaration_value()->type()); Expression* first_arg = bme->first_argument(); - // We always pass a pointer when calling a method. - if (first_arg->type()->points_to() == NULL - && !first_arg->type()->is_error()) + // We always pass a pointer when calling a method, except for + // direct interface types when calling a value method. + if (!first_arg->type()->is_error() + && !first_arg->type()->is_direct_iface_type()) { first_arg = Expression::make_unary(OPERATOR_AND, first_arg, loc); // We may need to create a temporary variable so that we can @@ -9884,6 +9944,12 @@ Call_expression::do_lower(Gogo* gogo, Named_object* function, Unary_expression* ue = static_cast(first_arg); ue->set_create_temp(); } + else if (mft->receiver()->type()->points_to() == NULL + && first_arg->type()->points_to() != NULL + && first_arg->type()->points_to()->is_direct_iface_type()) + first_arg = Expression::make_dereference(first_arg, + Expression::NIL_CHECK_DEFAULT, + loc); // If we are calling a method which was inherited from an // embedded struct, and the method did not get a stub, then the @@ -16018,11 +16084,19 @@ Interface_mtable_expression::do_get_backend(Translate_context* context) else m = st->method_function(p->name(), &is_ambiguous); go_assert(m != NULL); - Named_object* no = m->named_object(); + Named_object* no = + (this->is_pointer_ + && this->type_->is_direct_iface_type() + && m->is_value_method() + ? m->iface_stub_object() + : m->named_object()); go_assert(no->is_function() || no->is_function_declaration()); - Btype* fcn_btype = m->type()->get_backend_fntype(gogo); + Function_type* fcn_type = (no->is_function() + ? no->func_value()->type() + : no->func_declaration_value()->type()); + Btype* fcn_btype = fcn_type->get_backend_fntype(gogo); Backend::Btyped_identifier bmtype(p->name(), fcn_btype, loc); bstructfields.push_back(bmtype); diff --git a/gcc/go/gofrontend/expressions.h b/gcc/go/gofrontend/expressions.h index 43aaccf..af7b00c 100644 --- a/gcc/go/gofrontend/expressions.h +++ b/gcc/go/gofrontend/expressions.h @@ -1036,6 +1036,11 @@ class Expression static Expression* check_bounds(Expression* val, Location); + // Return an expression for constructing a direct interface type from a + // pointer. + static Expression* + pack_direct_iface(Type*, Expression*, Location); + // Dump an expression to a dump constext. void dump_expression(Ast_dump_context*) const; @@ -1198,6 +1203,9 @@ class Expression convert_type_to_interface(Type*, Expression*, Location); static Expression* + unpack_direct_iface(Expression*, Location); + + static Expression* get_interface_type_descriptor(Expression*); static Expression* diff --git a/gcc/go/gofrontend/gogo.cc b/gcc/go/gofrontend/gogo.cc index 11bc7dd..f45576e 100644 --- a/gcc/go/gofrontend/gogo.cc +++ b/gcc/go/gofrontend/gogo.cc @@ -6039,7 +6039,7 @@ Function::build(Gogo* gogo, Named_object* named_function) // the receiver is declared as a non-pointer type, then we // copy the value into a local variable. if ((*p)->var_value()->is_receiver() - && (*p)->var_value()->type()->points_to() == NULL) + && !(*p)->var_value()->type()->is_direct_iface_type()) { std::string name = (*p)->name() + ".pointer"; Type* var_type = (*p)->var_value()->type(); @@ -7516,7 +7516,7 @@ Variable::get_backend_variable(Gogo* gogo, Named_object* function, else { bool is_parameter = this->is_parameter_; - if (this->is_receiver_ && type->points_to() == NULL) + if (this->is_receiver_ && !type->is_direct_iface_type()) is_parameter = false; if (this->is_in_heap()) { diff --git a/gcc/go/gofrontend/types.cc b/gcc/go/gofrontend/types.cc index e9cbfd8..5796d2d 100644 --- a/gcc/go/gofrontend/types.cc +++ b/gcc/go/gofrontend/types.cc @@ -2313,6 +2313,49 @@ Type::write_named_equal(Gogo* gogo, Named_type* name) gogo->add_statement(s); } +// Return whether this type is stored directly in an interface's +// data word. +// +// Since finalize_methods runs before type checking, we may see a +// malformed type like 'type T struct { x T }'. Use a visited map +// to avoid infinite recursion. + +bool +Type::is_direct_iface_type() const +{ + Unordered_set(const Type*) visited; + return this->is_direct_iface_type_helper(&visited); +} + +bool +Type::is_direct_iface_type_helper(Unordered_set(const Type*)* visited) const +{ + if (this->points_to() != NULL + || this->channel_type() != NULL + || this->function_type() != NULL + || this->map_type() != NULL) + return true; + + std::pair ins + = visited->insert(this); + if (!ins.second) + // malformed circular type + return false; + + const Struct_type* st = this->struct_type(); + if (st != NULL) + return (st->field_count() == 1 + && st->field(0)->type()->is_direct_iface_type_helper(visited)); + const Array_type* at = this->array_type(); + if (at != NULL && !at->is_slice_type()) + { + int64_t len; + return (at->int_length(&len) && len == 1 + && at->element_type()->is_direct_iface_type_helper(visited)); + } + return false; +} + // Return a composite literal for the type descriptor for a plain type // of kind RUNTIME_TYPE_KIND named NAME. @@ -2331,7 +2374,7 @@ Type::type_descriptor_constructor(Gogo* gogo, int runtime_type_kind, if (!this->has_pointer()) runtime_type_kind |= RUNTIME_TYPE_KIND_NO_POINTERS; - if (this->points_to() != NULL) + if (this->is_direct_iface_type()) runtime_type_kind |= RUNTIME_TYPE_KIND_DIRECT_IFACE; int64_t ptrsize; int64_t ptrdata; @@ -3397,9 +3440,14 @@ Type::method_constructor(Gogo*, Type* method_type, vals->push_back(Expression::make_unary(OPERATOR_AND, s, bloc)); } - Named_object* no = (m->needs_stub_method() - ? m->stub_object() - : m->named_object()); + Named_object* no = + ((this->points_to() != NULL + && this->points_to()->is_direct_iface_type() + && m->is_value_method()) + ? m->iface_stub_object() + : (m->needs_stub_method() + ? m->stub_object() + : m->named_object())); Function_type* mtype; if (no->is_function()) @@ -4708,9 +4756,11 @@ Function_type::get_backend_fntype(Gogo* gogo) breceiver.name = Gogo::unpack_hidden_name(this->receiver_->name()); // We always pass the address of the receiver parameter, in - // order to make interface calls work with unknown types. + // order to make interface calls work with unknown types, + // except for direct interface types where the interface call + // actually passes value. Type* rtype = this->receiver_->type(); - if (rtype->points_to() == NULL) + if (!rtype->is_direct_iface_type()) rtype = Type::make_pointer_type(rtype); breceiver.btype = rtype->get_backend(gogo); breceiver.location = this->receiver_->location(); @@ -11020,6 +11070,8 @@ Type::finalize_methods(Gogo* gogo, const Type* type, Location location, *all_methods = NULL; } Type::build_stub_methods(gogo, type, *all_methods, location); + if (type->is_direct_iface_type()) + Type::build_direct_iface_stub_methods(gogo, type, *all_methods, location); } // Add the methods for TYPE to *METHODS. FIELD_INDEXES is used to @@ -11383,6 +11435,165 @@ Type::build_one_stub_method(Gogo* gogo, Method* method, gogo->add_statement(Statement::make_return_from_call(call, location)); } +// Build direct interface stub methods for TYPE as needed. METHODS +// is the set of methods for the type. LOCATION is the location of +// the type definition. +// +// This is for an interface holding a pointer to the type and invoking +// a value method. The interface data is the pointer, and is passed +// to the stub, which dereferences it and passes to the actual method. + +void +Type::build_direct_iface_stub_methods(Gogo* gogo, const Type* type, + Methods* methods, Location loc) +{ + if (methods == NULL) + return; + + for (Methods::const_iterator p = methods->begin(); + p != methods->end(); + ++p) + { + Method* m = p->second; + if (!m->is_value_method()) + continue; + + Type* receiver_type = const_cast(type); + receiver_type = Type::make_pointer_type(receiver_type); + const std::string& name(p->first); + Function_type* fntype = m->type(); + + static unsigned int counter; + char buf[100]; + snprintf(buf, sizeof buf, "$ptr%u", counter); + ++counter; + Typed_identifier* receiver = + new Typed_identifier(buf, receiver_type, m->receiver_location()); + + const Typed_identifier_list* params = fntype->parameters(); + Typed_identifier_list* stub_params; + if (params == NULL || params->empty()) + stub_params = NULL; + else + { + // We give each stub parameter a unique name. + stub_params = new Typed_identifier_list(); + for (Typed_identifier_list::const_iterator pp = params->begin(); + pp != params->end(); + ++pp) + { + char pbuf[100]; + snprintf(pbuf, sizeof pbuf, "$p%u", counter); + stub_params->push_back(Typed_identifier(pbuf, pp->type(), + pp->location())); + ++counter; + } + } + + const Typed_identifier_list* fnresults = fntype->results(); + Typed_identifier_list* stub_results; + if (fnresults == NULL || fnresults->empty()) + stub_results = NULL; + else + { + // We create the result parameters without any names, since + // we won't refer to them. + stub_results = new Typed_identifier_list(); + for (Typed_identifier_list::const_iterator pr = fnresults->begin(); + pr != fnresults->end(); + ++pr) + stub_results->push_back(Typed_identifier("", pr->type(), + pr->location())); + } + + Function_type* stub_type = Type::make_function_type(receiver, + stub_params, + stub_results, + fntype->location()); + if (fntype->is_varargs()) + stub_type->set_is_varargs(); + + // We only create the function in the package which creates the + // type. + const Package* package; + if (type->named_type() == NULL) + package = NULL; + else + package = type->named_type()->named_object()->package(); + + std::string stub_name = gogo->stub_method_name(package, name) + "2"; + Named_object* stub; + if (package != NULL) + stub = Named_object::make_function_declaration(stub_name, package, + stub_type, loc); + else + { + stub = gogo->start_function(stub_name, stub_type, false, + fntype->location()); + Type::build_one_iface_stub_method(gogo, m, buf, stub_params, + fntype->is_varargs(), loc); + gogo->finish_function(fntype->location()); + + if (type->named_type() == NULL && stub->is_function()) + stub->func_value()->set_is_unnamed_type_stub_method(); + if (m->nointerface() && stub->is_function()) + stub->func_value()->set_nointerface(); + } + + m->set_iface_stub_object(stub); + } +} + +// Build a stub method for METHOD of direct interface type T. +// RECEIVER_NAME is the name we used for the receiver. +// PARAMS is the list of function parameters. +// +// The stub looks like +// +// func ($ptr *T, PARAMS) { +// (*$ptr).METHOD(PARAMS) +// } + +void +Type::build_one_iface_stub_method(Gogo* gogo, Method* method, + const char* receiver_name, + const Typed_identifier_list* params, + bool is_varargs, Location loc) +{ + Named_object* receiver_object = gogo->lookup(receiver_name, NULL); + go_assert(receiver_object != NULL); + + Expression* expr = Expression::make_var_reference(receiver_object, loc); + expr = Expression::make_dereference(expr, + Expression::NIL_CHECK_DEFAULT, + loc); + + Expression_list* arguments; + if (params == NULL || params->empty()) + arguments = NULL; + else + { + arguments = new Expression_list(); + for (Typed_identifier_list::const_iterator p = params->begin(); + p != params->end(); + ++p) + { + Named_object* param = gogo->lookup(p->name(), NULL); + go_assert(param != NULL); + Expression* param_ref = Expression::make_var_reference(param, + loc); + arguments->push_back(param_ref); + } + } + + Expression* func = method->bind_method(expr, loc); + go_assert(func != NULL); + Call_expression* call = Expression::make_call(func, arguments, is_varargs, + loc); + + gogo->add_statement(Statement::make_return_from_call(call, loc)); +} + // Apply FIELD_INDEXES to EXPR. The field indexes have to be applied // in reverse order. diff --git a/gcc/go/gofrontend/types.h b/gcc/go/gofrontend/types.h index 07121dd..721d1fc 100644 --- a/gcc/go/gofrontend/types.h +++ b/gcc/go/gofrontend/types.h @@ -186,6 +186,22 @@ class Method this->stub_ = no; } + // Get the direct interface method stub object. + Named_object* + iface_stub_object() const + { + go_assert(this->iface_stub_ != NULL); + return this->iface_stub_; + } + + // Set the direct interface method stub object. + void + set_iface_stub_object(Named_object* no) + { + go_assert(this->iface_stub_ == NULL); + this->iface_stub_ = no; + } + // Return true if this method should not participate in any // interfaces. bool @@ -196,7 +212,7 @@ class Method // These objects are only built by the child classes. Method(const Field_indexes* field_indexes, unsigned int depth, bool is_value_method, bool needs_stub_method) - : field_indexes_(field_indexes), depth_(depth), stub_(NULL), + : field_indexes_(field_indexes), depth_(depth), stub_(NULL), iface_stub_(NULL), is_value_method_(is_value_method), needs_stub_method_(needs_stub_method), is_ambiguous_(false) { } @@ -230,6 +246,9 @@ class Method // If a stub method is required, this is its object. This is only // set after stub methods are built in finalize_methods. Named_object* stub_; + // Stub object for direct interface type. This is only set after + // stub methods are built in finalize_methods. + Named_object* iface_stub_; // Whether this is a value method--a method that does not require a // pointer. bool is_value_method_; @@ -923,6 +942,11 @@ class Type is_unsafe_pointer_type() const { return this->points_to() != NULL && this->points_to()->is_void_type(); } + // Return whether this type is stored directly in an interface's + // data word. + bool + is_direct_iface_type() const; + // Return a version of this type with any expressions copied, but // only if copying the expressions will affect the size of the type. // If there are no such expressions in the type (expressions can @@ -1321,6 +1345,15 @@ class Type const Typed_identifier_list*, bool is_varargs, Location); + // Build direct interface stub methods for a type. + static void + build_direct_iface_stub_methods(Gogo*, const Type*, Methods*, Location); + + static void + build_one_iface_stub_method(Gogo*, Method*, const char*, + const Typed_identifier_list*, + bool, Location); + static Expression* apply_field_indexes(Expression*, const Method::Field_indexes*, Location); @@ -1333,6 +1366,11 @@ class Type bool* is_method, bool* found_pointer_method, std::string* ambig1, std::string* ambig2); + // Helper function for is_direct_iface_type, to prevent infinite + // recursion. + bool + is_direct_iface_type_helper(Unordered_set(const Type*)*) const; + // Get the backend representation for a type without looking in the // hash table for identical types. Btype* -- cgit v1.1 From 58dbd45339823deb30fe4f1e97f6664f118b2f62 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 1 May 2019 21:37:00 +0000 Subject: compiler: recognize and optimize map range clear Recognize for k := range m { delete(m, k) } for map m, and rewrite it to runtime.mapclear, as the gc compiler does. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/169397 From-SVN: r270780 --- gcc/go/gofrontend/MERGE | 2 +- gcc/go/gofrontend/runtime.def | 3 ++ gcc/go/gofrontend/statements.cc | 96 +++++++++++++++++++++++++++++++++++++++++ gcc/go/gofrontend/statements.h | 4 ++ 4 files changed, 104 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index f5aa6a9..0203eee 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -b42744825e3f2d1d2981eedbb67d6ac6419b8122 +7e590184ae1ebc02e1b2577de00cf4fe842217dc The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/gcc/go/gofrontend/runtime.def b/gcc/go/gofrontend/runtime.def index 83a7152..a87b4d2 100644 --- a/gcc/go/gofrontend/runtime.def +++ b/gcc/go/gofrontend/runtime.def @@ -137,6 +137,9 @@ DEF_GO_RUNTIME(MAPITERINIT, "runtime.mapiterinit", P3(TYPE, MAP, POINTER), // Range over a map, moving to the next map entry. DEF_GO_RUNTIME(MAPITERNEXT, "runtime.mapiternext", P1(POINTER), R0()) +// Clear a map. +DEF_GO_RUNTIME(MAPCLEAR, "runtime.mapclear", P2(TYPE, MAP), R0()) + // Make a channel. DEF_GO_RUNTIME(MAKECHAN, "runtime.makechan", P2(TYPE, INT), R1(CHAN)) diff --git a/gcc/go/gofrontend/statements.cc b/gcc/go/gofrontend/statements.cc index 4d10f60..6dd179a 100644 --- a/gcc/go/gofrontend/statements.cc +++ b/gcc/go/gofrontend/statements.cc @@ -5485,6 +5485,7 @@ For_range_statement::do_lower(Gogo* gogo, Named_object*, Block* enclosing, Location loc = this->location(); Block* temp_block = new Block(enclosing, loc); + Expression* orig_range_expr = this->range_; Named_object* range_object = NULL; Temporary_statement* range_temp = NULL; if (eval) @@ -5500,6 +5501,22 @@ For_range_statement::do_lower(Gogo* gogo, Named_object*, Block* enclosing, } } + // Try to match "range clear" patterns and rewrite to simple runtime + // calls. + if (range_type->map_type() != NULL) + { + Statement* clear = this->lower_map_range_clear(range_type, + enclosing, + orig_range_expr, + range_object, + range_temp, loc); + if (clear != NULL) + { + temp_block->add_statement(clear); + return Statement::make_block_statement(temp_block, loc); + } + } + Temporary_statement* index_temp = Statement::make_temporary(index_type, NULL, loc); temp_block->add_statement(index_temp); @@ -6141,6 +6158,85 @@ For_range_statement::lower_range_channel(Gogo*, *piter_init = iter_init; } +// Match +// +// for k := range m { delete(m, k) } +// +// Lower it to runtime.mapclear(TYPE, m) on match, return the statement +// containing the call. Return NULL otherwise. + +Statement* +For_range_statement::lower_map_range_clear(Type* map_type, + Block* enclosing, + Expression* orig_range_expr, + Named_object* range_object, + Temporary_statement* range_temp, + Location loc) +{ + if (this->value_var_ != NULL) + return NULL; + if (this->index_var_ == NULL) + return NULL; + + // Require the loop index be a new variable. We cannot rewrite + // if it is used outside of the loop. + Var_expression* index_ve = this->index_var_->var_expression(); + if (index_ve == NULL) + return NULL; + Named_object* index_no = index_ve->named_object(); + if (enclosing->bindings()->lookup_local(index_no->name()) != index_no) + return NULL; + + // Match the body. When lowering the builtin delete function, we have + // inserted temporaries, so we actually match for + // + // tmp1 = m + // tmp2 = k + // runtime.mapdelete(TYPE, tmp1, &tmp2) + + const std::vector* statements = this->statements_->statements(); + if (statements->size() != 3) + return NULL; + + Temporary_statement* ts1 = statements->at(0)->temporary_statement(); + Temporary_statement* ts2 = statements->at(1)->temporary_statement(); + Expression_statement* es3 = statements->at(2)->expression_statement(); + if (ts1 == NULL || ts2 == NULL || es3 == NULL + || !Expression::is_same_variable(orig_range_expr, ts1->init()) + || !Expression::is_same_variable(this->index_var_, ts2->init())) + return NULL; + Call_expression* call = es3->expr()->call_expression(); + if (call == NULL) + return NULL; + Func_expression* fe = call->fn()->func_expression(); + if (fe == NULL || !fe->is_runtime_function() + || fe->runtime_code() != Runtime::MAPDELETE) + return NULL; + Expression* a1 = call->args()->at(1); + a1 = (a1->unsafe_conversion_expression() != NULL + ? a1->unsafe_conversion_expression()->expr() + : a1); + Temporary_reference_expression* tre = a1->temporary_reference_expression(); + if (tre == NULL || tre->statement() != ts1) + return NULL; + Expression* a2 = call->args()->at(2); + a2 = (a2->conversion_expression() != NULL + ? a2->conversion_expression()->expr() + : a2); + Unary_expression* ue = a2->unary_expression(); + if (ue == NULL || ue->op() != OPERATOR_AND) + return NULL; + tre = ue->operand()->temporary_reference_expression(); + if (tre == NULL || tre->statement() != ts2) + return NULL; + + // Everything matches. Rewrite to mapclear(TYPE, MAP). + Expression* e1 = Expression::make_type_descriptor(map_type, loc); + Expression* e2 = this->make_range_ref(range_object, range_temp, loc); + call = Runtime::make_call(Runtime::MAPCLEAR, loc, 2, e1, e2); + return Statement::make_statement(call, true); +} + // Return the break LABEL_EXPR. Unnamed_label* diff --git a/gcc/go/gofrontend/statements.h b/gcc/go/gofrontend/statements.h index 621d301..67c8e43 100644 --- a/gcc/go/gofrontend/statements.h +++ b/gcc/go/gofrontend/statements.h @@ -1618,6 +1618,10 @@ class For_range_statement : public Statement Temporary_statement*, Block**, Expression**, Block**, Block**); + Statement* + lower_map_range_clear(Type*, Block*, Expression*, Named_object*, + Temporary_statement*, Location); + // The variable which is set to the index value. Expression* index_var_; // The variable which is set to the element value. This may be -- cgit v1.1 From 06ceaa1d78d586eba492699075a8dee31ab3a3e8 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Thu, 2 May 2019 00:16:20 +0000 Subject: Daily bump. From-SVN: r270786 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 1c23fed..5a92647 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190501 +20190502 -- cgit v1.1 From 786e0e5239529de9a4254fe8411a0e8f843e721a Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 2 May 2019 09:57:38 +0200 Subject: Prefer to use strlen call instead of inline expansion (PR target/88809). 2019-05-02 Martin Liska PR target/88809 * config/i386/i386.c (ix86_expand_strlen): Use strlen call. With -minline-all-stringops use inline expansion using 4B loop. * doc/invoke.texi: Document the change of -minline-all-stringops. 2019-05-02 Martin Liska PR target/88809 * gcc.target/i386/pr88809.c: New test. * gcc.target/i386/pr88809-2.c: New test. From-SVN: r270787 --- gcc/ChangeLog | 8 ++++ gcc/config/i386/i386.c | 70 ++++++++----------------------- gcc/doc/invoke.texi | 5 ++- gcc/testsuite/ChangeLog | 6 +++ gcc/testsuite/gcc.target/i386/pr88809-2.c | 9 ++++ gcc/testsuite/gcc.target/i386/pr88809.c | 9 ++++ 6 files changed, 53 insertions(+), 54 deletions(-) create mode 100644 gcc/testsuite/gcc.target/i386/pr88809-2.c create mode 100644 gcc/testsuite/gcc.target/i386/pr88809.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7f6ccd9..1883e4d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2019-05-02 Martin Liska + + PR target/88809 + * config/i386/i386.c (ix86_expand_strlen): Use strlen call. + With -minline-all-stringops use inline expansion using 4B loop. + * doc/invoke.texi: Document the change of + -minline-all-stringops. + 2019-05-01 Jeff Law PR tree-optimization/88797 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 43ee776..e7ee83d 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -28270,68 +28270,34 @@ ix86_expand_strlensi_unroll_1 (rtx out, rtx src, rtx align_rtx) bool ix86_expand_strlen (rtx out, rtx src, rtx eoschar, rtx align) { - rtx addr, scratch1, scratch2, scratch3, scratch4; - - /* The generic case of strlen expander is long. Avoid it's - expanding unless TARGET_INLINE_ALL_STRINGOPS. */ - - if (TARGET_UNROLL_STRLEN && eoschar == const0_rtx && optimize > 1 - && !TARGET_INLINE_ALL_STRINGOPS - && !optimize_insn_for_size_p () - && (!CONST_INT_P (align) || INTVAL (align) < 4)) - return false; - - addr = force_reg (Pmode, XEXP (src, 0)); - scratch1 = gen_reg_rtx (Pmode); - - if (TARGET_UNROLL_STRLEN && eoschar == const0_rtx && optimize > 1 - && !optimize_insn_for_size_p ()) - { +if (TARGET_UNROLL_STRLEN + && TARGET_INLINE_ALL_STRINGOPS + && eoschar == const0_rtx + && optimize > 1) + { + /* The generic case of strlen expander is long. Avoid it's + expanding unless TARGET_INLINE_ALL_STRINGOPS. */ + rtx addr = force_reg (Pmode, XEXP (src, 0)); /* Well it seems that some optimizer does not combine a call like - foo(strlen(bar), strlen(bar)); - when the move and the subtraction is done here. It does calculate - the length just once when these instructions are done inside of - output_strlen_unroll(). But I think since &bar[strlen(bar)] is - often used and I use one fewer register for the lifetime of - output_strlen_unroll() this is better. */ + foo(strlen(bar), strlen(bar)); + when the move and the subtraction is done here. It does calculate + the length just once when these instructions are done inside of + output_strlen_unroll(). But I think since &bar[strlen(bar)] is + often used and I use one fewer register for the lifetime of + output_strlen_unroll() this is better. */ emit_move_insn (out, addr); ix86_expand_strlensi_unroll_1 (out, src, align); /* strlensi_unroll_1 returns the address of the zero at the end of - the string, like memchr(), so compute the length by subtracting - the start address. */ + the string, like memchr(), so compute the length by subtracting + the start address. */ emit_insn (ix86_gen_sub3 (out, out, addr)); + return true; } else - { - rtx unspec; - - /* Can't use this if the user has appropriated eax, ecx, or edi. */ - if (fixed_regs[AX_REG] || fixed_regs[CX_REG] || fixed_regs[DI_REG]) - return false; - /* Can't use this for non-default address spaces. */ - if (!ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (src))) - return false; - - scratch2 = gen_reg_rtx (Pmode); - scratch3 = gen_reg_rtx (Pmode); - scratch4 = force_reg (Pmode, constm1_rtx); - - emit_move_insn (scratch3, addr); - eoschar = force_reg (QImode, eoschar); - - src = replace_equiv_address_nv (src, scratch3); - - /* If .md starts supporting :P, this can be done in .md. */ - unspec = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, src, eoschar, align, - scratch4), UNSPEC_SCAS); - emit_insn (gen_strlenqi_1 (scratch1, scratch3, unspec)); - emit_insn (ix86_gen_one_cmpl2 (scratch2, scratch1)); - emit_insn (ix86_gen_add3 (out, scratch2, constm1_rtx)); - } - return true; + return false; } /* For given symbol (function) construct code to compute address of it's PLT diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 516eb24..de7e1aa 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -28506,8 +28506,9 @@ By default GCC inlines string operations only when the destination is known to be aligned to least a 4-byte boundary. This enables more inlining and increases code size, but may improve performance of code that depends on fast -@code{memcpy}, @code{strlen}, -and @code{memset} for short lengths. +@code{memcpy} and @code{memset} for short lengths. +The option enables inline expansion of @code{strlen} for all +pointer alignments. @item -minline-stringops-dynamically @opindex minline-stringops-dynamically diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 45b181a..30227ca 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-05-02 Martin Liska + + PR target/88809 + * gcc.target/i386/pr88809.c: New test. + * gcc.target/i386/pr88809-2.c: New test. + 2019-05-01 Dominique d'Humieres PR fortran/60144 diff --git a/gcc/testsuite/gcc.target/i386/pr88809-2.c b/gcc/testsuite/gcc.target/i386/pr88809-2.c new file mode 100644 index 0000000..b8ef51d --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr88809-2.c @@ -0,0 +1,9 @@ +/* PR target/88809 */ +/* { dg-options "-Os" } */ + +unsigned int foo (const char *ptr) +{ + return __builtin_strlen (ptr); +} + +/* { dg-final { scan-assembler "call\[ \t\]strlen" } } */ diff --git a/gcc/testsuite/gcc.target/i386/pr88809.c b/gcc/testsuite/gcc.target/i386/pr88809.c new file mode 100644 index 0000000..20844dd --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr88809.c @@ -0,0 +1,9 @@ +/* PR target/88809 */ +/* { dg-options "-O" } */ + +unsigned int foo (const char *ptr) +{ + return __builtin_strlen (ptr); +} + +/* { dg-final { scan-assembler "call\[ \t\]strlen" } } */ -- cgit v1.1 From 2dcfc8722b6146e479039a2f8994050c772b25e6 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 2 May 2019 10:16:12 +0200 Subject: Postpone print of --help=* option. 2019-05-02 Martin Liska * gcc.c (process_command): Add dummy file only if n_infiles == 0. * opts-global.c (decode_options): Pass lang_mask. * opts.c (print_help): New function. (finish_options): Print --help if help_option_argument is set. (common_handle_option): Factor out content of OPT__help_ into print_help. * opts.h (finish_options): Add new argument. From-SVN: r270788 --- gcc/ChangeLog | 12 +++ gcc/gcc.c | 5 +- gcc/opts-global.c | 2 +- gcc/opts.c | 267 ++++++++++++++++++++++++++++-------------------------- gcc/opts.h | 3 +- 5 files changed, 158 insertions(+), 131 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1883e4d..a6ce523 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,17 @@ 2019-05-02 Martin Liska + * gcc.c (process_command): Add dummy file only + if n_infiles == 0. + * opts-global.c (decode_options): Pass lang_mask. + * opts.c (print_help): New function. + (finish_options): Print --help if help_option_argument + is set. + (common_handle_option): Factor out content of OPT__help_ + into print_help. + * opts.h (finish_options): Add new argument. + +2019-05-02 Martin Liska + PR target/88809 * config/i386/i386.c (ix86_expand_strlen): Use strlen call. With -minline-all-stringops use inline expansion using 4B loop. diff --git a/gcc/gcc.c b/gcc/gcc.c index 4f57765..a1003a5 100644 --- a/gcc/gcc.c +++ b/gcc/gcc.c @@ -4751,10 +4751,9 @@ process_command (unsigned int decoded_options_count, } /* Ensure we only invoke each subprocess once. */ - if (print_subprocess_help || print_help_list || print_version) + if (n_infiles == 0 + && (print_subprocess_help || print_help_list || print_version)) { - n_infiles = 0; - /* Create a dummy input file, so that we can pass the help option on to the various sub-processes. */ add_infile ("help-dummy", "c"); diff --git a/gcc/opts-global.c b/gcc/opts-global.c index a5e9ef0..f110fe1 100644 --- a/gcc/opts-global.c +++ b/gcc/opts-global.c @@ -314,7 +314,7 @@ decode_options (struct gcc_options *opts, struct gcc_options *opts_set, loc, lang_mask, &handlers, dc); - finish_options (opts, opts_set, loc); + finish_options (opts, opts_set, loc, lang_mask); } /* Hold command-line options associated with stack limitation. */ diff --git a/gcc/opts.c b/gcc/opts.c index 926904c..286bb8f 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -855,12 +855,18 @@ control_options_for_live_patching (struct gcc_options *opts, } } +/* --help option argument if set. */ +const char *help_option_argument = NULL; + +static void print_help (struct gcc_options *opts, unsigned int lang_mask); + + /* After all options at LOC have been read into OPTS and OPTS_SET, finalize settings of those options and diagnose incompatible combinations. */ void finish_options (struct gcc_options *opts, struct gcc_options *opts_set, - location_t loc) + location_t loc, unsigned int lang_mask) { enum unwind_info_type ui_except; @@ -1224,6 +1230,10 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set, opts->x_flag_live_patching, loc); } + + /* Print --help=* if used. */ + if (help_option_argument != NULL) + print_help (opts, lang_mask); } #define LEFT_COLUMN 27 @@ -2054,6 +2064,135 @@ check_alignment_argument (location_t loc, const char *flag, const char *name) parse_and_check_align_values (flag, name, align_result, true, loc); } +/* Print help when OPT__help_ is set. */ + +static void +print_help (struct gcc_options *opts, unsigned int lang_mask) +{ + const char *a = help_option_argument; + unsigned int include_flags = 0; + /* Note - by default we include undocumented options when listing + specific classes. If you only want to see documented options + then add ",^undocumented" to the --help= option. E.g.: + + --help=target,^undocumented */ + unsigned int exclude_flags = 0; + + if (lang_mask == CL_DRIVER) + return; + + /* Walk along the argument string, parsing each word in turn. + The format is: + arg = [^]{word}[,{arg}] + word = {optimizers|target|warnings|undocumented| + params|common|} */ + while (*a != 0) + { + static const struct + { + const char *string; + unsigned int flag; + } + specifics[] = + { + { "optimizers", CL_OPTIMIZATION }, + { "target", CL_TARGET }, + { "warnings", CL_WARNING }, + { "undocumented", CL_UNDOCUMENTED }, + { "params", CL_PARAMS }, + { "joined", CL_JOINED }, + { "separate", CL_SEPARATE }, + { "common", CL_COMMON }, + { NULL, 0 } + }; + unsigned int *pflags; + const char *comma; + unsigned int lang_flag, specific_flag; + unsigned int len; + unsigned int i; + + if (*a == '^') + { + ++a; + if (*a == '\0') + { + error ("missing argument to %qs", "--help=^"); + break; + } + pflags = &exclude_flags; + } + else + pflags = &include_flags; + + comma = strchr (a, ','); + if (comma == NULL) + len = strlen (a); + else + len = comma - a; + if (len == 0) + { + a = comma + 1; + continue; + } + + /* Check to see if the string matches an option class name. */ + for (i = 0, specific_flag = 0; specifics[i].string != NULL; i++) + if (strncasecmp (a, specifics[i].string, len) == 0) + { + specific_flag = specifics[i].flag; + break; + } + + /* Check to see if the string matches a language name. + Note - we rely upon the alpha-sorted nature of the entries in + the lang_names array, specifically that shorter names appear + before their longer variants. (i.e. C before C++). That way + when we are attempting to match --help=c for example we will + match with C first and not C++. */ + for (i = 0, lang_flag = 0; i < cl_lang_count; i++) + if (strncasecmp (a, lang_names[i], len) == 0) + { + lang_flag = 1U << i; + break; + } + + if (specific_flag != 0) + { + if (lang_flag == 0) + *pflags |= specific_flag; + else + { + /* The option's argument matches both the start of a + language name and the start of an option class name. + We have a special case for when the user has + specified "--help=c", but otherwise we have to issue + a warning. */ + if (strncasecmp (a, "c", len) == 0) + *pflags |= lang_flag; + else + warning (0, + "--help argument %q.*s is ambiguous, " + "please be more specific", + len, a); + } + } + else if (lang_flag != 0) + *pflags |= lang_flag; + else + warning (0, + "unrecognized argument to --help= option: %q.*s", + len, a); + + if (comma == NULL) + break; + a = comma + 1; + } + + if (include_flags) + print_specific_help (include_flags, exclude_flags, 0, opts, + lang_mask); +} + /* Handle target- and language-independent options. Return zero to generate an "unknown option" message. Only options that need extra handling need to be listed here; if you simply want @@ -2121,131 +2260,7 @@ common_handle_option (struct gcc_options *opts, case OPT__help_: { - const char *a = arg; - unsigned int include_flags = 0; - /* Note - by default we include undocumented options when listing - specific classes. If you only want to see documented options - then add ",^undocumented" to the --help= option. E.g.: - - --help=target,^undocumented */ - unsigned int exclude_flags = 0; - - if (lang_mask == CL_DRIVER) - break; - - /* Walk along the argument string, parsing each word in turn. - The format is: - arg = [^]{word}[,{arg}] - word = {optimizers|target|warnings|undocumented| - params|common|} */ - while (*a != 0) - { - static const struct - { - const char *string; - unsigned int flag; - } - specifics[] = - { - { "optimizers", CL_OPTIMIZATION }, - { "target", CL_TARGET }, - { "warnings", CL_WARNING }, - { "undocumented", CL_UNDOCUMENTED }, - { "params", CL_PARAMS }, - { "joined", CL_JOINED }, - { "separate", CL_SEPARATE }, - { "common", CL_COMMON }, - { NULL, 0 } - }; - unsigned int *pflags; - const char *comma; - unsigned int lang_flag, specific_flag; - unsigned int len; - unsigned int i; - - if (*a == '^') - { - ++a; - if (*a == '\0') - { - error_at (loc, "missing argument to %qs", "--help=^"); - break; - } - pflags = &exclude_flags; - } - else - pflags = &include_flags; - - comma = strchr (a, ','); - if (comma == NULL) - len = strlen (a); - else - len = comma - a; - if (len == 0) - { - a = comma + 1; - continue; - } - - /* Check to see if the string matches an option class name. */ - for (i = 0, specific_flag = 0; specifics[i].string != NULL; i++) - if (strncasecmp (a, specifics[i].string, len) == 0) - { - specific_flag = specifics[i].flag; - break; - } - - /* Check to see if the string matches a language name. - Note - we rely upon the alpha-sorted nature of the entries in - the lang_names array, specifically that shorter names appear - before their longer variants. (i.e. C before C++). That way - when we are attempting to match --help=c for example we will - match with C first and not C++. */ - for (i = 0, lang_flag = 0; i < cl_lang_count; i++) - if (strncasecmp (a, lang_names[i], len) == 0) - { - lang_flag = 1U << i; - break; - } - - if (specific_flag != 0) - { - if (lang_flag == 0) - *pflags |= specific_flag; - else - { - /* The option's argument matches both the start of a - language name and the start of an option class name. - We have a special case for when the user has - specified "--help=c", but otherwise we have to issue - a warning. */ - if (strncasecmp (a, "c", len) == 0) - *pflags |= lang_flag; - else - warning_at (loc, 0, - "--help argument %q.*s is ambiguous, " - "please be more specific", - len, a); - } - } - else if (lang_flag != 0) - *pflags |= lang_flag; - else - warning_at (loc, 0, - "unrecognized argument to --help= option: %q.*s", - len, a); - - if (comma == NULL) - break; - a = comma + 1; - } - - if (include_flags) - { - target_option_override_hook (); - print_specific_help (include_flags, exclude_flags, 0, opts, - lang_mask); - } + help_option_argument = arg; opts->x_exit_after_options = true; break; } diff --git a/gcc/opts.h b/gcc/opts.h index f14d9bc..6e99ead 100644 --- a/gcc/opts.h +++ b/gcc/opts.h @@ -418,7 +418,8 @@ extern bool target_handle_option (struct gcc_options *opts, void (*target_option_override_hook) (void)); extern void finish_options (struct gcc_options *opts, struct gcc_options *opts_set, - location_t loc); + location_t loc, + unsigned int lang_mask); extern void default_options_optimization (struct gcc_options *opts, struct gcc_options *opts_set, struct cl_decoded_option *decoded_options, -- cgit v1.1 From cc2a672a60ff7476b3e4751ba41cb77c7fc85b09 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 2 May 2019 10:43:25 +0200 Subject: Enhance target and target_clone error messages. 2019-05-02 Martin Liska * cgraphclones.c: Call valid_attribute_p with 1 for target_clone. * config/i386/i386-c.c (ix86_pragma_target_parse): Use 0 as it's for target attribute. * config/i386/i386-protos.h (ix86_valid_target_attribute_tree): Add new boolean argument. * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Likewise. (ix86_valid_target_attribute_tree): Pass target_clone_attr to ix86_valid_target_attribute_inner_p. (ix86_valid_target_attribute_p): Pass flags argument to ix86_valid_target_attribute_inner_p. (get_builtin_code_for_version): Use 0 as it's target attribute. 2019-05-02 Martin Liska * gcc.target/i386/funcspec-4.c: Update scanned pattern. * g++.target/i386/pr57362.C: Likewise. From-SVN: r270789 --- gcc/ChangeLog | 16 +++++++++ gcc/cgraphclones.c | 2 +- gcc/config/i386/i386-c.c | 5 +-- gcc/config/i386/i386-protos.h | 4 +-- gcc/config/i386/i386.c | 56 ++++++++++++++++++------------ gcc/testsuite/ChangeLog | 5 +++ gcc/testsuite/gcc.target/i386/funcspec-4.c | 2 +- 7 files changed, 62 insertions(+), 28 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a6ce523..e99c6a1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,21 @@ 2019-05-02 Martin Liska + * cgraphclones.c: Call valid_attribute_p with 1 for + target_clone. + * config/i386/i386-c.c (ix86_pragma_target_parse): Use 0 as + it's for target attribute. + * config/i386/i386-protos.h (ix86_valid_target_attribute_tree): + Add new boolean argument. + * config/i386/i386.c (ix86_valid_target_attribute_inner_p): + Likewise. + (ix86_valid_target_attribute_tree): Pass target_clone_attr + to ix86_valid_target_attribute_inner_p. + (ix86_valid_target_attribute_p): Pass flags argument to + ix86_valid_target_attribute_inner_p. + (get_builtin_code_for_version): Use 0 as it's target attribute. + +2019-05-02 Martin Liska + * gcc.c (process_command): Add dummy file only if n_infiles == 0. * opts-global.c (decode_options): Pass lang_mask. diff --git a/gcc/cgraphclones.c b/gcc/cgraphclones.c index 15f7e11..fd867ec 100644 --- a/gcc/cgraphclones.c +++ b/gcc/cgraphclones.c @@ -1056,7 +1056,7 @@ cgraph_node::create_version_clone_with_body location_t saved_loc = input_location; tree v = TREE_VALUE (target_attributes); input_location = DECL_SOURCE_LOCATION (new_decl); - bool r = targetm.target_option.valid_attribute_p (new_decl, NULL, v, 0); + bool r = targetm.target_option.valid_attribute_p (new_decl, NULL, v, 1); input_location = saved_loc; if (!r) return NULL; diff --git a/gcc/config/i386/i386-c.c b/gcc/config/i386/i386-c.c index 5e7e46f..50cac3b 100644 --- a/gcc/config/i386/i386-c.c +++ b/gcc/config/i386/i386-c.c @@ -586,8 +586,9 @@ ix86_pragma_target_parse (tree args, tree pop_target) } else { - cur_tree = ix86_valid_target_attribute_tree (args, &global_options, - &global_options_set); + cur_tree = ix86_valid_target_attribute_tree (NULL_TREE, args, + &global_options, + &global_options_set, 0); if (!cur_tree || cur_tree == error_mark_node) { cl_target_option_restore (&global_options, diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h index f080ec3..597af64 100644 --- a/gcc/config/i386/i386-protos.h +++ b/gcc/config/i386/i386-protos.h @@ -215,9 +215,9 @@ extern unsigned int ix86_minimum_alignment (tree, machine_mode, extern tree ix86_handle_shared_attribute (tree *, tree, tree, int, bool *); extern tree ix86_handle_selectany_attribute (tree *, tree, tree, int, bool *); extern int x86_field_alignment (tree, int); -extern tree ix86_valid_target_attribute_tree (tree, +extern tree ix86_valid_target_attribute_tree (tree, tree, struct gcc_options *, - struct gcc_options *); + struct gcc_options *, bool); extern unsigned int ix86_get_callcvt (const_tree); #endif diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index e7ee83d..bc2348c 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -847,10 +847,11 @@ static void ix86_function_specific_post_stream_in (struct cl_target_option *); static void ix86_function_specific_print (FILE *, int, struct cl_target_option *); static bool ix86_valid_target_attribute_p (tree, tree, tree, int); -static bool ix86_valid_target_attribute_inner_p (tree, char *[], +static bool ix86_valid_target_attribute_inner_p (tree, tree, char *[], struct gcc_options *, struct gcc_options *, - struct gcc_options *); + struct gcc_options *, + bool); static bool ix86_can_inline_p (tree, tree); static void ix86_set_current_function (tree); static unsigned int ix86_minimum_incoming_stack_boundary (bool); @@ -5149,10 +5150,11 @@ ix86_function_specific_print (FILE *file, int indent, over the list. */ static bool -ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], +ix86_valid_target_attribute_inner_p (tree fndecl, tree args, char *p_strings[], struct gcc_options *opts, struct gcc_options *opts_set, - struct gcc_options *enum_opts_set) + struct gcc_options *enum_opts_set, + bool target_clone_attr) { char *next_optstr; bool ret = true; @@ -5296,9 +5298,12 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], IX86_ATTR_YES ("recip", OPT_mrecip, MASK_RECIP), - }; + location_t loc + = fndecl == NULL ? UNKNOWN_LOCATION : DECL_SOURCE_LOCATION (fndecl); + const char *attr_name = target_clone_attr ? "target_clone" : "target"; + /* If this is a list, recurse to get the options. */ if (TREE_CODE (args) == TREE_LIST) { @@ -5306,9 +5311,10 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], for (; args; args = TREE_CHAIN (args)) if (TREE_VALUE (args) - && !ix86_valid_target_attribute_inner_p (TREE_VALUE (args), + && !ix86_valid_target_attribute_inner_p (fndecl, TREE_VALUE (args), p_strings, opts, opts_set, - enum_opts_set)) + enum_opts_set, + target_clone_attr)) ret = false; return ret; @@ -5316,7 +5322,7 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], else if (TREE_CODE (args) != STRING_CST) { - error ("attribute % argument not a string"); + error_at (loc, "attribute %qs argument is not a string", attr_name); return false; } @@ -5328,7 +5334,6 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], char *p = next_optstr; char *orig_p = p; char *comma = strchr (next_optstr, ','); - const char *opt_string; size_t len, opt_len; int opt; bool opt_set_p; @@ -5374,7 +5379,6 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], { opt = attrs[i].opt; mask = attrs[i].mask; - opt_string = attrs[i].string; break; } } @@ -5382,7 +5386,8 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], /* Process the option. */ if (opt == N_OPTS) { - error ("attribute(target(\"%s\")) is unknown", orig_p); + error_at (loc, "attribute %qs argument %qs is unknown", + orig_p, attr_name); ret = false; } @@ -5410,7 +5415,8 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], { if (p_strings[opt]) { - error ("option(\"%s\") was already specified", opt_string); + error_at (loc, "attribute value %qs was already specified " + "in %qs attribute", orig_p, attr_name); ret = false; } else @@ -5429,7 +5435,8 @@ ix86_valid_target_attribute_inner_p (tree args, char *p_strings[], global_dc); else { - error ("attribute(target(\"%s\")) is unknown", orig_p); + error_at (loc, "attribute value %qs is unknown in %qs attribute", + orig_p, attr_name); ret = false; } } @@ -5453,9 +5460,10 @@ release_options_strings (char **option_strings) /* Return a TARGET_OPTION_NODE tree of the target options listed or NULL. */ tree -ix86_valid_target_attribute_tree (tree args, +ix86_valid_target_attribute_tree (tree fndecl, tree args, struct gcc_options *opts, - struct gcc_options *opts_set) + struct gcc_options *opts_set, + bool target_clone_attr) { const char *orig_arch_string = opts->x_ix86_arch_string; const char *orig_tune_string = opts->x_ix86_tune_string; @@ -5471,8 +5479,9 @@ ix86_valid_target_attribute_tree (tree args, memset (&enum_opts_set, 0, sizeof (enum_opts_set)); /* Process each of the options on the chain. */ - if (! ix86_valid_target_attribute_inner_p (args, option_strings, opts, - opts_set, &enum_opts_set)) + if (!ix86_valid_target_attribute_inner_p (fndecl, args, option_strings, opts, + opts_set, &enum_opts_set, + target_clone_attr)) return error_mark_node; /* If the changed options are different from the default, rerun @@ -5545,7 +5554,7 @@ static bool ix86_valid_target_attribute_p (tree fndecl, tree ARG_UNUSED (name), tree args, - int ARG_UNUSED (flags)) + int flags) { struct gcc_options func_options; tree new_target, new_optimize; @@ -5580,8 +5589,10 @@ ix86_valid_target_attribute_p (tree fndecl, cl_target_option_restore (&func_options, TREE_TARGET_OPTION (target_option_default_node)); - new_target = ix86_valid_target_attribute_tree (args, &func_options, - &global_options_set); + /* FLAGS == 1 is used for target_clones attribute. */ + new_target + = ix86_valid_target_attribute_tree (fndecl, args, &func_options, + &global_options_set, flags == 1); new_optimize = build_optimization_node (&func_options); @@ -32071,8 +32082,9 @@ get_builtin_code_for_version (tree decl, tree *predicate_list) if (strstr (attrs_str, "arch=") != NULL) { cl_target_option_save (&cur_target, &global_options); - target_node = ix86_valid_target_attribute_tree (attrs, &global_options, - &global_options_set); + target_node + = ix86_valid_target_attribute_tree (decl, attrs, &global_options, + &global_options_set, 0); gcc_assert (target_node); if (target_node == error_mark_node) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 30227ca..8519934 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2019-05-02 Martin Liska + * gcc.target/i386/funcspec-4.c: Update scanned pattern. + * g++.target/i386/pr57362.C: Likewise. + +2019-05-02 Martin Liska + PR target/88809 * gcc.target/i386/pr88809.c: New test. * gcc.target/i386/pr88809-2.c: New test. diff --git a/gcc/testsuite/gcc.target/i386/funcspec-4.c b/gcc/testsuite/gcc.target/i386/funcspec-4.c index 025b97d..e345acd 100644 --- a/gcc/testsuite/gcc.target/i386/funcspec-4.c +++ b/gcc/testsuite/gcc.target/i386/funcspec-4.c @@ -5,7 +5,7 @@ extern void error1 (void) __attribute__((__target__("fma400"))); /* { dg-error "unknown" } */ /* Multiple arch switches */ -extern void error2 (void) __attribute__((__target__("arch=core2,arch=k8"))); /* { dg-error "already specified" } */ +extern void error2 (void) __attribute__((__target__("arch=core2,arch=k8"))); /* { dg-error "attribute value 'arch=k8' was already specified in 'target' attribute" } */ /* Unknown tune target */ extern void error3 (void) __attribute__((__target__("tune=foobar"))); /* { dg-error "bad value" } */ -- cgit v1.1 From 9feeafd7f95ea9f7211908c137c60074b3a52da2 Mon Sep 17 00:00:00 2001 From: Alejandro Martinez Date: Thu, 2 May 2019 09:58:00 +0000 Subject: [Aarch64][SVE] Dot product support This patch does two things. For the general vectoriser, it adds support to perform fully masked reductions over expressions that don't support masking. This is achieved by using VEC_COND_EXPR where possible. At the moment this is implemented for DOT_PROD_EXPR only, but the framework is there to extend it to other expressions. Related to that, this patch adds support to vectorize dot product using SVE. It also uses the new functionality to ensure that the resulting loop is masked. Given this input code: uint32_t dotprod (uint8_t *restrict x, uint8_t *restrict y, int n) { uint32_t sum = 0; for (int i = 0; i < n; i++) { sum += x[i] * y[i]; } return sum; } The resulting SVE code is: 0000000000000000 : 0: 7100005f cmp w2, #0x0 4: 5400024d b.le 4c 8: d2800003 mov x3, #0x0 // #0 c: 93407c42 sxtw x2, w2 10: 2538c001 mov z1.b, #0 14: 25221fe0 whilelo p0.b, xzr, x2 18: 2538c003 mov z3.b, #0 1c: d503201f nop 20: a4034002 ld1b {z2.b}, p0/z, [x0, x3] 24: a4034020 ld1b {z0.b}, p0/z, [x1, x3] 28: 0430e3e3 incb x3 2c: 0523c000 sel z0.b, p0, z0.b, z3.b 30: 25221c60 whilelo p0.b, x3, x2 34: 44820401 udot z1.s, z0.b, z2.b 38: 54ffff41 b.ne 20 // b.any 3c: 2598e3e0 ptrue p0.s 40: 04812021 uaddv d1, p0, z1.s 44: 1e260020 fmov w0, s1 48: d65f03c0 ret 4c: 1e2703e1 fmov s1, wzr 50: 1e260020 fmov w0, s1 54: d65f03c0 ret Notice how udot is used inside a fully masked loop. I tested this patch in an aarch64 machine bootstrapping the compiler and running the checks. gcc/Changelog: 2019-05-02 Alejandro Martinez * config/aarch64/aarch64-sve.md (dot_prod): Taken from SVE ACLE branch. * config/aarch64/iterators.md: Copied Vetype_fourth, VSI2QI and vsi2qi from SVE ACLE branch. * tree-vect-loop.c (use_mask_by_cond_expr_p): New function to check if a VEC_COND_EXPR be inserted to emulate a conditional internal function. (build_vect_cond_expr): Emit the VEC_COND_EXPR. (vectorizable_reduction): Use the functions above to vectorize in a fully masked loop codes that don't have a conditional internal function. gcc/testsuite/Changelog: 2019-05-02 Alejandro Martinez * gcc.target/aarch64/sve/dot_1.c: New test for dot product. From-SVN: r270790 --- gcc/ChangeLog | 13 ++++++ gcc/config/aarch64/aarch64-sve.md | 16 ++++++++ gcc/config/aarch64/iterators.md | 9 +++- gcc/testsuite/ChangeLog | 4 ++ gcc/testsuite/gcc.target/aarch64/sve/dot_1.c | 39 ++++++++++++++++++ gcc/tree-vect-loop.c | 61 +++++++++++++++++++++++++++- 6 files changed, 139 insertions(+), 3 deletions(-) create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/dot_1.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e99c6a1..720627b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2019-05-02 Alejandro Martinez + + * config/aarch64/aarch64-sve.md (dot_prod): Taken from SVE + ACLE branch. + * config/aarch64/iterators.md: Copied Vetype_fourth, VSI2QI and vsi2qi from + SVE ACLE branch. + * tree-vect-loop.c (use_mask_by_cond_expr_p): New function to check if a + VEC_COND_EXPR be inserted to emulate a conditional internal function. + (build_vect_cond_expr): Emit the VEC_COND_EXPR. + (vectorizable_reduction): Use the functions above to vectorize in a + fully masked loop codes that don't have a conditional internal + function. + 2019-05-02 Martin Liska * cgraphclones.c: Call valid_attribute_p with 1 for diff --git a/gcc/config/aarch64/aarch64-sve.md b/gcc/config/aarch64/aarch64-sve.md index 3f39c4c..02d33b7 100644 --- a/gcc/config/aarch64/aarch64-sve.md +++ b/gcc/config/aarch64/aarch64-sve.md @@ -3132,3 +3132,19 @@ DONE; } ) + +;; Unpredicated DOT product. +(define_insn "dot_prod" + [(set (match_operand:SVE_SDI 0 "register_operand" "=w, ?&w") + (plus:SVE_SDI + (unspec:SVE_SDI + [(match_operand: 1 "register_operand" "w, w") + (match_operand: 2 "register_operand" "w, w")] + DOTPROD) + (match_operand:SVE_SDI 3 "register_operand" "0, w")))] + "TARGET_SVE" + "@ + dot\\t%0., %1., %2. + movprfx\t%0, %3\;dot\\t%0., %1., %2." + [(set_attr "movprfx" "*,yes")] +) diff --git a/gcc/config/aarch64/iterators.md b/gcc/config/aarch64/iterators.md index 6caeeac..b3b2d6e 100644 --- a/gcc/config/aarch64/iterators.md +++ b/gcc/config/aarch64/iterators.md @@ -663,6 +663,9 @@ (QI "b") (HI "h") (SI "s") (DI "d")]) +;; Like Vetype, but map to types that are a quarter of the element size. +(define_mode_attr Vetype_fourth [(VNx4SI "b") (VNx2DI "h")]) + ;; Equivalent of "size" for a vector element. (define_mode_attr Vesize [(VNx16QI "b") (VNx8HI "h") (VNx8HF "h") @@ -1029,8 +1032,10 @@ (V2SF "p") (V4SF "v") (V4HF "v") (V8HF "v")]) -(define_mode_attr vsi2qi [(V2SI "v8qi") (V4SI "v16qi")]) -(define_mode_attr VSI2QI [(V2SI "V8QI") (V4SI "V16QI")]) +(define_mode_attr vsi2qi [(V2SI "v8qi") (V4SI "v16qi") + (VNx4SI "vnx16qi") (VNx2DI "vnx8hi")]) +(define_mode_attr VSI2QI [(V2SI "V8QI") (V4SI "V16QI") + (VNx4SI "VNx16QI") (VNx2DI "VNx8HI")]) ;; Register suffix for DOTPROD input types from the return type. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8519934..37edbea 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-05-02 Alejandro Martinez + + * gcc.target/aarch64/sve/dot_1.c: New test for dot product. + 2019-05-02 Martin Liska * gcc.target/i386/funcspec-4.c: Update scanned pattern. diff --git a/gcc/testsuite/gcc.target/aarch64/sve/dot_1.c b/gcc/testsuite/gcc.target/aarch64/sve/dot_1.c new file mode 100644 index 0000000..8ff6671 --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/sve/dot_1.c @@ -0,0 +1,39 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -ftree-vectorize" } */ + +#include + +#define DEF_DOT(TYPE1, TYPE2) \ +TYPE1 __attribute__ ((noinline, noclone)) \ +dot_##TYPE1##_##TYPE2 (TYPE2 *restrict x, TYPE2 *restrict y, int n) \ +{ \ + TYPE1 sum = 0; \ + for (int i = 0; i < n; i++) \ + { \ + sum += x[i] * y[i]; \ + } \ + return sum; \ +} + +DEF_DOT(uint32_t, uint8_t) +DEF_DOT(int32_t, int8_t) +DEF_DOT(int64_t, int16_t) + +/* The uint16_t->uint64_t dot product requires a casting to satisfy the C + language rules. */ +uint64_t __attribute__ ((noinline, noclone)) +dot_uint64_t_uint16_t (uint16_t *restrict x, uint16_t *restrict y, int n) +{ + uint64_t sum = 0; + for (int i = 0; i < n; i++) + { + sum += (unsigned int)x[i] * y[i]; + } + return sum; +} + +/* { dg-final { scan-assembler-times {\tudot\tz[0-9]+\.s, z[0-9]+\.b, z[0-9]+\.b\n} 1 } } */ +/* { dg-final { scan-assembler-times {\tsdot\tz[0-9]+\.s, z[0-9]+\.b, z[0-9]+\.b\n} 1 } } */ +/* { dg-final { scan-assembler-times {\tudot\tz[0-9]+\.d, z[0-9]+\.h, z[0-9]+\.h\n} 1 } } */ +/* { dg-final { scan-assembler-times {\tsdot\tz[0-9]+\.d, z[0-9]+\.h, z[0-9]+\.h\n} 1 } } */ +/* { dg-final { scan-assembler-times {\twhilelo\t} 8 } } */ diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c index 0edcdc7..493c1ab 100644 --- a/gcc/tree-vect-loop.c +++ b/gcc/tree-vect-loop.c @@ -5958,6 +5958,55 @@ is_nonwrapping_integer_induction (stmt_vec_info stmt_vinfo, struct loop *loop) <= TYPE_PRECISION (lhs_type)); } +/* Check if masking can be supported by inserting a conditional expression. + CODE is the code for the operation. COND_FN is the conditional internal + function, if it exists. VECTYPE_IN is the type of the vector input. */ +static bool +use_mask_by_cond_expr_p (enum tree_code code, internal_fn cond_fn, + tree vectype_in) +{ + if (cond_fn != IFN_LAST + && direct_internal_fn_supported_p (cond_fn, vectype_in, + OPTIMIZE_FOR_SPEED)) + return false; + + switch (code) + { + case DOT_PROD_EXPR: + return true; + + default: + return false; + } +} + +/* Insert a conditional expression to enable masked vectorization. CODE is the + code for the operation. VOP is the array of operands. MASK is the loop + mask. GSI is a statement iterator used to place the new conditional + expression. */ +static void +build_vect_cond_expr (enum tree_code code, tree vop[3], tree mask, + gimple_stmt_iterator *gsi) +{ + switch (code) + { + case DOT_PROD_EXPR: + { + tree vectype = TREE_TYPE (vop[1]); + tree zero = build_zero_cst (vectype); + tree masked_op1 = make_temp_ssa_name (vectype, NULL, "masked_op1"); + gassign *select = gimple_build_assign (masked_op1, VEC_COND_EXPR, + mask, vop[1], zero); + gsi_insert_before (gsi, select, GSI_SAME_STMT); + vop[1] = masked_op1; + break; + } + + default: + gcc_unreachable (); + } +} + /* Function vectorizable_reduction. Check if STMT_INFO performs a reduction operation that can be vectorized. @@ -6931,6 +6980,7 @@ vectorizable_reduction (stmt_vec_info stmt_info, gimple_stmt_iterator *gsi, internal_fn cond_fn = get_conditional_internal_fn (code); vec_loop_masks *masks = &LOOP_VINFO_MASKS (loop_vinfo); + bool mask_by_cond_expr = use_mask_by_cond_expr_p (code, cond_fn, vectype_in); if (!vec_stmt) /* transformation not required. */ { @@ -6938,6 +6988,7 @@ vectorizable_reduction (stmt_vec_info stmt_info, gimple_stmt_iterator *gsi, if (loop_vinfo && LOOP_VINFO_CAN_FULLY_MASK_P (loop_vinfo)) { if (reduction_type != FOLD_LEFT_REDUCTION + && !mask_by_cond_expr && (cond_fn == IFN_LAST || !direct_internal_fn_supported_p (cond_fn, vectype_in, OPTIMIZE_FOR_SPEED))) @@ -7101,7 +7152,7 @@ vectorizable_reduction (stmt_vec_info stmt_info, gimple_stmt_iterator *gsi, FOR_EACH_VEC_ELT (vec_oprnds0, i, def0) { tree vop[3] = { def0, vec_oprnds1[i], NULL_TREE }; - if (masked_loop_p) + if (masked_loop_p && !mask_by_cond_expr) { /* Make sure that the reduction accumulator is vop[0]. */ if (reduc_index == 1) @@ -7125,6 +7176,14 @@ vectorizable_reduction (stmt_vec_info stmt_info, gimple_stmt_iterator *gsi, if (op_type == ternary_op) vop[2] = vec_oprnds2[i]; + if (masked_loop_p && mask_by_cond_expr) + { + tree mask = vect_get_loop_mask (gsi, masks, + vec_num * ncopies, + vectype_in, i * ncopies + j); + build_vect_cond_expr (code, vop, mask, gsi); + } + gassign *new_stmt = gimple_build_assign (vec_dest, code, vop[0], vop[1], vop[2]); new_temp = make_ssa_name (vec_dest, new_stmt); -- cgit v1.1 From c27998546ac2291ceffbf1f998f6e46e6b8ad6eb Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 2 May 2019 11:17:00 +0000 Subject: re PR tree-optimization/90273 (GCC runs out of memory building Firefox) 2019-05-02 Richard Biener PR tree-optimization/90273 * tree-ssa-dce.c (eliminate_unnecessary_stmts): Eliminate useless debug stmts. From-SVN: r270791 --- gcc/ChangeLog | 6 ++++++ gcc/tree-ssa-dce.c | 19 ++++++++++++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 720627b..1f55cd1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-05-02 Richard Biener + + PR tree-optimization/90273 + * tree-ssa-dce.c (eliminate_unnecessary_stmts): Eliminate + useless debug stmts. + 2019-05-02 Alejandro Martinez * config/aarch64/aarch64-sve.md (dot_prod): Taken from SVE diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c index c0e1227..4853f0bd 100644 --- a/gcc/tree-ssa-dce.c +++ b/gcc/tree-ssa-dce.c @@ -1237,6 +1237,7 @@ eliminate_unnecessary_stmts (void) bb = h.pop (); /* Remove dead statements. */ + auto_bitmap debug_seen; for (gsi = gsi_last_bb (bb); !gsi_end_p (gsi); gsi = psi) { stmt = gsi_stmt (gsi); @@ -1282,11 +1283,15 @@ eliminate_unnecessary_stmts (void) } } if (!dead) - continue; + { + bitmap_clear (debug_seen); + continue; + } } if (!is_gimple_debug (stmt)) something_changed = true; remove_dead_stmt (&gsi, bb, to_remove_edges); + continue; } else if (is_gimple_call (stmt)) { @@ -1352,6 +1357,18 @@ eliminate_unnecessary_stmts (void) break; } } + else if (gimple_debug_bind_p (stmt)) + { + /* We are only keeping the last debug-bind of a + non-DEBUG_EXPR_DECL variable in a series of + debug-bind stmts. */ + tree var = gimple_debug_bind_get_var (stmt); + if (TREE_CODE (var) != DEBUG_EXPR_DECL + && !bitmap_set_bit (debug_seen, DECL_UID (var))) + remove_dead_stmt (&gsi, bb, to_remove_edges); + continue; + } + bitmap_clear (debug_seen); } /* Remove dead PHI nodes. */ -- cgit v1.1 From c2aa34b5a968a2d92b294a7216c8dac656d3d265 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Thu, 2 May 2019 12:42:32 +0000 Subject: [C++ PATCH] remove unreachable code https://gcc.gnu.org/ml/gcc-patches/2019-05/msg00039.html * semantics.c (finish_id_expression_1): Remove unreachable code. From-SVN: r270792 --- gcc/cp/ChangeLog | 4 ++++ gcc/cp/semantics.c | 10 +++------- 2 files changed, 7 insertions(+), 7 deletions(-) (limited to 'gcc') diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 3213b4a..129a00a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2019-05-02 Nathan Sidwell + + * semantics.c (finish_id_expression_1): Remove unreachable code. + 2019-05-01 Nathan Sidwell * name-lookup.h (get_class_binding_direct): Change final arg to diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index c919365..93bd8fb 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -3740,17 +3740,13 @@ finish_id_expression_1 (tree id_expression, wrong, so just return the identifier. */ return id_expression; - if (TREE_CODE (decl) == NAMESPACE_DECL) - { - error ("use of namespace %qD as expression", decl); - return error_mark_node; - } - else if (DECL_CLASS_TEMPLATE_P (decl)) + if (DECL_CLASS_TEMPLATE_P (decl)) { error ("use of class template %qT as expression", decl); return error_mark_node; } - else if (TREE_CODE (decl) == TREE_LIST) + + if (TREE_CODE (decl) == TREE_LIST) { /* Ambiguous reference to base members. */ error ("request for member %qD is ambiguous in " -- cgit v1.1 From eca1a60b62ffcbe16b7888a35b53ef60a9de942f Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Thu, 2 May 2019 13:31:04 +0000 Subject: Restrict gcc.target/i386/spellcheck-options-5.c to Linux targets * gcc.target/i386/spellcheck-options-5.c: Restrict to Linux and GNU targets. From-SVN: r270795 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/i386/spellcheck-options-5.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 37edbea..26de084 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-05-02 Rainer Orth + + * gcc.target/i386/spellcheck-options-5.c: Restrict to Linux and + GNU targets. + 2019-05-02 Alejandro Martinez * gcc.target/aarch64/sve/dot_1.c: New test for dot product. diff --git a/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c b/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c index 4a878ba..61946f6 100644 --- a/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c +++ b/gcc/testsuite/gcc.target/i386/spellcheck-options-5.c @@ -1,5 +1,5 @@ /* PR middle-end/90258. */ -/* { dg-do compile } */ +/* { dg-do compile { target *-*-linux* *-*-gnu* } } */ /* { dg-options "-mandroidX" } */ /* { dg-error "unrecognized command line option '-mandroidX'; did you mean '-mandroid'" "" { target *-*-* } 0 } */ -- cgit v1.1 From 0b768862698e68d8f1fa34fce1473330742a04ea Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Thu, 2 May 2019 13:44:17 +0000 Subject: darwin - fix a failing test An inflexible regex caused these tests to regress. 2019-05-02 Iain Sandoe * gcc.dg/tree-prof/section-attr-1.c: Update scan-asm regex for cold section label. * gcc.dg/tree-prof/section-attr-2.c: Likewise. * gcc.dg/tree-prof/section-attr-3.c: Likewise. From-SVN: r270797 --- gcc/testsuite/ChangeLog | 7 +++++++ gcc/testsuite/gcc.dg/tree-prof/section-attr-1.c | 2 +- gcc/testsuite/gcc.dg/tree-prof/section-attr-2.c | 2 +- gcc/testsuite/gcc.dg/tree-prof/section-attr-3.c | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 26de084..4022894 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2019-05-02 Iain Sandoe + + * gcc.dg/tree-prof/section-attr-1.c: Update scan-asm regex + for cold section label. + * gcc.dg/tree-prof/section-attr-2.c: Likewise. + * gcc.dg/tree-prof/section-attr-3.c: Likewise. + 2019-05-02 Rainer Orth * gcc.target/i386/spellcheck-options-5.c: Restrict to Linux and diff --git a/gcc/testsuite/gcc.dg/tree-prof/section-attr-1.c b/gcc/testsuite/gcc.dg/tree-prof/section-attr-1.c index 0cbd2de..89ecc1c 100644 --- a/gcc/testsuite/gcc.dg/tree-prof/section-attr-1.c +++ b/gcc/testsuite/gcc.dg/tree-prof/section-attr-1.c @@ -47,4 +47,4 @@ foo (int path) } /* { dg-final-use { scan-assembler "\.section\[\t \]*\.text\.unlikely\[\\n\\r\]+\[\t \]*\.size\[\t \]*foo\.cold" { target *-*-linux* *-*-gnu* } } } */ -/* { dg-final-use { scan-assembler "\.section\[\t \]*__TEXT,__text_cold\*\[\\n\\r\]+_foo\.cold" { target *-*-darwin* } } } */ +/* { dg-final-use { scan-assembler {.section[\t ]*__TEXT,__text_cold[^\n]*[\n\r]+_foo.cold:} { target *-*-darwin* } } } */ diff --git a/gcc/testsuite/gcc.dg/tree-prof/section-attr-2.c b/gcc/testsuite/gcc.dg/tree-prof/section-attr-2.c index 75a4d8a..b856457 100644 --- a/gcc/testsuite/gcc.dg/tree-prof/section-attr-2.c +++ b/gcc/testsuite/gcc.dg/tree-prof/section-attr-2.c @@ -46,4 +46,4 @@ foo (int path) } /* { dg-final-use { scan-assembler "\.section\[\t \]*\.text\.unlikely\[\\n\\r\]+\[\t \]*\.size\[\t \]*foo\.cold" { target *-*-linux* *-*-gnu* } } } */ -/* { dg-final-use { scan-assembler "\.section\[\t \]*__TEXT,__text_cold\*\[\\n\\r\]+_foo\.cold:" { target *-*-darwin* } } } */ +/* { dg-final-use { scan-assembler {.section[\t ]*__TEXT,__text_cold[^\n]*[\n\r]+_foo.cold:} { target *-*-darwin* } } } */ diff --git a/gcc/testsuite/gcc.dg/tree-prof/section-attr-3.c b/gcc/testsuite/gcc.dg/tree-prof/section-attr-3.c index c243b18..8d85cf3 100644 --- a/gcc/testsuite/gcc.dg/tree-prof/section-attr-3.c +++ b/gcc/testsuite/gcc.dg/tree-prof/section-attr-3.c @@ -47,4 +47,4 @@ foo (int path) } /* { dg-final-use { scan-assembler "\.section\[\t \]*\.text\.unlikely\[\\n\\r\]+\[\t \]*\.size\[\t \]*foo\.cold" { target *-*-linux* *-*-gnu* } } } */ -/* { dg-final-use { scan-assembler "\.section\[\t \]*__TEXT,__text_cold\*\[\\n\\r\]+_foo\.cold:" { target *-*-darwin* } } } */ +/* { dg-final-use { scan-assembler {.section[\t ]*__TEXT,__text_cold[^\n]*[\n\r]+_foo.cold:} { target *-*-darwin* } } } */ -- cgit v1.1 From 420ee75d7dbdba35878d7feabea7d30d77b82943 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 2 May 2019 14:05:27 +0000 Subject: re PR tree-optimization/89509 (restrict doesnt work with subfield accesses) 2019-05-02 Richard Biener PR tree-optimization/89509 * tree-ssa-structalias.c (compute_dependence_clique): Look at the first subvar when determining whether it is restrict. * gcc.dg/torture/restrict-8.c: New testcase. From-SVN: r270799 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/torture/restrict-8.c | 17 +++++++++++++++++ gcc/tree-ssa-structalias.c | 5 ++++- 4 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/torture/restrict-8.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1f55cd1..f4f0c14 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2019-05-02 Richard Biener + PR tree-optimization/89509 + * tree-ssa-structalias.c (compute_dependence_clique): Look + at the first subvar when determining whether it is restrict. + +2019-05-02 Richard Biener + PR tree-optimization/90273 * tree-ssa-dce.c (eliminate_unnecessary_stmts): Eliminate useless debug stmts. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4022894..3976e36 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-05-02 Richard Biener + + PR tree-optimization/89509 + * gcc.dg/torture/restrict-8.c: New testcase. + 2019-05-02 Iain Sandoe * gcc.dg/tree-prof/section-attr-1.c: Update scan-asm regex diff --git a/gcc/testsuite/gcc.dg/torture/restrict-8.c b/gcc/testsuite/gcc.dg/torture/restrict-8.c new file mode 100644 index 0000000..0118de0 --- /dev/null +++ b/gcc/testsuite/gcc.dg/torture/restrict-8.c @@ -0,0 +1,17 @@ +/* { dg-do compile } */ +/* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ +/* { dg-options "-fdump-tree-fre1" } */ + +struct S { int i; void *p; int j; }; +int +foo (struct S * __restrict p, int *q, int flag) +{ + int *x = &p->j; + if (flag) + x = &p->i; + *q = 1; + *x = 2; + return *q; +} + +/* { dg-final { scan-tree-dump "return 1;" "fre1" } } */ diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c index 4a0b02e..2e2b0e8 100644 --- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -7588,9 +7588,12 @@ compute_dependence_clique (void) EXECUTE_IF_SET_IN_BITMAP (vi->solution, 0, j, bi) { varinfo_t oi = get_varinfo (j); + if (oi->head != j) + oi = get_varinfo (oi->head); if (oi->is_restrict_var) { - if (restrict_var) + if (restrict_var + && restrict_var != oi) { if (dump_file && (dump_flags & TDF_DETAILS)) { -- cgit v1.1 From 8964432ad6f17cef74aa97c367d2975ba9458f92 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 2 May 2019 14:08:08 +0000 Subject: re PR tree-optimization/89653 (Missing vectorization of loop containing std::min/std::max and temporary) 2019-05-02 Richard Biener PR tree-optimization/89653 * tree-ssa-loop.c (pass_data_tree_loop_init): Execute update-address-taken before the pass. * passes.def (pass_tree_loop_init): Put comment before it. * g++.dg/vect/pr89653.cc: New testcase. From-SVN: r270800 --- gcc/ChangeLog | 7 +++++++ gcc/passes.def | 2 ++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/vect/pr89653.cc | 12 ++++++++++++ gcc/tree-ssa-loop.c | 2 +- 5 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/g++.dg/vect/pr89653.cc (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f4f0c14..9149eaa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2019-05-02 Richard Biener + PR tree-optimization/89653 + * tree-ssa-loop.c (pass_data_tree_loop_init): Execute + update-address-taken before the pass. + * passes.def (pass_tree_loop_init): Put comment before it. + +2019-05-02 Richard Biener + PR tree-optimization/89509 * tree-ssa-structalias.c (compute_dependence_clique): Look at the first subvar when determining whether it is restrict. diff --git a/gcc/passes.def b/gcc/passes.def index 99640d5..ad2efab 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -255,6 +255,8 @@ along with GCC; see the file COPYING3. If not see NEXT_PASS (pass_fix_loops); NEXT_PASS (pass_tree_loop); PUSH_INSERT_PASSES_WITHIN (pass_tree_loop) + /* Before loop_init we rewrite no longer addressed locals into SSA + form if possible. */ NEXT_PASS (pass_tree_loop_init); NEXT_PASS (pass_tree_unswitch); NEXT_PASS (pass_scev_cprop); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3976e36..bf32f0e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2019-05-02 Richard Biener + PR tree-optimization/89653 + * g++.dg/vect/pr89653.cc: New testcase. + +2019-05-02 Richard Biener + PR tree-optimization/89509 * gcc.dg/torture/restrict-8.c: New testcase. diff --git a/gcc/testsuite/g++.dg/vect/pr89653.cc b/gcc/testsuite/g++.dg/vect/pr89653.cc new file mode 100644 index 0000000..d38b49a --- /dev/null +++ b/gcc/testsuite/g++.dg/vect/pr89653.cc @@ -0,0 +1,12 @@ +// { dg-do compile } +// { dg-require-effective-target vect_double } + +#include + +void loop1(double * const __restrict__ vec, double x, int end) +{ + for (int i = 0; i < end; ++i) + vec[i] = std::min(vec[i], vec[i]/x); +} + +// { dg-final { scan-tree-dump "vectorized 1 loops" "vect" } } diff --git a/gcc/tree-ssa-loop.c b/gcc/tree-ssa-loop.c index 00a0950..1ac6cee 100644 --- a/gcc/tree-ssa-loop.c +++ b/gcc/tree-ssa-loop.c @@ -330,7 +330,7 @@ const pass_data pass_data_tree_loop_init = PROP_cfg, /* properties_required */ 0, /* properties_provided */ 0, /* properties_destroyed */ - 0, /* todo_flags_start */ + TODO_update_address_taken, /* todo_flags_start */ 0, /* todo_flags_finish */ }; -- cgit v1.1 From fb2c78f8aa4d14cc8d5e2ddda4d50d24ddc1dba0 Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Thu, 2 May 2019 14:55:21 +0000 Subject: darwin, testsuite, fix a failing test. The istantiate2.C test has started to fail since Darwin's impl. of this part of the ABI was fixed. It now emits the same output as other platforms (and clang). 2019-05-02 Iain Sandoe * g++.dg/ext/instantiate2.C: Remove special-caseing for Darwin. From-SVN: r270801 --- gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/g++.dg/ext/instantiate2.C | 3 +-- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index bf32f0e..ad12005 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-05-02 Iain Sandoe + + * g++.dg/ext/instantiate2.C: Remove special-casing for Darwin. + 2019-05-02 Richard Biener PR tree-optimization/89653 diff --git a/gcc/testsuite/g++.dg/ext/instantiate2.C b/gcc/testsuite/g++.dg/ext/instantiate2.C index a629289..97ef45c 100644 --- a/gcc/testsuite/g++.dg/ext/instantiate2.C +++ b/gcc/testsuite/g++.dg/ext/instantiate2.C @@ -8,8 +8,7 @@ template struct A { template T A::t = 0; static template struct A; -// { dg-final { scan-assembler "\n_?_ZN1AIiE1tE(:|\n|\t)" { target { ! *-*-darwin* } } } } -// { dg-final { scan-assembler ".zerofill __DATA,__pu_bss2,__ZN1AIiE1tE" { target *-*-darwin* } } } +// { dg-final { scan-assembler "\n_?_ZN1AIiE1tE(:|\n|\t)" } } void test_int() { A::t = 42; } // { dg-final { scan-assembler-not "\n_?_ZN1AIcE1tE(:|\n|\t)" } } -- cgit v1.1 From f58bd252753e1c2458dc009a71726fca772643a8 Mon Sep 17 00:00:00 2001 From: Segher Boessenkool Date: Thu, 2 May 2019 20:45:22 +0200 Subject: rs6000: Debug regnums for TM registers Since GCC 8, we have output incorrect numbers for the transactional memory registers. Also, we didn't output the correct DWARF register numbers for those. The number for sprN is 100+N. This fixes both these issues. * config/rs6000/rs6000.c (rs6000_dbx_register_number): Return the correct numbers for TFHAR, TFIAR, TEXASR. From-SVN: r270819 --- gcc/ChangeLog | 5 +++++ gcc/config/rs6000/rs6000.c | 22 +++++++++++++++++++--- 2 files changed, 24 insertions(+), 3 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9149eaa..88d8364 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-05-02 Segher Boessenkool + + * config/rs6000/rs6000.c (rs6000_dbx_register_number): Return the + correct numbers for TFHAR, TFIAR, TEXASR. + 2019-05-02 Richard Biener PR tree-optimization/89653 diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index f0de18d..f8e9fd2 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -36269,10 +36269,20 @@ rs6000_init_dwarf_reg_sizes_extra (tree address) unsigned int rs6000_dbx_register_number (unsigned int regno, unsigned int format) { - /* Except for the above, we use the internal number for non-DWARF - debug information, and also for .eh_frame. */ + /* We use the GCC 7 (and before) internal number for non-DWARF debug + information, and also for .eh_frame. */ if ((format == 0 && write_symbols != DWARF2_DEBUG) || format == 2) - return regno; + { + /* Translate the regnos to their numbers in GCC 7 (and before). */ + if (regno == TFHAR_REGNO) + regno = 114; + else if (regno == TFIAR_REGNO) + regno = 115; + else if (regno == TEXASR_REGNO) + regno = 116; + + return regno; + } /* On some platforms, we use the standard DWARF register numbering for .debug_info and .debug_frame. */ @@ -36299,6 +36309,12 @@ rs6000_dbx_register_number (unsigned int regno, unsigned int format) return 356; if (regno == VSCR_REGNO) return 67; + if (regno == TFHAR_REGNO) + return 228; + if (regno == TFIAR_REGNO) + return 229; + if (regno == TEXASR_REGNO) + return 230; #endif return regno; } -- cgit v1.1 From fc9613c640c28ca85ea988f6890d13cb4d912e11 Mon Sep 17 00:00:00 2001 From: Segher Boessenkool Date: Thu, 2 May 2019 20:46:38 +0200 Subject: rs6000: Make debug regnums independent of internal ones Where we use "internal GCC register numbers" in debug info, that defines an ABI, so we cannot change those numbers. But we want to change the internal numbers, and sometimes we do that without remembering this gotcha anyway; so let's make everything independent of the internal numbers. For those registers that are not recognised here (we still have MQ for example, but also the GCC-internal frame pointer and arg pointer registers), this just returns the internal register number. This is a bit worrying: that number could be the same as that for a register we validly want to have in debug info. I first had a gcc_unreachable () for that, but this does now work because dwarf2cfi calls rs6000_dbx_register_number for every internal register. Then I just returned 0 for the internal regs, but that causes various regression tests to fail. So now I return the internal register number again, as it was before; but this needs to be fixed. * config/rs6000/rs6000.c (rs6000_dbx_register_number): Do not use the internal register number, for any "real" register. From-SVN: r270820 --- gcc/ChangeLog | 5 +++ gcc/config/rs6000/rs6000.c | 85 +++++++++++++++++++++++++++++----------------- 2 files changed, 58 insertions(+), 32 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 88d8364..5342864 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2019-05-02 Segher Boessenkool + * config/rs6000/rs6000.c (rs6000_dbx_register_number): Do not use + the internal register number, for any "real" register. + +2019-05-02 Segher Boessenkool + * config/rs6000/rs6000.c (rs6000_dbx_register_number): Return the correct numbers for TFHAR, TFIAR, TEXASR. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index f8e9fd2..c75fd86 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -36269,53 +36269,74 @@ rs6000_init_dwarf_reg_sizes_extra (tree address) unsigned int rs6000_dbx_register_number (unsigned int regno, unsigned int format) { - /* We use the GCC 7 (and before) internal number for non-DWARF debug - information, and also for .eh_frame. */ - if ((format == 0 && write_symbols != DWARF2_DEBUG) || format == 2) + /* On some platforms, we use the standard DWARF register + numbering for .debug_info and .debug_frame. */ + if ((format == 0 && write_symbols == DWARF2_DEBUG) || format == 1) { - /* Translate the regnos to their numbers in GCC 7 (and before). */ +#ifdef RS6000_USE_DWARF_NUMBERING + if (regno <= 31) + return regno; + if (FP_REGNO_P (regno)) + return regno - FIRST_FPR_REGNO + 32; + if (ALTIVEC_REGNO_P (regno)) + return regno - FIRST_ALTIVEC_REGNO + 1124; + if (regno == LR_REGNO) + return 108; + if (regno == CTR_REGNO) + return 109; + if (regno == CA_REGNO) + return 101; /* XER */ + /* Special handling for CR for .debug_frame: rs6000_emit_prologue has + translated any combination of CR2, CR3, CR4 saves to a save of CR2. + The actual code emitted saves the whole of CR, so we map CR2_REGNO + to the DWARF reg for CR. */ + if (format == 1 && regno == CR2_REGNO) + return 64; + if (CR_REGNO_P (regno)) + return regno - CR0_REGNO + 86; + if (regno == VRSAVE_REGNO) + return 356; + if (regno == VSCR_REGNO) + return 67; if (regno == TFHAR_REGNO) - regno = 114; - else if (regno == TFIAR_REGNO) - regno = 115; - else if (regno == TEXASR_REGNO) - regno = 116; + return 228; + if (regno == TFIAR_REGNO) + return 229; + if (regno == TEXASR_REGNO) + return 230; return regno; +#endif } - /* On some platforms, we use the standard DWARF register - numbering for .debug_info and .debug_frame. */ -#ifdef RS6000_USE_DWARF_NUMBERING - if (regno <= 63) + /* We use the GCC 7 (and before) internal number for non-DWARF debug + information, and also for .eh_frame. */ + /* Translate the regnos to their numbers in GCC 7 (and before). */ + if (regno <= 31) return regno; + if (FP_REGNO_P (regno)) + return regno - FIRST_FPR_REGNO + 32; + if (ALTIVEC_REGNO_P (regno)) + return regno - FIRST_ALTIVEC_REGNO + 77; if (regno == LR_REGNO) - return 108; + return 65; if (regno == CTR_REGNO) - return 109; - /* Special handling for CR for .debug_frame: rs6000_emit_prologue has - translated any combination of CR2, CR3, CR4 saves to a save of CR2. - The actual code emitted saves the whole of CR, so we map CR2_REGNO - to the DWARF reg for CR. */ - if (format == 1 && regno == CR2_REGNO) - return 64; - if (CR_REGNO_P (regno)) - return regno - CR0_REGNO + 86; + return 66; if (regno == CA_REGNO) - return 101; /* XER */ - if (ALTIVEC_REGNO_P (regno)) - return regno - FIRST_ALTIVEC_REGNO + 1124; + return 76; /* XER */ + if (CR_REGNO_P (regno)) + return regno - CR0_REGNO + 68; if (regno == VRSAVE_REGNO) - return 356; + return 109; if (regno == VSCR_REGNO) - return 67; + return 110; if (regno == TFHAR_REGNO) - return 228; + return 114; if (regno == TFIAR_REGNO) - return 229; + return 115; if (regno == TEXASR_REGNO) - return 230; -#endif + return 116; + return regno; } -- cgit v1.1 From c4cb56a154dadb4e6357dedd5f1d3e523c858e77 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 2 May 2019 21:30:14 +0100 Subject: * gcc.pot: Regenerate. From-SVN: r270822 --- gcc/po/ChangeLog | 4 + gcc/po/gcc.pot | 2132 +++++++++++++++++++++++++++--------------------------- 2 files changed, 1088 insertions(+), 1048 deletions(-) (limited to 'gcc') diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index 4e5f927..351a8d6 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2019-05-02 Joseph Myers + + * gcc.pot: Regenerate. + 2019-04-30 Joseph Myers * de.po: Update. diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot index 68d8a59..71c28ee 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: 2019-04-29 22:22+0000\n" +"POT-Creation-Date: 2019-05-02 20:26+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -194,12 +194,12 @@ msgstr "" #. PRINT_OPERAND must handle them. #. We can't handle floating point constants; #. TARGET_PRINT_OPERAND must handle them. -#: final.c:4149 config/arc/arc.c:6158 config/i386/i386.c:16998 +#: final.c:4149 config/arc/arc.c:6158 config/i386/i386.c:17009 #, c-format msgid "floating constant misused" msgstr "" -#: final.c:4207 config/arc/arc.c:6255 config/i386/i386.c:17089 +#: final.c:4207 config/arc/arc.c:6255 config/i386/i386.c:17100 #: config/pdp11/pdp11.c:1874 #, c-format msgid "invalid expression as operand" @@ -500,88 +500,88 @@ msgid "" " other options on to these processes the -W options must be used.\n" msgstr "" -#: gcc.c:6029 +#: gcc.c:6028 #, c-format msgid "Processing spec (%s), which is '%s'\n" msgstr "" -#: gcc.c:6778 +#: gcc.c:6777 #, c-format msgid "Target: %s\n" msgstr "" -#: gcc.c:6779 +#: gcc.c:6778 #, c-format msgid "Configured with: %s\n" msgstr "" -#: gcc.c:6793 +#: gcc.c:6792 #, c-format msgid "Thread model: %s\n" msgstr "" -#: gcc.c:6804 +#: gcc.c:6803 #, c-format msgid "gcc version %s %s\n" msgstr "" -#: gcc.c:6807 +#: gcc.c:6806 #, c-format msgid "gcc driver version %s %sexecuting gcc version %s\n" msgstr "" -#: gcc.c:6880 gcc.c:7090 +#: gcc.c:6879 gcc.c:7089 #, c-format msgid "" "The bug is not reproducible, so it is likely a hardware or OS problem.\n" msgstr "" -#: gcc.c:7014 +#: gcc.c:7013 #, c-format msgid "" "Preprocessed source stored into %s file, please attach this to your " "bugreport.\n" msgstr "" -#: gcc.c:7864 +#: gcc.c:7863 #, c-format msgid "install: %s%s\n" msgstr "" -#: gcc.c:7867 +#: gcc.c:7866 #, c-format msgid "programs: %s\n" msgstr "" -#: gcc.c:7869 +#: gcc.c:7868 #, c-format msgid "libraries: %s\n" msgstr "" -#: gcc.c:7986 +#: gcc.c:7985 #, c-format msgid "" "\n" "For bug reporting instructions, please see:\n" msgstr "" -#: gcc.c:8002 gcov-tool.c:527 +#: gcc.c:8001 gcov-tool.c:527 #, c-format msgid "%s %s%s\n" msgstr "" -#: gcc.c:8005 gcov-tool.c:529 gcov.c:923 fortran/gfortranspec.c:282 +#: gcc.c:8004 gcov-tool.c:529 gcov.c:923 fortran/gfortranspec.c:282 msgid "(C)" msgstr "" -#: gcc.c:8006 fortran/gfortranspec.c:283 +#: gcc.c:8005 fortran/gfortranspec.c:283 msgid "" "This is free software; see the source for copying conditions. There is NO\n" "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" "\n" msgstr "" -#: gcc.c:8313 +#: gcc.c:8312 #, c-format msgid "" "\n" @@ -590,14 +590,14 @@ msgid "" "\n" msgstr "" -#: gcc.c:8314 +#: gcc.c:8313 #, c-format msgid "" "Use \"-Wl,OPTION\" to pass \"OPTION\" to the linker.\n" "\n" msgstr "" -#: gcc.c:9622 +#: gcc.c:9621 #, c-format msgid "" "Assembler options\n" @@ -605,7 +605,7 @@ msgid "" "\n" msgstr "" -#: gcc.c:9623 +#: gcc.c:9622 #, c-format msgid "" "Use \"-Wa,OPTION\" to pass \"OPTION\" to the assembler.\n" @@ -1214,100 +1214,107 @@ msgid "unable to generate reloads for:" msgstr "" #. What to print when a switch has no documentation. -#: opts.c:185 +#: opts.c:186 msgid "This option lacks documentation." msgstr "" -#: opts.c:186 +#: opts.c:187 msgid "Uses of this option are diagnosed." msgstr "" -#: opts.c:1327 +#: opts.c:1338 #, c-format msgid "default %d minimum %d maximum %d" msgstr "" -#: opts.c:1396 +#: opts.c:1407 #, c-format msgid "Same as %s. Use the latter option instead." msgstr "" -#: opts.c:1404 +#: opts.c:1415 #, c-format msgid "%s Same as %s." msgstr "" -#: opts.c:1475 +#: opts.c:1486 msgid "[default]" msgstr "" -#: opts.c:1486 +#: opts.c:1497 msgid "[enabled]" msgstr "" -#: opts.c:1486 +#: opts.c:1497 msgid "[disabled]" msgstr "" -#: opts.c:1521 +#: opts.c:1532 #, c-format msgid " No options with the desired characteristics were found\n" msgstr "" -#: opts.c:1530 +#: opts.c:1541 #, c-format msgid "" " None found. Use --help=%s to show *all* the options supported by the %s " "front-end.\n" msgstr "" -#: opts.c:1536 +#: opts.c:1547 #, c-format msgid "" " All options with the desired characteristics have already been displayed\n" msgstr "" -#: opts.c:1630 +#: opts.c:1592 +#, c-format +msgid "" +" Known valid arguments for %s option:\n" +" " +msgstr "" + +#: opts.c:1642 msgid "The following options are target specific" msgstr "" -#: opts.c:1633 +#: opts.c:1645 msgid "The following options control compiler warning messages" msgstr "" -#: opts.c:1636 +#: opts.c:1648 msgid "The following options control optimizations" msgstr "" -#: opts.c:1639 opts.c:1678 +#: opts.c:1651 opts.c:1690 msgid "The following options are language-independent" msgstr "" -#: opts.c:1642 +#: opts.c:1654 msgid "The --param option recognizes the following as parameters" msgstr "" -#: opts.c:1648 +#: opts.c:1660 msgid "The following options are specific to just the language " msgstr "" -#: opts.c:1650 +#: opts.c:1662 msgid "The following options are supported by the language " msgstr "" -#: opts.c:1661 +#: opts.c:1673 msgid "The following options are not documented" msgstr "" -#: opts.c:1663 +#: opts.c:1675 msgid "The following options take separate arguments" msgstr "" -#: opts.c:1665 +#: opts.c:1677 msgid "The following options take joined arguments" msgstr "" -#: opts.c:1676 +#: opts.c:1688 msgid "The following options are language-related" msgstr "" @@ -3237,7 +3244,7 @@ msgstr "" msgid "invalid address mode" msgstr "" -#: config/alpha/alpha.c:5129 config/i386/i386.c:18256 +#: config/alpha/alpha.c:5129 config/i386/i386.c:18267 #: config/rs6000/rs6000.c:21430 config/sparc/sparc.c:9342 #, c-format msgid "'%%&' used without any local dynamic TLS references" @@ -3553,7 +3560,7 @@ msgid "invalid const_double operand" msgstr "" #: config/cris/cris.c:625 config/ft32/ft32.c:110 config/moxie/moxie.c:108 -#: final.c:3608 final.c:3610 fold-const.c:267 gcc.c:5393 gcc.c:5407 +#: final.c:3608 final.c:3610 fold-const.c:267 gcc.c:5392 gcc.c:5406 #: rtl-error.c:101 toplev.c:326 vr-values.c:2450 cp/typeck.c:6520 #: lto/lto-object.c:184 lto/lto-object.c:281 lto/lto-object.c:338 #: lto/lto-object.c:362 @@ -3789,98 +3796,98 @@ msgstr "" msgid "invalid fp constant" msgstr "" -#: config/i386/i386.c:17083 +#: config/i386/i386.c:17094 #, c-format msgid "invalid UNSPEC as operand" msgstr "" -#: config/i386/i386.c:17622 +#: config/i386/i386.c:17633 #, c-format msgid "invalid use of register '%s'" msgstr "" -#: config/i386/i386.c:17627 +#: config/i386/i386.c:17638 #, c-format msgid "invalid use of asm flag output" msgstr "" -#: config/i386/i386.c:17858 +#: config/i386/i386.c:17869 #, c-format msgid "invalid operand size for operand code 'O'" msgstr "" -#: config/i386/i386.c:17893 +#: config/i386/i386.c:17904 #, c-format msgid "invalid operand size for operand code 'z'" msgstr "" -#: config/i386/i386.c:17962 +#: config/i386/i386.c:17973 #, c-format msgid "invalid operand type used with operand code 'Z'" msgstr "" -#: config/i386/i386.c:17967 +#: config/i386/i386.c:17978 #, c-format msgid "invalid operand size for operand code 'Z'" msgstr "" -#: config/i386/i386.c:18044 +#: config/i386/i386.c:18055 #, c-format msgid "operand is not a condition code, invalid operand code 'Y'" msgstr "" -#: config/i386/i386.c:18123 +#: config/i386/i386.c:18134 #, c-format msgid "operand is not a condition code, invalid operand code 'D'" msgstr "" -#: config/i386/i386.c:18141 +#: config/i386/i386.c:18152 #, c-format msgid "operand is not a condition code, invalid operand code '%c'" msgstr "" -#: config/i386/i386.c:18154 +#: config/i386/i386.c:18165 #, c-format msgid "" "operand is not an offsettable memory reference, invalid operand code 'H'" msgstr "" -#: config/i386/i386.c:18169 +#: config/i386/i386.c:18180 #, c-format msgid "operand is not an integer, invalid operand code 'K'" msgstr "" -#: config/i386/i386.c:18197 +#: config/i386/i386.c:18208 #, c-format msgid "operand is not a specific integer, invalid operand code 'r'" msgstr "" -#: config/i386/i386.c:18215 +#: config/i386/i386.c:18226 #, c-format msgid "operand is not an integer, invalid operand code 'R'" msgstr "" -#: config/i386/i386.c:18238 +#: config/i386/i386.c:18249 #, c-format msgid "operand is not a specific integer, invalid operand code 'R'" msgstr "" -#: config/i386/i386.c:18342 +#: config/i386/i386.c:18353 #, c-format msgid "invalid operand code '%c'" msgstr "" -#: config/i386/i386.c:18404 +#: config/i386/i386.c:18415 #, c-format msgid "invalid constraints for operand" msgstr "" -#: config/i386/i386.c:18454 +#: config/i386/i386.c:18465 #, c-format msgid "invalid vector immediate" msgstr "" -#: config/i386/i386.c:29334 +#: config/i386/i386.c:29311 msgid "unknown insn mode" msgstr "" @@ -4022,8 +4029,8 @@ msgstr "" #: config/mips/mips.c:9077 config/mips/mips.c:9080 config/mips/mips.c:9092 #: config/mips/mips.c:9095 config/mips/mips.c:9155 config/mips/mips.c:9162 #: config/mips/mips.c:9183 config/mips/mips.c:9198 config/mips/mips.c:9217 -#: config/mips/mips.c:9226 config/riscv/riscv.c:3223 config/riscv/riscv.c:3229 -#: config/riscv/riscv.c:3238 +#: config/mips/mips.c:9226 config/riscv/riscv.c:3235 config/riscv/riscv.c:3241 +#: config/riscv/riscv.c:3250 #, c-format msgid "invalid use of '%%%c'" msgstr "" @@ -4252,19 +4259,19 @@ msgstr "" msgid "__float128 and long double cannot be used in the same expression" msgstr "" -#: config/rs6000/rs6000.c:36437 +#: config/rs6000/rs6000.c:36474 msgid "AltiVec argument passed to unprototyped function" msgstr "" -#: config/rs6000/rs6000.c:38906 +#: config/rs6000/rs6000.c:38943 msgid "Could not generate addis value for fusion" msgstr "" -#: config/rs6000/rs6000.c:38975 +#: config/rs6000/rs6000.c:39012 msgid "Unable to generate load/store offset for fusion" msgstr "" -#: config/rs6000/rs6000.c:39051 +#: config/rs6000/rs6000.c:39088 msgid "Bad GPR fusion" msgstr "" @@ -5011,7 +5018,7 @@ msgstr "" msgid "%r%s:%d:%R in % expansion of %qs" msgstr "" -#: cp/pt.c:2001 cp/semantics.c:5403 +#: cp/pt.c:2001 cp/semantics.c:5399 msgid "candidates are:" msgstr "" @@ -5371,7 +5378,7 @@ msgstr "" msgid "Bad type in constant expression" msgstr "" -#: fortran/module.c:7119 +#: fortran/module.c:7122 msgid "Unexpected end of module" msgstr "" @@ -16962,246 +16969,246 @@ msgstr "" msgid "value computed is not used" msgstr "" -#: go/gofrontend/expressions.cc:665 +#: go/gofrontend/expressions.cc:721 msgid "invalid use of type" msgstr "" -#: go/gofrontend/expressions.cc:3086 go/gofrontend/expressions.cc:3102 +#: go/gofrontend/expressions.cc:3142 go/gofrontend/expressions.cc:3158 msgid "constant refers to itself" msgstr "" -#: go/gofrontend/expressions.cc:4023 go/gofrontend/expressions.cc:4508 +#: go/gofrontend/expressions.cc:4079 go/gofrontend/expressions.cc:4564 msgid "expected pointer" msgstr "" -#: go/gofrontend/expressions.cc:4479 +#: go/gofrontend/expressions.cc:4535 msgid "expected numeric type" msgstr "" -#: go/gofrontend/expressions.cc:4484 +#: go/gofrontend/expressions.cc:4540 msgid "expected boolean type" msgstr "" -#: go/gofrontend/expressions.cc:4489 c/c-parser.c:14250 c/c-parser.c:14257 +#: go/gofrontend/expressions.cc:4545 c/c-parser.c:14250 c/c-parser.c:14257 #: cp/parser.c:34448 cp/parser.c:34455 #, gcc-internal-format msgid "expected integer" msgstr "" -#: go/gofrontend/expressions.cc:6149 +#: go/gofrontend/expressions.cc:6205 msgid "invalid comparison of nil with nil" msgstr "" -#: go/gofrontend/expressions.cc:6155 go/gofrontend/expressions.cc:6173 +#: go/gofrontend/expressions.cc:6211 go/gofrontend/expressions.cc:6229 msgid "incompatible types in binary expression" msgstr "" -#: go/gofrontend/expressions.cc:6193 +#: go/gofrontend/expressions.cc:6249 msgid "integer division by zero" msgstr "" -#: go/gofrontend/expressions.cc:6201 +#: go/gofrontend/expressions.cc:6257 msgid "shift of non-integer operand" msgstr "" -#: go/gofrontend/expressions.cc:6204 go/gofrontend/expressions.cc:6208 -#: go/gofrontend/expressions.cc:6216 +#: go/gofrontend/expressions.cc:6260 go/gofrontend/expressions.cc:6264 +#: go/gofrontend/expressions.cc:6272 msgid "shift count not unsigned integer" msgstr "" -#: go/gofrontend/expressions.cc:6221 +#: go/gofrontend/expressions.cc:6277 msgid "negative shift count" msgstr "" -#: go/gofrontend/expressions.cc:7044 +#: go/gofrontend/expressions.cc:7100 msgid "object is not a method" msgstr "" -#: go/gofrontend/expressions.cc:7061 +#: go/gofrontend/expressions.cc:7117 msgid "method type does not match object type" msgstr "" -#: go/gofrontend/expressions.cc:7455 +#: go/gofrontend/expressions.cc:7511 msgid "invalid use of %<...%> with builtin function" msgstr "" -#: go/gofrontend/expressions.cc:7466 +#: go/gofrontend/expressions.cc:7522 msgid "invalid use of method value as argument of Offsetof" msgstr "" -#: go/gofrontend/expressions.cc:7480 +#: go/gofrontend/expressions.cc:7536 msgid "argument of Offsetof implies indirection of an embedded field" msgstr "" -#: go/gofrontend/expressions.cc:7505 go/gofrontend/expressions.cc:7542 -#: go/gofrontend/expressions.cc:7709 go/gofrontend/expressions.cc:8893 -#: go/gofrontend/expressions.cc:9042 go/gofrontend/expressions.cc:9088 -#: go/gofrontend/expressions.cc:9123 go/gofrontend/expressions.cc:9199 -#: go/gofrontend/expressions.cc:10456 go/gofrontend/expressions.cc:10473 -#: go/gofrontend/expressions.cc:10489 +#: go/gofrontend/expressions.cc:7561 go/gofrontend/expressions.cc:7598 +#: go/gofrontend/expressions.cc:7765 go/gofrontend/expressions.cc:8949 +#: go/gofrontend/expressions.cc:9098 go/gofrontend/expressions.cc:9144 +#: go/gofrontend/expressions.cc:9179 go/gofrontend/expressions.cc:9255 +#: go/gofrontend/expressions.cc:10522 go/gofrontend/expressions.cc:10539 +#: go/gofrontend/expressions.cc:10555 msgid "not enough arguments" msgstr "" -#: go/gofrontend/expressions.cc:7507 go/gofrontend/expressions.cc:7544 -#: go/gofrontend/expressions.cc:8898 go/gofrontend/expressions.cc:9025 -#: go/gofrontend/expressions.cc:9047 go/gofrontend/expressions.cc:9128 -#: go/gofrontend/expressions.cc:9201 go/gofrontend/expressions.cc:10023 -#: go/gofrontend/expressions.cc:10461 go/gofrontend/expressions.cc:10475 -#: go/gofrontend/expressions.cc:10496 +#: go/gofrontend/expressions.cc:7563 go/gofrontend/expressions.cc:7600 +#: go/gofrontend/expressions.cc:8954 go/gofrontend/expressions.cc:9081 +#: go/gofrontend/expressions.cc:9103 go/gofrontend/expressions.cc:9184 +#: go/gofrontend/expressions.cc:9257 go/gofrontend/expressions.cc:10089 +#: go/gofrontend/expressions.cc:10527 go/gofrontend/expressions.cc:10541 +#: go/gofrontend/expressions.cc:10562 msgid "too many arguments" msgstr "" -#: go/gofrontend/expressions.cc:7546 +#: go/gofrontend/expressions.cc:7602 msgid "argument 1 must be a map" msgstr "" -#: go/gofrontend/expressions.cc:7739 +#: go/gofrontend/expressions.cc:7795 msgid "invalid type for make function" msgstr "" -#: go/gofrontend/expressions.cc:7752 +#: go/gofrontend/expressions.cc:7808 msgid "length required when allocating a slice" msgstr "" -#: go/gofrontend/expressions.cc:7796 +#: go/gofrontend/expressions.cc:7852 msgid "len larger than cap" msgstr "" -#: go/gofrontend/expressions.cc:7805 +#: go/gofrontend/expressions.cc:7861 msgid "too many arguments to make" msgstr "" -#: go/gofrontend/expressions.cc:8942 +#: go/gofrontend/expressions.cc:8998 msgid "argument must be array or slice or channel" msgstr "" -#: go/gofrontend/expressions.cc:8952 +#: go/gofrontend/expressions.cc:9008 msgid "argument must be string or array or slice or map or channel" msgstr "" -#: go/gofrontend/expressions.cc:8998 +#: go/gofrontend/expressions.cc:9054 msgid "unsupported argument type to builtin function" msgstr "" -#: go/gofrontend/expressions.cc:9009 +#: go/gofrontend/expressions.cc:9065 msgid "argument must be channel" msgstr "" -#: go/gofrontend/expressions.cc:9011 +#: go/gofrontend/expressions.cc:9067 msgid "cannot close receive-only channel" msgstr "" -#: go/gofrontend/expressions.cc:9033 +#: go/gofrontend/expressions.cc:9089 msgid "argument must be a field reference" msgstr "" -#: go/gofrontend/expressions.cc:9063 +#: go/gofrontend/expressions.cc:9119 msgid "left argument must be a slice" msgstr "" -#: go/gofrontend/expressions.cc:9071 +#: go/gofrontend/expressions.cc:9127 msgid "element types must be the same" msgstr "" -#: go/gofrontend/expressions.cc:9076 +#: go/gofrontend/expressions.cc:9132 msgid "first argument must be []byte" msgstr "" -#: go/gofrontend/expressions.cc:9079 +#: go/gofrontend/expressions.cc:9135 msgid "second argument must be slice or string" msgstr "" -#: go/gofrontend/expressions.cc:9191 +#: go/gofrontend/expressions.cc:9247 msgid "argument must have complex type" msgstr "" -#: go/gofrontend/expressions.cc:9210 +#: go/gofrontend/expressions.cc:9266 msgid "complex arguments must have identical types" msgstr "" -#: go/gofrontend/expressions.cc:9212 +#: go/gofrontend/expressions.cc:9268 msgid "complex arguments must have floating-point type" msgstr "" -#: go/gofrontend/expressions.cc:9776 go/gofrontend/expressions.cc:10402 -#: go/gofrontend/expressions.cc:10775 +#: go/gofrontend/expressions.cc:9832 go/gofrontend/expressions.cc:10468 +#: go/gofrontend/expressions.cc:10841 msgid "expected function" msgstr "" -#: go/gofrontend/expressions.cc:9804 +#: go/gofrontend/expressions.cc:9860 msgid "multiple-value argument in single-value context" msgstr "" -#: go/gofrontend/expressions.cc:10027 +#: go/gofrontend/expressions.cc:10093 msgid "invalid use of %<...%> with non-slice" msgstr "" -#: go/gofrontend/expressions.cc:10410 +#: go/gofrontend/expressions.cc:10476 msgid "function result count mismatch" msgstr "" -#: go/gofrontend/expressions.cc:10428 +#: go/gofrontend/expressions.cc:10494 msgid "incompatible type for receiver" msgstr "" -#: go/gofrontend/expressions.cc:10446 +#: go/gofrontend/expressions.cc:10512 msgid "invalid use of %<...%> calling non-variadic function" msgstr "" -#: go/gofrontend/expressions.cc:10784 go/gofrontend/expressions.cc:10798 +#: go/gofrontend/expressions.cc:10850 go/gofrontend/expressions.cc:10864 msgid "number of results does not match number of values" msgstr "" -#: go/gofrontend/expressions.cc:11102 go/gofrontend/expressions.cc:11649 +#: go/gofrontend/expressions.cc:11168 go/gofrontend/expressions.cc:11715 msgid "index must be integer" msgstr "" -#: go/gofrontend/expressions.cc:11110 go/gofrontend/expressions.cc:11657 +#: go/gofrontend/expressions.cc:11176 go/gofrontend/expressions.cc:11723 msgid "slice end must be integer" msgstr "" -#: go/gofrontend/expressions.cc:11118 +#: go/gofrontend/expressions.cc:11184 msgid "slice capacity must be integer" msgstr "" -#: go/gofrontend/expressions.cc:11168 go/gofrontend/expressions.cc:11691 +#: go/gofrontend/expressions.cc:11234 go/gofrontend/expressions.cc:11757 msgid "inverted slice range" msgstr "" -#: go/gofrontend/expressions.cc:11211 +#: go/gofrontend/expressions.cc:11277 msgid "slice of unaddressable value" msgstr "" -#: go/gofrontend/expressions.cc:11919 +#: go/gofrontend/expressions.cc:11985 msgid "incompatible type for map index" msgstr "" -#: go/gofrontend/expressions.cc:12289 +#: go/gofrontend/expressions.cc:12355 msgid "expected interface or pointer to interface" msgstr "" -#: go/gofrontend/expressions.cc:13010 +#: go/gofrontend/expressions.cc:13076 msgid "too many expressions for struct" msgstr "" -#: go/gofrontend/expressions.cc:13023 +#: go/gofrontend/expressions.cc:13089 msgid "too few expressions for struct" msgstr "" -#: go/gofrontend/expressions.cc:14786 go/gofrontend/statements.cc:1618 +#: go/gofrontend/expressions.cc:14852 go/gofrontend/statements.cc:1618 msgid "type assertion only valid for interface types" msgstr "" -#: go/gofrontend/expressions.cc:14798 +#: go/gofrontend/expressions.cc:14864 msgid "impossible type assertion: type does not implement interface" msgstr "" -#: go/gofrontend/expressions.cc:14968 go/gofrontend/expressions.cc:14988 +#: go/gofrontend/expressions.cc:15034 go/gofrontend/expressions.cc:15054 #: go/gofrontend/statements.cc:1465 msgid "expected channel" msgstr "" -#: go/gofrontend/expressions.cc:14993 go/gofrontend/statements.cc:1470 +#: go/gofrontend/expressions.cc:15059 go/gofrontend/statements.cc:1470 msgid "invalid receive on send-only channel" msgstr "" @@ -17320,71 +17327,71 @@ msgstr "" msgid "conversion from normal type to notinheap type" msgstr "" -#: go/gofrontend/types.cc:4518 +#: go/gofrontend/types.cc:4566 msgid "different receiver types" msgstr "" -#: go/gofrontend/types.cc:4541 go/gofrontend/types.cc:4554 -#: go/gofrontend/types.cc:4568 +#: go/gofrontend/types.cc:4589 go/gofrontend/types.cc:4602 +#: go/gofrontend/types.cc:4616 msgid "different number of parameters" msgstr "" -#: go/gofrontend/types.cc:4561 +#: go/gofrontend/types.cc:4609 msgid "different parameter types" msgstr "" -#: go/gofrontend/types.cc:4576 +#: go/gofrontend/types.cc:4624 msgid "different varargs" msgstr "" -#: go/gofrontend/types.cc:4589 go/gofrontend/types.cc:4602 -#: go/gofrontend/types.cc:4616 +#: go/gofrontend/types.cc:4637 go/gofrontend/types.cc:4650 +#: go/gofrontend/types.cc:4664 msgid "different number of results" msgstr "" -#: go/gofrontend/types.cc:4609 +#: go/gofrontend/types.cc:4657 msgid "different result types" msgstr "" -#: go/gofrontend/types.cc:8889 +#: go/gofrontend/types.cc:8939 #, c-format msgid "need explicit conversion; missing method %s%s%s" msgstr "" -#: go/gofrontend/types.cc:8907 go/gofrontend/types.cc:9050 +#: go/gofrontend/types.cc:8957 go/gofrontend/types.cc:9100 #, c-format msgid "incompatible type for method %s%s%s" msgstr "" -#: go/gofrontend/types.cc:8911 go/gofrontend/types.cc:9054 +#: go/gofrontend/types.cc:8961 go/gofrontend/types.cc:9104 #, c-format msgid "incompatible type for method %s%s%s (%s)" msgstr "" -#: go/gofrontend/types.cc:8990 go/gofrontend/types.cc:9003 +#: go/gofrontend/types.cc:9040 go/gofrontend/types.cc:9053 msgid "pointer to interface type has no methods" msgstr "" -#: go/gofrontend/types.cc:8992 go/gofrontend/types.cc:9005 +#: go/gofrontend/types.cc:9042 go/gofrontend/types.cc:9055 msgid "type has no methods" msgstr "" -#: go/gofrontend/types.cc:9026 +#: go/gofrontend/types.cc:9076 #, c-format msgid "ambiguous method %s%s%s" msgstr "" -#: go/gofrontend/types.cc:9029 +#: go/gofrontend/types.cc:9079 #, c-format msgid "missing method %s%s%s" msgstr "" -#: go/gofrontend/types.cc:9071 +#: go/gofrontend/types.cc:9121 #, c-format msgid "method %s%s%s requires a pointer receiver" msgstr "" -#: go/gofrontend/types.cc:9089 +#: go/gofrontend/types.cc:9139 #, c-format msgid "method %s%s%s is marked go:nointerface" msgstr "" @@ -17478,7 +17485,7 @@ msgstr "" #: config/darwin.c:2066 config/arm/arm.c:6898 config/arm/arm.c:6926 #: config/arm/arm.c:6943 config/avr/avr.c:9698 config/csky/csky.c:6060 #: config/csky/csky.c:6082 config/h8300/h8300.c:5483 config/h8300/h8300.c:5507 -#: config/i386/i386.c:6378 config/i386/i386.c:41272 config/i386/i386.c:45856 +#: config/i386/i386.c:6389 config/i386/i386.c:41252 config/i386/i386.c:45836 #: config/ia64/ia64.c:788 config/rs6000/rs6000.c:32968 config/spu/spu.c:3748 #: ada/gcc-interface/utils.c:6351 ada/gcc-interface/utils.c:6368 #: ada/gcc-interface/utils.c:6384 ada/gcc-interface/utils.c:6410 @@ -18916,7 +18923,7 @@ msgstr "" msgid "aliased declaration here" msgstr "" -#: cgraphunit.c:1428 c-family/c-pragma.c:337 +#: cgraphunit.c:1428 c-family/c-pragma.c:338 #, gcc-internal-format msgid "%q+D aliased to undefined symbol %qE" msgstr "" @@ -18996,7 +19003,7 @@ msgstr "" msgid "cannot find %qs" msgstr "" -#: collect-utils.c:183 collect2.c:2451 collect2.c:2621 gcc.c:3201 gcc.c:6927 +#: collect-utils.c:183 collect2.c:2451 collect2.c:2621 gcc.c:3201 gcc.c:6926 #, gcc-internal-format msgid "pex_init failed: %m" msgstr "" @@ -19011,7 +19018,7 @@ msgstr "" msgid "COLLECT_LTO_WRAPPER must be set" msgstr "" -#: collect2.c:976 gcc.c:7448 lto-wrapper.c:1756 +#: collect2.c:976 gcc.c:7447 lto-wrapper.c:1756 #: config/i386/intelmic-mkoffload.c:556 config/nvptx/mkoffload.c:405 #, gcc-internal-format msgid "atexit failed" @@ -19022,7 +19029,7 @@ msgstr "" msgid "no arguments" msgstr "" -#: collect2.c:1358 opts.c:1068 +#: collect2.c:1358 opts.c:1075 #, gcc-internal-format msgid "LTO support has not been enabled in this configuration" msgstr "" @@ -19644,12 +19651,12 @@ msgstr "" msgid "%<-pipe%> not supported" msgstr "" -#: gcc.c:3218 gcc.c:6936 +#: gcc.c:3218 gcc.c:6935 #, gcc-internal-format msgid "cannot execute %qs: %s: %m" msgstr "" -#: gcc.c:3219 gcc.c:6937 +#: gcc.c:3219 gcc.c:6936 #, gcc-internal-format msgid "cannot execute %qs: %s" msgstr "" @@ -19705,42 +19712,42 @@ msgstr "" msgid "%<-x %s%> after last input file has no effect" msgstr "" -#: gcc.c:4924 +#: gcc.c:4923 #, gcc-internal-format msgid "unable to locate default linker script %qs in the library search paths" msgstr "" -#: gcc.c:5131 +#: gcc.c:5130 #, gcc-internal-format msgid "switch %qs does not start with %<-%>" msgstr "" -#: gcc.c:5135 +#: gcc.c:5134 #, gcc-internal-format msgid "spec-generated switch is just %<-%>" msgstr "" -#: gcc.c:5331 +#: gcc.c:5330 #, gcc-internal-format msgid "spec %qs invalid" msgstr "" -#: gcc.c:5481 +#: gcc.c:5480 #, gcc-internal-format msgid "spec %qs has invalid %<%%0%c%>" msgstr "" -#: gcc.c:5758 +#: gcc.c:5757 #, gcc-internal-format msgid "spec %qs has invalid %<%%W%c%>" msgstr "" -#: gcc.c:5774 +#: gcc.c:5773 #, gcc-internal-format msgid "spec %qs has invalid %<%%@%c%>" msgstr "" -#: gcc.c:5795 +#: gcc.c:5794 #, gcc-internal-format msgid "spec %qs has invalid %<%%x%c%>" msgstr "" @@ -19748,233 +19755,233 @@ msgstr "" #. Catch the case where a spec string contains something like #. '%{foo:%*}'. i.e. there is no * in the pattern on the left #. hand side of the :. -#: gcc.c:6006 +#: gcc.c:6005 #, gcc-internal-format msgid "spec failure: %<%%*%> has not been initialized by pattern match" msgstr "" -#: gcc.c:6049 +#: gcc.c:6048 #, gcc-internal-format msgid "spec failure: unrecognized spec option %qc" msgstr "" -#: gcc.c:6112 +#: gcc.c:6111 #, gcc-internal-format msgid "unknown spec function %qs" msgstr "" -#: gcc.c:6142 +#: gcc.c:6141 #, gcc-internal-format msgid "error in args to spec function %qs" msgstr "" -#: gcc.c:6200 +#: gcc.c:6199 #, gcc-internal-format msgid "malformed spec function name" msgstr "" #. ) -#: gcc.c:6203 +#: gcc.c:6202 #, gcc-internal-format msgid "no arguments for spec function" msgstr "" -#: gcc.c:6222 +#: gcc.c:6221 #, gcc-internal-format msgid "malformed spec function arguments" msgstr "" -#: gcc.c:6401 +#: gcc.c:6400 #, gcc-internal-format msgid "braced spec %qs ends in escape" msgstr "" -#: gcc.c:6536 +#: gcc.c:6535 #, gcc-internal-format msgid "braced spec %qs is invalid at %qc" msgstr "" -#: gcc.c:6631 +#: gcc.c:6630 #, gcc-internal-format msgid "braced spec body %qs is invalid" msgstr "" -#: gcc.c:7235 +#: gcc.c:7234 #, gcc-internal-format, gfc-internal-format msgid "%s: could not determine length of compare-debug file %s" msgstr "" -#: gcc.c:7246 +#: gcc.c:7245 #, gcc-internal-format msgid "%s: %<-fcompare-debug%> failure (length)" msgstr "" -#: gcc.c:7256 gcc.c:7297 +#: gcc.c:7255 gcc.c:7296 #, gcc-internal-format, gfc-internal-format msgid "%s: could not open compare-debug file %s" msgstr "" -#: gcc.c:7276 gcc.c:7313 +#: gcc.c:7275 gcc.c:7312 #, gcc-internal-format msgid "%s: %<-fcompare-debug%> failure" msgstr "" -#: gcc.c:7618 +#: gcc.c:7617 #, gcc-internal-format msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC" msgstr "" -#: gcc.c:7642 +#: gcc.c:7641 #, gcc-internal-format msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC" msgstr "" -#: gcc.c:7847 +#: gcc.c:7846 #, gcc-internal-format msgid "unrecognized command line option %<-%s%>; did you mean %<-%s%>?" msgstr "" -#: gcc.c:7851 +#: gcc.c:7850 #, gcc-internal-format msgid "unrecognized command line option %<-%s%>" msgstr "" -#: gcc.c:7977 +#: gcc.c:7976 #, gcc-internal-format msgid "not configured with sysroot headers suffix" msgstr "" -#: gcc.c:8038 +#: gcc.c:8037 #, gcc-internal-format msgid "no input files" msgstr "" -#: gcc.c:8089 +#: gcc.c:8088 #, gcc-internal-format msgid "cannot specify %<-o%> with %<-c%>, %<-S%> or %<-E%> with multiple files" msgstr "" -#: gcc.c:8131 +#: gcc.c:8130 #, gcc-internal-format, gfc-internal-format msgid "%s: %s compiler not installed on this system" msgstr "" -#: gcc.c:8156 +#: gcc.c:8155 #, gcc-internal-format msgid "recompiling with %<-fcompare-debug%>" msgstr "" -#: gcc.c:8172 +#: gcc.c:8171 #, gcc-internal-format msgid "during %<-fcompare-debug%> recompilation" msgstr "" -#: gcc.c:8181 +#: gcc.c:8180 #, gcc-internal-format msgid "comparing final insns dumps" msgstr "" -#: gcc.c:8298 +#: gcc.c:8297 #, gcc-internal-format msgid "%<-fuse-linker-plugin%>, but %s not found" msgstr "" -#: gcc.c:8331 +#: gcc.c:8330 #, gcc-internal-format, gfc-internal-format msgid "%s: linker input file unused because linking not done" msgstr "" -#: gcc.c:8387 c-family/c-opts.c:771 +#: gcc.c:8386 c-family/c-opts.c:771 #, gcc-internal-format msgid "cannot use %<-%> as input filename for a precompiled header" msgstr "" -#: gcc.c:8393 +#: gcc.c:8392 #, gcc-internal-format, gfc-internal-format msgid "language %s not recognized" msgstr "" -#: gcc.c:8626 +#: gcc.c:8625 #, gcc-internal-format msgid "multilib spec %qs is invalid" msgstr "" -#: gcc.c:8828 +#: gcc.c:8827 #, gcc-internal-format msgid "multilib exclusions %qs is invalid" msgstr "" -#: gcc.c:8892 +#: gcc.c:8891 #, gcc-internal-format msgid "multilib select %qs %qs is invalid" msgstr "" -#: gcc.c:9054 +#: gcc.c:9053 #, gcc-internal-format msgid "multilib select %qs is invalid" msgstr "" -#: gcc.c:9094 +#: gcc.c:9093 #, gcc-internal-format msgid "multilib exclusion %qs is invalid" msgstr "" -#: gcc.c:9320 +#: gcc.c:9319 #, gcc-internal-format msgid "environment variable %qs not defined" msgstr "" -#: gcc.c:9460 gcc.c:9465 +#: gcc.c:9459 gcc.c:9464 #, gcc-internal-format msgid "invalid version number %qs" msgstr "" -#: gcc.c:9508 +#: gcc.c:9507 #, gcc-internal-format, gfc-internal-format msgid "too few arguments to %%:version-compare" msgstr "" -#: gcc.c:9514 +#: gcc.c:9513 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:version-compare" msgstr "" -#: gcc.c:9556 +#: gcc.c:9555 #, gcc-internal-format msgid "unknown operator %qs in %%:version-compare" msgstr "" -#: gcc.c:9680 +#: gcc.c:9679 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:compare-debug-dump-opt" msgstr "" -#: gcc.c:9753 +#: gcc.c:9752 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:compare-debug-self-opt" msgstr "" -#: gcc.c:9789 +#: gcc.c:9788 #, gcc-internal-format, gfc-internal-format msgid "too few arguments to %%:compare-debug-auxbase-opt" msgstr "" -#: gcc.c:9793 +#: gcc.c:9792 #, gcc-internal-format, gfc-internal-format msgid "too many arguments to %%:compare-debug-auxbase-opt" msgstr "" -#: gcc.c:9800 +#: gcc.c:9799 #, gcc-internal-format, gfc-internal-format msgid "argument to %%:compare-debug-auxbase-opt does not end in .gk" msgstr "" -#: gcc.c:9874 +#: gcc.c:9873 #, gcc-internal-format, gfc-internal-format msgid "too few arguments to %%:replace-extension" msgstr "" -#: gcc.c:9927 +#: gcc.c:9926 #, gcc-internal-format, gfc-internal-format msgid "wrong number of arguments to %%:debug-level-gt" msgstr "" @@ -20108,29 +20115,29 @@ msgstr "" msgid "can%'t write PCH file" msgstr "" -#: gimple-fold.c:1786 gimple-fold.c:2787 +#: gimple-fold.c:1785 gimple-fold.c:2786 #, gcc-internal-format msgid "%qD source argument is the same as destination" msgstr "" -#: gimple-fold.c:1852 +#: gimple-fold.c:1851 msgid "" "%G%qD destination unchanged after copying no bytes from a string of length %E" msgstr "" -#: gimple-fold.c:1857 +#: gimple-fold.c:1856 msgid "%G%qD destination unchanged after copying no bytes" msgstr "" -#: gimple-fold.c:2225 tree-ssa-strlen.c:2181 +#: gimple-fold.c:2224 tree-ssa-strlen.c:2181 msgid "%G%qD specified bound %E equals destination size" msgstr "" -#: gimple-fold.c:2227 +#: gimple-fold.c:2226 msgid "%G%qD specified bound %E exceeds destination size %wu" msgstr "" -#: gimple-fold.c:2245 +#: gimple-fold.c:2244 msgid "%G%qD specified bound %E equals source length" msgstr "" @@ -20149,7 +20156,7 @@ msgstr "" #: c/c-typeck.c:10562 c/gimple-parser.c:2041 c/gimple-parser.c:2049 #: cp/call.c:6760 cp/call.c:8495 cp/constexpr.c:839 cp/constexpr.c:2464 #: cp/cvt.c:1038 cp/cvt.c:1067 cp/decl.c:7453 cp/decl2.c:5422 cp/pt.c:8442 -#: cp/semantics.c:1857 cp/semantics.c:4159 cp/typeck.c:1719 cp/typeck.c:1916 +#: cp/semantics.c:1857 cp/semantics.c:4155 cp/typeck.c:1719 cp/typeck.c:1916 #: cp/typeck.c:3967 cp/typeck.c:9324 #, gcc-internal-format msgid "declared here" @@ -22273,7 +22280,7 @@ msgstr "" msgid "command line option %qs is not supported by this configuration" msgstr "" -#: opts-common.c:1247 opts.c:2169 +#: opts-common.c:1247 opts.c:2119 #, gcc-internal-format msgid "missing argument to %qs" msgstr "" @@ -22300,12 +22307,12 @@ msgstr "" msgid "unrecognized argument in option %qs" msgstr "" -#: opts-common.c:1291 config/i386/i386.c:3383 +#: opts-common.c:1291 config/i386/i386.c:3384 #, gcc-internal-format msgid "valid arguments to %qs are: %s; did you mean %qs?" msgstr "" -#: opts-common.c:1294 config/i386/i386.c:3386 +#: opts-common.c:1294 config/i386/i386.c:3387 #, gcc-internal-format msgid "valid arguments to %qs are: %s" msgstr "" @@ -22358,403 +22365,408 @@ msgstr "" msgid "unrecognized shadow offset %qs" msgstr "" -#: opts.c:90 +#: opts.c:91 #, gcc-internal-format msgid "argument %qs to %<-femit-struct-debug-detailed%> not recognized" msgstr "" -#: opts.c:126 +#: opts.c:127 #, gcc-internal-format msgid "argument %qs to %<-femit-struct-debug-detailed%> unknown" msgstr "" -#: opts.c:133 +#: opts.c:134 #, gcc-internal-format msgid "" "%<-femit-struct-debug-detailed=dir:...%> must allow at least as much as %<-" "femit-struct-debug-detailed=ind:...%>" msgstr "" -#: opts.c:602 +#: opts.c:603 #, gcc-internal-format msgid "" "argument to %<-O%> should be a non-negative integer, %, % or %" msgstr "" -#: opts.c:729 +#: opts.c:730 #, gcc-internal-format msgid "" "%<-fipa-cp-clone%> is incompatible with %<-flive-patching=inline-only-static" "%>" msgstr "" -#: opts.c:736 +#: opts.c:737 #, gcc-internal-format msgid "" "%<-fipa-sra%> is incompatible with %<-flive-patching=inline-only-static%>" msgstr "" -#: opts.c:743 +#: opts.c:744 #, gcc-internal-format msgid "" "%<-fpartial-inlining%> is incompatible with %<-flive-patching=inline-only-" "static%>" msgstr "" -#: opts.c:750 +#: opts.c:751 #, gcc-internal-format msgid "" "%<-fipa-cp%> is incompatible with %<-flive-patching=inline-only-static%>" msgstr "" -#: opts.c:760 +#: opts.c:761 #, gcc-internal-format msgid "" "%<-fwhole-program%> is incompatible with %<-flive-patching=inline-only-" "static|inline-clone%>" msgstr "" -#: opts.c:771 +#: opts.c:772 #, gcc-internal-format msgid "" "%<-fipa-pta%> is incompatible with %<-flive-patching=inline-only-static|" "inline-clone%>" msgstr "" -#: opts.c:778 +#: opts.c:779 #, gcc-internal-format msgid "" "%<-fipa-reference%> is incompatible with %<-flive-patching=inline-only-" "static|inline-clone%>" msgstr "" -#: opts.c:785 +#: opts.c:786 #, gcc-internal-format msgid "" "%<-fipa-ra%> is incompatible with %<-flive-patching=inline-only-static|" "inline-clone%>" msgstr "" -#: opts.c:792 +#: opts.c:793 #, gcc-internal-format msgid "" "%<-fipa-icf%> is incompatible with %<-flive-patching=inline-only-static|" "inline-clone%>" msgstr "" -#: opts.c:799 +#: opts.c:800 #, gcc-internal-format msgid "" "%<-fipa-icf-functions%> is incompatible with %<-flive-patching=inline-only-" "static|inline-clone%>" msgstr "" -#: opts.c:806 +#: opts.c:807 #, gcc-internal-format msgid "" "%<-fipa-icf-variables%> is incompatible with %<-flive-patching=inline-only-" "static|inline-clone%>" msgstr "" -#: opts.c:813 +#: opts.c:814 #, gcc-internal-format msgid "" "%<-fipa-bit-cp%> is incompatible with %<-flive-patching=inline-only-static|" "inline-clone%>" msgstr "" -#: opts.c:820 +#: opts.c:821 #, gcc-internal-format msgid "" "%<-fipa-vrp%> is incompatible with %<-flive-patching=inline-only-static|" "inline-clone%>" msgstr "" -#: opts.c:827 +#: opts.c:828 #, gcc-internal-format msgid "" "%<-fipa-pure-const%> is incompatible with %<-flive-patching=inline-only-" "static|inline-clone%>" msgstr "" -#: opts.c:838 +#: opts.c:839 #, gcc-internal-format msgid "" "%<-fipa-reference-addressable%> is incompatible with %<-flive-" "patching=inline-only-static|inline-clone%>" msgstr "" -#: opts.c:847 +#: opts.c:848 #, gcc-internal-format msgid "" "%<-fipa-stack-alignment%> is incompatible with %<-flive-patching=inline-only-" "static|inline-clone%>" msgstr "" -#: opts.c:916 +#: opts.c:923 #, gcc-internal-format msgid "section anchors must be disabled when unit-at-a-time is disabled" msgstr "" -#: opts.c:920 +#: opts.c:927 #, gcc-internal-format msgid "toplevel reorder must be disabled when unit-at-a-time is disabled" msgstr "" -#: opts.c:934 +#: opts.c:941 #, gcc-internal-format msgid "transactional memory is not supported with non-call exceptions" msgstr "" -#: opts.c:949 +#: opts.c:956 #, gcc-internal-format msgid "section anchors must be disabled when toplevel reorder is disabled" msgstr "" -#: opts.c:1004 config/darwin.c:3206 +#: opts.c:1011 config/darwin.c:3206 #, gcc-internal-format msgid "" "%<-freorder-blocks-and-partition%> does not work with exceptions on this " "architecture" msgstr "" -#: opts.c:1020 +#: opts.c:1027 #, gcc-internal-format msgid "" "%<-freorder-blocks-and-partition%> does not support unwind info on this " "architecture" msgstr "" -#: opts.c:1038 config/pa/pa.c:557 +#: opts.c:1045 config/pa/pa.c:557 #, gcc-internal-format msgid "%<-freorder-blocks-and-partition%> does not work on this architecture" msgstr "" -#: opts.c:1076 +#: opts.c:1083 #, gcc-internal-format msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin" msgstr "" -#: opts.c:1084 +#: opts.c:1091 #, gcc-internal-format msgid "%<-gsplit-dwarf%> is not supported with LTO, disabling" msgstr "" -#: opts.c:1098 +#: opts.c:1105 #, gcc-internal-format msgid "%<-fsplit-stack%> is not supported by this compiler configuration" msgstr "" -#: opts.c:1145 +#: opts.c:1152 #, gcc-internal-format msgid "" "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> " "or %<-fsanitize=kernel-address%>" msgstr "" -#: opts.c:1149 +#: opts.c:1156 #, gcc-internal-format msgid "" "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> " "or %<-fsanitize=kernel-address%>" msgstr "" -#: opts.c:1157 +#: opts.c:1164 #, gcc-internal-format msgid "" "%<-fsanitize=address%> is incompatible with %<-fsanitize=kernel-address%>" msgstr "" -#: opts.c:1164 +#: opts.c:1171 #, gcc-internal-format msgid "" "%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are incompatible " "with %<-fsanitize=thread%>" msgstr "" -#: opts.c:1170 +#: opts.c:1177 #, gcc-internal-format msgid "%<-fsanitize=leak%> is incompatible with %<-fsanitize=thread%>" msgstr "" -#: opts.c:1176 +#: opts.c:1183 #, gcc-internal-format msgid "%<-fsanitize-recover=%s%> is not supported" msgstr "" -#: opts.c:1202 +#: opts.c:1209 #, gcc-internal-format msgid "" "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option" msgstr "" -#: opts.c:1209 +#: opts.c:1216 #, gcc-internal-format msgid "transactional memory is not supported with %<-fsanitize=address%>" msgstr "" -#: opts.c:1212 +#: opts.c:1219 #, gcc-internal-format msgid "" "transactional memory is not supported with %<-fsanitize=kernel-address%>" msgstr "" -#: opts.c:1217 +#: opts.c:1224 #, gcc-internal-format msgid "live patching is not supported with LTO" msgstr "" -#: opts.c:1668 +#: opts.c:1680 #, gcc-internal-format msgid "unrecognized include_flags 0x%x passed to print_specific_help" msgstr "" -#: opts.c:1898 +#: opts.c:1910 #, gcc-internal-format msgid "%<-fsanitize=all%> option is not valid" msgstr "" -#: opts.c:1938 +#: opts.c:1950 #, gcc-internal-format msgid "" "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s; did you mean %qs?" msgstr "" -#: opts.c:1944 +#: opts.c:1956 #, gcc-internal-format msgid "unrecognized argument to %<-f%ssanitize%s=%> option: %q.*s" msgstr "" -#: opts.c:1979 +#: opts.c:1991 #, gcc-internal-format msgid "%<%s%> attribute directive ignored" msgstr "" -#: opts.c:2006 +#: opts.c:2018 #, gcc-internal-format msgid "invalid arguments for %<-falign-%s%> option: %qs" msgstr "" -#: opts.c:2028 +#: opts.c:2040 #, gcc-internal-format msgid "invalid number of arguments for %<-falign-%s%> option: %qs" msgstr "" -#: opts.c:2037 +#: opts.c:2049 #, gcc-internal-format msgid "%<-falign-%s%> is not between 0 and %d" msgstr "" -#: opts.c:2224 +#: opts.c:2174 #, gcc-internal-format msgid "--help argument %q.*s is ambiguous, please be more specific" msgstr "" -#: opts.c:2233 +#: opts.c:2183 #, gcc-internal-format msgid "unrecognized argument to --help= option: %q.*s" msgstr "" -#: opts.c:2496 +#: opts.c:2513 #, gcc-internal-format msgid "HSA has not been enabled during configuration" msgstr "" -#: opts.c:2508 +#: opts.c:2525 #, gcc-internal-format msgid "%<-foffload-abi%> option can be specified only for offload compiler" msgstr "" -#: opts.c:2516 +#: opts.c:2533 #, gcc-internal-format msgid "structure alignment must be a small power of two, not %wu" msgstr "" -#: opts.c:2602 +#: opts.c:2619 #, gcc-internal-format msgid "invalid arguments for %<-fpatchable_function_entry%>" msgstr "" -#: opts.c:2660 +#: opts.c:2677 #, gcc-internal-format msgid "unknown stack check parameter %qs" msgstr "" -#: opts.c:2688 +#: opts.c:2705 #, gcc-internal-format msgid "" "%<-gdwarf%s%> is ambiguous; use %<-gdwarf-%s%> for DWARF version or %<-gdwarf" "%> %<-g%s%> for debug level" msgstr "" -#: opts.c:2699 +#: opts.c:2716 #, gcc-internal-format msgid "dwarf version %wu is not supported" msgstr "" -#: opts.c:2823 +#: opts.c:2840 #, gcc-internal-format, gfc-internal-format msgid "%s: --param arguments should be of the form NAME=VALUE" msgstr "" -#: opts.c:2834 +#: opts.c:2851 #, gcc-internal-format msgid "invalid --param name %qs; did you mean %qs?" msgstr "" -#: opts.c:2837 +#: opts.c:2854 #, gcc-internal-format msgid "invalid --param name %qs" msgstr "" -#: opts.c:2845 +#: opts.c:2862 #, gcc-internal-format msgid "invalid --param value %qs" msgstr "" -#: opts.c:2967 +#: opts.c:2984 #, gcc-internal-format msgid "target system does not support debug output" msgstr "" -#: opts.c:2976 +#: opts.c:2993 #, gcc-internal-format msgid "debug format %qs conflicts with prior selection" msgstr "" -#: opts.c:2994 +#: opts.c:3011 #, gcc-internal-format msgid "unrecognized debug output level %qs" msgstr "" -#: opts.c:2996 +#: opts.c:3013 #, gcc-internal-format msgid "debug output level %qs is too high" msgstr "" -#: opts.c:3016 +#: opts.c:3033 #, gcc-internal-format msgid "getting core file size maximum limit: %m" msgstr "" -#: opts.c:3020 +#: opts.c:3037 #, gcc-internal-format msgid "setting core file size limit to maximum: %m" msgstr "" -#: opts.c:3065 +#: opts.c:3082 #, gcc-internal-format, gfc-internal-format msgid "unrecognized gcc debugging option: %c" msgstr "" -#: opts.c:3090 +#: opts.c:3111 #, gcc-internal-format -msgid "%<-Werror=%s%>: no option -%s" +msgid "%<-W%serror=%s%>: no option %<-%s%>; did you mean %<-%s%>?" msgstr "" -#: opts.c:3092 +#: opts.c:3115 #, gcc-internal-format -msgid "%<-Werror=%s%>: -%s is not an option that controls warnings" +msgid "%<-W%serror=%s%>: no option %<-%s%>" +msgstr "" + +#: opts.c:3119 +#, gcc-internal-format +msgid "%<-Werror=%s%>: %<-%s%> is not an option that controls warnings" msgstr "" #: params.c:156 @@ -24810,16 +24822,16 @@ msgstr "" msgid "target does not support atomic profile update, single mode is selected" msgstr "" -#: tree-ssa-ccp.c:3459 +#: tree-ssa-ccp.c:3488 msgid "%Gargument %u null where non-null expected" msgstr "" -#: tree-ssa-ccp.c:3464 +#: tree-ssa-ccp.c:3493 #, gcc-internal-format msgid "in a call to built-in function %qD" msgstr "" -#: tree-ssa-ccp.c:3468 +#: tree-ssa-ccp.c:3497 #, gcc-internal-format msgid "in a call to function %qD declared here" msgstr "" @@ -25980,7 +25992,7 @@ msgstr "" msgid "%qE attribute on function returning %" msgstr "" -#: c-family/c-attribs.c:1421 c-family/c-pragma.c:419 +#: c-family/c-attribs.c:1421 c-family/c-pragma.c:420 #, gcc-internal-format msgid "scalar_storage_order is not supported because endianness is not uniform" msgstr "" @@ -27007,64 +27019,64 @@ msgid "" "execute correctly, but incorrect speculation may not be be restricted" msgstr "" -#: c-family/c-common.c:7947 +#: c-family/c-common.c:7948 #, gcc-internal-format msgid "index value is out of bound" msgstr "" -#: c-family/c-common.c:7989 c-family/c-common.c:8038 c-family/c-common.c:8054 +#: c-family/c-common.c:7990 c-family/c-common.c:8039 c-family/c-common.c:8055 #, gcc-internal-format msgid "conversion of scalar %qT to vector %qT involves truncation" msgstr "" #. Reject arguments that are built-in functions with #. no library fallback. -#: c-family/c-common.c:8142 +#: c-family/c-common.c:8143 #, gcc-internal-format msgid "built-in function %qE must be directly called" msgstr "" -#: c-family/c-common.c:8162 +#: c-family/c-common.c:8163 #, gcc-internal-format msgid "size of array %qE is not a constant expression" msgstr "" -#: c-family/c-common.c:8165 +#: c-family/c-common.c:8166 #, gcc-internal-format msgid "size of array is not a constant expression" msgstr "" -#: c-family/c-common.c:8169 +#: c-family/c-common.c:8170 #, gcc-internal-format msgid "size %qE of array %qE is negative" msgstr "" -#: c-family/c-common.c:8172 +#: c-family/c-common.c:8173 #, gcc-internal-format msgid "size %qE of array is negative" msgstr "" -#: c-family/c-common.c:8177 +#: c-family/c-common.c:8178 #, gcc-internal-format msgid "size %qE of array %qE exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8180 +#: c-family/c-common.c:8181 #, gcc-internal-format msgid "size %qE of array exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8185 +#: c-family/c-common.c:8186 #, gcc-internal-format msgid "size of array %qE exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8188 +#: c-family/c-common.c:8189 #, gcc-internal-format msgid "size of array exceeds maximum object size %qE" msgstr "" -#: c-family/c-common.c:8259 +#: c-family/c-common.c:8260 #, gcc-internal-format msgid "" "environment variable SOURCE_DATE_EPOCH must expand to a non-negative integer " @@ -27617,7 +27629,7 @@ msgstr "" msgid "% modifier may not be specified on % construct" msgstr "" -#: c-family/c-omp.c:721 cp/semantics.c:8680 +#: c-family/c-omp.c:721 cp/semantics.c:8676 #, gcc-internal-format msgid "invalid type for iteration variable %qE" msgstr "" @@ -27632,17 +27644,17 @@ msgstr "" msgid "%qE is not initialized" msgstr "" -#: c-family/c-omp.c:763 cp/semantics.c:8569 +#: c-family/c-omp.c:763 cp/semantics.c:8565 #, gcc-internal-format msgid "missing controlling predicate" msgstr "" -#: c-family/c-omp.c:869 cp/semantics.c:8211 +#: c-family/c-omp.c:869 cp/semantics.c:8207 #, gcc-internal-format msgid "invalid controlling predicate" msgstr "" -#: c-family/c-omp.c:876 cp/semantics.c:8575 +#: c-family/c-omp.c:876 cp/semantics.c:8571 #, gcc-internal-format msgid "missing increment expression" msgstr "" @@ -27652,7 +27664,7 @@ msgstr "" msgid "increment is not constant 1 or -1 for != condition" msgstr "" -#: c-family/c-omp.c:1007 cp/semantics.c:8326 +#: c-family/c-omp.c:1007 cp/semantics.c:8322 #, gcc-internal-format msgid "invalid increment expression" msgstr "" @@ -27876,309 +27888,315 @@ msgstr "" msgid "%s: PCH file was invalid" msgstr "" -#: c-family/c-pragma.c:93 +#: c-family/c-pragma.c:94 #, gcc-internal-format msgid "#pragma pack (pop) encountered without matching #pragma pack (push)" msgstr "" -#: c-family/c-pragma.c:106 +#: c-family/c-pragma.c:107 #, gcc-internal-format msgid "" "#pragma pack(pop, %E) encountered without matching #pragma pack(push, %E)" msgstr "" -#: c-family/c-pragma.c:136 +#: c-family/c-pragma.c:137 #, gcc-internal-format msgid "missing %<(%> after %<#pragma pack%> - ignored" msgstr "" -#: c-family/c-pragma.c:147 c-family/c-pragma.c:179 +#: c-family/c-pragma.c:148 c-family/c-pragma.c:180 #, gcc-internal-format msgid "invalid constant in %<#pragma pack%> - ignored" msgstr "" -#: c-family/c-pragma.c:151 c-family/c-pragma.c:193 +#: c-family/c-pragma.c:152 c-family/c-pragma.c:194 #, gcc-internal-format msgid "malformed %<#pragma pack%> - ignored" msgstr "" -#: c-family/c-pragma.c:156 +#: c-family/c-pragma.c:157 #, gcc-internal-format msgid "malformed %<#pragma pack(push[, id][, ])%> - ignored" msgstr "" -#: c-family/c-pragma.c:158 +#: c-family/c-pragma.c:159 #, gcc-internal-format msgid "malformed %<#pragma pack(pop[, id])%> - ignored" msgstr "" -#: c-family/c-pragma.c:167 +#: c-family/c-pragma.c:168 #, gcc-internal-format msgid "unknown action %qE for %<#pragma pack%> - ignored" msgstr "" -#: c-family/c-pragma.c:196 +#: c-family/c-pragma.c:197 #, gcc-internal-format msgid "junk at end of %<#pragma pack%>" msgstr "" -#: c-family/c-pragma.c:199 +#: c-family/c-pragma.c:200 #, gcc-internal-format msgid "#pragma pack has no effect with %<-fpack-struct%> - ignored" msgstr "" -#: c-family/c-pragma.c:220 +#: c-family/c-pragma.c:221 #, gcc-internal-format, gfc-internal-format msgid "alignment must be a small power of two, not %d" msgstr "" -#: c-family/c-pragma.c:259 +#: c-family/c-pragma.c:260 #, gcc-internal-format msgid "" "applying #pragma weak %q+D after first use results in unspecified behavior" msgstr "" -#: c-family/c-pragma.c:356 c-family/c-pragma.c:361 +#: c-family/c-pragma.c:357 c-family/c-pragma.c:362 #, gcc-internal-format msgid "malformed #pragma weak, ignored" msgstr "" -#: c-family/c-pragma.c:365 +#: c-family/c-pragma.c:366 #, gcc-internal-format msgid "junk at end of %<#pragma weak%>" msgstr "" -#: c-family/c-pragma.c:371 +#: c-family/c-pragma.c:372 #, gcc-internal-format msgid "%<#pragma weak%> declaration of %q+D not allowed, ignored" msgstr "" -#: c-family/c-pragma.c:428 +#: c-family/c-pragma.c:429 #, gcc-internal-format msgid "%<#pragma scalar_storage_order%> is not supported for C++" msgstr "" -#: c-family/c-pragma.c:434 +#: c-family/c-pragma.c:435 #, gcc-internal-format msgid "" "missing [big-endian|little-endian|default] after %<#pragma " "scalar_storage_order%>" msgstr "" -#: c-family/c-pragma.c:443 +#: c-family/c-pragma.c:444 #, gcc-internal-format msgid "" "expected [big-endian|little-endian|default] after %<#pragma " "scalar_storage_order%>" msgstr "" -#: c-family/c-pragma.c:497 c-family/c-pragma.c:499 +#: c-family/c-pragma.c:498 c-family/c-pragma.c:500 #, gcc-internal-format msgid "malformed #pragma redefine_extname, ignored" msgstr "" -#: c-family/c-pragma.c:502 +#: c-family/c-pragma.c:503 #, gcc-internal-format msgid "junk at end of %<#pragma redefine_extname%>" msgstr "" -#: c-family/c-pragma.c:530 c-family/c-pragma.c:603 +#: c-family/c-pragma.c:531 c-family/c-pragma.c:604 #, gcc-internal-format msgid "#pragma redefine_extname ignored due to conflict with previous rename" msgstr "" -#: c-family/c-pragma.c:558 +#: c-family/c-pragma.c:559 #, gcc-internal-format msgid "" "#pragma redefine_extname ignored due to conflict with previous #pragma " "redefine_extname" msgstr "" -#: c-family/c-pragma.c:594 +#: c-family/c-pragma.c:595 #, gcc-internal-format msgid "asm declaration ignored due to conflict with previous rename" msgstr "" -#: c-family/c-pragma.c:625 +#: c-family/c-pragma.c:626 #, gcc-internal-format msgid "" "#pragma redefine_extname ignored due to conflict with __asm__ declaration" msgstr "" -#: c-family/c-pragma.c:686 +#: c-family/c-pragma.c:687 #, gcc-internal-format msgid "" "#pragma GCC visibility push() must specify default, internal, hidden or " "protected" msgstr "" -#: c-family/c-pragma.c:728 +#: c-family/c-pragma.c:729 #, gcc-internal-format msgid "#pragma GCC visibility must be followed by push or pop" msgstr "" -#: c-family/c-pragma.c:734 +#: c-family/c-pragma.c:735 #, gcc-internal-format msgid "no matching push for %<#pragma GCC visibility pop%>" msgstr "" -#: c-family/c-pragma.c:739 c-family/c-pragma.c:746 +#: c-family/c-pragma.c:740 c-family/c-pragma.c:747 #, gcc-internal-format msgid "missing %<(%> after %<#pragma GCC visibility push%> - ignored" msgstr "" -#: c-family/c-pragma.c:742 +#: c-family/c-pragma.c:743 #, gcc-internal-format msgid "malformed #pragma GCC visibility push" msgstr "" -#: c-family/c-pragma.c:750 +#: c-family/c-pragma.c:751 #, gcc-internal-format msgid "junk at end of %<#pragma GCC visibility%>" msgstr "" -#: c-family/c-pragma.c:762 +#: c-family/c-pragma.c:763 #, gcc-internal-format msgid "" "missing [error|warning|ignored|push|pop] after %<#pragma GCC diagnostic%>" msgstr "" -#: c-family/c-pragma.c:788 +#: c-family/c-pragma.c:789 #, gcc-internal-format msgid "" "expected [error|warning|ignored|push|pop] after %<#pragma GCC diagnostic%>" msgstr "" -#: c-family/c-pragma.c:797 +#: c-family/c-pragma.c:798 #, gcc-internal-format msgid "missing option after %<#pragma GCC diagnostic%> kind" msgstr "" -#: c-family/c-pragma.c:808 +#: c-family/c-pragma.c:812 +#, gcc-internal-format +msgid "" +"unknown option after %<#pragma GCC diagnostic%> kind; did you mean %<-%s%>" +msgstr "" + +#: c-family/c-pragma.c:816 #, gcc-internal-format msgid "unknown option after %<#pragma GCC diagnostic%> kind" msgstr "" -#: c-family/c-pragma.c:814 +#: c-family/c-pragma.c:823 #, gcc-internal-format msgid "%qs is not an option that controls warnings" msgstr "" -#: c-family/c-pragma.c:822 +#: c-family/c-pragma.c:831 #, gcc-internal-format msgid "option %qs is valid for %s but not for %s" msgstr "" -#: c-family/c-pragma.c:854 +#: c-family/c-pragma.c:863 #, gcc-internal-format msgid "#pragma GCC option is not allowed inside functions" msgstr "" -#: c-family/c-pragma.c:867 +#: c-family/c-pragma.c:876 #, gcc-internal-format msgid "%<#pragma GCC option%> is not a string" msgstr "" -#: c-family/c-pragma.c:894 +#: c-family/c-pragma.c:903 #, gcc-internal-format msgid "" "%<#pragma GCC target (string [,string]...)%> does not have a final %<)%>" msgstr "" -#: c-family/c-pragma.c:900 +#: c-family/c-pragma.c:909 #, gcc-internal-format msgid "#pragma GCC target string... is badly formed" msgstr "" -#: c-family/c-pragma.c:923 +#: c-family/c-pragma.c:932 #, gcc-internal-format msgid "#pragma GCC optimize is not allowed inside functions" msgstr "" -#: c-family/c-pragma.c:936 +#: c-family/c-pragma.c:945 #, gcc-internal-format msgid "%<#pragma GCC optimize%> is not a string or number" msgstr "" -#: c-family/c-pragma.c:962 +#: c-family/c-pragma.c:971 #, gcc-internal-format msgid "" "%<#pragma GCC optimize (string [,string]...)%> does not have a final %<)%>" msgstr "" -#: c-family/c-pragma.c:968 +#: c-family/c-pragma.c:977 #, gcc-internal-format msgid "#pragma GCC optimize string... is badly formed" msgstr "" -#: c-family/c-pragma.c:1009 +#: c-family/c-pragma.c:1018 #, gcc-internal-format msgid "junk at end of %<#pragma push_options%>" msgstr "" -#: c-family/c-pragma.c:1039 +#: c-family/c-pragma.c:1048 #, gcc-internal-format msgid "junk at end of %<#pragma pop_options%>" msgstr "" -#: c-family/c-pragma.c:1046 +#: c-family/c-pragma.c:1055 #, gcc-internal-format msgid "" "%<#pragma GCC pop_options%> without a corresponding %<#pragma GCC " "push_options%>" msgstr "" -#: c-family/c-pragma.c:1088 +#: c-family/c-pragma.c:1097 #, gcc-internal-format msgid "junk at end of %<#pragma reset_options%>" msgstr "" -#: c-family/c-pragma.c:1126 c-family/c-pragma.c:1133 +#: c-family/c-pragma.c:1135 c-family/c-pragma.c:1142 #, gcc-internal-format msgid "expected a string after %<#pragma message%>" msgstr "" -#: c-family/c-pragma.c:1128 +#: c-family/c-pragma.c:1137 #, gcc-internal-format msgid "malformed %<#pragma message%>, ignored" msgstr "" -#: c-family/c-pragma.c:1138 +#: c-family/c-pragma.c:1147 #, gcc-internal-format msgid "junk at end of %<#pragma message%>" msgstr "" -#: c-family/c-pragma.c:1141 +#: c-family/c-pragma.c:1150 #, gcc-internal-format, gfc-internal-format msgid "#pragma message: %s" msgstr "" -#: c-family/c-pragma.c:1178 +#: c-family/c-pragma.c:1187 #, gcc-internal-format msgid "invalid location for %, ignored" msgstr "" -#: c-family/c-pragma.c:1185 c-family/c-pragma.c:1199 +#: c-family/c-pragma.c:1194 c-family/c-pragma.c:1208 #, gcc-internal-format msgid "malformed %<#pragma %s%>, ignored" msgstr "" -#: c-family/c-pragma.c:1205 +#: c-family/c-pragma.c:1214 #, gcc-internal-format msgid "junk at end of %<#pragma %s%>" msgstr "" -#: c-family/c-pragma.c:1223 +#: c-family/c-pragma.c:1232 #, gcc-internal-format msgid "%<#pragma STDC FLOAT_CONST_DECIMAL64%> is not supported for C++" msgstr "" -#: c-family/c-pragma.c:1232 +#: c-family/c-pragma.c:1241 #, gcc-internal-format msgid "%<#pragma STDC FLOAT_CONST_DECIMAL64%> is not supported on this target" msgstr "" -#: c-family/c-pragma.c:1238 +#: c-family/c-pragma.c:1247 #, gcc-internal-format msgid "ISO C does not support %<#pragma STDC FLOAT_CONST_DECIMAL64%>" msgstr "" @@ -29655,7 +29673,7 @@ msgid "%qs feature modifier is incompatible with the use of vector types" msgstr "" #: config/aarch64/aarch64.c:3919 config/aarch64/aarch64.c:3965 -#: config/aarch64/aarch64.c:4062 config/aarch64/aarch64.c:13445 +#: config/aarch64/aarch64.c:4062 config/aarch64/aarch64.c:13441 #: config/arm/arm.c:6720 config/arm/arm.c:6750 config/arm/arm.c:27090 #, gcc-internal-format msgid "parameter passing for argument of type %qT changed in GCC 9.1" @@ -29846,80 +29864,79 @@ msgstr "" msgid "missing value in % pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:12532 config/aarch64/aarch64.c:12709 +#: config/aarch64/aarch64.c:12532 config/aarch64/aarch64.c:12705 #, gcc-internal-format msgid "malformed % pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:12580 +#: config/aarch64/aarch64.c:12576 #, gcc-internal-format msgid "pragma or attribute % does not accept an argument" msgstr "" -#: config/aarch64/aarch64.c:12588 +#: config/aarch64/aarch64.c:12584 #, gcc-internal-format msgid "pragma or attribute % does not allow a negated form" msgstr "" -#: config/aarch64/aarch64.c:12642 +#: config/aarch64/aarch64.c:12638 #, gcc-internal-format msgid "pragma or attribute % is not valid" msgstr "" -#: config/aarch64/aarch64.c:12699 config/arm/arm.c:30870 -#: config/i386/i386.c:5319 config/rs6000/rs6000.c:36763 -#: config/s390/s390.c:15409 +#: config/aarch64/aarch64.c:12695 config/arm/arm.c:30870 +#: config/rs6000/rs6000.c:36800 config/s390/s390.c:15409 #, gcc-internal-format msgid "attribute % argument not a string" msgstr "" -#: config/aarch64/aarch64.c:12726 +#: config/aarch64/aarch64.c:12722 #, gcc-internal-format msgid "pragma or attribute % is not valid" msgstr "" -#: config/aarch64/aarch64.c:12735 +#: config/aarch64/aarch64.c:12731 #, gcc-internal-format msgid "malformed % pragma or attribute" msgstr "" -#: config/aarch64/aarch64.c:14809 +#: config/aarch64/aarch64.c:14805 #, gcc-internal-format msgid "%Klane %wd out of range %wd - %wd" msgstr "" -#: config/aarch64/aarch64.c:14811 +#: config/aarch64/aarch64.c:14807 #, gcc-internal-format msgid "lane %wd out of range %wd - %wd" msgstr "" -#: config/aarch64/aarch64.c:18646 config/i386/i386.c:50576 -#: config/i386/i386.c:50703 +#: config/aarch64/aarch64.c:18642 config/i386/i386.c:50556 +#: config/i386/i386.c:50683 #, gcc-internal-format, gfc-internal-format msgid "unsupported simdlen %d" msgstr "" -#: config/aarch64/aarch64.c:18656 config/aarch64/aarch64.c:18677 +#: config/aarch64/aarch64.c:18652 config/aarch64/aarch64.c:18673 #, gcc-internal-format msgid "GCC does not currently support mixed size types for % functions" msgstr "" -#: config/aarch64/aarch64.c:18660 +#: config/aarch64/aarch64.c:18656 #, gcc-internal-format msgid "GCC does not currently support return type %qT for % functions" msgstr "" -#: config/aarch64/aarch64.c:18664 +#: config/aarch64/aarch64.c:18660 #, gcc-internal-format msgid "unsupported return type %qT for % functions" msgstr "" -#: config/aarch64/aarch64.c:18681 +#: config/aarch64/aarch64.c:18677 #, gcc-internal-format msgid "GCC does not currently support argument type %qT for % functions" msgstr "" -#: config/aarch64/aarch64.c:18703 +#: config/aarch64/aarch64.c:18699 #, gcc-internal-format msgid "GCC does not currently support simdlen %d for type %qT" msgstr "" @@ -30107,10 +30124,10 @@ msgstr "" #: config/bfin/bfin.c:4708 config/bfin/bfin.c:4769 config/bfin/bfin.c:4798 #: config/csky/csky.c:6020 config/csky/csky.c:6048 #: config/epiphany/epiphany.c:491 config/gcn/gcn.c:312 -#: config/h8300/h8300.c:5459 config/i386/i386.c:6333 config/i386/i386.c:12170 -#: config/i386/i386.c:41176 config/i386/i386.c:41226 config/i386/i386.c:41296 +#: config/h8300/h8300.c:5459 config/i386/i386.c:6344 config/i386/i386.c:12181 +#: config/i386/i386.c:41156 config/i386/i386.c:41206 config/i386/i386.c:41276 #: config/m68k/m68k.c:788 config/mcore/mcore.c:3073 config/nvptx/nvptx.c:5059 -#: config/riscv/riscv.c:2824 config/rl78/rl78.c:820 config/rl78/rl78.c:889 +#: config/riscv/riscv.c:2836 config/rl78/rl78.c:820 config/rl78/rl78.c:889 #: config/rs6000/rs6000.c:32872 config/rx/rx.c:2721 config/rx/rx.c:2747 #: config/s390/s390.c:1049 config/s390/s390.c:1136 config/sh/sh.c:8444 #: config/sh/sh.c:8462 config/sh/sh.c:8486 config/sh/sh.c:8557 @@ -30849,17 +30866,17 @@ msgstr "" msgid "%<-fPIE%> is not supported" msgstr "" -#: config/avr/avr.c:1047 config/avr/avr.c:1052 config/riscv/riscv.c:4815 +#: config/avr/avr.c:1047 config/avr/avr.c:1052 config/riscv/riscv.c:4827 #, gcc-internal-format msgid "function attributes %qs and %qs are mutually exclusive" msgstr "" -#: config/avr/avr.c:1073 config/riscv/riscv.c:4827 +#: config/avr/avr.c:1073 config/riscv/riscv.c:4839 #, gcc-internal-format msgid "%qs function cannot have arguments" msgstr "" -#: config/avr/avr.c:1076 config/riscv/riscv.c:4824 +#: config/avr/avr.c:1076 config/riscv/riscv.c:4836 #, gcc-internal-format msgid "%qs function cannot return a value" msgstr "" @@ -31524,61 +31541,61 @@ msgstr "" msgid "can%'t set position in PCH file: %m" msgstr "" -#: config/i386/i386.c:3354 +#: config/i386/i386.c:3355 #, gcc-internal-format msgid "wrong argument %qs to option %qs" msgstr "" -#: config/i386/i386.c:3360 +#: config/i386/i386.c:3361 #, gcc-internal-format msgid "size ranges of option %qs should be increasing" msgstr "" -#: config/i386/i386.c:3370 +#: config/i386/i386.c:3371 #, gcc-internal-format msgid "wrong strategy name %qs specified for option %qs" msgstr "" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386.c:3396 +#: config/i386/i386.c:3397 #, gcc-internal-format msgid "" "strategy name %qs specified for option %qs not supported for 32-bit code" msgstr "" -#: config/i386/i386.c:3409 +#: config/i386/i386.c:3410 #, gcc-internal-format msgid "unknown alignment %qs specified for option %qs" msgstr "" -#: config/i386/i386.c:3419 +#: config/i386/i386.c:3420 #, gcc-internal-format msgid "the max value for the last size range should be -1 for option %qs" msgstr "" -#: config/i386/i386.c:3426 +#: config/i386/i386.c:3427 #, gcc-internal-format msgid "too many size ranges specified in option %qs" msgstr "" -#: config/i386/i386.c:3479 +#: config/i386/i386.c:3480 #, gcc-internal-format msgid "unknown parameter to option %<-mtune-ctrl%>: %s" msgstr "" -#: config/i386/i386.c:3599 +#: config/i386/i386.c:3600 #, gcc-internal-format msgid "Intel MCU psABI isn%'t supported in %s mode" msgstr "" -#: config/i386/i386.c:3648 +#: config/i386/i386.c:3649 #, gcc-internal-format msgid "" "%<-mtune=x86-64%> is deprecated; use %<-mtune=k8%> or %<-mtune=generic%> " "instead as appropriate" msgstr "" -#: config/i386/i386.c:3650 +#: config/i386/i386.c:3651 #, gcc-internal-format msgid "" "% is deprecated; use % or " @@ -31586,516 +31603,525 @@ msgid "" msgstr "" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386.c:3676 +#: config/i386/i386.c:3677 #, gcc-internal-format msgid "%<-mstringop-strategy=rep_8byte%> not supported for 32-bit code" msgstr "" -#: config/i386/i386.c:3693 +#: config/i386/i386.c:3694 #, gcc-internal-format msgid "address mode %qs not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:3705 +#: config/i386/i386.c:3706 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with X32 ABI" msgstr "" -#: config/i386/i386.c:3709 +#: config/i386/i386.c:3710 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with %<-fsanitize=address%>" msgstr "" -#: config/i386/i386.c:3711 +#: config/i386/i386.c:3712 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with %<-fsanitize=kernel-address%>" msgstr "" -#: config/i386/i386.c:3713 +#: config/i386/i386.c:3714 #, gcc-internal-format msgid "%<-mabi=ms%> not supported with %<-fsanitize=thread%>" msgstr "" -#: config/i386/i386.c:3730 config/i386/i386.c:3739 config/i386/i386.c:3751 -#: config/i386/i386.c:3762 config/i386/i386.c:3773 +#: config/i386/i386.c:3731 config/i386/i386.c:3740 config/i386/i386.c:3752 +#: config/i386/i386.c:3763 config/i386/i386.c:3774 #, gcc-internal-format msgid "code model %qs not supported in the %s bit mode" msgstr "" -#: config/i386/i386.c:3742 config/i386/i386.c:3754 +#: config/i386/i386.c:3743 config/i386/i386.c:3755 #, gcc-internal-format msgid "code model %qs not supported in x32 mode" msgstr "" -#: config/i386/i386.c:3760 config/i386/i386.c:3769 config/i386/i386.c:5090 +#: config/i386/i386.c:3761 config/i386/i386.c:3770 config/i386/i386.c:5091 #, gcc-internal-format, gfc-internal-format msgid "code model %s does not support PIC mode" msgstr "" -#: config/i386/i386.c:3797 +#: config/i386/i386.c:3798 #, gcc-internal-format msgid "%<-masm=intel%> not supported in this configuration" msgstr "" -#: config/i386/i386.c:3802 +#: config/i386/i386.c:3803 #, gcc-internal-format, gfc-internal-format msgid "%i-bit mode not compiled in" msgstr "" -#: config/i386/i386.c:3811 +#: config/i386/i386.c:3812 #, gcc-internal-format msgid "% CPU can be used only for %<-mtune=%> switch" msgstr "" -#: config/i386/i386.c:3813 +#: config/i386/i386.c:3814 #, gcc-internal-format msgid "% CPU can be used only for % attribute" msgstr "" -#: config/i386/i386.c:3820 +#: config/i386/i386.c:3821 #, gcc-internal-format msgid "% CPU can be used only for %<-mtune=%> switch" msgstr "" -#: config/i386/i386.c:3822 +#: config/i386/i386.c:3823 #, gcc-internal-format msgid "% CPU can be used only for % attribute" msgstr "" -#: config/i386/i386.c:3830 config/i386/i386.c:4138 +#: config/i386/i386.c:3831 config/i386/i386.c:4139 #, gcc-internal-format msgid "CPU you selected does not support x86-64 instruction set" msgstr "" -#: config/i386/i386.c:4078 +#: config/i386/i386.c:4079 #, gcc-internal-format msgid "bad value (%qs) for %<-march=%> switch" msgstr "" -#: config/i386/i386.c:4079 +#: config/i386/i386.c:4080 #, gcc-internal-format msgid "bad value (%qs) for % attribute" msgstr "" -#: config/i386/i386.c:4101 +#: config/i386/i386.c:4102 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4103 +#: config/i386/i386.c:4104 #, gcc-internal-format msgid "" "valid arguments to % attribute are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4108 +#: config/i386/i386.c:4109 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s" msgstr "" -#: config/i386/i386.c:4109 +#: config/i386/i386.c:4110 #, gcc-internal-format msgid "valid arguments to % attribute are: %s" msgstr "" -#: config/i386/i386.c:4157 +#: config/i386/i386.c:4158 #, gcc-internal-format msgid "bad value (%qs) for %<-mtune=%> switch" msgstr "" -#: config/i386/i386.c:4158 +#: config/i386/i386.c:4159 #, gcc-internal-format msgid "bad value (%qs) for % attribute" msgstr "" -#: config/i386/i386.c:4178 +#: config/i386/i386.c:4179 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4180 +#: config/i386/i386.c:4181 #, gcc-internal-format msgid "" "valid arguments to % attribute are: %s; did you mean %qs?" msgstr "" -#: config/i386/i386.c:4185 +#: config/i386/i386.c:4186 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s" msgstr "" -#: config/i386/i386.c:4186 +#: config/i386/i386.c:4187 #, gcc-internal-format msgid "valid arguments to % attribute are: %s" msgstr "" -#: config/i386/i386.c:4252 +#: config/i386/i386.c:4253 #, gcc-internal-format msgid "%<-mregparm%> is ignored in 64-bit mode" msgstr "" -#: config/i386/i386.c:4254 +#: config/i386/i386.c:4255 #, gcc-internal-format msgid "%<-mregparm%> is ignored for Intel MCU psABI" msgstr "" -#: config/i386/i386.c:4257 +#: config/i386/i386.c:4258 #, gcc-internal-format msgid "%<-mregparm=%d%> is not between 0 and %d" msgstr "" -#: config/i386/i386.c:4285 +#: config/i386/i386.c:4286 #, gcc-internal-format msgid "%<-mrtd%> is ignored in 64bit mode" msgstr "" -#: config/i386/i386.c:4286 +#: config/i386/i386.c:4287 #, gcc-internal-format msgid "% is ignored in 64bit mode" msgstr "" -#: config/i386/i386.c:4365 +#: config/i386/i386.c:4366 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary%> is not supported for this target" msgstr "" -#: config/i386/i386.c:4368 +#: config/i386/i386.c:4369 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary=%d%> is not between %d and %d" msgstr "" -#: config/i386/i386.c:4391 +#: config/i386/i386.c:4392 #, gcc-internal-format msgid "%<-mincoming-stack-boundary=%d%> is not between %d and 12" msgstr "" -#: config/i386/i386.c:4404 +#: config/i386/i386.c:4405 #, gcc-internal-format msgid "%<-mnop-mcount%> is not compatible with this target" msgstr "" -#: config/i386/i386.c:4407 +#: config/i386/i386.c:4408 #, gcc-internal-format msgid "%<-mnop-mcount%> is not implemented for %<-fPIC%>" msgstr "" -#: config/i386/i386.c:4413 +#: config/i386/i386.c:4414 #, gcc-internal-format msgid "%<-msseregparm%> used without SSE enabled" msgstr "" -#: config/i386/i386.c:4414 +#: config/i386/i386.c:4415 #, gcc-internal-format msgid "% used without SSE enabled" msgstr "" -#: config/i386/i386.c:4424 +#: config/i386/i386.c:4425 #, gcc-internal-format msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "" -#: config/i386/i386.c:4431 +#: config/i386/i386.c:4432 #, gcc-internal-format msgid "387 instruction set disabled, using SSE arithmetics" msgstr "" -#: config/i386/i386.c:4481 +#: config/i386/i386.c:4482 #, gcc-internal-format msgid "stack probing requires %<-maccumulate-outgoing-args%> for correctness" msgstr "" -#: config/i386/i386.c:4483 +#: config/i386/i386.c:4484 #, gcc-internal-format msgid "" "stack probing requires % for " "correctness" msgstr "" -#: config/i386/i386.c:4497 +#: config/i386/i386.c:4498 #, gcc-internal-format msgid "fixed ebp register requires %<-maccumulate-outgoing-args%>" msgstr "" -#: config/i386/i386.c:4499 +#: config/i386/i386.c:4500 #, gcc-internal-format msgid "fixed ebp register requires %" msgstr "" -#: config/i386/i386.c:4609 +#: config/i386/i386.c:4610 #, gcc-internal-format msgid "%<-mfentry%> isn%'t supported for 32-bit in combination with %<-fpic%>" msgstr "" -#: config/i386/i386.c:4612 +#: config/i386/i386.c:4613 #, gcc-internal-format msgid "%<-mno-fentry%> isn%'t compatible with SEH" msgstr "" -#: config/i386/i386.c:4616 +#: config/i386/i386.c:4617 #, gcc-internal-format msgid "%<-mcall-ms2sysv-xlogues%> isn%'t currently supported with SEH" msgstr "" -#: config/i386/i386.c:4681 +#: config/i386/i386.c:4682 #, gcc-internal-format msgid "unknown option for %<-mrecip=%s%>" msgstr "" -#: config/i386/i386.c:4740 +#: config/i386/i386.c:4741 #, gcc-internal-format msgid "%qs is not a valid number in %<-mstack-protector-guard-offset=%>" msgstr "" -#: config/i386/i386.c:4745 +#: config/i386/i386.c:4746 #, gcc-internal-format msgid "%qs is not a valid offset in %<-mstack-protector-guard-offset=%>" msgstr "" -#: config/i386/i386.c:4773 +#: config/i386/i386.c:4774 #, gcc-internal-format msgid "%qs is not a valid base register in %<-mstack-protector-guard-reg=%>" msgstr "" -#: config/i386/i386.c:5385 config/i386/i386.c:5432 config/s390/s390.c:15475 -#: config/s390/s390.c:15525 config/s390/s390.c:15542 -#, gcc-internal-format, gfc-internal-format -msgid "attribute(target(\"%s\")) is unknown" +#: config/i386/i386.c:5325 +#, gcc-internal-format +msgid "attribute %qs argument is not a string" msgstr "" -#: config/i386/i386.c:5413 -#, gcc-internal-format, gfc-internal-format -msgid "option(\"%s\") was already specified" +#: config/i386/i386.c:5389 +#, gcc-internal-format +msgid "attribute %qs argument %qs is unknown" +msgstr "" + +#: config/i386/i386.c:5418 +#, gcc-internal-format +msgid "attribute value %qs was already specified in %qs attribute" +msgstr "" + +#: config/i386/i386.c:5438 +#, gcc-internal-format +msgid "attribute value %qs is unknown in %qs attribute" msgstr "" -#: config/i386/i386.c:5717 +#: config/i386/i386.c:5728 #, gcc-internal-format msgid "interrupt and naked attributes are not compatible" msgstr "" -#: config/i386/i386.c:5732 +#: config/i386/i386.c:5743 #, gcc-internal-format msgid "only DWARF debug format is supported for interrupt service routine" msgstr "" -#: config/i386/i386.c:5781 +#: config/i386/i386.c:5792 #, gcc-internal-format msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible" msgstr "" -#: config/i386/i386.c:5789 +#: config/i386/i386.c:5800 #, gcc-internal-format msgid "%<-mindirect-branch%> and %<-fcf-protection%> are not compatible" msgstr "" -#: config/i386/i386.c:5824 +#: config/i386/i386.c:5835 #, gcc-internal-format msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible" msgstr "" -#: config/i386/i386.c:5832 +#: config/i386/i386.c:5843 #, gcc-internal-format msgid "%<-mfunction-return%> and %<-fcf-protection%> are not compatible" msgstr "" -#: config/i386/i386.c:5926 +#: config/i386/i386.c:5937 #, gcc-internal-format msgid "%s instructions aren%'t allowed in an exception service routine" msgstr "" -#: config/i386/i386.c:5928 +#: config/i386/i386.c:5939 #, gcc-internal-format msgid "%s instructions aren%'t allowed in an interrupt service routine" msgstr "" -#: config/i386/i386.c:5932 +#: config/i386/i386.c:5943 #, gcc-internal-format msgid "" "%s instructions aren%'t allowed in a function with the " "% attribute" msgstr "" -#: config/i386/i386.c:6346 config/i386/i386.c:6397 +#: config/i386/i386.c:6357 config/i386/i386.c:6408 #, gcc-internal-format msgid "fastcall and regparm attributes are not compatible" msgstr "" -#: config/i386/i386.c:6351 +#: config/i386/i386.c:6362 #, gcc-internal-format msgid "regparam and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6358 config/i386/i386.c:41196 +#: config/i386/i386.c:6369 config/i386/i386.c:41176 #, gcc-internal-format msgid "%qE attribute requires an integer constant argument" msgstr "" -#: config/i386/i386.c:6364 +#: config/i386/i386.c:6375 #, gcc-internal-format msgid "argument to %qE attribute larger than %d" msgstr "" -#: config/i386/i386.c:6389 config/i386/i386.c:6432 +#: config/i386/i386.c:6400 config/i386/i386.c:6443 #, gcc-internal-format msgid "fastcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386.c:6393 +#: config/i386/i386.c:6404 #, gcc-internal-format msgid "fastcall and stdcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6401 config/i386/i386.c:6450 +#: config/i386/i386.c:6412 config/i386/i386.c:6461 #, gcc-internal-format msgid "fastcall and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6411 config/i386/i386.c:6428 +#: config/i386/i386.c:6422 config/i386/i386.c:6439 #, gcc-internal-format msgid "stdcall and cdecl attributes are not compatible" msgstr "" -#: config/i386/i386.c:6415 +#: config/i386/i386.c:6426 #, gcc-internal-format msgid "stdcall and fastcall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6419 config/i386/i386.c:6446 +#: config/i386/i386.c:6430 config/i386/i386.c:6457 #, gcc-internal-format msgid "stdcall and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6436 config/i386/i386.c:6454 +#: config/i386/i386.c:6447 config/i386/i386.c:6465 #, gcc-internal-format msgid "cdecl and thiscall attributes are not compatible" msgstr "" -#: config/i386/i386.c:6442 +#: config/i386/i386.c:6453 #, gcc-internal-format msgid "%qE attribute is used for non-class method" msgstr "" -#: config/i386/i386.c:6686 +#: config/i386/i386.c:6697 #, gcc-internal-format msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:6689 +#: config/i386/i386.c:6700 #, gcc-internal-format msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:7004 +#: config/i386/i386.c:7015 #, gcc-internal-format msgid "X32 does not support ms_abi attribute" msgstr "" -#: config/i386/i386.c:7038 +#: config/i386/i386.c:7049 #, gcc-internal-format msgid "ms_hook_prologue is not compatible with nested function" msgstr "" -#: config/i386/i386.c:7377 +#: config/i386/i386.c:7388 #, gcc-internal-format msgid "AVX512F vector argument without AVX512F enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7383 +#: config/i386/i386.c:7394 #, gcc-internal-format msgid "AVX512F vector return without AVX512F enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7397 +#: config/i386/i386.c:7408 #, gcc-internal-format msgid "AVX vector argument without AVX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7403 +#: config/i386/i386.c:7414 #, gcc-internal-format msgid "AVX vector return without AVX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7419 +#: config/i386/i386.c:7430 #, gcc-internal-format msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7425 +#: config/i386/i386.c:7436 #, gcc-internal-format msgid "SSE vector return without SSE enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7441 +#: config/i386/i386.c:7452 #, gcc-internal-format msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7447 +#: config/i386/i386.c:7458 #, gcc-internal-format msgid "MMX vector return without MMX enabled changes the ABI" msgstr "" -#: config/i386/i386.c:7628 +#: config/i386/i386.c:7639 #, gcc-internal-format msgid "" "the ABI of passing struct with a flexible array member has changed in GCC 4.4" msgstr "" -#: config/i386/i386.c:7745 +#: config/i386/i386.c:7756 #, gcc-internal-format msgid "the ABI of passing union with long double has changed in GCC 4.4" msgstr "" -#: config/i386/i386.c:7863 +#: config/i386/i386.c:7874 #, gcc-internal-format msgid "" "the ABI of passing structure with complex float member has changed in GCC 4.4" msgstr "" -#: config/i386/i386.c:8026 +#: config/i386/i386.c:8037 #, gcc-internal-format msgid "SSE register return with SSE disabled" msgstr "" -#: config/i386/i386.c:8032 +#: config/i386/i386.c:8043 #, gcc-internal-format msgid "SSE register argument with SSE disabled" msgstr "" -#: config/i386/i386.c:8048 +#: config/i386/i386.c:8059 #, gcc-internal-format msgid "x87 register return with x87 disabled" msgstr "" -#: config/i386/i386.c:8358 config/i386/i386.c:8598 config/i386/i386.c:9098 +#: config/i386/i386.c:8369 config/i386/i386.c:8609 config/i386/i386.c:9109 #, gcc-internal-format msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled" msgstr "" -#: config/i386/i386.c:8360 config/i386/i386.c:8600 config/i386/i386.c:9100 +#: config/i386/i386.c:8371 config/i386/i386.c:8611 config/i386/i386.c:9111 #, gcc-internal-format msgid "" "this is a GCC bug that can be worked around by adding attribute used to " "function called" msgstr "" -#: config/i386/i386.c:9004 +#: config/i386/i386.c:9015 #, gcc-internal-format, gfc-internal-format msgid "" "the ABI for passing parameters with %d-byte alignment has changed in GCC 4.6" msgstr "" -#: config/i386/i386.c:11286 +#: config/i386/i386.c:11297 #, gcc-internal-format msgid "%<-mcall-ms2sysv-xlogues%> is not compatible with %s" msgstr "" -#: config/i386/i386.c:13285 +#: config/i386/i386.c:13296 #, gcc-internal-format msgid "" "ms_hook_prologue attribute isn%'t compatible with %<-mfentry%> for 32-bit" msgstr "" -#: config/i386/i386.c:13375 +#: config/i386/i386.c:13386 #, gcc-internal-format msgid "" "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service " @@ -32103,12 +32129,12 @@ msgid "" "return." msgstr "" -#: config/i386/i386.c:14665 +#: config/i386/i386.c:14676 #, gcc-internal-format msgid "%<-fsplit-stack%> does not support fastcall with nested function" msgstr "" -#: config/i386/i386.c:14685 +#: config/i386/i386.c:14696 #, gcc-internal-format msgid "" "%<-fsplit-stack%> does not support 2 register parameters for a nested " @@ -32117,302 +32143,302 @@ msgstr "" #. FIXME: We could make this work by pushing a register #. around the addition and comparison. -#: config/i386/i386.c:14696 +#: config/i386/i386.c:14707 #, gcc-internal-format msgid "%<-fsplit-stack%> does not support 3 register parameters" msgstr "" -#: config/i386/i386.c:17636 +#: config/i386/i386.c:17647 #, gcc-internal-format msgid "% modifier on non-integer register" msgstr "" -#: config/i386/i386.c:17647 config/i386/i386.c:17661 +#: config/i386/i386.c:17658 config/i386/i386.c:17672 #, gcc-internal-format msgid "unsupported size for integer register" msgstr "" -#: config/i386/i386.c:17693 +#: config/i386/i386.c:17704 #, gcc-internal-format msgid "extended registers have no high halves" msgstr "" -#: config/i386/i386.c:17708 +#: config/i386/i386.c:17719 #, gcc-internal-format msgid "unsupported operand size for extended register" msgstr "" -#: config/i386/i386.c:17900 +#: config/i386/i386.c:17911 #, gcc-internal-format msgid "non-integer operand used with operand code %" msgstr "" -#: config/i386/i386.c:28372 +#: config/i386/i386.c:28349 #, gcc-internal-format msgid "interrupt service routine can%'t be called directly" msgstr "" -#: config/i386/i386.c:29751 +#: config/i386/i386.c:29728 #, gcc-internal-format msgid "" "empty class %qT parameter passing ABI changes in %<-fabi-version=12%> (GCC 8)" msgstr "" -#: config/i386/i386.c:32250 +#: config/i386/i386.c:32228 #, gcc-internal-format msgid "no dispatcher found for the versioning attributes" msgstr "" -#: config/i386/i386.c:32300 +#: config/i386/i386.c:32278 #, gcc-internal-format msgid "ISA %qs is not supported in % attribute, use % syntax" msgstr "" -#: config/i386/i386.c:32311 +#: config/i386/i386.c:32289 #, gcc-internal-format, gfc-internal-format msgid "no dispatcher found for the versioning attributes: %s" msgstr "" -#: config/i386/i386.c:32473 +#: config/i386/i386.c:32451 #, gcc-internal-format msgid "" "function versions cannot be marked as gnu_inline, bodies have to be generated" msgstr "" -#: config/i386/i386.c:32478 config/i386/i386.c:32755 +#: config/i386/i386.c:32456 config/i386/i386.c:32733 #, gcc-internal-format msgid "virtual function multiversioning not supported" msgstr "" -#: config/i386/i386.c:32611 config/rs6000/rs6000.c:37466 +#: config/i386/i386.c:32589 config/rs6000/rs6000.c:37503 #, gcc-internal-format msgid "multiversioning needs ifunc which is not supported on this target" msgstr "" -#: config/i386/i386.c:32853 +#: config/i386/i386.c:32831 #, gcc-internal-format msgid "parameter to builtin must be a string constant or literal" msgstr "" -#: config/i386/i386.c:32878 config/i386/i386.c:32928 +#: config/i386/i386.c:32856 config/i386/i386.c:32906 #, gcc-internal-format, gfc-internal-format msgid "parameter to builtin not valid: %s" msgstr "" -#: config/i386/i386.c:34158 config/i386/i386.c:35598 +#: config/i386/i386.c:34136 config/i386/i386.c:35576 #, gcc-internal-format msgid "the last argument must be a 2-bit immediate" msgstr "" -#: config/i386/i386.c:34553 +#: config/i386/i386.c:34531 #, gcc-internal-format msgid "the fifth argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:34648 +#: config/i386/i386.c:34626 #, gcc-internal-format msgid "the third argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:35529 +#: config/i386/i386.c:35507 #, gcc-internal-format msgid "the last argument must be an 1-bit immediate" msgstr "" -#: config/i386/i386.c:35544 +#: config/i386/i386.c:35522 #, gcc-internal-format msgid "the last argument must be a 3-bit immediate" msgstr "" -#: config/i386/i386.c:35577 +#: config/i386/i386.c:35555 #, gcc-internal-format msgid "the last argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386.c:35617 +#: config/i386/i386.c:35595 #, gcc-internal-format msgid "the last argument must be a 1-bit immediate" msgstr "" -#: config/i386/i386.c:35630 +#: config/i386/i386.c:35608 #, gcc-internal-format msgid "the last argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386.c:35640 +#: config/i386/i386.c:35618 #, gcc-internal-format msgid "the next to last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:35645 config/i386/i386.c:36432 +#: config/i386/i386.c:35623 config/i386/i386.c:36410 #, gcc-internal-format msgid "the last argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:35779 +#: config/i386/i386.c:35757 #, gcc-internal-format msgid "the third argument must be comparison constant" msgstr "" -#: config/i386/i386.c:35784 +#: config/i386/i386.c:35762 #, gcc-internal-format msgid "incorrect comparison mode" msgstr "" -#: config/i386/i386.c:35790 config/i386/i386.c:35997 +#: config/i386/i386.c:35768 config/i386/i386.c:35975 #, gcc-internal-format msgid "incorrect rounding operand" msgstr "" -#: config/i386/i386.c:35979 +#: config/i386/i386.c:35957 #, gcc-internal-format msgid "the immediate argument must be a 4-bit immediate" msgstr "" -#: config/i386/i386.c:35985 +#: config/i386/i386.c:35963 #, gcc-internal-format msgid "the immediate argument must be a 5-bit immediate" msgstr "" -#: config/i386/i386.c:35988 +#: config/i386/i386.c:35966 #, gcc-internal-format msgid "the immediate argument must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:36430 +#: config/i386/i386.c:36408 #, gcc-internal-format msgid "the last argument must be a 32-bit immediate" msgstr "" -#: config/i386/i386.c:36512 config/rs6000/rs6000.c:14703 +#: config/i386/i386.c:36490 config/rs6000/rs6000.c:14703 #, gcc-internal-format msgid "selector must be an integer constant in the range 0..%wi" msgstr "" -#: config/i386/i386.c:36697 +#: config/i386/i386.c:36675 #, gcc-internal-format msgid "%qE needs unknown isa option" msgstr "" -#: config/i386/i386.c:36701 +#: config/i386/i386.c:36679 #, gcc-internal-format msgid "%qE needs isa option %s" msgstr "" -#: config/i386/i386.c:37280 +#: config/i386/i386.c:37258 #, gcc-internal-format msgid "last argument must be an immediate" msgstr "" -#: config/i386/i386.c:38036 config/i386/i386.c:38248 +#: config/i386/i386.c:38014 config/i386/i386.c:38226 #, gcc-internal-format msgid "the last argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386.c:38301 +#: config/i386/i386.c:38279 #, gcc-internal-format msgid "the forth argument must be scale 1, 2, 4, 8" msgstr "" -#: config/i386/i386.c:38307 +#: config/i386/i386.c:38285 #, gcc-internal-format msgid "incorrect hint operand" msgstr "" -#: config/i386/i386.c:38326 +#: config/i386/i386.c:38304 #, gcc-internal-format msgid "the argument to % intrinsic must be an 8-bit immediate" msgstr "" -#: config/i386/i386.c:41183 +#: config/i386/i386.c:41163 #, gcc-internal-format msgid "%qE attribute only available for 32-bit" msgstr "" -#: config/i386/i386.c:41204 +#: config/i386/i386.c:41184 #, gcc-internal-format msgid "argument to %qE attribute is neither zero, nor one" msgstr "" -#: config/i386/i386.c:41237 config/i386/i386.c:41246 +#: config/i386/i386.c:41217 config/i386/i386.c:41226 #, gcc-internal-format msgid "ms_abi and sysv_abi attributes are not compatible" msgstr "" -#: config/i386/i386.c:41282 config/rs6000/rs6000.c:32977 +#: config/i386/i386.c:41262 config/rs6000/rs6000.c:32977 #, gcc-internal-format msgid "%qE incompatible attribute ignored" msgstr "" -#: config/i386/i386.c:41307 config/i386/i386.c:41329 config/ia64/ia64.c:815 +#: config/i386/i386.c:41287 config/i386/i386.c:41309 config/ia64/ia64.c:815 #: config/s390/s390.c:1146 #, gcc-internal-format msgid "%qE attribute requires a string constant argument" msgstr "" -#: config/i386/i386.c:41317 config/i386/i386.c:41339 config/s390/s390.c:1175 +#: config/i386/i386.c:41297 config/i386/i386.c:41319 config/s390/s390.c:1175 #, gcc-internal-format msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)" msgstr "" -#: config/i386/i386.c:41371 +#: config/i386/i386.c:41351 #, gcc-internal-format msgid "interrupt service routine should have a pointer as the first argument" msgstr "" -#: config/i386/i386.c:41378 +#: config/i386/i386.c:41358 #, gcc-internal-format msgid "interrupt service routine should have %qs as the second argument" msgstr "" -#: config/i386/i386.c:41389 +#: config/i386/i386.c:41369 #, gcc-internal-format msgid "" "interrupt service routine can only have a pointer argument and an optional " "integer argument" msgstr "" -#: config/i386/i386.c:41392 +#: config/i386/i386.c:41372 #, gcc-internal-format msgid "interrupt service routine can%'t have non-void return value" msgstr "" -#: config/i386/i386.c:44255 +#: config/i386/i386.c:44235 #, gcc-internal-format msgid "alternatives not allowed in asm flag output" msgstr "" -#: config/i386/i386.c:44319 +#: config/i386/i386.c:44299 #, gcc-internal-format msgid "unknown asm flag output %qs" msgstr "" -#: config/i386/i386.c:44348 +#: config/i386/i386.c:44328 #, gcc-internal-format msgid "invalid type for asm flag output" msgstr "" -#: config/i386/i386.c:50539 +#: config/i386/i386.c:50519 #, gcc-internal-format msgid "unknown architecture specific memory model" msgstr "" -#: config/i386/i386.c:50546 +#: config/i386/i386.c:50526 #, gcc-internal-format msgid "HLE_ACQUIRE not used with ACQUIRE or stronger memory model" msgstr "" -#: config/i386/i386.c:50552 +#: config/i386/i386.c:50532 #, gcc-internal-format msgid "HLE_RELEASE not used with RELEASE or stronger memory model" msgstr "" -#: config/i386/i386.c:50597 +#: config/i386/i386.c:50577 #, gcc-internal-format msgid "unsupported return type %qT for simd" msgstr "" -#: config/i386/i386.c:50627 +#: config/i386/i386.c:50607 #, gcc-internal-format msgid "unsupported argument type %qT for simd" msgstr "" @@ -32690,7 +32716,7 @@ msgstr "" msgid "%qE redeclared with conflicting %qs attributes" msgstr "" -#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:2852 +#: config/mips/mips.c:1511 config/mips/mips.c:1565 config/riscv/riscv.c:2864 #, gcc-internal-format msgid "%qE attribute requires a string argument" msgstr "" @@ -33635,45 +33661,45 @@ msgstr "" msgid "unknown cpu %qs for %<-mtune%>" msgstr "" -#: config/riscv/riscv.c:2863 +#: config/riscv/riscv.c:2875 #, gcc-internal-format msgid "" "argument to %qE attribute is not \"user\", \"supervisor\", or \"machine\"" msgstr "" -#: config/riscv/riscv.c:4489 +#: config/riscv/riscv.c:4501 #, gcc-internal-format msgid "%<-mdiv%> requires %<-march%> to subsume the % extension" msgstr "" -#: config/riscv/riscv.c:4530 +#: config/riscv/riscv.c:4542 #, gcc-internal-format msgid "requested ABI requires %<-march%> to subsume the %qc extension" msgstr "" -#: config/riscv/riscv.c:4534 +#: config/riscv/riscv.c:4546 #, gcc-internal-format msgid "rv32e requires ilp32e ABI" msgstr "" -#: config/riscv/riscv.c:4538 +#: config/riscv/riscv.c:4550 #, gcc-internal-format msgid "ABI requires %<-march=rv%d%>" msgstr "" -#: config/riscv/riscv.c:4548 +#: config/riscv/riscv.c:4560 #, gcc-internal-format msgid "%<-mpreferred-stack-boundary=%d%> must be between %d and %d" msgstr "" -#: config/riscv/riscv.c:4561 +#: config/riscv/riscv.c:4573 #, gcc-internal-format msgid "" "%<-mriscv-attribute%> RISC-V ELF attribute requires GNU as 2.32 [%<-mriscv-" "attribute%>]" msgstr "" -#: config/riscv/riscv.c:4853 +#: config/riscv/riscv.c:4865 #, gcc-internal-format msgid "%qs function cannot have different interrupt type" msgstr "" @@ -34337,34 +34363,34 @@ msgstr "" msgid "use of % in AltiVec types is invalid without %qs" msgstr "" -#: config/rs6000/rs6000.c:36735 +#: config/rs6000/rs6000.c:36772 #, gcc-internal-format msgid "invalid cpu %qs for %s%qs%s" msgstr "" -#: config/rs6000/rs6000.c:36738 +#: config/rs6000/rs6000.c:36775 #, gcc-internal-format msgid "%s%qs%s is not allowed" msgstr "" -#: config/rs6000/rs6000.c:36740 +#: config/rs6000/rs6000.c:36777 #, gcc-internal-format msgid "%s%qs%s is invalid" msgstr "" -#: config/rs6000/rs6000.c:37275 +#: config/rs6000/rs6000.c:37312 #, gcc-internal-format msgid "%<-mno-%s%> turns off %<-m%s%>" msgstr "" -#: config/rs6000/rs6000.c:37434 +#: config/rs6000/rs6000.c:37471 #, gcc-internal-format msgid "" "target_clones attribute needs GLIBC (2.23 and newer) that exports hardware " "capability bits" msgstr "" -#: config/rs6000/rs6000.c:37710 +#: config/rs6000/rs6000.c:37747 #, gcc-internal-format msgid "Virtual function multiversioning not supported" msgstr "" @@ -34794,6 +34820,11 @@ msgid "" "%<-mno-pic-data-is-text-relative%> cannot be used without %<-fpic%>/%<-fPIC%>" msgstr "" +#: config/s390/s390.c:15475 config/s390/s390.c:15525 config/s390/s390.c:15542 +#, gcc-internal-format, gfc-internal-format +msgid "attribute(target(\"%s\")) is unknown" +msgstr "" + #. Value is not allowed for the target attribute. #: config/s390/s390.c:15481 #, gcc-internal-format @@ -35549,7 +35580,7 @@ msgstr "" msgid "declaration of %qD shadows a parameter" msgstr "" -#: c/c-decl.c:2987 cp/name-lookup.c:2827 +#: c/c-decl.c:2987 cp/name-lookup.c:2822 #, gcc-internal-format msgid "declaration of %qD shadows a global declaration" msgstr "" @@ -35559,7 +35590,7 @@ msgstr "" msgid "declaration of %qD shadows a previous local" msgstr "" -#: c/c-decl.c:3019 cp/name-lookup.c:2611 +#: c/c-decl.c:3019 cp/name-lookup.c:2606 #, gcc-internal-format msgid "shadowed declaration is here" msgstr "" @@ -36993,14 +37024,14 @@ msgstr "" msgid "ISO C does not support complex integer types" msgstr "" -#: c/c-decl.c:11741 cp/semantics.c:5483 +#: c/c-decl.c:11741 cp/semantics.c:5479 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> combiner refers to variable %qD which is " "not % nor %" msgstr "" -#: c/c-decl.c:11745 cp/semantics.c:5487 +#: c/c-decl.c:11745 cp/semantics.c:5483 #, gcc-internal-format msgid "" "%<#pragma omp declare reduction%> initializer refers to variable %qD which " @@ -37226,7 +37257,7 @@ msgstr "" msgid "static assertion failed: %E" msgstr "" -#: c/c-parser.c:2502 cp/semantics.c:9318 +#: c/c-parser.c:2502 cp/semantics.c:9314 #, gcc-internal-format msgid "static assertion failed" msgstr "" @@ -38048,7 +38079,7 @@ msgstr "" msgid "%qD is not a variable" msgstr "" -#: c/c-parser.c:12287 cp/semantics.c:7235 +#: c/c-parser.c:12287 cp/semantics.c:7231 #, gcc-internal-format msgid "%qD is not a pointer variable" msgstr "" @@ -38118,12 +38149,12 @@ msgstr "" msgid "% value must be positive" msgstr "" -#: c/c-parser.c:12824 cp/semantics.c:7430 +#: c/c-parser.c:12824 cp/semantics.c:7426 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:12871 cp/semantics.c:7460 +#: c/c-parser.c:12871 cp/semantics.c:7456 #, gcc-internal-format msgid "% value must be non-negative" msgstr "" @@ -38155,12 +38186,12 @@ msgstr "" msgid "too many % clauses with unspecified category" msgstr "" -#: c/c-parser.c:13140 cp/semantics.c:6625 +#: c/c-parser.c:13140 cp/semantics.c:6621 #, gcc-internal-format msgid "%qs expression must be integral" msgstr "" -#: c/c-parser.c:13152 c/c-parser.c:13275 cp/semantics.c:6657 +#: c/c-parser.c:13152 c/c-parser.c:13275 cp/semantics.c:6653 #, gcc-internal-format msgid "%qs value must be positive" msgstr "" @@ -38175,7 +38206,7 @@ msgstr "" msgid "unexpected argument" msgstr "" -#: c/c-parser.c:13415 cp/semantics.c:7569 +#: c/c-parser.c:13415 cp/semantics.c:7565 #, gcc-internal-format msgid "% argument needs positive integral constant" msgstr "" @@ -38212,7 +38243,7 @@ msgstr "" msgid "schedule % does not take a % parameter" msgstr "" -#: c/c-parser.c:13801 cp/semantics.c:6692 +#: c/c-parser.c:13801 cp/semantics.c:6688 #, gcc-internal-format msgid "chunk size value must be positive" msgstr "" @@ -38227,12 +38258,12 @@ msgstr "" msgid "% value must be positive" msgstr "" -#: c/c-parser.c:13990 cp/semantics.c:6786 +#: c/c-parser.c:13990 cp/semantics.c:6782 #, gcc-internal-format msgid "% value must be positive" msgstr "" -#: c/c-parser.c:14035 cp/semantics.c:6905 +#: c/c-parser.c:14035 cp/semantics.c:6901 #, gcc-internal-format msgid "" "% clause alignment expression must be positive constant integer " @@ -38445,7 +38476,7 @@ msgstr "" msgid "invalid operator for %<#pragma omp atomic%>" msgstr "" -#: c/c-parser.c:16496 cp/semantics.c:8951 cp/semantics.c:8961 +#: c/c-parser.c:16496 cp/semantics.c:8947 cp/semantics.c:8957 #, gcc-internal-format msgid "" "%<#pragma omp atomic capture%> uses two different expressions for memory" @@ -38456,7 +38487,7 @@ msgstr "" msgid "expected %<(%> or end of line" msgstr "" -#: c/c-parser.c:16605 cp/semantics.c:9027 +#: c/c-parser.c:16605 cp/semantics.c:9023 #, gcc-internal-format msgid "% expression is not lvalue expression" msgstr "" @@ -38498,7 +38529,7 @@ msgstr "" msgid "for statement expected" msgstr "" -#: c/c-parser.c:16865 cp/semantics.c:8556 cp/semantics.c:8647 +#: c/c-parser.c:16865 cp/semantics.c:8552 cp/semantics.c:8643 #, gcc-internal-format msgid "expected iteration declaration or initialization" msgstr "" @@ -38760,17 +38791,17 @@ msgstr "" msgid "variable sized type %qT in % clause" msgstr "" -#: c/c-parser.c:19605 cp/semantics.c:8017 +#: c/c-parser.c:19605 cp/semantics.c:8013 #, gcc-internal-format msgid "%qE declared % after first use" msgstr "" -#: c/c-parser.c:19607 cp/semantics.c:8019 +#: c/c-parser.c:19607 cp/semantics.c:8015 #, gcc-internal-format msgid "automatic variable %qE cannot be %" msgstr "" -#: c/c-parser.c:19611 cp/semantics.c:8021 +#: c/c-parser.c:19611 cp/semantics.c:8017 #, gcc-internal-format msgid "% %qE has incomplete type" msgstr "" @@ -40073,20 +40104,20 @@ msgstr "" msgid "used vector type where scalar is required" msgstr "" -#: c/c-typeck.c:12760 cp/semantics.c:9103 +#: c/c-typeck.c:12760 cp/semantics.c:9099 #, gcc-internal-format msgid "" "%<#pragma omp cancel%> must specify one of %, %, % or % clauses" msgstr "" -#: c/c-typeck.c:12771 c/c-typeck.c:12781 cp/semantics.c:9114 -#: cp/semantics.c:9124 +#: c/c-typeck.c:12771 c/c-typeck.c:12781 cp/semantics.c:9110 +#: cp/semantics.c:9120 #, gcc-internal-format msgid "expected % % clause modifier" msgstr "" -#: c/c-typeck.c:12816 cp/semantics.c:9160 +#: c/c-typeck.c:12816 cp/semantics.c:9156 #, gcc-internal-format msgid "" "%<#pragma omp cancellation point%> must specify one of %, % %qE in %qs clause" msgstr "" -#: c/c-typeck.c:12873 c/c-typeck.c:14268 c/c-typeck.c:14386 cp/semantics.c:4657 -#: cp/semantics.c:7013 cp/semantics.c:7140 +#: c/c-typeck.c:12873 c/c-typeck.c:14268 c/c-typeck.c:14386 cp/semantics.c:4653 +#: cp/semantics.c:7009 cp/semantics.c:7136 #, gcc-internal-format msgid "bit-field %qE in %qs clause" msgstr "" -#: c/c-typeck.c:12882 c/c-typeck.c:14410 cp/semantics.c:4667 -#: cp/semantics.c:7158 +#: c/c-typeck.c:12882 c/c-typeck.c:14410 cp/semantics.c:4663 +#: cp/semantics.c:7154 #, gcc-internal-format msgid "%qE is a member of a union" msgstr "" -#: c/c-typeck.c:12892 cp/semantics.c:4681 cp/semantics.c:7184 +#: c/c-typeck.c:12892 cp/semantics.c:4677 cp/semantics.c:7180 #, gcc-internal-format msgid "%qD is not a variable in %qs clause" msgstr "" -#: c/c-typeck.c:12896 c/c-typeck.c:14427 cp/semantics.c:4685 -#: cp/semantics.c:7188 +#: c/c-typeck.c:12896 c/c-typeck.c:14427 cp/semantics.c:4681 +#: cp/semantics.c:7184 #, gcc-internal-format msgid "%qE is not a variable in %qs clause" msgstr "" @@ -40126,76 +40157,76 @@ msgstr "" msgid "%<_Atomic%> %qD in %qs clause" msgstr "" -#: c/c-typeck.c:12912 c/c-typeck.c:14434 c/c-typeck.c:14544 cp/semantics.c:4703 -#: cp/semantics.c:7195 cp/semantics.c:7366 +#: c/c-typeck.c:12912 c/c-typeck.c:14434 c/c-typeck.c:14544 cp/semantics.c:4699 +#: cp/semantics.c:7191 cp/semantics.c:7362 #, gcc-internal-format msgid "%qD is threadprivate variable in %qs clause" msgstr "" -#: c/c-typeck.c:12948 cp/semantics.c:4737 +#: c/c-typeck.c:12948 cp/semantics.c:4733 #, gcc-internal-format msgid "low bound %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.c:12955 cp/semantics.c:4744 +#: c/c-typeck.c:12955 cp/semantics.c:4740 #, gcc-internal-format msgid "length %qE of array section does not have integral type" msgstr "" -#: c/c-typeck.c:12984 c/c-typeck.c:13050 c/c-typeck.c:13322 cp/semantics.c:4782 -#: cp/semantics.c:4848 +#: c/c-typeck.c:12984 c/c-typeck.c:13050 c/c-typeck.c:13322 cp/semantics.c:4778 +#: cp/semantics.c:4844 #, gcc-internal-format msgid "zero length array section in %qs clause" msgstr "" -#: c/c-typeck.c:13003 cp/semantics.c:4801 +#: c/c-typeck.c:13003 cp/semantics.c:4797 #, gcc-internal-format msgid "for unknown bound array type length expression must be specified" msgstr "" -#: c/c-typeck.c:13011 cp/semantics.c:4809 +#: c/c-typeck.c:13011 cp/semantics.c:4805 #, gcc-internal-format msgid "negative low bound in array section in %qs clause" msgstr "" -#: c/c-typeck.c:13020 c/c-typeck.c:13136 cp/semantics.c:4818 -#: cp/semantics.c:4934 +#: c/c-typeck.c:13020 c/c-typeck.c:13136 cp/semantics.c:4814 +#: cp/semantics.c:4930 #, gcc-internal-format msgid "negative length in array section in %qs clause" msgstr "" -#: c/c-typeck.c:13037 cp/semantics.c:4835 +#: c/c-typeck.c:13037 cp/semantics.c:4831 #, gcc-internal-format msgid "low bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13078 cp/semantics.c:4876 +#: c/c-typeck.c:13078 cp/semantics.c:4872 #, gcc-internal-format msgid "length %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13093 cp/semantics.c:4891 +#: c/c-typeck.c:13093 cp/semantics.c:4887 #, gcc-internal-format msgid "high bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:13128 cp/semantics.c:4926 +#: c/c-typeck.c:13128 cp/semantics.c:4922 #, gcc-internal-format msgid "for pointer type length expression must be specified" msgstr "" -#: c/c-typeck.c:13146 c/c-typeck.c:13261 cp/semantics.c:4944 -#: cp/semantics.c:5062 +#: c/c-typeck.c:13146 c/c-typeck.c:13261 cp/semantics.c:4940 +#: cp/semantics.c:5058 #, gcc-internal-format msgid "array section is not contiguous in %qs clause" msgstr "" -#: c/c-typeck.c:13154 cp/semantics.c:4952 +#: c/c-typeck.c:13154 cp/semantics.c:4948 #, gcc-internal-format msgid "%qE does not have pointer or array type" msgstr "" -#: c/c-typeck.c:13539 cp/semantics.c:6004 +#: c/c-typeck.c:13539 cp/semantics.c:6000 #, gcc-internal-format msgid "iterator %qD has neither integral nor pointer type" msgstr "" @@ -40205,17 +40236,17 @@ msgstr "" msgid "iterator %qD has %<_Atomic%> qualified type" msgstr "" -#: c/c-typeck.c:13552 cp/semantics.c:6011 +#: c/c-typeck.c:13552 cp/semantics.c:6007 #, gcc-internal-format msgid "iterator %qD has const qualified type" msgstr "" -#: c/c-typeck.c:13565 cp/semantics.c:6027 +#: c/c-typeck.c:13565 cp/semantics.c:6023 #, gcc-internal-format msgid "iterator step with non-integral type" msgstr "" -#: c/c-typeck.c:13585 cp/semantics.c:6060 +#: c/c-typeck.c:13585 cp/semantics.c:6056 #, gcc-internal-format msgid "iterator %qD has zero step" msgstr "" @@ -40225,17 +40256,17 @@ msgstr "" msgid "type of iterator %qD refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13619 cp/semantics.c:6094 +#: c/c-typeck.c:13619 cp/semantics.c:6090 #, gcc-internal-format msgid "begin expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13625 cp/semantics.c:6100 +#: c/c-typeck.c:13625 cp/semantics.c:6096 #, gcc-internal-format msgid "end expression refers to outer iterator %qD" msgstr "" -#: c/c-typeck.c:13631 cp/semantics.c:6106 +#: c/c-typeck.c:13631 cp/semantics.c:6102 #, gcc-internal-format msgid "step expression refers to outer iterator %qD" msgstr "" @@ -40265,7 +40296,7 @@ msgstr "" msgid "%qE has invalid type for %" msgstr "" -#: c/c-typeck.c:13850 cp/semantics.c:5896 +#: c/c-typeck.c:13850 cp/semantics.c:5892 #, gcc-internal-format msgid "user defined reduction not found for %qE" msgstr "" @@ -40275,17 +40306,17 @@ msgstr "" msgid "variable length element type in array % clause" msgstr "" -#: c/c-typeck.c:13956 c/c-typeck.c:14602 cp/semantics.c:7712 +#: c/c-typeck.c:13956 c/c-typeck.c:14602 cp/semantics.c:7708 #, gcc-internal-format msgid "% clause must not be used together with %" msgstr "" -#: c/c-typeck.c:13968 cp/semantics.c:7755 +#: c/c-typeck.c:13968 cp/semantics.c:7751 #, gcc-internal-format msgid "%qE must be % for %" msgstr "" -#: c/c-typeck.c:13982 cp/semantics.c:6228 +#: c/c-typeck.c:13982 cp/semantics.c:6224 #, gcc-internal-format msgid "" "modifier should not be specified in % clause on % or % " @@ -40303,18 +40334,18 @@ msgstr "" msgid "%<_Atomic%> %qD in % clause" msgstr "" -#: c/c-typeck.c:14017 cp/semantics.c:6302 +#: c/c-typeck.c:14017 cp/semantics.c:6298 #, gcc-internal-format msgid "% clause step %qE is neither constant nor a parameter" msgstr "" -#: c/c-typeck.c:14047 c/c-typeck.c:14537 cp/semantics.c:6389 -#: cp/semantics.c:7359 +#: c/c-typeck.c:14047 c/c-typeck.c:14537 cp/semantics.c:6385 +#: cp/semantics.c:7355 #, gcc-internal-format msgid "%qE is not a variable in clause %qs" msgstr "" -#: c/c-typeck.c:14057 cp/semantics.c:6399 +#: c/c-typeck.c:14057 cp/semantics.c:6395 #, gcc-internal-format msgid "%qD appears more than once in reduction clauses" msgstr "" @@ -40325,32 +40356,32 @@ msgid "%qE appears more than once in data clauses" msgstr "" #: c/c-typeck.c:14077 c/c-typeck.c:14108 c/c-typeck.c:14357 c/c-typeck.c:14473 -#: c/c-typeck.c:14480 c/c-typeck.c:14496 c/c-typeck.c:14507 cp/semantics.c:6411 -#: cp/semantics.c:6419 cp/semantics.c:6477 cp/semantics.c:6484 -#: cp/semantics.c:6528 cp/semantics.c:7102 cp/semantics.c:7245 -#: cp/semantics.c:7252 cp/semantics.c:7268 cp/semantics.c:7279 +#: c/c-typeck.c:14480 c/c-typeck.c:14496 c/c-typeck.c:14507 cp/semantics.c:6407 +#: cp/semantics.c:6415 cp/semantics.c:6473 cp/semantics.c:6480 +#: cp/semantics.c:6524 cp/semantics.c:7098 cp/semantics.c:7241 +#: cp/semantics.c:7248 cp/semantics.c:7264 cp/semantics.c:7275 #, gcc-internal-format msgid "%qD appears more than once in data clauses" msgstr "" #: c/c-typeck.c:14080 c/c-typeck.c:14111 c/c-typeck.c:14483 c/c-typeck.c:14510 -#: cp/semantics.c:6422 cp/semantics.c:6487 cp/semantics.c:7255 -#: cp/semantics.c:7282 +#: cp/semantics.c:6418 cp/semantics.c:6483 cp/semantics.c:7251 +#: cp/semantics.c:7278 #, gcc-internal-format msgid "%qD appears both in data and map clauses" msgstr "" -#: c/c-typeck.c:14094 cp/semantics.c:6469 +#: c/c-typeck.c:14094 cp/semantics.c:6465 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "" -#: c/c-typeck.c:14125 cp/semantics.c:6520 +#: c/c-typeck.c:14125 cp/semantics.c:6516 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "" -#: c/c-typeck.c:14144 cp/semantics.c:6857 +#: c/c-typeck.c:14144 cp/semantics.c:6853 #, gcc-internal-format msgid "%qE is not a variable in % clause" msgstr "" @@ -40370,7 +40401,7 @@ msgstr "" msgid "%qE appears more than once in % clauses" msgstr "" -#: c/c-typeck.c:14178 cp/semantics.c:6928 +#: c/c-typeck.c:14178 cp/semantics.c:6924 #, gcc-internal-format msgid "%qE is not a variable in % clause" msgstr "" @@ -40380,74 +40411,74 @@ msgstr "" msgid "%qE appears more than once in % clauses" msgstr "" -#: c/c-typeck.c:14249 cp/semantics.c:6979 +#: c/c-typeck.c:14249 cp/semantics.c:6975 #, gcc-internal-format msgid "% clause with % dependence type on array section" msgstr "" -#: c/c-typeck.c:14260 cp/semantics.c:7004 +#: c/c-typeck.c:14260 cp/semantics.c:7000 #, gcc-internal-format msgid "%qE is not lvalue expression nor array section in % clause" msgstr "" -#: c/c-typeck.c:14276 cp/semantics.c:7023 +#: c/c-typeck.c:14276 cp/semantics.c:7019 #, gcc-internal-format msgid "" "%qE does not have % type in % clause with % " "dependence type" msgstr "" -#: c/c-typeck.c:14285 cp/semantics.c:7034 +#: c/c-typeck.c:14285 cp/semantics.c:7030 #, gcc-internal-format msgid "" "%qE should not have % type in % clause with " "dependence type other than %" msgstr "" -#: c/c-typeck.c:14328 cp/semantics.c:7078 +#: c/c-typeck.c:14328 cp/semantics.c:7074 #, gcc-internal-format msgid "array section does not have mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14353 c/c-typeck.c:14493 cp/semantics.c:7098 -#: cp/semantics.c:7265 +#: c/c-typeck.c:14353 c/c-typeck.c:14493 cp/semantics.c:7094 +#: cp/semantics.c:7261 #, gcc-internal-format msgid "%qD appears more than once in motion clauses" msgstr "" -#: c/c-typeck.c:14361 c/c-typeck.c:14499 cp/semantics.c:7106 -#: cp/semantics.c:7271 +#: c/c-typeck.c:14361 c/c-typeck.c:14499 cp/semantics.c:7102 +#: cp/semantics.c:7267 #, gcc-internal-format msgid "%qD appears more than once in map clauses" msgstr "" -#: c/c-typeck.c:14393 cp/semantics.c:7147 +#: c/c-typeck.c:14393 cp/semantics.c:7143 #, gcc-internal-format msgid "%qE does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14453 c/c-typeck.c:14551 cp/semantics.c:7225 -#: cp/semantics.c:7373 +#: c/c-typeck.c:14453 c/c-typeck.c:14551 cp/semantics.c:7221 +#: cp/semantics.c:7369 #, gcc-internal-format msgid "%qD does not have a mappable type in %qs clause" msgstr "" -#: c/c-typeck.c:14532 cp/semantics.c:7353 +#: c/c-typeck.c:14532 cp/semantics.c:7349 #, gcc-internal-format msgid "%qE is neither a variable nor a function name in clause %qs" msgstr "" -#: c/c-typeck.c:14560 cp/semantics.c:7382 +#: c/c-typeck.c:14560 cp/semantics.c:7378 #, gcc-internal-format msgid "%qE appears more than once on the same % directive" msgstr "" -#: c/c-typeck.c:14574 cp/semantics.c:7398 +#: c/c-typeck.c:14574 cp/semantics.c:7394 #, gcc-internal-format msgid "%qD is not an argument in % clause" msgstr "" -#: c/c-typeck.c:14577 cp/semantics.c:7401 +#: c/c-typeck.c:14577 cp/semantics.c:7397 #, gcc-internal-format msgid "%qE is not an argument in % clause" msgstr "" @@ -40457,12 +40488,12 @@ msgstr "" msgid "%qs variable is neither a pointer nor an array" msgstr "" -#: c/c-typeck.c:14680 cp/semantics.c:7591 +#: c/c-typeck.c:14680 cp/semantics.c:7587 #, gcc-internal-format msgid "% clause is incompatible with %" msgstr "" -#: c/c-typeck.c:14726 cp/semantics.c:7806 +#: c/c-typeck.c:14726 cp/semantics.c:7802 #, gcc-internal-format msgid "%qE is predetermined %qs for %qs" msgstr "" @@ -40474,24 +40505,24 @@ msgid "" "clauses" msgstr "" -#: c/c-typeck.c:14755 cp/semantics.c:7675 +#: c/c-typeck.c:14755 cp/semantics.c:7671 #, gcc-internal-format msgid "% clause value is bigger than % clause value" msgstr "" -#: c/c-typeck.c:14767 cp/semantics.c:7688 +#: c/c-typeck.c:14767 cp/semantics.c:7684 #, gcc-internal-format msgid "" "% schedule modifier specified together with % clause" msgstr "" -#: c/c-typeck.c:14785 cp/semantics.c:7655 +#: c/c-typeck.c:14785 cp/semantics.c:7651 #, gcc-internal-format msgid "" "% clause step is a parameter %qD not specified in % clause" msgstr "" -#: c/c-typeck.c:14800 cp/semantics.c:7701 +#: c/c-typeck.c:14800 cp/semantics.c:7697 #, gcc-internal-format msgid "% clause must not be used together with % clause" msgstr "" @@ -41489,7 +41520,7 @@ msgid "%q#D cannot be overloaded with %q#D" msgstr "" #: cp/class.c:1131 cp/decl.c:1625 cp/decl.c:1634 cp/decl.c:1656 cp/decl.c:1690 -#: cp/name-lookup.c:2280 cp/name-lookup.c:2560 +#: cp/name-lookup.c:2275 cp/name-lookup.c:2555 #, gcc-internal-format msgid "previous declaration %q#D" msgstr "" @@ -43018,7 +43049,7 @@ msgstr "" msgid "%q#D previously defined here" msgstr "" -#: cp/decl.c:1776 cp/name-lookup.c:2710 cp/name-lookup.c:2733 +#: cp/decl.c:1776 cp/name-lookup.c:2705 cp/name-lookup.c:2728 #, gcc-internal-format msgid "%q#D previously declared here" msgstr "" @@ -43138,8 +43169,8 @@ msgstr "" msgid "non-thread-local declaration of %q#D follows thread-local declaration" msgstr "" -#: cp/decl.c:2976 cp/decl.c:3020 cp/name-lookup.c:2276 cp/name-lookup.c:2708 -#: cp/name-lookup.c:2731 +#: cp/decl.c:2976 cp/decl.c:3020 cp/name-lookup.c:2271 cp/name-lookup.c:2703 +#: cp/name-lookup.c:2726 #, gcc-internal-format msgid "redeclaration of %q#D" msgstr "" @@ -45417,7 +45448,7 @@ msgstr "" msgid "template argument required for %<%s %T%>" msgstr "" -#: cp/decl.c:13973 cp/name-lookup.c:4570 +#: cp/decl.c:13973 cp/name-lookup.c:4565 #, gcc-internal-format msgid "%qD has the same name as the class in which it is declared" msgstr "" @@ -45433,8 +45464,8 @@ msgstr "" msgid "perhaps you want to explicitly add %<%T::%>" msgstr "" -#: cp/decl.c:14017 cp/name-lookup.c:3997 cp/name-lookup.c:4004 -#: cp/name-lookup.c:4857 cp/parser.c:6502 cp/parser.c:27221 +#: cp/decl.c:14017 cp/name-lookup.c:3992 cp/name-lookup.c:3999 +#: cp/name-lookup.c:4852 cp/parser.c:6502 cp/parser.c:27221 #, gcc-internal-format msgid "reference to %qD is ambiguous" msgstr "" @@ -46963,47 +46994,47 @@ msgstr "" msgid "defaulted function %q+D with default argument" msgstr "" -#: cp/name-lookup.c:2278 +#: cp/name-lookup.c:2273 #, gcc-internal-format msgid "%q#D conflicts with a previous declaration" msgstr "" -#: cp/name-lookup.c:2430 +#: cp/name-lookup.c:2425 #, gcc-internal-format msgid "%q#D hides constructor for %q#D" msgstr "" -#: cp/name-lookup.c:2558 +#: cp/name-lookup.c:2553 #, gcc-internal-format msgid "conflicting C language linkage declaration %q#D" msgstr "" -#: cp/name-lookup.c:2563 +#: cp/name-lookup.c:2558 #, gcc-internal-format msgid "due to different exception specifications" msgstr "" -#: cp/name-lookup.c:2661 +#: cp/name-lookup.c:2656 #, gcc-internal-format msgid "lambda parameter %qD previously declared as a capture" msgstr "" -#: cp/name-lookup.c:2682 +#: cp/name-lookup.c:2677 #, gcc-internal-format msgid "declaration of %q#D shadows a parameter" msgstr "" -#: cp/name-lookup.c:2807 +#: cp/name-lookup.c:2802 #, gcc-internal-format msgid "declaration of %qD shadows a member of %qT" msgstr "" -#: cp/name-lookup.c:2961 +#: cp/name-lookup.c:2956 #, gcc-internal-format msgid "local external declaration %q#D" msgstr "" -#: cp/name-lookup.c:2963 +#: cp/name-lookup.c:2958 #, gcc-internal-format msgid "does not match previous declaration %q#D" msgstr "" @@ -47011,225 +47042,225 @@ msgstr "" #. In a local class, a friend function declaration must #. find a matching decl in the innermost non-class scope. #. [class.friend/11] -#: cp/name-lookup.c:3085 +#: cp/name-lookup.c:3080 #, gcc-internal-format msgid "friend declaration %qD in local class without prior local declaration" msgstr "" -#: cp/name-lookup.c:3278 +#: cp/name-lookup.c:3273 #, gcc-internal-format msgid "%s %<%s(%E)%> %p %d\n" msgstr "" -#: cp/name-lookup.c:3281 +#: cp/name-lookup.c:3276 #, gcc-internal-format msgid "%s %s %p %d\n" msgstr "" -#: cp/name-lookup.c:3937 +#: cp/name-lookup.c:3932 #, gcc-internal-format msgid "%qT is not a namespace or unscoped enum" msgstr "" #. 7.3.3/5 #. A using-declaration shall not name a template-id. -#: cp/name-lookup.c:3947 +#: cp/name-lookup.c:3942 #, gcc-internal-format msgid "a using-declaration cannot specify a template-id. Try %" msgstr "" -#: cp/name-lookup.c:3954 +#: cp/name-lookup.c:3949 #, gcc-internal-format msgid "namespace %qD not allowed in using-declaration" msgstr "" #. It's a nested name with template parameter dependent scope. #. This can only be using-declaration for class member. -#: cp/name-lookup.c:3962 +#: cp/name-lookup.c:3957 #, gcc-internal-format msgid "%qT is not a namespace" msgstr "" #. C++11 7.3.3/10. -#: cp/name-lookup.c:3975 +#: cp/name-lookup.c:3970 #, gcc-internal-format msgid "%qD is already declared in this scope" msgstr "" -#: cp/name-lookup.c:3992 +#: cp/name-lookup.c:3987 #, gcc-internal-format msgid "%qD not declared" msgstr "" -#: cp/name-lookup.c:4703 +#: cp/name-lookup.c:4698 #, gcc-internal-format msgid "using-declaration for non-member at class scope" msgstr "" -#: cp/name-lookup.c:4710 +#: cp/name-lookup.c:4705 #, gcc-internal-format msgid "%<%T::%D%> names destructor" msgstr "" -#: cp/name-lookup.c:4727 +#: cp/name-lookup.c:4722 #, gcc-internal-format msgid "%<%T::%D%> names constructor in %qT" msgstr "" -#: cp/name-lookup.c:4761 +#: cp/name-lookup.c:4756 #, gcc-internal-format msgid "cannot inherit constructors from indirect base %qT" msgstr "" -#: cp/name-lookup.c:4770 +#: cp/name-lookup.c:4765 #, gcc-internal-format msgid "no members matching %<%T::%D%> in %q#T" msgstr "" -#: cp/name-lookup.c:4837 +#: cp/name-lookup.c:4832 #, gcc-internal-format msgid "declaration of %qD not in a namespace surrounding %qD" msgstr "" -#: cp/name-lookup.c:4876 +#: cp/name-lookup.c:4871 #, gcc-internal-format msgid "explicit qualification in declaration of %qD" msgstr "" -#: cp/name-lookup.c:4928 +#: cp/name-lookup.c:4923 #, gcc-internal-format msgid "%qD has not been declared within %qD" msgstr "" -#: cp/name-lookup.c:4930 +#: cp/name-lookup.c:4925 #, gcc-internal-format msgid "only here as a %" msgstr "" -#: cp/name-lookup.c:4939 +#: cp/name-lookup.c:4934 #, gcc-internal-format msgid "%qD should have been declared inside %qD" msgstr "" -#: cp/name-lookup.c:4987 +#: cp/name-lookup.c:4982 #, gcc-internal-format msgid "%qD attribute requires a single NTBS argument" msgstr "" -#: cp/name-lookup.c:4994 +#: cp/name-lookup.c:4989 #, gcc-internal-format msgid "" "%qD attribute is meaningless since members of the anonymous namespace get " "local symbols" msgstr "" -#: cp/name-lookup.c:5004 +#: cp/name-lookup.c:4999 #, gcc-internal-format msgid "ignoring %qD attribute on anonymous namespace" msgstr "" -#: cp/name-lookup.c:5010 +#: cp/name-lookup.c:5005 #, gcc-internal-format msgid "ignoring %qD attribute on non-inline namespace" msgstr "" -#: cp/name-lookup.c:5029 cp/name-lookup.c:7280 +#: cp/name-lookup.c:5024 cp/name-lookup.c:7275 #, gcc-internal-format msgid "%qD attribute directive ignored" msgstr "" -#: cp/name-lookup.c:5321 +#: cp/name-lookup.c:5316 #, gcc-internal-format msgid "maximum limit of %d namespaces searched for %qE" msgstr "" -#: cp/name-lookup.c:5347 +#: cp/name-lookup.c:5342 #, gcc-internal-format msgid "%qE declared here" msgstr "" -#: cp/name-lookup.c:5373 +#: cp/name-lookup.c:5368 #, gcc-internal-format msgid "suggested alternative:" msgid_plural "suggested alternatives:" msgstr[0] "" msgstr[1] "" -#: cp/name-lookup.c:5379 +#: cp/name-lookup.c:5374 #, gcc-internal-format msgid " %qE" msgstr "" -#: cp/name-lookup.c:5856 +#: cp/name-lookup.c:5851 #, gcc-internal-format msgid "" "% is defined in header %qs; did you forget to %<#include %s%>?" msgstr "" -#: cp/name-lookup.c:5862 +#: cp/name-lookup.c:5857 #, gcc-internal-format msgid "% is only available from %s onwards" msgstr "" -#: cp/name-lookup.c:6125 +#: cp/name-lookup.c:6120 #, gcc-internal-format msgid "the macro %qs had not yet been defined" msgstr "" -#: cp/name-lookup.c:6128 +#: cp/name-lookup.c:6123 #, gcc-internal-format msgid "it was later defined here" msgstr "" -#: cp/name-lookup.c:6899 +#: cp/name-lookup.c:6894 #, gcc-internal-format msgid "" "declaration of % does not match %<#include " "%>, isn%'t a template" msgstr "" -#: cp/name-lookup.c:7274 +#: cp/name-lookup.c:7269 #, gcc-internal-format msgid "strong using directive no longer supported" msgstr "" -#: cp/name-lookup.c:7277 +#: cp/name-lookup.c:7272 #, gcc-internal-format msgid "you may use an inline namespace instead" msgstr "" -#: cp/name-lookup.c:7294 +#: cp/name-lookup.c:7289 #, gcc-internal-format msgid "attributes ignored on local using directive" msgstr "" -#: cp/name-lookup.c:7378 +#: cp/name-lookup.c:7373 #, gcc-internal-format msgid "namespace alias %qD not allowed here, assuming %qD" msgstr "" #. We only allow depth 255. -#: cp/name-lookup.c:7398 +#: cp/name-lookup.c:7393 #, gcc-internal-format, gfc-internal-format msgid "cannot nest more than %d namespaces" msgstr "" -#: cp/name-lookup.c:7433 +#: cp/name-lookup.c:7428 #, gcc-internal-format msgid "inline namespace must be specified at initial definition" msgstr "" -#: cp/name-lookup.c:7434 +#: cp/name-lookup.c:7429 #, gcc-internal-format msgid "%qD defined here" msgstr "" -#: cp/name-lookup.c:7507 +#: cp/name-lookup.c:7502 #, gcc-internal-format msgid "XXX entering pop_everything ()\n" msgstr "" -#: cp/name-lookup.c:7516 +#: cp/name-lookup.c:7511 #, gcc-internal-format msgid "XXX leaving pop_everything ()\n" msgstr "" @@ -49551,22 +49582,22 @@ msgstr "" msgid "types may not be defined in declare reduction type list" msgstr "" -#: cp/parser.c:39647 cp/semantics.c:5540 +#: cp/parser.c:39647 cp/semantics.c:5536 #, gcc-internal-format msgid "predeclared arithmetic type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:39652 cp/semantics.c:5549 +#: cp/parser.c:39652 cp/semantics.c:5545 #, gcc-internal-format msgid "function or array type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:39655 cp/pt.c:13087 cp/semantics.c:5555 +#: cp/parser.c:39655 cp/pt.c:13087 cp/semantics.c:5551 #, gcc-internal-format msgid "reference type %qT in %<#pragma omp declare reduction%>" msgstr "" -#: cp/parser.c:39658 cp/semantics.c:5561 +#: cp/parser.c:39658 cp/semantics.c:5557 #, gcc-internal-format msgid "" "const, volatile or __restrict qualified type %qT in %<#pragma omp declare " @@ -49589,12 +49620,12 @@ msgstr "" msgid "atomic_cancel" msgstr "" -#: cp/parser.c:40553 cp/semantics.c:9190 +#: cp/parser.c:40553 cp/semantics.c:9186 #, gcc-internal-format msgid "%<__transaction_relaxed%> without transactional memory support enabled" msgstr "" -#: cp/parser.c:40555 cp/semantics.c:9192 +#: cp/parser.c:40555 cp/semantics.c:9188 #, gcc-internal-format msgid "%<__transaction_atomic%> without transactional memory support enabled" msgstr "" @@ -49713,7 +49744,7 @@ msgstr "" msgid "specialization of %qD after instantiation" msgstr "" -#: cp/pt.c:2006 cp/semantics.c:5409 +#: cp/pt.c:2006 cp/semantics.c:5405 #, gcc-internal-format msgid "%s %#qD" msgstr "" @@ -51299,7 +51330,7 @@ msgstr "" msgid "cannot capture member %qD of anonymous union" msgstr "" -#: cp/semantics.c:3521 cp/semantics.c:9886 +#: cp/semantics.c:3521 cp/semantics.c:9882 #, gcc-internal-format msgid "%qD is not captured" msgstr "" @@ -51345,348 +51376,343 @@ msgstr "" #: cp/semantics.c:3745 #, gcc-internal-format -msgid "use of namespace %qD as expression" -msgstr "" - -#: cp/semantics.c:3750 -#, gcc-internal-format msgid "use of class template %qT as expression" msgstr "" #. Ambiguous reference to base members. -#: cp/semantics.c:3756 +#: cp/semantics.c:3752 #, gcc-internal-format msgid "request for member %qD is ambiguous in multiple inheritance lattice" msgstr "" -#: cp/semantics.c:3783 +#: cp/semantics.c:3779 #, gcc-internal-format msgid "%qD cannot appear in a constant-expression" msgstr "" -#: cp/semantics.c:3944 +#: cp/semantics.c:3940 #, gcc-internal-format msgid "type of %qE is unknown" msgstr "" -#: cp/semantics.c:3973 +#: cp/semantics.c:3969 #, gcc-internal-format msgid "%qT is not an enumeration type" msgstr "" #. Parameter packs can only be used in templates -#: cp/semantics.c:4112 +#: cp/semantics.c:4108 #, gcc-internal-format msgid "Parameter pack __bases only valid in template declaration" msgstr "" -#: cp/semantics.c:4144 +#: cp/semantics.c:4140 #, gcc-internal-format msgid "cannot apply % to destructor %<~%T%>" msgstr "" -#: cp/semantics.c:4158 +#: cp/semantics.c:4154 #, gcc-internal-format msgid "cannot apply % to member function %qD" msgstr "" -#: cp/semantics.c:4162 +#: cp/semantics.c:4158 #, gcc-internal-format msgid "cannot apply % to member function" msgstr "" -#: cp/semantics.c:4167 +#: cp/semantics.c:4163 #, gcc-internal-format msgid "cannot apply % to an enumerator %qD" msgstr "" -#: cp/semantics.c:4178 +#: cp/semantics.c:4174 #, gcc-internal-format msgid "offsetof within non-standard-layout type %qT is conditionally-supported" msgstr "" -#: cp/semantics.c:4695 cp/semantics.c:6373 cp/semantics.c:6452 -#: cp/semantics.c:6503 cp/semantics.c:6843 cp/semantics.c:6990 -#: cp/semantics.c:7202 +#: cp/semantics.c:4691 cp/semantics.c:6369 cp/semantics.c:6448 +#: cp/semantics.c:6499 cp/semantics.c:6839 cp/semantics.c:6986 +#: cp/semantics.c:7198 #, gcc-internal-format msgid "% allowed in OpenMP only in % clauses" msgstr "" -#: cp/semantics.c:5406 +#: cp/semantics.c:5402 #, gcc-internal-format msgid "user defined reduction lookup is ambiguous" msgstr "" -#: cp/semantics.c:5680 +#: cp/semantics.c:5676 #, gcc-internal-format msgid "%qE in % clause is a zero size array" msgstr "" -#: cp/semantics.c:5730 +#: cp/semantics.c:5726 #, gcc-internal-format msgid "%qE has const type for %" msgstr "" -#: cp/semantics.c:5847 +#: cp/semantics.c:5843 #, gcc-internal-format msgid "user defined reduction with constructor initializer for base class %qT" msgstr "" -#: cp/semantics.c:6241 +#: cp/semantics.c:6237 #, gcc-internal-format msgid "" "linear clause with %qs modifier applied to non-reference variable with %qT " "type" msgstr "" -#: cp/semantics.c:6256 +#: cp/semantics.c:6252 #, gcc-internal-format msgid "" "linear clause applied to non-integral non-pointer variable with %qT type" msgstr "" -#: cp/semantics.c:6280 +#: cp/semantics.c:6276 #, gcc-internal-format msgid "linear step expression must be integral" msgstr "" -#: cp/semantics.c:6385 +#: cp/semantics.c:6381 #, gcc-internal-format msgid "%qD is not a variable in clause %qs" msgstr "" -#: cp/semantics.c:6465 +#: cp/semantics.c:6461 #, gcc-internal-format msgid "%qD is not a variable in clause %" msgstr "" -#: cp/semantics.c:6516 +#: cp/semantics.c:6512 #, gcc-internal-format msgid "%qD is not a variable in clause %" msgstr "" -#: cp/semantics.c:6566 +#: cp/semantics.c:6562 #, gcc-internal-format msgid "% static expression must be integral" msgstr "" -#: cp/semantics.c:6580 +#: cp/semantics.c:6576 #, gcc-internal-format msgid "% static value must be positive" msgstr "" -#: cp/semantics.c:6614 +#: cp/semantics.c:6610 #, gcc-internal-format msgid "% num expression must be integral" msgstr "" -#: cp/semantics.c:6617 +#: cp/semantics.c:6613 #, gcc-internal-format msgid "% length expression must be integral" msgstr "" -#: cp/semantics.c:6621 +#: cp/semantics.c:6617 #, gcc-internal-format msgid "% num expression must be integral" msgstr "" -#: cp/semantics.c:6643 +#: cp/semantics.c:6639 #, gcc-internal-format msgid "% num value must be positive" msgstr "" -#: cp/semantics.c:6647 +#: cp/semantics.c:6643 #, gcc-internal-format msgid "% length value must be positive" msgstr "" -#: cp/semantics.c:6652 +#: cp/semantics.c:6648 #, gcc-internal-format msgid "% num value must be positive" msgstr "" -#: cp/semantics.c:6679 +#: cp/semantics.c:6675 #, gcc-internal-format msgid "schedule chunk size expression must be integral" msgstr "" -#: cp/semantics.c:6710 +#: cp/semantics.c:6706 #, gcc-internal-format msgid "%qs length expression must be integral" msgstr "" -#: cp/semantics.c:6724 +#: cp/semantics.c:6720 #, gcc-internal-format msgid "%qs length expression must be positive constant integer expression" msgstr "" -#: cp/semantics.c:6744 +#: cp/semantics.c:6740 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:6773 +#: cp/semantics.c:6769 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:6803 +#: cp/semantics.c:6799 #, gcc-internal-format msgid "% id must be integral" msgstr "" -#: cp/semantics.c:6825 +#: cp/semantics.c:6821 #, gcc-internal-format msgid "% chunk size expression must be integral" msgstr "" -#: cp/semantics.c:6854 +#: cp/semantics.c:6850 #, gcc-internal-format msgid "%qD is not a variable in % clause" msgstr "" -#: cp/semantics.c:6869 +#: cp/semantics.c:6865 #, gcc-internal-format msgid "" "%qE in % clause is neither a pointer nor an array nor a reference " "to pointer or array" msgstr "" -#: cp/semantics.c:6876 +#: cp/semantics.c:6872 #, gcc-internal-format msgid "%qD appears more than once in % clauses" msgstr "" -#: cp/semantics.c:6891 +#: cp/semantics.c:6887 #, gcc-internal-format msgid "% clause alignment expression must be integral" msgstr "" -#: cp/semantics.c:6924 +#: cp/semantics.c:6920 #, gcc-internal-format msgid "%qD is not a variable in % clause" msgstr "" -#: cp/semantics.c:6935 +#: cp/semantics.c:6931 #, gcc-internal-format msgid "%qD appears more than once in % clauses" msgstr "" -#: cp/semantics.c:7000 +#: cp/semantics.c:6996 #, gcc-internal-format msgid "%qD is not lvalue expression nor array section in % clause" msgstr "" -#: cp/semantics.c:7345 +#: cp/semantics.c:7341 #, gcc-internal-format msgid "template %qE in clause %qs" msgstr "" -#: cp/semantics.c:7349 +#: cp/semantics.c:7345 #, gcc-internal-format msgid "overloaded function name %qE in clause %qs" msgstr "" -#: cp/semantics.c:7417 +#: cp/semantics.c:7413 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:7447 +#: cp/semantics.c:7443 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:7477 +#: cp/semantics.c:7473 #, gcc-internal-format msgid "% expression must be integral" msgstr "" -#: cp/semantics.c:7490 +#: cp/semantics.c:7486 #, gcc-internal-format msgid "% expression must be constant integer expression" msgstr "" -#: cp/semantics.c:7513 +#: cp/semantics.c:7509 #, gcc-internal-format msgid "" "%qs variable is neither a pointer, nor an array nor reference to pointer or " "array" msgstr "" -#: cp/semantics.c:7554 +#: cp/semantics.c:7550 #, gcc-internal-format msgid "% argument needs integral type" msgstr "" -#: cp/semantics.c:7816 +#: cp/semantics.c:7812 #, gcc-internal-format msgid "" "% qualified %qE without % member may appear only in " "% or % clauses" msgstr "" -#: cp/semantics.c:8010 +#: cp/semantics.c:8006 #, gcc-internal-format msgid "% %qD is not file, namespace or block scope variable" msgstr "" -#: cp/semantics.c:8024 +#: cp/semantics.c:8020 #, gcc-internal-format msgid "% %qE directive not in %qT definition" msgstr "" -#: cp/semantics.c:8222 +#: cp/semantics.c:8218 #, gcc-internal-format msgid "difference between %qE and %qD does not have integer type" msgstr "" -#: cp/semantics.c:8665 +#: cp/semantics.c:8661 #, gcc-internal-format msgid "%<#pragma omp simd%> used with class iteration variable %qE" msgstr "" -#: cp/semantics.c:8948 cp/semantics.c:8958 +#: cp/semantics.c:8944 cp/semantics.c:8954 #, gcc-internal-format msgid "%<#pragma omp atomic update%> uses two different expressions for memory" msgstr "" -#: cp/semantics.c:9320 +#: cp/semantics.c:9316 #, gcc-internal-format, gfc-internal-format msgid "static assertion failed: %s" msgstr "" -#: cp/semantics.c:9325 +#: cp/semantics.c:9321 #, gcc-internal-format msgid "non-constant condition for static assertion" msgstr "" -#: cp/semantics.c:9355 +#: cp/semantics.c:9351 #, gcc-internal-format msgid "argument to decltype must be an expression" msgstr "" -#: cp/semantics.c:9383 +#: cp/semantics.c:9379 #, gcc-internal-format msgid "decltype cannot resolve address of overloaded function" msgstr "" -#: cp/semantics.c:9925 +#: cp/semantics.c:9921 #, gcc-internal-format msgid "operand of fold expression has no unexpanded parameter packs" msgstr "" -#: cp/semantics.c:9978 +#: cp/semantics.c:9974 #, gcc-internal-format msgid "both arguments in binary fold have unexpanded parameter packs" msgstr "" -#: cp/semantics.c:9980 +#: cp/semantics.c:9976 #, gcc-internal-format msgid "no unexpanded parameter packs in binary fold" msgstr "" -#: cp/semantics.c:9998 +#: cp/semantics.c:9994 #, gcc-internal-format msgid "non-pointer argument to %<__builtin_launder%>" msgstr "" @@ -53320,8 +53346,8 @@ msgstr "" #: fortran/array.c:221 fortran/array.c:661 fortran/check.c:2840 #: fortran/check.c:5292 fortran/check.c:5330 fortran/check.c:5372 -#: fortran/check.c:5399 fortran/check.c:5646 fortran/match.c:1834 -#: fortran/match.c:3192 fortran/match.c:3534 fortran/match.c:3730 +#: fortran/check.c:5399 fortran/check.c:5646 fortran/match.c:1856 +#: fortran/match.c:3214 fortran/match.c:3556 fortran/match.c:3752 #: fortran/simplify.c:2912 fortran/simplify.c:2942 fortran/simplify.c:6222 #: fortran/simplify.c:8133 #, gcc-internal-format @@ -53478,7 +53504,7 @@ msgstr "" msgid "Array constructor including type specification at %C" msgstr "" -#: fortran/array.c:1164 fortran/match.c:4166 +#: fortran/array.c:1164 fortran/match.c:4188 #, gcc-internal-format, gfc-internal-format msgid "Type-spec at %L cannot contain a deferred type parameter" msgstr "" @@ -58935,7 +58961,7 @@ msgstr "" msgid "UNIT number in CLOSE statement at %L must be non-negative" msgstr "" -#: fortran/io.c:2835 fortran/match.c:3028 +#: fortran/io.c:2835 fortran/match.c:3050 #, gcc-internal-format, gfc-internal-format msgid "%s statement not allowed in PURE procedure at %C" msgstr "" @@ -59205,695 +59231,705 @@ msgid "" "at %C" msgstr "" -#: fortran/match.c:297 +#: fortran/match.c:298 #, gcc-internal-format -msgid "Missing %<)%> in statement at or before %L" +msgid "Missing %qs in statement at or before %L" msgstr "" -#: fortran/match.c:302 -#, gcc-internal-format -msgid "Missing %<(%> in statement at or before %L" -msgstr "" - -#: fortran/match.c:499 +#: fortran/match.c:496 #, gcc-internal-format, gfc-internal-format msgid "Integer too large at %C" msgstr "" -#: fortran/match.c:580 fortran/parse.c:1143 +#: fortran/match.c:577 fortran/parse.c:1143 #, gcc-internal-format, gfc-internal-format msgid "Too many digits in statement label at %C" msgstr "" -#: fortran/match.c:586 +#: fortran/match.c:583 #, gcc-internal-format, gfc-internal-format msgid "Statement label at %C is zero" msgstr "" -#: fortran/match.c:619 +#: fortran/match.c:616 #, gcc-internal-format msgid "Label name %qs at %C is ambiguous" msgstr "" -#: fortran/match.c:625 +#: fortran/match.c:622 #, gcc-internal-format msgid "Duplicate construct label %qs at %C" msgstr "" -#: fortran/match.c:659 +#: fortran/match.c:656 #, gcc-internal-format, gfc-internal-format msgid "Invalid character in name at %C" msgstr "" -#: fortran/match.c:672 +#: fortran/match.c:669 #, gcc-internal-format, gfc-internal-format msgid "Name at %C is too long" msgstr "" -#: fortran/match.c:683 +#: fortran/match.c:680 #, gcc-internal-format msgid "" "Invalid character %<$%> at %L. Use %<-fdollar-ok%> to allow it as an " "extension" msgstr "" -#: fortran/match.c:959 +#: fortran/match.c:956 #, gcc-internal-format, gfc-internal-format msgid ".XOR. operator at %C" msgstr "" -#: fortran/match.c:1014 +#: fortran/match.c:1011 #, gcc-internal-format, gfc-internal-format msgid "Loop variable at %C cannot be an array" msgstr "" -#: fortran/match.c:1021 +#: fortran/match.c:1018 #, gcc-internal-format, gfc-internal-format msgid "Loop variable at %C cannot be a coarray" msgstr "" -#: fortran/match.c:1027 +#: fortran/match.c:1024 #, gcc-internal-format, gfc-internal-format msgid "Loop variable at %C cannot be a sub-component" msgstr "" -#: fortran/match.c:1061 +#: fortran/match.c:1058 #, gcc-internal-format, gfc-internal-format msgid "Expected a step value in iterator at %C" msgstr "" -#: fortran/match.c:1073 +#: fortran/match.c:1070 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in iterator at %C" msgstr "" -#: fortran/match.c:1241 +#: fortran/match.c:1238 #, gcc-internal-format, gfc-internal-format msgid "gfc_match(): Bad match code %c" msgstr "" -#: fortran/match.c:1315 +#: fortran/match.c:1312 #, gcc-internal-format, gfc-internal-format msgid "Invalid form of PROGRAM statement at %C" msgstr "" -#: fortran/match.c:1358 +#: fortran/match.c:1355 #, gcc-internal-format, gfc-internal-format msgid "Assignment to a constant expression at %C" msgstr "" -#: fortran/match.c:1457 fortran/match.c:1538 +#: fortran/match.c:1454 fortran/match.c:1545 #, gcc-internal-format, gfc-internal-format msgid "Arithmetic IF statement at %C" msgstr "" -#: fortran/match.c:1512 +#: fortran/match.c:1501 +#, gcc-internal-format +msgid "Missing %<(%> in IF-expression at %C" +msgstr "" + +#: fortran/match.c:1519 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in IF-expression at %C" msgstr "" -#: fortran/match.c:1523 +#: fortran/match.c:1530 #, gcc-internal-format, gfc-internal-format msgid "Block label not appropriate for arithmetic IF statement at %C" msgstr "" -#: fortran/match.c:1561 +#: fortran/match.c:1568 #, gcc-internal-format, gfc-internal-format msgid "Block label is not appropriate for IF statement at %C" msgstr "" -#: fortran/match.c:1657 +#: fortran/match.c:1661 fortran/match.c:1668 #, gcc-internal-format, gfc-internal-format -msgid "Cannot assign to a named constant at %C" +msgid "Syntax error in IF-clause after %C" msgstr "" -#: fortran/match.c:1667 +#: fortran/match.c:1711 #, gcc-internal-format, gfc-internal-format -msgid "Unclassifiable statement in IF-clause at %C" +msgid "Invalid character(s) in ELSE statement after %C" msgstr "" -#: fortran/match.c:1674 -#, gcc-internal-format, gfc-internal-format -msgid "Syntax error in IF-clause at %C" +#: fortran/match.c:1717 +#, gcc-internal-format +msgid "Label %qs at %C doesn't match IF label %qs" msgstr "" -#: fortran/match.c:1717 -#, gcc-internal-format, gfc-internal-format -msgid "Unexpected junk after ELSE statement at %C" +#: fortran/match.c:1738 +#, gcc-internal-format +msgid "Missing %<(%> in ELSE IF expression at %C" msgstr "" -#: fortran/match.c:1723 fortran/match.c:1758 +#: fortran/match.c:1748 #, gcc-internal-format -msgid "Label %qs at %C doesn't match IF label %qs" +msgid "Missing %<)%> in ELSE IF expression at %C" msgstr "" -#: fortran/match.c:1752 +#: fortran/match.c:1763 #, gcc-internal-format, gfc-internal-format -msgid "Unexpected junk after ELSE IF statement at %C" +msgid "Missing THEN in ELSE IF statement after %L" msgstr "" -#: fortran/match.c:1816 +#: fortran/match.c:1771 +#, gcc-internal-format, gfc-internal-format +msgid "Syntax error in ELSE IF statement after %L" +msgstr "" + +#: fortran/match.c:1777 +#, gcc-internal-format +msgid "Label %qs after %L doesn't match IF label %qs" +msgstr "" + +#: fortran/match.c:1838 #, gcc-internal-format, gfc-internal-format msgid "Image control statement CRITICAL at %C in PURE procedure" msgstr "" -#: fortran/match.c:1822 +#: fortran/match.c:1844 #, gcc-internal-format, gfc-internal-format msgid "Image control statement CRITICAL at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:1829 +#: fortran/match.c:1851 #, gcc-internal-format, gfc-internal-format msgid "CRITICAL statement at %C" msgstr "" -#: fortran/match.c:1841 +#: fortran/match.c:1863 #, gcc-internal-format, gfc-internal-format msgid "Nested CRITICAL block at %C" msgstr "" -#: fortran/match.c:1893 +#: fortran/match.c:1915 #, gcc-internal-format, gfc-internal-format msgid "Expected association list at %C" msgstr "" -#: fortran/match.c:1905 +#: fortran/match.c:1927 #, gcc-internal-format, gfc-internal-format msgid "Expected association at %C" msgstr "" -#: fortran/match.c:1915 +#: fortran/match.c:1937 #, gcc-internal-format, gfc-internal-format msgid "Invalid association target at %C" msgstr "" -#: fortran/match.c:1926 +#: fortran/match.c:1948 #, gcc-internal-format msgid "Duplicate name %qs in association at %C" msgstr "" -#: fortran/match.c:1934 +#: fortran/match.c:1956 #, gcc-internal-format, gfc-internal-format msgid "Association target at %C must not be coindexed" msgstr "" -#: fortran/match.c:1952 +#: fortran/match.c:1974 #, gcc-internal-format msgid "Expected %<)%> or %<,%> at %C" msgstr "" -#: fortran/match.c:1970 +#: fortran/match.c:1992 #, gcc-internal-format, gfc-internal-format msgid "Junk after ASSOCIATE statement at %C" msgstr "" -#: fortran/match.c:2092 +#: fortran/match.c:2114 #, gcc-internal-format msgid "Derived type %qs at %L may not be ABSTRACT" msgstr "" -#: fortran/match.c:2164 fortran/match.c:2233 fortran/match.c:2256 +#: fortran/match.c:2186 fortran/match.c:2255 fortran/match.c:2278 #, gcc-internal-format, gfc-internal-format msgid "Invalid type-spec at %C" msgstr "" -#: fortran/match.c:2351 +#: fortran/match.c:2373 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in FORALL iterator at %C" msgstr "" -#: fortran/match.c:2616 +#: fortran/match.c:2638 #, gcc-internal-format, gfc-internal-format msgid "DO CONCURRENT construct at %C" msgstr "" -#: fortran/match.c:2741 +#: fortran/match.c:2763 #, gcc-internal-format msgid "Name %qs in %s statement at %C is unknown" msgstr "" -#: fortran/match.c:2749 +#: fortran/match.c:2771 #, gcc-internal-format msgid "Name %qs in %s statement at %C is not a construct name" msgstr "" -#: fortran/match.c:2761 +#: fortran/match.c:2783 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaves CRITICAL construct" msgstr "" #. F2008, C821 & C845. -#: fortran/match.c:2769 +#: fortran/match.c:2791 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaves DO CONCURRENT construct" msgstr "" -#: fortran/match.c:2781 +#: fortran/match.c:2803 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C is not within a construct" msgstr "" -#: fortran/match.c:2784 +#: fortran/match.c:2806 #, gcc-internal-format msgid "%s statement at %C is not within construct %qs" msgstr "" -#: fortran/match.c:2809 +#: fortran/match.c:2831 #, gcc-internal-format msgid "CYCLE statement at %C is not applicable to non-loop construct %qs" msgstr "" -#: fortran/match.c:2814 +#: fortran/match.c:2836 #, gcc-internal-format, gfc-internal-format msgid "EXIT statement with no do-construct-name at %C" msgstr "" -#: fortran/match.c:2820 +#: fortran/match.c:2842 #, gcc-internal-format msgid "%s statement at %C is not applicable to construct %qs" msgstr "" -#: fortran/match.c:2828 +#: fortran/match.c:2850 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaving OpenACC structured block" msgstr "" -#: fortran/match.c:2829 +#: fortran/match.c:2851 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C leaving OpenMP structured block" msgstr "" -#: fortran/match.c:2853 +#: fortran/match.c:2875 #, gcc-internal-format, gfc-internal-format msgid "EXIT statement at %C terminating !$ACC LOOP loop" msgstr "" -#: fortran/match.c:2858 +#: fortran/match.c:2880 #, gcc-internal-format, gfc-internal-format msgid "CYCLE statement at %C to non-innermost collapsed !$ACC LOOP loop" msgstr "" -#: fortran/match.c:2887 +#: fortran/match.c:2909 #, gcc-internal-format, gfc-internal-format msgid "EXIT statement at %C terminating !$OMP DO loop" msgstr "" -#: fortran/match.c:2892 +#: fortran/match.c:2914 #, gcc-internal-format, gfc-internal-format msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop" msgstr "" -#: fortran/match.c:2977 +#: fortran/match.c:2999 #, gcc-internal-format, gfc-internal-format msgid "Blank required in %s statement near %C" msgstr "" -#: fortran/match.c:2995 +#: fortran/match.c:3017 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %C cannot be negative" msgstr "" -#: fortran/match.c:3001 +#: fortran/match.c:3023 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %C contains too many digits" msgstr "" -#: fortran/match.c:3022 +#: fortran/match.c:3044 #, gcc-internal-format, gfc-internal-format msgid "%s statement at %C in PURE procedure" msgstr "" -#: fortran/match.c:3038 +#: fortran/match.c:3060 #, gcc-internal-format, gfc-internal-format msgid "Image control statement STOP at %C in CRITICAL block" msgstr "" -#: fortran/match.c:3043 +#: fortran/match.c:3065 #, gcc-internal-format, gfc-internal-format msgid "Image control statement STOP at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:3054 +#: fortran/match.c:3076 #, gcc-internal-format, gfc-internal-format msgid "" "STOP code at %L must be a scalar CHARACTER constant or " "digit[digit[digit[digit[digit]]]]" msgstr "" -#: fortran/match.c:3067 +#: fortran/match.c:3089 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be either INTEGER or CHARACTER type" msgstr "" -#: fortran/match.c:3074 +#: fortran/match.c:3096 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be scalar" msgstr "" -#: fortran/match.c:3081 +#: fortran/match.c:3103 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be default character KIND=%d" msgstr "" -#: fortran/match.c:3088 +#: fortran/match.c:3110 #, gcc-internal-format, gfc-internal-format msgid "STOP code at %L must be default integer KIND=%d" msgstr "" -#: fortran/match.c:3136 +#: fortran/match.c:3158 #, gcc-internal-format, gfc-internal-format msgid "PAUSE statement at %C" msgstr "" -#: fortran/match.c:3157 +#: fortran/match.c:3179 #, gcc-internal-format, gfc-internal-format msgid "ERROR STOP statement at %C" msgstr "" -#: fortran/match.c:3183 +#: fortran/match.c:3205 #, gcc-internal-format, gfc-internal-format msgid "Image control statement EVENT %s at %C in PURE procedure" msgstr "" -#: fortran/match.c:3198 +#: fortran/match.c:3220 #, gcc-internal-format, gfc-internal-format msgid "Image control statement EVENT %s at %C in CRITICAL block" msgstr "" -#: fortran/match.c:3205 +#: fortran/match.c:3227 #, gcc-internal-format, gfc-internal-format msgid "Image control statement EVENT %s at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:3235 fortran/match.c:3577 fortran/match.c:3789 -#: fortran/match.c:4335 fortran/match.c:4677 +#: fortran/match.c:3257 fortran/match.c:3599 fortran/match.c:3811 +#: fortran/match.c:4357 fortran/match.c:4699 #, gcc-internal-format, gfc-internal-format msgid "Redundant STAT tag found at %L" msgstr "" -#: fortran/match.c:3256 fortran/match.c:3598 fortran/match.c:3809 -#: fortran/match.c:4361 fortran/match.c:4702 +#: fortran/match.c:3278 fortran/match.c:3620 fortran/match.c:3831 +#: fortran/match.c:4383 fortran/match.c:4724 #, gcc-internal-format, gfc-internal-format msgid "Redundant ERRMSG tag found at %L" msgstr "" -#: fortran/match.c:3277 +#: fortran/match.c:3299 #, gcc-internal-format, gfc-internal-format msgid "Redundant UNTIL_COUNT tag found at %L" msgstr "" -#: fortran/match.c:3343 +#: fortran/match.c:3365 #, gcc-internal-format, gfc-internal-format msgid "EVENT POST statement at %C" msgstr "" -#: fortran/match.c:3353 +#: fortran/match.c:3375 #, gcc-internal-format, gfc-internal-format msgid "EVENT WAIT statement at %C" msgstr "" -#: fortran/match.c:3365 +#: fortran/match.c:3387 #, gcc-internal-format, gfc-internal-format msgid "FAIL IMAGE statement at %C" msgstr "" -#: fortran/match.c:3389 +#: fortran/match.c:3411 #, gcc-internal-format, gfc-internal-format msgid "FORM TEAM statement at %C" msgstr "" -#: fortran/match.c:3428 +#: fortran/match.c:3450 #, gcc-internal-format, gfc-internal-format msgid "CHANGE TEAM statement at %C" msgstr "" -#: fortran/match.c:3458 +#: fortran/match.c:3480 #, gcc-internal-format, gfc-internal-format msgid "END TEAM statement at %C" msgstr "" -#: fortran/match.c:3482 +#: fortran/match.c:3504 #, gcc-internal-format, gfc-internal-format msgid "SYNC TEAM statement at %C" msgstr "" -#: fortran/match.c:3525 +#: fortran/match.c:3547 #, gcc-internal-format, gfc-internal-format msgid "Image control statement %s at %C in PURE procedure" msgstr "" -#: fortran/match.c:3540 +#: fortran/match.c:3562 #, gcc-internal-format, gfc-internal-format msgid "Image control statement %s at %C in CRITICAL block" msgstr "" -#: fortran/match.c:3547 +#: fortran/match.c:3569 #, gcc-internal-format, gfc-internal-format msgid "Image control statement %s at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:3619 +#: fortran/match.c:3641 #, gcc-internal-format, gfc-internal-format msgid "Redundant ACQUIRED_LOCK tag found at %L" msgstr "" -#: fortran/match.c:3684 +#: fortran/match.c:3706 #, gcc-internal-format, gfc-internal-format msgid "LOCK statement at %C" msgstr "" -#: fortran/match.c:3694 +#: fortran/match.c:3716 #, gcc-internal-format, gfc-internal-format msgid "UNLOCK statement at %C" msgstr "" -#: fortran/match.c:3719 +#: fortran/match.c:3741 #, gcc-internal-format, gfc-internal-format msgid "Image control statement SYNC at %C in PURE procedure" msgstr "" -#: fortran/match.c:3725 +#: fortran/match.c:3747 #, gcc-internal-format, gfc-internal-format msgid "SYNC statement at %C" msgstr "" -#: fortran/match.c:3737 +#: fortran/match.c:3759 #, gcc-internal-format, gfc-internal-format msgid "Image control statement SYNC at %C in CRITICAL block" msgstr "" -#: fortran/match.c:3743 +#: fortran/match.c:3765 #, gcc-internal-format, gfc-internal-format msgid "Image control statement SYNC at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:3923 +#: fortran/match.c:3945 #, gcc-internal-format, gfc-internal-format msgid "ASSIGN statement at %C" msgstr "" -#: fortran/match.c:3967 +#: fortran/match.c:3989 #, gcc-internal-format, gfc-internal-format msgid "Assigned GOTO statement at %C" msgstr "" -#: fortran/match.c:4011 fortran/match.c:4062 +#: fortran/match.c:4033 fortran/match.c:4084 #, gcc-internal-format, gfc-internal-format msgid "Statement label list in GOTO at %C cannot be empty" msgstr "" -#: fortran/match.c:4072 +#: fortran/match.c:4094 #, gcc-internal-format, gfc-internal-format msgid "Computed GOTO at %C" msgstr "" -#: fortran/match.c:4147 +#: fortran/match.c:4169 #, gcc-internal-format, gfc-internal-format msgid "Error in type-spec at %L" msgstr "" -#: fortran/match.c:4160 +#: fortran/match.c:4182 #, gcc-internal-format, gfc-internal-format msgid "typespec in ALLOCATE at %L" msgstr "" -#: fortran/match.c:4183 +#: fortran/match.c:4205 #, gcc-internal-format, gfc-internal-format msgid "" "The type parameter spec list in the type-spec at %L cannot contain DEFERRED " "parameters" msgstr "" -#: fortran/match.c:4217 +#: fortran/match.c:4239 #, gcc-internal-format, gfc-internal-format msgid "Bad allocate-object at %C for a PURE procedure" msgstr "" -#: fortran/match.c:4232 +#: fortran/match.c:4254 #, gcc-internal-format, gfc-internal-format msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L" msgstr "" -#: fortran/match.c:4254 +#: fortran/match.c:4276 #, gcc-internal-format, gfc-internal-format msgid "ALLOCATE of coarray at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:4259 +#: fortran/match.c:4281 #, gcc-internal-format, gfc-internal-format msgid "ALLOCATE of coarray at %C in CRITICAL block" msgstr "" -#: fortran/match.c:4281 +#: fortran/match.c:4303 #, gcc-internal-format, gfc-internal-format msgid "" "Allocate-object at %L is neither a data pointer nor an allocatable variable" msgstr "" -#: fortran/match.c:4293 +#: fortran/match.c:4315 #, gcc-internal-format, gfc-internal-format msgid "Type of entity at %L is type incompatible with typespec" msgstr "" -#: fortran/match.c:4301 +#: fortran/match.c:4323 #, gcc-internal-format, gfc-internal-format msgid "" "Kind type parameter for entity at %L differs from the kind type parameter of " "the typespec" msgstr "" -#: fortran/match.c:4318 +#: fortran/match.c:4340 #, gcc-internal-format, gfc-internal-format msgid "Shape specification for allocatable scalar at %C" msgstr "" -#: fortran/match.c:4355 +#: fortran/match.c:4377 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG tag at %L" msgstr "" -#: fortran/match.c:4378 +#: fortran/match.c:4400 #, gcc-internal-format, gfc-internal-format msgid "SOURCE tag at %L" msgstr "" -#: fortran/match.c:4384 +#: fortran/match.c:4406 #, gcc-internal-format, gfc-internal-format msgid "Redundant SOURCE tag found at %L" msgstr "" -#: fortran/match.c:4391 +#: fortran/match.c:4413 #, gcc-internal-format, gfc-internal-format msgid "SOURCE tag at %L conflicts with the typespec at %L" msgstr "" -#: fortran/match.c:4397 +#: fortran/match.c:4419 #, gcc-internal-format, gfc-internal-format msgid "SOURCE tag at %L with more than a single allocate object" msgstr "" -#: fortran/match.c:4415 +#: fortran/match.c:4437 #, gcc-internal-format, gfc-internal-format msgid "MOLD tag at %L" msgstr "" -#: fortran/match.c:4421 +#: fortran/match.c:4443 #, gcc-internal-format, gfc-internal-format msgid "Redundant MOLD tag found at %L" msgstr "" -#: fortran/match.c:4428 +#: fortran/match.c:4450 #, gcc-internal-format, gfc-internal-format msgid "MOLD tag at %L conflicts with the typespec at %L" msgstr "" -#: fortran/match.c:4454 +#: fortran/match.c:4476 #, gcc-internal-format, gfc-internal-format msgid "MOLD tag at %L conflicts with SOURCE tag at %L" msgstr "" -#: fortran/match.c:4462 +#: fortran/match.c:4484 #, gcc-internal-format, gfc-internal-format msgid "" "Allocate-object at %L with a deferred type parameter requires either a type-" "spec or SOURCE tag or a MOLD tag" msgstr "" -#: fortran/match.c:4474 +#: fortran/match.c:4496 #, gcc-internal-format, gfc-internal-format msgid "" "Unlimited polymorphic allocate-object at %L requires either a type-spec or " "SOURCE tag or a MOLD tag" msgstr "" -#: fortran/match.c:4541 +#: fortran/match.c:4563 #, gcc-internal-format, gfc-internal-format msgid "Pointer object at %C shall not be coindexed" msgstr "" -#: fortran/match.c:4627 +#: fortran/match.c:4649 #, gcc-internal-format, gfc-internal-format msgid "Illegal allocate-object at %C for a PURE procedure" msgstr "" -#: fortran/match.c:4637 +#: fortran/match.c:4659 #, gcc-internal-format, gfc-internal-format msgid "DEALLOCATE of coarray at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:4644 +#: fortran/match.c:4666 #, gcc-internal-format, gfc-internal-format msgid "DEALLOCATE of coarray at %C in CRITICAL block" msgstr "" -#: fortran/match.c:4660 +#: fortran/match.c:4682 #, gcc-internal-format, gfc-internal-format msgid "" "Allocate-object at %C is not a nonprocedure pointer nor an allocatable " "variable" msgstr "" -#: fortran/match.c:4697 +#: fortran/match.c:4719 #, gcc-internal-format, gfc-internal-format msgid "ERRMSG at %L" msgstr "" -#: fortran/match.c:4754 +#: fortran/match.c:4776 #, gcc-internal-format, gfc-internal-format msgid "Image control statement RETURN at %C in CRITICAL block" msgstr "" -#: fortran/match.c:4760 +#: fortran/match.c:4782 #, gcc-internal-format, gfc-internal-format msgid "Image control statement RETURN at %C in DO CONCURRENT block" msgstr "" -#: fortran/match.c:4769 +#: fortran/match.c:4791 #, gcc-internal-format, gfc-internal-format msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE" msgstr "" -#: fortran/match.c:4800 +#: fortran/match.c:4822 #, gcc-internal-format, gfc-internal-format msgid "RETURN statement in main program at %C" msgstr "" -#: fortran/match.c:4828 +#: fortran/match.c:4850 #, gcc-internal-format, gfc-internal-format msgid "Expected component reference at %C" msgstr "" -#: fortran/match.c:4837 +#: fortran/match.c:4859 #, gcc-internal-format, gfc-internal-format msgid "Junk after CALL at %C" msgstr "" -#: fortran/match.c:4848 +#: fortran/match.c:4870 #, gcc-internal-format, gfc-internal-format msgid "Expected type-bound procedure or procedure pointer component at %C" msgstr "" -#: fortran/match.c:5069 +#: fortran/match.c:5091 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in common block name at %C" msgstr "" @@ -59901,185 +59937,185 @@ msgstr "" #. If we find an error, just print it and continue, #. cause it's just semantic, and we can see if there #. are more errors. -#: fortran/match.c:5136 +#: fortran/match.c:5158 #, gcc-internal-format msgid "" "Variable %qs at %L in common block %qs at %C must be declared with a C " "interoperable kind since common block %qs is bind(c)" msgstr "" -#: fortran/match.c:5145 +#: fortran/match.c:5167 #, gcc-internal-format msgid "" "Variable %qs in common block %qs at %C cannot be bind(c) since it is not " "global" msgstr "" -#: fortran/match.c:5152 +#: fortran/match.c:5174 #, gcc-internal-format msgid "Symbol %qs at %C is already in a COMMON block" msgstr "" -#: fortran/match.c:5160 +#: fortran/match.c:5182 #, gcc-internal-format msgid "Initialized symbol %qs at %C can only be COMMON in BLOCK DATA" msgstr "" -#: fortran/match.c:5176 +#: fortran/match.c:5198 #, gcc-internal-format msgid "Array specification for symbol %qs in COMMON at %C must be explicit" msgstr "" -#: fortran/match.c:5186 +#: fortran/match.c:5208 #, gcc-internal-format msgid "Symbol %qs in COMMON at %C cannot be a POINTER array" msgstr "" -#: fortran/match.c:5232 +#: fortran/match.c:5254 #, gcc-internal-format msgid "" "Symbol %qs, in COMMON block %qs at %C is being indirectly equivalenced to " "another COMMON block %qs" msgstr "" -#: fortran/match.c:5280 +#: fortran/match.c:5302 #, gcc-internal-format, gfc-internal-format msgid "BLOCK DATA construct at %L" msgstr "" -#: fortran/match.c:5364 +#: fortran/match.c:5386 #, gcc-internal-format msgid "Namelist group name %qs at %C already has a basic type of %s" msgstr "" -#: fortran/match.c:5372 +#: fortran/match.c:5394 #, gcc-internal-format msgid "" "Namelist group name %qs at %C already is USE associated and cannot be " "respecified." msgstr "" -#: fortran/match.c:5398 +#: fortran/match.c:5420 #, gcc-internal-format msgid "Assumed size array %qs in namelist %qs at %C is not allowed" msgstr "" -#: fortran/match.c:5532 +#: fortran/match.c:5554 #, gcc-internal-format, gfc-internal-format msgid "Derived type component %C is not a permitted EQUIVALENCE member" msgstr "" -#: fortran/match.c:5540 +#: fortran/match.c:5562 #, gcc-internal-format, gfc-internal-format msgid "Array reference in EQUIVALENCE at %C cannot be an array section" msgstr "" -#: fortran/match.c:5568 +#: fortran/match.c:5590 #, gcc-internal-format, gfc-internal-format msgid "EQUIVALENCE at %C requires two or more objects" msgstr "" -#: fortran/match.c:5582 +#: fortran/match.c:5604 #, gcc-internal-format, gfc-internal-format msgid "" "Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C" msgstr "" -#: fortran/match.c:5595 +#: fortran/match.c:5617 #, gcc-internal-format, gfc-internal-format msgid "Expecting a comma in EQUIVALENCE at %C" msgstr "" -#: fortran/match.c:5600 +#: fortran/match.c:5622 #, gcc-internal-format, gfc-internal-format msgid "EQUIVALENCE statement at %C" msgstr "" -#: fortran/match.c:5714 +#: fortran/match.c:5736 #, gcc-internal-format, gfc-internal-format msgid "Statement function at %L is recursive" msgstr "" -#: fortran/match.c:5724 +#: fortran/match.c:5746 #, gcc-internal-format, gfc-internal-format msgid "Statement function at %L cannot appear within an INTERFACE" msgstr "" -#: fortran/match.c:5729 +#: fortran/match.c:5751 #, gcc-internal-format, gfc-internal-format msgid "Statement function at %C" msgstr "" -#: fortran/match.c:5854 fortran/match.c:5870 +#: fortran/match.c:5876 fortran/match.c:5892 #, gcc-internal-format, gfc-internal-format msgid "Expression in CASE selector at %L cannot be %s" msgstr "" -#: fortran/match.c:5892 +#: fortran/match.c:5914 #, gcc-internal-format, gfc-internal-format msgid "Expected initialization expression in CASE at %C" msgstr "" -#: fortran/match.c:5924 +#: fortran/match.c:5946 #, gcc-internal-format msgid "Expected block name %qs of SELECT construct at %C" msgstr "" -#: fortran/match.c:6226 +#: fortran/match.c:6248 #, gcc-internal-format, gfc-internal-format msgid "parse error in SELECT TYPE statement at %C" msgstr "" -#: fortran/match.c:6251 +#: fortran/match.c:6273 #, gcc-internal-format, gfc-internal-format msgid "" "Selector in SELECT TYPE at %C is not a named variable; use associate-name=>" msgstr "" -#: fortran/match.c:6289 +#: fortran/match.c:6311 #, gcc-internal-format, gfc-internal-format msgid "Unexpected CASE statement at %C" msgstr "" -#: fortran/match.c:6341 +#: fortran/match.c:6363 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in CASE specification at %C" msgstr "" -#: fortran/match.c:6359 +#: fortran/match.c:6381 #, gcc-internal-format, gfc-internal-format msgid "Unexpected TYPE IS statement at %C" msgstr "" -#: fortran/match.c:6391 +#: fortran/match.c:6413 #, gcc-internal-format, gfc-internal-format msgid "" "The type-spec shall not specify a sequence derived type or a type with the " "BIND attribute in SELECT TYPE at %C [F2003:C815]" msgstr "" -#: fortran/match.c:6402 +#: fortran/match.c:6424 #, gcc-internal-format, gfc-internal-format msgid "" "All the LEN type parameters in the TYPE IS statement at %C must be ASSUMED" msgstr "" -#: fortran/match.c:6413 +#: fortran/match.c:6435 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in TYPE IS specification at %C" msgstr "" -#: fortran/match.c:6489 +#: fortran/match.c:6511 #, gcc-internal-format, gfc-internal-format msgid "Syntax error in CLASS IS specification at %C" msgstr "" -#: fortran/match.c:6612 +#: fortran/match.c:6634 #, gcc-internal-format, gfc-internal-format msgid "ELSEWHERE statement at %C not enclosed in WHERE block" msgstr "" -#: fortran/match.c:6650 +#: fortran/match.c:6672 #, gcc-internal-format msgid "Label %qs at %C doesn't match WHERE label %qs" msgstr "" @@ -60283,155 +60319,155 @@ msgstr "" msgid "write_symtree(): Symbol not written" msgstr "" -#: fortran/module.c:6229 +#: fortran/module.c:6232 #, gcc-internal-format msgid "Cannot open module file %qs for writing at %C: %s" msgstr "" -#: fortran/module.c:6250 +#: fortran/module.c:6253 #, gcc-internal-format msgid "Error writing module file %qs for writing: %s" msgstr "" -#: fortran/module.c:6261 +#: fortran/module.c:6264 #, gcc-internal-format msgid "Cannot delete module file %qs: %s" msgstr "" -#: fortran/module.c:6264 +#: fortran/module.c:6267 #, gcc-internal-format msgid "Cannot rename module file %qs to %qs: %s" msgstr "" -#: fortran/module.c:6270 +#: fortran/module.c:6273 #, gcc-internal-format msgid "Cannot delete temporary module file %qs: %s" msgstr "" -#: fortran/module.c:6327 +#: fortran/module.c:6330 #, gcc-internal-format msgid "Symbol %qs at %C already declared" msgstr "" -#: fortran/module.c:6398 +#: fortran/module.c:6401 #, gcc-internal-format, gfc-internal-format msgid "import_iso_c_binding_module(): Unable to create symbol for %s" msgstr "" -#: fortran/module.c:6506 fortran/module.c:6850 +#: fortran/module.c:6509 fortran/module.c:6853 #, gcc-internal-format msgid "The symbol %qs, referenced at %L, is not in the selected standard" msgstr "" -#: fortran/module.c:6634 +#: fortran/module.c:6637 #, gcc-internal-format msgid "Symbol %qs referenced at %L not found in intrinsic module ISO_C_BINDING" msgstr "" -#: fortran/module.c:6655 fortran/module.c:6688 fortran/module.c:6730 +#: fortran/module.c:6658 fortran/module.c:6691 fortran/module.c:6733 #, gcc-internal-format msgid "Symbol %qs already declared" msgstr "" -#: fortran/module.c:6835 +#: fortran/module.c:6838 #, gcc-internal-format msgid "" "Use of intrinsic module %qs at %C conflicts with non-intrinsic module name " "used previously" msgstr "" -#: fortran/module.c:6857 +#: fortran/module.c:6860 #, gcc-internal-format msgid "" "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module " "ISO_FORTRAN_ENV at %L is incompatible with option %qs" msgstr "" -#: fortran/module.c:6925 +#: fortran/module.c:6928 #, gcc-internal-format, gfc-internal-format msgid "" "Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module " "ISO_FORTRAN_ENV at %C is incompatible with option %s" msgstr "" -#: fortran/module.c:6979 +#: fortran/module.c:6982 #, gcc-internal-format msgid "" "Symbol %qs referenced at %L not found in intrinsic module ISO_FORTRAN_ENV" msgstr "" -#: fortran/module.c:7005 +#: fortran/module.c:7008 #, gcc-internal-format, gfc-internal-format msgid "USE statement at %C has no ONLY qualifier" msgstr "" -#: fortran/module.c:7034 +#: fortran/module.c:7037 #, gcc-internal-format, gfc-internal-format msgid "ISO_FORTRAN_ENV intrinsic module at %C" msgstr "" -#: fortran/module.c:7046 +#: fortran/module.c:7049 #, gcc-internal-format, gfc-internal-format msgid "ISO_C_BINDING module at %C" msgstr "" -#: fortran/module.c:7059 +#: fortran/module.c:7062 #, gcc-internal-format msgid "Cannot find an intrinsic module named %qs at %C" msgstr "" -#: fortran/module.c:7065 +#: fortran/module.c:7068 #, gcc-internal-format, gfc-internal-format msgid "IEEE_FEATURES module at %C" msgstr "" -#: fortran/module.c:7071 +#: fortran/module.c:7074 #, gcc-internal-format, gfc-internal-format msgid "IEEE_EXCEPTIONS module at %C" msgstr "" -#: fortran/module.c:7077 +#: fortran/module.c:7080 #, gcc-internal-format, gfc-internal-format msgid "IEEE_ARITHMETIC module at %C" msgstr "" -#: fortran/module.c:7087 +#: fortran/module.c:7090 #, gcc-internal-format msgid "Cannot open module file %qs for reading at %C: %s" msgstr "" -#: fortran/module.c:7090 +#: fortran/module.c:7093 #, gcc-internal-format msgid "" "Module file %qs has not been generated, either because the module does not " "contain a MODULE PROCEDURE or there is an error in the module." msgstr "" -#: fortran/module.c:7101 +#: fortran/module.c:7104 #, gcc-internal-format msgid "" "Use of non-intrinsic module %qs at %C conflicts with intrinsic module name " "used previously" msgstr "" -#: fortran/module.c:7124 +#: fortran/module.c:7127 #, gcc-internal-format msgid "File %qs opened at %C is not a GNU Fortran module file" msgstr "" -#: fortran/module.c:7132 +#: fortran/module.c:7135 #, gcc-internal-format msgid "" "Cannot read module file %qs opened at %C, because it was created by a " "different version of GNU Fortran" msgstr "" -#: fortran/module.c:7149 +#: fortran/module.c:7152 #, gcc-internal-format msgid "Cannot USE a submodule that is currently built" msgstr "" -#: fortran/module.c:7151 +#: fortran/module.c:7154 #, gcc-internal-format msgid "Cannot USE a module that is currently built" msgstr "" -- cgit v1.1 From eae0da61e5dd4406a492bbe5d57238eda2e2cf0d Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Fri, 3 May 2019 00:16:20 +0000 Subject: Daily bump. From-SVN: r270831 --- gcc/DATESTAMP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 5a92647..0da9b2e 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20190502 +20190503 -- cgit v1.1 From c0f9d1fd7e54434e4f06b20b9a61a9d35c578223 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 07:05:34 +0000 Subject: passes.c (execute_function_todo): Remove dead code. 2019-05-03 Richard Biener * passes.c (execute_function_todo): Remove dead code. From-SVN: r270832 --- gcc/ChangeLog | 4 ++++ gcc/passes.c | 24 +++++------------------- 2 files changed, 9 insertions(+), 19 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5342864..65df011 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-05-03 Richard Biener + + * passes.c (execute_function_todo): Remove dead code. + 2019-05-02 Segher Boessenkool * config/rs6000/rs6000.c (rs6000_dbx_register_number): Do not use diff --git a/gcc/passes.c b/gcc/passes.c index 02561f8..a9c2288 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -1924,26 +1924,12 @@ execute_function_todo (function *fn, void *data) push_cfun (fn); - /* Always cleanup the CFG before trying to update SSA. */ + /* If we need to cleanup the CFG let it perform a needed SSA update. */ if (flags & TODO_cleanup_cfg) - { - cleanup_tree_cfg (flags & TODO_update_ssa_any); - - /* When cleanup_tree_cfg merges consecutive blocks, it may - perform some simplistic propagation when removing single - valued PHI nodes. This propagation may, in turn, cause the - SSA form to become out-of-date (see PR 22037). So, even - if the parent pass had not scheduled an SSA update, we may - still need to do one. */ - if (!(flags & TODO_update_ssa_any) && need_ssa_update_p (cfun)) - flags |= TODO_update_ssa; - } - - if (flags & TODO_update_ssa_any) - { - unsigned update_flags = flags & TODO_update_ssa_any; - update_ssa (update_flags); - } + cleanup_tree_cfg (flags & TODO_update_ssa_any); + else if (flags & TODO_update_ssa_any) + update_ssa (flags & TODO_update_ssa_any); + gcc_assert (!need_ssa_update_p (fn)); if (flag_tree_pta && (flags & TODO_rebuild_alias)) compute_may_aliases (); -- cgit v1.1 From 37f808c4a683a7431b7aa6d49f4c2e385cc0d707 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 07:07:28 +0000 Subject: re PR c++/89698 (Run-time error due to optimization of field access after cast at -Os/-O2 and higher) 2019-05-03 Richard Biener PR tree-optimization/89698 * gimple-fold.c (canonicalize_constructor_val): Early out for constants, handle unfolded INTEGER_CSTs as they appear in C++ virtual table ctors. * g++.dg/tree-ssa/pr89698.C: New testcase. From-SVN: r270833 --- gcc/ChangeLog | 7 +++++++ gcc/gimple-fold.c | 14 ++++++++++++-- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/tree-ssa/pr89698.C | 29 +++++++++++++++++++++++++++++ 4 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/g++.dg/tree-ssa/pr89698.C (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 65df011..5973192 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2019-05-03 Richard Biener + PR tree-optimization/89698 + * gimple-fold.c (canonicalize_constructor_val): Early out + for constants, handle unfolded INTEGER_CSTs as they appear in + C++ virtual table ctors. + +2019-05-03 Richard Biener + * passes.c (execute_function_todo): Remove dead code. 2019-05-02 Segher Boessenkool diff --git a/gcc/gimple-fold.c b/gcc/gimple-fold.c index d3ef05b..1b10bae 100644 --- a/gcc/gimple-fold.c +++ b/gcc/gimple-fold.c @@ -207,6 +207,9 @@ create_tmp_reg_or_ssa_name (tree type, gimple *stmt) tree canonicalize_constructor_val (tree cval, tree from_decl) { + if (CONSTANT_CLASS_P (cval)) + return cval; + tree orig_cval = cval; STRIP_NOPS (cval); if (TREE_CODE (cval) == POINTER_PLUS_EXPR @@ -257,8 +260,15 @@ canonicalize_constructor_val (tree cval, tree from_decl) cval = fold_convert (TREE_TYPE (orig_cval), cval); return cval; } - if (TREE_OVERFLOW_P (cval)) - return drop_tree_overflow (cval); + /* In CONSTRUCTORs we may see unfolded constants like (int (*) ()) 0. */ + if (TREE_CODE (cval) == INTEGER_CST) + { + if (TREE_OVERFLOW_P (cval)) + cval = drop_tree_overflow (cval); + if (!useless_type_conversion_p (TREE_TYPE (orig_cval), TREE_TYPE (cval))) + cval = fold_convert (TREE_TYPE (orig_cval), cval); + return cval; + } return orig_cval; } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ad12005..660110d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-05-03 Richard Biener + + PR tree-optimization/89698 + * g++.dg/tree-ssa/pr89698.C: New testcase. + 2019-05-02 Iain Sandoe * g++.dg/ext/instantiate2.C: Remove special-casing for Darwin. diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr89698.C b/gcc/testsuite/g++.dg/tree-ssa/pr89698.C new file mode 100644 index 0000000..9d3b408 --- /dev/null +++ b/gcc/testsuite/g++.dg/tree-ssa/pr89698.C @@ -0,0 +1,29 @@ +// { dg-do compile } +// { dg-options "-O -fdump-tree-fre1" } + +class A { + virtual void f(){}; +public: + int x; + A(int in): x(in) {}; +}; + +class B: public A { +public: + int y; + B(int in):A(in-1), y(in) {}; +}; + +void bar(void *); +void test() +{ + B b(2); + A* bp = &b; + void* vp = dynamic_cast(bp); + bar (vp); +} + +// We should be able to constant fold from the virtual table +// the offset added to bp for the dynamic cast and forward +// &b to the argument of bar +// { dg-final { scan-tree-dump "bar \\\(&b" "fre1" } } -- cgit v1.1 From d1700aa1407c188165eb8e06f40bf059a9b81b16 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 3 May 2019 09:32:06 +0200 Subject: re PR tree-optimization/90303 (ICE in hash_odr_name with fastcall attribute starting with r267359) PR tree-optimization/90303 * ipa-devirt.c (obj_type_ref_class, get_odr_type): Don't use TYPE_CANONICAL for TYPE_STRUCTURAL_EQUALITY_P types in !in_lto_p mode. * g++.target/i386/pr90303.C: New test. From-SVN: r270835 --- gcc/ChangeLog | 6 ++++++ gcc/ipa-devirt.c | 4 ++-- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.target/i386/pr90303.C | 8 ++++++++ 4 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/g++.target/i386/pr90303.C (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5973192..2c4150d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-05-03 Jakub Jelinek + + PR tree-optimization/90303 + * ipa-devirt.c (obj_type_ref_class, get_odr_type): Don't use + TYPE_CANONICAL for TYPE_STRUCTURAL_EQUALITY_P types in !in_lto_p mode. + 2019-05-03 Richard Biener PR tree-optimization/89698 diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c index defa2ed..3e040e2 100644 --- a/gcc/ipa-devirt.c +++ b/gcc/ipa-devirt.c @@ -2020,7 +2020,7 @@ obj_type_ref_class (const_tree ref) ref = TREE_VALUE (TYPE_ARG_TYPES (ref)); gcc_checking_assert (TREE_CODE (ref) == POINTER_TYPE); tree ret = TREE_TYPE (ref); - if (!in_lto_p) + if (!in_lto_p && !TYPE_STRUCTURAL_EQUALITY_P (ret)) ret = TYPE_CANONICAL (ret); else ret = get_odr_type (ret)->type; @@ -2042,7 +2042,7 @@ get_odr_type (tree type, bool insert) int base_id = -1; type = TYPE_MAIN_VARIANT (type); - if (!in_lto_p) + if (!in_lto_p && !TYPE_STRUCTURAL_EQUALITY_P (type)) type = TYPE_CANONICAL (type); gcc_checking_assert (can_be_name_hashed_p (type) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 660110d..509eb17 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-05-03 Jakub Jelinek + + PR tree-optimization/90303 + * g++.target/i386/pr90303.C: New test. + 2019-05-03 Richard Biener PR tree-optimization/89698 diff --git a/gcc/testsuite/g++.target/i386/pr90303.C b/gcc/testsuite/g++.target/i386/pr90303.C new file mode 100644 index 0000000..2a2dd06 --- /dev/null +++ b/gcc/testsuite/g++.target/i386/pr90303.C @@ -0,0 +1,8 @@ +// PR tree-optimization/90303 +// { dg-do compile { target ia32 } } +// { dg-additional-options "-O2" } + +struct A { virtual void foo (); }; +template class B : A {}; +typedef void (__attribute__((fastcall)) F) (); +B e; -- cgit v1.1 From f66409e0b15afc9575885e51485c4e4dac9c6f16 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 3 May 2019 09:33:04 +0200 Subject: opts.h (finish_options): Remove lang_mask argument. * opts.h (finish_options): Remove lang_mask argument. (print_help, help_option_argument): Declare. * opts.c (print_help): Remove forward declaration, no longer static. (finish_options): Remove lang_mask argument, don't call print_help here. * opts-global.c (decode_options): Adjust finish_option caller, call print_help here. From-SVN: r270836 --- gcc/ChangeLog | 8 ++++++++ gcc/opts-global.c | 6 +++++- gcc/opts.c | 10 ++-------- gcc/opts.h | 6 ++++-- 4 files changed, 19 insertions(+), 11 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2c4150d..346cb5f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,13 @@ 2019-05-03 Jakub Jelinek + * opts.h (finish_options): Remove lang_mask argument. + (print_help, help_option_argument): Declare. + * opts.c (print_help): Remove forward declaration, no longer static. + (finish_options): Remove lang_mask argument, don't call print_help + here. + * opts-global.c (decode_options): Adjust finish_option caller, call + print_help here. + PR tree-optimization/90303 * ipa-devirt.c (obj_type_ref_class, get_odr_type): Don't use TYPE_CANONICAL for TYPE_STRUCTURAL_EQUALITY_P types in !in_lto_p mode. diff --git a/gcc/opts-global.c b/gcc/opts-global.c index f110fe1..e6eaeb2 100644 --- a/gcc/opts-global.c +++ b/gcc/opts-global.c @@ -314,7 +314,11 @@ decode_options (struct gcc_options *opts, struct gcc_options *opts_set, loc, lang_mask, &handlers, dc); - finish_options (opts, opts_set, loc, lang_mask); + finish_options (opts, opts_set, loc); + + /* Print --help=* if used. */ + if (help_option_argument != NULL) + print_help (opts, lang_mask); } /* Hold command-line options associated with stack limitation. */ diff --git a/gcc/opts.c b/gcc/opts.c index 286bb8f..71adc21 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -858,15 +858,13 @@ control_options_for_live_patching (struct gcc_options *opts, /* --help option argument if set. */ const char *help_option_argument = NULL; -static void print_help (struct gcc_options *opts, unsigned int lang_mask); - /* After all options at LOC have been read into OPTS and OPTS_SET, finalize settings of those options and diagnose incompatible combinations. */ void finish_options (struct gcc_options *opts, struct gcc_options *opts_set, - location_t loc, unsigned int lang_mask) + location_t loc) { enum unwind_info_type ui_except; @@ -1230,10 +1228,6 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set, opts->x_flag_live_patching, loc); } - - /* Print --help=* if used. */ - if (help_option_argument != NULL) - print_help (opts, lang_mask); } #define LEFT_COLUMN 27 @@ -2066,7 +2060,7 @@ check_alignment_argument (location_t loc, const char *flag, const char *name) /* Print help when OPT__help_ is set. */ -static void +void print_help (struct gcc_options *opts, unsigned int lang_mask) { const char *a = help_option_argument; diff --git a/gcc/opts.h b/gcc/opts.h index 6e99ead..a8afc23 100644 --- a/gcc/opts.h +++ b/gcc/opts.h @@ -418,8 +418,8 @@ extern bool target_handle_option (struct gcc_options *opts, void (*target_option_override_hook) (void)); extern void finish_options (struct gcc_options *opts, struct gcc_options *opts_set, - location_t loc, - unsigned int lang_mask); + location_t loc); +extern void print_help (struct gcc_options *opts, unsigned int lang_mask); extern void default_options_optimization (struct gcc_options *opts, struct gcc_options *opts_set, struct cl_decoded_option *decoded_options, @@ -443,6 +443,8 @@ extern const struct sanitizer_opts_s bool can_recover; } sanitizer_opts[]; +extern const char *help_option_argument; + extern void add_misspelling_candidates (auto_vec *candidates, const struct cl_option *option, const char *base_option); -- cgit v1.1 From e7a89a659afeaae763761dab0a7fd3f2f7ddcbe2 Mon Sep 17 00:00:00 2001 From: Dominique d'Humieres Date: Fri, 3 May 2019 12:00:27 +0200 Subject: re PR target/88809 (do not use rep-scasb for inline strlen/memchr) 2019-05-03 Dominique d'Humieres PR target/88809 * gcc.target/i386/pr88809.c: Adjust for darwin. * gcc.target/i386/pr88809-2.c: Adjust for i386 and darwin. From-SVN: r270843 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.target/i386/pr88809-2.c | 2 +- gcc/testsuite/gcc.target/i386/pr88809.c | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 509eb17..2bb5609 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-05-03 Dominique d'Humieres + + PR target/88809 + * gcc.target/i386/pr88809.c: Adjust for darwin. + * gcc.target/i386/pr88809-2.c: Adjust for i386 and darwin. + 2019-05-03 Jakub Jelinek PR tree-optimization/90303 diff --git a/gcc/testsuite/gcc.target/i386/pr88809-2.c b/gcc/testsuite/gcc.target/i386/pr88809-2.c index b8ef51d..616e9b9 100644 --- a/gcc/testsuite/gcc.target/i386/pr88809-2.c +++ b/gcc/testsuite/gcc.target/i386/pr88809-2.c @@ -6,4 +6,4 @@ unsigned int foo (const char *ptr) return __builtin_strlen (ptr); } -/* { dg-final { scan-assembler "call\[ \t\]strlen" } } */ +/* { dg-final { scan-assembler "(jmp|call)\[ \t\]_?strlen" } } */ diff --git a/gcc/testsuite/gcc.target/i386/pr88809.c b/gcc/testsuite/gcc.target/i386/pr88809.c index 20844dd..242c188 100644 --- a/gcc/testsuite/gcc.target/i386/pr88809.c +++ b/gcc/testsuite/gcc.target/i386/pr88809.c @@ -6,4 +6,4 @@ unsigned int foo (const char *ptr) return __builtin_strlen (ptr); } -/* { dg-final { scan-assembler "call\[ \t\]strlen" } } */ +/* { dg-final { scan-assembler "call\[ \t\]_?strlen" } } */ -- cgit v1.1 From a7eb97ad269b6509bd7b31ca373daea98e4d7e85 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 10:39:56 +0000 Subject: re PR middle-end/88963 (gcc generates terrible code for vectors of 64+ length which are not natively supported) 2019-05-03 Richard Biener PR tree-optimization/88963 * tree-ssa-forwprop.c (pass_forwprop::execute): Rewrite vector loads feeding only BIT_FIELD_REFs to component loads. Rewrite stores fed by CONSTRUCTORs to component stores. * gcc.dg/tree-ssa/ssa-fre-31.c: Disable forwprop. * gcc.target/i386/pr88963-1.c: New testcase. * gcc.target/i386/pr88963-2.c: Likewise. From-SVN: r270844 --- gcc/ChangeLog | 8 ++ gcc/testsuite/ChangeLog | 7 ++ gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-31.c | 2 +- gcc/testsuite/gcc.target/i386/pr88963-1.c | 13 +++ gcc/testsuite/gcc.target/i386/pr88963-2.c | 14 ++++ gcc/tree-ssa-forwprop.c | 125 +++++++++++++++++++++++++++++ 6 files changed, 168 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.target/i386/pr88963-1.c create mode 100644 gcc/testsuite/gcc.target/i386/pr88963-2.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 346cb5f..80c34be 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2019-05-03 Richard Biener + + PR tree-optimization/88963 + * tree-ssa-forwprop.c (pass_forwprop::execute): Rewrite + vector loads feeding only BIT_FIELD_REFs to component + loads. Rewrite stores fed by CONSTRUCTORs to component + stores. + 2019-05-03 Jakub Jelinek * opts.h (finish_options): Remove lang_mask argument. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2bb5609..57a07d1 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2019-05-03 Richard Biener + + PR tree-optimization/88963 + * gcc.dg/tree-ssa/ssa-fre-31.c: Disable forwprop. + * gcc.target/i386/pr88963-1.c: New testcase. + * gcc.target/i386/pr88963-2.c: Likewise. + 2019-05-03 Dominique d'Humieres PR target/88809 diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-31.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-31.c index 6402c81..3d429ab 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-31.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-31.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O -fdump-tree-fre1-details" } */ +/* { dg-options "-O -fdump-tree-fre1-details -fno-tree-forwprop" } */ /* { dg-additional-options "-fno-common" { target hppa*-*-hpux* } } */ typedef double d128 __attribute__((vector_size(16))); diff --git a/gcc/testsuite/gcc.target/i386/pr88963-1.c b/gcc/testsuite/gcc.target/i386/pr88963-1.c new file mode 100644 index 0000000..e6f1525 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr88963-1.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -march=x86-64 -mavx2 -fdump-tree-optimized" } */ + +typedef int VInt __attribute__((vector_size(64))); + +void test(VInt*__restrict a, VInt*__restrict b, + VInt*__restrict c) +{ + *a = *b + *c; +} + +/* Vector loads and stores should be split. */ +/* { dg-final { scan-tree-dump-not "vector\\(16\\)" "optimized" } } */ diff --git a/gcc/testsuite/gcc.target/i386/pr88963-2.c b/gcc/testsuite/gcc.target/i386/pr88963-2.c new file mode 100644 index 0000000..114f1f5 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr88963-2.c @@ -0,0 +1,14 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -march=x86-64 -msse2 -fdump-tree-optimized" } */ + +typedef int VInt __attribute__((vector_size(64))); + +void test(VInt*__restrict a, VInt*__restrict b, + VInt*__restrict c) +{ + *a = *b + *c; +} + +/* Vector loads and stores should be split. */ +/* { dg-final { scan-tree-dump-not "vector\\(16\\)" "optimized" } } */ +/* { dg-final { scan-tree-dump-not "vector\\(8\\)" "optimized" } } */ diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c index bbfa1bc..1553c9e 100644 --- a/gcc/tree-ssa-forwprop.c +++ b/gcc/tree-ssa-forwprop.c @@ -2400,6 +2400,72 @@ pass_forwprop::execute (function *fun) else gsi_next (&gsi); } + else if (TREE_CODE (TREE_TYPE (lhs)) == VECTOR_TYPE + && TYPE_MODE (TREE_TYPE (lhs)) == BLKmode + && gimple_assign_load_p (stmt) + && !gimple_has_volatile_ops (stmt) + && (TREE_CODE (gimple_assign_rhs1 (stmt)) + != TARGET_MEM_REF) + && !stmt_can_throw_internal (cfun, stmt)) + { + /* Rewrite loads used only in BIT_FIELD_REF extractions to + component-wise loads. */ + use_operand_p use_p; + imm_use_iterator iter; + bool rewrite = true; + FOR_EACH_IMM_USE_FAST (use_p, iter, lhs) + { + gimple *use_stmt = USE_STMT (use_p); + if (is_gimple_debug (use_stmt)) + continue; + if (!is_gimple_assign (use_stmt) + || gimple_assign_rhs_code (use_stmt) != BIT_FIELD_REF) + { + rewrite = false; + break; + } + } + if (rewrite) + { + gimple *use_stmt; + FOR_EACH_IMM_USE_STMT (use_stmt, iter, lhs) + { + if (is_gimple_debug (use_stmt)) + { + if (gimple_debug_bind_p (use_stmt)) + { + gimple_debug_bind_reset_value (use_stmt); + update_stmt (use_stmt); + } + continue; + } + + tree bfr = gimple_assign_rhs1 (use_stmt); + tree new_rhs = fold_build3 (BIT_FIELD_REF, + TREE_TYPE (bfr), + unshare_expr (rhs), + TREE_OPERAND (bfr, 1), + TREE_OPERAND (bfr, 2)); + gimple *new_stmt + = gimple_build_assign (gimple_assign_lhs (use_stmt), + new_rhs); + + location_t loc = gimple_location (use_stmt); + gimple_set_location (new_stmt, loc); + gimple_stmt_iterator gsi2 = gsi_for_stmt (use_stmt); + unlink_stmt_vdef (use_stmt); + gsi_remove (&gsi2, true); + + gsi_insert_before (&gsi, new_stmt, GSI_SAME_STMT); + } + + release_defs (stmt); + gsi_remove (&gsi, true); + } + else + gsi_next (&gsi); + } + else if (code == COMPLEX_EXPR) { /* Rewrite stores of a single-use complex build expression @@ -2440,6 +2506,65 @@ pass_forwprop::execute (function *fun) else gsi_next (&gsi); } + else if (code == CONSTRUCTOR + && VECTOR_TYPE_P (TREE_TYPE (rhs)) + && TYPE_MODE (TREE_TYPE (rhs)) == BLKmode + && CONSTRUCTOR_NELTS (rhs) > 0 + && (!VECTOR_TYPE_P (TREE_TYPE (CONSTRUCTOR_ELT (rhs, 0)->value)) + || (TYPE_MODE (TREE_TYPE (CONSTRUCTOR_ELT (rhs, 0)->value)) + != BLKmode))) + { + /* Rewrite stores of a single-use vector constructors + to component-wise stores if the mode isn't supported. */ + use_operand_p use_p; + gimple *use_stmt; + if (single_imm_use (lhs, &use_p, &use_stmt) + && gimple_store_p (use_stmt) + && !gimple_has_volatile_ops (use_stmt) + && is_gimple_assign (use_stmt) + && (TREE_CODE (gimple_assign_lhs (use_stmt)) + != TARGET_MEM_REF)) + { + tree elt_t = TREE_TYPE (CONSTRUCTOR_ELT (rhs, 0)->value); + unsigned HOST_WIDE_INT elt_w + = tree_to_uhwi (TYPE_SIZE (elt_t)); + unsigned HOST_WIDE_INT n + = tree_to_uhwi (TYPE_SIZE (TREE_TYPE (rhs))); + for (unsigned HOST_WIDE_INT bi = 0; bi < n; bi += elt_w) + { + unsigned HOST_WIDE_INT ci = bi / elt_w; + tree new_rhs; + if (ci < CONSTRUCTOR_NELTS (rhs)) + new_rhs = CONSTRUCTOR_ELT (rhs, ci)->value; + else + new_rhs = build_zero_cst (elt_t); + tree use_lhs = gimple_assign_lhs (use_stmt); + tree new_lhs = build3 (BIT_FIELD_REF, + elt_t, + unshare_expr (use_lhs), + bitsize_int (elt_w), + bitsize_int (bi)); + gimple *new_stmt = gimple_build_assign (new_lhs, new_rhs); + location_t loc = gimple_location (use_stmt); + gimple_set_location (new_stmt, loc); + gimple_set_vuse (new_stmt, gimple_vuse (use_stmt)); + gimple_set_vdef (new_stmt, + make_ssa_name (gimple_vop (cfun))); + SSA_NAME_DEF_STMT (gimple_vdef (new_stmt)) = new_stmt; + gimple_set_vuse (use_stmt, gimple_vdef (new_stmt)); + gimple_stmt_iterator gsi2 = gsi_for_stmt (use_stmt); + gsi_insert_before (&gsi2, new_stmt, GSI_SAME_STMT); + } + gimple_stmt_iterator gsi2 = gsi_for_stmt (use_stmt); + unlink_stmt_vdef (use_stmt); + release_defs (use_stmt); + gsi_remove (&gsi2, true); + release_defs (stmt); + gsi_remove (&gsi, true); + } + else + gsi_next (&gsi); + } else gsi_next (&gsi); } -- cgit v1.1 From a4f9edf36c8ceebac5c34d6d913871bf1c0f5190 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 10:44:17 +0000 Subject: re PR tree-optimization/87314 (pointless comparison of malloc result to a string not eliminated) 2019-05-03 Richard Biener PR middle-end/87314 * match.pd (cmp (convert1?@2 addr@0) (convert2? addr@1)): Handle STRING_CST vs DECL or STRING_CST. * gcc.dg/pr87314-1.c: New testcase. From-SVN: r270845 --- gcc/ChangeLog | 6 ++++++ gcc/match.pd | 19 ++++++++++++++++++- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/pr87314-1.c | 11 +++++++++++ 4 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/pr87314-1.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 80c34be..e9def2f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2019-05-03 Richard Biener + PR middle-end/87314 + * match.pd (cmp (convert1?@2 addr@0) (convert2? addr@1)): + Handle STRING_CST vs DECL or STRING_CST. + +2019-05-03 Richard Biener + PR tree-optimization/88963 * tree-ssa-forwprop.c (pass_forwprop::execute): Rewrite vector loads feeding only BIT_FIELD_REFs to component diff --git a/gcc/match.pd b/gcc/match.pd index 039ddac..ec03a68 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -3905,7 +3905,24 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) equal = (base0 == base1); if (equal == 0) { - if (!DECL_P (base0) || !DECL_P (base1)) + HOST_WIDE_INT ioff0 = -1, ioff1 = -1; + off0.is_constant (&ioff0); + off1.is_constant (&ioff1); + if ((DECL_P (base0) && TREE_CODE (base1) == STRING_CST) + || (TREE_CODE (base0) == STRING_CST && DECL_P (base1)) + || (TREE_CODE (base0) == STRING_CST + && TREE_CODE (base1) == STRING_CST + && ioff0 >= 0 && ioff1 >= 0 + && ioff0 < TREE_STRING_LENGTH (base0) + && ioff1 < TREE_STRING_LENGTH (base1) + /* This is a too conservative test that the STRING_CSTs + will not end up being string-merged. */ + && strncmp (TREE_STRING_POINTER (base0) + ioff0, + TREE_STRING_POINTER (base1) + ioff1, + MIN (TREE_STRING_LENGTH (base0) - ioff0, + TREE_STRING_LENGTH (base1) - ioff1)) != 0)) + ; + else if (!DECL_P (base0) || !DECL_P (base1)) equal = 2; else if (cmp != EQ_EXPR && cmp != NE_EXPR) equal = 2; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 57a07d1..0e23e57 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2019-05-03 Richard Biener + PR middle-end/87314 + * gcc.dg/pr87314-1.c: New testcase. + +2019-05-03 Richard Biener + PR tree-optimization/88963 * gcc.dg/tree-ssa/ssa-fre-31.c: Disable forwprop. * gcc.target/i386/pr88963-1.c: New testcase. diff --git a/gcc/testsuite/gcc.dg/pr87314-1.c b/gcc/testsuite/gcc.dg/pr87314-1.c new file mode 100644 index 0000000..4dc85c8 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr87314-1.c @@ -0,0 +1,11 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fdump-tree-original" } */ + +int f(){ int a; return &a==(void *)"hello"; } +int g(){ return "bye"=="hello"; } +int h() { return "bye"=="hellobye"+5; } + +/* { dg-final { scan-tree-dump-times "hello" 1 "original" } } */ +/* The test in h() should be retained because the result depends on + string merging. */ +/* { dg-final { scan-assembler "hello" } } */ -- cgit v1.1 From 839d0860cf808e7457a5e57d745830023d57998b Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 10:46:13 +0000 Subject: re PR tree-optimization/89518 (missed optimisation for array address calculations) 2019-05-03 Richard Biener PR middle-end/89518 * match.pd: Add pattern to optimize (A / B) * B + (A % B) to A. * gcc.dg/pr89518.c: New testcase. From-SVN: r270846 --- gcc/ChangeLog | 5 +++++ gcc/match.pd | 7 +++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.dg/pr89518.c | 14 ++++++++++++++ 4 files changed, 31 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/pr89518.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e9def2f..d57cd7c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2019-05-03 Richard Biener + PR middle-end/89518 + * match.pd: Add pattern to optimize (A / B) * B + (A % B) to A. + +2019-05-03 Richard Biener + PR middle-end/87314 * match.pd (cmp (convert1?@2 addr@0) (convert2? addr@1)): Handle STRING_CST vs DECL or STRING_CST. diff --git a/gcc/match.pd b/gcc/match.pd index ec03a68..5e4a4dc 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -2736,6 +2736,13 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) (mult (convert1? (exact_div @0 @@1)) (convert2? @1)) (convert @0)) +/* Simplify (A / B) * B + (A % B) -> A. */ +(for div (trunc_div ceil_div floor_div round_div) + mod (trunc_mod ceil_mod floor_mod round_mod) + (simplify + (plus:c (mult:c (div @0 @1) @1) (mod @0 @1)) + @0)) + /* ((X /[ex] A) +- B) * A --> X +- A * B. */ (for op (plus minus) (simplify diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 0e23e57..74a33be 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2019-05-03 Richard Biener + PR middle-end/89518 + * gcc.dg/pr89518.c: New testcase. + +2019-05-03 Richard Biener + PR middle-end/87314 * gcc.dg/pr87314-1.c: New testcase. diff --git a/gcc/testsuite/gcc.dg/pr89518.c b/gcc/testsuite/gcc.dg/pr89518.c new file mode 100644 index 0000000..5b289c2 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr89518.c @@ -0,0 +1,14 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fdump-tree-original" } */ + +unsigned foo (unsigned a, unsigned b) +{ + return a/b * b + a%b; +} + +int bar (int a, int b) +{ + return a/b * b + a%b; +} + +/* { dg-final { scan-tree-dump-times "return a;" 2 "original" } } */ -- cgit v1.1 From 419c5f99876d9ee517f6b646dd785cdcaf5cb6fe Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 10:47:21 +0000 Subject: tree-vect-stmts.c (get_group_load_store_type): Avoid peeling for gaps by loading only lower halves of vectors if possible. 2019-05-03 Richard Biener * tree-vect-stmts.c (get_group_load_store_type): Avoid peeling for gaps by loading only lower halves of vectors if possible. (vectorizable_load): Likewise. * gcc.dg/vect/slp-reduc-sad-2.c: New testcase. From-SVN: r270847 --- gcc/ChangeLog | 7 ++++ gcc/testsuite/ChangeLog | 4 ++ gcc/testsuite/gcc.dg/vect/slp-reduc-sad-2.c | 29 +++++++++++++++ gcc/tree-vect-stmts.c | 58 ++++++++++++++++++++++++++++- 4 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.dg/vect/slp-reduc-sad-2.c (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d57cd7c..8b34efa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2019-05-03 Richard Biener + * tree-vect-stmts.c (get_group_load_store_type): Avoid + peeling for gaps by loading only lower halves of vectors + if possible. + (vectorizable_load): Likewise. + +2019-05-03 Richard Biener + PR middle-end/89518 * match.pd: Add pattern to optimize (A / B) * B + (A % B) to A. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 74a33be..7ae100f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,9 @@ 2019-05-03 Richard Biener + * gcc.dg/vect/slp-reduc-sad-2.c: New testcase. + +2019-05-03 Richard Biener + PR middle-end/89518 * gcc.dg/pr89518.c: New testcase. diff --git a/gcc/testsuite/gcc.dg/vect/slp-reduc-sad-2.c b/gcc/testsuite/gcc.dg/vect/slp-reduc-sad-2.c new file mode 100644 index 0000000..5179fcc --- /dev/null +++ b/gcc/testsuite/gcc.dg/vect/slp-reduc-sad-2.c @@ -0,0 +1,29 @@ +/* { dg-do compile } */ +/* { dg-require-effective-target vect_usad_char } */ +/* With AVX256 or more we do not pull off the trick eliding the epilogue. */ +/* { dg-additional-options "-mprefer-avx128" { target { x86_64-*-* i?86-*-* } } } */ + +typedef unsigned char uint8_t; +int x264_pixel_sad_8x8( uint8_t *pix1, uint8_t *pix2, int i_stride_pix2 ) +{ + int i_sum = 0; + for( int y = 0; y < 8; y++ ) + { + i_sum += __builtin_abs( pix1[0] - pix2[0] ); + i_sum += __builtin_abs( pix1[1] - pix2[1] ); + i_sum += __builtin_abs( pix1[2] - pix2[2] ); + i_sum += __builtin_abs( pix1[3] - pix2[3] ); + i_sum += __builtin_abs( pix1[4] - pix2[4] ); + i_sum += __builtin_abs( pix1[5] - pix2[5] ); + i_sum += __builtin_abs( pix1[6] - pix2[6] ); + i_sum += __builtin_abs( pix1[7] - pix2[7] ); + pix1 += 16; + pix2 += i_stride_pix2; + } + return i_sum; +} + +/* { dg-final { scan-tree-dump "vect_recog_sad_pattern: detected" "vect" } } */ +/* { dg-final { scan-tree-dump "vectorizing stmts using SLP" "vect" } } */ +/* { dg-final { scan-tree-dump-not "access with gaps requires scalar epilogue loop" "vect" } } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 41a7eb0..247d435 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -2258,6 +2258,29 @@ get_group_load_store_type (stmt_vec_info stmt_info, tree vectype, bool slp, && gap < (vect_known_alignment_in_bytes (first_dr_info) / vect_get_scalar_dr_size (first_dr_info))) overrun_p = false; + + /* If the gap splits the vector in half and the target + can do half-vector operations avoid the epilogue peeling + by simply loading half of the vector only. Usually + the construction with an upper zero half will be elided. */ + dr_alignment_support alignment_support_scheme; + scalar_mode elmode = SCALAR_TYPE_MODE (TREE_TYPE (vectype)); + machine_mode vmode; + if (overrun_p + && !masked_p + && (((alignment_support_scheme + = vect_supportable_dr_alignment (first_dr_info, false))) + == dr_aligned + || alignment_support_scheme == dr_unaligned_supported) + && known_eq (nunits, (group_size - gap) * 2) + && mode_for_vector (elmode, (group_size - gap)).exists (&vmode) + && VECTOR_MODE_P (vmode) + && targetm.vector_mode_supported_p (vmode) + && (convert_optab_handler (vec_init_optab, + TYPE_MODE (vectype), vmode) + != CODE_FOR_nothing)) + overrun_p = false; + if (overrun_p && !can_overrun_p) { if (dump_enabled_p ()) @@ -8516,8 +8539,24 @@ vectorizable_load (stmt_vec_info stmt_info, gimple_stmt_iterator *gsi, } else { + tree ltype = vectype; + /* If there's no peeling for gaps but we have a gap + with slp loads then load the lower half of the + vector only. See get_group_load_store_type for + when we apply this optimization. */ + if (slp + && loop_vinfo + && !LOOP_VINFO_PEELING_FOR_GAPS (loop_vinfo) + && DR_GROUP_GAP (first_stmt_info) != 0 + && known_eq (nunits, + (group_size + - DR_GROUP_GAP (first_stmt_info)) * 2)) + ltype = build_vector_type (TREE_TYPE (vectype), + (group_size + - DR_GROUP_GAP + (first_stmt_info))); data_ref - = fold_build2 (MEM_REF, vectype, dataref_ptr, + = fold_build2 (MEM_REF, ltype, dataref_ptr, dataref_offset ? dataref_offset : build_int_cst (ref_type, 0)); @@ -8531,6 +8570,23 @@ vectorizable_load (stmt_vec_info stmt_info, gimple_stmt_iterator *gsi, TREE_TYPE (data_ref) = build_aligned_type (TREE_TYPE (data_ref), TYPE_ALIGN (elem_type)); + if (ltype != vectype) + { + vect_copy_ref_info (data_ref, DR_REF (first_dr_info->dr)); + tree tem = make_ssa_name (ltype); + new_stmt = gimple_build_assign (tem, data_ref); + vect_finish_stmt_generation (stmt_info, new_stmt, gsi); + data_ref = NULL; + vec *v; + vec_alloc (v, 2); + CONSTRUCTOR_APPEND_ELT (v, NULL_TREE, tem); + CONSTRUCTOR_APPEND_ELT (v, NULL_TREE, + build_zero_cst (ltype)); + new_stmt + = gimple_build_assign (vec_dest, + build_constructor + (vectype, v)); + } } break; } -- cgit v1.1 From 3353ebf0d9a20f07597b90943664f10557488ea8 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 3 May 2019 11:21:18 +0000 Subject: re PR tree-optimization/90316 (large compile time increase in opt / alias stmt walking for Go example) 2019-05-03 Richard Biener PR tree-optimization/90316 * tree-ssa-pre.c (pass_pre::execute): Re-compute DOM fast queries before running VN. From-SVN: r270848 --- gcc/ChangeLog | 6 ++++++ gcc/tree-ssa-pre.c | 1 + 2 files changed, 7 insertions(+) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8b34efa..d656ad7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2019-05-03 Richard Biener + PR tree-optimization/90316 + * tree-ssa-pre.c (pass_pre::execute): Re-compute DOM fast queries + before running VN. + +2019-05-03 Richard Biener + * tree-vect-stmts.c (get_group_load_store_type): Avoid peeling for gaps by loading only lower halves of vectors if possible. diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index 7bb2cf1..e1c75f8 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -4197,6 +4197,7 @@ pass_pre::execute (function *fun) loop_optimizer_init (LOOPS_NORMAL); split_critical_edges (); scev_initialize (); + calculate_dominance_info (CDI_DOMINATORS); run_rpo_vn (VN_WALK); -- cgit v1.1 From b119c05542a9574a1c27f9bba63efbafc12b248b Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Fri, 3 May 2019 14:37:22 +0200 Subject: Come up with is_empty for hash_{table,map,set}. 2019-05-03 Martin Liska * hash-map.h: Add is_empty function. * hash-set.h: Likewise. * hash-table.h: Likewise. * dwarf2out.c (dwarf2out_finish): Use is_empty instead of elements () == 0 (and similar usages). * gimple-ssa-store-merging.c (pass_store_merging::terminate_and_process_all_chains): Likewise. * gimplify.c (gimplify_bind_expr): Likewise. (gimplify_switch_expr): Likewise. * hash-map-tests.c (test_map_of_strings_to_int): Likewise. * ipa-icf.c (sem_item_optimizer::remove_symtab_node): Likewise. * postreload-gcse.c (dump_hash_table): Likewise. (gcse_after_reload_main): Likewise. * predict.c (combine_predictions_for_bb): Likewise. * tree-parloops.c (reduction_phi): Likewise. (separate_decls_in_region): Likewise. (transform_to_exit_first_loop): Likewise. (gen_parallel_loop): Likewise. (gather_scalar_reductions): Likewise. (try_create_reduction_list): Likewise. * var-tracking.c (dump_vars): Likewise. (emit_notes_for_changes): Likewise. (vt_emit_notes): Likewise. 2019-05-03 Martin Liska * call.c (build_aggr_conv): Use is_empty instead of elements () == 0 (and similar usages). * parser.c (cp_parser_lambda_introducer): Likewise. From-SVN: r270851 --- gcc/ChangeLog | 25 +++++++++++++++++++++++++ gcc/cp/ChangeLog | 6 ++++++ gcc/cp/call.c | 2 +- gcc/cp/parser.c | 2 +- gcc/dwarf2out.c | 2 +- gcc/gimple-ssa-store-merging.c | 2 +- gcc/gimplify.c | 4 ++-- gcc/hash-map-tests.c | 2 +- gcc/hash-map.h | 3 +++ gcc/hash-set.h | 3 +++ gcc/hash-table.h | 3 +++ gcc/ipa-icf.c | 2 +- gcc/postreload-gcse.c | 4 ++-- gcc/predict.c | 2 +- gcc/tree-parloops.c | 18 +++++++++--------- gcc/var-tracking.c | 6 +++--- 16 files changed, 63 insertions(+), 23 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d656ad7..ac134c6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,28 @@ +2019-05-03 Martin Liska + + * hash-map.h: Add is_empty function. + * hash-set.h: Likewise. + * hash-table.h: Likewise. + * dwarf2out.c (dwarf2out_finish): Use is_empty instead of + elements () == 0 (and similar usages). + * gimple-ssa-store-merging.c (pass_store_merging::terminate_and_process_all_chains): Likewise. + * gimplify.c (gimplify_bind_expr): Likewise. + (gimplify_switch_expr): Likewise. + * hash-map-tests.c (test_map_of_strings_to_int): Likewise. + * ipa-icf.c (sem_item_optimizer::remove_symtab_node): Likewise. + * postreload-gcse.c (dump_hash_table): Likewise. + (gcse_after_reload_main): Likewise. + * predict.c (combine_predictions_for_bb): Likewise. + * tree-parloops.c (reduction_phi): Likewise. + (separate_decls_in_region): Likewise. + (transform_to_exit_first_loop): Likewise. + (gen_parallel_loop): Likewise. + (gather_scalar_reductions): Likewise. + (try_create_reduction_list): Likewise. + * var-tracking.c (dump_vars): Likewise. + (emit_notes_for_changes): Likewise. + (vt_emit_notes): Likewise. + 2019-05-03 Richard Biener PR tree-optimization/90316 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 129a00a..d9b7d2b 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2019-05-03 Martin Liska + + * call.c (build_aggr_conv): Use is_empty instead of + elements () == 0 (and similar usages). + * parser.c (cp_parser_lambda_introducer): Likewise. + 2019-05-02 Nathan Sidwell * semantics.c (finish_id_expression_1): Remove unreachable code. diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 23898f0..1a79017 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -986,7 +986,7 @@ build_aggr_conv (tree type, tree ctor, int flags, tsubst_flags_t complain) tree val; bool ok; - if (pset.elements () && field_in_pset (pset, field)) + if (!pset.is_empty () && field_in_pset (pset, field)) continue; if (i < CONSTRUCTOR_NELTS (ctor)) { diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index 3d90891..332f4bf 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -10769,7 +10769,7 @@ cp_parser_lambda_introducer (cp_parser* parser, tree lambda_expr) Optimize for the zero or one explicit captures cases and only create the hash_set after adding second capture. */ bool found = false; - if (ids.elements ()) + if (!ids.is_empty ()) found = ids.add (capture_id); else if (first_capture_id == NULL_TREE) first_capture_id = capture_id; diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index b9a624e..366c904 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -31321,7 +31321,7 @@ dwarf2out_finish (const char *filename) flush_limbo_die_list (); if (inline_entry_data_table) - gcc_assert (inline_entry_data_table->elements () == 0); + gcc_assert (inline_entry_data_table->is_empty ()); if (flag_checking) { diff --git a/gcc/gimple-ssa-store-merging.c b/gcc/gimple-ssa-store-merging.c index 4a8cf6f..81e6269 100644 --- a/gcc/gimple-ssa-store-merging.c +++ b/gcc/gimple-ssa-store-merging.c @@ -2150,7 +2150,7 @@ pass_store_merging::terminate_and_process_all_chains () bool ret = false; while (m_stores_head) ret |= terminate_and_release_chain (m_stores_head); - gcc_assert (m_stores.elements () == 0); + gcc_assert (m_stores.is_empty ()); gcc_assert (m_stores_head == NULL); return ret; diff --git a/gcc/gimplify.c b/gcc/gimplify.c index e59f382..b6c6085 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -1423,7 +1423,7 @@ gimplify_bind_expr (tree *expr_p, gimple_seq *pre_p) oacc_declare_returns->remove (t); - if (oacc_declare_returns->elements () == 0) + if (oacc_declare_returns->is_empty ()) { delete oacc_declare_returns; oacc_declare_returns = NULL; @@ -2418,7 +2418,7 @@ gimplify_switch_expr (tree *expr_p, gimple_seq *pre_p) if (gimplify_ctxp->live_switch_vars) { - gcc_assert (gimplify_ctxp->live_switch_vars->elements () == 0); + gcc_assert (gimplify_ctxp->live_switch_vars->is_empty ()); delete gimplify_ctxp->live_switch_vars; } gimplify_ctxp->live_switch_vars = saved_live_switch_vars; diff --git a/gcc/hash-map-tests.c b/gcc/hash-map-tests.c index acbfdb9..b79c782 100644 --- a/gcc/hash-map-tests.c +++ b/gcc/hash-map-tests.c @@ -53,7 +53,7 @@ test_map_of_strings_to_int () const char *eric = "half a bee"; /* A fresh hash_map should be empty. */ - ASSERT_EQ (0, m.elements ()); + ASSERT_TRUE (m.is_empty ()); ASSERT_EQ (NULL, m.get (ostrich)); /* Populate the hash_map. */ diff --git a/gcc/hash-map.h b/gcc/hash-map.h index 9d41696..a3ef283 100644 --- a/gcc/hash-map.h +++ b/gcc/hash-map.h @@ -211,6 +211,9 @@ public: void empty () { m_table.empty(); } + /* Return true when there are no elements in this hash map. */ + bool is_empty () const { return m_table.is_empty (); } + class iterator { public: diff --git a/gcc/hash-set.h b/gcc/hash-set.h index 8e1f38b..de3532f 100644 --- a/gcc/hash-set.h +++ b/gcc/hash-set.h @@ -88,6 +88,9 @@ public: void empty () { m_table.empty (); } + /* Return true when there are no elements in this hash set. */ + bool is_empty () const { return m_table.is_empty (); } + class iterator { public: diff --git a/gcc/hash-table.h b/gcc/hash-table.h index 7ba6356..4178616 100644 --- a/gcc/hash-table.h +++ b/gcc/hash-table.h @@ -402,6 +402,9 @@ public: /* This function clears all entries in this hash table. */ void empty () { if (elements ()) empty_slow (); } + /* Return true when there are no elements in this hash table. */ + bool is_empty () const { return elements () == 0; } + /* This function clears a specified SLOT in a hash table. It is useful when you've already done the lookup and don't want to do it again. */ diff --git a/gcc/ipa-icf.c b/gcc/ipa-icf.c index e4c9dda..0741814 100644 --- a/gcc/ipa-icf.c +++ b/gcc/ipa-icf.c @@ -2475,7 +2475,7 @@ sem_item_optimizer::varpool_removal_hook (varpool_node *node, void *data) void sem_item_optimizer::remove_symtab_node (symtab_node *node) { - gcc_assert (!m_classes.elements ()); + gcc_assert (m_classes.is_empty ()); m_removed_items_set.add (node); } diff --git a/gcc/postreload-gcse.c b/gcc/postreload-gcse.c index a165351..e473767 100644 --- a/gcc/postreload-gcse.c +++ b/gcc/postreload-gcse.c @@ -504,7 +504,7 @@ dump_hash_table (FILE *file) (long) expr_table->size (), (long) expr_table->elements (), expr_table->collisions ()); - if (expr_table->elements () > 0) + if (!expr_table->is_empty ()) { fprintf (file, "\n\ntable entries:\n"); expr_table->traverse (file); @@ -1386,7 +1386,7 @@ gcse_after_reload_main (rtx f ATTRIBUTE_UNUSED) if (dump_file) dump_hash_table (dump_file); - if (expr_table->elements () > 0) + if (!expr_table->is_empty ()) { /* Knowing which MEMs are transparent through a block can signifiantly increase the number of redundant loads found. So compute transparency diff --git a/gcc/predict.c b/gcc/predict.c index 60a19d7..b010c20 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -1252,7 +1252,7 @@ combine_predictions_for_bb (basic_block bb, bool dry_run) if (dump_file) { fprintf (dump_file, "Predictions for bb %i\n", bb->index); - if (unlikely_edges.elements () == 0) + if (unlikely_edges.is_empty ()) fprintf (dump_file, "%i edges in bb %i predicted to even probabilities\n", nedges, bb->index); diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c index 2fddc59..968368f 100644 --- a/gcc/tree-parloops.c +++ b/gcc/tree-parloops.c @@ -238,7 +238,7 @@ reduction_phi (reduction_info_table_type *reduction_list, gimple *phi) { struct reduction_info tmpred, *red; - if (reduction_list->elements () == 0 || phi == NULL) + if (reduction_list->is_empty () || phi == NULL) return NULL; if (gimple_uid (phi) == (unsigned int)-1 @@ -1390,7 +1390,7 @@ separate_decls_in_region (edge entry, edge exit, } } - if (name_copies.elements () == 0 && reduction_list->elements () == 0) + if (name_copies.is_empty () && reduction_list->is_empty ()) { /* It may happen that there is nothing to copy (if there are only loop carried and external variables in the loop). */ @@ -1407,7 +1407,7 @@ separate_decls_in_region (edge entry, edge exit, TYPE_NAME (type) = type_name; name_copies.traverse (type); - if (reduction_list && reduction_list->elements () > 0) + if (reduction_list && !reduction_list->is_empty ()) { /* Create the fields for reductions. */ reduction_list->traverse (type); @@ -1430,7 +1430,7 @@ separate_decls_in_region (edge entry, edge exit, /* Load the calculation from memory (after the join of the threads). */ - if (reduction_list && reduction_list->elements () > 0) + if (reduction_list && !reduction_list->is_empty ()) { reduction_list ->traverse @@ -1991,7 +1991,7 @@ transform_to_exit_first_loop (struct loop *loop, PHI_RESULT of this phi is the resulting value of the reduction variable when exiting the loop. */ - if (reduction_list->elements () > 0) + if (!reduction_list->is_empty ()) { struct reduction_info *red; @@ -2440,7 +2440,7 @@ gen_parallel_loop (struct loop *loop, } /* Generate initializations for reductions. */ - if (reduction_list->elements () > 0) + if (!reduction_list->is_empty ()) reduction_list->traverse (loop); /* Eliminate the references to local variables from the loop. */ @@ -2476,7 +2476,7 @@ gen_parallel_loop (struct loop *loop, loc = gimple_location (cond_stmt); create_parallel_loop (loop, create_loop_fn (loc), arg_struct, new_arg_struct, n_threads, loc, oacc_kernels_p); - if (reduction_list->elements () > 0) + if (!reduction_list->is_empty ()) create_call_for_reduction (loop, reduction_list, &clsn_data); scev_reset (); @@ -2679,7 +2679,7 @@ gather_scalar_reductions (loop_p loop, reduction_info_table_type *reduction_list } gather_done: - if (reduction_list->elements () == 0) + if (reduction_list->is_empty ()) return; /* As gimple_uid is used by the vectorizer in between vect_analyze_loop_form @@ -2806,7 +2806,7 @@ try_create_reduction_list (loop_p loop, fprintf (dump_file, " checking if it is part of reduction pattern:\n"); } - if (reduction_list->elements () == 0) + if (reduction_list->is_empty ()) { if (dump_file && (dump_flags & TDF_DETAILS)) fprintf (dump_file, diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c index 55ff354..c9de934 100644 --- a/gcc/var-tracking.c +++ b/gcc/var-tracking.c @@ -7332,7 +7332,7 @@ dump_var (variable *var) static void dump_vars (variable_table_type *vars) { - if (vars->elements () > 0) + if (!vars->is_empty ()) { fprintf (dump_file, "Variables:\n"); vars->traverse (NULL); @@ -9060,7 +9060,7 @@ emit_notes_for_changes (rtx_insn *insn, enum emit_note_where where, emit_note_data data; variable_table_type *htab = shared_hash_htab (vars); - if (!changed_variables->elements ()) + if (changed_variables->is_empty ()) return; if (MAY_HAVE_DEBUG_BIND_INSNS) @@ -9538,7 +9538,7 @@ vt_emit_notes (void) basic_block bb; dataflow_set cur; - gcc_assert (!changed_variables->elements ()); + gcc_assert (changed_variables->is_empty ()); /* Free memory occupied by the out hash tables, as they aren't used anymore. */ -- cgit v1.1