]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Use C++17 [[fallthrough]] attribute
authorTom Tromey <tom@tromey.com>
Sun, 15 Oct 2023 17:09:07 +0000 (11:09 -0600)
committerTom Tromey <tom@tromey.com>
Wed, 29 Nov 2023 21:29:43 +0000 (14:29 -0700)
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>
60 files changed:
gdb/aarch64-tdep.c
gdb/ada-exp.y
gdb/ada-lang.c
gdb/ada-valprint.c
gdb/amd64-windows-tdep.c
gdb/arch/arm.c
gdb/arm-tdep.c
gdb/c-exp.y
gdb/cli/cli-setshow.c
gdb/coffread.c
gdb/compile/compile-c-support.c
gdb/compile/compile-c-symbols.c
gdb/compile/compile-cplus-symbols.c
gdb/cp-name-parser.y
gdb/cp-support.c
gdb/ctfread.c
gdb/d-exp.y
gdb/d-valprint.c
gdb/dbxread.c
gdb/disasm-selftests.c
gdb/dwarf2/macro.c
gdb/dwarf2/read.c
gdb/eval.c
gdb/f-exp.y
gdb/fbsd-nat.c
gdb/gdbtypes.c
gdb/go-exp.y
gdb/go-valprint.c
gdb/i386-tdep.c
gdb/m2-typeprint.c
gdb/m2-valprint.c
gdb/machoread.c
gdb/mdebugread.c
gdb/mi/mi-cmd-stack.c
gdb/minsyms.c
gdb/mips-tdep.c
gdb/msp430-tdep.c
gdb/nat/linux-btrace.c
gdb/nat/windows-nat.c
gdb/nat/x86-dregs.c
gdb/p-exp.y
gdb/p-valprint.c
gdb/printcmd.c
gdb/record-btrace.c
gdb/remote.c
gdb/riscv-tdep.c
gdb/rs6000-tdep.c
gdb/rust-parse.c
gdb/s390-tdep.c
gdb/stabsread.c
gdb/symfile.c
gdb/utils.c
gdb/valops.c
gdb/value.c
gdb/windows-nat.c
gdb/xcoffread.c
gdb/z80-tdep.c
gdbserver/netbsd-low.cc
gdbsupport/btrace-common.cc
gdbsupport/format.cc

