Use C++17 [[fallthrough]] attribute

This changes gdb to use the C++17 [[fallthrough]] attribute rather
than special comments.

This was mostly done by script, but I neglected a few spellings and so
also fixed it up by hand.

I suspect this fixes the bug mentioned below, by switching to a
standard approach that, presumably, clang supports.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=23159
Approved-By: John Baldwin <jhb@FreeBSD.org>
Approved-By: Luis Machado <luis.machado@arm.com>
Approved-By: Pedro Alves <pedro@palves.net>
This commit is contained in:
Tom Tromey 2023-10-15 11:09:07 -06:00
parent a0dc1f9a12
commit d182e39881
60 changed files with 140 additions and 143 deletions

View File

@ -1851,7 +1851,7 @@ pass_in_v_vfp_candidate (struct gdbarch *gdbarch, struct regcache *regcache,
if (arg_type->is_vector ())
return pass_in_v (gdbarch, regcache, info, arg_type->length (),
arg->contents ().data ());
/* fall through. */
[[fallthrough]];
case TYPE_CODE_STRUCT:
case TYPE_CODE_UNION:

View File

@ -1307,7 +1307,7 @@ write_object_renaming (struct parser_state *par_state,
break;
case 'L':
slice_state = LOWER_BOUND;
/* FALLTHROUGH */
[[fallthrough]];
case 'S':
renaming_expr += 1;
if (isdigit (*renaming_expr))

View File

@ -5508,7 +5508,7 @@ compare_names_with_case (const char *string1, const char *string2,
else
return 1;
}
/* FALLTHROUGH */
[[fallthrough]];
default:
if (*string2 == '(')
return strcmp_iw_ordered (string1, string2);

View File

@ -89,7 +89,7 @@ print_optional_low_bound (struct ui_file *stream, struct type *type,
break;
case TYPE_CODE_UNDEF:
index_type = NULL;
/* FALL THROUGH */
[[fallthrough]];
default:
if (low_bound == 1)
return 0;

View File

@ -380,7 +380,7 @@ amd64_windows_return_value (struct gdbarch *gdbarch, struct value *function,
break;
}
}
/* fall through */
[[fallthrough]];
default:
/* All other values that are 1, 2, 4 or 8 bytes long are returned
via RAX. */

View File

@ -153,7 +153,7 @@ arm_instruction_changes_pc (uint32_t this_instr)
return 0;
}
/* Data processing instruction. */
/* Fall through. */
[[fallthrough]];
case 0x1:
if (bits (this_instr, 12, 15) == 15)

View File

@ -7600,7 +7600,7 @@ arm_decode_miscellaneous (struct gdbarch *gdbarch, uint32_t insn,
else if (op == 0x3)
/* Not really supported. */
return arm_copy_unmodified (gdbarch, insn, "smc", dsc);
/* Fall through. */
[[fallthrough]];
default:
return arm_copy_undef (gdbarch, insn, dsc);

View File

@ -2731,7 +2731,7 @@ lex_one_token (struct parser_state *par_state, bool *is_quoted_name)
last_was_structop = true;
goto symbol; /* Nope, must be a symbol. */
}
/* FALL THRU. */
[[fallthrough]];
case '0':
case '1':
@ -2828,7 +2828,7 @@ lex_one_token (struct parser_state *par_state, bool *is_quoted_name)
return ENTRY;
}
}
/* FALLTHRU */
[[fallthrough]];
case '+':
case '-':
case '*':
@ -2855,7 +2855,7 @@ lex_one_token (struct parser_state *par_state, bool *is_quoted_name)
case 'U':
if (tokstart[1] != '"' && tokstart[1] != '\'')
break;
/* Fall through. */
[[fallthrough]];
case '\'':
case '"':

View File

