Fix redefinition errors in C++ mode
[external/binutils.git] / gdb / ChangeLog
1 2015-02-11  Tom Tromey  <tromey@redhat.com>
2             Pedro Alves <palves@redhat.com>
3
4         * breakpoint.c (base_breakpoint_ops): Delete.
5         * dwarf2loc.c (dwarf_expr_ctx_funcs): Make extern.
6         * elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_lazy_psyms): Make extern.
7         * guile/guile.c (guile_extension_script_ops, guile_extension_ops): Make extern.
8         * ppcnbsd-tdep.c (ppcnbsd2_sigtramp): Make extern.
9         * python/py-arch.c (arch_object_type): Make extern.
10         * python/py-block.c (block_syms_iterator_object_type): Make extern.
11         * python/py-bpevent.c (breakpoint_event_object_type): Make extern.
12         * python/py-cmd.c (cmdpy_object_type): Make extern.
13         * python/py-continueevent.c (continue_event_object_type)
14         * python/py-event.h (GDBPY_NEW_EVENT_TYPE): Remove 'qual'
15         parameter.  Update all callers.
16         * python/py-evtregistry.c (eventregistry_object_type): Make extern.
17         * python/py-exitedevent.c (exited_event_object_type): Make extern.
18         * python/py-finishbreakpoint.c (finish_breakpoint_object_type): Make extern.
19         * python/py-function.c (fnpy_object_type): Make extern.
20         * python/py-inferior.c (inferior_object_type, membuf_object_type): Make extern.
21         * python/py-infevents.c (call_pre_event_object_type)
22         (inferior_call_post_event_object_type).
23         (memory_changed_event_object_type): Make extern.
24         * python/py-infthread.c (thread_object_type): Make extern.
25         * python/py-lazy-string.c (lazy_string_object_type): Make extern.
26         * python/py-linetable.c (linetable_entry_object_type)
27         (linetable_object_type, ltpy_iterator_object_type): Make extern.
28         * python/py-newobjfileevent.c (new_objfile_event_object_type)
29         (clear_objfiles_event_object_type): Make extern.
30         * python/py-objfile.c (objfile_object_type): Make extern.
31         * python/py-param.c (parmpy_object_type): Make extern.
32         * python/py-progspace.c (pspace_object_type): Make extern.
33         * python/py-signalevent.c (signal_event_object_type): Make extern.
34         * python/py-symtab.c (symtab_object_type, sal_object_type): Make extern.
35         * python/py-type.c (type_object_type, field_object_type)
36         (type_iterator_object_type): Make extern.
37         * python/python.c (python_extension_script_ops)
38         (python_extension_ops): Make extern.
39         * stap-probe.c (stap_probe_ops): Make extern.
40
41 2015-02-11  Pedro Alves  <pedro@codesourcery.com>
42
43         * infrun.c (adjust_pc_after_break): Don't adjust the PC just
44         because the event thread is not the current thread.
45
46 2015-02-11  Doug Evans  <xdje42@gmail.com>
47
48         * gdbtypes.c (internal_type_self_type): If TYPE_SPECIFIC_FIELD hasn't
49         been initialized yet, return NULL.
50
51 2015-02-11  Doug Evans  <dje@google.com>
52
53         * symfile.h (new_symfile_objfile): Delete.
54         * symfile.c (finish_new_objfile): Renamed from new_symfile_objfile.
55         All callers updated.
56
57 2015-02-11  Patrick Palka  <patrick@parcs.ath.cx>
58
59         * tui/tui-io.c (tui_handle_resize_during_io): Call
60         tui_update_gdb_sizes() after resizing the screen.
61         * tui/tui.c (tui_enable): Resize the terminal before
62         calling tui_update_gdb_sizes().
63
64 2015-02-11  Patrick Palka  <patrick@parcs.ath.cx>
65
66         * tui/tui-io.c (tui_getc): Move cursor to the end of the command
67         line before printing a newline.
68
69 2015-02-11  Mark Wielaard  <mjw@redhat.com>
70
71         * utils.c (producer_is_gcc): Return true or false.
72
73 2015-02-10  Mark Wielaard  <mjw@redhat.com>
74
75         * utils.h (producer_is_gcc): Change return type to bool. Add major
76         argument.
77         * utils.c (producer_is_gcc): Likewise.
78         (producer_is_gcc_ge_4): Adjust producer_is_gcc call.
79         * dwarf2read.c (check_producer): Likewise.
80
81 2015-02-10  Pedro Alves  <palves@redhat.com>
82
83         * infrun.c (displaced_step_fixup): Switch to the event thread
84         before calling gdbarch_displaced_step_fixup.
85
86 2015-02-10  Antoine Tremblay <antoine.tremblay@ericsson.com>
87
88         * MAINTAINERS (Write After Approval): Add Antoine Tremblay.
89
90 2015-02-10  Simon Marchi  <simon.marchi@ericsson.com>
91
92         * ada-varobj.c (ada_name_of_child): Constify parent.
93         (ada_path_expr_of_child): Same.
94         (ada_value_of_child): Same.
95         (ada_type_of_child): Same.
96         * c-varobj.c (c_is_path_expr_parent): Same.
97         (c_describe_child): Same.
98         (c_name_of_child): Same.
99         (c_value_of_child): Same.
100         (c_type_of_child): Same.
101         (cplus_number_of_children): Same.
102         (cplus_describe_child): Constify var.
103         (cplus_name_of_child): Constify parent.
104         (cplus_value_of_child): Same.
105         (cplus_type_of_child): Same.
106         * jv-varobj.c (java_name_of_child): Same.
107         (java_value_of_child): Same.
108         (java_type_of_child): Same.
109         * varobj.c (value_of_child): Same.
110         (varobj_default_is_path_expr_parent): Constify var, parent and return
111         value.
112         (varobj_get_path_expr): Constify var, modify path_expr through
113         mutable_var.
114         (install_new_value): Constify parent.
115         (value_of_child): Constify parent.
116         * varobj.h (struct varobj): Constify parent.
117         (struct lang_varobj_ops): Constify name_of_child, value_of_child and
118         type_of_child.
119         (varobj_get_path_expr): Constify var.
120         (varobj_get_path_expr_parent): Constify var and return value.
121
122 2015-02-10  Luis Machado  <lgustavo@codesourcery.com>
123
124         * arm-tdep.c (arm_prologue_unwind_stop_reason): New function.
125         (arm_prologue_this_id): Move PC and SP limit checks to
126         arm_prologue_unwind_stop_reason.
127         (arm_prologue_unwind) <stop_reason> : Set to
128         arm_prologue_unwind_stop_reason.
129
130 2015-02-09  Mark Wielaard  <mjw@redhat.com>
131
132         * dwarf2read.c (set_cu_language): Recognize DW_LANG_Fortran03 and
133         DW_LANG_Fortran08 as language_fortran.
134
135 2015-02-09  Sergio Durigan Junior  <sergiodj@redhat.com>
136
137         PR remote/17946
138         * gdb/remote.c (remote_parse_stop_reply): Fix wrong comparison
139         of pointer against char.
140
141 2015-02-09  Mark Wielaard  <mjw@redhat.com>
142
143         * c-typeprint.c (cp_type_print_method_args): Handle '_Atomic'.
144         (c_type_print_modifier): Likewise.
145         * dwarf2read.c (read_tag_atomic_type): New function.
146         (read_type_die_1): Handle DW_TAG_atomic_type.
147         * gdbtypes.c (make_atomic_type): New function.
148         (recursive_dump_type): Handle TYPE_ATOMIC.
149         * gdbtypes.h (enum type_flag_values): Renumber.
150         (enum type_instance_flag_value): Add TYPE_INSTANCE_FLAG_ATOMIC.
151         (TYPE_ATOMIC): New macro.
152         (make_atomic_type): Declare.
153
154 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
155
156         * btrace.c (ftrace_find_call): Skip gaps.
157         (ftrace_new_function): Initialize level.
158         (ftrace_new_call, ftrace_new_tailcall, ftrace_new_return)
159         (ftrace_new_switch): Update
160         level computation.
161         (ftrace_new_gap): New.
162         (ftrace_update_function): Create new function after gap.
163         (btrace_compute_ftrace_bts): Create gap on error.
164         (btrace_stitch_bts): Update parameters.  Clear trace if it
165         becomes empty.
166         (btrace_stitch_trace): Update parameters.  Update callers.
167         (btrace_clear): Reset the number of gaps.
168         (btrace_insn_get): Return NULL if the iterator points to a gap.
169         (btrace_insn_number): Return zero if the iterator points to a gap.
170         (btrace_insn_end): Allow gaps at the end.
171         (btrace_insn_next, btrace_insn_prev, btrace_insn_cmp): Handle gaps.
172         (btrace_find_insn_by_number): Assert that the found iterator does
173         not point to a gap.
174         (btrace_call_next, btrace_call_prev): Assert that the last function
175         is not a gap.
176         * btrace.h (btrace_bts_error): New.
177         (btrace_function): Update comment.
178         (btrace_function) <insn, insn_offset, number>: Update comment.
179         (btrace_function) <errcode>: New.
180         (btrace_thread_info) <ngaps>: New.
181         (btrace_thread_info) <replay>: Update comment.
182         (btrace_insn_get): Update comment.
183         * record-btrace.c (btrace_ui_out_decode_error): New.
184         (record_btrace_info): Print number of gaps.
185         (btrace_insn_history, btrace_call_history): Call
186         btrace_ui_out_decode_error for gaps.
187         (record_btrace_step_thread, record_btrace_start_replaying): Skip gaps.
188
189 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
190
191         * common/btrace-common.h (btrace_cpu_vendor, btrace_cpu): New.
192         * nat/linux-btrace.c: (btrace_this_cpu): New.
193         (cpu_supports_bts): Call btrace_this_cpu.
194         (intel_supports_bts): Add cpu parameter.
195
196 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
197
198         * btrace.h (btrace_insn_class): New.
199         (btrace_insn) <size, iclass>: New.
200         * btrace.c (ftrace_find_call): Update parameters.  Update users.
201         Use instruction classification.
202         (ftrace_new_return): Update parameters.  Update users.
203         (ftrace_update_function): Update parameters.  Update users.  Use
204         instruction classification.
205         (ftrace_update_insns): Update parameters.  Update users.
206         (ftrace_classify_insn): New.
207         (btrace_compute_ftrace_bts): Fill in new btrace_insn fields.  Add
208         TRY_CATCH around call to gdb_insn_length.
209
210 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
211
212         * btrace.c (btrace_compute_ftrace_bts, btrace_compute_ftrace):
213         Update parameters.  Update users.
214
215 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
216
217         * btrace.c (parse_xml_btrace_conf_bts): Add size.
218         (btrace_conf_bts_attributes): New.
219         (btrace_conf_children): Add attributes.
220         * common/btrace-common.h (btrace_config_bts): New.
221         (btrace_config)<bts>: New.
222         (btrace_config): Update comment.
223         * nat/linux-btrace.c (linux_enable_btrace, linux_enable_bts):
224         Use config.
225         * features/btrace-conf.dtd: Increment version.  Add size
226         attribute to bts element.
227         * record-btrace.c (set_record_btrace_bts_cmdlist,
228         show_record_btrace_bts_cmdlist): New.
229         (record_btrace_adjust_size, record_btrace_print_bts_conf,
230         record_btrace_print_conf, cmd_set_record_btrace_bts,
231         cmd_show_record_btrace_bts): New.
232         (record_btrace_info): Call record_btrace_print_conf.
233         (_initialize_record_btrace): Add commands.
234         * remote.c: Add PACKET_Qbtrace_conf_bts_size enum.
235         (remote_protocol_features): Add Qbtrace-conf:bts:size packet.
236         (btrace_sync_conf): Synchronize bts size.
237         (_initialize_remote): Add Qbtrace-conf:bts:size packet.
238         * NEWS: Announce new commands and new packets.
239
240 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
241
242         * Makefile.in (XMLFILES): Add btrace-conf.dtd.
243         * x86-linux-nat.c (x86_linux_enable_btrace): Update parameters.
244         (x86_linux_btrace_conf): New.
245         (x86_linux_create_target): Initialize to_btrace_conf.
246         * nat/linux-btrace.c (linux_enable_btrace): Update parameters.
247         Check format.  Split into this and ...
248         (linux_enable_bts): ... this.
249         (linux_btrace_conf): New.
250         (perf_event_skip_record): Renamed into ...
251         (perf_event_skip_bts_record): ... this.  Updated users.
252         (linux_disable_btrace): Split into this and ...
253         (linux_disable_bts): ... this.
254         (linux_read_btrace): Check format.
255         * nat/linux-btrace.h (linux_enable_btrace): Update parameters.
256         (linux_btrace_conf): New.
257         (btrace_target_info)<ptid>: Moved.
258         (btrace_target_info)<conf>: New.
259         (btrace_target_info): Split into this and ...
260         (btrace_tinfo_bts): ... this.  Updated users.
261         * btrace.c (btrace_enable): Update parameters.
262         (btrace_conf, parse_xml_btrace_conf_bts, parse_xml_btrace_conf)
263         (btrace_conf_children, btrace_conf_attributes)
264         (btrace_conf_elements): New.
265         * btrace.h (btrace_enable): Update parameters.
266         (btrace_conf, parse_xml_btrace_conf): New.
267         * common/btrace-common.h (btrace_config): New.
268         * feature/btrace-conf.dtd: New.
269         * record-btrace.c (record_btrace_conf): New.
270         (record_btrace_cmdlist): New.
271         (record_btrace_enable_warn, record_btrace_open): Pass
272         &record_btrace_conf.
273         (record_btrace_info): Print recording format.
274         (cmd_record_btrace_bts_start): New.
275         (cmd_record_btrace_start): Call cmd_record_btrace_bts_start.
276         (_initialize_record_btrace): Add "record btrace bts" subcommand.
277         Add "record bts" alias command.
278         * remote.c (remote_state)<btrace_config>: New.
279         (remote_btrace_reset, PACKET_qXfer_btrace_conf): New.
280         (remote_protocol_features): Add qXfer:btrace-conf:read.
281         (remote_open_1): Call remote_btrace_reset.
282         (remote_xfer_partial): Handle TARGET_OBJECT_BTRACE_CONF.
283         (btrace_target_info)<conf>: New.
284         (btrace_sync_conf, btrace_read_config): New.
285         (remote_enable_btrace): Update parameters.  Call btrace_sync_conf and
286         btrace_read_conf.
287         (remote_btrace_conf): New.
288         (init_remote_ops): Initialize to_btrace_conf.
289         (_initialize_remote): Add qXfer:btrace-conf packet.
290         * target.c (target_enable_btrace): Update parameters.
291         (target_btrace_conf): New.
292         * target.h (target_enable_btrace): Update parameters.
293         (target_btrace_conf): New.
294         (target_object)<TARGET_OBJECT_BTRACE_CONF>: New.
295         (target_ops)<to_enable_btrace>: Update parameters and comment.
296         (target_ops)<to_btrace_conf>: New.
297         * target-delegates: Regenerate.
298         * target-debug.h (target_debug_print_const_struct_btrace_config_p)
299         (target_debug_print_const_struct_btrace_target_info_p): New.
300         * NEWS: Announce new command and new packet.
301
302 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
303
304         * nat/linux-btrace.h (perf_event_buffer): New.
305         (btrace_target_info) <buffer, size, data_head>: Replace with ...
306         <bts>: ... this.
307         * nat/linux-btrace.c (perf_event_header, perf_event_mmap_size)
308         (perf_event_buffer_size, perf_event_buffer_begin)
309         (perf_event_buffer_end, linux_btrace_has_changed): Removed.
310         Updated users.
311         (perf_event_new_data): New.
312
313 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
314
315         * btrace.c (btrace_enable): Pass BTRACE_FORMAT_BTS.
316         * record-btrace.c (record_btrace_open): Remove call to
317         target_supports_btrace.
318         * remote.c (remote_supports_btrace): Update parameters.
319         * target.c (target_supports_btrace): Update parameters.
320         * target.h (to_supports_btrace, target_supports_btrace): Update
321         parameters.
322         * target-delegates.c: Regenerate.
323         * target-debug.h (target_debug_print_enum_btrace_format): New.
324         * nat/linux-btrace.c
325         (kernel_supports_btrace): Rename into ...
326         (kernel_supports_bts): ... this.  Update users.  Update warning text.
327         (intel_supports_btrace): Rename into ...
328         (intel_supports_bts): ... this.  Update users.
329         (cpu_supports_btrace): Rename into ...
330         (cpu_supports_bts): ... this.  Update users.
331         (linux_supports_btrace): Update parameters.  Split into this and ...
332         (linux_supports_bts): ... this.
333         * nat/linux-btrace.h (linux_supports_btrace): Update parameters.
334
335 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
336
337         * Makefile.in (SFILES): Add common/btrace-common.c.
338         (COMMON_OBS): Add common/btrace-common.o.
339         (btrace-common.o): Add build rules.
340         * btrace.c (parse_xml_btrace): Update parameters.
341         (parse_xml_btrace_block): Set format field.
342         (btrace_add_pc, btrace_fetch): Use struct btrace_data.
343         (do_btrace_data_cleanup, make_cleanup_btrace_data): New.
344         (btrace_compute_ftrace): Split into this and...
345         (btrace_compute_ftrace_bts): ...this.
346         (btrace_stitch_trace): Split into this and...
347         (btrace_stitch_bts): ...this.
348         * btrace.h (parse_xml_btrace): Update parameters.
349         (make_cleanup_btrace_data): New.
350         * common/btrace-common.c: New.
351         * common/btrace-common.h: Include common-defs.h.
352         (btrace_block_s): Update comment.
353         (btrace_format): New.
354         (btrace_format_string): New.
355         (btrace_data_bts): New.
356         (btrace_data): New.
357         (btrace_data_init, btrace_data_fini, btrace_data_empty): New.
358         * remote.c (remote_read_btrace): Update parameters.
359         * target.c (target_read_btrace): Update parameters.
360         * target.h (target_read_btrace): Update parameters.
361         (target_ops)<to_read_btrace>: Update parameters.
362         * x86-linux-nat.c (x86_linux_read_btrace): Update parameters.
363         * target-delegates.c: Regenerate.
364         * target-debug (target_debug_print_struct_btrace_data_p): New.
365         * nat/linux-btrace.c (linux_read_btrace): Split into this and...
366         (linux_read_bts): ...this.
367         * nat/linux-btrace.h (linux_read_btrace): Update parameters.
368
369 2015-02-06  Doug Evans  <dje@google.com>
370
371         * remote-m32r-sdi.c: Include symfile.h.
372
373 2015-02-06  Doug Evans  <dje@google.com>
374
375         * symtab.h (clear_symtab_users, deduce_language_from_filename): Move
376         * symfile.h (clear_symtab_users, deduce_language_from_filename): ...
377         to here.
378
379 2015-02-06  Pedro Alves  <palves@redhat.com>
380
381         * linux-thread-db.c (find_new_threads_callback): Add debug output.
382
383 2015-02-06  Simon Marchi  <simon.marchi@ericsson.com>
384
385         PR gdb/15678
386         * breakpoint.c (map_breakpoint_numbers): Check for empty args string.
387         (enable_count_command): Check args for NULL value.
388
389 2015-02-05  Doug Evans  <xdje42@gmail.com>
390
391         * guile/scm-frame.c: Fix spelling errors in a comment.
392
393 2015-02-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
394
395         * python/python-internal.h (Py_hash_t): Define it for Python <3.2.
396         * python/py-value.c (valpy_fetch_lazy): Use it.  Remove cast to the
397         return type.
398
399 2015-02-04  Pedro Alves  <palves@redhat.com>
400
401         * linux-nat.c (handle_extended_wait): Don't resume LWPs here.
402         (wait_lwp): Don't call wait_lwp if linux_handle_extended_wait
403         returns true.
404         (resume_stopped_resumed_lwps): Don't check whether the thread is
405         marked as executing.
406         (linux_nat_wait_1): Use resume_stopped_resumed_lwps.
407
408 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
409
410         * regset.h (struct regset): Add flags field.
411         (REGSET_VARIABLE_SIZE): New value for a regset's flags field.
412         * corelow.c (get_core_register_section): Add warning if the size
413         exceeds the requested size and the regset does not have the
414         REGSET_VARIABLE_SIZE flag set.
415         * alphanbsd-tdep.c (alphanbsd_gregset): Add REGSET_VARIABLE_SIZE
416         flag.
417         * armbsd-tdep.c (armbsd_gregset): Likewise.
418         * hppa-hpux-tdep.c (hppa_hpux_regset): Likewise.
419         * hppaobsd-tdep.c (hppaobsd_gregset): Likewise.
420         * m68kbsd-tdep.c (m68kbsd_gregset): Likewise.
421         * mipsnbsd-tdep.c (mipsnbsd_gregset): Likewise.
422
423 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
424
425         * amd64-linux-tdep.c (amd64_linux_iterate_over_regset_sections):
426         For ".reg-xstate", explicitly specify the requested section size
427         via X86_XSTATE_SIZE instead of just 0 on input and
428         X86_XSTATE_MAX_SIZE on output.
429         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections):
430         Likewise.
431
432 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
433
434         PR corefiles/17808:
435         * gdbarch.sh (iterate_over_regset_sections_cb): Document this
436         function type, particularly its SIZE parameter.
437         * gdbarch.h: Regenerate.
438         * amd64-tdep.c (amd64_supply_fpregset): In gdb_assert, compare
439         actual against required size using ">=" instead of "==".
440         (amd64_collect_fpregset): Likewise.
441         * i386-tdep.c (i386_supply_gregset): Likewise.
442         (i386_collect_gregset): Likewise.
443         (i386_supply_fpregset): Likewise.
444         (i386_collect_fpregset): Likewise.
445         * mips-linux-tdep.c (mips_supply_gregset_wrapper): Likewise.
446         (mips_fill_gregset_wrapper): Likewise.
447         (mips_supply_fpregset_wrapper): Likewise.
448         (mips_fill_fpregset_wrapper): Likewise.
449         (mips64_supply_gregset_wrapper): Likewise.
450         (mips64_fill_gregset_wrapper): Likewise.
451         (mips64_supply_fpregset_wrapper): Likewise.
452         (mips64_fill_fpregset_wrapper): Likewise.
453         * mn10300-linux-tdep.c (am33_supply_gregset_method): Likewise.
454         (am33_supply_fpregset_method): Likewise.
455         (am33_collect_gregset_method): Likewise.
456         (am33_collect_fpregset_method): Likewise.
457
458 2015-02-04  Doug Evans  <dje@google.com>
459             Pedro Alves  <palves@redhat.com>
460             Eli Zaretskii  <eliz@gnu.org>
461
462         PR tui/17810
463         * tui/tui-command.c (tui_refresh_cmd_win): New function.
464         * tui/tui-command.c (tui_refresh_cmd_win): Declare.
465         * tui/tui-file.c: #include tui/tui-command.h.
466         (tui_file_fputs): Refresh command window if stream is not gdb_stdout.
467         (tui_file_flush): Refresh command window if stream is gdb_stdout.
468         * tui/tui-io.c (tui_puts): Remove calls to wrefresh, fflush.
469
470 2015-02-04  Pedro Alves  <palves@redhat.com>
471
472         Fix build breakage.
473         * event-loop.c (gdb_do_one_event): Add default switch case.
474
475 2015-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
476
477         Filter out inferior gcc option -fpreprocessed.
478         * compile/compile.c (filter_args): New function.
479         (get_args): Use it.
480
481 2015-02-03  Pedro Alves  <palves@redhat.com>
482
483         * event-loop.c: Don't declare nor define a queue type for
484         gdb_event_p.
485         (event_queue): Delete.
486         (create_event, create_file_event, gdb_event_xfree)
487         (initialize_event_loop, process_event): Delete.
488         (gdb_do_one_event): Return as soon as one event is handled.
489         (handle_file_event): Change prototype.  Used the passed in
490         file_handler pointer and ready_mask instead of looping over all
491         file handlers.
492         (gdb_wait_for_event): Update the poll/select timeouts before
493         blocking.  Run event handlers directly instead of queueing events.
494         Return as soon as one event is handled.
495         (struct async_event_handler_data): Delete.
496         (invoke_async_event_handler): Delete.
497         (check_async_event_handlers): Change return type to int.  Run
498         event handlers directly instead of queueing events.  Return as
499         soon as one event is handled.
500         (handle_timer_event): Delete.
501         (update_wait_timeout): New function, factored out from
502         poll_timers.
503         (poll_timers): Reimplement.
504         * event-loop.h (initialize_event_loop): Delete declaration.
505         * top.c (gdb_init): Don't call initialize_event_loop.
506
507 2015-02-03  Pedro Alves  <palves@redhat.com>
508
509         * event-loop.c (clear_async_event_handler): New function.
510         * event-loop.h (clear_async_event_handler): New declaration.
511         * record-btrace.c (record_btrace_async): New function.
512         (init_record_btrace_ops): Install record_btrace_async.
513         * record-full.c (record_full_async): New function.
514         (record_full_resume): Don't mark the async event source here.
515         (init_record_full_ops): Install record_full_async.
516         (record_full_core_resume): Don't mark the async event source here.
517         (init_record_full_core_ops): Install record_full_async.
518         * remote.c (remote_async): Mark and clear the async stop reply
519         queue event-loop token as appropriate.
520
521 2015-02-03  Pedro Alves  <palves@redhat.com>
522
523         * linux-nat.c (linux_child_follow_fork, linux_nat_wait_1): Use
524         target_is_async_p instead of target_can_async.
525         (linux_nat_wait): Use target_is_async_p instead of
526         target_can_async.  Don't enable async here.
527         * remote.c (interrupt_query, remote_wait, putpkt_binary): Use
528         target_is_async_p instead of target_can_async.
529
530 2015-02-02  Simon Marchi  <simon.marchi@ericsson.com>
531
532         * varobj.h (lang_varobj_ops): Mention which return values need
533         to be freed.
534
535 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
536
537         * dwarf2loc.c (dwarf2_evaluate_property): Add i18n marker.
538
539 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
540
541         PR gdb/17856:
542         * ada-lang.c (ada_lookup_symbol_list_worker): Do not re-cache
543         results found in the cache.
544
545 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
546
547         PR gdb/17854:
548         * ada-lang.c (ada_get_symbol_cache): Set pspace_data->sym_cache
549         when allocating a new one.
550
551 2015-02-01  Tom Tromey  <tom@tromey.com>
552
553         * MAINTAINERS: Remove myself.
554
555 2015-01-31  Doug Evans  <xdje42@gmail.com>
556
557         * dwarf2read.c (process_structure_scope): Update setting of
558         TYPE_VPTR_BASETYPE, TYPE_VPTR_FIELDNO.
559         * gdbtypes.c (internal_type_vptr_fieldno): New function.
560         (set_type_vptr_fieldno): New function.
561         (internal_type_vptr_basetype): New function.
562         (set_type_vptr_basetype): New function.
563         (get_vptr_fieldno): Update setting of TYPE_VPTR_FIELDNO,
564         TYPE_VPTR_BASETYPE.
565         (allocate_cplus_struct_type): Initialize vptr_fieldno.
566         (recursive_dump_type): Printing of vptr_fieldno, vptr_basetype ...
567         (print_cplus_stuff): ... moved here.
568         (copy_type_recursive): Don't copy TYPE_VPTR_BASETYPE.
569         * gdbtypes.h (struct main_type): Members vptr_fieldno, vptr_basetype
570         moved to ...
571         (struct cplus_struct_type): ... here.  All uses updated.
572         (TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE): Rewrite.
573         (internal_type_vptr_fieldno, set_type_vptr_fieldno): Declare.
574         (internal_type_vptr_basetype, set_type_vptr_basetype): Declare.
575         * stabsread.c (read_tilde_fields): Update setting of
576         TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE.
577
578 2015-01-31  Doug Evans  <xdje42@gmail.com>
579
580         * cp-valprint.c (cp_find_class_member): Rename parameter domain_p
581         to self_p.
582         (cp_print_class_member): Rename local domain to self_type.
583         * dwarf2read.c (quirk_gcc_member_function_pointer): Rename local
584         domain_type to self_type.
585         (set_die_type) <need_gnat_info>: Handle
586         TYPE_CODE_METHODPTR, TYPE_CODE_MEMBERPTR, TYPE_CODE_METHOD.
587         * gdb-gdb.py (StructMainTypePrettyPrinter): Handle
588         TYPE_SPECIFIC_SELF_TYPE.
589         * gdbtypes.c (internal_type_self_type): New function.
590         (set_type_self_type): New function.
591         (smash_to_memberptr_type): Rename parameter domain to self_type.
592         Update setting of TYPE_SELF_TYPE.
593         (smash_to_methodptr_type): Update setting of TYPE_SELF_TYPE.
594         (smash_to_method_type): Rename parameter domain to self_type.
595         Update setting of TYPE_SELF_TYPE.
596         (check_stub_method): Call smash_to_method_type.
597         (recursive_dump_type): Handle TYPE_SPECIFIC_SELF_TYPE.
598         (copy_type_recursive): Ditto.
599         * gdbtypes.h (enum type_specific_kind): New value
600         TYPE_SPECIFIC_SELF_TYPE.
601         (struct main_type) <type_specific>: New member self_type.
602         (struct cplus_struct_type) <fn_field.type>: Update comment.
603         (TYPE_SELF_TYPE): Rewrite.
604         (internal_type_self_type, set_type_self_type): Declare.
605         * gnu-v3-abi.c (gnuv3_print_method_ptr): Rename local domain to
606         self_type.
607         (gnuv3_method_ptr_to_value): Rename local domain_type to self_type.
608         * m2-typeprint.c (m2_range): Replace TYPE_SELF_TYPE with
609         TYPE_TARGET_TYPE.
610         * stabsread.c (read_member_functions): Mark methods with
611         TYPE_CODE_METHOD, not TYPE_CODE_FUNC.  Update setting of
612         TYPE_SELF_TYPE.
613
614 2015-01-31  Doug Evans  <xdje42@gmail.com>
615
616         * gdbtypes.h (TYPE_SELF_TYPE): Renamed from TYPE_DOMAIN_TYPE.
617         All uses updated.
618
619 2015-01-31  Doug Evans  <xdje42@gmail.com>
620
621         * gnu-v3-abi.c (gnuv3_dynamic_class): Assert only passed structs
622         or unions.  Return zero if union.
623         (gnuv3_get_vtable): Call check_typedef.  Assert only passed structs.
624         (gnuv3_rtti_type): Pass already-check_typedef'd value to
625         gnuv3_get_vtable.
626         (compute_vtable_size): Assert only passed structs.
627         (gnuv3_print_vtable): Don't call gnuv3_get_vtable for non-structs.
628
629 2015-01-31  Doug Evans  <xdje42@gmail.com>
630
631         * gdbtypes.c (copy_type_recursive): Handle all TYPE_SPECIFIC_FIELD
632         kinds.
633
634 2015-01-31  Gary Benson <gbenson@redhat.com>
635             Doug Evans  <dje@google.com>
636
637         PR cli/9007
638         PR cli/11920
639         PR cli/15548
640         * cli/cli-cmds.c (complete_command): Notify user if max-completions
641         reached.
642         * common/common-exceptions.h (enum errors)
643         <MAX_COMPLETIONS_REACHED_ERROR>: New value.
644         * completer.h (get_max_completions_reached_message): New declaration.
645         (max_completions): Likewise.
646         (completion_tracker_t): New typedef.
647         (new_completion_tracker): New declaration.
648         (make_cleanup_free_completion_tracker): Likewise.
649         (maybe_add_completion_enum): New enum.
650         (maybe_add_completion): New declaration.
651         (throw_max_completions_reached_error): Likewise.
652         * completer.c (max_completions): New global variable.
653         (new_completion_tracker): New function.
654         (free_completion_tracker): Likewise.
655         (make_cleanup_free_completion_tracker): Likewise.
656         (maybe_add_completions): Likewise.
657         (throw_max_completions_reached_error): Likewise.
658         (complete_line): Remove duplicates and limit result to max_completions
659         entries.
660         (get_max_completions_reached_message): New function.
661         (gdb_display_match_list): Handle max_completions.
662         (_initialize_completer): New declaration and function.
663         * symtab.c: Include completer.h.
664         (completion_tracker): New static variable.
665         (completion_list_add_name): Call maybe_add_completion.
666         (default_make_symbol_completion_list_break_on_1): Renamed from
667         default_make_symbol_completion_list_break_on.  Maintain
668         completion_tracker across calls to completion_list_add_name.
669         (default_make_symbol_completion_list_break_on): New function.
670         * top.c (init_main): Set rl_completion_display_matches_hook.
671         * tui/tui-io.c: Include completer.h.
672         (tui_old_rl_display_matches_hook): New static global.
673         (tui_rl_display_match_list): Notify user if max-completions reached.
674         (tui_setup_io): Save/restore rl_completion_display_matches_hook.
675         * NEWS (New Options): Mention set/show max-completions.
676
677 2015-01-31  Gary Benson  <gbenson@redhat.com>
678
679         * symtab.c (struct add_name_data) <code>: New field.
680         Updated comments.
681         (add_symtab_completions): New function.
682         (symtab_expansion_callback): Likewise.
683         (default_make_symbol_completion_list_break_on): Set datum.code.
684         Move minimal symbol scan before calling expand_symtabs_matching.
685         Scan known primary symtabs for externs and statics before calling
686         expand_symtabs_matching.  Pass symtab_expansion_callback as
687         expansion_notify argument to expand_symtabs_matching.  Do not scan
688         primary symtabs for externs and statics after calling
689         expand_symtabs_matching.
690
691 2015-01-31  Gary Benson  <gbenson@redhat.com>
692
693         * symfile.h (expand_symtabs_exp_notify_ftype): New typedef.
694         (struct quick_symbol_functions) <expand_symtabs_matching>:
695         New argument expansion_notify.  All uses updated.
696         (expand_symtabs_matching): New argument expansion_notify.
697         All uses updated.
698         * symfile-debug.c (debug_qf_expand_symtabs_matching):
699         Also print expansion notify.
700         * symtab.c (expand_symtabs_matching_via_partial): Call
701         expansion_notify whenever a partial symbol table is expanded.
702         * dwarf2read.c (dw2_expand_symtabs_matching): Call
703         expansion_notify whenever a symbol table is instantiated.
704
705 2015-01-31  Doug Evans  <xdje42@gmail.com>
706
707         * cli-out.c: #include completer.h, readline/readline.h.
708         (cli_mld_crlf, cli_mld_putch, cli_mld_puts): New functions.
709         (cli_mld_flush, cld_mld_erase_entire_line): Ditto.
710         (cli_mld_beep, cli_mld_read_key, cli_display_match_list): Ditto.
711         * cli-out.h (cli_display_match_list): Declare.
712         * completer.c (MB_INVALIDCH, MB_NULLWCH): New macros.
713         (ELLIPSIS_LEN): Ditto.
714         (gdb_get_y_or_n, gdb_display_match_list_pager): New functions.
715         (gdb_path_isdir, gdb_printable_part, gdb_fnwidth): Ditto.
716         (gdb_fnprint, gdb_print_filename): Ditto.
717         (gdb_complete_get_screenwidth, gdb_display_match_list_1): Ditto.
718         (gdb_display_match_list): Ditto.
719         * completer.h (mld_crlf_ftype, mld_putch_ftype): New typedefs.
720         (mld_puts_ftype, mld_flush_ftype, mld_erase_entire_line_ftype): Ditto.
721         (mld_beep_ftype, mld_read_key_ftype): Ditto.
722         (match_list_displayer): New struct.
723         (gdb_display_match_list): Declare.
724         * top.c (init_main): Set rl_completion_display_matches_hook.
725         * tui/tui-io.c: #include completer.h.
726         (printable_part, PUTX, print_filename, get_y_or_n): Delete.
727         (tui_mld_crlf, tui_mld_putch, tui_mld_puts): New functions.
728         (tui_mld_flush, tui_mld_erase_entire_line, tui_mld_beep): Ditto.
729         (tui_mld_getc, tui_mld_read_key): Ditto.
730         (tui_rl_display_match_list): Rewrite.
731         (tui_handle_resize_during_io): New arg for_completion.  All callers
732         updated.
733
734 2015-01-31  Doug Evans  <xdje42@gmail.com>
735
736         Add symbol lookup cache.
737         * NEWS: Document new options and commands.
738         * symtab.c (symbol_cache_key): New static global.
739         (DEFAULT_SYMBOL_CACHE_SIZE, MAX_SYMBOL_CACHE_SIZE): New macros.
740         (SYMBOL_LOOKUP_FAILED): New macro.
741         (symbol_cache_slot_state): New enum.
742         (block_symbol_cache): New struct.
743         (symbol_cache): New struct.
744         (new_symbol_cache_size, symbol_cache_size): New static globals.
745         (hash_symbol_entry, eq_symbol_entry): New functions.
746         (symbol_cache_byte_size, resize_symbol_cache): New functions.
747         (make_symbol_cache, free_symbol_cache): New functions.
748         (get_symbol_cache, symbol_cache_cleanup): New function.
749         (set_symbol_cache_size, set_symbol_cache_size_handler): New functions.
750         (symbol_cache_lookup, symbol_cache_clear_slot): New function.
751         (symbol_cache_mark_found, symbol_cache_mark_not_found): New functions.
752         (symbol_cache_flush, symbol_cache_dump): New functions.
753         (maintenance_print_symbol_cache): New function.
754         (maintenance_flush_symbol_cache): New function.
755         (symbol_cache_stats): New function.
756         (maintenance_print_symbol_cache_statistics): New function.
757         (symtab_new_objfile_observer): New function.
758         (symtab_free_objfile_observer): New function.
759         (lookup_static_symbol, lookup_global_symbol): Use symbol cache.
760         (_initialize_symtab): Init symbol_cache_key.  New parameter
761         maint symbol-cache-size.  New maint commands print symbol-cache,
762         print symbol-cache-statistics, flush-symbol-cache.
763         Install new_objfile, free_objfile observers.
764
765 2015-01-31  Joel Brobecker  <brobecker@adacore.com>
766
767         PR symtab/17855
768         * symfile.c (clear_symtab_users): Move call to breakpoint_re_set
769         to end.
770
771 2015-01-31  Doug Evans  <xdje42@gmail.com>
772
773         * NEWS: Mention inlined scripts in .debug_gdb_scripts section.
774         * auto-load.c: #include ctype.h.
775         (struct auto_load_pspace_info): Replace member loaded_scripts with
776         new members loaded_script_files, loaded_script_texts.
777         (auto_load_pspace_data_cleanup): Update.
778         (init_loaded_scripts_info): Update.
779         (get_auto_load_pspace_data_for_loading): Update.
780         (maybe_add_script_file): Renamed from maybe_add_script.  All callers
781         updated.
782         (maybe_add_script_text): New function.
783         (clear_section_scripts): Update.
784         (source_script_file, execute_script_contents): New functions.
785         (source_section_scripts): Add support for
786         SECTION_SCRIPT_ID_PYTHON_TEXT, SECTION_SCRIPT_ID_GUILE_TEXT.
787         (print_scripts): New function.
788         (auto_load_info_scripts): Also print inlined scripts.
789         (maybe_print_unsupported_script_warning): Renamed from
790         unsupported_script_warning_print.  All callers updated.
791         (maybe_print_script_not_found_warning): Renamed from
792         script_not_found_warning_print.  All callers updated.
793         * extension-priv.h (struct extension_language_script_ops): New member
794         objfile_script_executor.
795         * extension.c (ext_lang_objfile_script_executor): New function.
796         * extension.h (objfile_script_executor_func): New typedef.
797         (ext_lang_objfile_script_executor): Declare.
798         * guile/guile-internal.h (gdbscm_execute_objfile_script): Declare.
799         * guile/guile.c (guile_extension_script_ops): Update.
800         * guile/scm-objfile.c (gdbscm_execute_objfile_script): New function.
801         * python/python.c (python_extension_script_ops): Update.
802         (gdbpy_execute_objfile_script): New function.
803
804 2015-01-31  Eli Zaretskii  <eliz@gnu.org>
805
806         * tui/tui-io.c (tui_expand_tabs): New function.
807         (tui_puts, tui_redisplay_readline): Expand TABs into the
808         appropriate number of spaces.
809         * tui/tui-regs.c: Include tui-io.h.
810         (tui_register_format): Call tui_expand_tabs to expand TABs into
811         the appropriate number of spaces.
812         * tui/tui-io.h: Add prototype for tui_expand_tabs.
813
814 2015-01-30  Doug Evans  <dje@google.com>
815
816         * NEWS: "info source" command now display producer string if present.
817         * source.c (source_info): Print producer string if present.
818
819 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
820
821         * varobj.c (varobj_delete): Fix comment.
822
823 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
824
825         * varobj.c (create_child): Modify comment.
826
827 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
828
829         * ada-varobj.c (ada_number_of_children): Constify struct varobj *
830         parameter.
831         (ada_name_of_variable): Same.
832         (ada_path_expr_of_child): Same.
833         (ada_value_of_variable): Same.
834         (ada_value_is_changeable_p): Same.
835         (ada_value_has_mutated): Same.
836         * c-varobj.c (varobj_is_anonymous_child): Same.
837         (c_is_path_expr_parent): Same.
838         (c_number_of_children): Same.
839         (c_name_of_variable): Same.
840         (c_path_expr_of_child): Same.
841         (get_type): Same.
842         (c_value_of_variable): Same.
843         (cplus_number_of_children): Same.
844         (cplus_name_of_variable): Same.
845         (cplus_path_expr_of_child): Same.
846         (cplus_value_of_variable): Same.
847         * jv-varobj.c (java_number_of_children): Same.
848         (java_name_of_variable): Same.
849         (java_path_expr_of_child): Same.
850         (java_value_of_variable): Same.
851         * varobj.c (number_of_children): Same.
852         (name_of_variable): Same.
853         (is_root_p): Same.
854         (varobj_ensure_python_env): Same.
855         (varobj_get_objname): Same.
856         (varobj_get_expression): Same.
857         (varobj_get_display_format): Same.
858         (varobj_get_display_hint): Same.
859         (varobj_has_more): Same.
860         (varobj_get_thread_id): Same.
861         (varobj_get_frozen): Same.
862         (dynamic_varobj_has_child_method): Same.
863         (varobj_get_gdb_type): Same.
864         (is_path_expr_parent): Same.
865         (varobj_default_is_path_expr_parent): Same.
866         (varobj_get_language): Same.
867         (varobj_get_attributes): Same.
868         (varobj_is_dynamic_p): Same.
869         (varobj_get_child_range): Same.
870         (varobj_value_has_mutated): Same.
871         (varobj_get_value_type): Same.
872         (number_of_children): Same.
873         (name_of_variable): Same.
874         (check_scope): Same.
875         (varobj_editable_p): Same.
876         (varobj_value_is_changeable_p): Same.
877         (varobj_floating_p): Same.
878         (varobj_default_value_is_changeable_p): Same.
879
880 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
881
882         * varobj.c (varobj_get_path_expr): Set var->path_expr.
883         * c-varobj.c (c_path_expr_of_child): Set local var instead of
884         child->path_expr.
885         (cplus_path_expr_of_child): Same.
886
887 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
888
889         * mi-cmd-var.c (print_varobj): Free varobj_get_expression
890         result.
891         (mi_cmd_var_info_expression): Same.
892         * varobj.c (varobj_get_expression): Mention in the comment that
893         the result must by freed by the caller.
894
895 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
896
897         * mi/mi-cmd-var.c (mi_cmd_var_info_type): Free result of
898         varobj_get_type.
899         (varobj_update_one): Same.
900         * varobj.c (update_type_if_necessary): Free curr_type_str and
901         new_type_str.
902         (varobj_get_type): Specify in comment that the result needs to be
903         freed by the caller.
904
905 2015-01-29  Doug Evans  <dje@google.com>
906
907         PR symtab/17890
908         * dwarf2read.c (dwarf_decode_line_header): Punt if version > 4.
909
910 2015-01-25  Mark Wielaard  <mjw@redhat.com>
911
912         * dwarf2read.c (checkproducer): Call producer_is_gcc.
913         * utils.c (producer_is_gcc_ge_4): Likewise.
914         (producer_is_gcc): New function.
915         * utils.h (producer_is_gcc): New declaration.
916
917 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
918
919         * gdbtypes.h (struct dynamic_prop): New PROP_ADDR_OFFSET enum
920         kind.
921         * gdbtypes.c (resolve_dynamic_type_internal): Replace "addr"
922         parameter by "addr_stack" parameter.
923         (resolve_dynamic_range): Replace "addr" parameter by
924         "stack_addr" parameter.  Update function documentation.
925         Update code accordingly.
926         (resolve_dynamic_array, resolve_dynamic_union)
927         (resolve_dynamic_struct, resolve_dynamic_type_internal): Likewise.
928         (resolve_dynamic_type): Update code, following the changes made
929         to resolve_dynamic_type_internal's interface.
930         * dwarf2loc.h (struct property_addr_info): New.
931         (dwarf2_evaluate_property): Replace "address" parameter
932         by "addr_stack" parameter.  Adjust function documentation.
933         (struct dwarf2_offset_baton): New.
934         (struct dwarf2_property_baton): Update documentation of
935         field "referenced_type" to be more general. New field
936         "offset_info" in union data field.
937         * dwarf2loc.c (dwarf2_evaluate_property): Replace "address"
938         parameter by "addr_stack" parameter.  Adjust code accordingly.
939         Add support for PROP_ADDR_OFFSET properties.
940         * dwarf2read.c (attr_to_dynamic_prop): Add support for
941         DW_AT_data_member_location attributes as well.  Use case
942         statements instead of if/else condition.
943
944 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
945
946         * ada-varobj.c (ada_varobj_get_array_number_of_children):
947         Return zero if PARENT_VALUE is NULL and parent_type's
948         range type is dynamic.
949
950 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
951
952         * gdbtypes.c (is_dynamic_type_internal) <TYPE_CODE_RANGE>: Return
953         nonzero if the type's subtype is dynamic.
954         (resolve_dynamic_range): Also resolve the range's subtype.
955
956 2015-01-29  Alexander Klimov  <alserkli@inbox.ru>  (tiny patch)
957
958         Pushed by Joel Brobecker  <brobecker@adacore.com>.
959         * symfile.c (unmap_overlay_command): Initialize sec to NULL.
960
961 2015-01-27  Doug Evans  <dje@google.com>
962
963         * NEWS: Mention gdb.Objfile.username.
964         * python/py-objfile.c (objfpy_get_username): New function.
965         (objfile_getset): Add "username".
966
967 2015-01-24  Mark Wielaard  <mjw@redhat.com>
968
969         * stack.c (return_command): Markup warning message with _.
970
971 2015-01-24  Doug Evans  <xdje42@gmail.com>
972
973         * gdbtypes.h (TYPE_TYPE_SPECIFIC): Delete.
974
975 2015-01-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
976
977         Fix 100x slowdown regression on DWZ files.
978         * dwarf2read.c (struct dwarf2_per_objfile): Add line_header_hash.
979         (struct line_header): Add offset and offset_in_dwz.
980         (dwarf_decode_lines): Add parameter decode_mapping to the declaration.
981         (free_line_header_voidp): New declaration.
982         (line_header_hash, line_header_hash_voidp, line_header_eq_voidp): New
983         functions.
984         (dwarf2_build_include_psymtabs): Update dwarf_decode_lines caller.
985         (handle_DW_AT_stmt_list): Use line_header_hash.
986         (free_line_header_voidp): New function.
987         (dwarf_decode_line_header): Initialize offset and offset_in_dwz.
988         (dwarf_decode_lines): New parameter decode_mapping, use it.
989         (dwarf2_free_objfile): Free line_header_hash.
990
991 2015-01-23  Simon Marchi  <simon.marchi@ericsson.com>
992
993         PR gdb/17416
994         * valops.c (value_rtti_indirect_type): Catch exception thrown by
995         value_ind.
996
997 2015-01-15  Mark Wielaard  <mjw@redhat.com>
998
999         * dwarf2read.c (read_subroutine_type): Set TYPE_NO_RETURN from
1000         DW_AT_noreturn.
1001         * gdbtypes.h (struct func_type): Add is_noreturn field flag. Make
1002         calling_convention an 8 bit bit field.
1003         (TYPE_NO_RETURN): New macro.
1004         * infcmd.c (finish_command): Query if function does not return
1005         normally.
1006         * stack.c (return_command): Likewise.
1007
1008 2015-01-23  Pedro Alves  <palves@redhat.com>
1009
1010         * linux-nat.c (linux_is_async_p): New macro.
1011         (linux_nat_is_async_p):
1012         (linux_nat_terminal_inferior): Check whether the target can async
1013         instead of whether it is already async.
1014         (linux_nat_terminal_ours): Don't check whether the target is
1015         async.
1016         (linux_async_pipe): Use linux_is_async_p.
1017
1018 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1019
1020         * NEWS (Changes since GDB 7.9): Add 'thread apply all' option
1021         '-ascending'.
1022         * thread.c (tp_array_compar_ascending, tp_array_compar): New.
1023         (thread_apply_all_command): Parse CMD for tp_array_compar_ascending.
1024         Sort tp_array using tp_array_compar.
1025         (_initialize_thread): Extend thread_apply_all_command help.
1026
1027 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1028
1029         * corelow.c (core_open): Call also thread_command.
1030         * gdbthread.h (thread_command): New prototype moved from ...
1031         * thread.c (thread_command): ... here.
1032         (thread_command): Make it global.
1033
1034 2015-01-22  Pedro Alves  <palves@redhat.com>
1035
1036         * configure.ac [*mingw32*]: Check $curses_found instead of
1037         $prefer_curses.
1038         * configure: Regenerate.
1039         * windows-termcap.c: Remove HAVE_CURSES_H, HAVE_NCURSES_H and
1040         HAVE_NCURSES_NCURSES_H checks.
1041
1042 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
1043
1044         * tui/tui.c (tui_enable) [__MINGW32__]: If the call to 'newterm'
1045         fails with the 1st arg NULL, try again with "unknown".  Don't test
1046         the "cup" capability: it isn't supported by the Windows port of
1047         ncurses, but the Windows console driver is still capable of
1048         supporting TUI.
1049
1050 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1051
1052         * compile/compile.c (_initialize_compile): Use -fPIE for compile_args.
1053
1054 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
1055
1056         * Makefile.in (HFILES_NO_SRCDIR): Remove ada-varobj.h.
1057         (ALLDEPFILES): Remove irix5-nat.c.  These two are part of the
1058         reason that "make TAGS" is broken.
1059
1060 2015-01-22  Chen Gang  <gang.chen.5i5j@gmail.com>
1061
1062         * hppa-tdep.c (inst_saves_gr): Fix logical working flow issues
1063         and check additional store instructions.
1064
1065 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
1066
1067         * MAINTAINERS (Write After Approval): Add "Wei-cheng Wang".
1068
1069 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
1070
1071         * ppc-linux-tdep.c (ppc_skip_trampoline_code,
1072         ppc_canonicalize_syscall, ppc_linux_syscall_record,
1073         ppc_linux_record_signal, ppc_init_linux_record_tdep): Add comments.
1074         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
1075         * rs6000-tdep.c (rs6000_epilogue_frame_cache,
1076         rs6000_epilogue_frame_this_id, rs6000_epilogue_frame_prev_register,
1077         rs6000_epilogue_frame_sniffer, ppc_record_vsr, ppc_process_record_op4,
1078         ppc_process_record_op19, ppc_process_record_op31,
1079         ppc_process_record_op59, ppc_process_record_op60,
1080         ppc_process_record_op63): Likewise.
1081
1082 2015-01-20  Joel Brobecker  <brobecker@adacore.com>
1083
1084         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason_string)
1085         (linux_ptrace_test_ret_to_nx): Use safe_strerror instead of
1086         strerror.
1087
1088 2015-01-20  Wei-cheng Wang  <cole945@gmail.com>
1089
1090         * rs6000-tdep.c (ppc_process_record_op4, ppc_process_record_op19,
1091         ppc_process_record_op31, ppc_process_record_op59,
1092         ppc_process_record_op60, ppc_process_record_op63,
1093         ppc_process_record): Fix -Wformat warning.
1094         * rs6000-tdep.c (rs6000_epilogue_frame_cache, ppc_process_record_op60):
1095         Remove unused variables.
1096
1097 2015-01-20  Chen Gang  <gang.chen.5i5j@gmail.com>
1098
1099         * MAINTAINERS (Write After Approval): Add "Chen Gang".
1100
1101 2015-01-19  Eli Zaretskii  <eliz@gnu.org>
1102
1103         * configure.ac [*mingw32*]: Only add windows-termcap.o to
1104         CONFIG_OBS if not building with a curses library.
1105         * configure: Regenerate.
1106
1107         * windows-termcap.c: Include defs.h.  Make the whole body empty if
1108         either one of HAVE_CURSES_H or HAVE_NCURSES_H or
1109         HAVE_NCURSES_NCURSES_H is defined.
1110
1111 2015-01-19  Joel Brobecker  <brobecker@adacore.com>
1112
1113         * rs6000-tdep.c (rs6000_gdbarch_init): Move divide operator
1114         from end of line to start of next line.
1115
1116 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
1117
1118         * ppc-linux-tdep.c (ppc_skip_trampoline_code):
1119         Scan PLT stub backward for reverse debugging.
1120         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
1121
1122 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
1123             Ulrich Weigand  <uweigand@de.ibm.com>
1124
1125         * configure.tgt (powerpc*-*-linux): Add linux-record.o to
1126         gdb_target_obs.
1127         (ppc_linux_record_tdep, ppc64_linux_record_tdep): New for linux syscall
1128         record.
1129         (ppc_canonicalize_syscall, ppc_linux_syscall_record,
1130         ppc_linux_record_signal, ppc_init_linux_record_tdep): New functions.
1131         (ppc_linux_init_abi): Set process_record, process_record_signal.
1132         * ppc-tdep.h (struct gdbarch_tdep): Add ppc_syscall_record and
1133         ppc_linux_record_tdep to gdbarch_tdep.
1134         (ppc_process_record): New declaration.
1135         * rs6000-tdep.c (ppc_record_vsr, ppc_process_record_op4,
1136         ppc_process_record_op19, ppc_process_record_op31,
1137         ppc_process_record_op59, ppc_process_record_op60,
1138         ppc_process_record_op63, ppc_process_record): New functions.
1139
1140 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
1141
1142         * rs6000-tdep.c (rs6000_in_function_epilogue_p): Rename to
1143         rs6000_in_function_epilogue_frame_p and add an argument
1144         for frame_info.
1145         (rs6000_epilogue_frame_cache, rs6000_epilogue_frame_this_id,
1146         rs6000_epilogue_frame_prev_register, rs6000_epilogue_frame_sniffer):
1147         New functions.
1148         (rs6000_epilogue_frame_unwind): New.
1149         (rs6000_gdbarch_init): Append epilogue unwinder.
1150
1151 2015-01-16  Sergio Durigan Junior  <sergiodj@redhat.com>
1152
1153         * nat/linux-personality.c: Replace "#ifndef
1154         HAVE_DECL_ADDR_NO_RANDOMIZE" by "#if
1155         !HAVE_DECL_ADDR_NO_RANDOMIZE", fixing a regression in RHEL-5
1156         systems.
1157
1158 2015-01-16  Eli Zaretskii  <eliz@gnu.org>
1159
1160         * tui/tui-win.c (tui_rehighlight_all, tui_set_var_cmd): New
1161         functions.
1162         (_initialize_tui_win) <border-kind, border-mode>:
1163         <active-border-mode>: Use tui_set_var_cmd as the "set" function.
1164         (tui_set_tab_width_command): Fix the commentary.
1165
1166         * tui/tui-win.h: Add prototype for tui_rehighlight_all.
1167
1168         * tui/tui-win.c (tui_scroll_left_command, tui_scroll_right_command):
1169         Doc fix.
1170         (tui_set_tab_width_command): Delete and recreate the source and
1171         the disassembly windows, to show the effect of the changed tab
1172         size immediately.
1173
1174         * tui/tui-data.h (LINE_PREFIX): Make shorter
1175         (MAX_PID_WIDTH): Enlarge from 14 to 19, to leave enough space for
1176         "Thread NNNNN.XXXX" thread ID notation on Windows.
1177
1178 2015-01-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
1179
1180         Fix gcc-5 compilation.
1181         * hppa-tdep.c (inst_saves_gr): Fix parentheses typo.
1182
1183 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
1184
1185         * Makefile.in (HFILES_NO_SRCDIR): Add nat/linux-personality.h.
1186         (linux-personality.o): New rule.
1187         * common/common-defs.h: Include <stdint.h>.
1188         * config/aarch64/linux.mh (NATDEPFILES): Include
1189         linux-personality.o.
1190         * config/alpha/alpha-linux.mh (NATDEPFILES): Likewise.
1191         * config/arm/linux.mh (NATDEPFILES): Likewise.
1192         * config/i386/linux64.mh (NATDEPFILES): Likewise.
1193         * config/i386/linux.mh (NATDEPFILES): Likewise.
1194         * config/ia64/linux.mh (NATDEPFILES): Likewise.
1195         * config/m32r/linux.mh (NATDEPFILES): Likewise.
1196         * config/m68k/linux.mh (NATDEPFILES): Likewise.
1197         * config/mips/linux.mh (NATDEPFILES): Likewise.
1198         * config/pa/linux.mh (NATDEPFILES): Likewise.
1199         * config/powerpc/linux.mh (NATDEPFILES): Likewise.
1200         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Likewise.
1201         * config/powerpc/spu-linux.mh (NATDEPFILES): Likewise.
1202         * config/s390/linux.mh (NATDEPFILES): Likewise.
1203         * config/sparc/linux64.mh (NATDEPFILES): Likewise.
1204         * config/sparc/linux.mh (NATDEPFILES): Likewise.
1205         * config/tilegx/linux.mh (NATDEPFILES): Likewise.
1206         * config/xtensa/linux.mh (NATDEPFILES): Likewise.
1207         * defs.h: Remove #include <stdint.h> (moved to
1208         common/common-defs.h).
1209         * linux-nat.c: Include nat/linux-personality.h.  Remove #include
1210         <sys/personality.h>; do not define ADDR_NO_RANDOMIZE (moved to
1211         nat/linux-personality.c).
1212         (linux_nat_create_inferior): Remove code to disable address space
1213         randomization (moved to nat/linux-personality.c).  Create cleanup
1214         to disable address space randomization.
1215         * nat/linux-personality.c: New file.
1216         * nat/linux-personality.h: Likewise.
1217
1218 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
1219
1220         * Makefile.in (ALLDEPFILES): Including common/mingw-strerror.c and
1221         common/posix-strerror.c.
1222         (posix-strerror.o): New rule.
1223         (mingw-strerror.o): Likewise.
1224         * common/common-utils.h (safe_strerror): Move prototype to here,
1225         from utils.h.
1226         * common/common.host: New file.
1227         * common/mingw-strerror.c: Likewise.
1228         * common/posix-strerror.c: Likewise.
1229         * configure: Regenerated.
1230         * configure.ac: Source common/common.host.  Add variable
1231         common_host_obs to gdb_host_obs.
1232         * contrib/ari/gdb_ari.sh: Mention gdb/common/mingw-strerror.c and
1233         gdb/common/posix-strerror.c when warning about the use of
1234         strerror.
1235         * mingw-hdep.c (safe_strerror): Remove definition; move it to
1236         common/mingw-strerror.c.
1237         * posix-hdep.c (safe_strerror): Remove definition; move it to
1238         common/posix-hdep.c.
1239         * utils.h (safe_strerror): Remove prototype; move to
1240         common/common-utils.h.
1241
1242 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
1243
1244         GDB 7.8.2 released.
1245
1246 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
1247
1248         * ada-lang.c (ada_array_bound_from_type): Ignore array's parallel
1249         ___XA type if the array has already been fixed.
1250
1251 2015-01-14  Yao Qi  <yao@codesourcery.com>
1252
1253         * Makefile.in (ppc-linux.o): New rule.
1254         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Add ppc-linux.o.
1255         * configure.ac: AC_CHECK_FUNCS(getauxval).
1256         * config.in: Re-generated.
1257         * configure: Re-generated.
1258         * nat/ppc-linux.h [__powerpc64__] (ppc64_64bit_inferior_p):
1259         Declare.
1260         * nat/ppc-linux.c: New file.
1261         * ppc-linux-nat.c (ppc_linux_target_wordsize) [__powerpc64__]:
1262         Call ppc64_64bit_inferior_p.
1263
1264 2015-01-14  Yao Qi  <yao@codesourcery.com>
1265
1266         * ppc-linux-nat.c (PT_ORIG_R3, PT_TRAP): Move to
1267         nat/ppc-linux.h.
1268         (PPC_FEATURE_CELL, PPC_FEATURE_BOOKE): Likewise.
1269         (PPC_FEATURE_HAS_DFP): Likewise.
1270         (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
1271         (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
1272         (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
1273         Include "nat/ppc-linux.h".
1274         * nat/ppc-linux.h: New file.
1275         * Makefile.in (HFILES_NO_SRCDIR): Add nat/ppc-linux.h.
1276
1277 2015-01-14  Pedro Alves  <palves@redhat.com>
1278
1279         PR gdb/17525
1280         * breakpoint.c: Include "interps.h".
1281         (bpstat_do_actions_1): Also check whether the interpreter is
1282         async.
1283
1284 2015-01-14  Pedro Alves  <palves@redhat.com>
1285
1286         PR cli/17828
1287         * infrun.c (reinstall_readline_callback_handler_cleanup): Don't
1288         reinstall if the interpreter is sync.
1289
1290 2015-01-13  Doug Evans  <dje@google.com>
1291
1292         * objfiles.c (objfile_filename): New function.
1293         * objfiles.h (objfile_filename): Declare it.
1294         (objfile_name): Add function comment.
1295         * python/py-objfile.c (objfpy_lookup_objfile_by_name): Try both the
1296         bfd file name (which may be realpath'd), and the original name.
1297
1298 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1299
1300         * NEWS: Create a new section for the next release branch.
1301         Rename the section of the current branch, now that it has
1302         been cut.
1303
1304 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1305
1306         GDB 7.9 branch created (92fc2e6978d9a7c8324c7e851dbee59e22ec7a37):
1307         * version.in: Bump version to 7.9.50.DATE-cvs.
1308
1309 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1310
1311         * nat/linux-procfs.c (linux_proc_attach_tgid_threads):
1312         Remove trailing new-line in argument of call to warning.
1313
1314 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1315
1316         * linux-nat.c (attach_proc_task_lwp_callback): Remove trailing
1317         new-line in argument of call to "warning".
1318
1319 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1320
1321         * ada-lang.c (ada_lookup_symbol_nonlocal): If name not found
1322         in static block, then try searching for primitive types.
1323
1324 2015-01-12  Patrick Palka  <patrick@parcs.ath.cx>
1325
1326         * top.h (gdb_add_history): Declare.
1327         * top.c (command_count): New variable.
1328         (gdb_add_history): New function.
1329         (gdb_safe_append_history): New static function.
1330         (quit_force): Call it.
1331         (command_line_input): Use gdb_add_history instead of
1332         add_history.
1333         * event-top.c (command_line_handler): Likewise.
1334
1335 2015-01-12  James Clarke  <jrtc27@jrtc27.com>  (tiny patch)
1336
1337         PR gdb/17046
1338         * darwin-nat.c: Replace <machine/setjmp.h> #include by
1339         <setjmp.h> #include.
1340
1341 2015-01-11  Doug Evans  <xdje42@gmail.com>
1342
1343         * dwarf2read.c (compute_delayed_physnames): Use TYPE_FN_FIELD_PHYSNAME.
1344
1345 2015-01-11  Doug Evans  <xdje42@gmail.com>
1346
1347         PR gdb/15830
1348         * NEWS: The "maint demangle" command is renamed as "demangle".
1349         * demangle.c: #include cli/cli-utils.h, language.h.
1350         (demangle_command): New function.
1351         (_initialize_demangle): Add new command "demangle".
1352         * maint.c (maintenance_demangle): Stub out.
1353         (_initialize_maint_cmds): Update help text for "maint demangle",
1354         and mark as deprecated.
1355
1356 2015-01-11  Mark Kettenis  <kettenis@gnu.org>
1357
1358         * inf-ptrace.c (inf_ptrace_follow_fork): Adjust now that
1359         inferior_thread is a function.
1360
1361 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
1362
1363         * Makefile.in (.y.c): Don't munge yacc's #line
1364         directives.
1365
1366 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
1367
1368         * utils.c (defaulted_query): Rewrite to use gdb_readline_wrapper
1369         to prompt for input.
1370         * tui/tui-hooks.c (tui_query_hook): Remove.
1371         (tui_install_hooks): Don't set deprecated_query_hook.
1372         * tui/tui-io.c (tui_redisplay_readline): Fix off-by-one error in
1373         height calculation.  Always update the command window's cur_line.
1374
1375 2015-01-09  Pedro Alves  <palves@redhat.com>
1376
1377         * breakpoint.c (hardware_breakpoint_inserted_here_p): New
1378         function.
1379         * breakpoint.h (hardware_breakpoint_inserted_here_p): New
1380         declaration.
1381         * linux-nat.c (linux_nat_status_is_event): Move higher up in file.
1382         (linux_resume_one_lwp): Store the thread's PC.  Adjust to clear
1383         stop_reason.
1384         (check_stopped_by_watchpoint): New function.
1385         (save_sigtrap): Reimplement.
1386         (linux_nat_stopped_by_watchpoint): Adjust.
1387         (linux_nat_lp_status_is_event): Delete.
1388         (stop_wait_callback): Only call save_sigtrap after storing the
1389         pending status.
1390         (status_callback): If the thread had been stopped for a breakpoint
1391         that has since been removed, discard the event and resume the LWP.
1392         (count_events_callback, select_event_lwp_callback): Use
1393         lwp_status_pending_p instead of linux_nat_lp_status_is_event.
1394         (cancel_breakpoint): Rename to ...
1395         (check_stopped_by_breakpoint): ... this.  Record whether the LWP
1396         stopped for a software breakpoint or hardware breakpoint.
1397         (select_event_lwp): Only give preference to the stepping LWP in
1398         all-stop mode.  Adjust comments.
1399         (stop_and_resume_callback): Remove references to new_pending_p.
1400         (linux_nat_filter_event): Likewise.  Leave exit events of the
1401         leader thread pending here.  Handle signal short circuiting here.
1402         Only call save_sigtrap after storing the pending waitstatus.
1403         (linux_nat_wait_1): Remove 'retry' label.  Remove references to
1404         new_pending.  Don't handle leaving events the caller is not
1405         interested in pending here, nor handle signal short-circuiting
1406         here.  Also give equal priority to all LWPs that have had events
1407         in non-stop mode.  If reporting a software breakpoint event,
1408         unadjust the LWP's PC.
1409         * linux-nat.h (enum lwp_stop_reason): New.
1410         (struct lwp_info) <stop_pc>: New field.
1411         (struct lwp_info) <stopped_by_watchpoint>: Delete field.
1412         (struct lwp_info) <stop_reason>: New field.
1413         * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust.
1414
1415 2015-01-09  Pedro Alves  <palves@redhat.com>
1416
1417         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
1418         Set the LWP's 'resumed' flag.
1419
1420 2015-01-09  Pedro Alves  <palves@redhat.com>
1421
1422         * linux-nat.c (linux_resume_one_lwp): New function.
1423         (resume_lwp): Use lwp_status_pending_p and linux_resume_one_lwp.
1424         (linux_nat_resume): Use lwp_status_pending_p and
1425         linux_resume_one_lwp.
1426         (linux_handle_syscall_trap): Use linux_resume_one_lwp.
1427         (linux_handle_extended_wait): Use linux_resume_one_lwp.
1428         (status_callback, running_callback): Use lwp_status_pending_p.
1429         (lwp_status_pending_p): New function.
1430         (stop_and_resume_callback): Use lwp_status_pending_p.
1431         (linux_nat_filter_event): Use linux_resume_one_lwp.
1432         (linux_nat_wait_1): Always use status_callback to look for an LWP
1433         with a pending status.  Use linux_resume_one_lwp.
1434         (resume_stopped_resumed_lwps): Use lwp_status_pending_p and
1435         linux_resume_one_lwp.
1436
1437 2015-01-09  Pedro Alves  <palves@redhat.com>
1438
1439         * breakpoint.c (bp_location_inserted_here_p): New function,
1440         factored out from ...
1441         (breakpoint_inserted_here_p): ... here.  Use
1442         ALL_BP_LOCATIONS_AT_ADDR.
1443         (software_breakpoint_inserted_here_p): Use
1444         bp_location_inserted_here_p and ALL_BP_LOCATIONS_AT_ADDR.
1445
1446 2014-01-09  Pedro Alves  <palves@redhat.com>
1447
1448         Skip enabling event reporting if the kernel supports
1449         PTRACE_EVENT_CLONE.
1450         * linux-thread-db.c: Include "nat/linux-ptrace.h".
1451         (thread_db_use_events): New function.
1452         (try_thread_db_load_1): Check thread_db_use_events before enabling
1453         event reporting.
1454         (update_thread_state): New function.
1455         (attach_thread): Use it.  Check thread_db_use_events before
1456         enabling event reporting.
1457         (thread_db_detach): Check thread_db_use_events before disabling
1458         event reporting.
1459         (find_new_threads_callback): Check thread_db_use_events before
1460         enabling event reporting.  Update the thread's state if not using
1461         libthread_db events.
1462
1463 2015-01-09  Pedro Alves  <palves@redhat.com>
1464
1465         * linux-nat.c (lin_lwp_attach_lwp): Assert that the lwp id we're
1466         about to wait for is > 0.
1467         * linux-thread-db.c (find_new_threads_callback): Ignore thread if
1468         the kernel thread ID is -1.
1469
1470 2015-01-09  Pedro Alves  <palves@redhat.com>
1471
1472         * linux-nat.c (attach_proc_task_lwp_callback): New function.
1473         (linux_nat_attach): Use linux_proc_attach_tgid_threads.
1474         (wait_lwp, linux_nat_filter_event): If not set yet, set the lwp's
1475         ptrace option flags.
1476         * linux-nat.h (struct lwp_info) <must_set_ptrace_flags>: New
1477         field.
1478         * nat/linux-procfs.c: Include <dirent.h>.
1479         (linux_proc_get_int): New parameter "warn".  Handle it.
1480         (linux_proc_get_tgid): Adjust.
1481         (linux_proc_get_tracerpid): Rename to ...
1482         (linux_proc_get_tracerpid_nowarn): ... this.
1483         (linux_proc_pid_get_state): New function, factored out from
1484         (linux_proc_pid_has_state): ... this.  Add new parameter "warn"
1485         and handle it.
1486         (linux_proc_pid_is_gone): New function.
1487         (linux_proc_pid_is_stopped): Adjust.
1488         (linux_proc_pid_is_zombie_maybe_warn)
1489         (linux_proc_pid_is_zombie_nowarn): New functions.
1490         (linux_proc_pid_is_zombie): Use
1491         linux_proc_pid_is_zombie_maybe_warn.
1492         (linux_proc_attach_tgid_threads): New function.
1493         * nat/linux-procfs.h (linux_proc_get_tgid): Update comment.
1494         (linux_proc_get_tracerpid): Rename to ...
1495         (linux_proc_get_tracerpid_nowarn): ... this, and update comment.
1496         (linux_proc_pid_is_gone): New declaration.
1497         (linux_proc_pid_is_zombie): Update comment.
1498         (linux_proc_pid_is_zombie_nowarn): New declaration.
1499         (linux_proc_attach_lwp_func): New typedef.
1500         (linux_proc_attach_tgid_threads): New declaration.
1501         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason): Adjust to
1502         use nowarn functions.
1503         (linux_ptrace_attach_fail_reason_string): Move here from
1504         gdbserver/linux-low.c and rename.
1505         (ptrace_supports_feature): If the current ptrace options are not
1506         known yet, check them now, instead of asserting.
1507         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason_string):
1508         Declare.
1509
1510 2015-01-09  Pedro Alves  <palves@redhat.com>
1511
1512         * linux-thread-db.c (thread_db_find_new_threads_silently)
1513         (try_thread_db_load_1, try_thread_db_load, thread_db_load_search)
1514         (find_new_threads_once): Print debug output on gdb_stdlog.
1515
1516 2015-01-09  Chen Gang  <gang.chen.5i5j@gmail.com>
1517             Pedro Alves  <palves@redhat.com>
1518
1519         * compile/compile.c: Include "gdb_wait.h".
1520         (do_rmdir): Check return value, and free 'zap'.
1521
1522 2015-01-08  Pedro Alves  <palves@redhat.com>
1523             Yao Qi  <yao@codesourcery.com>
1524
1525         * dwarf2loc.c (indirect_pieced_value): Don't call
1526         gdb_sign_extend.  Call extract_signed_integer instead.
1527         * utils.c (gdb_sign_extend): Remove.
1528         * utils.h (gdb_sign_extend): Remove declaration.
1529
1530 2015-01-07  Pierre Muller  <muller@sourceware.org>
1531
1532         PR symtab/17811
1533         * stabsread.c (define_symbol): Set language for C++ special symbols.
1534
1535 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
1536
1537         * inflow.c (initial_gdb_ttystate): Tweak comment.
1538
1539 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
1540
1541         * inflow.c (set_initial_gdb_ttystate): Add empty line after
1542         comment documenting function.
1543
1544 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
1545
1546         * terminal.h (set_initial_gdb_ttystate): Declare.
1547         * inflow.c (initial_gdb_ttystate): New static variable.
1548         (set_initial_gdb_ttystate): New setter.
1549         (child_terminal_init_with_pgrp): Copy initial_gdb_ttystate
1550         instead of our current terminal state.
1551         * top.c (gdb_init): Call set_initial_gdb_ttystate.
1552
1553 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
1554
1555         * guile/scm-type.c (tyscm_array_1): Add comment.
1556         * python/py-type.c (typy_array_1): Add comment.
1557
1558 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
1559
1560         * guile/scm-type.c (tyscm_array_1): Do not raise out-of-range
1561         error if N2 is equal to N1 - 1.
1562
1563 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
1564
1565         * python/py-type.c (typy_array_1): Do not raise negative-length
1566         exception if N2 is equal to N1 - 1.
1567
1568 2015-01-03  Doug Evans  <xdje42@gmail.com>
1569
1570         * c-exp.y: Whitespace cleanup.
1571         (classify_inner_name): Remove extra ;.
1572
1573 2015-01-02  Maciej W. Rozycki  <macro@codesourcery.com>
1574
1575         * mips-tdep.c (mips32_scan_prologue): Keep the extracted stack
1576         offset signed.
1577
1578 2015-01-02  Doug Evans  <dje@google.com>
1579
1580         * dwarf2read.c (setup_type_unit_groups): Remove outdated comment.
1581
1582 2015-01-02  Doug Evans  <dje@google.com>
1583
1584         * symtab.h (struct symbol): Fix typo in comment.
1585
1586 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1587
1588         Update year range in copyright notice of all files.
1589
1590 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1591
1592         * top.c (print_gdb_version): Update copyright year to 2015.
1593
1594 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1595
1596         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2014.
1597
1598 For older changes see ChangeLog-2014.
1599 \f
1600 Local Variables:
1601 mode: change-log
1602 left-margin: 8
1603 fill-column: 74
1604 version-control: never
1605 coding: utf-8
1606 End: