target_pass_signals/target_program_signals: Use gdb::array_view
authorPedro Alves <palves@redhat.com>
Thu, 24 Jan 2019 18:25:06 +0000 (18:25 +0000)
committerPedro Alves <palves@redhat.com>
Thu, 24 Jan 2019 18:25:06 +0000 (18:25 +0000)
commitadc6a863a9c6c828425d63b12d553f0e8f21e350
tree707b67c07bca0de636702016728f8eb8dd8f49a5
parent3046d67a0e29686ec18abd719660969c97973063
target_pass_signals/target_program_signals: Use gdb::array_view

This replaces the pointer and length parameters of target_pass_signals
and target_program_signals with a gdb::array_view parameter, and fixes
the fallout.

In infrun.c, the signal_stop, signal_print, signal_program,
signal_catch, signal_pass globals are currently pointers to
heap-allocated memory.  I see no point in that, so I converted them to
arrays.  This allows simplifying the calls to
target_pass_signals/target_program_signals, since we can pass the
array directly, which can implicitly convert to gdb::array_view.

gdb/ChangeLog:
2019-01-24  Pedro Alves  <palves@redhat.com>

* infrun.c (signal_stop, signal_print, signal_program)
(signal_catch, signal_pass): Now arrays instead of pointers.
(update_signals_program_target, do_target_resume)
(signal_catch_update, handle_command, _initialize_infrun): Adjust.
* linux-nat.c (linux_nat_target::pass_signals)
(linux_nat_target::create_inferior, linux_nat_target::attach):
Adjust.
* linux-nat.h (linux_nat_target::pass_signals): Adjust.
* nto-procfs.c (nto_procfs_target::pass_signals): Adjust.
* procfs.c (procfs_target::pass_signals): Adjust.
* record-full.c (record_full_target::resume): Adjust.
* remote.c (remote_target::pass_signals)
(remote_target::program_signals): Adjust.
* target-debug.h (target_debug_print_signals): Now takes a
gdb::array_view as parameter.  Adjust.
* target.h (target_ops) <pass_signals, program_signals>: Replace
pointer and length parameters with gdb::array_view.
(target_pass_signals, target_program_signals): Likewise.
* target-delegates.c: Regenerate.
12 files changed:
gdb/ChangeLog
gdb/infrun.c
gdb/linux-nat.c
gdb/linux-nat.h
gdb/nto-procfs.c
gdb/procfs.c
gdb/record-full.c
gdb/remote.c
gdb/target-debug.h
gdb/target-delegates.c
gdb/target.c
gdb/target.h