@ -379,7 +379,7 @@ do_set_command (const char *arg, int from_tty, struct cmd_list_element *c)
case var_filename:
if (*arg == '\0')
error_no_arg (_("filename to set it to."));
/* FALLTHROUGH */
[[fallthrough]];
case var_optional_filename:
{
char *val = NULL;

View File

@ -896,7 +896,7 @@ coff_symtab_read (minimal_symbol_reader &reader,
backtraces, so filter them out (from phdm@macqel.be). */
if (within_function)
break;
/* Fall through. */
[[fallthrough]];
case C_STAT:
case C_THUMBLABEL:
case C_THUMBSTAT:
@ -934,7 +934,7 @@ coff_symtab_read (minimal_symbol_reader &reader,
that look like this. Ignore them. */
break;
/* For static symbols that don't start with '.'... */
/* Fall through. */
[[fallthrough]];
case C_THUMBEXT:
case C_THUMBEXTFUNC:
case C_EXT:

View File

@ -267,7 +267,7 @@ generate_register_struct (struct ui_file *stream, struct gdbarch *gdbarch,
}
}
/* Fall through. */
[[fallthrough]];
default:
gdb_printf (stream,

View File

@ -136,7 +136,7 @@ convert_one_symbol (compile_c_instance *context,
"be referenced from the current thread in "
"compiled code."),
sym.symbol->print_name ());
/* FALLTHROUGH */
[[fallthrough]];
case LOC_UNRESOLVED:
/* 'symbol_name' cannot be used here as that one is used only for
local variables from compile_dwarf_expr_to_c.

View File

@ -132,7 +132,7 @@ convert_one_symbol (compile_cplus_instance *instance,
"be referenced from the current thread in "
"compiled code."),
sym.symbol->print_name ());
/* FALLTHROUGH */
[[fallthrough]];
case LOC_UNRESOLVED:
/* 'symbol_name' cannot be used here as that one is used only for
local variables from compile_dwarf_expr_to_c.

View File

@ -1604,7 +1604,7 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
sizeof "(anonymous namespace)" - 1);
return NAME;
}
/* FALL THROUGH */
[[fallthrough]];
case ')':
case ',':
@ -1641,7 +1641,7 @@ yylex (YYSTYPE *lvalp, cpname_state *state)
state->lexptr++;
return '-';
}
/* FALL THRU. */
[[fallthrough]];
try_number:
case '0':

View File

@ -531,7 +531,7 @@ replace_typedefs (struct demangle_parse_info *info,
{
case DEMANGLE_COMPONENT_ARGLIST:
check_cv_qualifiers (ret_comp);
/* Fall through */
[[fallthrough]];
case DEMANGLE_COMPONENT_FUNCTION_TYPE:
case DEMANGLE_COMPONENT_TEMPLATE:

View File

@ -1473,7 +1473,7 @@ ctf_psymtab_type_cb (ctf_id_t tid, void *arg)
{
case CTF_K_ENUM:
ctf_psymtab_add_enums (ccp, tid);
/* FALL THROUGH */
[[fallthrough]];
case CTF_K_STRUCT:
case CTF_K_UNION:
domain = STRUCT_DOMAIN;

View File

@ -1103,7 +1103,7 @@ lex_one_token (struct parser_state *par_state)
last_was_structop = 1;
goto symbol; /* Nope, must be a symbol. */
}
/* FALL THRU. */
[[fallthrough]];
case '0':
case '1':
@ -1180,7 +1180,7 @@ lex_one_token (struct parser_state *par_state)
return ENTRY;
}
}
/* FALLTHRU */
[[fallthrough]];
case '+':
case '-':
case '*':

View File

@ -85,7 +85,7 @@ d_value_print_inner (struct value *val, struct ui_file *stream, int recurse,
stream, recurse, val, options);
if (ret == 0)
break;
/* Fall through. */
[[fallthrough]];
default:
c_value_print_inner (val, stream, recurse, options);
break;

View File

@ -2806,7 +2806,7 @@ process_one_symbol (int type, int desc, CORE_ADDR valu, const char *name,
case N_NBSTS:
case N_NBLCS:
unknown_symtype_complaint (hex_string (type));
/* FALLTHROUGH */
[[fallthrough]];
define_a_symbol:
/* These symbol types don't need the address field relocated,

View File

@ -126,7 +126,7 @@ get_test_insn (struct gdbarch *gdbarch, size_t *len)
if (info->bits_per_address > sizeof (bfd_vma) * CHAR_BIT)
return insn;
}
/* fall through */
[[fallthrough]];
default:
generic_case:
{

View File

@ -784,7 +784,7 @@ dwarf_decode_macro_bytes (dwarf2_per_objfile *per_objfile,
/* We don't recognize any vendor extensions. */
break;
}
/* FALLTHROUGH */
[[fallthrough]];
default:
mac_ptr = skip_unknown_opcode (macinfo_type, opcode_definitions,
@ -939,7 +939,7 @@ dwarf_decode_macros (dwarf2_per_objfile *per_objfile,
read_direct_string (abfd, mac_ptr, &bytes_read);
mac_ptr += bytes_read;
}
/* FALLTHROUGH */
[[fallthrough]];
default:
mac_ptr = skip_unknown_opcode (macinfo_type, opcode_definitions,

View File

@ -6489,7 +6489,7 @@ process_die (struct die_info *die, struct dwarf2_cu *cu)
&& die->parent != NULL
&& die->parent->tag == DW_TAG_subprogram)
cu->processing_has_namespace_info = true;
/* Fall through. */
[[fallthrough]];
case DW_TAG_inlined_subroutine:
read_func_scope (die, cu);
break;
@ -6531,7 +6531,7 @@ process_die (struct die_info *die, struct dwarf2_cu *cu)
instead. */
if (cu->lang () != language_ada)
break;
/* FALLTHROUGH */
[[fallthrough]];
case DW_TAG_base_type:
case DW_TAG_subrange_type:
case DW_TAG_generic_subrange:
@ -6559,7 +6559,7 @@ process_die (struct die_info *die, struct dwarf2_cu *cu)
break;
/* The declaration is neither a global namespace nor a variable
alias. */
/* Fall through. */
[[fallthrough]];
case DW_TAG_imported_module:
cu->processing_has_namespace_info = true;
if (die->child != NULL && (die->tag == DW_TAG_imported_declaration
@ -16433,7 +16433,7 @@ cooked_indexer::index_dies (cutu_reader *reader,
case DW_TAG_module:
if (this_entry == nullptr)
break;
/* FALLTHROUGH */
[[fallthrough]];
case DW_TAG_namespace:
/* We don't check THIS_ENTRY for a namespace, to handle
the ancient G++ workaround pointed out above. */
@ -17140,7 +17140,7 @@ read_attribute_value (const struct die_reader_specs *reader,
info_ptr += bytes_read;
break;
}
/* FALLTHROUGH */
[[fallthrough]];
case DW_FORM_line_strp:
if (!cu->per_cu->is_dwz)
{
@ -17150,7 +17150,7 @@ read_attribute_value (const struct die_reader_specs *reader,
info_ptr += bytes_read;
break;
}
/* FALLTHROUGH */
[[fallthrough]];
case DW_FORM_GNU_strp_alt:
{
dwz_file *dwz = dwarf2_get_dwz_file (per_objfile->per_bfd, true);
@ -18963,7 +18963,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
break;
case DW_TAG_template_value_param:
suppress_add = 1;
/* Fall through. */
[[fallthrough]];
case DW_TAG_constant:
case DW_TAG_variable:
case DW_TAG_member:
@ -19140,7 +19140,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
break;
case DW_TAG_template_type_param:
suppress_add = 1;
/* Fall through. */
[[fallthrough]];
case DW_TAG_class_type:
case DW_TAG_interface_type:
case DW_TAG_structure_type:
@ -19194,7 +19194,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
case DW_TAG_unspecified_type:
if (cu->lang () == language_ada)
break;
/* FALLTHROUGH */
[[fallthrough]];
case DW_TAG_typedef:
case DW_TAG_array_type:
case DW_TAG_base_type:
@ -19990,7 +19990,7 @@ determine_prefix (struct die_info *die, struct dwarf2_cu *cu)
return parent_type->name ();
return "";
}
/* Fall through. */
[[fallthrough]];
default:
return determine_prefix (parent, cu);
}
@ -20174,7 +20174,7 @@ dwarf2_name (struct die_info *die, struct dwarf2_cu *cu)
case DW_TAG_template_value_param:
if (attr_name == nullptr)
return unnamed_template_tag_name (die, cu);
/* FALLTHROUGH. */
[[fallthrough]];
case DW_TAG_class_type:
case DW_TAG_interface_type:
case DW_TAG_structure_type:

View File

@ -172,7 +172,7 @@ fetch_subexp_value (struct expression *exp,
case MEMORY_ERROR:
if (!preserve_errors)
break;
/* Fall through. */
[[fallthrough]];
default:
throw;
break;

View File

@ -1503,7 +1503,7 @@ yylex (void)
/* Might be a floating point number. */
if (pstate->lexptr[1] < '0' || pstate->lexptr[1] > '9')
goto symbol; /* Nope, must be a symbol. */
/* FALL THRU. */
[[fallthrough]];
case '0':
case '1':
@ -1571,7 +1571,7 @@ yylex (void)
case '%':
last_was_structop = true;
/* Fall through. */
[[fallthrough]];
case '+':
case '-':
case '*':

View File

@ -1641,7 +1641,7 @@ fbsd_nat_target::stop_process (inferior *inf)
if (status.sig () == GDB_SIGNAL_STOP)
break;
/* FALLTHROUGH */
[[fallthrough]];
default:
/* Some other event has occurred. Save the current
event. */

View File

@ -1101,7 +1101,7 @@ get_discrete_low_bound (struct type *type)
if (!type->is_unsigned ())
return -(1 << (type->length () * TARGET_CHAR_BIT - 1));
/* fall through */
[[fallthrough]];
case TYPE_CODE_CHAR:
return 0;
@ -1171,7 +1171,7 @@ get_discrete_high_bound (struct type *type)
return -low - 1;
}
/* fall through */
[[fallthrough]];
case TYPE_CODE_CHAR:
{
/* This round-about calculation is to avoid shifting by
@ -4436,7 +4436,7 @@ rank_one_type_parm_ptr (struct type *parm, struct type *arg, struct value *value
return NS_INTEGER_POINTER_CONVERSION_BADNESS;
}
}
/* fall through */
[[fallthrough]];
case TYPE_CODE_ENUM:
case TYPE_CODE_FLAGS:
case TYPE_CODE_CHAR:
@ -4608,7 +4608,7 @@ rank_one_type_parm_char (struct type *parm, struct type *arg, struct value *valu
return INTEGER_CONVERSION_BADNESS;
else if (arg->length () < parm->length ())
return INTEGER_PROMOTION_BADNESS;
/* fall through */
[[fallthrough]];
case TYPE_CODE_CHAR:
/* Deal with signed, unsigned, and plain chars for C++ and
with int cases falling through from previous case. */
@ -4741,7 +4741,7 @@ rank_one_type_parm_struct (struct type *parm, struct type *arg, struct value *va
rank.subrank = distance_to_ancestor (parm, arg, 0);
if (rank.subrank >= 0)
return sum_ranks (BASE_CONVERSION_BADNESS, rank);
/* fall through */
[[fallthrough]];
default:
return INCOMPATIBLE_TYPE_BADNESS;
}

View File

@ -1054,7 +1054,7 @@ lex_one_token (struct parser_state *par_state)
last_was_structop = 1;
goto symbol; /* Nope, must be a symbol. */
}
/* FALL THRU. */
[[fallthrough]];
case '0':
case '1':
@ -1129,7 +1129,7 @@ lex_one_token (struct parser_state *par_state)
return ENTRY;
}
}
/* FALLTHRU */
[[fallthrough]];
case '+':
case '-':
case '*':

View File

@ -114,7 +114,7 @@ go_language::value_print_inner (struct value *val, struct ui_file *stream,
break;
}
}
/* Fall through. */
[[fallthrough]];
default:
c_value_print_inner (val, stream, recurse, options);

View File

@ -6011,7 +6011,7 @@ Do you want to stop the program?"),
ir.addr -= 1;
goto no_support;
}
/* FALLTHROUGH */
[[fallthrough]];
case 0x0fb2: /* lss Gv */
case 0x0fb4: /* lfs Gv */
case 0x0fb5: /* lgs Gv */
@ -6248,7 +6248,7 @@ Do you want to stop the program?"),
I386_SAVE_FPU_REGS))
return -1;
}
/* Fall through */
[[fallthrough]];
default:
if (record_full_arch_list_add_mem (addr64, 2))
return -1;
@ -6787,7 +6787,7 @@ Do you want to stop the program?"),
ir.addr -= 1;
goto no_support;
}
/* FALLTHROUGH */
[[fallthrough]];
case 0xf5: /* cmc */
case 0xf8: /* clc */
case 0xf9: /* stc */
@ -7229,7 +7229,7 @@ Do you want to stop the program?"),
else if (ir.rm == 1)
break;
}
/* Fall through. */
[[fallthrough]];
case 3: /* lidt */
if (ir.mod == 3)
{

View File

@ -389,7 +389,7 @@ m2_get_discrete_bounds (struct type *type, LONGEST *lowp, LONGEST *highp)
return 0;
}
}
/* fall through */
[[fallthrough]];
default:
return get_discrete_bounds (type, lowp, highp);
}