index eaae2d91047b1d3f9c8712e2a348392fc37e5095..ba37b4969a3010f3c491bf1196bf922d74fc92db 100644 (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:
index 3280a483a5ee3afa66ce2a661336a8b282d6c598..fcb5aa4379b02ff0d91d0ef010637cf061f532df 100644 (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))
index ff7222c7eed0ea85de3e943c58983f4fbbe895b2..1a591567cdaf2646df174fd7cda64f5218bb80cc 100644 (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);
index 86cab353e0f1810e0a619ad1ed50af017fc81926..309bb518560d21dc1de0126f79313d5e79249b54 100644 (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;
index 9d69ec282d2cdff4c416b6927a55f7633862f6e1..6be434341218322a6767db2b2c7ee21a1c2cf365 100644 (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.  */
index 4720c201c53231537a9c029a0e821602e0632728..6fc4c0e11cd6a3f780ecd50a19d285875f3e6890 100644 (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)
index 7a93b09824782b13b88618d9002fa3902aa271fe..23fecf7cf6665746af2172294385be9275235097 100644 (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);
index a27dbfa608f3cfa6037ba16b68e1066aa45692be..2b4c21850d39e7646c29b6a349d4f677a0ab5127 100644 (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 '"':
 
index c7bbac1666d3c0a96d9c62a9e9247c4b5154568b..11f93068b680e6179b04234d6a16d3236b1dedeb 100644 (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;
index 5898b3a8e08c32a73edea9ddb4a6d866f5705a28..373636319150ac3299e39fafd957946c7dfc06bf 100644 (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:
index 3a3e4d21136c2c515e0109eee8d632ba95d2fb47..f099504aab7fa6cc96d0fce57da9d4f629433dcb 100644 (file)
@@ -267,7 +267,7 @@ generate_register_struct (struct ui_file *stream, struct gdbarch *gdbarch,
                    }
                }
 
-               /* Fall through.  */
+               [[fallthrough]];
 
              default:
                gdb_printf (stream,
index 5982178170c46156d58bc1f007485eeff91528cf..a80b9a43156a2473862630f5948fc202252f1a68 100644 (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.
index 1edbf8f64b5fb6733a29b31b28245ef950aec991..5cffe5cfebb76d565fd86df795c4efdf2e46131e 100644 (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.
index e6c8c4c09a9421316159d0e3ae064d7832719246..9a359d47b65c11fa6a9e78ad99ed13f97aa966fc 100644 (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':
index cb169444d2a1c3484d5215f01a85cfbe9a95d4e7..9eb5577dd3386ea8b40d86cef747e37e278c5017 100644 (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:
index c74ec044c18b01d0baf73db680387fd40b4aa7eb..03a042ec38c6a434191b99e231dafb2d07f6aa48 100644 (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;
index 6c5569a1c8d67c587e78998329eb038017e98e50..e2507982d502f0e8b53ab619f5f8c76a57227427 100644 (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 '*':
index 38fb2a07c1f30407cb321eebe3bb68a219b26b67..4c3ea227750046c2e384b7a149400a9b0fb6475b 100644 (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;
index b92193bdadd7996a827cbdedf5a2e0d79bceb390..99d9fba96ea981243beab092c8a1b9960065c232 100644 (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,
index 0cf766a48b76317eb33bb45caa57d1743a71b4f5..200d33aff4e0bbb7377153d8c710567eae8d110c 100644 (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:
       {
index 2e88e6702169581636dae4717fc0f5ef4e906ebd..7d86d16d0e310f770b0ab88d7f8aad483f336af4 100644 (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,
index 9f3297a2d4ef4976dec2f0ce1bf7d6c59cb34084..468e76dfb34674c251a8053cb14370dd04a6719c 100644 (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:
index 3358b0d8d32a29e1f89e9daa2138c6d4494f78ef..8192aeba3640b15c1c47240d74654ae60180c41d 100644 (file)
@@ -172,7 +172,7 @@ fetch_subexp_value (struct expression *exp,
        case MEMORY_ERROR:
          if (!preserve_errors)
            break;
-         /* Fall through.  */
+         [[fallthrough]];
        default:
          throw;
          break;
index 18566afd67f59f837cd94a3c521f814a560dfd05..e4e2171d6418b2508ec6273b4308482d7300fbb0 100644 (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 '*':
index 211b83f555af23db108cbc30035bf5bc4cc68a3f..b56e194b7d582ecb1c6dfd1fc4ffa898ce1c52d3 100644 (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.  */
index aa2fce00e1180541ede0fed180a430307b8c5652..4c70c9b8ae6a3c8cd96ead77c3efd58094db0b89 100644 (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;
     }
index 28bf3f0ab3307d9a2304e1e4179de5b3b67bf29a..c9b9c0b1ab72e398e615b046fcc1f4b8731652f6 100644 (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 '*':
index 05788af15a6f004225a0106a94ffd4f0a9b74eaf..ca1e6b5ba6f9eaa103740e040bfab934c85cf8be 100644 (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);
index 8efd8584fcd79bf27138f72d15f959d9543ca52e..e00c3bd9d5685db81a8ea79fe0ba8ebafcf51f5b 100644 (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)
            {
index 72f978205ab04c07edab82fe0af83bc5179408d6..179c3fccc30e3b41893e994da5214ea825ec5572 100644 (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);
     }
index 96a566fb810dc72c975d1cfb34e4b5fcaabf6261..c4570da2e18848b7f70d6771071e54608029e8fa 100644 (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:
index 38c252c2861d0c30bc9c14db4e935f259c318814..87d30ec8587ecb0db9b39e94ab785b6c57bf1b9f 100644 (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++;
index fc731605991f2179351f0c8d6efa202934aff21c..a28005031e61f3d0077efe4495ce9aabc7f7f4f8 100644 (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.  */
index 6982338751aa14a64d94bc189f72b9f742bafedb..401e7c40726a957218dcb72fcbac209a7ecc963a 100644 (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 ())
index 72e500be9597584ebb908ea773bd243ef1ed12b9..71e22ce1a90cdee94ec1d3b1b5ab089ff635303d 100644 (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;
index 066c7c8066994f25b6ad1948d3650a879a55c5f2..c7157c19e7bea8c144dddd8bede2c4a2efaee364 100644 (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 */
index 97d9073efbbef52e6c1dacf50e49a39c1643bda4..f65948f01d8753084efd6d3d588381824b5d163e 100644 (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;
index c0cebbb2f02d15321ba16ed2684311665f2317ae..89bf28b5133fb7aa67305c7004d770195e6b7661 100644 (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;
index 7951bc37d3cfabdbd66b51452f71268d42640ee6..ea95f9524ac0a010251b963ed495d27cd110bd90 100644 (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)
index 731093dfa737813b04f32ab812a4274736f0d4b8..16669f696576485cc3a5ede56ab0658db2415b8f 100644 (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);
index 2360a500476cfc9999dd90a71583f1dfba71d464..b0f334897ad6380e64e6ebe0d5e7a5c4b1bfba1f 100644 (file)
@@ -1159,7 +1159,7 @@ yylex (void)
          goto symbol;          /* Nope, must be a symbol.  */
        }
 
-      /* FALL THRU.  */
+      [[fallthrough]];
 
     case '0':
     case '1':
index 056016225600785fcb3b45552dabee0377dce618..1b7dab4cb4f922fed75eeb355159bbaecbd68391 100644 (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))
        {
index 98f38b2598d85393f30fb3c70e23518e4e9d8234..27a4eb3eec6303d080b31014573bc1d3bff38c55 100644 (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;
index 27b3753740ea54807fd721ac5ed8c5ddc528b7f4..a6c6888a0d496bc792f80a6c6b2cd298a6694b2d 100644 (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;
     }
index 22215b5633fcf2b3044430417e23cee9459cfa13..8ccc1266073244ee9d90b8fd507f07f04a4cbae9 100644 (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)
index 3725be4427667bf71ab113866e7bf767c79f6a32..8849483d4d4eb14f41370f1386ca7de6ad4ed45a 100644 (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);
index fef47f8a6b060718f0a77c7c5000db15192512f0..16f3da9c01176164330a4665c12a4b2a74319ee4 100644 (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 */
index d2f6008026f07f0a5449d92dd11e20c3135c62f1..aaf4cef0d7e88a6fc5ac50155a007475a6b49245 100644 (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)
        {
index 54b5c89e5e3cfabf5a88c038159ba19b33537054..5b58cb382e3080a7109a156ef6da6e4b4079e7ff 100644 (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))
index c81ae428898f5feab3a0551119274db3ae91c0d1..754f82406b48ed6285dde6dbbfea2e989ef25c31 100644 (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.  */
index c5af186ad33c3344e3f1233d52b424a802d06785..09aa70be1d56eb28b7ae3bb91074c6ad816d7b6d 100644 (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;
     }
index 7a1841ba21e9ba0651769eab47b984c509cf5c73..5ec8c5671f3a0feb6a606a1dd055ae1342e3ca00 100644 (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)
index a8760ccf3e49206b6fba7dd887e7b1a8ddfee977..6521580a1e833c011020c969fad70e9dec31cb0b 100644 (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;
index 7067ae94df0b25b97fd04e466516e12f605fc71e..b4da9675039ea641815266b6d7c99ed36949df2b 100644 (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:
index 39a4e7931c66fde12b2b93324101063e792b98ff..6544118bf9c991ab13b6ff2a90f56d9c4d1ddf0c 100644 (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;
index 829fc1f09c7e81348e4b310314979d7896aef72e..856fa134ed7d6d6918ba7c901b155cfae12d8f23 100644 (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
index ae328550b063bb2b9546075959ae24c0d97445da..f0cc7c0d91786239b0896a738d49018ba130f72c 100644 (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:
index 4defd79eee47b4ca0f59a46d9878f226c3800556..10d8d280b98aa0a3e3906474071ee185d57e3727 100644 (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)
index 932a11888b0fabe3d135a5833d7a6fa5e26661ed..c09fd504270d6d79bd9fc5b7ce9007af7110a430 100644 (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;
index 6e5a3cb6603d9506f8c54760d408eb742195f625..85d1f9a89051cfd900a3e59a85ce7ffbc060a09c 100644 (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':