Define gdb.Value(bufobj, type) constructor
[external/binutils.git] / gdb / ChangeLog
1 2019-02-26  Kevin Buettner  <kevinb@redhat.com>
2
3         * python/py-value.c (convert_buffer_and_type_to_value): New
4         function.
5         (valpy_new): Parse arguments via gdb_PyArg_ParseTupleAndKeywords.
6         Add support for handling an optional second argument.  Call
7         convert_buffer_and_type_to_value as appropriate.
8         * python/python-internal.h (Py_buffer_deleter): New struct.
9         (Py_buffer_up): New typedef.
10
11 2019-02-25  John Baldwin  <jhb@FreeBSD.org>
12
13         * dwarf2read.c (dwarf2_get_dwz_file): Reset dwz_bfd to nullptr
14         instead of releasing ownership.
15
16 2019-02-25  Jordan Rupprecht  <rupprecht@google.com>
17
18         * dwarf2read.c (open_and_init_dwp_file): Call
19         elf_numsections instead of bfd_count_sections to initialize
20         dwp_file->num_sections.
21
22 2019-02-25  Tom Tromey  <tromey@adacore.com>
23
24         * solib-darwin.c (darwin_get_dyld_bfd): Don't release dyld_bfd.
25
26 2019-02-23  Sergio Durigan Junior  <sergiodj@redhat.com>
27
28         * gcore.in: Add '--readnever' option when invoking GDB.
29
30 2019-02-22  Simon Marchi  <simon.marchi@polymtl.ca>
31
32         * MAINTAINERS: Update my email address.
33
34 2019-02-22  Simon Marchi  <simon.marchi@polymtl.ca>
35
36         * build-id.c (build_id_to_debug_bfd_1): New function.
37         (build_id_to_debug_bfd): Look for separate debug file in
38         sysroot.
39
40 2019-02-22  Andrew Burgess  <andrew.burgess@embecosm.com>
41
42         * gdbarch.sh: Update the copyright year range that is placed into
43         generated files.
44
45 2019-02-22  Keith Seitz  <keiths@redhat.com>
46
47         PR symtab/23853
48         * linespec.c (create_sals_line_offset): Search for the default
49         symtab's filename instead of its fullname.
50
51 2019-02-21  Alan Hayward  <alan.hayward@arm.com>
52
53         * NEWS: Update style defaults.
54
55 2019-02-21  Alan Hayward  <alan.hayward@arm.com>
56
57         * main.c (captured_main_1): Disable styling in batch mode.
58
59 2019-02-20  Tom Tromey  <tom@tromey.com>
60
61         * symtab.c (symtab_symbol_info): Fix typos.
62
63 2019-02-20  Tom Tromey  <tromey@adacore.com>
64
65         * findcmd.c (_initialize_mem_search): Use upper case for
66         metasyntactic variables.
67
68 2019-02-20  Alan Hayward  <alan.hayward@arm.com>
69
70         * aarch64-tdep.c (aarch64_add_reggroups): New function.
71         (aarch64_gdbarch_init): Call aarch64_add_reggroups.
72
73 2019-02-19  Simon Marchi  <simon.marchi@polymtl.ca>
74
75         * top.h (source_file_name): Change to std::string.
76         * top.c (source_file_name): Likewise.
77         (command_line_input): Adjust.
78         * cli/cli-script.c (script_from_file): Adjust.
79
80 2019-02-19  Tom Tromey  <tromey@adacore.com>
81
82         * ravenscar-thread.c
83         (ravenscar_thread_target::update_thread_list): Don't call
84         ada_build_task_list.
85         * ada-lang.h (ada_build_task_list): Don't declare.
86         * ada-tasks.c (struct ada_tasks_inferior_data)
87         <task_list_valid_p>: Now bool.
88         (read_known_tasks, ada_task_list_changed)
89         (ada_tasks_invalidate_inferior_data): Update.
90         (read_known_tasks_array): Return bool.
91         (read_known_tasks_list): Likewise.
92         (read_known_tasks): Return void.
93         (ada_build_task_list): Now static.
94
95 2019-02-18  Andrew Burgess  <andrew.burgess@embecosm.com>
96
97         * gdbtypes.c (type_align): Allow alignment of TYPE_CODE_METHODPTR
98         and TYPE_CODE_MEMBERPTR to be overridden by the gdbarch.
99
100 2019-02-18  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
101
102         * ada-task.c (_initialize_tasks): Use 'with_cleanup' register
103         variant for ada_tasks_pspace_data_handle and
104         ada_tasks_inferior_data_handle.
105         (ada_tasks_pspace_data_cleanup): New function.
106         (ada_tasks_inferior_data_cleanup): New function.
107
108 2019-02-17  Tom Tromey  <tom@tromey.com>
109
110         * macrotab.h (macro_source_fullname): Return a std::string.
111         * macrotab.c (macro_include, check_for_redefinition)
112         (macro_undef, macro_lookup_definition, foreach_macro)
113         (foreach_macro_in_scope): Update.
114         (macro_source_fullname): Return a std::string.
115         * macrocmd.c (show_pp_source_pos): Update.
116
117 2019-02-17  Tom Tromey  <tom@tromey.com>
118
119         * macrocmd.c (show_pp_source_pos): Style the file names.
120
121 2019-02-17  Tom Tromey  <tom@tromey.com>
122
123         PR tui/24197:
124         * tui/tui-source.c (tui_set_source_content_nil): Rewrite.
125
126 2019-02-17  Tom Tromey  <tom@tromey.com>
127
128         * ada-lang.c (user_select_syms): Use filtered printing.
129         * utils.c (wrap_style): New global.
130         (desired_style): Remove.
131         (emit_style_escape): Add stream parameter.
132         (set_output_style, reset_terminal_style, prompt_for_continue):
133         Update.
134         (flush_wrap_buffer): Only flush gdb_stdout.
135         (wrap_here): Set wrap_style.
136         (fputs_maybe_filtered): Clear the wrap buffer on exception.  Don't
137         treat escape sequences as a character.  Change when wrap buffer is
138         flushed.
139         (fputs_styled): Do not set the output style when the default is
140         requested.
141         * ui-style.h (struct ui_file_style) <is_default>: New method.
142         * source.c (print_source_lines_base): Emit escape sequences in one
143         piece.
144
145 2019-02-17  Joel Brobecker  <brobecker@adacore.com>
146
147         * gdbtypes.c (type_align): Handle TYPE_CODE_RANGE the same as
148         integers and enumeration types.
149
150 2019-02-17  Joel Brobecker  <brobecker@adacore.com>
151
152         * ada-lang.c (standard_lookup): Use ada_lookup_encoded_symbol
153         instead of lookup_symbol_in_language
154         (do_exact_match): New function.
155         (ada_get_symbol_name_matcher): Return do_exact_match when
156         doing a verbatim match.
157
158 2019-02-15  Tom Tromey  <tromey@adacore.com>
159
160         * ravenscar-thread.c (ravenscar_thread_target::resume)
161         (ravenscar_thread_target::wait): Special case wildcard requests.
162
163 2019-02-15  Tom Tromey  <tromey@adacore.com>
164
165         * ravenscar-thread.c (base_ptid): Remove.
166         (struct ravenscar_thread_target) <close>: New method.
167         <m_base_ptid>: New member.
168         <update_inferior_ptid, active_task, task_is_currently_active,
169         runtime_initialized>: Declare methods.
170         <ravenscar_thread_target>: Add constructor.
171         (ravenscar_thread_target::task_is_currently_active)
172         (ravenscar_thread_target::update_inferior_ptid)
173         (ravenscar_runtime_initialized): Rename.  Now methods.
174         (ravenscar_thread_target::resume, ravenscar_thread_target::wait)
175         (ravenscar_thread_target::update_thread_list): Update.
176         (ravenscar_thread_target::active_task): Now method.
177         (ravenscar_thread_target::store_registers)
178         (ravenscar_thread_target::prepare_to_store)
179         (ravenscar_thread_target::prepare_to_store)
180         (ravenscar_thread_target::mourn_inferior): Update.
181         (ravenscar_inferior_created): Use "new" to create target.
182         (ravenscar_thread_target::get_ada_task_ptid): Update.
183         (_initialize_ravenscar): Don't initialize base_ptid.
184         (ravenscar_ops): Remove global.
185
186 2019-02-15  Tom Tromey  <tromey@adacore.com>
187
188         * target.h (push_target): Declare new overload.
189         * target.c (push_target): New overload, taking an rvalue reference.
190         * remote.c (remote_target::open_1): Use push_target overload.
191         * corelow.c (core_target_open): Use push_target overload.
192
193 2019-02-15  Tom Tromey  <tromey@adacore.com>
194
195         * ravenscar-thread.c (is_ravenscar_task)
196         (ravenscar_task_is_currently_active): Return bool.
197         (ravenscar_update_inferior_ptid, get_running_thread_msymbol)
198         (_initialize_ravenscar): Remove "(void)".
199         (has_ravenscar_runtime, ravenscar_runtime_initialized): Likewise.
200         Return bool.
201
202 2019-02-15  Tom Tromey  <tromey@adacore.com>
203
204         * ravenscar-thread.c (ravenscar_runtime_initializer)
205         (has_ravenscar_runtime, get_running_thread_id)
206         (ravenscar_thread_target::resume): Fix indentation.
207
208 2019-02-15  Tom Tromey  <tromey@adacore.com>
209
210         * sparc-ravenscar-thread.c (struct sparc_ravenscar_ops): Derive
211         from ravenscar_arch_ops.
212         (sparc_ravenscar_ops::fetch_registers)
213         (sparc_ravenscar_ops::store_registers): Now methods.
214         (sparc_ravenscar_prepare_to_store): Remove.
215         (sparc_ravenscar_ops): Redefine.
216         * ravenscar-thread.h (struct ravenscar_arch_ops): Add virtual
217         methods and destructor.  Remove members.
218         * ravenscar-thread.c (ravenscar_thread_target::fetch_registers)
219         (ravenscar_thread_target::store_registers)
220         (ravenscar_thread_target::prepare_to_store): Update.
221         * ppc-ravenscar-thread.c (ppc_ravenscar_generic_prepare_to_store):
222         Remove.
223         (struct ppc_ravenscar_powerpc_ops): Derive from
224         ravenscar_arch_ops.
225         (ppc_ravenscar_powerpc_ops::fetch_registers)
226         (ppc_ravenscar_powerpc_ops::store_registers): Now methods.
227         (ppc_ravenscar_powerpc_ops): Redefine.
228         (struct ppc_ravenscar_e500_ops): Derive from ravenscar_arch_ops.
229         (ppc_ravenscar_e500_ops::fetch_registers)
230         (ppc_ravenscar_e500_ops::store_registers): Now methods.
231         (ppc_ravenscar_e500_ops): Redefine.
232         * aarch64-ravenscar-thread.c
233         (aarch64_ravenscar_generic_prepare_to_store): Remove.
234         (struct aarch64_ravenscar_ops): Derive from ravenscar_arch_ops.
235         (aarch64_ravenscar_fetch_registers)
236         (aarch64_ravenscar_store_registers): Now methods.
237         (aarch64_ravenscar_ops): Redefine.
238
239 2019-02-15  Tom Tromey  <tromey@adacore.com>
240
241         * ravenscar-thread.c (ravenscar_thread_target::stopped_by_sw_breakpoint)
242         (ravenscar_thread_target::stopped_by_hw_breakpoint)
243         (ravenscar_thread_target::stopped_by_watchpoint)
244         (ravenscar_thread_target::stopped_data_address)
245         (ravenscar_thread_target::core_of_thread): Use scoped_restore.
246
247 2019-02-15  Tom Tromey  <tromey@adacore.com>
248
249         * ravenscar-thread.c: Fix some typos.
250
251 2019-02-15  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
252             Tom Tromey  <tromey@adacore.com>
253
254         * ada-lang.c (ada_exception_sal): Change addr_string to a
255         std::string.
256         (create_ada_exception_catchpoint): Update.
257
258 2019-02-15  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
259             Tom Tromey  <tromey@adacore.com>
260
261         * breakpoint.c (~bp_location): Rename from bp_location_dtor.
262         (bp_location_ops): Remove.
263         (base_breakpoint_allocate_location): Update.
264         (free_bp_location): Update.
265         * ada-lang.c (class ada_catchpoint_location)
266         <ada_catchpoint_location>: Remove ops parameter.
267         (ada_catchpoint_location_dtor): Remove.
268         (ada_catchpoint_location_ops): Remove.
269         (allocate_location_exception): Update.
270         * breakpoint.h (struct bp_location_ops): Remove.
271         (class bp_location) <bp_location>: Remove bp_location_ops
272         parameter.
273         <~bp_location>: Add destructor.
274         <ops>: Remove.
275
276 2019-02-14  Thomas Schwinge  <thomas@codesourcery.com>
277             Pedro Alves  <palves@redhat.com>
278
279         * remote.c (remote_target::remote_parse_stop_reply): Avoid using
280         'PATH_MAX'.
281
282 2019-02-14  David Michael  <fedora.dm0@gmail.com>
283             Samuel Thibault  <samuel.thibault@gnu.org>
284             Thomas Schwinge  <thomas@codesourcery.com>
285
286         * gnu-nat.c (S_proc_getmsgport_reply, S_proc_task2proc_reply)
287         (S_proc_pid2proc_reply): Adjust to Hurd "proc" interface changes.
288
289 2019-02-14  Thomas Schwinge  <thomas@codesourcery.com>
290
291         * gnu-nat.c (gnu_write_inferior, parse_int_arg, _parse_bool_arg)
292         (check_empty): Use "const char *".
293
294         * gnu-nat.c (gnu_nat_target::detach): Instead of
295         'detach_inferior (pid)' call
296         'detach_inferior (find_inferior_pid (pid))'.
297
298         * configure.nat [gdb_host == i386gnu] (NATDEPFILES): Add
299         'nat/fork-inferior.o'.
300         * gnu-nat.c: #include "nat/fork-inferior.h".
301
302         * gnu-nat.c (gnu_nat_target::detach): Instead of
303         'inf_child_maybe_unpush_target (ops)' call 'maybe_unpush_target'.
304         * gnu-nat.h: #include "inf-child.h".
305         * i386-gnu-nat.c (gnu_fetch_registers): Rename/move to
306         'i386_gnu_nat_target::fetch_registers'.
307         (gnu_store_registers): Rename/move to
308         'i386_gnu_nat_target::store_registers'.
309
310         * config/i386/nm-i386gnu.h: Don't "#include" any files.
311         * gnu-nat.h (mach_thread_info): New function.
312         * gnu-nat.c (thread_takeover_sc_cmd): Use it.
313
314         * config/i386/nm-i386gnu.h (gnu_target_pid_to_str): Remove.
315
316 2019-02-14  Frederic Konrad  <konrad@adacore.com>
317
318         * riscv-rdep.c (riscv_type_alignment): Handle TYPE_CODE_RANGE.
319
320 2019-02-14  Joel Brobecker  <brobecker@adacore.com>
321
322         * windows-nat.c (windows_add_thread): Add new parameter
323         "main_thread_p" with default value set to false.  Update
324         function documentation as well as all callers.
325         (windows_delete_thread): Likewise.
326         (fake_create_process): Update call to windows_add_thread.
327         (get_windows_debug_event) <CREATE_THREAD_DEBUG_EVENT>
328         <CREATE_PROCESS_DEBUG_EVENT>: Likewise.
329         <EXIT_THREAD_DEBUG_EVENT, EXIT_PROCESS_DEBUG_EVENT>: Update
330         call to windows_delete_thread.
331
332 2019-02-13  Simon Marchi  <simon.marchi@ericsson.com>
333
334         * MAINTAINERS: Add Andrew Burgess as global maintainer.
335
336 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
337
338         * symfile.c (find_separate_debug_file): Use canonical path of
339         sysroot with child_path instead of gdb_sysroot if it is valid.
340
341 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
342
343         * symfile.c (find_separate_debug_file): Use child_path to
344         determine if an object file is under a sysroot.
345
346 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
347
348         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
349         unittests/child-path-selftests.c.
350         * common/pathstuff.c (child_path): New function.
351         * common/pathstuff.h (child_path): New prototype.
352         * unittests/child-path-selftests.c: New file.
353
354 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
355
356         * symfile.c (find_separate_debug_file): Look for separate debug
357         files in debug directories under the sysroot.
358
359 2019-02-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
360
361         * symtab.h (struct minimal_symbol data_p): New const method.
362         (struct minimal_symbol text_p): Likewise.
363         * symtab.c (output_source_filename): Use file name style
364         to print file name.
365         (print_symbol_info): Likewise.
366         (print_msymbol_info): Use address style to print addresses.
367         Use function name style to print executable text symbols.
368         (expand_symtab_containing_pc): Use data_p.
369         (find_pc_sect_compunit_symtab): Likewise.
370
371 2019-02-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
372
373         * breakpoint.c (describe_other_breakpoints): Use address style
374         to print addresses.
375         (say_where): Likewise.
376
377 2019-02-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
378
379         * ada-typeprint.c (print_func_type): Print function name
380         style to print function name.
381         * c-typeprint.c (c_print_type_1): Likewise.
382
383 2019-02-11  Alan Hayward  <alan.hayward@arm.com>
384
385         * aarch64-linux-tdep.c (aarch64_linux_get_syscall_number): Check
386         for execve.
387
388 2019-02-10  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
389
390         * c-exp.y (direct_abs_decl): Use emplace_back to record the
391         type_stack.
392
393 2019-02-10  Joel Brobecker  <brobecker@adacore.com>
394
395         * ada-varobj.c (ada_value_is_changeable_p): Add handling of
396         TYPE_CODE_REF types.
397
398 2019-02-08  Jim Wilson  <jimw@sifive.com>
399
400         * riscv-linux-tdep.c (riscv_linux_fregmap): New.
401         (riscv_linux_fregset): New.
402         (riscv_linux_iterate_over_regset_sections): Call cb for .reg2 section.
403
404 2019-02-07  Tom Tromey  <tom@tromey.com>
405
406         * thread.c (thread_cancel_execution_command): Update.
407         * thread-fsm.h (struct thread_fsm): Add constructor, destructor,
408         methods.
409         (struct thread_fsm_ops): Remove.
410         (thread_fsm_ctor, thread_fsm_delete, thread_fsm_clean_up)
411         (thread_fsm_should_stop, thread_fsm_return_value)
412         (thread_fsm_set_finished, thread_fsm_finished_p)
413         (thread_fsm_async_reply_reason, thread_fsm_should_notify_stop):
414         Don't declare.
415         * mi/mi-interp.c (mi_on_normal_stop_1): Update.
416         * infrun.c (clear_proceed_status_thread)
417         (clean_up_just_stopped_threads_fsms, fetch_inferior_event)
418         (print_stop_event): Update.
419         * infcmd.c (struct step_command_fsm): Inherit from thread_fsm.
420         Add constructor.
421         (step_command_fsm_ops): Remove.
422         (new_step_command_fsm): Remove.
423         (step_1): Update.
424         (step_command_fsm::should_stop): Rename from
425         step_command_fsm_should_stop.
426         (step_command_fsm::clean_up): Rename from
427         step_command_fsm_clean_up.
428         (step_command_fsm::do_async_reply_reason): Rename from
429         step_command_fsm_async_reply_reason.
430         (struct until_next_fsm): Inherit from thread_fsm.  Add
431         constructor.
432         (until_next_fsm_ops): Remove.
433         (new_until_next_fsm): Remove.
434         (until_next_fsm::should_stop): Rename from
435         until_next_fsm_should_stop.
436         (until_next_fsm::clean_up): Rename from until_next_fsm_clean_up.
437         (until_next_fsm::do_async_reply_reason): Rename from
438         until_next_fsm_async_reply_reason.
439         (struct finish_command_fsm): Inherit from thread_fsm.  Add
440         constructor.  Change type of breakpoint.
441         (finish_command_fsm_ops): Remove.
442         (new_finish_command_fsm): Remove.
443         (finish_command_fsm::should_stop): Rename from
444         finish_command_fsm_should_stop.
445         (finish_command_fsm::clean_up): Rename from
446         finish_command_fsm_clean_up.
447         (finish_command_fsm::return_value): Rename from
448         finish_command_fsm_return_value.
449         (finish_command_fsm::do_async_reply_reason): Rename from
450         finish_command_fsm_async_reply_reason.
451         (finish_command): Update.
452         * infcall.c (struct call_thread_fsm): Inherit from thread_fsm.
453         Add constructor.
454         (call_thread_fsm_ops): Remove.
455         (call_thread_fsm::call_thread_fsm): Rename from
456         new_call_thread_fsm.
457         (call_thread_fsm::should_stop): Rename from
458         call_thread_fsm_should_stop.
459         (call_thread_fsm::should_notify_stop): Rename from
460         call_thread_fsm_should_notify_stop.
461         (run_inferior_call, call_function_by_hand_dummy): Update.
462         * cli/cli-interp.c (should_print_stop_to_console): Update.
463         * breakpoint.c (struct until_break_fsm): Inherit from thread_fsm.
464         Add constructor.  Change type of location_breakpoint,
465         caller_breakpoint.
466         (until_break_fsm_ops): Remove.
467         (new_until_break_fsm): Remove.
468         (until_break_fsm::should_stop): Rename from
469         until_break_fsm_should_stop.
470         (until_break_fsm::clean_up): Rename from
471         until_break_fsm_clean_up.
472         (until_break_fsm::do_async_reply_reason): Rename from
473         until_break_fsm_async_reply_reason.
474         (until_break_command): Update.
475         * thread-fsm.c: Remove.
476         * Makefile.in (COMMON_SFILES): Remove thread-fsm.c.
477
478 2019-02-07  Tom Tromey  <tom@tromey.com>
479
480         * yy-remap.h: Add include guard.
481         * xtensa-tdep.h: Add include guard.
482         * xcoffread.h: Rename include guard.
483         * varobj-iter.h: Add include guard.
484         * tui/tui.h: Rename include guard.
485         * tui/tui-winsource.h: Rename include guard.
486         * tui/tui-wingeneral.h: Rename include guard.
487         * tui/tui-windata.h: Rename include guard.
488         * tui/tui-win.h: Rename include guard.
489         * tui/tui-stack.h: Rename include guard.
490         * tui/tui-source.h: Rename include guard.
491         * tui/tui-regs.h: Rename include guard.
492         * tui/tui-out.h: Rename include guard.
493         * tui/tui-layout.h: Rename include guard.
494         * tui/tui-io.h: Rename include guard.
495         * tui/tui-hooks.h: Rename include guard.
496         * tui/tui-file.h: Rename include guard.
497         * tui/tui-disasm.h: Rename include guard.
498         * tui/tui-data.h: Rename include guard.
499         * tui/tui-command.h: Rename include guard.
500         * tic6x-tdep.h: Add include guard.
501         * target/waitstatus.h: Rename include guard.
502         * target/wait.h: Rename include guard.
503         * target/target.h: Rename include guard.
504         * target/resume.h: Rename include guard.
505         * target-float.h: Rename include guard.
506         * stabsread.h: Add include guard.
507         * rs6000-tdep.h: Add include guard.
508         * riscv-fbsd-tdep.h: Add include guard.
509         * regformats/regdef.h: Rename include guard.
510         * record.h: Rename include guard.
511         * python/python.h: Rename include guard.
512         * python/python-internal.h: Rename include guard.
513         * python/py-stopevent.h: Rename include guard.
514         * python/py-ref.h: Rename include guard.
515         * python/py-record.h: Rename include guard.
516         * python/py-record-full.h: Rename include guard.
517         * python/py-record-btrace.h: Rename include guard.
518         * python/py-instruction.h: Rename include guard.
519         * python/py-events.h: Rename include guard.
520         * python/py-event.h: Rename include guard.
521         * procfs.h: Add include guard.
522         * proc-utils.h: Add include guard.
523         * p-lang.h: Add include guard.
524         * or1k-tdep.h: Rename include guard.
525         * observable.h: Rename include guard.
526         * nto-tdep.h: Rename include guard.
527         * nat/x86-linux.h: Rename include guard.
528         * nat/x86-linux-dregs.h: Rename include guard.
529         * nat/x86-gcc-cpuid.h: Add include guard.
530         * nat/x86-dregs.h: Rename include guard.
531         * nat/x86-cpuid.h: Rename include guard.
532         * nat/ppc-linux.h: Rename include guard.
533         * nat/mips-linux-watch.h: Rename include guard.
534         * nat/linux-waitpid.h: Rename include guard.
535         * nat/linux-ptrace.h: Rename include guard.
536         * nat/linux-procfs.h: Rename include guard.
537         * nat/linux-osdata.h: Rename include guard.
538         * nat/linux-nat.h: Rename include guard.
539         * nat/linux-namespaces.h: Rename include guard.
540         * nat/linux-btrace.h: Rename include guard.
541         * nat/glibc_thread_db.h: Rename include guard.
542         * nat/gdb_thread_db.h: Rename include guard.
543         * nat/gdb_ptrace.h: Rename include guard.
544         * nat/fork-inferior.h: Rename include guard.
545         * nat/amd64-linux-siginfo.h: Rename include guard.
546         * nat/aarch64-sve-linux-sigcontext.h: Rename include guard.
547         * nat/aarch64-sve-linux-ptrace.h: Rename include guard.
548         * nat/aarch64-linux.h: Rename include guard.
549         * nat/aarch64-linux-hw-point.h: Rename include guard.
550         * mn10300-tdep.h: Add include guard.
551         * mips-linux-tdep.h: Add include guard.
552         * mi/mi-parse.h: Rename include guard.
553         * mi/mi-out.h: Rename include guard.
554         * mi/mi-main.h: Rename include guard.
555         * mi/mi-interp.h: Rename include guard.
556         * mi/mi-getopt.h: Rename include guard.
557         * mi/mi-console.h: Rename include guard.
558         * mi/mi-common.h: Rename include guard.
559         * mi/mi-cmds.h: Rename include guard.
560         * mi/mi-cmd-break.h: Rename include guard.
561         * m2-lang.h: Add include guard.
562         * location.h: Rename include guard.
563         * linux-record.h: Rename include guard.
564         * linux-nat.h: Add include guard.
565         * linux-fork.h: Add include guard.
566         * i386-darwin-tdep.h: Rename include guard.
567         * hppa-linux-offsets.h: Add include guard.
568         * guile/guile.h: Rename include guard.
569         * guile/guile-internal.h: Rename include guard.
570         * gnu-nat.h: Rename include guard.
571         * gdb-stabs.h: Rename include guard.
572         * frv-tdep.h: Add include guard.
573         * f-lang.h: Add include guard.
574         * event-loop.h: Add include guard.
575         * darwin-nat.h: Rename include guard.
576         * cp-abi.h: Rename include guard.
577         * config/sparc/nm-sol2.h: Rename include guard.
578         * config/nm-nto.h: Rename include guard.
579         * config/nm-linux.h: Add include guard.
580         * config/i386/nm-i386gnu.h: Rename include guard.
581         * config/djgpp/nl_types.h: Rename include guard.
582         * config/djgpp/langinfo.h: Rename include guard.
583         * compile/gcc-cp-plugin.h: Add include guard.
584         * compile/gcc-c-plugin.h: Add include guard.
585         * compile/compile.h: Rename include guard.
586         * compile/compile-object-run.h: Rename include guard.
587         * compile/compile-object-load.h: Rename include guard.
588         * compile/compile-internal.h: Rename include guard.
589         * compile/compile-cplus.h: Rename include guard.
590         * compile/compile-c.h: Rename include guard.
591         * common/xml-utils.h: Rename include guard.
592         * common/x86-xstate.h: Rename include guard.
593         * common/version.h: Rename include guard.
594         * common/vec.h: Rename include guard.
595         * common/tdesc.h: Rename include guard.
596         * common/selftest.h: Rename include guard.
597         * common/scoped_restore.h: Rename include guard.
598         * common/scoped_mmap.h: Rename include guard.
599         * common/scoped_fd.h: Rename include guard.
600         * common/safe-iterator.h: Rename include guard.
601         * common/run-time-clock.h: Rename include guard.
602         * common/refcounted-object.h: Rename include guard.
603         * common/queue.h: Rename include guard.
604         * common/ptid.h: Rename include guard.
605         * common/print-utils.h: Rename include guard.
606         * common/preprocessor.h: Rename include guard.
607         * common/pathstuff.h: Rename include guard.
608         * common/observable.h: Rename include guard.
609         * common/netstuff.h: Rename include guard.
610         * common/job-control.h: Rename include guard.
611         * common/host-defs.h: Rename include guard.
612         * common/gdb_wait.h: Rename include guard.
613         * common/gdb_vecs.h: Rename include guard.
614         * common/gdb_unlinker.h: Rename include guard.
615         * common/gdb_unique_ptr.h: Rename include guard.
616         * common/gdb_tilde_expand.h: Rename include guard.
617         * common/gdb_sys_time.h: Rename include guard.
618         * common/gdb_string_view.h: Rename include guard.
619         * common/gdb_splay_tree.h: Rename include guard.
620         * common/gdb_setjmp.h: Rename include guard.
621         * common/gdb_ref_ptr.h: Rename include guard.
622         * common/gdb_optional.h: Rename include guard.
623         * common/gdb_locale.h: Rename include guard.
624         * common/gdb_assert.h: Rename include guard.
625         * common/filtered-iterator.h: Rename include guard.
626         * common/filestuff.h: Rename include guard.
627         * common/fileio.h: Rename include guard.
628         * common/environ.h: Rename include guard.
629         * common/common-utils.h: Rename include guard.
630         * common/common-types.h: Rename include guard.
631         * common/common-regcache.h: Rename include guard.
632         * common/common-inferior.h: Rename include guard.
633         * common/common-gdbthread.h: Rename include guard.
634         * common/common-exceptions.h: Rename include guard.
635         * common/common-defs.h: Rename include guard.
636         * common/common-debug.h: Rename include guard.
637         * common/cleanups.h: Rename include guard.
638         * common/buffer.h: Rename include guard.
639         * common/btrace-common.h: Rename include guard.
640         * common/break-common.h: Rename include guard.
641         * cli/cli-utils.h: Rename include guard.
642         * cli/cli-style.h: Rename include guard.
643         * cli/cli-setshow.h: Rename include guard.
644         * cli/cli-script.h: Rename include guard.
645         * cli/cli-interp.h: Rename include guard.
646         * cli/cli-decode.h: Rename include guard.
647         * cli/cli-cmds.h: Rename include guard.
648         * charset-list.h: Add include guard.
649         * buildsym-legacy.h: Rename include guard.
650         * bfin-tdep.h: Add include guard.
651         * ax.h: Rename include guard.
652         * arm-linux-tdep.h: Add include guard.
653         * arm-fbsd-tdep.h: Add include guard.
654         * arch/xtensa.h: Rename include guard.
655         * arch/tic6x.h: Add include guard.
656         * arch/i386.h: Add include guard.
657         * arch/arm.h: Rename include guard.
658         * arch/arm-linux.h: Rename include guard.
659         * arch/arm-get-next-pcs.h: Rename include guard.
660         * arch/amd64.h: Add include guard.
661         * arch/aarch64-insn.h: Rename include guard.
662         * arch-utils.h: Rename include guard.
663         * annotate.h: Add include guard.
664         * amd64-darwin-tdep.h: Rename include guard.
665         * aarch64-linux-tdep.h: Add include guard.
666         * aarch64-fbsd-tdep.h: Add include guard.
667         * aarch32-linux-nat.h: Add include guard.
668
669 2019-02-06  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
670
671         * macrotab.c (macro_define_internal): New function that
672         factorizes macro_define_object_internal and macro_define_function
673         code.
674         (macro_define_object_internal): Use macro_define_internal.
675         (macro_define_function): Likewise.
676
677 2019-02-06  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
678
679         * macrocmd.c (extract_identifier): Return
680         a gdb::unique_xmalloc_ptr<char> instead of a char *, and update
681         callers.
682
683 2019-02-06  John Baldwin  <jhb@FreeBSD.org>
684
685         * fbsd-nat.c (fbsd_fetch_cmdline): Join arguments with spaces.
686
687 2019-02-05  Tom Tromey  <tom@tromey.com>
688
689         * target.c (target_stack::unpush): Move assertion earlier.
690
691 2019-01-30  Tom Tromey  <tom@tromey.com>
692
693         PR python/23615:
694         * python/python.c (execute_gdb_command): Use gdbpy_allow_threads.
695         (gdbpy_parse_and_eval): Likewise.
696         * python/python-internal.h (gdbpy_allow_threads): New class.
697
698 2019-01-28  John Baldwin  <jhb@FreeBSD.org>
699
700         * aarch64-fbsd-tdep.c (aarch64_fbsd_gregmap)
701         (aarch64_fbsd_fpregmap): Move earlier.
702         (AARCH64_MCONTEXT_REG_SIZE, AARCH64_MCONTEXT_FPREG_SIZE): Delete.
703         (aarch64_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
704         instead of individual calls to trad_frame_set_reg_addr.
705         * arm-fbsd-tdep.c (arm_fbsd_gregmap, arm_fbsd_vfpregmap): Move
706         earlier.
707         (ARM_MCONTEXT_REG_SIZE, ARM_MCONTEXT_VFP_REG_SIZE): Delete.
708         (arm_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
709         instead of individual calls to trad_frame_set_reg_addr.
710
711 2019-01-28  Alan Hayward  <alan.hayward@arm.com>
712
713         * CONTRIBUTE: Replace contribution list with wiki link.
714
715 2019-01-25  Tom Tromey  <tom@tromey.com>
716
717         * Makefile.in (GDB_CFLAGS): Don't add -I for common.
718
719 2019-01-25  Tom Tromey  <tom@tromey.com>
720
721         * xtensa-linux-nat.c: Fix common/ includes.
722         * xml-support.h: Fix common/ includes.
723         * xml-support.c: Fix common/ includes.
724         * x86-linux-nat.c: Fix common/ includes.
725         * windows-nat.c: Fix common/ includes.
726         * varobj.h: Fix common/ includes.
727         * varobj.c: Fix common/ includes.
728         * value.c: Fix common/ includes.
729         * valops.c: Fix common/ includes.
730         * utils.c: Fix common/ includes.
731         * unittests/xml-utils-selftests.c: Fix common/ includes.
732         * unittests/utils-selftests.c: Fix common/ includes.
733         * unittests/unpack-selftests.c: Fix common/ includes.
734         * unittests/tracepoint-selftests.c: Fix common/ includes.
735         * unittests/style-selftests.c: Fix common/ includes.
736         * unittests/string_view-selftests.c: Fix common/ includes.
737         * unittests/scoped_restore-selftests.c: Fix common/ includes.
738         * unittests/scoped_mmap-selftests.c: Fix common/ includes.
739         * unittests/scoped_fd-selftests.c: Fix common/ includes.
740         * unittests/rsp-low-selftests.c: Fix common/ includes.
741         * unittests/parse-connection-spec-selftests.c: Fix common/
742         includes.
743         * unittests/optional-selftests.c: Fix common/ includes.
744         * unittests/offset-type-selftests.c: Fix common/ includes.
745         * unittests/observable-selftests.c: Fix common/ includes.
746         * unittests/mkdir-recursive-selftests.c: Fix common/ includes.
747         * unittests/memrange-selftests.c: Fix common/ includes.
748         * unittests/memory-map-selftests.c: Fix common/ includes.
749         * unittests/lookup_name_info-selftests.c: Fix common/ includes.
750         * unittests/function-view-selftests.c: Fix common/ includes.
751         * unittests/environ-selftests.c: Fix common/ includes.
752         * unittests/copy_bitwise-selftests.c: Fix common/ includes.
753         * unittests/common-utils-selftests.c: Fix common/ includes.
754         * unittests/cli-utils-selftests.c: Fix common/ includes.
755         * unittests/array-view-selftests.c: Fix common/ includes.
756         * ui-file.c: Fix common/ includes.
757         * tui/tui-io.c: Fix common/ includes.
758         * tracepoint.h: Fix common/ includes.
759         * tracepoint.c: Fix common/ includes.
760         * tracefile-tfile.c: Fix common/ includes.
761         * top.h: Fix common/ includes.
762         * top.c: Fix common/ includes.
763         * thread.c: Fix common/ includes.
764         * target/waitstatus.h: Fix common/ includes.
765         * target/waitstatus.c: Fix common/ includes.
766         * target.h: Fix common/ includes.
767         * target.c: Fix common/ includes.
768         * target-memory.c: Fix common/ includes.
769         * target-descriptions.c: Fix common/ includes.
770         * symtab.h: Fix common/ includes.
771         * symfile.c: Fix common/ includes.
772         * stap-probe.c: Fix common/ includes.
773         * spu-linux-nat.c: Fix common/ includes.
774         * sparc-nat.c: Fix common/ includes.
775         * source.c: Fix common/ includes.
776         * solib.c: Fix common/ includes.
777         * solib-target.c: Fix common/ includes.
778         * ser-unix.c: Fix common/ includes.
779         * ser-tcp.c: Fix common/ includes.
780         * ser-pipe.c: Fix common/ includes.
781         * ser-base.c: Fix common/ includes.
782         * selftest-arch.c: Fix common/ includes.
783         * s12z-tdep.c: Fix common/ includes.
784         * rust-exp.y: Fix common/ includes.
785         * rs6000-aix-tdep.c: Fix common/ includes.
786         * riscv-tdep.c: Fix common/ includes.
787         * remote.c: Fix common/ includes.
788         * remote-notif.h: Fix common/ includes.
789         * remote-fileio.h: Fix common/ includes.
790         * remote-fileio.c: Fix common/ includes.
791         * regcache.h: Fix common/ includes.
792         * regcache.c: Fix common/ includes.
793         * record-btrace.c: Fix common/ includes.
794         * python/python.c: Fix common/ includes.
795         * python/py-type.c: Fix common/ includes.
796         * python/py-inferior.c: Fix common/ includes.
797         * progspace.h: Fix common/ includes.
798         * producer.c: Fix common/ includes.
799         * procfs.c: Fix common/ includes.
800         * proc-api.c: Fix common/ includes.
801         * printcmd.c: Fix common/ includes.
802         * ppc-linux-nat.c: Fix common/ includes.
803         * parser-defs.h: Fix common/ includes.
804         * osdata.c: Fix common/ includes.
805         * obsd-nat.c: Fix common/ includes.
806         * nat/x86-linux.c: Fix common/ includes.
807         * nat/x86-linux-dregs.c: Fix common/ includes.
808         * nat/x86-dregs.h: Fix common/ includes.
809         * nat/x86-dregs.c: Fix common/ includes.
810         * nat/ppc-linux.c: Fix common/ includes.
811         * nat/mips-linux-watch.h: Fix common/ includes.
812         * nat/mips-linux-watch.c: Fix common/ includes.
813         * nat/linux-waitpid.c: Fix common/ includes.
814         * nat/linux-ptrace.h: Fix common/ includes.
815         * nat/linux-ptrace.c: Fix common/ includes.
816         * nat/linux-procfs.c: Fix common/ includes.
817         * nat/linux-personality.c: Fix common/ includes.
818         * nat/linux-osdata.c: Fix common/ includes.
819         * nat/linux-namespaces.c: Fix common/ includes.
820         * nat/linux-btrace.h: Fix common/ includes.
821         * nat/linux-btrace.c: Fix common/ includes.
822         * nat/fork-inferior.c: Fix common/ includes.
823         * nat/amd64-linux-siginfo.c: Fix common/ includes.
824         * nat/aarch64-sve-linux-ptrace.c: Fix common/ includes.
825         * nat/aarch64-linux.c: Fix common/ includes.
826         * nat/aarch64-linux-hw-point.h: Fix common/ includes.
827         * nat/aarch64-linux-hw-point.c: Fix common/ includes.
828         * namespace.h: Fix common/ includes.
829         * mips-linux-tdep.c: Fix common/ includes.
830         * minsyms.c: Fix common/ includes.
831         * mi/mi-parse.h: Fix common/ includes.
832         * mi/mi-main.c: Fix common/ includes.
833         * mi/mi-cmd-env.c: Fix common/ includes.
834         * memrange.h: Fix common/ includes.
835         * memattr.c: Fix common/ includes.
836         * maint.h: Fix common/ includes.
837         * maint.c: Fix common/ includes.
838         * main.c: Fix common/ includes.
839         * machoread.c: Fix common/ includes.
840         * location.c: Fix common/ includes.
841         * linux-thread-db.c: Fix common/ includes.
842         * linux-nat.c: Fix common/ includes.
843         * linux-fork.c: Fix common/ includes.
844         * inline-frame.c: Fix common/ includes.
845         * infrun.c: Fix common/ includes.
846         * inflow.c: Fix common/ includes.
847         * inferior.h: Fix common/ includes.
848         * inferior.c: Fix common/ includes.
849         * infcmd.c: Fix common/ includes.
850         * inf-ptrace.c: Fix common/ includes.
851         * inf-child.c: Fix common/ includes.
852         * ia64-linux-nat.c: Fix common/ includes.
853         * i387-tdep.c: Fix common/ includes.
854         * i386-tdep.c: Fix common/ includes.
855         * i386-linux-tdep.c: Fix common/ includes.
856         * i386-linux-nat.c: Fix common/ includes.
857         * i386-go32-tdep.c: Fix common/ includes.
858         * i386-fbsd-tdep.c: Fix common/ includes.
859         * i386-fbsd-nat.c: Fix common/ includes.
860         * guile/scm-type.c: Fix common/ includes.
861         * guile/guile.c: Fix common/ includes.
862         * go32-nat.c: Fix common/ includes.
863         * gnu-nat.c: Fix common/ includes.
864         * gdbthread.h: Fix common/ includes.
865         * gdbarch-selftests.c: Fix common/ includes.
866         * gdb_usleep.c: Fix common/ includes.
867         * gdb_select.h: Fix common/ includes.
868         * gdb_bfd.c: Fix common/ includes.
869         * gcore.c: Fix common/ includes.
870         * fork-child.c: Fix common/ includes.
871         * findvar.c: Fix common/ includes.
872         * fbsd-nat.c: Fix common/ includes.
873         * event-top.c: Fix common/ includes.
874         * event-loop.c: Fix common/ includes.
875         * dwarf2read.c: Fix common/ includes.
876         * dwarf2loc.c: Fix common/ includes.
877         * dwarf2-frame.c: Fix common/ includes.
878         * dwarf-index-cache.c: Fix common/ includes.
879         * dtrace-probe.c: Fix common/ includes.
880         * disasm-selftests.c: Fix common/ includes.
881         * defs.h: Fix common/ includes.
882         * csky-tdep.c: Fix common/ includes.
883         * cp-valprint.c: Fix common/ includes.
884         * cp-support.h: Fix common/ includes.
885         * cp-support.c: Fix common/ includes.
886         * corelow.c: Fix common/ includes.
887         * completer.h: Fix common/ includes.
888         * completer.c: Fix common/ includes.
889         * compile/compile.c: Fix common/ includes.
890         * compile/compile-loc2c.c: Fix common/ includes.
891         * compile/compile-cplus-types.c: Fix common/ includes.
892         * compile/compile-cplus-symbols.c: Fix common/ includes.
893         * command.h: Fix common/ includes.
894         * cli/cli-dump.c: Fix common/ includes.
895         * cli/cli-cmds.c: Fix common/ includes.
896         * charset.c: Fix common/ includes.
897         * build-id.c: Fix common/ includes.
898         * btrace.h: Fix common/ includes.
899         * btrace.c: Fix common/ includes.
900         * breakpoint.h: Fix common/ includes.
901         * breakpoint.c: Fix common/ includes.
902         * ax.h: 
903         (enum agent_op): Fix common/ includes.
904         * ax-general.c (struct aop_map): Fix common/ includes.
905         * ax-gdb.c: Fix common/ includes.
906         * auxv.c: Fix common/ includes.
907         * auto-load.c: Fix common/ includes.
908         * arm-tdep.c: Fix common/ includes.
909         * arch/riscv.c: Fix common/ includes.
910         * arch/ppc-linux-common.c: Fix common/ includes.
911         * arch/i386.c: Fix common/ includes.
912         * arch/arm.c: Fix common/ includes.
913         * arch/arm-linux.c: Fix common/ includes.
914         * arch/arm-get-next-pcs.c: Fix common/ includes.
915         * arch/amd64.c: Fix common/ includes.
916         * arch/aarch64.c: Fix common/ includes.
917         * arch/aarch64-insn.c: Fix common/ includes.
918         * arch-utils.c: Fix common/ includes.
919         * amd64-windows-tdep.c: Fix common/ includes.
920         * amd64-tdep.c: Fix common/ includes.
921         * amd64-sol2-tdep.c: Fix common/ includes.
922         * amd64-obsd-tdep.c: Fix common/ includes.
923         * amd64-nbsd-tdep.c: Fix common/ includes.
924         * amd64-linux-tdep.c: Fix common/ includes.
925         * amd64-linux-nat.c: Fix common/ includes.
926         * amd64-fbsd-tdep.c: Fix common/ includes.
927         * amd64-fbsd-nat.c: Fix common/ includes.
928         * amd64-dicos-tdep.c: Fix common/ includes.
929         * amd64-darwin-tdep.c: Fix common/ includes.
930         * agent.c: Fix common/ includes.
931         * ada-lang.h: Fix common/ includes.
932         * ada-lang.c: Fix common/ includes.
933         * aarch64-tdep.c: Fix common/ includes.
934
935 2019-01-25  Tom Tromey  <tom@tromey.com>
936
937         * common/create-version.sh: Use common/version.h.
938
939 2019-01-24  Pedro Alves  <palves@redhat.com>
940
941         * infrun.c (signal_stop, signal_print, signal_program)
942         (signal_catch, signal_pass): Now arrays instead of pointers.
943         (update_signals_program_target, do_target_resume)
944         (signal_catch_update, handle_command, _initialize_infrun): Adjust.
945         * linux-nat.c (linux_nat_target::pass_signals)
946         (linux_nat_target::create_inferior, linux_nat_target::attach):
947         Adjust.
948         * linux-nat.h (linux_nat_target::pass_signals): Adjust.
949         * nto-procfs.c (nto_procfs_target::pass_signals): Adjust.
950         * procfs.c (procfs_target::pass_signals): Adjust.
951         * record-full.c (record_full_target::resume): Adjust.
952         * remote.c (remote_target::pass_signals)
953         (remote_target::program_signals): Adjust.
954         * target-debug.h (target_debug_print_signals): Now takes a
955         gdb::array_view as parameter.  Adjust.
956         * target.h (target_ops) <pass_signals, program_signals>: Replace
957         pointer and length parameters with gdb::array_view.
958         (target_pass_signals, target_program_signals): Likewise.
959         * target-delegates.c: Regenerate.
960
961 2019-01-24  Pedro Alves  <palves@redhat.com>
962
963         * common/forward-scope-exit.h
964         (forward_scope_exit::forward_scope_exit): Pass arguments to
965         m_bind_function directly, instead of creating a std::bind and
966         copying that.
967
968 2019-01-24  Alan Hayward  <alan.hayward@arm.com>
969
970         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
971         for static members.
972         (pass_in_v_vfp_candidate): Likewise.
973
974 2019-01-23  Tom Tromey  <tom@tromey.com>
975             Pedro Alves  <palves@redhat.com>
976
977         * regcache.c (class regcache_invalidator): Remove.
978         (regcache::raw_write): Use make_scope_exit.
979
980 2019-01-23  Tom Tromey  <tom@tromey.com>
981
982         * ui-out.h (class ui_out_emit_type): Update comment.
983
984 2019-01-23  Tom Tromey  <tom@tromey.com>
985
986         * infrun.c (fetch_inferior_event): Update comment.
987
988 2019-01-23  Tom Tromey  <tom@tromey.com>
989             Pedro Alves  <palves@redhat.com>
990
991         * infrun.c (reinstall_readline_callback_handler_cleanup): Remove
992         parameter.
993         (fetch_inferior_event): Use SCOPE_EXIT.
994
995
996 2019-01-23  Tom Tromey  <tom@tromey.com>
997             Pedro Alves  <palves@redhat.com>
998
999         * infrun.c (disable_thread_events): Delete.
1000         (stop_all_threads): Use SCOPE_EXIT.
1001
1002 2019-01-23  Tom Tromey  <tom@tromey.com>
1003             Pedro Alves  <palves@redhat.com>
1004
1005         * symfile.c: Include forward-scope-exit.h.
1006         (clear_symtab_users_cleanup): Replace forward declaration with
1007         a FORWARD_SCOPE_EXIT.
1008         (syms_from_objfile_1): Use the forward_scope_exit and
1009         gdb::optional instead of cleanup_function.
1010         (reread_symbols): Use the forward_scope_exit instead of
1011         cleanup_function.
1012         (clear_symtab_users_cleanup): Remove function.
1013
1014 2019-01-23  Tom Tromey  <tom@tromey.com>
1015             Pedro Alves  <palves@redhat.com>
1016
1017         * linux-nat.c: Include scope-exit.h.
1018         (cleanup_target_stop): Remove.
1019         (linux_nat_target::static_tracepoint_markers_by_strid): Use
1020         SCOPE_EXIT.
1021
1022 2019-01-23  Tom Tromey  <tom@tromey.com>
1023             Pedro Alves  <palves@redhat.com>
1024
1025         * infcall.c (cleanup_delete_std_terminate_breakpoint): Remove.
1026         (call_function_by_hand_dummy): Use SCOPE_EXIT.
1027
1028 2019-01-23  Tom Tromey  <tom@tromey.com>
1029             Andrew Burgess  <andrew.burgess@embecosm.com>
1030             Pedro Alves  <palves@redhat.com>
1031
1032         * infrun.c (fetch_inferior_event): Use scope_exit.
1033         * utils.h (make_bpstat_clear_actions_cleanup): Don't declare.
1034         * top.c (execute_command): Use scope_exit.
1035         * breakpoint.c (bpstat_do_actions): Use scope_exit.
1036         * utils.c (do_bpstat_clear_actions_cleanup)
1037         (make_bpstat_clear_actions_cleanup): Remove.
1038
1039 2019-01-23  Tom Tromey  <tom@tromey.com>
1040             Pedro Alves  <palves@redhat.com>
1041
1042         * infrun.c: Include "common/scope-exit.h"
1043         (delete_just_stopped_threads_infrun_breakpoints_cleanup): Remove.
1044         (wait_for_inferior): Use SCOPE_EXIT.
1045         (fetch_inferior_event): Use scope_exit.
1046
1047 2019-01-23  Tom Tromey  <tom@tromey.com>
1048             Pedro Alves  <palves@redhat.com>
1049
1050         * breakpoint.c (create_breakpoint): Remove cleanup.
1051
1052 2019-01-23  Tom Tromey  <tom@tromey.com>
1053             Andrew Burgess  <andrew.burgess@embecosm.com>
1054             Pedro Alves  <palves@redhat.com>
1055
1056 2019-01-23  Pedro Alves  <palves@redhat.com>
1057
1058         * gdbarch-selftests.c (struct on_exit): Use SCOPE_EXIT.
1059
1060 2019-01-23  Pedro Alves  <palves@redhat.com>
1061             Andrew Burgess  <andrew.burgess@embecosm.com>
1062
1063         * gdbthread.h: Include "common/forward-scope-exit.h".
1064         (scoped_finish_thread_state): Redefine custom class in terms of
1065         forward_scope_exit.
1066
1067 2019-01-23  Pedro Alves  <palves@redhat.com>
1068             Andrew Burgess  <andrew.burgess@embecosm.com>
1069
1070         * common/forward-scope-exit.h: New file.
1071
1072 2019-01-23  Pedro Alves  <palves@redhat.com>
1073             Andrew Burgess  <andrew.burgess@embecosm.com>
1074             Tom Tromey  <tom@tromey.com>
1075
1076         * common/scope-exit.h: New file.
1077
1078 2019-01-23  Pedro Alves  <palves@redhat.com>
1079
1080         * common/preprocessor.h (ESC): Rename to ...
1081         (ESC_PARENS): ... this.
1082         * common/valid-expr.h (CHECK_VALID_EXPR_1, CHECK_VALID_EXPR_2)
1083         (CHECK_VALID_EXPR_3, CHECK_VALID_EXPR_4): Adjust.
1084
1085 2019-01-23  Tom Tromey  <tom@tromey.com>
1086
1087         * language.h (class scoped_switch_to_sym_language_if_auto):
1088         Initialize m_lang in both cases.
1089
1090 2019-01-23  Alan Hayward  <alan.hayward@arm.com>
1091
1092         * nat/aarch64-linux.c (aarch64_linux_new_thread): Replace XNEW
1093         with XCNEW.
1094
1095 2019-01-22  Tom Tromey  <tom@tromey.com>
1096
1097         * corelow.c: Do not include sys/file.h.
1098
1099 2019-01-22  Tom Tromey  <tom@tromey.com>
1100
1101         * tui/tui-wingeneral.h: Include gdb_curses.h.
1102
1103 2019-01-22  Tom Tromey  <tom@tromey.com>
1104
1105         * source-cache.h (class source_cache) <get_source_lines,
1106         get_plain_source_lines, extract_lines>: Rename "lines" parameter.
1107
1108 2019-01-22  Tom Tromey  <tom@tromey.com>
1109
1110         * remote-fileio.h (struct remote_target): Declare.
1111
1112 2019-01-22  Tom Tromey  <tom@tromey.com>
1113
1114         * python/py-arch.c: Do not include py-ref.h.
1115         * python/py-bpevent.c: Do not include py-ref.h.
1116         * python/py-cmd.c: Do not include py-ref.h.
1117         * python/py-continueevent.c: Do not include py-ref.h.
1118         * python/py-event.h: Do not include py-ref.h.
1119         * python/py-evtregistry.c: Do not include py-ref.h.
1120         * python/py-finishbreakpoint.c: Do not include py-ref.h.
1121         * python/py-frame.c: Do not include py-ref.h.
1122         * python/py-framefilter.c: Do not include py-ref.h.
1123         * python/py-function.c: Do not include py-ref.h.
1124         * python/py-infevents.c: Do not include py-ref.h.
1125         * python/py-linetable.c: Do not include py-ref.h.
1126         * python/py-objfile.c: Do not include py-ref.h.
1127         * python/py-param.c: Do not include py-ref.h.
1128         * python/py-prettyprint.c: Do not include py-ref.h.
1129         * python/py-progspace.c: Do not include py-ref.h.
1130         * python/py-symbol.c: Do not include py-ref.h.
1131         * python/py-symtab.c: Do not include py-ref.h.
1132         * python/py-type.c: Do not include py-ref.h.
1133         * python/py-unwind.c: Do not include py-ref.h.
1134         * python/py-utils.c: Do not include py-ref.h.
1135         * python/py-value.c: Do not include py-ref.h.
1136         * python/py-varobj.c: Do not include py-ref.h.
1137         * python/py-xmethods.c: Do not include py-ref.h.
1138         * python/python.c: Do not include py-ref.h.
1139         * varobj.c: Do not include py-ref.h.
1140
1141 2019-01-22  Tom Tromey  <tom@tromey.com>
1142
1143         * objfiles.h (struct objfile_per_bfd_storage): Use "struct"
1144         keyword for bcache.
1145
1146 2019-01-22  Tom Tromey  <tom@tromey.com>
1147
1148         * compile/compile-cplus-types.c: Remove a comment by #include.
1149
1150 2019-01-22  Tom Tromey  <tom@tromey.com>
1151
1152         * compile/gcc-c-plugin.h: Include compile-internal.h.
1153
1154 2019-01-22  Tom Tromey  <tom@tromey.com>
1155
1156         * stabsread.c (EXTERN): Do not define.
1157         (symnum, next_symbol_text_func, processing_gcc_compilation)
1158         (within_function, global_sym_chain, global_stabs)
1159         (previous_stab_code, this_object_header_files)
1160         (n_this_object_header_files)
1161         (n_allocated_this_object_header_files): Define.
1162         * stabsread.h (EXTERN): Never define.  Use "extern".
1163
1164 2019-01-22  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1165
1166         * event-top.c (handle_line_of_input): use unique_xmalloc_ptr for
1167         history_value.
1168
1169 2019-01-21  Tom Tromey  <tom@tromey.com>
1170
1171         * ui-out.c: Fix includes.
1172         * tui/tui-source.c: Fix includes.
1173         * target.c: Fix includes.
1174         * remote.c: Fix includes.
1175         * regcache.c: Fix includes.
1176         * python/py-block.c: Fix includes.
1177         * printcmd.c: Fix includes.
1178         * or1k-tdep.c: Fix includes.
1179         * mi/mi-main.c: Fix includes.
1180         * m32r-tdep.c: Fix includes.
1181         * csky-tdep.c: Fix includes.
1182         * compile/compile-cplus-types.c: Fix includes.
1183         * cli/cli-interp.c: Fix includes.
1184
1185 2019-01-21  Alan Hayward  <alan.hayward@arm.com>
1186
1187         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
1188         for padding.
1189
1190 2019-01-16  Tom Tromey  <tom@tromey.com>
1191
1192         * objfiles.h (struct minimal_symbol_iterator): Rename.  Move
1193         earlier.
1194         (struct objfile) <msymbols_range>: Move from top level.
1195         <msymbols>: New method.
1196         (class objfile_msymbols): Remove.
1197         * symtab.c (default_collect_symbol_completion_matches_break_on):
1198         Update.
1199         * symmisc.c (dump_msymbols): Update.
1200         * stabsread.c (scan_file_globals): Update.
1201         * objc-lang.c (info_selectors_command, info_classes_command)
1202         (find_methods): Update.
1203         * minsyms.c (find_solib_trampoline_target): Update.
1204         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Update.
1205         * coffread.c (coff_symfile_read): Update.
1206         * ada-lang.c (ada_lookup_simple_minsym)
1207         (ada_collect_symbol_completion_matches): Update.
1208
1209 2019-01-16  Tom Tromey  <tom@tromey.com>
1210
1211         * objfiles.h (class objfile_msymbols) <iterator>: Change argument
1212         type.  Remove no-argument constructor.
1213         <iterator::operator++>: Simplify.
1214         <begin>: Update.
1215         <end>: Use minimal_symbol_count.
1216
1217 2019-01-16  Tom Tromey  <tom@tromey.com>
1218
1219         * objfiles.h (struct objfile) <psymtabs>: New method.
1220         (class objfile_psymtabs): Remove.
1221         * psymtab.h (class psymtab_storage) <partial_symtab_range>: New
1222         typedef.
1223         <range>: New method.
1224         (require_partial_symbols): Change return type.
1225         * psymtab.c (require_partial_symbols)
1226         (psym_expand_symtabs_matching): Update.
1227         * mdebugread.c (parse_partial_symbols): Update.
1228         * dbxread.c (dbx_end_psymtab): Update.
1229
1230 2019-01-15  Tom Tromey  <tom@tromey.com>
1231
1232         * symtab.c (lookup_objfile_from_block)
1233         (lookup_symbol_in_objfile_symtabs)
1234         (basic_lookup_transparent_type_1, find_pc_sect_compunit_symtab)
1235         (find_line_symtab, info_sources_command)
1236         (default_collect_symbol_completion_matches_break_on)
1237         (make_source_files_completion_list): Update.
1238         * symmisc.c (print_objfile_statistics, dump_objfile)
1239         (maintenance_print_symbols, maintenance_info_symtabs)
1240         (maintenance_check_symtabs, maintenance_info_line_tables):
1241         Update.
1242         * source.c (select_source_symtab)
1243         (forget_cached_source_info_for_objfile): Update.
1244         * objfiles.h (class objfile_compunits): Remove.
1245         (struct objfile) <compunits_range>: New typedef.
1246         (compunits): New method.
1247         * objfiles.c (objfile_relocate1): Update.
1248         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
1249         * maint.c (count_symtabs_and_blocks): Update.
1250         * linespec.c (iterate_over_all_matching_symtabs): Update.
1251         * cp-support.c (add_symbol_overload_list_qualified): Update.
1252         * coffread.c (coff_symtab_read): Update.
1253         * ada-lang.c (add_nonlocal_symbols)
1254         (ada_collect_symbol_completion_matches)
1255         (ada_add_global_exceptions): Update.
1256
1257 2019-01-15  Tom Tromey  <tom@tromey.com>
1258
1259         * progspace.h (program_space) <objfiles_safe_range>: New
1260         typedef.
1261         <objfiles_safe>: New method.
1262         * objfiles.h (class all_objfiles_safe): Remove.
1263         * objfiles.c (free_all_objfiles, objfile_purge_solibs): Update.
1264         * jit.c (jit_inferior_exit_hook): Update.
1265
1266 2019-01-17  Tom Tromey  <tom@tromey.com>
1267
1268         * progspace.h (program_space) <objfiles_range>: New typedef.
1269         <objfiles>: New method.
1270         <objfiles_head>: Rename from objfiles.
1271         (object_files): Update.
1272         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Update.
1273         * guile/scm-pretty-print.c
1274         (ppscm_find_pretty_printer_from_objfiles): Update.
1275         * guile/scm-objfile.c (gdbscm_objfiles): Update.
1276         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1277         Update.
1278         * python/py-progspace.c (pspy_get_objfiles): Update.
1279         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1280         Update.
1281         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
1282         (objfpy_lookup_objfile_by_build_id): Update.
1283         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
1284         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
1285         Update.
1286         * symtab.c (iterate_over_symtabs, matching_obj_sections)
1287         (expand_symtab_containing_pc, lookup_objfile_from_block)
1288         (lookup_static_symbol, basic_lookup_transparent_type)
1289         (find_pc_sect_compunit_symtab, find_symbol_at_address)
1290         (find_line_symtab, info_sources_command)
1291         (default_collect_symbol_completion_matches_break_on)
1292         (make_source_files_completion_list, find_main_name): Update.
1293         * symmisc.c (print_symbol_bcache_statistics)
1294         (print_objfile_statistics, maintenance_print_symbols)
1295         (maintenance_print_msymbols, maintenance_print_objfiles)
1296         (maintenance_info_symtabs, maintenance_check_symtabs)
1297         (maintenance_expand_symtabs, maintenance_info_line_tables):
1298         Update.
1299         * symfile.c (remove_symbol_file_command, overlay_invalidate_all)
1300         (find_pc_overlay, find_pc_mapped_section, list_overlays_command)
1301         (map_overlay_command, unmap_overlay_command)
1302         (simple_overlay_update, expand_symtabs_matching)
1303         (map_symbol_filenames): Update.
1304         * symfile-debug.c (set_debug_symfile): Update.
1305         * spu-tdep.c (spu_overlay_update, spu_objfile_from_frame):
1306         Update.
1307         * source.c (select_source_symtab, forget_cached_source_info):
1308         Update.
1309         * solib.c (solib_read_symbols): Update.
1310         * solib-spu.c (append_ocl_sos): Update.
1311         * psymtab.c (maintenance_print_psymbols)
1312         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
1313         * probe.c (parse_probes_in_pspace, find_probe_by_pc): Update.
1314         * printcmd.c (info_symbol_command): Update.
1315         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created):
1316         Update.
1317         * objfiles.h (class all_objfiles): Remove.
1318         * objfiles.c (have_partial_symbols, have_full_symbols)
1319         (have_minimal_symbols, qsort_cmp, update_section_map)
1320         (shared_objfile_contains_address_p)
1321         (default_iterate_over_objfiles_in_search_order): Update.
1322         * objc-lang.c (info_selectors_command, info_classes_command)
1323         (find_methods): Update.
1324         * minsyms.c (find_solib_trampoline_target): Update.
1325         * maint.c (maintenance_info_sections)
1326         (maintenance_translate_address, count_symtabs_and_blocks):
1327         Update.
1328         * main.c (captured_main_1): Update.
1329         * linux-thread-db.c (try_thread_db_load_from_pdir)
1330         (has_libpthread): Update.
1331         * linespec.c (iterate_over_all_matching_symtabs)
1332         (search_minsyms_for_name): Update.
1333         * jit.c (jit_find_objf_with_entry_addr): Update.
1334         * hppa-tdep.c (find_unwind_entry)
1335         (hppa_lookup_stub_minimal_symbol): Update.
1336         * gcore.c (gcore_create_callback, objfile_find_memory_regions):
1337         Update.
1338         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
1339         (elf_gnu_ifunc_resolve_by_got): Update.
1340         * dwarf2-frame.c (dwarf2_frame_find_fde): Update.
1341         * dwarf-index-write.c (save_gdb_index_command): Update.
1342         * cp-support.c (add_symbol_overload_list_qualified): Update.
1343         * breakpoint.c (create_overlay_event_breakpoint)
1344         (create_longjmp_master_breakpoint)
1345         (create_std_terminate_master_breakpoint)
1346         (create_exception_master_breakpoint): Update.
1347         * blockframe.c (find_pc_partial_function): Update.
1348         * ada-lang.c (ada_lookup_simple_minsym, add_nonlocal_symbols)
1349         (ada_collect_symbol_completion_matches)
1350         (ada_add_global_exceptions): Update.
1351
1352 2019-01-17  Tom Tromey  <tom@tromey.com>
1353
1354         * solib-target.c (lm_info_target_p): Remove typedef.  Don't
1355         declare VEC.
1356         (solib_target_parse_libraries): Change return type.
1357         (library_list_start_segment, library_list_start_section)
1358         (library_list_end_library, library_list_start_library); Update.
1359         (solib_target_free_library_list): Remove.
1360         (solib_target_parse_libraries): Remove cleanup.  Change return
1361         type.
1362         (solib_target_current_sos): Update.
1363
1364 2019-01-17  Tom Tromey  <tromey@bapiya>
1365
1366         * valprint.c: Replace "the the" with "the".
1367         * symtab.c: Replace "the the" with "the".
1368         * solib.c: Replace "the the" with "the".
1369         * solib-dsbt.c: Replace "the the" with "the".
1370         * linespec.c: Replace "the the" with "the".
1371         * dwarf2loc.h: Replace "the the" with "the".
1372         * amd64-windows-tdep.c: Replace "the the" with "the".
1373         * aarch64-tdep.c: Replace "the the" with "the".
1374
1375 2019-01-16  Keith Seitz  <keiths@redhat.com>
1376
1377         PR gdb/23773
1378         * dwarf2read.c (dwarf2_cu) <ancestor>: New field.
1379         <builder>: Rename to ..
1380         <m_builder>: ... this and make private.
1381         (dwarf2_cu::get_builder): New method.  Change all users of
1382         `builder' to use this method.
1383         (dwarf2_start_symtab): Move to ...
1384         (dwarf2_cu::start_symtab): ... here.  Update all callers
1385         (setup_type_unit_groups): Move to ...
1386         (dwarf2_cu::setup_type_unit_groups): ... here.  Update all
1387         callers.
1388         (dwarf2_cu::reset_builder): New method.
1389         (process_full_compunit, process_full_type_unit): Use
1390         dwarf2_cu::reset_builder.
1391         (follow_die_offset): Record the ancestor CU if it is different
1392         from the followed DIE's CU.
1393         (follow_die_sig_1): Likewise.
1394
1395 2019-01-15  Tom Tromey  <tom@tromey.com>
1396
1397         * remote.c (class remote_state) <buf>: Now a char_vector.
1398         <buf_size>: Remove.
1399         (remote_target::getpkt): Change type of buf.  Remove sizeof_buf
1400         parameter.
1401         (remote_target::getpkt_or_notif_sane_1)
1402         (remote_target::getpkt_sane)
1403         (remote_target::getpkt_or_notif_sane): Likewise.
1404         (class remote_target) <putpkt>: New overload.
1405         (remote_target::read_frame): Change type of "buf_p".  Remove
1406         sizeof_p parameter.
1407         (packet_ok): New overload.
1408         (packet_check_result): New overload.
1409         Update all uses.
1410
1411 2019-01-14  Tom Tromey  <tom@tromey.com>
1412
1413         * remote-notif.c (handle_notification, remote_notif_ack)
1414         (remote_notif_parse): Make "buf" const.
1415         * remote-notif.h (struct notif_client) <parse, ack>: Make "buf"
1416         const.
1417         (remote_notif_parse, remote_notif_ack, handle_notification):
1418         Likewise.
1419         * remote.c (remote_notif_stop_parse): Make "buf" const.
1420         (remote_target::remote_parse_stop_reply): Make "buf" const.
1421         (remote_notif_stop_ack): Make "buf" const.
1422
1423 2019-01-14  Tom Tromey  <tom@tromey.com>
1424
1425         * remote.c (remote_console_output): Make parameter const.
1426
1427 2019-01-14  Tom Tromey  <tom@tromey.com>
1428
1429         * target-debug.h (target_debug_print_signals): Constify.
1430         * nto-procfs.c (nto_procfs_target::pass_signals): Update.
1431         * procfs.c (procfs_target::pass_signals): Update.
1432         * linux-nat.c (linux_nat_target::pass_signals): Update.
1433         * linux-nat.h (class linux_nat_target) <pass_signals>: Update.
1434         * target-delegates.c: Rebuild.
1435         * remote.c (remote_target::program_signals): Update.
1436         (remote_target::pass_signals): Update.
1437         * target.c (target_pass_signals): Constify argument.
1438         (target_program_signals): Likewise.
1439         * target.h (struct target_ops) <pass_signals, program_signals>:
1440         Constify argument.
1441         (target_pass_signals, target_program_signals): Constify argument.
1442
1443 2019-01-14  Tom Tromey  <tom@tromey.com>
1444
1445         PR tui/28819:
1446         * tui/tui-io.c (gdb_wgetch): Print \r when needed.
1447
1448 2019-01-14  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1449
1450         * ppc-tdep.h (struct gdbarch_tdep) <ppc_v0_alias_regnum>: New
1451         field.
1452         * rs6000-tdep.c: Include reggroups.h.
1453         (IS_V_ALIAS_PSEUDOREG): Define.
1454         (rs6000_register_name): Return names for the "vX" aliases.
1455         (rs6000_pseudo_register_type): Return type for the "vX" aliases.
1456         (rs6000_pseudo_register_reggroup_p): Restore.  Handle "vX"
1457         aliases.  Call default_register_reggroup_p for all other
1458         pseudo-registers.
1459         (v_alias_pseudo_register_read, v_alias_pseudo_register_write):
1460         New functions.
1461         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1462         Handle "vX" aliases.
1463         (v_alias_pseudo_register_collect): New function.
1464         (rs6000_ax_pseudo_register_collect): Handle "vX" aliases.
1465         (rs6000_gdbarch_init): Initialize "vX" aliases as
1466         pseudo-registers.  Restore registration of
1467         rs6000_pseudo_register_reggroup_p with
1468         set_tdesc_pseudo_register_reggroup_p.
1469
1470 2019-01-13  Max Filippov  <jcmvbkbc@gmail.com>
1471
1472         * xtensa-linux-tdep.c (xtensa_linux_init_abi): Update
1473         tdep->num_pseudo_regs. Add calls to set_gdbarch_num_regs and
1474         set_gdbarch_num_pseudo_regs.
1475
1476 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1477
1478         * cli/cli-style.h (class cli_style_option): <add_setshow_commands>
1479         Remove arg prefixname, add do_set and do_show.
1480         Add member functions set_list and show_list.
1481         * cli/cli-style.c (class cli_style_option): Update accordingly.
1482         (style_set_list): Move to file scope.
1483         (style_show_list): Likewise.
1484         (set_style): Call help_list.
1485         (show_style): Call cmd_show_list.
1486         (_initialize_cli_style): New macro STYLE_ADD_SETSHOW_COMMANDS.
1487         Update to use the new macro.
1488
1489 2019-10-12  Joel Brobecker  <brobecker@adacore.com>
1490
1491         * ada-lang.c (_initialize_ada_language): Expand the help text
1492         for the "catch exception" command.
1493
1494 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1495
1496         * symtab.c (matching_obj_sections): Initialize obj,
1497         declare it closer to its usage.
1498
1499 2019-01-10  Tom Tromey  <tom@tromey.com>
1500
1501         * thread-iter.h (inf_threads_iterator): Use next_iterator.
1502         (basic_inf_threads_range): Remove.
1503         (inf_threads_range, inf_non_exited_threads_range)
1504         (safe_inf_threads_range): Use next_adapter.
1505
1506 2019-01-10  Keith Seitz  <keiths@redhat.com>
1507
1508         PR gdb/23712
1509         PR symtab/23010
1510         * dwarf2read.c (dw2_add_symbol_to_list): Remove.
1511         (fixup_go_packaging, new_symbol): Use add_symbol_to_list.
1512
1513 2019-01-10  Keith Seitz  <keiths@redhat.com>
1514
1515         PR gdb/23712
1516         PR symtab/23010
1517         * dictionary.c (pending_to_vector): Remove.
1518         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
1519         Remove _1 suffix, replacing functions of the same name.  Update
1520         all callers.
1521         (dict_create_hashed, dict_create_hashed_expandable)
1522         (dict_create_linear, dict_create_linear_expandable, dict_free)
1523         (dict_add_symbol, dict_add_pending, dict_size, dict_empty):
1524         Make functions static.
1525
1526 2019-01-10  Keith Seitz  <keiths@redhat.com>
1527
1528         PR gdb/23712
1529         PR symtab/23010
1530         * dictionary.h (struct dictionary): Replace declaration with
1531         multidictionary.
1532         (dict_create_hashed, dict_create_hashed_expandable)
1533         (dict_create_linear, dict_create_linear_expandable)
1534         (dict_free, dict_add_symbol, dict_add_pending, dict_empty)
1535         (dict_iterator_first, dict_iterator_next, dict_iter_match_first)
1536         (dict_iter_match_next, dict_size): Rename to "mdict_" versions
1537         taking multidictionary argument.
1538         [ALL_DICT_SYMBOLS]: Update for multidictionary.
1539         * block.h (struct block) <dict>: Change to multidictionary
1540         and rename `multidict'.
1541         * block.c, buildsym.c, jit.c, mdebugread.c, objfiles.c,
1542         symmisc.c: Update all dictionary references to multidictionary.
1543
1544 2019-01-10  Keith Seitz  <keiths@redhat.com>
1545
1546         PR gdb/23712
1547         PR symtab/23010
1548         * dictionary.c: Include unordered_map.
1549         (pending_to_vector): New function.
1550         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
1551         Rewrite the non-"_1" functions to take vector instead
1552         of linked list.
1553         (dict_create_hashed, dict_create_linear, dict_add_pending): Use the
1554         "new" _1 versions of the same name.
1555         (multidictionary): Define.
1556         (std::hash<enum language): New definition.
1557         (collate_pending_symbols_by_language, mdict_create_hashed)
1558         (mdict_create_hashed_expandable, mdict_create_linear)
1559         (mdict_create_linear_expandable, mdict_free)
1560         (find_language_dictionary, create_new_language_dictionary)
1561         (mdict_add_symbol, mdict_add_pending, mdict_iterator_first)
1562         (mdict_iterator_next, mdict_iter_match_first, mdict_iter_match_next)
1563         (mdict_size, mdict_empty): New functions.
1564         * dictionary.h (mdict_iterator): Define.
1565
1566 2019-01-10  Pedro Alves  <palves@redhat.com>
1567
1568         * breakpoint.c (read_uploaded_action)
1569         (create_tracepoint_from_upload): Adjust to use
1570         gdb::unique_xmalloc_ptr.
1571         * ctf.c (ctf_write_uploaded_tp):
1572         (SET_ARRAY_FIELD): Use emplace_back.
1573         (SET_STRING_FIELD): Adjust to use gdb::unique_xmalloc_ptr.
1574         * tracefile-tfile.c (tfile_write_uploaded_tp):
1575         * tracepoint.c (parse_tracepoint_definition): Adjust to use
1576         gdb::unique_xmalloc_ptr.
1577         * tracepoint.h (struct uploaded_tp) <cond, actions, step_actions,
1578         at_string, cond_string, cmd_strings>: Replace char pointers
1579         with gdb::unique_xmalloc_ptr.
1580
1581 2019-01-10  Pedro Alves  <palves@redhat.com>
1582
1583         * solib-target.c (library_list_start_library): Don't xstrdup name.
1584
1585 2019-01-10  Pedro Alves  <palves@redhat.com>
1586
1587         * mdebugread.c (parse_partial_symbols): Use
1588         gdb::unique_xmalloc_ptr to manage heap-allocated 'stabsstring'.
1589
1590 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1591
1592         * linux-fork.c (scoped_switch_fork_info)
1593         <~scoped_switch_fork_info>: Fix incorrect variable name.
1594
1595 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1596
1597         * linux-fork.c (scoped_switch_fork_info)
1598         <scoped_switch_fork_info>: Make explicit.
1599         <~scoped_switch_fork_info>: Wrap core in TRY/CATCH.
1600
1601 2019-01-10  Tom Tromey  <tom@tromey.com>
1602
1603         * objfiles.h (objfile::reset_psymtabs): Update.
1604         * objfiles.c (objfile::objfile): Update.
1605         * psymtab.h (psymtab_storage::obstack): Update.
1606         (psymtab_storage::m_obstack): Use gdb::optional.
1607         (class psymtab_storage): Update comment.  Remove objfile
1608         parameter.
1609         * psymtab.c (psymtab_storage::psymtab_storage): Update.
1610
1611 2019-01-10  Tom Tromey  <tom@tromey.com>
1612
1613         * psymtab.h (psymtab_storage::allocate_psymtab): New method.
1614         <free_psymtabs>: Now private.
1615         * psymtab.c (psymtab_storage::allocate_psymtab): Implement.
1616         (allocate_psymtab): Use new method.
1617
1618 2019-01-10  Tom Tromey  <tom@tromey.com>
1619
1620         * xcoffread.c (xcoff_end_psymtab): Use allocate_dependencies.
1621         * psymtab.h (psymtab_storage::allocate_dependencies): New method.
1622         * mdebugread.c (parse_partial_symbols): Use
1623         allocate_dependencies.
1624         * dwarf2read.c (dwarf2_create_include_psymtab): Use
1625         allocate_dependencies.
1626         (process_psymtab_comp_unit_reader)
1627         (build_type_psymtab_dependencies): Likewise.
1628         * dbxread.c (dbx_end_psymtab): Use allocate_dependencies.
1629
1630 2019-01-10  Tom Tromey  <tom@tromey.com>
1631
1632         * psymtab.c (add_psymbol_to_bcache): Pass psymtab obstack to
1633         PSYMBOL_SET_LANGUAGE.
1634         (allocate_psymtab): Allocate psymtab on the psymtab obstack.
1635
1636 2019-01-10  Tom Tromey  <tom@tromey.com>
1637
1638         * psymtab.h (psymtab_storage::obstack): New method.
1639         <m_obstack>: Rename from obstack; now private.
1640         * psymtab.c (psymtab_storage): Update.
1641         * dwarf2read.c (create_addrmap_from_index)
1642         (create_addrmap_from_aranges, dwarf2_build_psymtabs_hard):
1643         Update.
1644
1645 2019-01-10  Tom Tromey  <tom@tromey.com>
1646
1647         * symfile.c (reread_symbols): Call objfile->reset_psymtabs.
1648         * objfiles.h (objfile::reset_psymtabs): New method.
1649
1650 2019-01-10  Tom Tromey  <tom@tromey.com>
1651
1652         * symmisc.c (print_symbol_bcache_statistics): Update.
1653         (print_objfile_statistics): Update.
1654         * symfile.c (reread_symbols): Update.
1655         * psymtab.h (class psymtab_storage): New.
1656         * psymtab.c (psymtab_storage): New constructor.
1657         (~psymtab_storage): New destructor.
1658         (require_partial_symbols): Update.
1659         (ALL_OBJFILE_PSYMTABS_REQUIRED): Rewrite.
1660         (find_pc_sect_psymtab, find_pc_sect_psymbol)
1661         (match_partial_symbol, lookup_partial_symbol, dump_psymtab)
1662         (psym_dump, recursively_search_psymtabs, psym_has_symbols)
1663         (psym_find_compunit_symtab_by_address, sort_pst_symbols)
1664         (start_psymtab_common, end_psymtab_common)
1665         (add_psymbol_to_bcache, add_psymbol_to_list, init_psymbol_list)
1666         (allocate_psymtab): Update.
1667         (psymtab_storage::discard_psymtab): Rename from discard_psymtab.
1668         Update.
1669         (dump_psymtab_addrmap, maintenance_print_psymbols)
1670         (maintenance_check_psymtabs): Update.
1671         (class objfile_psymtabs): Move to objfiles.h.
1672         * psympriv.h (discard_psymtab): Now inline.
1673         (psymtab_discarder::psymtab_discarder): Update.
1674         (psymtab_discarder::~psymtab_discarder): Update.
1675         (ALL_OBJFILE_PSYMTABS): Rewrite.
1676         * objfiles.h (struct objfile) <psymtabs, psymtabs_addrmap,
1677         free_psymtabs, psymbol_cache, global_psymbols, static_psymbols>:
1678         Remove fields.
1679         <partial_symtabs>: New field.
1680         (class objfile_psymtabs): Move from psymtab.h.  Update.
1681         * objfiles.c (objfile::objfile): Initialize partial_symtabs, not
1682         psymbol_cache.
1683         (objfile::~objfile): Don't destroy psymbol_cache.
1684         * mdebugread.c (parse_partial_symbols): Update.
1685         * dwarf2read.c (create_addrmap_from_index)
1686         (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab)
1687         (process_psymtab_comp_unit_reader, dwarf2_build_psymtabs_hard)
1688         (add_partial_subprogram, dwarf2_ranges_read): Update.
1689         * dwarf-index-write.c (write_address_map)
1690         (write_one_signatured_type, recursively_write_psymbols)
1691         (class debug_names, class debug_names, write_psymtabs_to_index):
1692         Update.
1693
1694 2019-01-10  Tom Tromey  <tom@tromey.com>
1695
1696         * symtab.h (SYMBOL_SET_NAMES): Update.
1697         (symbol_set_names): Update.
1698         (MSYMBOL_SET_NAMES): Update.
1699         * symtab.c (symbol_set_names): Change argument to be an
1700         objfile_per_bfd_storage.
1701         * psymtab.c (add_psymbol_to_bcache): Update.
1702         * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument.
1703
1704 2019-01-10  Tom Tromey  <tom@tromey.com>
1705
1706         * symtab.c (create_demangled_names_hash): Change argument to be an
1707         objfile_per_bfd_storage.
1708         (symbol_set_names): Update.
1709
1710 2019-01-10  Tom Tromey  <tom@tromey.com>
1711
1712         * xcoffread.c (xcoff_initial_scan): Unconditionally call
1713         init_psymbol_list.
1714         * psymtab.c (init_psymbol_list): Do nothing if already called.
1715         * psympriv.h (init_psymbol_list): Add comment.
1716         * dwarf2read.c (dwarf2_build_psymtabs): Unconditionally call
1717         init_psymbol_list.
1718         * dbxread.c (dbx_symfile_read): Unconditionally call
1719         init_psymbol_list.
1720
1721 2019-01-10  Tom Tromey  <tom@tromey.com>
1722
1723         * xcoffread.c (scan_xcoff_symtab): Update.
1724         * psymtab.c (add_psymbol_to_list): Replace "list" parameter with
1725         "where".
1726         * mdebugread.c (parse_partial_symbols)
1727         (handle_psymbol_enumerators): Update.
1728         * dwarf2read.c (add_partial_symbol, load_partial_dies): Update.
1729         * dbxread.c (read_dbx_symtab): Update.
1730         * psympriv.h (psymbol_placement): New enum.
1731         (add_psymbol_to_list): Update.
1732
1733 2019-01-10  Tom Tromey  <tom@tromey.com>
1734
1735         * xcoffread.c (xcoff_start_psymtab): Remove global_psymbols and
1736         static_psymbols parameters.
1737         (scan_xcoff_symtab): Update.
1738         * psymtab.c (start_psymtab_common): Remove global_psymbols and
1739         static_psymbols parameters.
1740         * psympriv.h (start_psymtab_common): Update.
1741         * mdebugread.c (parse_partial_symbols): Update.
1742         * dwarf2read.c (create_partial_symtab): Update.
1743         * dbxread.c (read_dbx_symtab): Update.
1744         (start_psymtab): Remove global_psymbols and static_psymbols
1745         parameters.
1746
1747 2019-01-10  Tom Tromey  <tom@tromey.com>
1748
1749         * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
1750         * psymtab.c (allocate_psymtab): Add comment.
1751         * psympriv.h (allocate_psymtab): Add comment.
1752         * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
1753         initializations.
1754         * dbxread.c (dbx_end_psymtab): Remove some initializations.
1755
1756 2019-01-10  Tom Tromey  <tom@tromey.com>
1757
1758         * symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
1759         Don't declare.
1760         * mipsread.c: Include mdebugread.h.
1761         * mdebugread.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
1762         Declare.
1763         * elfread.c: Include mdebugread.h.
1764
1765 2019-01-09  Tom Tromey  <tom@tromey.com>
1766
1767         * dbxread.c (dbx_end_psymtab): Use objfile_psymtabs.
1768         * mdebugread.c (parse_partial_symbols): Use objfile_psymtabs.
1769         * psymtab.c (ALL_OBJFILE_PSYMTABS_REQUIRED): Remove.
1770         (psym_map_symtabs_matching_filename, find_pc_sect_psymtab)
1771         (psym_lookup_symbol, psym_find_last_source_symtab)
1772         (psym_forget_cached_source_info, psym_print_stats)
1773         (psym_expand_symtabs_for_function, psym_expand_all_symtabs)
1774         (psym_expand_symtabs_with_fullname, psym_map_symbol_filenames)
1775         (psym_map_matching_symbols, psym_expand_symtabs_matching)
1776         (psym_find_compunit_symtab_by_address)
1777         (maintenance_print_psymbols, maintenance_info_psymtabs)
1778         (maintenance_check_psymtabs): Use ranged for.
1779         * psymtab.h (class objfile_psymtabs): New.
1780         (require_partial_symbols): Return objfile_psymtabs.
1781         * psympriv.h (ALL_OBJFILE_PSYMTABS): Remove.
1782
1783 2019-01-09  Tom Tromey  <tom@tromey.com>
1784
1785         * symfile.c (overlay_invalidate_all, find_pc_overlay)
1786         (find_pc_mapped_section, list_overlays_command)
1787         (map_overlay_command, unmap_overlay_command)
1788         (simple_overlay_update): Use all_objfiles.
1789         * spu-tdep.c (spu_overlay_update): Use all_objfiles.
1790         * printcmd.c (info_symbol_command): Use all_objfiles.
1791         * objfiles.h (ALL_OBJSECTIONS): Remove.
1792         * maint.c (maintenance_translate_address): Use all_objfiles.
1793         * gcore.c (gcore_create_callback): Use all_objfiles.
1794         (objfile_find_memory_regions): Likewise.
1795
1796 2019-01-09  Tom Tromey  <tom@tromey.com>
1797
1798         * symtab.c (find_line_symtab, info_sources_command)
1799         (make_source_files_completion_list): Use objfile_compunits.
1800         * source.c (select_source_symtab): Use objfile_compunits.
1801         * objfiles.h (struct objfile): Update comment.
1802         (ALL_OBJFILES): Remove.
1803         (ALL_FILETABS): Remove.
1804         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Use
1805         objfile_compunits.
1806
1807 2019-01-09  Tom Tromey  <tom@tromey.com>
1808
1809         * symmisc.c (print_objfile_statistics, dump_objfile)
1810         (maintenance_print_symbols): Use compunit_filetabs.
1811         * source.c (forget_cached_source_info_for_objfile): Use
1812         compunit_filetabs.
1813         * objfiles.h (ALL_OBJFILE_FILETABS): Remove.
1814         (ALL_FILETABS): Use compunit_filetabs.
1815         * objfiles.c (objfile_relocate1): Use compunit_filetabs.
1816         * coffread.c (coff_symtab_read): Use compunit_filetabs.
1817
1818 2019-01-09  Tom Tromey  <tom@tromey.com>
1819
1820         * symtab.h (ALL_COMPUNIT_FILETABS): Remove.
1821         (compunit_filetabs): New.
1822         * symtab.c (iterate_over_some_symtabs, find_pc_sect_line): Use
1823         compunit_filetabs.
1824         (info_sources_command, make_source_files_completion_list): Remove
1825         declaration.
1826         * symmisc.c (print_objfile_statistics, dump_objfile)
1827         (maintenance_print_symbols): Remove declaration.
1828         (maintenance_info_symtabs): Use compunit_filetabs.
1829         (maintenance_info_line_tables): Likewise.
1830         * source.c (select_source_symtab): Change local variable name.
1831         (forget_cached_source_info_for_objfile): Remove declaration.
1832         * objfiles.h (ALL_OBJFILE_FILETABS): Use compunit_filetabs.
1833         * objfiles.c (objfile_relocate1): Remove declaration.
1834         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
1835         declaration.
1836         * maint.c (count_symtabs_and_blocks): Use compunit_filetabs.
1837         * coffread.c (coff_symtab_read): Remove declaration.
1838         * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
1839         compunit_filetabs.
1840
1841 2019-01-09  Tom Tromey  <tom@tromey.com>
1842
1843         * symtab.c (lookup_objfile_from_block)
1844         (find_pc_sect_compunit_symtab, search_symbols)
1845         (default_collect_symbol_completion_matches_break_on): Use
1846         objfile_compunits.
1847         * objfiles.h (ALL_COMPUNITS): Remove.
1848         * maint.c (count_symtabs_and_blocks): Use objfile_compunits.
1849         * cp-support.c (add_symbol_overload_list_qualified): Use
1850         objfile_compunits.
1851         * ada-lang.c (ada_collect_symbol_completion_matches)
1852         (ada_add_global_exceptions): Use objfile_compunits.
1853
1854 2019-01-09  Tom Tromey  <tom@tromey.com>
1855
1856         * source.c (select_source_symtab)
1857         (forget_cached_source_info_for_objfile): Remove declaration.
1858         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
1859         declaration.
1860         * maint.c (count_symtabs_and_blocks): Remove declaration.
1861         * cp-support.c (add_symbol_overload_list_qualified): Remove
1862         declaration.
1863         * coffread.c (coff_symtab_read): Remove declaration.
1864         * symtab.c (lookup_symbol_in_objfile_symtabs)
1865         (basic_lookup_transparent_type_1): Use objfile_compunits.
1866         (lookup_objfile_from_block, find_pc_sect_compunit_symtab)
1867         (info_sources_command, search_symbols)
1868         (default_collect_symbol_completion_matches_break_on)
1869         (make_source_files_completion_list): Remove declaration.
1870         * ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
1871         (ada_collect_symbol_completion_matches)
1872         (ada_add_global_exceptions): Remove declaration.
1873         * linespec.c (iterate_over_all_matching_symtabs): Use
1874         objfile_compunits.
1875         * objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
1876         (class objfile_compunits): New.
1877         (ALL_COMPUNITS): Use objfile_compunits.
1878         * symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
1879         (maintenance_check_symtabs, maintenance_info_line_tables): Use
1880         objfile_compunits.
1881         * objfiles.c (objfile_relocate1): Use objfile_compunits.
1882
1883 2019-01-09  Tom Tromey  <tom@tromey.com>
1884
1885         * symtab.c (search_symbols)
1886         (default_collect_symbol_completion_matches_break_on): Use
1887         objfile_msymbols.
1888         * ada-lang.c (ada_lookup_simple_minsym)
1889         (ada_collect_symbol_completion_matches): Use objfile_msymbols.
1890         * minsyms.c (find_solib_trampoline_target): Use objfile_msymbols.
1891         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Use
1892         objfile_msymbols.
1893         * coffread.c (coff_symfile_read): Use objfile_msymbols.
1894         * symmisc.c (dump_msymbols): Use objfile_msymbols.
1895         * objc-lang.c (find_methods): Use objfile_msymbols.
1896         (info_selectors_command, info_classes_command): Likewise.
1897         * stabsread.c (scan_file_globals): Use objfile_msymbols.
1898         * objfiles.h (class objfile_msymbols): New.
1899         (ALL_OBJFILE_MSYMBOLS): Remove.
1900         (ALL_MSYMBOLS): Remove.
1901
1902 2019-01-09  Tom Tromey  <tom@tromey.com>
1903
1904         * common/next-iterator.h (next_adapter): Add Iterator template
1905         parameter.
1906         * objfiles.h (ALL_OBJFILES_SAFE): Remove.
1907         (class all_objfiles_safe): New.
1908         * jit.c (jit_inferior_exit_hook): Use all_objfiles_safe.
1909         * objfiles.c (put_objfile_before): Update comment.
1910         (add_separate_debug_objfile): Likewise.
1911         (free_all_objfiles): Use all_objfiles_safe.
1912         (objfile_purge_solibs): Likewise.
1913
1914 2019-01-09  Tom Tromey  <tom@tromey.com>
1915
1916         * symtab.c (iterate_over_symtabs, matching_obj_sections)
1917         (expand_symtab_containing_pc, lookup_static_symbol)
1918         (basic_lookup_transparent_type, find_pc_sect_compunit_symtab)
1919         (find_symbol_at_address, find_line_symtab, find_main_name): Use
1920         all_objfiles.
1921         * probe.c (find_probe_by_pc, collect_probes): Use all_objfiles.
1922         * breakpoint.c (create_overlay_event_breakpoint)
1923         (create_longjmp_master_breakpoint)
1924         (create_std_terminate_master_breakpoint)
1925         (create_exception_master_breakpoint): Use all_objfiles.
1926         * linux-thread-db.c (try_thread_db_load_from_pdir)
1927         (has_libpthread): Use all_objfiles.
1928         * ada-lang.c (add_nonlocal_symbols): Use all_objfiles.
1929         * linespec.c (iterate_over_all_matching_symtabs)
1930         (search_minsyms_for_name): Use all_objfiles.
1931         * maint.c (maintenance_info_sections): Use all_objfiles.
1932         * main.c (captured_main_1): Use all_objfiles.
1933         * spu-tdep.c (spu_objfile_from_frame): Use all_objfiles.
1934         * guile/scm-objfile.c (gdbscm_objfiles): Use all_objfiles.
1935         * guile/scm-pretty-print.c
1936         (ppscm_find_pretty_printer_from_objfiles): Use all_objfiles.
1937         * solib-spu.c (append_ocl_sos): Use all_objfiles.
1938         * symmisc.c (maintenance_print_symbols): Use all_objfiles.
1939         (maintenance_print_msymbols): Use all_objfiles.
1940         * source.c (select_source_symtab): Use all_objfiles.
1941         * jit.c (jit_find_objf_with_entry_addr): Use all_objfiles.
1942         * symfile.c (remove_symbol_file_command)
1943         (expand_symtabs_matching, map_symbol_filenames): Use
1944         all_objfiles.
1945         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created): Use
1946         all_objfiles.
1947         * dwarf2-frame.c (dwarf2_frame_find_fde): Use all_objfiles.
1948         * objc-lang.c (find_methods): Use all_objfiles.
1949         * objfiles.c (have_partial_symbols, have_full_symbols)
1950         (have_minimal_symbols, qsort_cmp)
1951         (default_iterate_over_objfiles_in_search_order): Use
1952         all_objfiles.
1953         * hppa-tdep.c (find_unwind_entry): Use all_objfiles.
1954         * psymtab.c (maintenance_print_psymbols): Use all_objfiles.
1955         (maintenance_check_psymtabs): Use all_objfiles.
1956         (ALL_PSYMTABS): Remove.
1957         * compile/compile-object-run.c (do_module_cleanup): Use
1958         all_objfiles.
1959         * blockframe.c (find_pc_partial_function): Use all_objfiles.
1960         * cp-support.c (add_symbol_overload_list_qualified): Use
1961         all_objfiles.
1962         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
1963         Use all_objfiles.
1964         * dwarf-index-write.c (save_gdb_index_command): Use all_objfiles.
1965         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): Use
1966         all_objfiles.
1967         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
1968         (objfpy_lookup_objfile_by_build_id): Use all_objfiles.
1969         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1970         Uses all_objfiles.
1971         * solib.c (solib_read_symbols): Use all_objfiles
1972
1973 2019-01-09  Tom Tromey  <tom@tromey.com>
1974
1975         * probe.c (parse_probes_in_pspace): Use all_objfiles.
1976         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Use
1977         all_objfiles.
1978         * objfiles.h (ALL_PSPACE_OBJFILES): Remove.
1979         * symmisc.c (print_symbol_bcache_statistics)
1980         (print_objfile_statistics, maintenance_print_objfiles)
1981         (maintenance_info_symtabs, maintenance_check_symtabs)
1982         (maintenance_expand_symtabs, maintenance_info_line_tables): Use
1983         all_objfiles.
1984         * source.c (forget_cached_source_info): Use all_objfiles.
1985         * symfile-debug.c (set_debug_symfile): Use all_objfiles.
1986         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
1987         (elf_gnu_ifunc_resolve_by_got): Use all_objfiles.
1988         * objfiles.c (update_section_map): Use all_objfiles.
1989         (shared_objfile_contains_address_p): Likewise.
1990         * psymtab.c (maintenance_info_psymtabs): Use all_objfiles.
1991         * python/py-progspace.c (pspy_get_objfiles): Use all_objfiles.
1992
1993 2019-01-09  Tom Tromey  <tom@tromey.com>
1994
1995         * common/next-iterator.h: New file.
1996         * objfiles.h (class all_objfiles): New.
1997         (struct objfile_iterator): New.
1998
1999 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2000
2001         * NEWS: Move the description of the changed "frame", "select-frame",
2002          and "info frame" commands to the Changed commands section.
2003
2004 2019-01-09  Simon Marchi  <simon.marchi@ericsson.com>
2005
2006         * gdbtypes.c (check_stub_method_group): Remove handling of old
2007         mangling schemes.
2008         * linespec.c (find_methods): Likewise.
2009         * stabsread.c (read_member_functions): Likewise.
2010         * valops.c (search_struct_method): Likewise.
2011         (value_struct_elt_for_reference): Likewise.
2012         * NEWS: Mention this change.
2013
2014 2019-01-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2015
2016         * cli/cli-cmds.c (list_command): Pass a source_lines_range to
2017         print_source_lines.
2018         * source.c (print_source_lines_base): Update line number check.
2019         (print_source_lines): New function.
2020         (source_lines_range::source_lines_range): New function.
2021         * source.h (class source_lines_range): New class.
2022         (print_source_lines): New declaration.
2023
2024 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2025
2026         * linespec.c (linespec_state_destructor): Free self->canonical_names.
2027
2028 2019-01-08  Tom Tromey  <tom@tromey.com>
2029             Simon Marchi  <simon.marchi@ericsson.com>
2030
2031         PR gdb/24060
2032         * ada-exp.y (DOLLAR_VARIABLE): Rename from SPECIAL_VARIABLE.
2033         * ada-lex.l (DOLLAR_VARIABLE): Likewise.
2034         * c-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
2035         * f-exp.y (DOLLAR_VARIABLE): Likewise.
2036         * m2-exp.y (DOLLAR_VARIABLE): Rename from INTERNAL_VAR.
2037         * p-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
2038
2039 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2040
2041         * source.c (select_source_symtab): Move header comment to
2042         declaration in source.h.
2043         (forget_cached_source_info_for_objfile): Likewise.
2044         (forget_cached_source_info): Likewise.
2045         (identify_source_line): Likewise.
2046         * source.h (identify_source_line): Move declaration from symtab.h
2047         and add comment from source.c
2048         (print_source_lines): Likewise.
2049         (forget_cached_source_info_for_objfile): Likewise.
2050         (forget_cached_source_info): Likewise.
2051         (select_source_symtab): Likewise.
2052         (enum print_source_lines_flag): Move definition from symtab.h.
2053         * symtab.h (identify_source_line): Move declaration to source.h.
2054         (print_source_lines): Likewise.
2055         (forget_cached_source_info_for_objfile): Likewise.
2056         (forget_cached_source_info): Likewise.
2057         (select_source_symtab): Likewise.
2058         (enum print_source_lines_flag): Move definition to source.h.
2059         * tui/tui-hooks.c: Add 'source.h' include.
2060
2061 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2062
2063         * source.c (print_source_lines_base): Handle requests to print
2064         reverse line number sequences, and guard against empty lines
2065         string.
2066
2067 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2068
2069         * source.c (print_source_lines_base): Fix skip of '\r' if next
2070         character is '\n'.
2071
2072 2019-01-06  Tom Tromey  <tom@tromey.com>
2073
2074         * c-exp.y (struct c_parse_state) <macro_original_text,
2075         expansion_obstack>: New member.
2076         (macro_original_text, expansion_obstack): Remove globals.
2077         (scan_macro_expansion, scanning_macro_expansion)
2078         (finished_macro_expansion): Update.
2079         (scan_macro_cleanup): Remove.
2080         (yylex, c_parse): Update.
2081
2082 2019-01-06  Tom Tromey  <tom@tromey.com>
2083
2084         * c-exp.y (struct c_parse_state) <strings>: New member.
2085         (operator_stoken): Update.
2086
2087 2019-01-06  Tom Tromey  <tom@tromey.com>
2088
2089         * parser-defs.h (type_ptr): Remove typedef.  Don't declare VEC.
2090         (union type_stack_elt) <typelist_val>: Now a pointer to
2091         std::vector.
2092         (type_stack_cleanup): Don't declare.
2093         (push_typelist): Update.
2094         * parse.c (pop_typelist): Return a std::vector.
2095         (push_typelist): Take a std::vector.
2096         (follow_types): Update.  Do not free args.
2097         (type_stack_cleanup): Remove.
2098         * c-exp.y (struct c_parse_state): New.
2099         (cpstate): New global.
2100         (type_aggregate_p, exp, ptr_operator, parameter_typelist)
2101         (nonempty_typelist): Update.
2102         (func_mod): Create a new vector.
2103         (c_parse): Create a c_parse_state.
2104         (check_parameter_typelist): Do not delete params.
2105         (function_method): Update.  Do not delete type_list.
2106
2107 2019-01-06  Tom Tromey  <tom@tromey.com>
2108
2109         PR gdb/28155:
2110         * python/py-finishbreakpoint.c (bpfinishpy_init): Use
2111         check_typedef.
2112         * infcmd.c (finish_command_fsm_should_stop): Use check_typedef.
2113         (print_return_value): Likewise.
2114
2115 2019-01-05  Tom Tromey  <tom@tromey.com>
2116
2117         * contrib/cleanup_check.py: Remove.
2118         * contrib/gcc-with-excheck: Remove.
2119         * contrib/exsummary.py: Remove.
2120         * contrib/excheck.py: Remove.
2121
2122 2019-01-05  Joel Brobecker  <brobecker@adacore.com>
2123
2124         * thread.c (delete_thread_1): Add gdb_assert that THR is not
2125         NULL. Initialize tpprev to NULL instead of assigning it
2126         to NULL on the next statement.
2127         * windows-nat.c (windows_delete_thread): Remove check for
2128         main_thread_id before printing thread exit notifications.
2129         (get_windows_debug_event) <EXIT_THREAD_DEBUG_EVENT>:
2130         Remove thread ID check against main_thread_id.
2131         <CREATE_PROCESS_DEBUG_EVENT>: Remove call to
2132         windows_delete_thread.
2133         <EXIT_PROCESS_DEBUG_EVENT>: Add call to windows_delete_thread.
2134
2135 2019-01-04  Tom Tromey  <tom@tromey.com>
2136
2137         * compile/compile.c (_initialize_compile): Use upper case for
2138         metasyntactic variables.
2139         * symmisc.c (_initialize_symmisc): Use upper case for
2140         metasyntactic variables.
2141         * psymtab.c (_initialize_psymtab): Use upper case for
2142         metasyntactic variables.
2143         * demangle.c (demangle_command): Use upper case for metasyntactic
2144         variables.
2145         (_initialize_demangler): Likewise.
2146         * ax-gdb.c (_initialize_ax_gdb): Use upper case for metasyntactic
2147         variables.
2148
2149 2019-01-03  Tom Tromey  <tom@tromey.com>
2150
2151         * tui/tui-source.c (tui_set_source_content): Use xstrdup.
2152
2153 2019-01-03  Tom Tromey  <tom@tromey.com>
2154
2155         * python/py-symtab.c (salpy_str): Update.
2156         (struct salpy_sal_object) <symtab>: Now a PyObject.
2157         (salpy_dealloc): Update.
2158         (del_objfile_sal): Use gdbpy_ref.
2159
2160 2019-01-03  Tom Tromey  <tom@tromey.com>
2161
2162         * python/py-type.c (convert_field): Use new_reference.  Return
2163         gdbpy_ref.
2164         (make_fielditem): Return gdbpy_ref.
2165         (typy_fields): Update.
2166         (typy_getitem): Update.
2167         (field_name): Return gdbpy_ref.  Use new_reference.
2168         (typy_iterator_iternext): Update.
2169
2170 2019-01-03  Tom Tromey  <tom@tromey.com>
2171
2172         * python/py-record.c (gdbpy_stop_recording): Use Py_RETURN_NONE.
2173
2174 2019-01-03  Tom Tromey  <tom@tromey.com>
2175
2176         * python/py-value.c (valpy_dealloc): Use Py_XDECREF.
2177         * python/py-type.c (typy_fields_items): Use gdbpy_ref.
2178         * python/py-progspace.c (pspy_set_printers): Use gdbpy_ref.
2179         (pspy_set_frame_filters, pspy_set_frame_unwinders)
2180         (pspy_set_type_printers): Likewise.
2181         * python/py-function.c (fnpy_init): Use gdbpy_ref.
2182         * python/py-cmd.c (cmdpy_init): Use gdbpy_ref.
2183         * python/py-objfile.c (objfpy_set_printers): Use gdbpy_ref.
2184         (objfpy_set_frame_filters, objfpy_set_frame_unwinders)
2185         (objfpy_set_type_printers): Likewise.
2186
2187 2019-01-03  Tom Tromey  <tom@tromey.com>
2188
2189         * python/python.c (gdbpy_enter, ~gdbpy_enter): Update.
2190         (gdbpy_print_stack): Use gdbpy_err_fetch.
2191         * python/python-internal.h (class gdbpy_err_fetch): New class.
2192         (class gdbpy_enter) <m_error_type, m_error_value,
2193         m_error_traceback>: Remove.
2194         <m_error>: New member.
2195         (gdbpy_exception_to_string): Don't declare.
2196         * python/py-varobj.c (py_varobj_iter_next): Use gdbpy_err_fetch.
2197         * python/py-value.c (convert_value_from_python): Use
2198         gdbpy_err_fetch.
2199         * python/py-utils.c (gdbpy_err_fetch::to_string): Rename from
2200         gdbpy_exception_to_string.
2201         (gdbpy_handle_exception): Use gdbpy_err_fetch.
2202         * python/py-prettyprint.c (print_stack_unless_memory_error): Use
2203         gdbpy_err_fetch.
2204
2205 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2206
2207         * linux-nat.c (delete_lwp_cleanup): Delete.
2208         (struct lwp_deleter): New struct.
2209         (lwp_info_up): New typedef.
2210         (linux_nat_target::follow_fork): Delete cleanup, and make use of
2211         lwp_info_up.
2212
2213 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2214
2215         * linux-fork.c (class scoped_switch_fork_info): New class.
2216         (inferior_call_waitpid): Update to use scoped_switch_fork_info.
2217
2218 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2219
2220         * valops.c (find_overload_match): Remove use of null_cleanup, and
2221         calls to do_cleanups.
2222
2223 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2224
2225         * compile/compile-cplus-types.c
2226         (compile_cplus_instance::decl_name): Handle changes to
2227         cp_func_name.
2228         * cp-support.c (cp_func_name): Update header comment, update
2229         return type.
2230         * cp-support.h (cp_func_name): Update return type in declaration.
2231         * valops.c (find_overload_match): Move temp_func local to top
2232         level of function and change its type.  Use temp_func to hold and
2233         delete temporary string obtained from cp_func_name.
2234
2235 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2236
2237         * remote.c (remote_target::remote_check_symbols): Convert `msg` to
2238         gdb::char_vector, remove cleanup, and update uses of `msg`.
2239
2240 2019-01-03  Jim Wilson  <jimw@sifive.com>
2241
2242         * riscv-tdep.c (riscv_freg_feature): Drop s0 name from f8.
2243
2244 2019-01-02  Tom Tromey  <tom@tromey.com>
2245
2246         * xml-tdesc.c (xml_cache): Hold a target_desc_up.
2247         (tdesc_parse_xml): Remove cleanups.
2248         * target-descriptions.h (make_cleanup_free_target_description):
2249         Don't declare.
2250         (target_desc_deleter): New struct.
2251         (target_desc_up): New typedef.
2252         * target-descriptions.c (target_desc_deleter::operator()): Rename
2253         from free_target_description.
2254         (make_cleanup_free_target_description): Remove.
2255
2256 2019-01-02  Tom Tromey  <tom@tromey.com>
2257
2258         * linespec.c (struct linespec_parser): Rename from ls_parser.  Add
2259         constructor, destructor.
2260         (linespec_parser): Remove typedef.
2261         (~linespec_parser): Rename from linespec_parser_delete.
2262         (linespec_lex_to_end, linespec_complete_label)
2263         (linespec_complete): Update.
2264         (decode_line_full): Remove cleanups.
2265         (decode_line_1): Update.
2266
2267 2019-01-02  Tom Tromey  <tom@tromey.com>
2268
2269         * python/python-internal.h (inferior_to_inferior_object): Change
2270         return type.
2271         * python/py-exitedevent.c (create_exited_event_object): Update.
2272         * python/py-inferior.c (inferior_to_inferior_object): Return
2273         gdbpy_ref.
2274         (python_new_inferior, python_inferior_deleted)
2275         (thread_to_thread_object, delete_thread_object)
2276         (build_inferior_list, gdbpy_selected_inferior): Update.
2277         * python/py-infthread.c (create_thread_object): Update.  Also fail
2278         if inferior_to_inferior_object fails.
2279
2280 2019-01-02  Simon Marchi  <simon.marchi@ericsson.com>
2281
2282         * inferior.h (class inferior) <displaced_step_state>: New field.
2283         * infrun.h (struct displaced_step_state): Move here from
2284         infrun.c.  Initialize fields, add constructor.
2285         <inf>: Remove field.
2286         <reset>: New method.
2287         * infrun.c (struct displaced_step_inferior_state): Move to
2288         infrun.h.
2289         (displaced_step_inferior_states): Remove.
2290         (get_displaced_stepping_state): Adust.
2291         (displaced_step_in_progress_any_inferior): Adjust.
2292         (displaced_step_in_progress_thread): Adjust.
2293         (displaced_step_in_progress): Adjust.
2294         (add_displaced_stepping_state): Remove.
2295         (get_displaced_step_closure_by_addr): Adjust.
2296         (remove_displaced_stepping_state): Remove.
2297         (infrun_inferior_exit): Call displaced_step_state.reset.
2298         (use_displaced_stepping): Don't check for NULL.
2299         (displaced_step_prepare_throw): Call
2300         get_displaced_stepping_state.
2301         (displaced_step_fixup): Don't check for NULL.
2302         (prepare_for_detach): Don't check for NULL.
2303
2304 2019-01-02  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2305
2306         * infcall.c (call_function_by_hand_dummy): cleanup/destroy sm
2307          in case of call that did not complete.
2308
2309 2019-01-02  Andrey Utkin  <autkin@undo.io>
2310
2311         * symfile.c (find_separate_debug_file): Fix search of debug files for
2312         remote debuggee.
2313
2314 2019-01-02  Tom Tromey  <tom@tromey.com>
2315
2316         * python/py-inferior.c (gdbpy_initialize_inferior): Fix
2317         indentation.
2318         * python/py-frame.c (frapy_older): Remove cast.
2319         (frapy_newer): Likewise.
2320         * python/py-breakpoint.c (local_setattro): Remove cast.
2321         * python/py-arch.c (archpy_name): Remove local variable.
2322         * python/py-type.c (gdbpy_lookup_type): Remove cast.
2323
2324 2019-01-02  Joel Brobecker  <brobecker@adacore.com>
2325
2326         * unittests/basic_string_view/element_access/char/empty.cc:
2327         Fix year range in copyright header.
2328
2329 2019-01-01  Andrew Burgess  <andrew.burgess@embecosm.com>
2330
2331         * arch/riscv.h (struct riscv_gdbarch_features) <hw_float_abi>:
2332         Delete.
2333         <operator==>: Update with for removed field.
2334         <hash>: Likewise.
2335         * riscv-tdep.h (struct gdbarch_tdep) <features>: Renamed to...
2336         <isa_features>: ...this.
2337         <abi_features>: New field.
2338         (riscv_isa_flen): Update comment.
2339         (riscv_abi_xlen): New declaration.
2340         (riscv_abi_flen): New declaration.
2341         * riscv-tdep.c (riscv_isa_xlen): Update to get answer from
2342         isa_features.
2343         (riscv_abi_xlen): New function.
2344         (riscv_isa_flen): Update to get answer from isa_features.
2345         (riscv_abi_flen): New function.
2346         (riscv_has_fp_abi): Update to get answer from abi_features.
2347         (riscv_call_info::riscv_call_info): Use abi xlen and flen, not isa
2348         xlen and flen.
2349         (riscv_call_info) <xlen, flen>: Update comment.
2350         (riscv_call_arg_struct): Remove invalid assertions
2351         (riscv_features_from_gdbarch_info): Update now hw_float_abi field
2352         is removed.
2353         (riscv_gdbarch_init): Gather isa features and abi features
2354         separately, ensure both match on the gdbarch when reusing an old
2355         gdbarch.  Relax an error check to allow 32-bit abi float to run on
2356         a target with 64-bit float hardware.
2357
2358 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2359
2360         * source.c (search_command_helper): Stop reverse search
2361         when line 1 has been searched.
2362
2363 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2364
2365         * record-full.c (record_full_base_target::close): Rewrite
2366         record_full_core_buf_list free logic.
2367
2368 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2369
2370         * break-catch-syscall.c (print_one_catch_syscall): xfree
2371         the last text.
2372
2373 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
2374
2375         * top.c (print_gdb_version): Update Copyright year in version
2376         message.
2377
2378 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
2379
2380         Update copyright year range in all GDB files.
2381
2382 2019-01-01, 19  Joel Brobecker  <brobecker@adacore.com>
2383
2384         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2018.
2385
2386 For older changes see ChangeLog-2018.
2387 \f
2388 Local Variables:
2389 mode: change-log
2390 left-margin: 8
2391 fill-column: 74
2392 version-control: never
2393 coding: utf-8
2394 End:
2395