View File

@ -373,7 +373,7 @@ m2_language::value_print_inner (struct value *val, struct ui_file *stream,
gdb_printf (stream, "{...}");
break;
}
/* Fall through. */
[[fallthrough]];
case TYPE_CODE_STRUCT:
if (m2_is_long_set (type))
m2_print_long_set (type, valaddr, 0, address, stream);
@ -451,7 +451,7 @@ m2_language::value_print_inner (struct value *val, struct ui_file *stream,
value_print_inner (v, stream, recurse, options);
break;
}
/* FALLTHROUGH */
[[fallthrough]];
case TYPE_CODE_REF:
case TYPE_CODE_ENUM:

View File

@ -292,7 +292,7 @@ macho_symtab_read (minimal_symbol_reader &reader,
case N_FUN:
if (sym->name == NULL || sym->name[0] == 0)
break;
/* Fall through. */
[[fallthrough]];
case N_STSYM:
/* Interesting symbol. */
nbr_syms++;

View File

@ -2582,7 +2582,7 @@ parse_partial_symbols (minimal_symbol_reader &reader,
those too. */
if (name[0] == '.')
continue;
/* Fall through. */
[[fallthrough]];
default:
ms_type = mst_unknown;
unknown_ext_complaint (name);
@ -3430,7 +3430,7 @@ parse_partial_symbols (minimal_symbol_reader &reader,
mst_file_text,
SECT_OFF_TEXT (objfile));
/* FALLTHROUGH */
[[fallthrough]];
case stProc:
/* Ignore all parameter symbol records. */
@ -3666,7 +3666,7 @@ parse_partial_symbols (minimal_symbol_reader &reader,
default:
unknown_ext_complaint (debug_info->ssext + psh->iss);
/* Pretend it's global. */
/* Fall through. */
[[fallthrough]];
case stGlobal:
/* Global common symbols are resolved by the runtime loader,
ignore them. */

View File

@ -652,7 +652,7 @@ list_args_or_locals (const frame_print_options &fp_opts,
case PRINT_SIMPLE_VALUES:
if (!mi_simple_type_p (sym2->type ()))
break;
/* FALLTHROUGH */
[[fallthrough]];
case PRINT_ALL_VALUES:
if (sym->is_argument ())

View File

@ -140,7 +140,7 @@ msymbol_is_function (struct objfile *objfile, minimal_symbol *minsym,
/* Ignore function symbol that is not a function entry. */
if (msymbol_is_cold_clone (minsym))
return false;
/* fallthru */
[[fallthrough]];
default:
if (func_address_p != NULL)
*func_address_p = msym_addr;

View File

@ -3992,7 +3992,7 @@ mips_deal_with_atomic_sequence (struct gdbarch *gdbarch, CORE_ADDR pc)
&& (itype_rt (insn) & 0x2) == 0);
if (is_branch) /* BC1ANY2F, BC1ANY2T, BC1ANY4F, BC1ANY4T */
break;
/* Fall through. */
[[fallthrough]];
case 18: /* COP2 */
case 19: /* COP3 */
is_branch = (itype_rs (insn) == 8); /* BCzF, BCzFL, BCzT, BCzTL */
@ -4100,7 +4100,7 @@ micromips_deal_with_atomic_sequence (struct gdbarch *gdbarch,
|| (insn & 0x3) != 0x1))
/* BC1ANY*: bits 010000 111xx xxx01 */
break;
/* Fall through. */
[[fallthrough]];
case 0x25: /* BEQ: bits 100101 */
case 0x2d: /* BNE: bits 101101 */
@ -4122,7 +4122,7 @@ micromips_deal_with_atomic_sequence (struct gdbarch *gdbarch,
/* JALR, JALR.HB: 000000 000x111100 111100 */
/* JALRS, JALRS.HB: 000000 010x111100 111100 */
break;
/* Fall through. */
[[fallthrough]];
case 0x1d: /* JALS: bits 011101 */
case 0x35: /* J: bits 110101 */

View File

@ -886,7 +886,7 @@ msp430_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
break;
}
}
/* Fall through. */
[[fallthrough]];
default:
error (_("Unknown msp430 isa"));
break;

View File

@ -895,8 +895,7 @@ linux_read_pt (btrace_data_pt *btrace, linux_btrace_target_info *tinfo,
case BTRACE_READ_NEW:
if (!perf_event_new_data (&tinfo->pev))
return BTRACE_ERR_NONE;
/* Fall through. */
[[fallthrough]];
case BTRACE_READ_ALL:
perf_event_read_all (&tinfo->pev, &btrace->data, &btrace->size);
return BTRACE_ERR_NONE;

View File

@ -454,7 +454,7 @@ windows_process_info::handle_exception (struct target_waitstatus *ourstatus,
break;
}
#endif
/* FALLTHROUGH */
[[fallthrough]];
case STATUS_WX86_BREAKPOINT:
DEBUG_EXCEPTION_SIMPLE ("EXCEPTION_BREAKPOINT");
ourstatus->set_stopped (GDB_SIGNAL_TRAP);
@ -493,7 +493,7 @@ windows_process_info::handle_exception (struct target_waitstatus *ourstatus,
break;
}
/* treat improperly formed exception as unknown */
/* FALLTHROUGH */
[[fallthrough]];
default:
/* Treat unhandled first chance exceptions specially. */
if (current_event.u.Exception.dwFirstChance)

View File

@ -289,7 +289,7 @@ Invalid hardware breakpoint type %d in x86_length_and_rw_bits.\n"),
case 8:
if (TARGET_HAS_DR_LEN_8)
return (DR_LEN_8 | rw);
/* FALL THROUGH */
[[fallthrough]];
default:
internal_error (_("\
Invalid hardware breakpoint length %d in x86_length_and_rw_bits.\n"), len);

View File

@ -1159,7 +1159,7 @@ yylex (void)
goto symbol; /* Nope, must be a symbol. */
}
/* FALL THRU. */
[[fallthrough]];
case '0':
case '1':

View File

@ -298,7 +298,7 @@ pascal_language::value_print_inner (struct value *val,
gdb_printf (stream, "{...}");
break;
}
/* Fall through. */
[[fallthrough]];
case TYPE_CODE_STRUCT:
if (options->vtblprint && pascal_object_is_vtbl_ptr_type (type))
{

View File

@ -482,7 +482,7 @@ print_scalar_formatted (const gdb_byte *valaddr, struct type *type,
byte_order);
break;
}
/* FALLTHROUGH */
[[fallthrough]];
case 'f':
print_floating (valaddr, type, stream);
break;

View File

@ -231,7 +231,7 @@ record_btrace_get_cpu (void)
case CS_NONE:
record_btrace_cpu.vendor = CV_UNKNOWN;
/* Fall through. */
[[fallthrough]];
case CS_CPU:
return &record_btrace_cpu;
}

View File

@ -8123,7 +8123,7 @@ Packet: '%s'\n"),
if (event->ws.kind () != TARGET_WAITKIND_IGNORE)
break;
/* fall through */
[[fallthrough]];
case 'S': /* Old style status, just signal only. */
{
int sig;
@ -8647,7 +8647,7 @@ remote_target::wait_as (ptid_t ptid, target_waitstatus *status,
putpkt (buf);
break;
}
/* fallthrough */
[[fallthrough]];
default:
warning (_("Invalid remote reply: %s"), buf);
break;
@ -10002,7 +10002,7 @@ remote_target::putpkt_binary (const char *buf, int cnt)
return 1;
case '-':
remote_debug_printf_nofunc ("Received Nak");
/* FALLTHROUGH */
[[fallthrough]];
case SERIAL_TIMEOUT:
tcount++;
if (tcount > 3)

View File

@ -3183,7 +3183,7 @@ riscv_arg_location (struct gdbarch *gdbarch,
riscv_call_arg_struct (ainfo, cinfo);
break;
}
/* FALLTHROUGH */
[[fallthrough]];
default:
riscv_call_arg_scalar_int (ainfo, cinfo);

View File

@ -4309,7 +4309,7 @@ ppc_process_record_op4 (struct gdbarch *gdbarch, struct regcache *regcache,
case 39: /* Vector Multiply-Sum Unsigned Halfword Saturate */
case 41: /* Vector Multiply-Sum Signed Halfword Saturate */
record_full_arch_list_add_reg (regcache, PPC_VSCR_REGNUM);
/* FALL-THROUGH */
[[fallthrough]];
case 20: /* Move To VSR Byte Mask Immediate opcode, b2 = 0,
ignore bit 31 */
case 21: /* Move To VSR Byte Mask Immediate opcode, b2 = 1,
@ -4375,7 +4375,7 @@ ppc_process_record_op4 (struct gdbarch *gdbarch, struct regcache *regcache,
&& vra != 7 /* Decimal Convert From National */
&& vra != 31) /* Decimal Set Sign */
break;
/* Fall through. */
[[fallthrough]];
/* 5.16 Decimal Integer Arithmetic Instructions */
case 1: /* Decimal Add Modulo */
case 65: /* Decimal Subtract Modulo */
@ -4564,7 +4564,7 @@ ppc_process_record_op4 (struct gdbarch *gdbarch, struct regcache *regcache,
case 970: /* Vector Convert To Signed Fixed-Point Word Saturate */
case 906: /* Vector Convert To Unsigned Fixed-Point Word Saturate */
record_full_arch_list_add_reg (regcache, PPC_VSCR_REGNUM);
/* FALL-THROUGH */
[[fallthrough]];
case 12: /* Vector Merge High Byte */
case 14: /* Vector Pack Unsigned Halfword Unsigned Modulo */
case 76: /* Vector Merge High Halfword */
@ -4897,7 +4897,7 @@ ppc_process_record_op19 (struct gdbarch *gdbarch, struct regcache *regcache,
case 560: /* Branch Conditional to Branch Target Address Register */
if ((PPC_BO (insn) & 0x4) == 0)
record_full_arch_list_add_reg (regcache, tdep->ppc_ctr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 528: /* Branch Conditional to Count Register */
if (PPC_LK (insn))
record_full_arch_list_add_reg (regcache, tdep->ppc_lr_regnum);
@ -4988,7 +4988,7 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache,
case 491: /* Divide Word */
if (PPC_OE (insn))
record_full_arch_list_add_reg (regcache, tdep->ppc_xer_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 9: /* Multiply High Doubleword Unsigned */
case 11: /* Multiply High Word Unsigned */
case 73: /* Multiply High Doubleword */
@ -5080,7 +5080,7 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache,
record_full_arch_list_add_reg (regcache, tdep->ppc_xer_regnum);
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 0: /* Compare */
case 32: /* Compare logical */
case 144: /* Move To Condition Register Fields */
@ -5103,7 +5103,7 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache,
case 373: /* Load Word Algebraic with Update Indexed */
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 21: /* Load Doubleword Indexed */
case 52: /* Load Byte And Reserve Indexed */
case 116: /* Load Halfword And Reserve Indexed */
@ -5176,7 +5176,7 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache,
case 631: /* Load Floating-Point Double with Update Indexed */
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 535: /* Load Floating-Point Single Indexed */
case 599: /* Load Floating-Point Double Indexed */
case 855: /* Load Floating-Point as Integer Word Algebraic Indexed */
@ -5272,7 +5272,7 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache,
case 759: /* Store Floating-Point Double with Update Indexed */
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 135: /* Store Vector Element Byte Indexed */
case 167: /* Store Vector Element Halfword Indexed */
case 199: /* Store Vector Element Word Indexed */
@ -5566,7 +5566,7 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache,
case 878: /* Transaction Abort Doubleword Conditional Immediate */
case 910: /* Transaction Abort */
record_full_arch_list_add_reg (regcache, tdep->ppc_ps_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 718: /* Transaction Check */
record_full_arch_list_add_reg (regcache, tdep->ppc_cr_regnum);
return 0;
@ -5790,7 +5790,7 @@ ppc_process_record_op60_XX2 (struct gdbarch *gdbarch,
case 24: /* VSX Vector Convert Half-Precision format to
Single-Precision format */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* Fall-through */
[[fallthrough]];
case 0: /* VSX Vector Extract Exponent Double-Precision */
case 1: /* VSX Vector Extract Significand Double-Precision */
case 7: /* VSX Vector Byte-Reverse Halfword */
@ -5884,7 +5884,7 @@ ppc_process_record_op60 (struct gdbarch *gdbarch, struct regcache *regcache,
case 19: /* VSX Scalar Compare Greater Than or Equal
Double-Precision */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 240: /* VSX Vector Copy Sign Double-Precision */
case 208: /* VSX Vector Copy Sign Single-Precision */
case 130: /* VSX Logical AND */
@ -6071,7 +6071,7 @@ ppc_process_record_op60 (struct gdbarch *gdbarch, struct regcache *regcache,
case 203: /* VSX Vector Square Root Double-Precision */
case 139: /* VSX Vector Square Root Single-Precision */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 345: /* VSX Scalar Absolute Value Double-Precision */
case 267: /* VSX Scalar Convert Scalar Single-Precision to
Vector Single-Precision format Non-signalling */
@ -6094,7 +6094,7 @@ ppc_process_record_op60 (struct gdbarch *gdbarch, struct regcache *regcache,
case 298: /* VSX Scalar Test Data Class Single-Precision */
case 362: /* VSX Scalar Test Data Class Double-Precision */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 106: /* VSX Scalar Test for software Square Root
Double-Precision */
case 234: /* VSX Vector Test for software Square Root
@ -6366,7 +6366,7 @@ ppc_process_record_op63 (struct gdbarch *gdbarch, struct regcache *regcache,
case 22: /* Move From FPSCR Control & set RN */
case 23: /* Move From FPSCR Control & set RN Immediate */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* Fall through. */
[[fallthrough]];
case 0: /* Move From FPSCR */
case 24: /* Move From FPSCR Lightweight */
if (PPC_FIELD (insn, 11, 5) == 0 && PPC_RC (insn))
@ -6412,7 +6412,7 @@ ppc_process_record_op63 (struct gdbarch *gdbarch, struct regcache *regcache,
case 644: /* VSX Scalar Compare Unordered Quad-Precision */
case 708: /* VSX Scalar Test Data Class Quad-Precision */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 128: /* Floating Test for software Divide */
case 160: /* Floating Test for software Square Root */
record_full_arch_list_add_reg (regcache, tdep->ppc_cr_regnum);
@ -6449,7 +6449,7 @@ ppc_process_record_op63 (struct gdbarch *gdbarch, struct regcache *regcache,
}
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 68: /* VSX Scalar Compare Equal Quad-Precision */
case 196: /* VSX Scalar Compare Greater Than or Equal
Quad-Precision */
@ -6457,7 +6457,7 @@ ppc_process_record_op63 (struct gdbarch *gdbarch, struct regcache *regcache,
case 676: /* VSX Scalar Maximum Type-C Quad-Precision */
case 740: /* VSX Scalar Minimum Type-C Quad-Precision */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 100: /* VSX Scalar Copy Sign Quad-Precision */
case 868: /* VSX Scalar Insert Exponent Quad-Precision */
ppc_record_vsr (regcache, tdep, PPC_VRT (insn) + 32);
@ -6468,7 +6468,7 @@ ppc_process_record_op63 (struct gdbarch *gdbarch, struct regcache *regcache,
{
case 27: /* VSX Scalar Square Root Quad-Precision */
record_full_arch_list_add_reg (regcache, tdep->ppc_fpscr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 0: /* VSX Scalar Absolute Quad-Precision */
case 2: /* VSX Scalar Extract Exponent Quad-Precision */
case 8: /* VSX Scalar Negative Absolute Quad-Precision */
@ -7233,10 +7233,10 @@ ppc_process_record (struct gdbarch *gdbarch, struct regcache *regcache,
case 13: /* Add Immediate Carrying and Record */
record_full_arch_list_add_reg (regcache, tdep->ppc_cr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 12: /* Add Immediate Carrying */
record_full_arch_list_add_reg (regcache, tdep->ppc_xer_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 14: /* Add Immediate */
case 15: /* Add Immediate Shifted */
record_full_arch_list_add_reg (regcache,
@ -7246,7 +7246,7 @@ ppc_process_record (struct gdbarch *gdbarch, struct regcache *regcache,
case 16: /* Branch Conditional */
if ((PPC_BO (insn) & 0x4) == 0)
record_full_arch_list_add_reg (regcache, tdep->ppc_ctr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 18: /* Branch */
if (PPC_LK (insn))
record_full_arch_list_add_reg (regcache, tdep->ppc_lr_regnum);
@ -7275,7 +7275,7 @@ ppc_process_record (struct gdbarch *gdbarch, struct regcache *regcache,
case 28: /* AND Immediate */
case 29: /* AND Immediate Shifted */
record_full_arch_list_add_reg (regcache, tdep->ppc_cr_regnum);
/* FALL-THROUGH */
[[fallthrough]];
case 24: /* OR Immediate */
case 25: /* OR Immediate Shifted */
case 26: /* XOR Immediate */
@ -7295,7 +7295,7 @@ ppc_process_record (struct gdbarch *gdbarch, struct regcache *regcache,
case 43: /* Load Halfword Algebraic with Update */
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 32: /* Load Word and Zero */
case 34: /* Load Byte and Zero */
case 40: /* Load Halfword and Zero */
@ -7319,7 +7319,7 @@ ppc_process_record (struct gdbarch *gdbarch, struct regcache *regcache,
case 51: /* Load Floating-Point Double with Update */
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 48: /* Load Floating-Point Single */
case 50: /* Load Floating-Point Double */
record_full_arch_list_add_reg (regcache,
@ -7347,7 +7347,7 @@ ppc_process_record (struct gdbarch *gdbarch, struct regcache *regcache,
case 55: /* Store Floating-Point Double with Update */
record_full_arch_list_add_reg (regcache,
tdep->ppc_gp0_regnum + PPC_RA (insn));
/* FALL-THROUGH */
[[fallthrough]];
case 36: /* Store Word */
case 38: /* Store Byte */
case 44: /* Store Halfword */

View File

@ -1386,7 +1386,7 @@ rust_parser::parse_binop (bool required)
case COMPOUND_ASSIGN:
compound_assign_op = current_opcode;
/* FALLTHROUGH */
[[fallthrough]];
case '=':
precedence = ASSIGN_PREC;
lex ();
@ -1831,7 +1831,7 @@ rust_parser::parse_path (bool for_expr)
if (current_token != COLONCOLON)
return "self";
lex ();
/* FALLTHROUGH */
[[fallthrough]];
case KW_SUPER:
while (current_token == KW_SUPER)
{

View File

@ -4376,7 +4376,7 @@ ex:
break;
}
/* For other instructions... */
/* Fall through. */
[[fallthrough]];
default:
gdb_printf (gdb_stdlog, "Warning: Unknown KM* function %02x at %s.\n",
(int)tmp, paddress (gdbarch, addr));
@ -4685,7 +4685,7 @@ ex:
break;
}
/* For KLMD... */
/* Fall through. */
[[fallthrough]];
default:
gdb_printf (gdb_stdlog, "Warning: Unknown KMAC function %02x at %s.\n",
(int)tmp, paddress (gdbarch, addr));
@ -6542,7 +6542,7 @@ ex:
/* op3c */
if (record_full_arch_list_add_reg (regcache, S390_R0_REGNUM + inib[3]))
return -1;
/* fallthru */
[[fallthrough]];
case 0x0c: /* CSST */
/* op4 */
if (record_full_arch_list_add_mem (oaddr2, 4))
@ -6557,7 +6557,7 @@ ex:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 4))
return -1;
/* fallthru */
[[fallthrough]];
case 0x10: /* CSDST */
/* op6 */
if (target_read_memory (oaddr2 + 0x68, buf, 8))
@ -6573,7 +6573,7 @@ ex:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 4))
return -1;
/* fallthru */
[[fallthrough]];
case 0x04: /* CS */
CS:
/* op1c */
@ -6598,7 +6598,7 @@ CS:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 8))
return -1;
/* fallthru */
[[fallthrough]];
case 0x11: /* CSDSTG */
/* op6 */
if (target_read_memory (oaddr2 + 0x68, buf, 8))
@ -6607,7 +6607,7 @@ CS:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 8))
return -1;
/* fallthru */
[[fallthrough]];
case 0x0d: /* CSSTG */
CSSTG:
/* op4 */
@ -6617,7 +6617,7 @@ CSSTG:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 8))
return -1;
/* fallthru */
[[fallthrough]];
case 0x05: /* CSG */
/* op1c */
if (record_full_arch_list_add_mem (oaddr2 + 0x08, 8))
@ -6631,7 +6631,7 @@ CSSTG:
/* op3c */
if (s390_record_gpr_g (gdbarch, regcache, inib[3]))
return -1;
/* fallthru */
[[fallthrough]];
case 0x0e: /* CSSTGR */
/* op4 */
if (record_full_arch_list_add_mem (oaddr2, 8))
@ -6646,7 +6646,7 @@ CSSTG:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 8))
return -1;
/* fallthru */
[[fallthrough]];
case 0x12: /* CSDSTGR */
/* op6 */
if (target_read_memory (oaddr2 + 0x68, buf, 8))
@ -6662,7 +6662,7 @@ CSSTG:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 8))
return -1;
/* fallthru */
[[fallthrough]];
case 0x06: /* CSGR */
CSGR:
/* op1c */
@ -6687,7 +6687,7 @@ CSGR:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 16))
return -1;
/* fallthru */
[[fallthrough]];
case 0x13: /* CSDSTX */
/* op6 */
if (target_read_memory (oaddr2 + 0x68, buf, 8))
@ -6696,7 +6696,7 @@ CSGR:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 16))
return -1;
/* fallthru */
[[fallthrough]];
case 0x0f: /* CSSTX */
CSSTX:
/* op4 */
@ -6706,7 +6706,7 @@ CSSTX:
oaddr3 = s390_record_address_mask (gdbarch, regcache, oaddr3);
if (record_full_arch_list_add_mem (oaddr3, 16))
return -1;
/* fallthru */
[[fallthrough]];
case 0x07: /* CSX */
/* op1c */
if (record_full_arch_list_add_mem (oaddr2 + 0x00, 16))

View File

@ -1095,7 +1095,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
}
break;
}
/* Fall through. */
[[fallthrough]];
case 'P':
/* acc seems to use P to declare the prototypes of functions that
@ -1106,7 +1106,7 @@ define_symbol (CORE_ADDR valu, const char *string, int desc, int type,
sym->set_type (read_type (&p, objfile));
goto process_prototype_types;
}
/*FALLTHROUGH */
[[fallthrough]];
case 'R':
/* Parameter which is in a register. */
@ -2494,7 +2494,7 @@ read_member_functions (struct stab_field_info *fip, const char **pp,
complaint (_("member function type missing, got '%c'"),
(*pp)[-1]);
/* Normal member function. */
/* Fall through. */
[[fallthrough]];
case '.':
/* normal member function. */

View File

@ -3043,7 +3043,7 @@ section_is_mapped (struct obj_section *osect)
if (osect->ovly_mapped == -1)
gdbarch_overlay_update (gdbarch, osect);
}
/* fall thru */
[[fallthrough]];
case ovly_on: /* overlay debugging manual */
return osect->ovly_mapped == 1;
}

View File

@ -218,7 +218,7 @@ can_dump_core (enum resource_limit_kind limit_kind)
case LIMIT_CUR:
if (rlim.rlim_cur == 0)
return 0;
/* Fall through. */
[[fallthrough]];
case LIMIT_MAX:
if (rlim.rlim_max == 0)

View File

@ -1280,7 +1280,7 @@ value_assign (struct value *toval, struct value *fromval)
break;
}
}
/* Fall through. */
[[fallthrough]];
default:
error (_("Left operand of assignment is not an lvalue."));
@ -2820,7 +2820,7 @@ find_overload_match (gdb::array_view<value *> args,
case where a xmethod is better than the source
method, except when the xmethod match quality is
non-standard. */
/* FALLTHROUGH */
[[fallthrough]];
case 1: /* Src method and ext method are incompatible. */
/* If ext method match is not standard, then let source method
win. Otherwise, fallthrough to let xmethod win. */
@ -2832,7 +2832,7 @@ find_overload_match (gdb::array_view<value *> args,
method_match_quality = src_method_match_quality;
break;
}
/* FALLTHROUGH */
[[fallthrough]];
case 2: /* Ext method is champion. */
method_oload_champ = ext_method_oload_champ;
method_badness = ext_method_badness;

View File

@ -3336,7 +3336,7 @@ pack_long (gdb_byte *buf, struct type *type, LONGEST num)
{
case TYPE_CODE_RANGE:
num -= type->bounds ()->bias;
/* Fall through. */
[[fallthrough]];
case TYPE_CODE_INT:
case TYPE_CODE_CHAR:
case TYPE_CODE_ENUM:

View File

@ -2291,14 +2291,14 @@ redir_open (const char *redir_string, int *inp, int *out, int *err)
{
case '0':
fname++;
/* FALLTHROUGH */
[[fallthrough]];
case '<':
fd = inp;
mode = O_RDONLY;
break;
case '1': case '2':
fname++;
/* FALLTHROUGH */
[[fallthrough]];
case '>':
fd = (rc == '2') ? err : out;
mode = O_WRONLY | O_CREAT;

View File

@ -1532,7 +1532,7 @@ process_xcoff_symbol (struct xcoff_symbol *cs, struct objfile *objfile)
default:
complaint (_("Unexpected storage class: %d"),
cs->c_sclass);
/* FALLTHROUGH */
[[fallthrough]];
case C_DECL:
case C_PSYM:
@ -2359,7 +2359,7 @@ scan_xcoff_symtab (minimal_symbol_reader &reader,
complaint (_("Storage class %d not recognized during scan"),
sclass);
}
/* FALLTHROUGH */
[[fallthrough]];
case C_FCN:
/* C_FCN is .bf and .ef symbols. I think it is sufficient

View File

@ -799,7 +799,7 @@ z80_software_single_step (struct regcache *regcache)
break;
case insn_jr_cc_d:
opcode &= 030; /* JR NZ,d has cc equal to 040, but others 000 */
/* fall through */
[[fallthrough]];
case insn_jp_cc_nn:
case insn_call_cc_nn:
case insn_ret_cc:

View File

@ -410,7 +410,7 @@ netbsd_process_target::wait (ptid_t ptid, struct target_waitstatus *ourstatus,
case TARGET_WAITKIND_THREAD_CREATED:
case TARGET_WAITKIND_THREAD_EXITED:
/* The core needlessly stops on these events. */
/* FALLTHROUGH */
[[fallthrough]];
case TARGET_WAITKIND_SPURIOUS:
/* Spurious events are unhandled by the gdbserver core. */
if (ptrace (PT_CONTINUE, current_process ()->pid, (void *) 1, 0)

View File

@ -134,8 +134,7 @@ btrace_data_append (struct btrace_data *dst,
case BTRACE_FORMAT_NONE:
dst->format = BTRACE_FORMAT_BTS;
dst->variant.bts.blocks = new std::vector<btrace_block>;
/* Fall-through. */
[[fallthrough]];
case BTRACE_FORMAT_BTS:
{
unsigned int blk;
@ -163,8 +162,7 @@ btrace_data_append (struct btrace_data *dst,
dst->format = BTRACE_FORMAT_PT;
dst->variant.pt.data = NULL;
dst->variant.pt.size = 0;
/* fall-through. */
[[fallthrough]];
case BTRACE_FORMAT_PT:
{
gdb_byte *data;

View File

@ -257,14 +257,14 @@ format_pieces::format_pieces (const char **arg, bool gdb_extensions,
case 'u':
if (seen_hash)
bad = 1;
/* FALLTHROUGH */
[[fallthrough]];
case 'o':
case 'x':
case 'X':
if (seen_space || seen_plus)
bad = 1;
/* FALLTHROUGH */
[[fallthrough]];
case 'd':
case 'i':