* infrun.c (handle_inferior_event): Update comment around trying
[binutils-gdb.git] / gdb / ChangeLog
blob3d97324ccde4c87a192b295ea68673209312588d
1 2009-06-10  Pedro Alves  <pedro@codesourcery.com>
3         * infrun.c (handle_inferior_event): Update comment around trying
4         to revert back to a stepping thread that has exited.
6 2009-06-10  Cary Coutant  <ccoutant@google.com>
8         * dwarf2read.c (dwarf_decode_lines): Recognize and ignore
9         DW_LNE_set_discriminator.
11 2009-06-10  Pierre Muller  <muller@ics.u-strasbg.fr>
13         * breakpoint.c: ARI fixes.
14         (create_overlay_event_breakpoint): Avoid assignment inside if statement.
15         (print_one_breakpoint_location): Likewise.
16         (create_longjmp_breakpoint): Likewise.
17         (tracepoint_save_command): Likewise
18         (bpstat_find_step_resume_breakpoint): No operator at end of line.
19         (bpstat_stop_status): Likewise.
20         (describe_other_breakpoints): Likewise.
21         (hw_watchpoint_used_count): Likewise.
22         (expand_line_sal_maybe): Likewise.
23         (break_command_really): Likewise.
24         (delete_command): Likewise.
25         (do_enable_breakpoint): Likewise.
26         (delete_trace_command): Likewise.
27         (catch_exception_command_1): Likewise and remove extra parentheses.
29 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
31         * breakpoint.c (_initialize_breakpoint): Remove "bu" command alias of
32         "ubreak" command that does not exist.
34 2009-06-08  Pierre Muller  <muller@ics.u-strasbg.fr>
36         * cli/cli-decode.c (add_alias_cmd): Correct assertion.
38 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
40         * hppa-tdep.c (_initialize_hppa_tdep): Add declaration.
42 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
44         * procfs.h: New.
45         * proc-utils.h (procfs_first_available): Don't declare here.
46         * sol-thread.c: Include procfs.h instead of sys/procfs.h and
47         proc-utils.h.
48         * procfs.c: Include procfs.h.
49         (procfs_target): Make it public.  Don't register
50         procfs_can_use_hw_breakpoint here.
51         (proc_set_watchpoint): Check for PCWATCH or PIOCSWATCH being
52         defined instead of TARGET_HAS_HARDWARE_WATCHPOINTS.
53         (procfs_can_use_hw_breakpoint): Remove check of
54         TARGET_HAS_HARDWARE_WATCHPOINTS.
55         (procfs_use_watchpoints): Register procfs_can_use_hw_breakpoint
56         here.
57         (_initialize_procfs): Don't add the procfs target here.
59         * i386-sol2-nat.c: Include target.h and procfs.h.
60         (_initialize_amd64_sol2_nat): Install the procfs target here,
61         customized with watchpoints support.
62         * irix5-nat.c: Include target.h.
63         (_initialize_core_irix5): Rename to ...
64         (_initialize_irix5_nat): ... this.  Install the procfs target
65         here, customized with watchpoints support.
66         * alpha-nat.c: Include procfs.h.
67         (_initialize_core_alpha): Rename to...
68         (_initialize_alpha_nat): ... this.  Install the procfs target
69         here, customized with watchpoints support.
70         * sparc-sol2-nat.c: Include target.h and procfs.h.
71         (_initialize_sparc_sol2_nat): New.
73         * config/i386/nm-i386sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
74         * config/sparc/nm-sol2.h (TARGET_HAS_HARDWARE_WATCHPOINTS): Delete.
75         * config/mips/irix5.mh (NAT_FILE): Delete.
76         * config/mips/irix6.mh (NAT_FILE): Delete.
77         * config/mips/nm-irix5.h: Delete.
79 20009-06-07  Pedro  Alves  <pedro@codesourcery.com>
81         * auxv.c (procfs_xfer_auxv): Change type of the `object' argument
82         to enum target_object.  Cleanup comments.
83         * auxv.h: Include "target.h".  Cleanup comments to not mention
84         NATIVE_XFER_AUXV anymore.
86 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
88         * inferior.h (procfs_first_available): Move declaration to...
89         * proc-utils.h: ... here.
90         * sol-thread.c: Include procfs.h and proc-utils.h.
92 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
94         * inferior.h (proc_iterate_over_mappings): Delete declaration.
95         * nto-tdep.h (proc_iterate_over_mappings): Delete declaration.
96         * procfs.c (proc_iterate_over_mappings): Delete.
98 2009-06-07  Pedro Alves  <pedro@codesourcery.com>
100         * target.h (struct target_ops): Make to_has_all_memory,
101         to_has_memory, to_has_stack, to_has_registers and to_has_execution
102         methods instead of variables.
103         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1)
104         (target_has_registers_1, target_has_execution_1): Declare
105         functions.
106         (target_has_all_memory): Rewrite to call target_has_all_memory_1.
107         (target_has_memory): Rewrite to call target_has_memory_1.
108         (target_has_stack): Rewrite to call target_has_all_stack_1.
109         (target_has_registers): Rewrite to call target_has_registers_1.
110         (target_has_execution): Rewrite to call target_has_execution_1.
111         (default_child_has_all_memory, default_child_has_memory)
112         (default_child_has_stack, default_child_has_registers)
113         (default_child_has_execution): Declare.
114         (target_mark_running, target_mark_exited): Delete declarations.
115         * target.c (default_child_has_all_memory,
116         default_child_has_memory, default_child_has_stack,
117         default_child_has_registers, default_child_has_execution): New.
118         (target_has_all_memory_1, target_has_memory_1, target_has_stack_1,
119         target_has_registers_1, target_has_execution_1): New.
120         (add_target): Default the to_has_all_memory, to_has_all_memory,
121         to_has_memory, to_has_stack, to_has_registers and to_has_execution
122         callbacks to return 0.
123         (update_current_target): Do not inherit to_has_all_memory,
124         to_has_memory, to_has_stack, to_has_registers or to_has_execution.
125         (target_mark_running, target_mark_exited): Delete.
126         (memory_xfer_partial): Adjust.
127         (target_read_memory, target_write_memory, target_search_memory):
128         Dispatch to the the top-most target, not the flattened
129         current_target.
130         (target_info): Adjust.
131         (init_dummy_target): Install return_zero as callback for
132         to_has_all_memory, to_has_memory, to_has_stack, to_has_registers,
133         to_has_execution.
134         (set_maintenance_target_async_permitted): Use have_live_inferiors
135         instead of target_has_execution.
136         * target-memory.c (target_write_memory_blocks): Dispatch memory
137         writes to the the top-most target, not the flattened
138         current_target.
140         * breakpoint.c (insert_breakpoints): Don't check for
141         target_has_execution here.
142         (update_global_location_list): Check if there are live inferiors
143         to debug instead of target_has_execution.
144         * infcmd.c (kill_command, detach_command): Check if there are
145         inferiors instead of target_has_execution.
146         * inferior.h (have_live_inferiors): Declare.
147         * inferior.c (have_live_inferiors): New.
148         * infrun.c (normal_stop): Don't check for target_has_execution to
149         finish the thread states.
150         * thread.c (is_thread_state, is_stopped, is_exited, is_running)
151         (any_running, is_executing): Remove checks for
152         target_has_execution.
153         * top.c (kill_or_detach): Don't try to kill core inferiors.
154         (quit_target): Don't check for target_has_execution.
156         * corelow.c (core_has_memory, core_has_stack, core_has_registers):
157         New.
158         (init_core_ops): Install core_has_memory, core_has_stack and
159         core_has_registers.
160         * exec.c (exec_has_memory): New.
161         (init_exec_ops): Install exec_has_memory.
162         * remote.c (remote_add_inferior): Don't call target_mark_running.
163         (remote_start_remote): Don't call target_mark_exited or call
164         target_mark_running.
165         (remote_open_1): Use have_inferiors instead of
166         target_has_execution.  Don't use target_mark_exited.
167         (init_remote_ops): Install deafult_child_has_all_memory,
168         default_child_has_memory, default_child_has_stack,
169         default_child_has_registers, default_child_has_execution.
170         * bsd-kvm.c (bsd_kvm_return_one): New.
171         (bsd_kvm_add_target): Register bsd_kvm_return_one as
172         to_has_memory, to_has_stack and to_has_registers callbacks.
173         * remote-m32r-sdi.c (m32r_return_one): New.
174         (init_m32r_ops): Register it.
175         * inf-child.c (inf_child_target): Adjust to register
176         default_child_has_all_memory, default_child_has_memory,
177         default_child_has_stack, default_child_has_registers,
178         default_child_has_execution callbacks.
179         * gnu-nat.c (init_gnu_ops): Likewise.
180         * go32-nat.c (init_go32_ops): Likewise.
181         * hpux-thread.c (init_hpux_thread_ops): Likewise.
182         * monitor.c (init_base_monitor_ops): Likewise.
183         * nto-procfs.c (init_procfs_ops): Likewise.
184         * remote-mips.c (_initialize_remote_mips): Likewise.
185         * windows-nat.c (init_windows_ops): Likewise.
186         * remote-sim.c (gdbsim_create_inferior): Don't use
187         target_mark_running or target_mark_exited.
188         (gdbsim_mourn_inferior): Don't call target_mark_exited.
189         (init_gdbsim_ops): Adjust to register
190         default_child_has_all_memory, default_child_has_memory,
191         default_child_has_stack, default_child_has_registers,
192         default_child_has_execution callbacks.
194         * linux-nat.c (linux_nat_xfer_partial): If reading memory, and
195         there's no inferior selected, defer to a lower stratum.
197 2009-06-05  Tom Tromey  <tromey@redhat.com>
199         * varobj.c (update_dynamic_varobj_children): Wrap error text in
200         _().
201         (install_visualizer): Likewise.
202         (varobj_set_visualizer): Likewise.
204 2009-06-05  Marc Khouzam  <marc.khouzam@ericsson.com>
206         * mi/mi-main.c (mi_cmd_exec_continue)
207         (mi_cmd_exec_interrupt): Adjust parsing of thread group
208         ids to current reality, where they don't have any 'p' prefix.
210 2009-06-05  Aleksandar Ristovski  <aristovski@qnx.com>
212         * corelow.c (core_open): Check for core_gdbarch before calling
213         gdbarch_target_signal_from_host.
215 2009-06-05  Tom Tromey  <tromey@redhat.com>
217         * c-exp.y (parse_number): Don't use K&R definition.
218         (yylex): Likewise.
219         (yyerror): Likewise.
221 2009-06-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
223         * varobj.c (varobj_update): Fix out of scope varobjs to not to change.
225 2009-06-04  Ulrich Weigand  <uweigand@de.ibm.com>
227         * symtab.h: Rename SYMBOL_OPS to SYMBOL_COMPUTED_OPS.
228         * ax-gdb.c (gen_var_ref): Likewise.
229         * findvar.c (read_var_value, symbol_read_needs_frame): Likewise.
230         * printcmd.c (address_info): Likewise.
231         * dwarf2loc.c (dwarf_expr_frame_base): Likewise.
232         * dwarf2read.c (dwarf2_symbol_mark_computed): Likewise.
233         * symtab.h: Rename struct symbol_ops to struct symbol_computed_ops.
234         * dwarf2loc.h: Likewise.
235         * dwarf2loc.c (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Likewise.
237         * symtab.h: (struct symbol_register_ops): New struct definition.
238         (struct symbol): Make "ops" member a union of symbol_computed_ops and
239         symbol_register_ops callback pointers.
240         (SYMBOL_REGISTER_OPS): New macro.
241         * tracepoint.c: Include "objfiles.h".
242         (scope_info, collect_symbol): Use SYMBOL_REGISTER_OPS register_number
243         callback to retrieve register numbers.
244         * ax-gdb.c (gen_var_ref): Likewise.
245         * findvar.c (read_var_value): Likewise.
246         * printcmd.c (address_info): Likewise.
248         * coffread.c (coff_reg_to_regnum): New function.
249         (coff_register_funcs): New static variable.
250         (process_coff_symbol): Do not call gdbarch_sdb_reg_to_regnum.
251         Install SYMBOL_REGISTER_OPS callbacks.
252         * mdebugread.c (mdebug_reg_to_regnum): New function.
253         (mdebug_register_funcs): New static variable.
254         (parse_symbol): Do not call gdbarch_ecoff_reg_to_regnum.
255         Install SYMBOL_REGISTER_OPS callbacks.
256         * stabsread.c (stab_reg_to_regnum): New function.
257         (stab_register_funcs): New static variable.
258         (define_symbol): Do not call gdbarch_stab_reg_to_regnum.
259         Install SYMBOL_REGISTER_OPS callbacks.
261 2009-06-03  Doug Evans  <dje@google.com>
263         * symfile.c (reread_symbols): Reset psymtabs_addrmap to NULL
264         after discarding its contents.
266 2009-06-03  Pedro Alves  <pedro@codesourcery.com>
268         * target.c: Include "exec.h".
269         (update_current_target): Don't inherit to_sections or
270         to_sections_end.
271         (target_get_section_table): New.
272         (target_section_by_addr): Fetch the section table from the passed
273         in target.
274         (memory_xfer_partial): Handle unmapped overlay sections before
275         anything else.  Get the overlay mapped address here.  Adjust to
276         use section_table_xfer_memory_partial.
277         (get_target_memory): Request a TARGET_OBJECT_RAW_MEMORY object
278         instead of TARGET_OBJECT_MEMORY.
279         (target_resize_to_sections): Delete.
280         (remove_target_sections): Adjust to remove target sections from
281         `current_target_sections', and use resize_section_table.
282         * target.h (struct target_ops) <to_sections, to_sections_end>:
283         Remove fields.
284         <to_get_section_table>: New method.
285         (xfer_memory, print_section_info): Delete declarations.
286         (struct target_section_table): New type.
287         (target_get_section_table): Declare.
288         (target_resize_to_sections): Delete declaration.
289         (remove_target_sections): Delete declaration.
290         * bfd-target.c (target_bfd_xfer_partial): Get the section table
291         from to_data.
292         (target_bfd_get_section_table): New.
293         (target_bfd_xclose): Adjust.
294         (target_bfd_reopen): Store the section table in the to_data field.
295         * corelow.c (core_data): New.
296         (core_close): Adjust to release core_data and its sections.
297         (core_open): Allocate core_data, and build its target sections
298         table.
299         (deprecated_core_resize_section_table): New.
300         (core_files_info): Pass core_data to print_section_info.
301         (core_xfer_partial): Adjust to use
302         section_table_xfer_memory_partial for TARGET_OBJECT_MEMORY xfers.
303         (init_core_ops): Do not install a deprecated_xfer_memory callback
304         anymore.
305         * solib.c (update_solib_list): Add the shared library sections
306         to the current target sections table.
307         * exec.c (current_target_sections_1): New global.
308         (current_target_sections): New global.
309         (exec_close_1): New function, refactored from exec_close.  Remove
310         the exec_bfd's sections from the current target sections table.
311         Adjust to not use to_sections.
312         (exec_close): Remove all target sections.  Call exec_close_1.
313         (exec_file_clear): Use exec_close_1 instead of unpushing the
314         target.
315         (exec_file_attach): Likewise.  Adjust to not use to_sections.  Add
316         exec_bfd's sections to the current target sections table.  Don't
317         push the exec_ops target here.
318         (resize_section_table): New.
319         (add_target_sections): New.
320         (remove_target_sections): Moved here.
321         (section_table_xfer_memory): Adjust to implement the xfer_partial
322         interface, and rename to...
323         (section_table_xfer_memory_partial): ... this, replacing the
324         current function of that same name.
325         (exec_get_section_table): New.
326         (exec_xfer_partial): New.
327         (xfer_memory): Delete.
328         (print_section_info): Replace the target_ops parameter by a
329         target_section_table parameter.
330         (exec_files_info, set_section_command, exec_set_section_address):
331         Adjust to use the current sections table.
332         (init_exec_ops): Do not register a deprecated_xfer_memory
333         callback.  Register to_xfer_partial and to_get_section_table
334         callbacks.
335         * infrun.c (handle_inferior_event): Update comments around
336         solib_add.
337         * rs6000-nat.c (xcoff_relocate_core): Adjust to use
338         deprecated_core_resize_section_table.
339         * exec.h (resize_section_table): Declare.
340         (section_table_xfer_memory_partial): Add const char * argument.
341         (remove_target_sections): Declare here.
342         (add_target_sections): Declare.
343         (print_section_info): Declare here.
344         * gdbcore.h (deprecated_core_resize_section_table): Declare.
346 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
348         * value.h (struct internalvar): Remove.
349         (get_internalvar_integer): Add prototype.
350         (set_internalvar_integer): Add prototype.
351         (clear_internalvar): Add prototype.
353         * value.c (struct internalvar): Move here.  Add type member.  Remove
354         endian member.  Add union_internalvar member instead of value member.
355         (init_if_undefined_command): Use intvar->type.
356         (create_internalvar): Do not initialize value/endian, but type.
357         (create_internalvar_type_lazy): Call create_internalvar.
358         (value_of_internalvar): Handle host-side internalvar contents.
359         (set_internalvar_component): Likewise.
360         (set_internalvar): Likewise.
361         (get_internalvar_integer): New function.
362         (clear_internalvar): Likewise.
363         (set_internalvar_integer): Likewise.
364         (preserve_values): Handle host-side internalvar contents.
366         * breakpoint.c (set_breakpoint_count, set_tracepoint_count): Call
367         set_internalvar_integer instead of set_internalvar.
368         * findcmd.c (find_command): Likewise.
369         * infrun.c (handle_inferior_event): Likewise.
370         * source.c (forward_search_command, reverse_search_command): Likewise.
371         * tracepoint.c (set_traceframe_num, set_tracepoint_num,
372         set_traceframe_context): Likewise.
374         * printcmd.c (x_command): Call clear_internalvar instead of
375         set_internalvar.
376         * tracepoint.c (set_traceframe_context): Likewise.
377         
378         * breakpoint.c (get_number_trailer): Call get_internalvar_integer
379         instead of value_of_internalvar.
380         * linespec.c (decode_dollar): Likewise.
382         * expprint.c (dump_subexp_body_standard): Use internalvar_name
383         instead of accessing internalvar private elements.
384         * valops.c (value_assign): Copy from original source instead of
385         accessing internalvar private elements.
387 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
389         * scm-lang.c (builtin_type_scm): Remove.
390         (scm_lookup_name): Add GDBARCH parameter.  Use it instead of
391         objfile architecture.  Use per-architecture builtin_scm_type instead
392         of builtin_type_scm.
393         (evaluate_exp): Pass expression architecture to scm_lookup_name.
395         (scm_get_field): Add SIZE parameter.  Use it instead of 
396         TYPE_LENGTH (builtin_type_scm).
398         (build_scm_types): New function.
399         (scm_type_data): New variable.
400         (builtin_scm_type): New function.
401         (_initialize_scheme_language): Do not initialize builtin_type_scm.
402         Register build_scm_types as post-init function for scm_type_data.
404         * scm-exp.c (scm_lreadr): Use per-architecture builtin_scm_type
405         instead of builtin_type_scm.
407         * scm-lang.h (SCM_CAR, SCM_CDR): Pass SCM_SIZE to scm_get_field.
408         (scm_get_field): Add SIZE paramter.
409         (scm_scmval_print): Remove prototype.
410         (builtin_type_scm): Remove.
411         (struct builtin_scm_type): Add structure definition.
412         (builtin_scm_type): Add prototype.
414         * scm-valprint.c (scm_inferior_print): Add TYPE parameter.  Use it
415         instead of builtin_core_addr type; do not use objfile architecture.
416         (scm_scmlist_print): Add TYPE parameter.  Use it to define SCM_SIZE.
417         Pass type to scm_scmval_print.
418         (scm_ipruk): Add TYPE parameter.  Use it to define SCM_SIZE.
419         (scm_scmval_print): Make static.  Add TYPE parameter.  Use it to
420         define SCM_SIZE.  Pass type to scm_ipruk and scm_scmlist_print.
421         (scm_val_print): Pass type to scm_inferior_print and scm_scmval_print.
423 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
425         * mdebugread.c (mdebug_type_void, mdebug_type_char, mdebug_type_short,
426         mdebug_type_int, mdebug_type_int_32, mdebug_type_int_64,
427         mdebug_type_long_32, mdebug_type_long_64, mdebug_type_long_long_64,
428         mdebug_type_unsigned_char, mdebug_type_unsigned_short,
429         mdebug_type_unsigned_int_32, mdebug_type_unsigned_int_64,
430         mdebug_type_unsigned_long_32, mdebug_type_unsigned_long_64,
431         mdebug_type_unsigned_long_long_64, mdebug_type_adr_32,
432         mdebug_type_adr_64, mdebug_type_float, mdebug_type_double,
433         mdebug_type_complex, mdebug_type_double_complex,
434         mdebug_type_fixed_dec, mdebug_type_float_dec, mdebug_type_string):
435         Remove.
437         (basic_type_data): New global variable.
438         (basic_type): New function.
439         (parse_type): Remove static basic type map map_bt.  Call basic_type
440         to get basic types instead of using mdebug_type_ variables.
442         (parse_symbol): Use builtin types instead of mdebug_type_ variables.
443         (upgrade_type): Likewise.
444         (parse_procedure): Likewise.
445         (psymtab_to_symtab_1): Likewise.
447         (_initialize_mdebugread): Do not initialize mdebug_type_ variables.
448         Initialize basic_type_data.
450 2009-06-03  Ulrich Weigand  <uweigand@de.ibm.com>
452         * dfp.h (decimal_binop): Convert LEN_RESULT to input parameter.
453         * dfp.c (promote_decimal): Remove.
454         (decimal_binop): Convert LEN_RESULT to input parameter.
455         Remove call to decimal_binop.
456         (decimal_compare): Remove call to decimal_binop.
458         * valarith.c (value_binop): Pass desired result type length
459         to decimal_binop.
461 2009-06-01  Tristan Gingold  <gingold@adacore.com>
463         * configure.tgt (avr): Set gdb_sim to use the simulator.
465 2009-05-29  Doug Evans  <dje@google.com>
467         * infrun.c (prepare_to_proceed): Document.  Assert !non_stop.
468         If scheduler-locking is enabled, we're not going to be singlestepping
469         any other previously stopped thread.
471 2009-05-29  Pedro Alves  <pedro@codesourcery.com>
473         * mi/mi-interp.c (mi_on_resume): Initialize `count' to 0.
475 2009-05-29  Eli Zaretskii  <eliz@gnu.org>
477         * i386-tdep.c (i386_go32_init_abi): Use SVR4 register numbering
478         for stabs and COFF debug info.
480 2009-05-28  Pedro Alves  <pedro@codesourcery.com>
482         * infrun.c (handle_inferior_event): When thread hoping, switch
483         inferior_ptid to the event thread before removing breakpoints from
484         the target.  If not stopping, also try to revert back to a thread
485         that was doing a "next".  Check if that thread still exists before
486         resuming.
487         (currently_stepping_thread): Delete and merge with ...
488         (currently_stepping): ... this.
489         (currently_stepping_callback): Rename to ...
490         (currently_stepping_or_nexting_callback): ... this, and also
491         return true if the thread was stepping over a call (has a
492         step-resume breakpoint).
494 2009-05-28  Tom Tromey  <tromey@redhat.com>
496         * python/python.c (gdbpy_parameter): Rename.  Fix error message.
497         (GdbMethods): Change "get_parameter" to "parameter".
499 2009-05-28  Pierre Muller  <muller@ics.u-strasbg.fr>
500             Paul Pluzhnikov  <ppluzhnikov@google.com>
502         * configure.ac (!have_libpython): Add python-prettyprint source
503         and object files.
504         * configure: Regenerate.
505         * python/python-prettyprint.c: Move "#ifdef HAVE_PYTHON" before
506         python headers.
507         
508 2009-05-27  Vladimir Prus  <vladimir@codesourcery.com>
509             Tom Tromey  <tromey@redhat.com>
510             Thiago Jung Bauermann  <bauerman@br.ibm.com>
512         * mi/mi-main.c (mi_cmd_list_features): List "python" feature.
513         * varobj.h (varobj_set_visualizer): Declare.
514         (varobj_get_display_hint): Likewise.
515         (varobj_update_result_t) <children_changed, value_installed>: New
516         fields.
517         * mi/mi-cmds.c (mi_cmds): Add var-set-visualizer.
518         * mi/mi-cmds.h (mi_cmd_var_set_visualizer,
519         mi_cmd_var_set_child_range): Declare.
520         * mi/mi-cmd-var.c (mi_cmd_var_set_visualizer): New function.
521         (mi_cmd_var_list_children): Emit display hint.
522         (varobj_update_one): Emit display hint.  Handle dynamic children.
523         * python/python.c (GdbMethods): Add "default_visualizer".
524         * python/python-internal.h (apply_varobj_pretty_printer,
525         gdbpy_get_varobj_pretty_printer, gdbpy_get_display_hint):
526         Declare.
527         (gdbpy_default_visualizer): Likewise.
528         * varobj.c: Include python.h, python-internal.h.
529         (PyObject): New typedef.
530         (struct varobj) <children_requested, pretty_printer>: New fields.
531         (varobj_create): Call install_default_visualizer.
532         (instantiate_pretty_printer): New function.
533         (varobj_set_display_format): Update.
534         (varobj_get_display_hint): New function.
535         (update_dynamic_varobj_children): New function.
536         (varobj_get_num_children): Handle dynamic children.
537         (varobj_list_children): Likewise.
538         (install_new_value): Likewise.
539         (varobj_add_child): New function.
540         (install_visualizer): Likewise.
541         (install_default_visualizer): Likewise.
542         (varobj_set_visualizer): Likewise.
543         (varobj_update): Handle dynamic children.
544         (create_child): Use create_child_with_value.
545         (create_child_with_value): New function.
546         (value_get_print_value): Call pretty printer.  Add value_formatter
547         argument.
548         (c_value_of_variable): Update.
549         (varobj_invalidate): Always free all_rootvarobj.
550         * python/python-prettyprint.c (apply_varobj_pretty_printer): New
551         function.
552         (gdbpy_get_varobj_pretty_printer): Likewise.
553         (gdbpy_default_visualizer): Likewise.
555 2009-05-27  Tom Tromey  <tromey@redhat.com>
556             Thiago Jung Bauermann  <bauerman@br.ibm.com>
557             Phil Muldoon  <pmuldoon@redhat.com>
558             Paul Pluzhnikov  <ppluzhnikov@google.com>
559             Vladimir Prus  <vladimir@codesourcery.com>
561         * python/python-value.c (value_object_to_value): New function.
562         * python/python-internal.h: Include frameobject.h.
563         (gdbpy_children_cst, gdbpy_to_string_cst, gdbpy_display_hint_cst):
564         Declare.
565         (value_object_to_value): Declare.
566         * printcmd.c (struct format_data) <raw>: New field.
567         (last_format): Default to 0.
568         (decode_format): Initialize val.raw.  Handle /r flag.
569         (print_command_1): Initialize fmt.raw and opts.raw.
570         (output_command): Likewise.
571         (x_command): Fix initialization of fmt.format.  Initialize
572         fmt.raw.
573         (display_command): Initialize fmt.raw.
574         (do_one_display): Set opts.raw.
575         * python/python.c (gdbpy_to_string_cst, gdbpy_children_cst,
576         gdbpy_display_hint_cst): New globals.
577         (_initialize_python): Initialize them.  Set gdb.pretty_printers.
578         * cp-valprint.c: Include python.h.
579         (cp_print_value): Call apply_val_pretty_printer.
580         * python/python.h (apply_val_pretty_printer): Declare.
581         * stack.c (print_this_frame_argument_p): Remove.
582         (print_frame_args): Compute summary flag.  Don't use
583         print_this_frame_argument_p.
584         * valprint.c: Include python.h.
585         (user_print_options): Initialize new fields.
586         (scalar_type_p): New function.
587         (val_print): Handle 'raw' and 'summary' modes.  Call
588         apply_val_pretty_printer.
589         (value_print): Handle 'raw' mode.
590         * valprint.h (struct value_print_options) <raw, summary>: New
591         fields.
592         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-prettyprint.o
593         (SUBDIR_PYTHON_SRCS): Add python-prettyprint.c.
594         (python-prettyprint.o): New target.
595         * python/python-prettyprint.c: New file.
597 2009-05-27  Tom Tromey  <tromey@redhat.com>
598             Paul Pluzhnikov  <ppluzhnikov@google.com>
600         * mi/mi-main.c (mi_cmd_data_evaluate_expression): Use
601         value_address.
602         * cli/cli-dump.c (dump_value_to_file): Use value_address.
603         * valprint.c (common_val_print): Likewise.
604         * v850-tdep.c (v850_push_dummy_call): Use value_address.
605         * tracepoint.c (encode_actions): Use value_address.
606         * printcmd.c (print_formatted): Use value_address.
607         (x_command): Likewise.
608         * p-valprint.c (pascal_object_print_static_field): Use
609         value_address.
610         * mn10300-tdep.c (mn10300_push_dummy_call): Use value_address.
611         * mips-tdep.c (mips_eabi_push_dummy_call): Use value_address.
612         * m32r-tdep.c (m32r_push_dummy_call): Use value_address.
613         * jv-valprint.c (java_value_print): Use value_address.
614         * infcall.c (find_function_addr): Use value_address.
615         * gnu-v3-abi.c (gnuv3_rtti_type): Use value_address.
616         * gnu-v2-abi.c (gnuv2_value_rtti_type): Use value_address.
617         * frv-tdep.c (frv_push_dummy_call): Use value_address.
618         * frame.c (frame_register_unwind): Use value_address.
619         (frame_unwind_register_value): Likewise.
620         * darwin-nat-info.c (info_mach_region_command): Use
621         value_address.
622         * cp-valprint.c (cp_print_static_field): Use value_address.
623         * c-valprint.c (c_value_print): Use value_address.
624         * breakpoint.c (update_watchpoint): Use value_address.
625         (can_use_hardware_watchpoint): Likewise.
626         * ada-valprint.c (ada_val_print_1): Use value_address.
627         (ada_value_print): Likewise.
628         * ada-tasks.c (read_fat_string_value): Use value_address.
629         * jv-lang.c (java_link_class_type): Use set_value_address.
630         (java_link_class_type): Likewise.
631         (get_java_utf8_name): Use value_address.
632         (type_from_class): Likewise.
633         (java_link_class_type): Likewise.
634         * findvar.c (value_of_register): Use set_value_address.
635         (read_var_value): Likewise.
636         (read_var_value): Likewise.
637         * eval.c (evaluate_subexp_standard): Use set_value_address.
638         (evaluate_subexp_standard): Use value_address.
639         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Use set_value_address.
640         * ada-lang.c (coerce_unspec_val_to_type): Use set_value_address.
641         (ada_value_primitive_packed_val): Likewise.
642         (ensure_lval): Likewise.
643         (thin_data_pntr): Use value_address.
644         (desc_bounds): Likewise.
645         (ada_value_primitive_packed_val): Likewise.
646         (value_assign_to_component): Likewise.
647         (ensure_lval): Likewise.
648         (make_array_descriptor): Likewise.
649         (ada_to_fixed_value): Likewise.
650         (unwrap_value): Likewise.
651         * value.c (deprecated_value_address_hack): Remove.
652         (value_address): New function.
653         (value_raw_address): Likewise.
654         (set_value_address): Likewise.
655         (value_fn_field): Use set_value_address.
656         (value_from_contents_and_address): Likewise.
657         (value_fn_field): Likewise.
658         (allocate_value_lazy): Don't use VALUE_ADDRESS.
659         (value_as_address): Use value_address.
660         (value_static_field): Likewise.
661         * valops.c (search_struct_field): Use set_value_address.
662         (value_at): Likewise.
663         (value_at_lazy): Likewise.
664         (value_repeat): Likewise.
665         (value_cast_structs): Use value_address.
666         (value_cast): Likewise.
667         (value_fetch_lazy): Likewise.
668         (value_assign): Likewise.
669         (value_repeat): Likewise.
670         (address_of_variable): Likewise.
671         (value_coerce_array): Likewise.
672         (value_coerce_function): Likewise.
673         (value_addr): Likewise.
674         (search_struct_field): Likewise.
675         (search_struct_method): Likewise.
676         (find_method_list): Likewise.
677         (value_struct_elt_for_reference): Likewise.
678         (value_full_object): Likewise.
679         * jv-valprint.c (java_value_print): Use set_value_address.
680         * value.h (deprecated_value_address_hack): Remove.
681         (VALUE_ADDRESS): Remove.
682         (value_address): Declare.
683         (value_raw_address): Declare.
684         (set_value_address): Declare.
686 2009-05-27  Tom Tromey  <tromey@redhat.com>
687             Thiago Jung Bauermann  <bauerman@br.ibm.com>
688             Phil Muldoon  <pmuldoon@redhat.com>
689             Paul Pluzhnikov  <ppluzhnikov@google.com>
691         * python/python.c (_initialize_python): Call
692         gdbpy_initialize_types.
693         (GdbMethods): Add "lookup_type".
694         * python/python-value.c (value_object) <type>: New field.
695         (valpy_dealloc): Decref type.
696         (valpy_new): Initialize type.
697         (valpy_get_type): New function.
698         (value_to_value_object): Initialize type.
699         (valpy_cast): New function.
700         (value_object_getset): Add "type".
701         (value_object_methods): Add "cast".
702         * python/python-internal.h (type_to_type_object): Declare.
703         (type_object_to_type): Likewise.
704         (gdbpy_initialize_types): Likewise.
705         (gdbpy_lookup_type): Declare.
706         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-type.o.
707         (SUBDIR_PYTHON_SRCS): Add python-type.c.
708         (python-type.o): New target.
709         * python/python-type.c: New file.
711 2009-05-27  Tom Tromey  <tromey@redhat.com>
712             Thiago Jung Bauermann  <bauerman@br.ibm.com>
713             Phil Muldoon  <pmuldoon@redhat.com>
715         * python/python.c: Include objfiles.h, observer.h.
716         (gdbpy_auto_load): New global.
717         (gdbpy_current_objfile): Likewise.
718         (GDBPY_AUTO_FILENAME): New define.
719         (gdbpy_new_objfile): New function.
720         (gdbpy_get_current_objfile): Likewise.
721         (gdbpy_objfiles): Likewise.
722         (_initialize_python): Add "maint set auto-load".  Call
723         gdbpy_initialize_objfile.  Attach objfile observer.
724         (GdbMethods): New methods current_objfile, objfiles.
725         * python/python-objfile.c: New file.
726         * python/python-internal.h (objfile_to_objfile_object): Declare.
727         (objfpy_get_printers): Likewise.
728         (gdbpy_initialize_objfile): Likewise.
729         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-objfile.o.
730         (SUBDIR_PYTHON_SRCS): Add python-objfile.c.
731         (python-objfile.o): New target.
733 2009-05-27  Pedro Alves  <pedro@codesourcery.com>
735         * infrun.c (follow_exec): Clear the stop_requested flag.
736         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
737         Add debug output.
739 2009-05-27  Aleksandar Ristovski  <aristovski@qnx.com>
741         * nto-procfs.c (get_regset): Pass correct pointer.
743 2009-05-26  Doug Evans  <dje@google.com>
745         * dwarf2read.c (follow_die_ref): Add comment.
746         (dwarf2_mark_helper): Tweak comment.
747         (dwarf2_mark): Move description to its proper place.
749 2009-05-25  Pierre Muller  <muller@ics.u-strasbg.fr>
751         * procfs.c (procfs_wait): Add options parameter.
753 2009-05-24  Doug Evans  <dje@google.com>
755         Global renaming of find_thread_pid to find_thread_ptid.
756         * gdbthread.h (find_thread_ptid): Renamed from find_thread_pid.
757         * thread.c (find_thread_ptid): Renamed from find_thread_pid.
758         All callers updated.
760         * infrun.c (follow_fork): Initialize new step_* locals
761         to avoid "may be used uninitialized" warnings.
763 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
765         * inflow.c (copy_terminal_info): Deep copy `run_terminal'.
767 2009-05-24  Pedro Alves  <pedro@codesourcery.com>
769         * gdbthread.h (struct thread_info): New `pending_follow' field.
770         * thread.c (new_thread): New function.
771         (add_thread_silent): Use it.
772         * breakpoint.c (internal_breakpoint_number): New global, moved
773         from inside...
774         (create_internal_breakpoint): ... this.
775         (clone_momentary_breakpoint): New.
776         * breakpoint.h (clone_momentary_breakpoint): Declare.
777         * infrun.c (nullify_last_target_wait_ptid): Move declaration
778         higher.
779         (pending_follow): Delete.
780         (follow_fork): Handle pending follow fork event here.  Moved the
781         preserving of thread stepping state here.
782         (resume): Don't handle pending follow fork events here.  Only
783         install the inferior's terminal modes if we're about to resume it.
784         (proceed): Handle possible pending follow fork events here.
785         (init_wait_for_inferior): No need to clear pending_follow anymore,
786         it's gone.
787         (handle_inferior_event): Adjust to per-thread `pending_follow'.
788         Call `follow_fork' to handle following the fork.  If the
789         follow-fork is cancelled, stop stepping.
790         * linux-nat.c (linux_child_follow_fork): Adjust to per-thread
791         `pending_follow' events.  Remove code that handled preserving the
792         thread stepping state.
793         * inf-ptrace.c (inf_ptrace_follow_fork): Ditto.
794         * inf-ttrace.c (inf_ttrace_follow_fork): Ditto.
796 2009-05-24  Pierre Muller  <muller@ics.u-strasbg.fr>
798         * symfile.c (add_shared_symbol_files_command): Remove
799         prototype and function.
800         (_initialize _symfile): Move "add-shared-symbol-files"
801         command and "assf" alias.
802         * windows-nat.c (_initialize_windows_nat): to here.
803         Change "add-shared-symbol-files" to alias.
804         
805         * config/i386/cygwin.mh: Remove NAT_FILE.
806         * config/i386/mingw.mh: Remove NAT_FILE.
807         * config/i386/mingw64.mh: Remove NAT_FILE.
808         * config/i386/nm-cygwin.h: Remove file.
809         * config/i386/nm-cygwin64.h: Remove file.
811 2009-05-24  Hui Zhu  <teawater@gmail.com>
813         * i386-linux-tdep.c (I386_LINUX_RECORD_SIZE_*,
814         I386_LINUX_RECORD_IOCTL_*,
815         I386_LINUX_RECORD_FCNTL_*) Removed.
816         (i386_linux_init_abi): Change size of record from macros to
817         numbers.
819 2009-05-24  Hui Zhu  <teawater@gmail.com>
821         * i386-linux-tdep.c (i386_linux_init_abi): Remove size_char.
822         * linux-record.c (record_linux_system_call): Ditto.
823         * linux-record.h (linux_record_tdep): Ditto.
825 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
827         Replace the savestring calls by xstrdup calls where possible.
828         * breakpoint.c (condition_command, set_raw_breakpoint)
829         (create_catchpoint, update_breakpoint_locations): Replace the
830         savestring calls by xstrdup calls where possible.
831         * buildsym.c (start_subfile, patch_subfile_names, record_debugformat)
832         (record_producer): Likewise.
833         * coffread.c (coff_start_symtab, complete_symtab): Likewise.
834         * corefile.c (set_gnutarget): Likewise.
835         * dbxread.c (add_new_header_file): Likewise.
836         * demangle.c (set_demangling_command, set_demangling_style): Likewise.
837         * event-top.c (push_prompt, pop_prompt, command_line_handler)
838         (set_async_prompt): Likewise.
839         * infcmd.c (set_inferior_io_terminal, attach_command_post_wait):
840         Likewise.
841         * language.c (set_language_command, _initialize_language): Likewise.
842         * linespec.c (decode_line_2): Likewise.
843         * rs6000-nat.c (add_vmap): Likewise.
844         * top.c (set_prompt, init_history, init_main): Likewise.
845         * tracepoint.c (stringify_collection_list): Likewise.
846         * varobj.c (varobj_create): Remove variable expr_len.  Replace the 
847         savestring calls by xstrdup calls where possible.
848         (value_of_root, c_name_of_variable, c_describe_child): Replace the
849         savestring calls by xstrdup calls where possible.
850         * xcoffread.c (complete_symtab): Likewise.
851         * cli/cli-script.c (build_command_line, define_command): Likewise.
852         * cli/cli-setshow.c (do_setshow_command): Likewise.
854 2009-05-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
856         Remove already unreachable code.
857         * varobj.c (varobj_get_handle): Fix comment when error is called.
858         All callers updated.
860 2009-05-23  Eli Zaretskii  <eliz@gnu.org>
862         * README (`configure' options): Document GDB-specific options to
863         `configure'.
865         * symtab.c (skip_prologue_using_lineinfo): New function.
866         (find_function_start_sal): Use it to get to the first line of
867         function's body that has an entry in the lineinfo table.
869         * symmisc.c (dump_symtab): Switch the current language to
870         the language of the symtab we are dumping only if the symtab's
871         language is neither language_auto nor language_unknown.
873         * coffread.c (coff_symtab_read): Set language_minimal as the
874         language for the "_globals_" pseudo-file.
875         (process_coff_symbol): Set the symbol's language to the language
876         of current_subfile.
878 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
880         * target.h (struct section_table): Rename to ...
881         (struct target_section): ... this.
882         * exec.c: Adjust all references.
883         * exec.h: Adjust all references.
884         * nto-tdep.c: Adjust all references.
885         * nto-tdep.h: Adjust all references.
886         * ppc-linux-tdep.c: Adjust all references.
887         * rs6000-nat.c: Adjust all references.
888         * s390-tdep.c: Adjust all references.
889         * solib-darwin.c: Adjust all references.
890         * solib-frv.c: Adjust all references.
891         * solib-irix.c: Adjust all references.
892         * solib-null.c: Adjust all references.
893         * solib-osf.c: Adjust all references.
894         * solib-pa64.c: Adjust all references.
895         * solib-som.c: Adjust all references.
896         * solib-sunos.c: Adjust all references.
897         * solib-svr4.c: Adjust all references.
898         * solib-target.c: Adjust all references.
899         * solib.c: Adjust all references.
900         * solist.h: Adjust all references.
901         * symfile.c: Adjust all references.
902         * symfile.h: Adjust all references.
903         * target.c: Adjust all references.
905 2009-05-22  Hui Zhu  <teawater@gmail.com>
907         Add sys_fcntl argument interfaces to linux_record_tdep.
909         * linux-record.h (linux_record_tdep): Add fcntl_F_GETLK,
910         fcntl_F_GETLK64, fcntl_F_SETLK64 and fcntl_F_SETLKW64 to be
911         interfaces.
912         * i386-linux-tdep.c (I386_LINUX_RECORD_FCNTL_F_GETLK,
913         I386_LINUX_RECORD_FCNTL_F_GETLK64,
914         I386_LINUX_RECORD_FCNTL_F_SETLK64,
915         I386_LINUX_RECORD_FCNTL_F_SETLKW64): New macros. The values
916         of I386 Linux sys_fcntl arguments.
917         (i386_linux_init_abi): Set macros values to linux_record_tdep.
918         * linux-record.c (record_linux_system_call): Change to use
919         the interface in linux_record_tdep in sys_fcntl and
920         sys_fcntl64.
922         * linux-record.c (record_linux_system_call): Fix the process
923         record build error about type in CYGWIN.
925 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
927         * inflow.c (kill_command): Delete left over static declaration.
929 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
931         * bfd-target.c: Don't include gdb_assert.h or gdb_string.h.
932         Include exec.h.
933         (struct section_closure): Delete.
934         (add_to_section_table): Delete.
935         (build_target_sections_from_bfd): Delete.
936         (target_bfd_xfer_partial): Use section_table_xfer_memory_partial.
937         (target_bfd_reopen): Use build_section_table.
938         * exec.c (xfer_memory): Move most code except for overlay
939         debugging support from here...
940         (section_table_xfer_memory): ... to this new function.
941         (section_table_xfer_memory_partial): New.
942         * exec.h (section_table_xfer_memory_partial): Declare.
943         * bfd-target.h (build_target_sections_from_bfd): Delete
944         declaration.
946 2009-05-22  Pedro Alves  <pedro@codesourcery.com>
948         * remote.c (compare_sections_command): Don't declare exec_bfd.
949         * tracepoint.c: Include "gdbcore.h".
950         (remote_set_transparent_ranges): Don't declare exec_bfd.
952 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
954         * aix-thread.c (init_aix_thread_ops): Whitespace.
956 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
958         * dec-thread.c (dec_thread_wait): Add options parameter.  Use it
959         to call the to_wait method in the target beneath.
960         * remote-m32r-sdi.c (m32r_wait): Add options parameter.
962 2009-05-21  Joel Brobecker  <brobecker@adacore.com>
964         * aix-thread.c (aix_thread_wait): Add options parameter.  Use it
965         to call the to_wait method in the target_beneath.
967 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
969         * linux-nat.c (linux_nat_terminal_inferior)
970         (linux_nat_terminal_ours): Don't check sync_execution.
971         * remote.c (remote_terminal_inferior, remote_terminal_ours):
972         Don't check sync_execution.  Update comments.
973         * target.c (target_terminal_inferior): New.
974         * target.h (target_terminal_inferior): Delete macro, and declare
975         as function.
976         * event-top.c (async_disable_stdin): Make idempotent.  Don't give
977         the target the terminal here.
978         * inflow.c (terminal_ours_1): Don't return early without setting
979         `terminal_is_ours'.
981 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
983         * target.h (TARGET_WNOHANG): New.
984         * target.c (target_wait): Add `options' argument.  Adjust.
985         (struct target_ops) <to_wait>: Add `options' argument.
986         (target_wait): Add `options' argument.
987         * infrun.c (wait_for_inferior): Pass 0 as options to
988         target_wait (blocking wait).
989         (fetch_inferior_event): Pass TARGET_WNOHANG as options to
990         target_wait.
991         * fork-child.c (startup_inferior): Pass 0 as options to
992         target_wait (blocking wait).
993         * linux-nat.c (linux_nat_create_inferior): Remove async masking.
994         (linux_nat_wait_1): Add `target_options' argument.  Use it instead
995         of checking on target_can_async_p.
996         (linux_nat_wait): Add `target_options' argument.  Adjust.
997         * remote.c (remote_wait_ns): Add `options' argument.  Adjust to
998         check on TARGET_WNOWAIT instead of checking on remote_is_async_p.
999         (remote_wait_as): Add `options' argument.  Adjust to check on
1000         TARGET_WNOWAIT instead of checking on remote_is_async_p.  If doing
1001         a blocking wait, keep waiting until an interesting event comes
1002         out.
1003         (remote_wait): Add `options' argument.  Don't loop here if the
1004         target is in async mode, and a blocking wait has been requested.
1006         * top.c (deprecated_target_wait_hook): Add `options' argument.
1007         * linux-thread-db.c (thread_db_wait): Add `options' argument, and
1008         pass it down to the layer beneath.
1009         * inf-ptrace.c (inf_ptrace_wait): Add `options' argument.
1010         * record.c (record_beneath_to_wait): Add `options' argument.
1011         (record_wait): Add `options' argument, and pass it down to the
1012         layer beneath.
1013         * bsd-uthread.c (bsd_uthread_wait): Add `options' argument.
1014         * darwin-nat.c (darwin_wait): Likewise.
1015         * defs.h (deprecated_target_wait_hook): Likewise.
1016         * gnu-nat.c (gnu_wait): Add `options' argument.
1017         * go32-nat.c (go32_wait): Likewise.
1018         * hpux-thread.c (hpux_thread_wait): Add `options' argument, and
1019         pass it down to the layer beneath.
1020         * inf-ttrace.c (inf_ttrace_wait): Add `options' argument.
1021         * monitor.c (monitor_wait): Likewise.
1022         * nto-procfs.c (procfs_wait): Likewise.
1023         * remote-mips.c (mips_wait): Add `options' argument.
1024         * remote-sim.c (gdbsim_wait): Likewise.
1025         * rs6000-nat.c (rs6000_wait): Add `options' argument.
1026         * sol-thread.c (sol_thread_wait): Add `options' argument, and pass
1027         it down to the layer beneath.
1028         * spu-linux-nat.c (spu_child_wait): Add `options' argument.
1029         * windows-nat.c (windows_wait): Likewise.
1030         * tui/tui-hooks.c (tui_target_wait_hook): Likewise.  Adjust.
1032 2009-05-21  Pedro Alves  <pedro@codesourcery.com>
1034         * mi/mi-interp.c (mi_on_resume): Account for whole process
1035         resumes.
1037 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1039         * m2-exp.y (MAX_FUNC): Fix trailing UNOP_MAX.
1041 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1043         * dwarf2read.c (set_cu_language): Recognize also DW_LANG_C99.
1045 2009-05-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
1047         Fix parsing DW_AT_const_value using DW_FORM_string.
1048         * dwarf2read.c (dwarf2_const_value <DW_FORM_string>): New.
1050 2009-05-20  Joel Brobecker  <brobecker@adacore.com>
1052         * aix-thread.c (giter_count): Do not count the main thread.
1053         (giter_accum): Do not include the main thread.
1055 2009-05-19  Jan Kratochvil  <jan.kratochvil@redhat.com>
1057         Remove the PROT parameter from openp.
1058         * source.c (openp): Remove the parameter PROT.  Assertion check MODE.
1059         defs.h (openp): Update the prototype.
1060         Update all the openp callers.
1062 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
1064         * inflow.c (kill_command): Moved to infcmd.c.
1065         (_initialize_inflow): Don't add the "kill" command or clear
1066         inferior_ptid here.
1067         * infcmd.c (kill_command): Moved here from inflow.c.
1068         (_initialize_infcmd): Add the "kill" command here.
1070 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
1072         * fork-child.c: Don't include frame.h.  Include terminal.h.
1073         (fork_inferior): Call new_tty_postfork after forking adn adding
1074         the child to the inferior list.
1075         * inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
1076         here.
1077         * inflow.c (struct terminal_info): Remove const qualifier from
1078         `run_terminal' field.
1079         (inferior_thisrun_terminal): Tweak comment.
1080         (inflow_inferior_exit): Release the `run_terminal' field.
1081         (copy_terminal_info): New function.
1082         (new_tty_postfork): New function.
1083         * terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
1084         (copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
1085         * inf-ptrace.c: Include terminal.h.
1086         (inf_ptrace_follow_fork): Copy the parent's terminal info to the
1087         child.
1088         * linux-nat.c: Include terminal.h.
1089         (linux_child_follow_fork): Copy the parent's terminal info to the
1090         child.
1091         * inf-ttrace.c: Include terminal.h.
1092         (inf_ttrace_follow_fork): Copy the parent's terminal info to the
1093         child.
1095 2009-05-19  Pedro Alves  <pedro@codesourcery.com>
1097         * breakpoint.c (insert_breakpoints, breakpoint_init_inferior)
1098         (update_global_location_list): Use gdbarch_has_global_breakpoints
1099         instead of gdbarch_has_global_solist and
1100         target_supports_multi_process.
1101         * dicos-tdep.c (dicos_init_abi): Set
1102         gdbarch_has_global_breakpoints.
1103         * gdbarch.sh (has_global_solist): Update comment.
1104         (has_global_breakpoints): New.
1105         * remote.c (remote_start_remote): Use
1106         gdbarch_has_global_breakpoints instead of
1107         gdbarch_has_global_solist.
1108         * target.c (target_detach): Use gdbarch_has_global_breakpoints
1109         instead of gdbarch_has_global_solist.
1110         * infcmd.c (attach_command): Use gdbarch_has_global_solist instead
1111         of target_supports_multi_process.
1113 2009-05-18  Paul Pluzhnikov  <ppluzhnikov@google.com>
1115         * objc-lang.c (find_methods): Plug a small memory leak.
1117 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1119         * solib-svr4.c: Include observer.h.
1120         (debug_base, debug_loader_offset_p, debug_loader_offset)
1121         (debug_loader_name, main_lm_addr): Move these globals...
1122         (struct svr4_info): ... into this new structure.
1123         (svr4_info_p): New typedef.
1124         (svr4_info): New global.
1125         (get_svr4_info, remove_svr4_info, solib_svr4_inferior_exit): New
1126         functions.
1127         (locate_base, solib_svr4_r_map, solib_svr4_r_brk)
1128         (solib_svr4_r_ldsomap): Add svr4_info argument.  Adjust to
1129         per-inferior svr4.
1130         (open_symbol_file_object): Adjust to per-inferior svr4.
1131         (svr4_default_sos, svr4_current_sos, svr4_fetch_objfile_link_map):
1132         Ditto.
1133         (enable_break): Add svr4_info argument.  Adjust to per-inferior
1134         svr4.
1135         (enable_break, svr4_solib_create_inferior_hook, svr4_clear_solib):
1136         Adjust to per-inferior svr4.
1137         (_initialize_svr4_solib): Install the solib_svr4_inferior_exit
1138         observer.
1140 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1142         * linux-nat.h (linux_proc_get_tgid): Declare.
1143         * linux-nat.c (linux_proc_get_tgid): New.
1144         * linux-thread-db.c (struct thread_db_info): New field
1145         `need_stale_parent_threads_check'.
1146         (add_thread_db_info): Set it.
1147         (find_new_threads_callback): Ignore stale fork parent threads.
1148         (thread_db_resume): New.
1149         (init_thread_db_ops): Install thread_db_resume.
1151 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1153         * fork-child.c (fork_inferior): Only reset the thread list if this
1154         is the first inferior.
1155         (startup_inferior): If the target support multi-process, tell it
1156         to resume only the new process.
1157         * linux-nat.c (num_lwps): Delete global.
1158         (purge_lwp_list): New function.
1159         (num_lwps): New function.
1160         (add_lwp, delete_lwp): Adjust.
1161         (ptid_match): New.
1162         (iterate_over_lwps): Add filter argument.  Handle it.
1163         (linux_nat_attach): Remove FIXME note.
1164         (linux_nat_detach): Adjust to iterate over threads of the inferior
1165         we're detaching from.  Adjust to num_lwps being a function.  Don't
1166         assume the head of the lwp list is the main thread of the process
1167         we're detaching from.  Don't destroy the LWP list.
1168         (resume_callback): Add debug output.
1169         (linux_nat_resume): Handle resuming a single inferior.  Allow a
1170         wildcard resume in non-stop mode.
1171         (linux_handle_extended_wait): Don't assume inferior_ptid is the
1172         correct inferior of the parent LWP.
1173         (status_callback): Also check lp->waitstatus.
1174         (select_event_lwp): Add new filter parameter.  Handle it.
1175         (linux_nat_filter_event): Adjust to num_lwps being a function.
1176         (linux_nat_wait_1): When adding the first lwp of the inferior, use
1177         an is_lwp check instead of checking for the number of lwps.
1178         (linux_nat_wait_1): Handle waiting for a specific tgid.  Handle
1179         pending process exit statuses.
1180         (linux_nat_mourn_inferior): Don't destroy all the LWP info.
1181         Instead delete LWPs of the inferior that we're mourning.  Don't
1182         unregister from the event loop here.
1183         (linux_nat_pid_to_str): Use `num_lwps'.
1184         (linux_nat_make_corefile_notes): Adjust to walk over lwps of a
1185         single inferior.
1186         (linux_nat_is_async_p): Check if async was masked out.
1187         (linux_multi_process): New global.
1188         (linux_nat_supports_multi_process): New.
1189         (linux_nat_stop_lwp): Remove LWP filtering.  It is done by the
1190         caller.
1191         (linux_nat_stop): Adjust to make iterate_over_lwps itself do the
1192         LWP filtering.
1193         (linux_nat_close): New.
1194         (linux_nat_add_target): Register linux_nat_close and
1195         linux_nat_supports_multi_process.
1196         * linux-nat.h (iterate_over_lwps): Add filter argument.
1197         * linux-thread-db.c (thread_db_handle): Delete.
1198         (proc_handle, thread_agent, td_init_p, td_ta_new_p)
1199         (td_ta_map_id2thr_p, td_ta_map_lwp2thr_p, td_ta_thr_iter_p)
1200         (td_ta_event_addr_p, td_ta_set_event_p, td_ta_event_getmsg_p)
1201         (td_thr_validate_p, td_thr_get_info_p, td_thr_event_enable_p)
1202         (td_thr_tls_get_addr_p, td_create_bp_addr, td_death_bp_addr): No
1203         longer globals, moved to...
1204         (struct thread_db_info): ... this new structure.
1205         (thread_db_list): New.
1206         (add_thread_db_info, get_thread_db_info, delete_thread_db_info):
1207         New.
1208         (have_threads_callback): Filter out threads of all inferiors but
1209         the one specified by the ARGS argument.
1210         (have_threads): Add ptid argument specifying the inferior we're
1211         interested in.  Handle it.
1212         (struct thread_get_info_inout): New.
1213         (thread_get_info_callback, thread_from_lwp): Adjust to use it.
1214         (thread_db_attach_lwp): Check that inferior of the passed in
1215         thread is using thread-db.  Adjust.
1216         (enable_thread_event): Remove thread_agent parameter.  Instead,
1217         get it from the per-inferior thread-db info.
1218         (dladdr_to_soname): Move higher up.
1219         (enable_thread_event_reporting): Adjust to use per-inferior
1220         thread-db info.
1221         (try_thread_db_load_1): Replace `handle' parameter by a
1222         thread_db_info parameter.  Adjust to use per-inferior thread-db
1223         info.
1224         (try_thread_db_load): Adjust to use per-inferior thread-db info.
1225         (thread_db_load, disable_thread_event_reporting): Ditto.
1226         (check_for_thread_db): Remove conditional reporting of which
1227         libthread_db is in use.
1228         (thread_db_new_objfile): Add comment about inferior_ptid.
1229         (attach_thread): Adjust to use per-inferior thread-db info.
1230         (thread_db_detach): Adjust to use per-inferior thread-db info.
1231         Remove thread event breakpoints of the current inferior.  Only
1232         unpush the thread-db target if there are no more processes using
1233         it.
1234         (check_event): Adjust to use per-inferior thread-db info.
1235         (thread_db_wait): Adjust to use per-inferior thread-db info.  Only
1236         unpush the thread-db target if there are no more processes using
1237         it.
1238         (thread_db_mourn_inferior): Adjust to use per-inferior thread-db
1239         info.  Mark breakpoints of the current inferior out before
1240         deleting them.  Only unpush the thread-db target if there are no
1241         more processes using it.
1242         (find_new_threads_callback): Adjust to use per-inferior thread_db
1243         info.
1244         (thread_db_find_new_threads_1): Add new ptid argument.  Adjust to
1245         use per-inferior thread-db info.
1246         (thread_db_find_new_threads): Adjust to use per-inferior thread-db
1247         info.
1248         (thread_db_get_thread_local_address): Adjust.
1249         (thread_db_get_ada_task_ptid): Adjust.
1250         * inf-ptrace.c (inf_ptrace_mourn_inferior): Only unpush the target
1251         if there no more processes left to debug.
1252         * thread.c (set_running, set_executing): Handle resuming all
1253         threads of a single inferior.
1254         * mi/mi-interp.c (mi_output_running_pid): New.
1255         (mi_inferior_count): New.
1256         (mi_on_resume): For backwards compatibility, if resuming all
1257         threads of an inferior, and there is only one inferior, output
1258         "all".
1260 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
1262         * ada-lang.c (ada_find_any_type): Move check for primitive types ...
1263         (to_fixed_range_type): ... to here.
1265 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
1267         * ada-lang.c (desc_data_type): Remove, replace by ...
1268         (desc_data_target_type): ... this.
1269         (thin_data_pntr): Use desc_data_target_type instead of desc_data_type.
1270         (ada_is_array_descriptor_type): Likewise.
1271         (ada_type_of_array): Likewise.
1272         (ada_coerce_to_simple_array_type): Likewise.
1273         (ada_array_element_type): Likewise.
1275 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
1277         * ada-valprint.c (ada_val_print_1): Use val_print_string to print
1278         result of ada_vax_float_print_function inferior call.
1280 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
1282         * ada-lang.c (ada_coerce_to_simple_array_type): Reimplement to
1283         avoid creating a dummy value.
1285 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
1287         * p-valprint.c (pascal_val_print): Use extract_typed_address
1288         to extract reference value.
1290 2009-05-18  Ulrich Weigand  <uweigand@de.ibm.com>
1292         * doublest.c (NAN): Remove unused define.
1293         (extract_floating_by_length, deprecated_extract_floating): Remove.
1294         (store_floating_by_length, deprecated_store_floating): Remove.
1295         (extract_typed_floating): Do not call extract_floating_by_length.
1296         (store_typed_floating): Do not call store_floating_by_length.
1297         (convert_typed_floating): Remove redundant assertions.
1298         * doublest.h (deprecated_extract_floating): Remove.
1299         (deprecated_store_floating): Remove.
1300         * sh64-tdep.c (sh64_register_convert_to_raw): Call
1301         extract_typed_floating instead of deprecated_extract_floating.
1303 2009-05-18  Jon Beniston <jon@beniston.com>
1304         
1305         * MAINTAINERS: Add lm32 target.        
1306         * Makefile.in: Add lm32 dependencies.        
1307         * NEWS: Indicate lm32 is a new target.
1308         * configure.tgt: Add lm32 targets.
1309         * lm32-tdep.c: New file.
1311 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1313         * corelow.c (core_open): Flush the register cache before doing
1314         anything with registers.
1316 2009-05-18  Pedro Alves  <pedro@codesourcery.com>
1318         * inflow.h (our_process_group): Remove declaration.
1319         (inferior_process_group): Delete global variable declaration.
1320         (inferior_process_group): New function declaration.
1321         * inflow.c: Include observer.h.
1322         (inferior_ttystate, our_ttystate, tflags_inferior, tflags_ours):
1323         Delete.
1324         (struct terminal_info): New struct.
1325         (our_terminal_info): New global.
1326         (inferior_process_group): New function.
1327         (inferior_thisrun_terminal): Extend description comment.
1328         (gdb_has_a_terminal): Adjust to write to our_terminal_info fields
1329         instead of globals.
1330         (terminal_init_inferior_with_pgrp): Adjust to per-inferior
1331         terminal settings.
1332         (terminal_inferior): Ditto.
1333         (terminal_ours_1): Ditto.
1334         (inflow_new_inferior, inflow_inferior_exit): New functions.
1335         (child_terminal_info): Adjust to per-inferior terminal settings.
1336         (osig_set): New global.
1337         (set_sigint_trap): Adjust to per-inferior terminal settings.  Set
1338         or clear `osig_set' accordingly.
1339         (clear_sigint_trap): Check `osig_set' to decide wheater to restore
1340         SIGINT handler, instead of checking the current inferior (which
1341         may be none).
1342         (_initialize_inflow): Attach inflow_new_inferior and
1343         inflow_inferior_exit to the "new_inferior" and "inferior_exit"
1344         notifications, respectively.
1345         * inferior.h (struct terminal_info): Forward declare.
1346         (struct inferior): Add `terminal_info' field.
1347         * inferior.c (delete_inferior_1): Notify the inferior_exit
1348         observers before removing the inferior from the lists and deleting
1349         it.
1350         * inf-ptrace.c (inf_ptrace_stop): `inferior_process_group' is now
1351         a function instead of a variable.  Adjust.
1352         * procfs.c (procfs_stop): Ditto.
1354 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
1356         * infrun.c (handle_inferior_event): When handling a
1357         TARGET_WAITKIND_FORKED, detach breakpoints from the fork child
1358         immediatelly.
1359         * linux-nat.c (linux_child_follow_fork): Only detach breakpoints
1360         from the child if vforking.
1361         * inf-ptrace.c (inf_ptrace_follow_fork): No need to detach
1362         breakpoints from the child here.
1364 2009-05-17  Pedro Alves  <pedro@codesourcery.com>
1366         * infrun.c (pending_follow): Remove execd_pathname member.
1367         (resume): No longer handle TARGET_WAITKIND_EXECD pending follow.
1368         (handle_inferior_event): When handling a TARGET_WAITKIND_EXECD
1369         event, don't copy `execd_pathname' to pending_follow, use the
1370         event copy instead.  Release `execd_pathname' once done with
1371         handling the event.
1373         * infrun.c (pending_follow): Remove mention of exec events.
1375 2009-05-17  Hui Zhu  <teawater@gmail.com>
1377         * i386-tdep.c (i386_process_record): Make it extern.
1378         (i386_gdbarch_init): Don't call set_gdbarch_process_record
1379         here.
1380         * i386-tdep.h (i386_process_record): Declare.
1381         * i386-linux-tdep.c (i386_linux_init_abi): Call
1382         set_gdbarch_process_record.
1384 2009-05-17  Vladimir Prus  <vladimir@codesourcery.com>
1386         Always report varobj as changed when in_scope attribute changes.
1388         * varobj.c (install_new_value): If non-NULL-ness of value
1389         changed, return 1.
1391 2009-05-15  Paul Pluzhnikov  <ppluzhnikov@google.com>
1392         
1393         * NEWS: Mention set/show libthread-db-search-path.
1394         * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): New define.
1395         (LIBTHREAD_DB_SO): Moved from linux-thread-db.c
1396         * linux-thread-db.c (libthread_db_search_path): New setting.
1397         (thread_db_handle): New variable (replaces using_thread_db).
1398         (try_thread_db_load_1): New function.
1399         (try_thread_db_load, thread_db_load_search): Likewise.
1400         (dladdr_to_soname): Likewise.
1401         (thread_db_load): Iterate over possibly multiple libthread_db's.
1402         (check_for_thread_db): Attempt to load new libthread_db.
1403         (thread_db_detach, thread_db_wait): Unload libthread_db.
1404         (thread_db_mourn_inferior): Likewise.
1405         (_initialize_thread_db): Add new libthread-db-search-path option.
1406         Defer loading of libthread_db to check_for_thread_db.
1407         * solib.c (libpthread_name_p): New function.
1408         (libpthread_solib_p): Call it.
1409         * solib.h (libpthread_name_p): New prototype.
1410         
1411 2009-05-15  Pierre Muller  <muller@ics.u-strasbg.fr>
1413         * MAINTAINERS: Update my email address.
1414         
1415 2009-05-14  Paul Pluzhnikov  <ppluzhnikov@google.com>
1417         * breakpoint.h: Add breakpoint_re_set_objfile prototype.
1418         * breakpoint.c (create_overlay_event_breakpoint): Renamed
1419         from create_overlay_event_breakpoint_1, old
1420         create_overlay_event_breakpoint deleted.
1421         (breakpoint_re_set_objfile): Don't rescan all objfiles
1422         unnecessarily.
1423         (breakpoint_re_set): New function.
1424         * symfile.c (new_symfile_objfile): Call breakpoint_re_set_objfile
1425         instead of breakpoint_re_set.
1426         * objfiles.c (objfile_relocate): Likewise.
1427         
1428 2009-05-14  Joel Brobecker  <brobecker@adacore.com>
1430         * gdbarch.sh: Add comment documenting the target_gdbarch global.
1431         gdbarch.h does NOT need to be regenerated as the corresponding
1432         change has already been made in a previous commit.
1434 2009-05-14  Pierre Muller  <muller@ics.u-strasbg.fr>
1436         Remove all i386 debug register low level macros in config nm files.
1437         (I386_DR_LOW_SET_ADDR, I386_DR_LOW_RESET_ADDR): Remove.
1438         (I386_DR_LOW_GET_STATUS, I386_DR_LOW_SET_CONTROL): Remove.
1439         (I386_USE_GENERIC_WATCHPOIINTS): Remove.
1441         * i386-nat.h: New file (adapted from config/i386/nm-i386.h).
1442         (struct i386_dr_low_type): New type.
1443         (i386_dr_low): New global variable.
1444         * i386-nat.c (TARGET_HAS_DR_LEN_8): Update macro.
1445         (i386_insert_aligned_watchpoint): Replace i386 dr low macros by
1446         i386_dr_low struct variable fields.
1447         (i386_remove_aligned_watchpoint): Likewise.
1448         (i386_stopped_data_address): Likewise.
1449         (i386_stopped_by_hwbp): Likewise.
1450         (show_debug_regs_command_added): New static variable.
1451         (add_show_debug_regs_command): New static function.
1452         (i386_use_watchpoints): Call add_show_debug_regs_command if not done.
1453         (i386_set_debug_register_length): New function.
1454         (_initialize_i386_nat): Delete.
1455         
1456         * amd64-linux-nat.c: Include "i386-nat.h".
1457         (amd64_linux_dr_set_control):  Change to static.
1458         (amd64_linux_dr_get_status): Change to static.
1459         (amd64_linux_dr_set_addr,amd64_linux_dr_reset_addr): Likewise.
1460         (_initialize_amd64_linux_nat): Set i386_dr_low variable fields.
1461         
1462         * go32-nat.c: Include "i386-nat.h".
1463         (go32_set_addr): Change to static.
1464         (go32_set_dr7): Change to static. Change arg type to unisgned long.
1465         (go32_get_dr6): Change to static. Change return type to unisnged long.
1466         (init_go32_ops):  Set i386_dr_low variable fields.
1467         * i386-linux-nat.c: Include "i386-nat.h".
1468         (i386_linux_dr_set_control, i386_linux_dr_get_status): Change to static.
1469         (i386_linux_dr_set_addr, i386_linux_dr_reset_addr): Idem.
1470         (_initialize_i386_linux_nat):  Set i386_dr_low variable fields.
1471         * i386bsd-nat.h: Declare functions used for
1472         i386_dr_low fields in i386fbsd-nat.c.
1473         * i386fbsd-nat.c: Include "i386-nat.h".
1474         (_initialize_i386fbsd_nat): Set i386_dr_low variable fields.
1475         * windows-nat.c: Include "i386-nat.h".
1476         (cygwin_set_dr, cygwin_get_dr6, cygwin_set_dr7): Add prototypes.
1477         Change to static.
1478         (cygwin_get_dr6): Change return type to unisnged long.
1479         (cygwin_set_dr7): Change arg type to unisgned long.
1480         (init_windows_ops): Set i386_dr_low function fields.
1482         * amd64-windows-nat.c (_initialize_amd64_windows_nat): Call 
1483         i386_set_debug_register_length.
1484         * i386-windows-nat.c (_initialize_i386_windows_nat): Likewise.
1486         * config/i386/nm-cygwin.h: Remove all I386_* macros.
1487         * config/i386/nm-cygwin64.h: Likewise.
1488         * config/i386/nm-fbsd.h: Likewise.
1489         * config/i386/nm-linux.h: Likewise.
1490         * config/i386/nm-i386.h: Remove completely.
1491         * config/i386/nm-go32.h: Remove completely.
1492         * config/i386/nm-linux64.h: Remove completely.
1493         * config/i386/go32.mh (NAT_FILE): Remove entry.
1494         * config/i386/linux64.h (NAT_FILE): Change to config/nm-linux.h.
1496 2009-05-14  Jon Beniston  <jon@beniston.com>
1498         * MAINTAINERS: Add Jon Beniston to write after approval list.
1500 2009-05-13  Paul Pluzhnikov  <ppluzhnikov@google.com>
1502         * objc-lang.c (objc_objfile_data): New variable.
1503         (find_methods): Skip objfiles without Obj-C methods.
1504         (_initialize_objc_lang): New function.
1506 2009-05-13  Joel Brobecker  <brobecker@adacore.com>
1508         * c-lang.c (print_wchar): Remove unnecessary cast.
1510 2009-05-12  Jim Blandy  <jimb@red-bean.com>
1512         * MAINTAINERS: Remove self as m32c target maintainer.
1514 2009-05-12  Pedro Alves  <pedro@codesourcery.com>
1516         * cli/cli-decode.c (deprecated_add_set_cmd): Delete.
1517         * command.h (deprecated_add_set_cmd): Delete declaration.
1518         * gnu-nat.c (_initialize_gnu_nat): Replace 'maint gnu-debug' with
1519         'set debug gnu-nat' and 'show debug gnu-nat'.
1520         * i386-nat.c (_initialize_i386_nat): Replace 'maint
1521         show-debug-registers' with 'maint set show-debug-registers' and
1522         'maint show show-debug-registers'.
1523         * mips-linux-nat.c (_initialize_mips_linux_nat): Replace 'maint
1524         show-debug-registers' with 'maint set show-debug-registers' and
1525         'maint show show-debug-registers'.
1527 2009-05-12  Joel Brobecker <brobecker@adacore.com>
1529         * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
1530         pushing it on the output obstack.
1532 2009-05-11  Joel Brobecker <brobecker@adacore.com>
1534         Fix internal error on breaking at a multi-locations caller source line.
1535         * breakpoint.c (parse_breakpoint_sals): Set EXPLICIT_PC for the `break'
1536         command with no parameters.
1538 2009-05-11  Pedro Alves  <pedro@codesourcery.com>
1540         * linux-nat.c (enum sigchld_state): Delete.
1541         (linux_nat_async_events_state): Delete.
1542         (struct waitpid_result): Delete.
1543         (waitpid_queue): Delete.
1544         (queued_waitpid_1): Delete.
1545         (async_file_flush): New.
1546         (queued_waitpid, push_waitpid): Delete.
1547         (async_file_mark): New.
1548         (drain_queued_events): Delete.
1549         (my_waitpid): Remove locally queued events handling.
1550         (linux_test_for_tracefork): Upjust.
1551         (linux_child_follow_fork): Ditto.
1552         (sync_sigchld_action): Delete.
1553         (blocked_mask): Reinstate.
1554         (async_sigchld_action): Rename to...
1555         (sigchld_action): ... this.
1556         (block_child_signals): New.
1557         (restore_child_signals_mask): New.
1558         (lin_lwp_attach_lwp): Adjust.
1559         (linux_nat_create_inferior): Ditto.
1560         (linux_nat_attach): Also use lp->status in async mode.
1561         (get_pending_status): Don't use queued_waitpid.
1562         (linux_nat_detach): Don't drain locally queued events.
1563         (linux_nat_resume): Allow pending wait statuses stored lp->status
1564         in async mode.  If returning early due to a pending event,
1565         re-register the event source.
1566         (stop_wait_callback): Allow pending wait statuses stored
1567         lp->status in async mode.
1568         (pipe_to_local_event_queue, local_event_queue_to_pipe): Delete.
1569         (linux_nat_wait): Rename to ...
1570         (linux_nat_wait_1): ... this.  Allow pending wait statuses stored
1571         lp->status in async mode.  Always add WNOHANG to the waitpid
1572         options in async mode.
1573         (linux_nat_wait): New.
1574         (kill_callback): Don't drain locally queued events.
1575         (sigchld_handler): Rewrite.
1576         (linux_nat_is_async_p, linux_nat_can_async_p): Fix comments to
1577         refer to "set target-async".
1578         (linux_nat_async_mask): If in non-stop, and re-enabling async
1579         mode, re-register the target event source in the event loop.
1580         (linux_nat_event_pipe_pop, linux_nat_event_pipe_push)
1581         (get_pending_events, async_sigchld_handler)
1582         (linux_nat_async_events): Delete.
1583         (handle_target_event): New.
1584         (linux_nat_async_file_handler): Delete.
1585         (linux_async_pipe): New.
1586         (linux_nat_async): Only re-register in the event loop if not
1587         registered yet.  Always notify the event-loop once if enabling the
1588         event source.
1589         (linux_nat_stop_lwp): Rewrite to handle pending events stored in
1590         lp->status, not in the locally queued event list.
1591         (linux_nat_stop): Don't mask out async event handling.
1592         (linux_nat_setup_async): Delete.
1593         (_initialize_linux_nat): Adjust.
1594         (lin_thread_get_thread_signals): blocked_mask is global again.
1595         Adjust.
1597 2009-05-11  Pierre Muller  <muller@ics.u-strasbg.fr>
1599         Unify target macros.
1601         * target.h (STOPPED_BY_WATCHPOINT): Delete, replaced by ...
1602         (target_stoppped_by_watchpoint): New macro.
1603         (HAVE_STEPPABLE_WATCHPOINT): Delete, replaced by ...
1604         (target_have_steppable_watchpoint): New macro.
1605         (HAVE_CONTINUABLE_WATCHPOINT): Delete, replace by ...
1606         (target_have_continuable_watchpoint): New macro.
1607         (TARGET_CAN_USE_HARDWARE_WATCHPOINT):Delete, replaced by ...
1608         (target_can_use_hardware_watchpoint): New macro.
1609         (TARGET_REGION_OK_FOR_HW_WATCHPOINT):Delete, replaced by ...
1610         (target_region_ok_for_hw_watchpoint): New macro.
1612         * breakpoint.c (update_watchpoint): Use new macros.
1613         (bpstat_alloc): Likewise.
1614         (create_breakpoint): Likewise.
1615         (watch_command_1): Likewise.
1616         (can_use_hardware_watchpoint): Likewise.
1617         (do_enable_breakpoint): Likewise.
1618         * infrun.c (handle_inferior_event): Adapt to new macros.
1619         * mips-tdep.c (mips_gdbarch_init): Update comments.
1620         * procfs.c (procfs_set_watchpoint): Update comment.
1621         (procfs_insert_watchpoint): Adapt to new macros.
1622         * remote-m32r-sdi.c (m32r_stop):
1623         * remote-mips.c (mips_remove_breakpoint):
1624         * target.c (debug_to_region_ok_for_hw_watchpoint): Update to new macros.
1625         (debug_to_stopped_by_watchpoint): Likewise.
1628 2009-05-10  Pierre Muller  <muller@ics.u-strasbg.fr>
1630         * src/gdb/target.h: Remove all tests for already defined
1631         macros. All macros defined here should not be set in config
1632         headers anymore.
1634 2009-05-08  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
1636         * ppc-linux-nat.c (have_ptrace_getsetregs): New variable.
1637         (have_ptrace_getsetfpregs): Likewise.
1638         fetch_all_gp_regs): New function.
1639         (fetch_gp_regs): New function.
1640         (fetch_all_fp_regs): Likewise.
1641         (fetch_fp_regs): New function.
1642         (fetch_ppc_registers): Using the new methods to fetch general-
1643         purpose and floating-pointer registers.
1644         (store_all_gp_regs): New function.
1645         (store_gp_regs): Likewise.
1646         (store_all_fp_regs): New function.
1647         (store_fp_regs): Likewise.
1648         (store_ppc_registers): Using the new methods to store general-
1649         purpose and floating-pointer registers.
1651 2009-05-08  Doug Evans  <dje@google.com>
1653         * linux-nat.c (linux_xfer_siginfo): Delete unused locals lp, n.
1655 2009-05-07  Sergio Durigan Junior  <sergiodj@linux.vnet.ibm.com>
1657         * MAINTAINERS (Write After Approval): Add self.
1659 2009-05-07  Joel Brobecker  <brobecker@adacore.com>
1661         * gdbarch.h (target_gdbarch): Add comment documenting this global.
1663 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
1665         * acinclude.m4 (AM_ICONV): Prefer in-tree libiconv if present over
1666         system iconv.
1667         * configure: Regenerate.
1669 2009-05-06  Joel Brobecker  <brobecker@adacore.com>
1671         * utils.c: Add include of gdb_usleep.h.
1672         (defaulted_query): Detect false EOF conditions that happen
1673         on terminals opened with the O_NONBLOCK flag when there is
1674         nothing to read.
1676 2009-05-06  Pedro Alves  <pedro@codesourcery.com>
1678         * inferior.c (add_inferior): Move observer_notify_new_inferior
1679         call to ...
1680         (add_inferior_silent): ... here.
1682 2009-05-06  Pierre Muller  <muller@ics.u-strasbg.fr>
1683             Pedro Alves  <pedro@codesourcery.com>
1685         * procfs.c (procfs_insert_watchpoint, procfs_remove_watchpoint)
1686         (procfs_region_ok_for_hw_watchpoint, procfs_use_watchpoints): New
1687         functions.
1688         (procfs_stopped_by_watchpoint): Made static, ptid argument
1689         removed.
1690         (_initialize_procfs): Register new watchpoint related target
1691         functions.
1692         * config/i386/nm-i386sol2.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT)
1693         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT)
1694         (HAVE_CONTINUABLE_WATCHPOINT): Delete.
1695         (target_insert_watchpoint, target_remove_watchpoint): Delete.
1696         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
1697         declarations.
1698         * config/mips/nm-irix5.h (STOPPED_BY_WATCHPOINT)
1699         (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
1700         (target_insert_watchpoint, target_remove_watchpoint): Delete.
1701         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
1702         declarations.
1703         * config/sparc/nm-sol2.h (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
1704         (HAVE_CONTINUABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT): Delete.
1705         (target_insert_watchpoint, target_remove_watchpoint): Delete.
1706         (procfs_stopped_by_watchpoint, procfs_set_watchpoint): Delete
1707         declarations.
1709 2009-05-06  Hui Zhu  <teawater@gmail.com>
1711         * i386-tdep.c (i386_process_record): Change bzero to memset.
1713 2009-05-06  Hui Zhu  <teawater@gmail.com>
1715         * NEWS: Add item for process record and replay.
1717 2009-05-05  Maxim Grigoriev  <maxim2405@gmail.com>
1719         * xtensa-tdep.c (xtensa_frame_cache): Use pc instead of cache->pc.
1721 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
1723         * inferior.h (read_pc, write_pc): Remove.
1724         * regcache.c (read_pc, write_pc): Remove.
1726         * infrun.c (displaced_step_fixup): Use regcache_read_pc instead
1727         of read_pc.
1728         (handle_inferior_event): Use regcache_read_pc instead of read_pc
1729         when determining value of stop_pc.  Replace subsequent uses of
1730         read_pc by inspecting already-retrieved stop_pc value.
1731         (keep_going): Use regcache_read_pc instead of read_pc.
1733         * breakpoint.c (watchpoint_check): Use current frame architecture
1734         and PC instead of current_gdbarch and read_pc ().
1735         * tracepoint.c (set_traceframe_context): Replace PC argument
1736         with FRAME argument.
1737         (trace_start_command, finish_tfind_command): Update calls.
1738         (finish_tfind_command): Compare frame IDs to identify transitions
1739         between frames.
1740         (trace_find_pc_command): Use regcache_read_pc instead of read_pc.
1741         * rs6000-nat.c (exec_one_dummy_insn): Pass in regcache instead
1742         of gdbarch.  Use regcache_read_pc and regcache_write_pc instead
1743         of read_pc and write_pc.
1744         (store_register): Make regcache argument non-const.  Update call
1745         to exec_one_dummy_insn.
1747         * thread.c (switch_to_thread): Use regcache_read_pc instead of read_pc.
1748         * infcmd.c (post_create_inferior): Likewise.
1749         * solib-darwin.c (darwin_solib_create_inferior_hook): Likewise.
1750         * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
1751         * solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
1752         * solib-svr4.c (enable_break, svr4_relocate_main_executable): Likewise.
1753         * linux-fork.c (fork_load_infrun_state): Likewise.
1754         * hppa-hpux-tdep.c (hppa_hpux_push_dummy_code): Likewise.
1755         * record.c (record_wait): Likewise.
1756         * procfs.c (procfs_wait): Likewise.
1757         * remote-mips.c (common_open, mips_wait): Likewise.
1758         * remote-m32r-sdi.c (m32r_resume): Likewise.
1760         * symfile.c (generic_load): Use regcache_write_pc instead of write_pc.
1761         * monitor.c (monitor_create_inferior, monitor_load): Likewise.
1762         * m32r-rom.c (m32r_load, m32r_upload_command): Likewise.
1763         * remote-m32r-sdi.c (m32r_create_inferior, m32r_load): Likewise.
1764         * remote-mips.c (mips_create_inferior, mips_load): Likewise.
1766         * solib-darwin.c: Include "regcache.h".
1767         * solib-pa64.c: Include "regcache.h".
1768         * solib-svr4.c: Include "regcache.h.".
1770         * symfile.c: Do not mention read_pc or write_pc in comments.
1771         * dink32-rom.c: Likewise.
1772         * m32r-rom.c: Likewise.
1773         * mips-tdep.c: Likewise.
1775 2009-05-05  Ulrich Weigand  <uweigand@de.ibm.com>
1777         * fork-child.c (startup_inferior): Move setting stop_pc ...
1778         * infcmd.c (post_create_inferior): ... to here.
1780 2009-05-04  Michael Snyder  <msnyder@vmware.com>
1782         * NEWS: Add item for reverse debugging commands.
1784 2009-05-04  Pedro Alves  <pedro@codesourcery.com>
1786         * go32-nat.c (go32_stop): Delete.
1787         (go32_kill_inferior): Rewrite to only call go32_mourn_inferior.
1788         (go32_create_inferior): Don't call go32_stop or
1789         go32_kill_inferior.
1790         (go32_mourn_inferior): Inline go32_stop and go32_kill_inferior
1791         here.
1792         (init_go32_ops): Don't register go32_stop.
1794 2009-05-02  Eli Zaretskii  <eliz@gnu.org>
1796         * dbxread.c (read_dbx_symtab): Avoid compiler warnings for
1797         sym_name.
1799         * infcall.c (find_function_addr): Avoid compiler warnings for
1800         funaddr.
1802 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
1804         * dictionary.c (dict_hashed_vector, dict_hashed_expandable_vector)
1805         (dict_linear_vector, dict_linear_expandable_vector): Fix a comment typo.
1807 2009-05-01  Doug Evans  <dje@google.com>
1809         * linux-thread-db.c (thread_db_pid_to_str): Delete unused assignment
1810         to thread_info.
1812 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
1814         * record.c (_initialize_record): Reformat and clarify doc strings
1815         for stop-at-limit and insn-number-max.
1817         * go32-nat.c: Add comments about dirty secrets of DJGPP debugging.
1819 2009-05-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
1821         Make specifiable the make_function_type type memory ownership.
1822         * gdbtypes.c (make_function_type): New parameter `objfile', use it
1823         explicitely instead of TYPE-initialized removed local variable
1824         `objfile'.  Describe `objfile' it in the function comment.
1825         (lookup_function_type): Update make_function_type callers.
1826         * gdbtypes.h (make_function_type): Update the prototype.
1827         * jv-lang.c (java_link_class_type): Update make_function_type callers.
1828         * dwarf2read.c (read_subroutine_type): Likewise.
1829         * stabsread.c (read_type): Likewise.
1831 2009-05-01  Eli Zaretskii  <eliz@gnu.org>
1833         * go32-nat.c (go32_pid_to_str): Call normal_pid_to_str instead of
1834         printing a bogus "Thread <main>".
1835         (go32_thread_alive): Don't return 1 for null_ptid.
1837         * i386-tdep.c (i386_go32_init_abi): Override the number of
1838         registers due to non-support of SSE.
1840 2009-04-30  Anthony Green  <green@moxielogic.com>
1842         * configure.tgt: Link the moxie simulator in with gdb.
1844 2009-04-30  Paul Pluzhnikov  <ppluzhnikov@google.com>
1846         * elfread.c (elf_symtab_read): Don't assume .data and .rodata
1847         are present.
1849 2009-04-30  Hui Zhu  <teawater@gmail.com>
1850             Michael Snyder  <msnyder@vmware.com>
1852         I386 Linux process record and replay support.
1854         * i386-linux-tdep.c (i386_linux_record_tdep): New variable.
1855         This struct has the argument for the function
1856         "record_linux_system_call".
1857         (i386_linux_intx80_sysenter_record): New function. Parse the
1858         system call instruction and call function
1859         "record_linux_system_call" to record execute log.
1860         (i386_linux_init_abi): Initialize "i386_linux_record_tdep".
1861         Set "i386_linux_intx80_sysenter_record" to
1862         "i386_intx80_record" and "i386_sysenter_record".
1864 2009-04-30  Hui Zhu  <teawater@gmail.com>
1865             Michael Snyder  <msnyder@vmware.com>
1867         I386 architecture process record and replay support.
1869         * i386-tdep.c (PREFIX_REPZ, PREFIX_REPNZ, PREFIX_LOCK,
1870         PREFIX_DATA, PREFIX_ADDR): New macros. Help decode the i386
1871         instruction set.
1872         (aflag, dflag, override, modrm, mod, reg, rm, ot,
1873         i386_record_pc): New variables. Ditto.
1874         (i386_record_modrm, i386_record_lea_modrm_addr,
1875         i386_record_lea_modrm): New functions. Ditto.
1876         (i386_process_record): New function. Parse the instruction in
1877         address "addr" and record the values of registers and memory
1878         that will be changed by this instruction.
1879         (i386_gdbarch_init): Set "i386_process_record" to GDBARCH
1880         "process_record" interface.
1881         * i386-tdep.h (gdbarch_tdep): New function pointers
1882         "i386_intx80_record" and "i386_sysenter_record" that point to
1883         the function that can record "intx80" and "sysenter" execute
1884         log.
1886 2009-04-30  Hui Zhu  <teawater@gmail.com>
1887             Michael Snyder  <msnyder@vmware.com>
1889         * infrun.c (use_displaced_stepping): Return false if process
1890         record and replay target is used.
1891         (proceed): Call function "record_not_record_set" if pocess
1892         record and replay target is used.
1894 2009-04-30  Hui Zhu  <teawater@gmail.com>
1895             Michael Snyder  <msnyder@vmware.com>
1897         Linux process record and replay support.
1899         * Makefile.in (ALLDEPFILES): Add linux-record.c.
1900         (ALL_TARGET_OBS): Add linux-record.o.
1901         * configure.tgt (x86_64-*-linux*): Add linux-record.o.
1902         (i[34567]86-*-linux*): Add linux-record.o.
1903         * linux-record.c, linux-record.h: New file.
1905 2009-04-30  Hui Zhu  <teawater@gmail.com>
1906             Michael Snyder  <msnyder@vmware.com>
1908         Process record and replay target.
1910         * Makefile.in (SFILES): Add record.c.
1911         (COMMON_OBS): Add record.o.
1912         * record.c, record.h: New file.
1914 2009-04-30  Hui Zhu  <teawater@gmail.com>
1915             Michael Snyder  <msnyder@vmware.com>
1917         * target.h (strata): New stratum "record_stratum".
1919 2009-04-30  Hui Zhu  <teawater@gmail.com>
1920             Michael Snyder  <msnyder@vmware.com>
1922         GDBARCH interface for process record and replay.
1924         * gdbarch.sh (process_record): This interface point to the
1925         function that records the inferior execute log.
1927 2009-04-29  Doug Evans  <dje@google.com>
1929         * i386-nat.c (child_post_startup_inferior): Delete, unused.
1931 2009-04-29  Pedro Alves  <pedro@codesourcery.com>
1933         * breakpoint.c (print_exception_catchpoint): Access `b' directly
1934         instead of `b->loc->owner'.
1935         (print_mention_exception_catchpoint): Ditto.
1937 2009-04-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
1939         * macrocmd.c (info_macro_command): Print -Dname=value if LINE is zero.
1941 2009-04-27  Tom Tromey  <tromey@redhat.com>
1943         * c-exp.y (yylex): Handle '[' and ']' like '(' and ')'.
1945 2009-04-27  Jerome Guitton  <guitton@adacore.com>
1947         * symtab.c (append_exact_match_to_sals): New function, extracted
1948         from expand_line_sal.
1949         (expand_line_sal): Use append_exact_match_to_sals to append exact
1950         matches. If none found, append all best items.
1952 2009-04-27  Jerome Guitton  <guitton@adacore.com>
1954         * main.c (captured_main): Move gdbinit lookups after gdb_init.
1956 2009-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
1958         PR gdb/9675:
1959         * dwarf2read.c (unsigned_int_compar, inherit_abstract_dies): New.
1960         (read_func_scope): Call inherit_abstract_dies.
1962 2009-04-25  Eli Zaretskii  <eliz@gnu.org>
1964         * Makefile.in (ALLDEPFILES): Remove duplicate entries for
1965         sparc-sol2-nat.c and sparc-sol2-tdep.c.
1967         * stack.c (_initialize_stack) <disassemble-next-line>: Doc fix.
1969 2009-04-24  Pierre Muller  <muller@ics.u-strasbg.fr>
1971         ARI change: Use "/* ARI: rule */" pattern.
1972         * utils.c: Update ARI patterns.
1973         * gdb_dirent.h: Likewise.
1975 2009-04-23  Anthony Green  <green@moxielogic.com>
1977         * MAINTAINERS: Add moxie target.
1978         * configure.tgt: Add moxie-*-elf target.
1979         * moxie-tdep.c: New file.
1980         * moxie-tdep.h: New file.
1982 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
1984         * ada-lang.c: Remove an extra empty line. No code change.
1986 2009-04-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
1988         Fix double free on error inserting the breakpoint instruction.
1989         * breakpoint.c (create_breakpoints): Move the
1990         update_global_location_list call to ...
1991         (break_command_really): ... here together with the second local call
1992         both unified after all the cleanups.
1994 2009-04-23  Sergio Durigan Junior <sergiodj@linux.vnet.ibm.com>
1995             Tom Tromey  <tromey@redhat.com>
1997         * configure, config.in: Regenerate.
1998         * configure.ac: Support for relocatable GDB datadir.  Use
1999         GDB_AC_WITH_DIR.  Always define TARGET_SYSTEM_ROOT_RELOCATABLE.
2000         * acinclude.m4 (GDB_AC_WITH_DIR): New defun.
2001         * top.c (init_main): Add "set data-directory".
2002         * defs.h (gdb_datadir): Declare.
2003         * main.c (gdb_datadir): New global.
2004         (captured_main): Initialize gdb_datadir.  Use relocate_directory.
2005         (relocate_path): New function.
2006         (relocate_directory): Likewise.
2007         (get_init_files): Use relocate_path.
2008         (README): Mention --with-gdb-datadir.
2010 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
2012         * ada-tasks (task_command_1): Call target_find_new_threads.
2014 2009-04-23  Joel Brobecker  <brobecker@adacore.com>
2016         * stack.c (do_gdb_disassembly): Print the exception message if an
2017         error was thrown while trying to perform the disassembly.
2019 2009-04-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
2021         * varobj.c (free_variable): Replace free_current_contents by xfree.
2023 2009-04-22  Kazu Hirata  <kazu@codesourcery.com>
2025         * arm-linux-nat.c (fetch_register, store_register): Use
2026         ARM_CPSR_GREGNUM instead of ARM_CPSR_REGNUM.
2027         * arm-linux-tdep.c (arm_linux_supply_gregset,
2028         arm_linux_collect_gregset): Likewise.
2029         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): New.
2030         * arm-tdep.h (ARM_CPSR_REGNUM): Remove.
2032 2009-04-22  Hui Zhu  <teawater@gmail.com>
2034         * stack.c (_initialize_stack): Set the default of
2035         disassemble-next-line to off.
2037 2009-04-21  Tom Tromey  <tromey@redhat.com>
2039         * acinclude.m4: Use AS_HELP_STRING, not AC_HELP_STRING.
2040         * configure.ac: Use AS_HELP_STRING, not AC_HELP_STRING.
2042 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
2044         * configure.ac: Add quotes to not lose brackets in help text.
2045         * configure: Rebuild.
2047 2009-04-21  Andreas Schwab  <schwab@linux-m68k.org>
2049         * configure.ac: Don't postprocess Makefile in config.status.
2050         Substitute GDB_NM_FILE.  Don't substitute nm_h.
2051         * Makefile.in (GDB_NM_FILE): Substitute.
2052         (TAGS): Use $(GDB_NM_FILE) instead of $(NAT_FILE).
2053         * configure: Regenerate.
2054         * gnulib/Makefile.in: Regenerate.
2056 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
2058         * configure.ac (--with-datarootdir, --with-docdir, --with-pdfdir,
2059         --with-htmldir): New.
2060         * configure: Regenerate.
2062 2009-04-21  Tom Tromey  <tromey@redhat.com>
2064         * configure: Rebuild.
2065         * configure.ac: Use lower case for start of help strings.  Clean
2066         up --with-sysroot help.
2068 2009-04-21  Tom Tromey  <tromey@redhat.com>
2070         * configure: Rebuild.
2071         * acinclude.m4 (AM_ICONV): Use AC_HELP_STRING.
2072         * configure.ac: Use AC_HELP_STRING.  Use upper case for variables
2073         in help.
2075 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
2077         ARI fix: remove "%p".
2078         * ia64-tdep.c (ia64_frame_this_id): Use host_address_to_string function.
2079         (ia64_sigtramp_frame_this_id): Ditto.
2080         (ia64_libunwind_frame_this_id): Ditto.
2081         (ia64_libunwind_sigtramp_frame_this_id): Ditto.
2082         * symmisc.c (maintenance_info_psymtabs): Ditto.
2084 2009-04-21  Joseph Myers  <joseph@codesourcery.com>
2086         * configure.ac (--with-relocated-sources): New.
2087         * configure, config.in: Regenerate.
2088         * source.c (add_substitute_path_rule): Remove static.
2089         * source.h (add_substitute_path_rule): Declare.
2090         * main.c: Include "source.h".
2091         (captured_main): Add substitution rule if RELOC_SRCDIR.
2093 2009-04-21  Pierre Muller  <muller@ics.u-strasbg.fr>
2095         * gnu-nat.h (proc_debug): Add missing continuation line in macro.
2097 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
2099         * NEWS: Mention MIPS/Linux hardware watchpoint support.
2101 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
2103         * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
2104         (maint_show_dr, super_close): New variables.
2105         (super_fetch_registers, super_store_registers): Make static.
2106         (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
2107         (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
2108         (pt_watch_style): Define new enum.
2109         (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
2110         Define new structs.
2111         (watch_readback_valid, watch_readback, current_watches, watch_mirror):
2112         New variables.
2113         (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
2114         (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
2115         (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
2116         (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
2117         (type_to_irw, fill_mask, try_one_watch)
2118         (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
2119         (mips_linux_new_thread, populate_regs_from_watches)
2120         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
2121         (mips_linux_close): New functions.
2122         (_initialize_mips_linux_nat): Register watchpoint functions with
2123         the target_ops.  Add show-debug-regs maintenance command.
2125 2009-04-20  David Daney  <ddaney@caviumnetworks.com>
2127         * infrun.c (handle_inferior_event): Move gegisters_changed call down.
2129 2009-04-19  Pedro Alves  <pedro@codesourcery.com>
2131         * NEWS: Mention gdbserver support for x86 Windows CE.
2133 2009-04-19  Eli Zaretskii  <eliz@gnu.org>
2135         * config/djgpp/fnchange.lst: Fix typos.
2137         Set default host and target charsets in the DJGPP port.
2139         * config/djgpp/config.sed (am_cv_langinfo_codeset)
2140         (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
2141         in all configure scripts that define ac_cv_env_CPP_value.
2143         * go32-nat.c (dos_codepage, nl_langinfo): New functions.
2144         Include langinfo.h.
2146         * config/djgpp/nl_types.h: New file.
2148         * config/djgpp/langinfo.h: New file.
2150         * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
2152 2009-04-18  Carlos O'Donell  <carlos@codesourcery.com>
2154         * Makefile.in (MAKEHTML): Set to makeinfo --html.
2155         (MAKEHTMLFLAGS): Set to empty.
2157 2009-04-18  Eli Zaretskii  <eliz@gnu.org>
2159         * NEWS: Mention all new set/show commands added since GDB 6.8 was
2160         released.
2162         * go32-nat.c (go32_sysinfo): Check if the call to
2163         __dpmi_get_capabilities fills the buffer with information, and
2164         don't use the buffer if not.
2166 2009-04-17  Tom Tromey  <tromey@redhat.com>
2168         * charset.c (_initialize_charset): Add special case for "646".
2170 2009-04-17  Carlos O'Donell  <carlos@codesourcery.com>
2172         * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
2173         * configure: Regenerate.
2174         * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
2175         configure substitutions.
2176         (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
2178 2009-04-17  Pierre Muller  <muller@ics.u-strasbg.fr>
2180         ARI fix: Do not use %p, replace by call to host_address_to_string
2181         for host pointers.
2182         * darwin-nat.c (darwin_xfer_partial): Apply change.
2183         * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
2184         * gnu-nat.h (proc_debug): Ditto.
2185         * symmisc.c (maintenance_info_symtabs): Ditto.
2186         (maintenance_info_psymtabs): Ditto.
2187         * windows-nat.c (handle_load_dll): Ditto.
2188         (handle_unload_dll, info_w32_command, handle_exception): Ditto.
2189         * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
2191 2009-04-17  Joseph Myers  <joseph@codesourcery.com>
2193         * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
2194         --enable-64-bit-bfd.
2195         (sparc-*-linux*): Likewise.
2197 2009-04-17  Eli Zaretskii  <eliz@gnu.org>
2199         * go32-nat.c (go32_sysinfo): Update list of Windows versions of
2200         the NT family.
2202 2009-04-16  Pedro Alves  <pedro@codesourcery.com>
2204         * remote.c (remote_query_attached): Fix pasto in packet_ok result
2205         checking.
2207 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
2209         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
2210         Revert the previous change.  Might not be correct, actually.
2212 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
2214         * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
2215         (ada_get_current_task, ada_print_exception_breakpoint_nontask)
2216         (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
2217         Remove declaration. These are non-existent functions.
2219 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
2221         * procfs.c (solib_mappings_callback, find_memory_regions_callback):
2222         Fix a compilation warning on mips-irix due to casting from
2223         a pointer of different size.
2225 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
2227         * ada-lang.c (symtab_for_sym): Delete.
2228         (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
2230 2009-04-16  Joel Brobecker  <brobecker@adacore.com>
2232         * ada-lang.c (extract_string): Delete.
2233         (ada_main_name): Reimplement using target_read_string instead of
2234         extract_string.
2236 2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
2238         * m68klinux-nat.c: Remove obsolete comment.
2239         (fetch_register, store_register): Don't call
2240         gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
2241         which are always nops here.
2243 2009-04-14  Tom Tromey  <tromey@redhat.com>
2245         * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
2246         (c_printstr): Likewise.
2247         * charset.c: Include gdb_wait.h.
2248         (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
2249         (find_charset_names): Use pexecute.  Handle libiconv's output.
2250         Detect errors.
2251         (_initialize_charset): Use xstrdup.
2252         * gdb_wchar.h: Check HAVE_BTOWC.  Split PHONY_ICONV and wchar
2253         cases.
2254         (INTERMEDIATE_ENCODING): New define.
2255         * configure, config.in: Rebuild.
2256         * configure.ac: Check for btowc.
2258 2009-04-15  Tom Tromey  <tromey@redhat.com>
2260         * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
2262 2009-04-15  Eli Zaretskii  <eliz@gnu.org>
2264         * utils.c (parse_escape): Initialize target_char to pacify GCC.
2266 2009-04-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
2268         * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
2270 2009-04-14  Pierre Muller  <muller@ics.u-strasbg.fr>
2272         ARI fix: sprintf rule.
2273         * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
2274         * ada-lang.c (add_angle_brackets): Use xstrprintf.
2275         (ada_decode): Replace sprintf by xsnprintf.
2276         (find_old_style_renaming_symbol): Ditto.
2277         (ada_to_fixed_type_1, ada_enum_name): Ditto.
2280 2009-04-14  Joel Brobecker  <brobecker@adacore.com>
2282         * target.c (target_mourn_inferior): Call bfd_cache_close_all
2283         after having executed the target mourn_inferior routine.
2285 2009-04-14  Eli Zaretskii  <eliz@gnu.org>
2287         * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
2288         undefined.
2290 2009-04-13  David Daney  <ddaney@caviumnetworks.com>
2292         * infrun.c (maybe_software_singlestep): New function.
2293         (resume): Call maybe_software_singlestep.
2294         (handle_inferior_event): Same.
2296 2009-04-13  Tom Tromey  <tromey@redhat.com>
2298         * python/python-frame.c (frapy_richcompare): Return
2299         Py_NotImplemented, not an error.  Handle Py_NE as well.
2301 2009-04-13  Eli Zaretskii  <eliz@gnu.org>
2303         * charset.c (EILSEQ): Define if not defined by system headers.
2305 2009-04-11  Eli Zaretskii  <eliz@gnu.org>
2307         * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
2308         to be consistent with renaming config.intl.in into config_intl.in.
2310         * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
2311         consistent with the change from 2008-11-09.
2313 2009-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
2315         * gdbtypes.c: Remove excessive parentheses at the return keywords.
2316         * varobj.c (varobj_invalidate): Fix indentation.
2317         * varobj.c (varobj_invalidate): Fix formatting text width.
2319 2009-04-08  Vladimir Prus  <vladimir@codesourcery.com>
2321         Implement -exec-jump.
2323         * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
2324         * mi/mi-main.c (mi_cmd_exec_jump): New.
2325         * mi/mi-cmds.c (mi_cmds): Register exec-jump.
2327 2009-04-07  Doug Evans  <dje@google.com>
2329         * symfile.c (symbol_file_clear): Fix indentation.
2331 2009-04-06  Mark Kettenis  <kettenis@gnu.org>
2333         * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
2335 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
2337         * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
2338         (ppc_linux_auxv_parse): New function.
2339         (ppc_linux_read_description): Use ppc_linux_target_wordsize.
2340         (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
2342 2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
2344         * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
2345         BFD to contents of SPU name note.
2346         (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
2347         with "from_tty" argument 1 instead of 0.
2349 2009-04-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
2351         * dwarf2read.c
2352         (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
2353         Create the symbol in local scope.
2354         * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
2356 2009-04-02  Keith Seitz  <keiths@redhat.com>
2358         * stabsread.c (read_member_functions): GCC may emit an extra space
2359         at the end of the names "__base_ctor" and "__base_dtor"; so ignore
2360         whitespace when looking for these functions.
2362 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
2364         Change the default value for "set print frame-arguments" to scalars.
2366         * stack.c (print_frame_arguments): Set initial value to "scalars".
2368 2009-04-01  Aleksandar Ristovski  <aristovski@qnx.com>
2370         * mips-tdep.c (mips_numeric_register_alieses): New definition.
2371         (mips_gdbarch_init): Add user registers from
2372         mips_numeric_register_aliases.
2374 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
2376         * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
2378 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
2380         * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
2381         this is the last one.
2383 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
2385         * remote.c (append_resumption): New.
2386         (remote_vcont_resume): Use it.
2388 2009-04-01  Joel Brobecker  <brobecker@adacore.com>
2390         * windows-nat.c (+windows_get_ada_task_ptid): New function.
2391         (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
2393 2009-03-31  Daniel Jacobowitz  <dan@codesourcery.com>
2394             Keith Seitz  <keiths@redhat.com>
2395             Jan Kratochvil  <jan.kratochvil@redhat.com>
2397         PR gdb/6817
2398         * Makefile.in (dbxread.o): Update.
2399         * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
2400         * dwarf2read.c (GDB_FORM_cached_string): New.
2401         (read_partial_die): Use dwarf2_canonicalize_name.
2402         (dwarf2_linkage_name): Use dwarf2_name.
2403         (dwarf2_canonicalize_name): New.
2404         (dwarf2_name): Use dwarf2_canonicalize_name.
2405         (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
2406         * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
2407         * symtab.c (lookup_symbol_in_language): Canonicalize input before
2408         searching.
2409         * cp-name-parser.y: operator() requires two parameters,
2410         according to libiberty.
2411         * minsyms.c (lookup_minimal_symbol): Canonicalize input
2412         before searching.
2413         * NEWS: Update.
2415 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
2417         Provide support for (Ada) task-specific breakpoints.
2419         * ada-lang.h (ada_get_task_number): Add declaration.
2420         (breakpoint_ada_task_match): Delete declaration.
2421         * ada-tasks.c (ada_get_task_number): Make non-static.
2422         * breakpoint.h (struct breakpoint): Add field "task".
2423         * breakpoint.c (print_one_breakpoint_location): Add handling of
2424         task-specific breakpoints.
2425         (create_breakpoint, create_breakpoints, find_condition_and_thread):
2426         New parameter "task".
2427         (break_command_really): Update calls to find_condition_and_thread
2428         and create_breakpoints.
2429         (breakpoint_re_set_one): Update call to find_condition_and_thread.
2430         Set b->task.
2432 2009-03-31  Joel Brobecker  <brobecker@adacore.com>
2434         * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
2436 2009-03-31  Pedro Alves  <pedro@codesourcery.com>
2438         * remote.c (remote_notice_new_inferior): Use ptid_is_pid.  Check
2439         if the thread's ptid without a thread id field is in the list
2440         before calling thread_change_ptid.
2441         (extended_remote_attach_1): In non-stop mode, do not rely on
2442         querying the current thread, instead, query the thread list, and
2443         select the first thread of the process.
2444         * gdbthread.h (first_thread_of_process): Declare.
2445         * thread.c (first_thread_of_process): Define.
2447 2009-03-30  Stan Shebs  <stan@codesourcery.com>
2449         Make tracepoints into a type of breakpoint.
2450         * breakpoint.h (enum bptype): Add bp_tracepoint.
2451         (struct breakpoint): Add fields step_count, pass_count, actions.
2452         (get_tracepoint, get_tracepoint_by_number): Declare.
2453         (all_tracepoints): Declare.
2454         * breakpoint.c: Include tracepoint.h, readline.h.
2455         (ALL_TRACEPOINTS): Move here from tracepoint.c.
2456         (tracepoint_count): Ditto.
2457         (should_be_inserted): GDB does not insert tracepoints itself.
2458         (print_it_typical): Add tracepoint case.
2459         (bpstat_what): Ditto.
2460         (print_one_breakpoint_location): Ditto, and add printing for
2461         pass count, step count, and action list.
2462         (user_settable_breakpoint): Add tracepoint case.
2463         (allocate_bp_location): Ditto.
2464         (set_breakpoint_location_function): Ditto.
2465         (disable_breakpoints_in_shlibs): Ditto.
2466         (mention): Ditto.
2467         (break_command_really): Add argument traceflag, use to choose
2468         basic breakpoint type.
2469         (break_command_1): Pass extra argument.
2470         (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
2471         (breakpoint_re_set_one): Add tracepoint case.
2472         (disable_command, enable_command): Ditto.
2473         (set_tracepoint_count): Move here from tracepoint.c.
2474         (trace_command): Move here from tracepoint.c and use
2475         break_command_really.
2476         (tracepoints_info): Move here from tracepoint.c and call
2477         breakpoints_info.
2478         (enable_trace_command): Move here from tracepoint.c and call
2479         enable_command.
2480         (disable_trace_command): Move here from tracepoint.c and call
2481         disable_command.
2482         (delete_trace_command): Move here from tracepoint.c and call
2483         delete_breakpoint.
2484         (trace_pass_command): Move here from tracepoint.c.
2485         (get_tracepoint_by_number): Ditto.
2486         (tracepoint_save_command): Ditto.
2487         (get_tracepoint): New function.
2488         (all_tracepoints): New function.
2489         (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
2490         deprecate "enable trace" and "disable trace" commands.
2491         * tracepoint.h (struct tracepoint): Remove.
2492         (tracepoint_chain): Remove decl.
2493         (deprecated_create_tracepoint_hook): Remove decl.
2494         (deprecated_delete_tracepoint_hook): Remove decl.
2495         (deprecated_modify_tracepoint_hook): Remove decl.
2496         (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
2497         (free_actions): Update signature.
2498         (validate_actionline): Update signature.
2499         (end_actions_pseudocommand): Declare.
2500         (while_stepping_pseudocommand): Declare.
2501         * tracepoint.c: Include breakpoint.h.
2502         (tracepoint_chain, tracepoint_count): Remove.
2503         (free_actions, make_cleanup_free_actions): Update signature.
2504         (trace_command, set_raw_tracepoint): Remove.
2505         (trace_mention): Remove.
2506         (tracepoints_info): Remove.
2507         (tracepoint_operation, map_args_over_tracepoints): Remove.
2508         (get_tracepoint_by_number): Remove.
2509         (enable_trace_command, disable_trace_command): Remove.
2510         (delete_trace_command, trace_pass_command): Remove.
2511         (trace_actions_command, read_actions): Update signature.
2512         (validate_actionline): Update signature, use bp loc.
2513         (encode_actions): Ditto.
2514         (download_tracepoint): New function, body of trace_start_command.
2515         (trace_start_command): Call it, use all_tracepoints.
2516         (tracepoint_save_command): Remove.
2517         (tracepoint_dump_command): Use get_tracepoint.
2518         (end_actions_pseudocommand): Make globally visible.
2519         (while_stepping_pseudocommand): Ditto.
2520         (_initialize_tracepoint): Move command definitions to breakpoint.c.
2522 2009-03-30  Thiago Jung Bauermann  <bauerman@br.ibm.com>
2524         Expose frames to Python.
2525         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
2526         (SUBDIR_PYTHON_SRCS): Add python-frame.c.
2527         (python-frame.o): New target.
2528         * python/python-frame.c: New file.
2529         * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
2530         gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
2531         gdbpy_initialize_frames): New prototypes.
2532         * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
2533         (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
2534         entries.
2535         * stack.c (find_frame_funname): New function, factored out of
2536         print_frame.
2537         (print_frame): Call find_frame_funname.
2538         * stack.h (find_frame_funname): Add prototype.
2540 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
2542         Remove unused value_object attribute `owned_by_gdb'.
2543         * python/python-value.c (value_object): Remove owned_by_gdb
2544         attribute.
2545         (valpy_dealloc): Remove reference to self->owned_by_gdb.
2546         (valpy_new): Likewise.
2547         (value_to_value_object): Likewise.
2549 2009-03-29  Thiago Jung Bauermann  <bauerman@br.ibm.com>
2551         Change gdb.Value.address from a method to an attribute.
2552         * python/python-value.c (value_object): Add `address' element.
2553         (valpy_dealloc): Decrement reference to self->address if set.
2554         (valpy_new): Initialize val_obj->address.
2555         (valpy_address): Rename to ...
2556         (valpy_get_address): ... this.  Change signature from method to
2557         attribute.  Update self->address if not set.
2558         (value_to_value_object): Initialize val_obj->address.
2559         (value_object_getset): Add `address' element.
2560         (value_object_methods): Remove `address' element.
2562 2009-03-29  Andreas Schwab  <schwab@linux-m68k.org>
2564         * observer.sh: Set LANG/LC_ALL to C, not c.
2566 2009-03-28  Kevin Buettner  <kevinb@redhat.com>
2568         * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
2569         `char' is unsigned.
2571 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
2573         * remote.c (remote_stop_ns): If multi-process extensions are off,
2574         and GDB is requesting the whole process to stop, sent "vCont;t",
2575         not "vCont;t:-1"
2577 2009-03-28  Pedro Alves  <pedro@codesourcery.com>
2579         * inf-loop.c (inferior_event_handler): Avoid calling is_running on
2580         null inferior_ptid.
2582 2009-03-27  Eli Zaretskii  <eliz@gnu.org>
2584         * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
2586 2009-03-26  Doug Evans  <dje@google.com>
2588         * thread.c (do_restore_current_thread_cleanup): Redo test for
2589         whether to restore old->inferior_ptid.
2591 2009-03-26  Tom Tromey  <tromey@redhat.com>
2593         * breakpoint.c (resolve_sal_pc): Preserve original line number
2594         when skipping prologue.
2596 2009-03-26  Doug Evans  <dje@google.com>
2598         * thread.c (inferior_thread) Remove "extern" in definition.
2600 2009-03-26  Thiago Jung Bauermann  <bauerman@br.ibm.com>
2602         Add gdb.Value.is_optimized_out attribute.
2603         * python/python-value.c (valpy_get_is_optimized_out): New
2604         function.
2605         (value_object_getset): New variable.
2606         (value_object_type): Initialize tp_getset element.
2608 2009-03-26  Joel Brobecker  <brobecker@adacore.com>
2610         Recognize missing DW_AT_location as <value optimized out>.
2611         * dwarf2read.c
2612         (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
2613         Call add_symbol_to_list.
2615 2009-03-25  Tom Tromey  <tromey@redhat.com>
2617         * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
2618         * stack.c (print_this_frame_argument_p): Use check_typedef.
2620 2009-03-25  Tom Tromey  <tromey@redhat.com>
2622         * configure: Rebuild.
2623         * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
2624         Rearrange flags setting.  Add comments.
2626 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
2628         * config/i386/nm-i386.h: Remove code within
2629         I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
2630         * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
2631         macro.
2632         * config/i386/nm-cygwin64.h: Ditto.
2633         * config/i386/nm-fbsd.h: Ditto.
2634         * config/i386/nm-go32.h: Ditto.
2635         * config/i386/nm-linux.h: Ditto.
2636         * config/i386/nm-linux64.h: Ditto.
2638 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
2640         ARI fix: "xasprintf" rule.
2641         * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
2643 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
2645         * remote.c (remote_start_remote): In non-stop mode, call
2646         init_wait_for_inferior before adding threads and inferiors.
2648 2009-03-25  Joel Brobecker  <brobecker@adacore.com>
2650         * breakpoint.c (breakpoint_thread_match): Split a large condition
2651         into several smaller conditions.  No behavior change.
2653 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
2655         * infrun.c (infrun_thread_thread_exit): New.
2656         (_initialize_infrun): Attach it to the thread_exit observer.
2657         * thread.c (delete_thread_1): Always call the observer, passing it
2658         the silent flag.
2659         * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter.  If
2660         SILENT, return immediately.
2662 2009-03-25  Pedro Alves  <pedro@codesourcery.com>
2664         * infrun.c (normal_stop): Use has_stack_frames instead of
2665         target_has_stack.
2666         * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
2667         when there is no thread selected.
2668         (mi_cmd_execute): Don't special case commands that can run without
2669         a valid selected thread.
2670         * top.c (execute_command): Don't special case commands that can
2671         run without a valid selected thread.  Use has_stack_frames.
2672         * infcmd.c (ensure_valid_thread): New.
2673         (continue_1, step_1, jump_command, signal_command): Use it.
2674         (detach_command): Error out if there's no selected thread/inferior.
2675         * thread.c (print_thread_info): Allow having no thread selected.
2676         (switch_to_thread): Don't read the PC if there is no current thread.
2677         (do_restore_current_thread_cleanup): Don't record the current
2678         frame if there is no current thread.
2679         (make_cleanup_restore_current_thread): Don't read frame info if
2680         there is no selected thread.
2681         (_initialize_thread): Don't mark commands as
2682         "no_selected_thread_ok".
2683         * frame.c (get_current_frame): Error out if there is no valid
2684         selected thread.
2685         (has_stack_frames): Return false if there is no valid
2686         selected thread.
2687         * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
2688         "no_selected_thread_ok".
2689         * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
2690         (get_cmd_no_selected_thread_ok): Delete.
2691         * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
2692         (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
2693         Delete declaration.
2694         * stack.c (get_selected_block): Use has_stack_frames.
2696 2009-03-25  Thiago Jung Bauermann  <bauerman@br.ibm.com>
2698         Fix size of FPSCR in Power 7 processors.
2699         * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
2700         (PPC_FEATURE_HAS_DFP): New #define.
2701         (ppc_linux_read_description): Check for DFP feature instead of
2702         ISA 2.05 to decide on size of the FPSCR.
2704 2009-03-25  Kevin Buettner  <kevinb@redhat.com>
2706         * mn10300-tdep.c (trad-frame.h): Don't include.
2707         (prologue-value.h): Include.
2708         (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
2709         (struct mn10300_prologue): Define.
2710         (push_reg, translate_rreg, check_for_saved): New functions.
2711         (mn10300_analyze_prologue): Rewrite, using prologue-value
2712         machinery.  Handle more instructions than before.  Permit
2713         instructions to occur in any order.
2714         (mn10300_skip_prologue): Find the extents of the function
2715         in question; mn10300_analyze_prologue no longer does this.
2716         (mn10300_analyze_frame_prologue): New function.
2717         (mn10300_frame_base): New function.
2718         (mn10300_frame_this_id): Rewrite, no longer using trad-frame
2719         implementation.
2720         (mn10300_frame_prev_register): Likewise.
2721         (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
2722         (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
2723         `this_frame'.
2724         (mn10300_frame_unwind_init): Don't call frame_base_set_default().
2726 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
2728         Fix completer problem for filename completion on the first try.
2730         * gdb/completer.h (gdb_completion_word_break_characters): New function.
2731         * gdb/completer.c: Include gdb_assert.h.
2732         (complete_line_internal_reason): New enum.
2733         (complete_line_internal): Change last argument type to
2734         complete_line_internal_reason.
2735         Modify function to handle the different complete_line_internal_reason
2736         argument values.
2737         (complete_line): Adapt to change in complete_line_internal.
2738         (command_completer): Ditto.
2739         (gdb_completion_word_break_characters): Implement new function.
2740         * top.c (init_main): Set  rl_completion_word_break_hook to
2741         gdb_completion_word_break_characters.
2744 2009-03-25  Pierre Muller  <muller@ics.u-strasbg.fr>
2746         ARI fix: "strlen d_name" rule.
2747         * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
2750 2009-03-24  Tom Tromey  <tromey@redhat.com>
2751             Pedro Alves  <pedro@codesourcery.com>
2753         * configure, config.in: Rebuild.
2754         * configure.ac: Check for libiconvlist.
2755         * charset.c: Check HAVE_LIBICONVLIST.
2756         * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
2757         LIBICONV_LIBDIR.  Update CPPFLAGS and LIBS.
2758         * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
2759         Remove.
2760         (INTERNAL_CFLAGS_BASE): Update.
2761         (INTERNAL_LDFLAGS): Update.
2762         (CLIBS): Update.
2764 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
2766         * configure.ac: Initialize the variable $PREFER_CURSES.
2767         * configure: Regenerated.
2769 2009-03-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
2771         * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
2772         * configure: Regenerated.
2774 2009-03-24  Pierre Muller  <muller@ics.u-strasbg.fr>
2776         ARI fix: "strerror" rule.
2777         * darwin-nat.c (darwin_ptrace): Use safe_strerror.
2778         (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
2780 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2782         * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
2783         before looking up the fields inside our struct type.
2785 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2787         * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
2788         trying to resolve the type qualification.
2790 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2792         * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
2793         we try to apply the attribute on the real type, rather than
2794         its associated typedef.
2796 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2798         * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
2799         to make sure we try to get the modulus of the actual type, not the
2800         associated typedef.
2802 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2804         * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
2805         [OP_ATR_LENGTH]: When using the attribute on a type, make sure
2806         to get the real type, not the associated typedef.
2808 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2810         * ada-lang.c (ada_get_field_index): Add handling of the case
2811         when TYPE is a typedef of a struct.
2813 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2815         Add gdb_usleep as a portable version of usleep based on gdb_select.
2816         * gdb_usleep.h, gdb_usleep.c: New files.
2817         * Makefile.in (SFILES): Add gdb_usleep.c.
2818         (HFILES_NO_SRCDIR): Add gdb_usleep.h.
2819         (COMMON_OBS): Add gdb_usleep.o.
2820         * ser-unix.c (hardwire_send_break): Replace call to gdb_select
2821         by call to gdb_usleep.
2823 2009-03-23  Joel Brobecker  <brobecker@adacore.com>
2825         * buildsym.c (end_symtab): If we ignore the subfiles, then
2826         unlink the associated symtabs if they were already allocated.
2828 2009-03-23  Jerome Guitton  <guitton@adacore.com>
2830         Provide a way to force building of GDB with libcurses.
2831         * configure.ac: Add --with-curses.
2832         * configure: Regenerated.
2834 2009-03-23  Tom Tromey  <tromey@redhat.com>
2836         * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
2837         error message.
2839 2009-03-23  Paul Pluzhnikov  <ppluzhnikov@google.com>
2841         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
2842         solib_contains_address_p instead of searching.
2844 2009-03-23  Tom Tromey  <tromey@redhat.com>
2846         * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
2847         (iconv): Make 'inbuf' argument const.
2848         (convert_between_encodings): Use ICONV_CONST.
2849         (wchar_iterate): Likewise.
2851 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
2853         * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
2854         dynamically loaded function.
2855         (LookupPrivilegeValueA): Ditto.
2856         (OpenProcessToken): Ditto.
2857         (AdjustTokenPrivileges): Rename and define placeholder for address of
2858         dynamically loaded function.
2859         (LookupPrivilegeValueA): Ditto.
2860         (OpenProcessToken): Ditto.
2861         (set_process_privilege): Remove check for loaded functions.
2862         (bad_OpenProcessToken): Define.
2863         (_initialize_loadable): Load token functions from advapi here, setting
2864         OpenProcessToken function to a dummy static function which always return
2865         error if OS doesn't support this functionality.
2867 2009-03-22   Nicolas Roche  <roche@adacore.com>
2868              Christopher Faylor <me+cygwin@cgf.cx>
2870         * win32-nat.c (ctrl_c_handler): New function.
2871         (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
2872         is run in a separate console.
2874 2009-03-22  Christopher Faylor  <me+cygwin@cgf.cx>
2876         * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
2877         for dynamically loaded function.
2878         (DebugBreakProcess): Ditto.
2879         (DebugSetProcessKillOnExit): Ditto.
2880         (EnumProcessModules): Ditto.
2881         (GetModuleFileNameExA): Ditto.
2882         (GetModuleInformation): Ditto.
2883         (DebugActiveProcessStop): Rename and define placeholder for address of
2884         dynamically loaded function.
2885         (DebugBreakProcess): Ditto.
2886         (DebugSetProcessKillOnExit): Ditto.
2887         (EnumProcessModules): Ditto.
2888         (GetModuleFileNameExA): Ditto.
2889         (GetModuleInformation): Ditto.
2890         (psapi_loaded): Delete.
2891         (get_module_name): Don't check psapi_loaded, just rely on the fact that
2892         dynamically loaded functions will return failure if they weren't
2893         previously found.
2894         (has_detach_ability): Delete.
2895         (windows_attach): Remove call to has_detach_ability ().  Just rely on
2896         functions being callable.
2897         (bad_DebugActiveProcessStop): Define.
2898         (bad_DebugBreakProcess): Ditto.
2899         (bad_DebugSetProcessKillOnExit): Ditto.
2900         (bad_EnumProcessModules): Ditto.
2901         (bad_GetModuleFileNameExA): Ditto.
2902         (bad_GetModuleInformation): Ditto.
2903         (_initialize_loadable): Rename from _initialize_psapi.  Initialize all
2904         dynamic storage here, setting nonexistent functions to dummy static
2905         functions which always return error.
2907 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
2909         * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
2910         to the about_to_proceed observer notification.
2911         (mi_about_to_proceed): New.
2912         (mi_on_resume): Only output ^running and the prompt here if the
2913         target was proceeded.
2914         * breakpoint.c (breakpoint_proceeded): New static.
2915         (breakpoint_about_to_proceed): New.
2916         (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
2917         the about_to_proceed observer notification.
2918         * inferior.h (breakpoint_proceeded): Delete declaration.
2919         * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
2920         Notify the about_to_proceed observers.
2921         (struct inferior_status): Delete breakpoint_proceeded member.
2922         (save_inferior_status): Don't save it.
2923         (restore_inferior_status): Don't restore it.
2924         * mi-main.h (mi_proceeded): Declare.
2925         * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
2926         a command.
2928 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
2930         * gdbthread.h (struct thread_info): Add in_infcall member.
2931         * infcall.c (run_inferior_call): Save, set and restore in_infcall.
2932         Remove reverences to suppress_resume_observer.  Refresh
2933         `call_thread' after returning from `proceed'.
2934         * infcmd.c (suppress_resume_observer): Delete.
2935         * inferior.h (suppress_resume_observer): Delete declaration.
2936         * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
2937         inferior function.
2938         * thread.c (set_running): Remove references to
2939         suppress_resume_observer.
2940         * infrun.c (struct inferior_status): Add in_infcall member.
2941         (save_inferior_status): Save it.
2942         (restore_inferior_status): Restore it.
2944 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
2946         * infcall.c (run_inferior_call): Remove references to
2947         suppress_stop_observer.
2948         * infcmd.c (suppress_stop_observer): Delete.
2949         (finish_command_continuation): Remove NOTE.  Don't clear
2950         suppress_stop_observer anymore.
2951         (finish_command_continuation_free_arg): Likewise.
2952         (finish_forward): Remove references to suppress_stop_observer.
2953         Call normal_stop observer if we haven't already.
2954         * inferior.h (suppress_stop_observer): Delete.
2955         * infrun.c (normal_stop): When deciding to suppress the
2956         normal_stop observer, check for proceed_to_finish instead of
2957         suppress_stop_observer.
2959 2009-03-22  Pedro Alves  <pedro@codesourcery.com>
2961         * symfile.c (symfile_relocate_debug_section): Remove check for
2962         SEC_DEBUGGING.
2964 2009-03-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
2965             Jim Blandy  <jimb@red-bean.com>
2966             Thiago Jung Bauermann  <bauerman@br.ibm.com>
2967             Tom Tromey  <tromey@redhat.com>
2969         Miscellaneous fixes to the Python code.
2970         * python/python-cmd.c (cmdpy_init): Accept keyword
2971         arguments.
2972         * python/python-value.c (valpy_string): Accept keyword
2973         arguments.
2974         (valpy_binop): Use `break' to exit from the TRY_CATCH block.
2975         Do not call value_to_value_object on NULL RES_VAL.
2976         (value_object_methods): Change `string' entry to also accept
2977         keyword arguments.
2978         (convert_value_from_python): Return a copy of the value if obj is
2979         a gdb.Value object.
2980         (value_object_methods): Mark the `string' method as accepting
2981         keywords, and show method "prototype" in the doc string.
2982         * python/python.c (get_parameter): Don't return inside a
2983         TRY_CATCH.
2985 2009-03-20  Tom Tromey  <tromey@redhat.com>
2987         Add support for convenience functions in Python.
2988         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
2989         (SUBDIR_PYTHON_SRCS): Add python-function.c.
2990         (python-function.o): New target.
2991         * eval.c: Include "python/python.h" and <ctype.h>.
2992         (evaluate_subexp_standard): Handle values of type
2993         TYPE_CODE_INTERNAL_FUNCTION.
2994         * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
2995         * parse.c (write_exp_string): Remove duplicate word in comment.
2996         * python/python-function.c: New file.
2997         * python/python-internal.h (gdbpy_initialize_functions): Add
2998         prototype.
2999         * python/python.c (_initialize_python): Call
3000         gdbpy_initialize_functions.
3001         * valprint.c (value_check_printable): Handle values of type
3002         TYPE_CODE_INTERNAL_FUNCTION.
3003         * value.c: Include "cli/cli-decode.h".
3004         (internal_function): New struct.
3005         (functionlist, internal_fn_type): New static variables.
3006         (lookup_only_internalvar,
3007         lookup_internalvar): Add const qualifier to name argument.
3008         (create_internalvar): Likewise.  Initialize new field.
3009         (set_internal_var): Fix typo in comment.  Don't allow assignment
3010         to canonical variable.
3011         (value_create_internal_function, value_internal_function_name,
3012         call_internal_function, function_command, function_destroyer,
3013         add_internal_function): New functions.
3014         (_initialize_values): Create `function' placeholder command.
3015         Initialize internal_fn_type.
3016         * value.h (lookup_only_internalvar, create_internalvar,
3017         lookup_internalvar): Add const qualifier to name argument.
3018         (internal_function_fn, add_internal_function, call_internal_function,
3019         value_internal_function_name): Add prototypes.
3020         (struct internalvar) <canonical>: New field.
3022 2009-03-20  Tom Tromey  <tromey@redhat.com>
3024         * c-lang.c (evaluate_subexp_c): Call check_typedef.
3026 2009-03-20  Tom Tromey  <tromey@redhat.com>
3027             Julian Brown  <julian@codesourcery.com>
3029         PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
3030         PR i18n/9401, PR exp/9613:
3031         * NEWS: Update
3032         * value.h (value_typed_string): Declare.
3033         (val_print_string): Update.
3034         * valprint.h (print_char_chars): Update.
3035         * valprint.c (print_char_chars): Add type argument.  Update.
3036         (val_print_string): Likewise.
3037         * valops.c (value_typed_string): New function.
3038         * utils.c (host_char_to_target): New function.
3039         (parse_escape): Use host_char_to_target, host_hex_value.  Update.
3040         Remove '^' case.
3041         (no_control_char_error): Remove.
3042         * typeprint.c (print_type_scalar): Update.
3043         * scm-valprint.c (scm_scmval_print): Update.
3044         * scm-lang.h (scm_printchar, scm_printstr): Update.
3045         * scm-lang.c (scm_printchar): Add type argument.
3046         (scm_printstr): Likewise.
3047         * printcmd.c (print_formatted): Update.
3048         (print_scalar_formatted): Update.
3049         (printf_command) <wide_string_arg, wide_char_arg>: New constants.
3050         Handle '%lc' and '%ls'.
3051         * parser-defs.h (struct typed_stoken): New type.
3052         (struct stoken_vector): Likewise.
3053         (write_exp_string_vector): Declare.
3054         * parse.c (write_exp_string_vector): New function.
3055         * p-valprint.c (pascal_val_print): Update.
3056         * p-lang.h (is_pascal_string_type, pascal_printchar,
3057         pascal_printstr): Update.
3058         * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
3059         Add 'char_type' argument.
3060         (pascal_emit_char): Add type argument.
3061         (pascal_printchar): Likewise.
3062         (pascal_printstr): Likewise.
3063         * objc-lang.c (objc_emit_char): Add type argument.
3064         (objc_printchar): Likewise.
3065         (objc_printstr): Likewise.
3066         * macroexp.c (get_character_constant): Handle unicode characters.
3067         Use c_parse_escape.
3068         (get_string_literal): Handle unicode strings.  Use
3069         c_parse_escape.
3070         * m2-valprint.c (print_unpacked_pointer): Update.
3071         (m2_print_array_contents): Update.
3072         (m2_val_print): Update.
3073         * m2-lang.c (m2_emit_char): Add type argument.
3074         (m2_printchar): Likewise.
3075         (m2_printstr): Likewise.
3076         * language.h (struct language_defn) <la_printchar>: Add type
3077         argument.
3078         <la_printstr, la_emitchar>: Likewise.
3079         (LA_PRINT_CHAR): Likewise.
3080         (LA_PRINT_STRING): Likewise.
3081         (LA_EMIT_CHAR): Likewise.
3082         * language.c (unk_lang_emit_char): Add type argument.
3083         (unk_lang_printchar): Likewise.
3084         (unk_lang_printstr): Likewise.
3085         * jv-valprint.c (java_val_print): Update.
3086         * jv-lang.c (java_emit_char): Add type argument.
3087         * f-valprint.c (f_val_print): Update.
3088         * f-lang.c (f_emit_char): Add type argument.
3089         (f_printchar): Likewise.
3090         (f_printstr): Likewise.
3091         * expprint.c (print_subexp_standard): Update.
3092         * charset.h (target_wide_charset): Declare.
3093         (c_target_char_has_backslash_escape, c_parse_backslash,
3094         host_char_print_literally, host_char_to_target,
3095         target_char_to_host, target_char_to_control_char): Remove.
3096         (enum transliterations): New type.
3097         (convert_between_encodings): Declare.
3098         (HOST_ESCAPE_CHAR): New define.
3099         (host_letter_to_control_character, host_hex_value): Declare.
3100         (enum wchar_iterate_result): New enum.
3101         (struct wchar_iterator): Declare.
3102         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
3103         wchar_push_back): Declare.
3104         * charset-list.h: New file.
3105         * c-valprint.c (textual_name): New function.
3106         (textual_element_type): Handle wide character types.
3107         (c_val_print): Pass original type to textual_element_type.  Handle
3108         wide character types.
3109         (c_value_print): Use textual_element_type.  Pass original type of
3110         value to val_print.
3111         * c-lang.h (enum c_string_type): New type.
3112         (c_printchar, c_printstr): Update.
3113         * c-lang.c (classify_type): New function.
3114         (print_wchar): Likewise.
3115         (c_emit_char): Add type argument.  Handle wide characters.
3116         (c_printchar): Likewise.
3117         (c_printstr): Add type argument.  Handle wide and multibyte
3118         character sets.
3119         (convert_ucn): New function.
3120         (emit_numeric_character): Likewise.
3121         (convert_octal): Likewise.
3122         (convert_hex): Likewise.
3123         (ADVANCE): New macro.
3124         (convert_escape): New function.
3125         (parse_one_string): Likewise.
3126         (evaluate_subexp_c): Likewise.
3127         (exp_descriptor_c): New global.
3128         (c_language_defn): Use exp_descriptor_c.
3129         (cplus_language_defn): Likewise.
3130         (asm_language_defn): Likewise.
3131         (minimal_language_defn): Likewise.
3132         (charset_for_string_type): New function.
3133         * c-exp.y (%union): Add 'svec' and 'tsval'.
3134         (CHAR): New token.
3135         (exp): Add CHAR production.
3136         (string_exp): Rewrite.
3137         (exp) <string_exp>: Rewrite.
3138         (tempbuf): Now global.
3139         (tempbuf_init): New global.
3140         (parse_string_or_char): New function.
3141         (yylex) <tempbuf>: Now global.
3142         <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
3143         Remove.
3144         Handle 'u', 'U', and 'L' prefixes.  Call parse_string_or_char.
3145         (c_parse_escape): New function.
3146         * auxv.c (fprint_target_auxv): Update.
3147         * ada-valprint.c (ada_emit_char): Add type argument.
3148         (ada_printchar): Likewise.
3149         (ada_print_scalar): Update.
3150         (printstr): Add type argument.  Update calls to ada_emit_char.
3151         (ada_printstr): Add type argument.
3152         (ada_val_print_array): Update.
3153         (ada_val_print_1): Likewise.
3154         * ada-lang.c (emit_char): Add type argument.
3155         * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
3156         type arguments.
3157         * gdb_locale.h: Include langinfo.h.
3158         * charset.c (_initialize_charset): Set default host charset from
3159         the locale.  Don't register charsets.  Add target-wide-charset
3160         commands.  Call find_charset_names.
3161         (struct charset, struct translation): Remove.
3162         (GDB_DEFAULT_HOST_CHARSET): Remove.
3163         (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
3164         (target_wide_charset_name): New global.
3165         (show_host_charset_name): Handle "auto".
3166         (show_target_wide_charset_name): New function.
3167         (host_charset_enum, target_charset_enum): Remove.
3168         (charset_enum): New global.
3169         (all_charsets, register_charset, lookup_charset, all_translations,
3170         register_translation, lookup_translation): Remove.
3171         (simple_charset, ascii_print_literally, ascii_to_control): Remove.
3172         (iso_8859_print_literally, iso_8859_to_control,
3173         iso_8859_family_charset): Remove.
3174         (ebcdic_print_literally, ebcdic_to_control,
3175         ebcdic_family_charset): Remove.
3176         (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
3177         register_iconv_charsets): Remove.
3178         (target_wide_charset_be_name, target_wide_charset_le_name): New
3179         globals.
3180         (identity_either_char_to_other): Remove.
3181         (set_be_le_names, validate): New functions.
3182         (backslashable, backslashed, represented): Remove.
3183         (default_c_target_char_has_backslash_escape): Remove.
3184         (default_c_parse_backslash, iconv_convert): Remove.
3185         (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
3186         ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
3187         iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
3188         ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
3189         ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
3190         ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
3191         (table_convert_char, table_translation, simple_table_translation):
3192         Remove.
3193         (current_host_charset, current_target_charset,
3194         c_target_char_has_backslash_escape_func,
3195         c_target_char_has_backslash_escape_baton): Remove.
3196         (c_parse_backslash_func, c_parse_backslash_baton): Remove.
3197         (host_char_to_target_func, host_char_to_target_baton): Remove.
3198         (target_char_to_host_func, target_char_to_host_baton): Remove.
3199         (cached_iconv_host_to_target, cached_iconv_target_to_host):
3200         Remove.
3201         (lookup_charset_or_error, check_valid_host_charset): Remove.
3202         (set_host_and_target_charsets): Remove.
3203         (set_host_charset, set_target_charset): Remove.
3204         (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
3205         (set_target_wide_charset_sfunc): New function.
3206         (show_charset): Print target wide character set.
3207         (host_charset, target_charset): Rewrite.
3208         (target_wide_charset): New function.
3209         (c_target_char_has_backslash_escape): Remove.
3210         (c_parse_backslash): Remove.
3211         (host_letter_to_control_character): New function.
3212         (host_char_print_literally): Remove.
3213         (host_hex_value): New function.
3214         (target_char_to_control_char): Remove.
3215         (cleanup_iconv): New function.
3216         (convert_between_encodings): New function.
3217         (target_char_to_host): Remove.
3218         (struct wchar_iterator): Define.
3219         (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
3220         wchar_push_back): New functions.
3221         (do_cleanup_iterator): New function.
3222         (char_ptr): New typedef.
3223         (charsets): New global.
3224         (add_one, find_charset_names): New functions.
3225         (default_charset_names): New global.
3226         (auto_host_charset_name): Likewise.
3227         * aclocal.m4, config.in, configure: Rebuild.
3228         * configure.ac: Call AM_LANGINFO_CODESET.
3229         (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
3230         (AM_ICONV): Invoke earlier.
3231         * acinclude.m4: Include codeset.m4.  Subst LIBICONV_INCLUDE and
3232         LIBICONV_LIBDIR.  Check for libiconv in build tree.
3233         * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
3234         (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
3235         (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
3236         * gdb_obstack.h (obstack_grow_wstr): New define.
3237         * gdb_wchar.h: New file.
3238         * defs.h: Include it.
3240 2009-03-20  Tom Tromey  <tromey@redhat.com>
3241             Jan Kratochvil  <jan.kratochvil@redhat.com>
3243         * dwarf2read.c (process_die): Handle DW_TAG_typedef.
3244         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
3245         typedef.
3246         * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
3247         SYMBOL_TYPE result.
3248         * ada-typeprint.c (print_array_type): Do the NULL check
3249         unconditionally.
3251 2009-03-19  Tom Tromey  <tromey@redhat.com>
3253         * utils.c (do_obstack_free): New function.
3254         (make_cleanup_obstack_free): Likewise.
3255         * defs.h (make_cleanup_obstack_free): Declare.
3257 2009-03-18  Doug Evans  <dje@google.com>
3259         * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
3260         int, not a long long.
3261         (linux_nat_info_proc_cmd): Store pid in long instead of long long.
3263         * expprint.c (dump_raw_expression): Print note if non-NULL.
3265         * printcmd.c (display_uses_solib_p): Redo loop, scan element list
3266         backwards.
3268 2009-03-18  Nathan Sidwell  <nathan@codesourcery.com>
3270         * Makefile.in: Update license to GPLv3.
3271         * ada-exp.y: Update license to GPLv3.
3272         * ada-lex.l: Update license to GPLv3.
3273         * c-exp.y: Update license to GPLv3.
3274         * cp-name-parser.y: Update license to GPLv3.
3275         * darwin-nat-info.c: Update license to GPLv3.
3276         * f-exp.y: Update license to GPLv3.
3277         * gdb_thread_db.h: Update license to GPLv3.
3278         * hppanbsd-nat.c: Update license to GPLv3.
3279         * hppanbsd-tdep.c: Update license to GPLv3.
3280         * hppaobsd-tdep.c: Update license to GPLv3.
3281         * jv-exp.y: Update license to GPLv3.
3282         * m2-exp.y: Update license to GPLv3.
3283         * objc-exp.y: Update license to GPLv3.
3284         * p-exp.y: Update license to GPLv3.
3285         * reply_mig_hack.awk: Update license to GPLv3.
3286         * reverse.c: Update license to GPLv3.
3287         * xtensa-xtregs.c: Update license to GPLv3.
3289 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
3291         * remote.c (remote_close): Don't call generic_mourn_inferior.
3292         (remote_mourn_1): Call generic_mourn_inferior after closing the
3293         target.
3295 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
3297         * remote.c (remote_start_remote): Add missing call to
3298         init_wait_for_inferior in non-stop mode.
3300 2009-03-18  Pedro Alves  <pedro@codesourcery.com>
3302         * breakpoint.c (bpstat_should_step): Only consider software
3303         watchpoints that have a location.
3305 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
3307         Add a target_ops parameter to the to_kill method in struct target_ops.
3309         * target.h (struct target_ops): Add a "target_ops *" parameter to
3310         method to_kill.
3311         (target_kill): Remove macro. Add declaration.
3312         * target.c (debug_to_kill): Delete, no longer necessary.
3313         (target_kill): New function.
3314         (update_current_target):  Stop inheriting the to_kill method.
3315         Do not de_fault it to no_process either.
3316         (setup_target_debug): Do not set current_target.to_kill.
3317         * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
3318         linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
3319         remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
3320         accordingly.
3322 2009-03-17  Doug Evans  <dje@google.com>
3324         * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
3325         glibc 2.3.2 and earlier.
3327 2009-03-17  Joel Brobecker  <brobecker@adacore.com>
3329         * frame.c (get_prev_frame_1): Do not perform the inner_frame
3330         sanity check if this_frame is not NORMAL.
3331         (frame_id_inner): Update the description of this function.
3333 2009-03-17  Hui Zhu  <teawater@gmail.com>
3335         * stack.c: Change the introduce of "disassemble-next-line".
3337 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
3339         * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
3340         declare as extern.
3342 2009-03-17  Hui Zhu  <teawater@gmail.com>
3344         * stack.c: Include valprint.h.
3345         (disassemble_next_line): New enum.
3346         (show_disassemble_next_line): New function.  Show the current
3347         value of disassemble-next-line.
3348         (gdb_disassembly_stub_args): New struct for argument passing
3349         between function do_gdb_disassembly and function
3350         gdb_disassembly_stub.
3351         (gdb_disassembly_stub): New function.  Helper for
3352         gdb_disassembly.
3353         (do_gdb_disassembly): New function.  Use TRY_CATCH to catch
3354         the exception from the gdb_disassembly because it will be
3355         broken by filter sometime.
3356         (print_frame_info): If disassemble-next-line is set to auto
3357         or on and doesn't have the line debug messages for $pc,
3358         output the next instruction.
3359         If disassemble-next-line is set to on and there is line debug
3360         messages, output assembly codes for next line.
3361         (_initialize_stack): Make the "set disassemble-next-line"
3362         command an auto-boolean command.  Change its class to
3363         class_stack.  Place it in the top level set list.  Extend help
3364         to describe the auto mode.
3366 2009-03-17  Pedro Alves  <pedro@codesourcery.com>
3368         * infrun.c (normal_stop): Don't overwrite old_chain.
3370 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
3372         * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
3373         which is undefined, by call to regcache_invalidate, which should
3374         do what the original author wanted to do.
3376 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
3378         * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
3379         (mips_create_inferior): Likewise.
3381 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
3383         * go32-nat.c (go32_create_inferior): Add missing ops parameter.
3385 2009-03-16  Joel Brobecker  <brobecker@adacore.com>
3387         * darwin-nat.c (darwin_resume): Fix a compiler warning when
3388         building on x86_64-darwin.
3390 2009-03-16  Tristan Gingold  <gingold@adacore.com>
3392         * configure.tgt: Add handling for x86_64-darwin.
3394 2009-03-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
3396         * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
3398 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
3400         * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
3401         Use the ops parameter to get to the target beneath, rather than
3402         using the current_target global.  Using the current_target global
3403         was an unintended accident.
3405 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
3407         Fix an error happening while loading symbols from a core file
3408         (on AIX).
3410         * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
3411         to detect whether we're debugging a core file or not.
3413 2009-03-15  Joel Brobecker  <brobecker@adacore.com>
3415         Modernize the aix-thread later by getting rid of the base_target
3416         global.  This brings back to life the AIX port which was otherwise
3417         crashing all the time.
3419         * aix-thread.c (base_target): Delete.
3420         (pd_enable): Do not set base_target.
3421         (aix_thread_attach): Use find_target_beneath instead of base_target.
3422         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
3423         (aix_thread_fetch_registers, aix_thread_store_registers),
3424         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
3425         (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
3426         (aix_thread_kill): Delete. Does not seem necessary.
3427         (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
3429 2009-03-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
3431         * stack.c (return_command <retval_exp>): New variables retval_expr
3432         and old_chain.  Inline parse_and_eval to initialize retval_expr.  Check
3433         RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
3434         if RETURN_TYPE is NULL.
3436 2009-03-14  Pedro Alves  <pedro@codesourcery.com>
3438         * remote.c (PACKET_qAttached): New.
3439         (remote_query_attached): New.
3440         (remote_add_inferior): Add new `attached' argument.  Handle it.
3441         (remote_notice_new_inferior, remote_start_remote): Adjust to pass
3442         -1 to remote_add_inferior in new parameter.
3443         (extended_remote_attach_1): Adjust to pass 1 to
3444         remote_add_inferior in the new parameter.
3445         (extended_remote_create_inferior_1): Adjust to pass 0 to
3446         remote_add_inferior in the new parameter.
3447         (_initialize_remote): Add "set/show remote query-attached-packet"
3448         commands.
3450 2009-03-13  Tom Tromey  <tromey@redhat.com>
3452         * symtab.c (lookup_symbol_in_language): Use a cleanup.
3454 2009-03-13  Doug Evans  <dje@google.com>
3456         * exceptions.h: Clean up some comments on catch_exceptions usage.
3457         * exceptions.c: Ditto.  Plus mark catch_errors as superseded by
3458         catch_exceptions.
3460 2009-02-17  Joel Brobecker  <brobecker@adacore.com>
3462         The following patch helps getting rid of a warning inside solib-som.c.
3464         * source.c (source_full_path_of): Constify parameter filename.
3465         * defs.h (source_full_path_of): Update declaration accordingly.
3467 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3469         * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
3470         BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
3471         Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
3473 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3475         * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
3476         promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
3478 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3480         * ada-tasks.c (ada_task_is_alive): Move up and make static.
3481         * ada-lang.h (ada_task_is_alive): Remove declaration.
3483 2009-03-12  Jerome Guitton  <guitton@adacore.com>
3485         * ada-lang.c (ada_delta): Change the type of numerators and
3486         denominators to DOUBLEST, as they may not fit into a long.
3487         (scaling_factor): Ditto.
3489 2009-03-12  Jerome Guitton  <guitton@adacore.com>
3491         * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
3493 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3495         * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
3496         types, if we are unable to determine the actual symbol type
3497         from its tag, then use the static approximation instead.
3499 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3501         Fix crash printing packed record with packed array.
3503         * ada-lang.c (ada_modulus_from_name): New function.
3504         (ada_modulus): In the case where the type length is bigger than
3505         the size of the type used to hold the bounds, try determining
3506         the modulus from the type name.
3507         (ada_value_primitive_packed_val): Fix bug in the computation of
3508         ntarg causing an out-of-buffer invalid access.
3510 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3512         Fix segfault when printing short_integer'last.
3514         * ada-lang.c (ada_find_any_type): Search in the primitive types
3515         if a symbol could not be found.
3517 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3519         * ada-tasks.c (task_states,long_task_states): Add new states
3520         Activating and Acceptor_Delay_Sleep.  Update the description
3521         of state Acceptor_Sleep.
3523 2009-03-12  Jonas Maebe <jonas.maebe@elis.ugent.be>  (obvious change)
3525         Fix a build failure on Darwin following some changes in
3526         the profile of some target_ops methods.
3528         * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
3529         where missing.
3530         (darwin_stop_inferior, darwin_detach): Likewise.
3532 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
3534         Include token in ^running notification for CLI commands.
3536         * mi/mi-main.c (mi_execute_command): Set current_token here.
3537         (mi_cmd_execute): Do not set current_token here.
3539 2009-03-12  Vladimir Prus  <vladimir@codesourcery.com>
3541         Fix MI timings.
3543         * mi/mi-main.c (mi_print_timing_maybe): New.
3544         (captured_mi_execute_command): Simplify. Output timings to
3545         CLI commands, too.
3546         (mi_execute_async_cli_command): Do not print timings.
3547         * mi/mi-main.h (mi_print_timing_maybe): Declare.
3548         * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
3550 2009-03-12  Jerome Guitton  <guitton@adacore.com>
3552         * xcoffread.c (process_linenos): Check if the line in the
3553         include table refers to the main source file and, if so,
3554         add them to the main subfile.
3556 2009-03-12  Joel Brobecker  <brobecker@adacore.com>
3558         Fix a build failure on AIX introduced after a change in the profile
3559         of some of the "methods" in the target_ops structure.
3560         * aix-thread.c: Add missing target_ops parameter throughout.
3562         Implement Ada task switching on AIX.
3563         * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
3564         (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
3566 2009-03-11  Daniel Jacobowitz  <dan@codesourcery.com>
3568         * breakpoint.c (bpstat_check_breakpoint_conditions): Use
3569         value_mark and value_free_to_mark.
3570         * objfiles.c (free_objfile): Call objfile_free_data before
3571         freeing the BFD.
3573 2009-03-10  Hui Zhu  <teawater@gmail.com>
3575         * disasm.c (gdb_disassembly): Remove unused argument
3576         "line_num".
3577         * disasm.h (gdb_disassembly): Ditto.
3578         * cli/cli-cmds.c (print_disassembly): Ditto.
3579         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
3581 2009-03-09  Paul Pluzhnikov  <ppluzhnikov@google.com>
3583         * solib.c (solib_contains_address_p): New function.
3584         (solib_name_from_address): Use it.
3585         * printcmd.c (display_uses_solib_p): Use it.
3586         * solib.h (solib_contains_address_p): Declare it.
3588 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
3590         * varobj.c (free_variable): Call value_free.
3592 2009-03-09  Jan Kratochvil  <jan.kratochvil@redhat.com>
3594         PR gdb/9873:
3595         * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
3596         Move the variable `macinfo_type' out of the loop.  Create a new
3597         processing pass before the current one to pre-create `current_file'.
3598         New complaint on misplaced zero/non-zero definitions/includes.
3599         Skip first DW_MACINFO_start_file with `at_commandline' set.
3601 2008-03-09  Vladimir Prus  <vladimir@codesourcery.com>
3603        * solib.c (reload_shared_libraries): Give
3604        inferior a chance to reset solib breakpoint.
3605        Reinit frame cache.
3607 2009-03-08  Christopher Faylor  <me+cygwin@cgf.cx>
3609         * windows-nat.c (dr): Redefine to use largest possible integer which
3610         holds a pointer.
3611         (cygwin_set_dr): Avoid coercion.
3613 2009-03-08  Oswald Buddenhagen  <oswald.buddenhagen@trolltech.de>
3615         * windows-nat.c (windows_create_inferior): Implement --tty handling on
3616         non-cygwin.
3618 2009-03-06  Paul Pluzhnikov  <ppluzhnikov@google.com>
3620         Rename solib_address to solib_name_from_address.
3621         * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
3622         (disable_breakpoints_in_unloaded_shlib): Update.
3623         * printcmd.c (display_uses_solib_p): Likewise.
3624         * stack.c (print_frame): Likewise.
3625         * solib.c: Rename.
3626         * solib.h: Rename.
3628 2009-03-05  Paul Pluzhnikov  <ppluzhnikov@google.com>
3630         * printcmd.c (do_one_display): Reparse exp_string.
3631         (display_uses_solib_p): New function.
3632         (clear_dangling_display_expressions): New function.
3633         (_initialize_printcmd): Add observer.
3634         * solib.c (no_shared_libraries): Swap order of calls to
3635         clear_solib and objfile_purge_solibs.
3637 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
3639         Implement the target-specific part of Ada tasking support
3640         on Tru64.
3642         * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
3643         (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
3645 2009-03-05  Joel Brobecker  <brobecker@adacore.com>
3647         Get rid of the global "base_target" and use "find_target_beneath"
3648         to find the underlying target.
3649         * dec-thread.c (base_target): Delete.
3650         (enable_dec_thread): Remove assignement to base_target.
3651         (dec_thread_detach, dec_thread_wait, dec_thread_wait)
3652         (dec_thread_fetch_registers, dec_thread_store_registers)
3653         (dec_thread_mourn_inferior, dec_thread_pid_to_str):
3654         Update the function profile if necessary.
3655         Use find_target_beneath to call the same method but from
3656         the underlying target, removing the need for "base_target".
3658         * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
3659         Fix a copy/paste error in a few debug traces...
3661         * solib-osf.c (init_so): Use a simpler method for computing
3662         the size of lm_info structure. This also gets rid of warning
3663         emitted by the compiler.
3665 2009-03-05  Pedro Alves  <pedro@codesourcery.com>
3667         * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
3668         duplicates of permanent breakpoints.
3670 2009-03-04  Pedro Alves  <pedro@codesourcery.com>
3672         * inferior.h (notice_new_inferior): Declare.
3673         * infcmd.c (notice_new_inferior): New.
3674         * remote.c (remote_add_inferior, remote_add_thread): New.
3675         (notice_new_inferiors): Rename to...
3676         (remote_notice_new_inferior): ... this.  Add RUNNING argument.
3677         Use remote_add_thread instead of add_thread, passing it the
3678         RUNNING argument.  Add an inferior with remote_add_inferior.  If
3679         we just learned about an inferior, call notice_new_inferior.
3680         (record_currthread): Adjust.
3681         (remote_threads_info): Adjust to use remote_notice_new_inferior.
3682         (remote_start_remote, extended_remote_attach_1): Use
3683         remote_add_inferior.
3684         (process_stop_reply): Adjust.  Call remote_notice_new_inferior
3685         after handling expedited registers and watchpoint state.
3686         (extended_remote_create_inferior_1): Use remote_add_inferior.
3688 2009-03-04  Aleksandar Ristovski  <aristovski@qnx.com>
3690         * infcmd.c (registers_info): Remove register number case.
3692 2009-03-03  Pedro Alves  <pedro@codesourcery.com>
3694         * top.c (quit_target): Check for target_has_execution before
3695         killing or detaching from inferiors.
3697 2009-03-02  Joel Brobecker  <brobecker@adacore.com>
3699         Remove some unused routines.
3701         * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
3702         Delete.
3703         * ada-lang.c (ada_task_list_iterator_ftype)
3704         (iterate_over_live_ada_tasks): Delete.
3705         * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
3706         Delete.
3708 2009-03-01  Doug Evans  <dje@google.com>
3710         * symtab.c: Remove trailing whitespace throughout the file.
3711         (expand_line_sal): Fix some typos and whitespace.
3713         * Makefile.in (clean): rm -f $(DEPDIR)/*.
3715         * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
3716         (init.c): signals/ -> common/.
3717         (signals.o): Update.
3718         * target.h (target_signal_to_string,target_signal_to_string)
3719         (target_signal_from_name,target_signal_to_host_p)
3720         (target_signal_from_host,target_signal_to_host): Move to ...
3721         * common/gdb_signals.h: ... here.  New file.
3722         * common/signals.c: Moved here from signals/signals.c.
3723         #include gdb_signals.h, remove #include of target.h in gdb case.
3724         (target_signal_from_command,default_target_signal_to_host)
3725         (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
3727         Include thread ID in target_wait debugging output.
3728         * infrun.c (print_target_wait_results): New function.
3729         (wait_for_inferior,fetch_inferior_event): Call it.
3731 2009-02-27  Pedro Alves  <pedro@codesourcery.com>
3733         * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
3734         with a ptid_t field.
3735         * linux-thread-db.c (thread_get_info_callback): Build the ptid
3736         using the pid stored in proc_handle.ptid.
3737         (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
3738         (check_for_thread_db, thread_db_detach, check_event)
3739         (thread_db_mourn_inferior, find_new_threads_callback)
3740         (thread_db_find_new_threads_1): Adjust.
3741         * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
3742         (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
3744 2009-02-27  Phil Muldoon  <pmuldoon@redhat.com>
3746         * valprint.c (read_string): Rework clean-up logic. Use
3747         free_current_contents to clean-up buffer.
3749 2009-02-27  Andreas Schwab  <schwab@linux-m68k.org>
3751         * MAINTAINERS: Update e-mail address.
3753 2009-02-26  Phil Muldoon  <pmuldoon@redhat.com>
3755         * python/python-utils.c (python_string_to_unicode): Always return
3756         a new reference.
3757         (python_string_to_target_string): Decrement transient python
3758         instance.
3759         (python_string_to_host_string): Likewise.
3761 2007-02-26  Pedro Alves  <pedro@codesourcery.com>
3763         * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
3764         call to super_fetch_registers.
3765         (mips64_linux_store_registers): Pass `ops' to call to
3766         super_store_registers.
3768 2009-02-25  Doug Evans  <dje@google.com>
3770         * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
3771         error message.
3773         * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
3774         disabled_shlib_breaks, unused.
3776         * printcmd.c (build_address_symbolic): Fix comment.
3778 2009-02-25  Hui Zhu  <teawater@gmail.com>
3780         * cli/cli-script.c (define_command): Add _() to query.
3781         * gnu-nat.c (inf_validate_task_sc): Ditto.
3782         * infcmd.c (kill_if_already_running): Ditto.
3783         (jump_command): Ditto.
3784         (attach_command): Ditto.
3785         * inflow.c (kill_command): Ditto.
3786         * infrun.c (handle_command): Ditto.
3787         * maint.c (maintenance_dump_me): Ditto.
3788         * memattr.c (mem_delete_command): Ditto.
3789         * monitor.c (monitor_interrupt_query): Ditto.
3790         * nto-procfs.c (interrupt_query): Ditto.
3791         * printcmd.c (undisplay_command): Ditto.
3792         * remote-mips.c (mips_kill): Ditto.
3793         * remote.c (interrupt_query): Ditto.
3794         * solib-irix.c (irix_open_symbol_file_object): Ditto.
3795         * solib-osf.c (osf_open_symbol_file_object): Ditto.
3796         * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
3797         * solib-som.c (som_open_symbol_file_object): Ditto.
3798         * solib-svr4.c (open_symbol_file_object): Ditto.
3799         * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
3800         * target.c (kill_or_be_killed): Ditto.
3801         * tracepoint.c (delete_trace_command): Ditto.
3802         * top.c (quit_confirm): Add _() to s that will be used
3803         in query.
3805 2009-02-24  Pierre Muller  <muller@ics.u-strasbg.fr>
3807         Fix windows-nat.c compilation failure.
3809         * windows-nat.c (windows_thread_alive): Fix forward declaration.
3810         (get_windows_debug_event): Add ops parameter to call to windows_resume.
3812 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
3814         * remote-sim.c (gdbsim_resume): Add target_ops* argument.
3816 2009-02-23  Jay Krell  <jay.krell@cornell.edu>  (tiny change)
3818         * symtab.c (find_line_symtab): Initialize exact to avoid
3819         a compiler warning.
3821 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
3823         * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
3824         `ops' to recursive call.
3826 2009-02-23  Pedro Alves  <pedro@codesourcery.com>
3828         * corelow.c (get_core_registers): Adjust.
3829         (core_file_thread_alive): Rename to...
3830         (core_thread_alive): ... this.
3831         (core_pid_to_str): Try gdbarch_core_pid_to_str first.
3832         (init_core_ops): Adjust.
3833         (coreops_suppress_target): Delete.
3834         (_initialize_corelow): Unconditionally add core_ops.
3835         * procfs.c: Include "inf-child.h".
3836         (procfs_ops): Delete.
3837         (init_procfs_ops): Delete.  Reimplement as...
3838         (procfs_target): ... this, inheriting from inf-child.
3839         (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
3840         (procfs_prepare_to_store): Delete.
3841         (procfs_store_registers, procfs_resume): Adjust.
3842         (procfs_open): Delete.
3843         (procfs_suppress_run): Delete.
3844         (procfs_can_run): Delete.
3845         (procfs_mourn_inferior): Adjust.
3846         (procfs_init_inferior): Add target_ops parameter.  Adjust.
3847         (procfs_create_inferior): Don't pass procfs_init_inferior to
3848         fork_inferior.  Instead call it after fork_inferior returns.
3849         (procfs_find_new_threads): Adjust.
3850         (_initialize_procfs): Adjust to use procfs_target instead of
3851         init_procfs_ops.
3852         * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
3853         (lwp_to_thread): Use target_thread_alive.
3854         (sol_thread_open): Delete.
3855         (sol_thread_attach): Delete.
3856         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
3857         (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
3858         to use find_target_beneath.
3859         (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
3860         (sol_thread_xfer_partial): Adjust to use find_target_beneath.
3861         (sol_thread_files_info, sol_thread_kill_inferior): Delete.
3862         (check_for_thread_db): New.
3863         (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
3864         (sol_thread_new_objfile): Call check_for_thread_db.
3865         (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
3866         (sol_thread_can_run): Delete.
3867         (sol_thread_alive): Adjust to use find_target_beneath.
3868         (sol_thread_stop): Delete.
3869         (rw_common): Use target_write_memory or target_read_memory.
3870         (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
3871         (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
3872         (solaris_pid_to_str): Remove check for libthread_db initialization
3873         failing.
3874         (sol_find_new_threads): Remove check for libthread_db
3875         initialization failing, or for an invalid inferior_ptid.  Adjust
3876         to use find_target_beneath.
3877         (sol_core_open, sol_core_close, sol_core_detach,
3878         sol_core_files_info, sol_find_memory_regions,
3879         sol_make_note_section, ignore): Delete.
3880         (init_sol_thread_ops): Make it a thread_stratum target.  Remove
3881         unneeded callback settings.
3882         (init_sol_core_ops): Delete.
3883         (_initialize_sol_thread): No longer call init_sol_core_ops, set
3884         procfs_suppress_run, or hack with core_ops.
3886         * target.h (struct target_ops): Add a target_ops * parameter to
3887         to_resume, to_fetch_registers, to_store_registers, to_thread_alive
3888         and to_find_new_threads.
3889         (target_fetch_registers, target_store_registers)
3890         (target_thread_alive, target_find_new_threads): Redeclare as
3891         function.
3893         * target.c (update_current_target): Do not inherit or de_fault
3894         to_resume, to_fetch_registers, to_store_registers,
3895         to_thread_alive, to_find_new_threads.
3896         (target_resume): Adjust.
3897         (target_thread_alive, target_find_new_threads): New.
3898         (debug_to_resume, debug_to_fetch_registers): Delete.
3899         (target_fetch_registers): New.
3900         (debug_to_store_registers): Delete.
3901         (target_store_registers): New.
3902         (debug_to_thread_alive, debug_to_find_new_threads): Delete.
3903         (setup_target_debug): Adjust.
3905         * gdbcore.h (core_ops): Delete declaration.
3907         * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
3908         inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
3909         i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
3910         hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
3911         nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
3912         alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
3913         bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
3914         hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
3915         ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
3916         m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
3917         mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
3918         ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
3919         shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
3920         vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
3922         * gdbarch.sh (core_pid_to_str): New gdbarch callback.
3923         * gdbarch.h, gdbarch.c: Regenerate.
3925         * sol2-tdep.c: Include "inferior.h".
3926         (sol2_core_pid_to_str): New.
3927         * sol2-tdep.h (sol2_core_pid_to_str): Declare.
3929         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
3930         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
3931         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
3932         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
3934 2009-02-22  Doug Evans  <dje@google.com>
3936         * exec.c (exec_file_attach): Fix comment.
3938 2009-02-22  Pedro Alves  <pedro@codesourcery.com>
3940         Silence a few -Wmissing-prototypes warnings.
3942         PR build/9877:
3943         * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
3944         it static.
3945         * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
3946         * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
3947         * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
3948         (_initialize_amd64nbsd_tdep): ... this.
3949         * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
3950         (_initialize_arm_linux_tdep): Declare.
3951         * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
3952         * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
3953         * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
3954         * avr-tdep.c (avr_return_value): Make it static.
3955         (avr_frame_unwind_cache): Ditto.
3956         * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
3957         (bsd_uthread_solib_loaded): Ditto.
3958         (bsd_uthread_solib_unloaded): Ditto.
3959         (bsd_uthread_target): Ditto.
3960         (_initialize_bsd_uthread): Declare.
3961         * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
3962         (cris_frame_unwind_cache): Ditto.
3963         * frv-tdep.c (frv_return_value): Ditto.
3964         * h8300-tdep.c (h8300_use_struct_convention): Ditto.
3965         (h8300h_use_struct_convention): Ditto.
3966         * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
3967         Ditto.
3968         * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
3969         declarations.
3970         * hppabsd-tdep.c: Include hppabsd-tdep.h.
3971         (hppabsd_find_global_pointer): Make it static.
3972         * hppabsd-tdep.h: New.
3973         * hppanbsd-tdep.c: Include hppabsd-tdep.h.
3974         (hppabsd_init_abi): Remove declaration.
3975         (_initialize_hppabsd_tdep): Remove declaration.
3976         (_initialize_hppanbsd_tdep): Declare.
3977         * hppaobsd-tdep.c: Include hppabsd-tdep.h.
3978         (hppabsd_init_abi): Delete declaration.
3979         (hppaobsd_init_abi): Make it static.
3980         * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
3981         * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
3982         * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
3983         * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
3984         * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
3985         * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
3986         (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
3987         (_initialize_m32c_tdep): Declare.
3988         * m32r-rom.c (_initialize_m32r_rom): Declare.
3989         * m32r-tdep.c (m32r_skip_prologue): Make it static.
3990         (m32r_return_value): Ditto.
3991         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
3992         (m68hc11_return_value): Ditto.
3993         * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
3994         * m88k-tdep.c (m88k_frame_cache): Make it static.
3995         * mep-tdep.c (mep_gdb_print_insn): Ditto.
3996         (mep_return_value): Ditto.
3997         (_initialize_mep_tdep): Declare.
3998         * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
3999         * mips-linux-tdep.c (supply_64bit_reg): Make it static.
4000         (mips_linux_syscall_next_pc): Ditto.
4001         (_initialize_mips_linux_tdep): Declare.
4002         * mips-tdep.c (mips_single_step_through_delay): Make it static.
4003         * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
4004         * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
4005         * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
4006         * mt-tdep.c (_initialize_mt_tdep): Declare.
4007         * nbsd-tdep.c: Include nbsd-tdep.h.
4008         * nto-tdep.c (find_load_phdr): Make it static.
4009         (_initialize_nto_tdep): Declare.
4010         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
4011         static.
4012         (_initialize_ppc_linux_tdep): Declare.
4013         * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
4014         (m32r_insert_watchpoint, m32r_remove_watchpoint)
4015         (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
4016         static.
4017         * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
4018         * rs6000-nat.c: Include xcoffread.h.
4019         (find_toc_address): Don't extern declare get_toc_offset.  Adjust
4020         to call xcoff_get_to_offset.
4021         * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
4022         (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
4023         (rs6000_skip_trampoline_code): Make static.
4024         * s390-tdep.c (s390_regset_from_core_section): Ditto.
4025         * sh-tdep.c (sh_register_reggroup_p): Ditto.
4026         * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
4027         (_initialize_shnbsd_tdep): Declare.
4028         * solib-frv.c (displacement_from_map): Make static.
4029         (_initialize_frv_solib): Declare.
4030         * solib-irix.c (fetch_lm_info): Make static.
4031         (_initialize_irix_solib): Declare.
4032         * solib-som.c: Include solib-som.h.
4033         (som_solib_select): Line break.
4034         * sparc-tdep.c (sparc_regset_from_core_section): Make static.
4035         * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
4036         (_initialize_sparcnbsd_tdep): ... this.
4037         * spu-tdep.c (spu_software_single_step): Make it static.
4038         (_initialize_spu_tdep): Declare.
4039         * vax-tdep.c (vax_frame_cache): Make it static.
4040         * xcoffread.c: Include xcoffread.h.
4041         (get_toc_offset): Rename to ...
4042         (xcoff_get_toc_offset): ... this.
4043         (_initialize_xcoffread): Declare.
4044         * xcoffread.h: New.
4045         * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
4046         * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
4047         static.
4048         (_initialize_xtensa_tdep): Declare.
4050 2008-02-21  Pedro Alves  <pedro@codesorcery.com>
4052         Silence a few -Wmissing-prototypes warnings.
4054         PR build/9877:
4055         * amd64-nat.c: Include "amd64-nat.h".
4056         * fork-child.c (_initialize_fork_child): Ditto.
4057         * gcore.c (_initialize_gcore): Ditto.
4058         * inf-ptrace.c: Include "inf-ptrace.h".
4059         (inf_ptrace_store_registers): Make it static.
4060         * linux-nat.c (linux_nat_terminal_ours): Make it static.
4061         (_initialize_linux_nat): Declare before definition.
4062         * linux-tdep.c: Include "linux-tdep.h".
4063         * linux-thread-db.c (_initialize_thread_db): Declare before
4064         definition.
4065         * proc-service.c (_initialize_proc_service): Ditto.
4066         * remote.c (remote_send_printf): Make it static.
4067         * solib.c: Include "solib.h".
4068         * symfile-mem.c (_initialize_symfile_mem): Declare before
4069         definition.
4070         * ada-lang.c (ada_la_decode, ada_match_name)
4071         (ada_suppress_symbol_printing, ada_is_array_type)
4072         (ada_value_ptr_subscript, ada_array_length)
4073         (ada_to_static_fixed_value): Make them static.
4074         (_initialize_ada_language): Declare before definition.
4075         * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
4076         (ada_task_list_changed, ada_new_objfile_observer): Make them
4077         static.
4078         (_initialize_tasks): Declare before definition.
4079         * addrmap.c (_initialize_addrmap): Declare before definition.
4080         * auxv.c (default_auxv_parse): Make it static.
4081         * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
4082         them static.
4083         * breakpoint.c (remove_sal): Add line break.
4084         (expand_line_sal_maybe): Make it static.
4085         * cp-name-parser.y: Include "cp-support.h".
4086         * cp-valprint.c (cp_find_class_member): Make it static.
4087         * eval.c (value_f90_subarray): Ditto.
4088         * exceptions.c (print_any_exception): Ditto.
4089         * findcmd.c (_initialize_mem_search): Declare before definition.
4090         * frame.c (frame_observer_target_changed): Make it static.
4091         * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
4092         * inf-child.c: Include "inf-child.h".
4093         * inferior.h (valid_inferior_id): Rename to ...
4094         (valid_gdb_inferior_id): ... this.
4095         * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
4096         Make them static.
4097         * jv-lang.c (java_language_arch_info): Make it static.
4098         * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
4099         * osdata.c (info_osdata_command): Make it static.
4100         * regcache.c (regcache_observer_target_changed): Make it static.
4101         * reverse.c (_initialize_reverse): Declare before definition.
4102         * stabsread.c (cleanup_undefined_types_noname)
4103         (cleanup_undefined_types_1): Make them static.
4104         * symfile.c (place_section): Make it static.
4105         * symtab.c (find_pc_sect_psymtab_closer): Make it static.
4106         * target-descriptions.c (_initialize_target_descriptions): Declare
4107         before definition.
4108         * target.c (default_get_ada_task_ptid, find_default_can_async_p)
4109         (find_default_is_async_p, find_default_supports_non_stop): Make
4110         them static.
4111         (target_supports_non_stop): Add prototype.
4112         (dummy_pid_to_str): Make it static.
4113         * utils.c (_initialize_utils): Declare before definition.
4114         * ada-exp.y (_initialize_ada_exp): Declare before definition.
4115         * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
4116         * target.h (struct target_ops): Add a prototype to the
4117         to_can_execute_reverse callback.
4118         * macroscope.c (_initialize_macroscope): Declare before definition.
4119         * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
4120         * python/python.c (_initialize_python): Declare before definition.
4121         * tui/tui-command.c: Include "tui/tui-command.h".
4122         * tui/tui-data.c (init_content_element, init_win_info): Make them
4123         static.
4124         * tui/tui-disasm.c: Include "tui/tui-disasm.h".
4125         * tui/tui-interp.c (_initialize_tui_interp): Declare before
4126         definition.
4127         * tui/tui-layout.c: Include "tui/tui-layout.h".
4128         (_initialize_tui_layout): Declare before definition.
4129         * tui/tui-regs.c: Include "tui/tui-regs.h".
4130         (tui_display_reg_element_at_line): Make it static.
4131         (_initialize_tui_regs): Declare before definition.
4132         * tui/tui-stack.c (_initialize_tui_stack): Declare before
4133         definition.
4134         * tui/tui-win.c: Include "tui/tui-win.h".
4135         (_initialize_tui_win): Declare before definition.
4136         (tui_sigwinch_handler): Make it static.  Wrap in ifdef SIGWINCH.
4137         * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
4138         (tui_get_cmd_list): Add a prototype.
4139         * tui/tui-windata.c: Include tui-windata.h.
4140         * tui/tui-wingeneral.c (box_win): Make it static.
4141         * cli/cli-logging.c (show_logging_command): Make it static.
4142         (_initialize_cli_logging): Declare before definition.
4143         * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
4144         definition.
4146 2009-02-20  Pierre Muller  <muller@ics.u-strasbg.fr>
4148         Extend use of i386_use_watchpoints to all i386 native files
4149         using hardware watchpoints.
4150         * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
4151         * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
4152         * windows-nat.c (init_windows_ops): Ditto.
4153         * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
4154         * config/i386/nm-cygwin64.h: Ditto.
4155         * config/i386/nm-fbsd.h: Ditto.
4156         * config/i386/nm-go32.h: Ditto.
4158 2009-02-19  Joel Brobecker  <brobecker@adacore.com>
4160         * ada-typeprint.c (ada_typedef_print): Remove.  Unused.
4162 2009-02-18  Vladimir Prus  <vladimir@codesourcery.com>
4164         * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
4165         (mi_interpreter_init): Register the above.
4166         * solib.c (clear_solib): Notify solib unload.
4167         * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
4168         disable breakpoints on a.out targets.
4170 2009-02-17  Vladimir Prus  <vladimir@codesourcery.com>
4172         * observer.c (observer_test_first_notification_function)
4173         (observer_test_second_notification_function)
4174         (observer_test_third_notification_function): Adjust prototype.
4176 2009-02-17  Pedro Alves  <pedro@codesourcery.com>
4178         * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
4179         (ALL_TARGET_OBS): Add dicos-tdep.o.
4180         (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
4181         * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
4182         gdb_target_obs.
4183         (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
4184         gdb_target_obs.
4185         * dicos-tdep.h, dicos-tdep.c: New.
4186         * amd64-dicos-tdep.c: New.
4187         * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
4188         inferior.h.  Include dicos-tdep.h.
4189         (i386_dicos_init_abi): Call dicos_init_abi.
4190         (i386_dicos_bfd_has_symbol_p): Delete.
4191         (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
4193         * NEWS: Mention x86-64 DICOS target support.
4195 2009-02-16  Doug Evans  <dje@google.com>
4197         * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
4198         All callers updated.
4199         (amd64_get_insn_details): Handle more 3-byte opcode insns.
4200         (amd64_breakpoint_p): Delete.
4201         (amd64_displaced_step_fixup): When fixing up after stepping an int3,
4202         don't back up pc to the start of the int3.
4203         * i386-tdep.c: #include opcode/i386.h.
4204         (i386_skip_prefixes): New function.
4205         (i386_absolute_jmp_p): Constify argument.
4206         (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
4207         (i386_breakpoint_p): Delete.
4208         (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
4209         When fixing up after stepping an int3, don't back up pc to the start
4210         of the int3.
4212 2009-02-16  Pedro Alves  <pedro@codesourcery.com>
4214         * corelow.c (core_close): Don't hardcode the core's pid.
4215         (core_open): Find core threads before calling
4216         post_create_inferior.
4217         (add_to_thread_list, get_core_register_section): Take into account
4218         systems where the regset section names encode the pid of the
4219         inferior.
4221         * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
4222         * gdbarch.h, gdbarch.c: Regenerate.
4224         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
4225         * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
4226         * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
4227         * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
4229 2009-02-14  Vladimir Prus  <vladimir@codesourcery.com>
4231         Include frame information for *stopped due to CLI commands.
4233         * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
4234         * infcmd.c (finish_command_continuation): Pass '1' for
4235         'print_frame' parameter to the observer.
4236         * infrun.c (normal_stop): Don't print mi-specific information
4237         here. Pass 'stop_print_frame' to the 'print_frame' parameter
4238         of the observer.
4239         * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
4240         If we need to print frame, and current uiout is not the MI one,
4241         print frame again.
4243 2009-02-13  Pierre Muller  <muller@ics.u-strasbg.fr>
4245         * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
4246         Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
4248 2009-02-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
4250         PR fortran/9806
4251         * dwarf2read.c (process_die <DW_TAG_module>, read_module)
4252         (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
4254 2009-02-11  Pierre Muller  <muller@ics.u-strasbg.fr>
4256         * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
4257         for DW_ATE_signed_char and DW_ATE_unsigned_char
4258         for pascal language.
4260 2009-02-11  Jim Meyering  <meyering@redhat.com>
4261             Jan Kratochvil  <jan.kratochvil@redhat.com>
4263         Avoid NULL dereference.
4264         * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
4265         New variable func_type.
4267 2009-02-11  Pedro Alves  <pedro@codesourcery.com>
4269         * gdbarch.c: Regenerate.
4271 2009-02-10  Pierre Muller  <muller@ics.u-strasbg.fr>
4273         * p-lang.c (is_pascal_string_type): Fix comment.
4274         Determine exact size of char elements for GPC
4275         strings.
4276         (pascal_printstr): Handle char width of 2 or 4.
4277         * p-valprint.c (pascal_val_print): Handle char
4278         of width 2 or 4.
4280 2009-02-07  Daniel Jacobowitz  <dan@codesourcery.com>
4282         * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
4283         inside the loop.  Only call addrmap_set_empty if the compilation unit
4284         had DW_AT_high_pc and DW_AT_low_pc.  Update call to
4285         scan_partial_symbols.
4286         (scan_partial_symbols): Take NEED_PC argument and pass it along with
4287         LOWPC and HIGHPC.
4288         (add_partial_namespace): Take NEED_PC argument and pass it through.
4289         (add_partial_subprogram): Take NEED_PC argument.  Update the addrmap
4290         if necessary.
4292 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
4294         * NEWS: Mention inspecting extra signal information, $_siginfo,
4295         and the qXfer:siginfo:read and qXfer:siginfo:write packets.
4297 2009-02-07  Pedro Alves  <pedro@codesourcery.com>
4299         * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
4300         isn't defined.
4302 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
4304         * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
4305         (compat_timer_t, compat_clock_t, struct compat_timeval)
4306         (compat_sigval_t, compat_siginfo_t): New types.
4307         (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
4308         (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
4309         (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
4310         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
4311         (amd64_linux_siginfo_fixup): New.
4312         * linux-nat.c (linux_nat_siginfo_fixup): New.
4313         (siginfo_fixup): New.
4314         (linux_xfer_siginfo): Use siginfo_fixup to convert between the
4315         siginfo layout expected by ptrace and the siginfo layout of the
4316         inferior.
4317         (linux_nat_set_siginfo_fixup): New.
4318         * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
4320 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
4322         * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
4323         * infrun.c (siginfo_value_read, siginfo_value_write): New.
4324         (siginfo_value_funcs): New.
4325         (siginfo_make_value): New.
4326         (_initialize_infrun): Create the $_siginfo convenience variable.
4327         * gdbtypes.h (append_composite_type_field_aligned): Declare.
4328         * gdbtypes.c (append_composite_type_field): Rename to...
4329         (append_composite_type_field_aligned): ... this.  Add ALIGNMENT
4330         argument.  Handle it.
4331         (append_composite_type_field): Rewrite on top of
4332         append_composite_type_field_aligned.
4333         * value.h (internalvar_make_value): New typedef.
4334         (struct internalvar) <make_value>: New field.
4335         (create_internalvar_type_lazy): Declare.
4336         * value.c (create_internalvar): Clear make_value.
4337         (create_internalvar_type_lazy): New.
4338         (value_of_internalvar): If make_value is set use it.
4339         (preserve_values): Skip internal variables that don't have a
4340         value.
4341         * gdbarch.sh (get_siginfo_type): New.
4342         * gdbarch.h, gdbarch.c: Regenerate.
4344         * linux-tdep.h, linux-tdep.c: New.
4345         * amd64-linux-tdep.c: Include "linux-tdep.h".
4346         (amd64_linux_init_abi): Register linux_get_siginfo_type and
4347         linux_get_siginfo_mapper.
4348         * i386-linux-tdep.c: Include "linux-tdep.h".
4349         (i386_linux_init_abi): Register linux_get_siginfo_type and
4350         linux_get_siginfo_mapper.
4351         * arm-linux-tdep.c: Include "linux-tdep.h".
4352         (i386_linux_init_abi): Register linux_get_siginfo_type and
4353         linux_get_siginfo_mapper.
4355         * linux-nat.c (linux_xfer_siginfo): New.
4356         (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
4357         * remote.c (PACKET_qXfer_siginfo_read)
4358         (PACKET_qXfer_siginfo_write): New.
4359         (feature remote_protocol_features): Add "qXfer:siginfo:read" and
4360         "qXfer:siginfo:write" features.
4361         (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
4362         (_initialize_remote): Add "set/show remote read-siginfo-object"
4363         and "set/show remote write-siginfo-object" commands.
4365         * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
4366         (HFILES_NO_SRCDIR): Add linux-tdep.h.
4367         (ALLDEPFILES): Add linux-tdep.c.
4369         * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
4370         (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
4371         gdb_target_obs.
4373 2009-02-06  Jim Blandy  <jimb@codesourcery.com>
4374             Daniel Jacobowitz  <dan@codesourcery.com>
4375             Vladimir Prus  <vladimir@codesourcery.com>
4376             Pedro Alves  <pedro@codesourcery.com>
4378         * defs.h (enum lval_type): New value: lval_computed.
4379         * value.h (struct lval_funcs): New type.
4380         (allocate_computed_value, value_computed_funcs)
4381         (value_computed_closure): New declarations.
4382         * value.c (struct value): Add a structure to the location union
4383         for computed lvalues, containing 'funcs' and 'closure' members.
4384         (allocate_computed_value, value_computed_funcs)
4385         (value_computed_closure): New functions.
4386         (value_free): For computed lvalues, call the closure's
4387         'free_closure' function before freeing the value itself.
4388         (value_copy): If we're copying an lval_computed value, call the
4389         closure's 'copy_closure' function.
4390         (set_value_component_location): If the original value is a
4391         computed lvalue, then call the closure's 'copy_closure' function.
4392         (value_of_internalvar): If an internal variable's value is a
4393         computed lvalue, make retrieving its value produce an equivalent
4394         computed lvalue.
4395         * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
4396         their read function.
4397         (value_assign): Assign to computed lvalues by calling their write
4398         function.
4400 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
4402         * linux-nat.c (linux_nat_wait): Adjust.
4403         (linux_nat_pid_to_str): Adjust.  Remove call to thread_db_init.
4404         * linux-nat.h (thread_db_init): Delete declaration.
4405         * linux-thread-db.c (target_beneath): Delete.
4406         (thread_db_init): Delete.
4407         (thread_db_detach): Use find_target_beneath.
4408         (thread_db_wait): Adjust interface.  Use find_target_beneath.
4409         (thread_db_mourn_inferior): Use find_target_beneath.
4410         (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
4411         (thread_db_async_mask): Delete.
4412         (thread_db_pid_to_str): Adjust interface.  Use
4413         find_target_beneath.
4414         (thread_db_get_thread_local_address): Adjust interface.  Use
4415         find_target_beneath.
4416         (init_thread_db_ops): Delete references to delete functions.
4417         * target.c (update_current_target): Don't inherit or default
4418         to_wait.  Don't inherit to_pid_to_str and
4419         to_get_thread_local_address.
4420         (target_translate_tls_address): Look for a pushed target that
4421         implements to_get_thread_local_address, and use it instead of
4422         checking for target_get_thread_local_address_p.
4423         (target_wait, target_pid_to_str): Reimplement as functions.
4424         (dummy_pid_to_str): New.
4425         (init_dummy_target): Register it.
4426         (debug_to_wait): Delete.
4427         * target.h (struct target_ops): Make to_wait, to_pid_to_str and
4428         to_get_thread_local_address accept a pointer to struct target_ops.
4429         (target_wait): Delete macro, and declare as function.
4430         (target_pid_to_str): Likewise.
4431         (target_get_thread_local_address)
4432         (target_get_thread_local_address_p): Delete.
4433         (noprocess): Add NORETURN and ATTR_NORETURN tags.
4434         * inf-ptrace.c (inf_ptrace_wait): Adjust.
4435         (inf_ptrace_pid_to_str): New.
4436         (inf_ptrace_target): Use inf_ptrace_pid_to_str.
4437         * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
4438         * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
4439         * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
4440         Adjust.
4441         * corelow.c (core_pid_to_str): Adjust.
4442         * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
4443         * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
4444         * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
4445         * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
4446         * hpux-thread.c (hpux_thread_wait): Adjust.
4447         * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
4448         * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
4449         * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
4450         * procfs.c (procfs_pid_to_str): Adjust.
4451         * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
4452         * remote-mips.c (mips_wait): Adjust.
4453         * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
4454         * remote.c (remote_wait, remote_pid_to_str)
4455         (remote_get_thread_local_address): Adjust.
4456         * rs6000-nat.c (rs6000_wait): Adjust.
4457         * sol-thread.c (procfs_pid_to_str): Adjust declaration.
4458         (sol_thread_wait, solaris_pid_to_str): Adjust.
4459         * spu-linux-nat.c (spu_child_wait): Adjust.
4460         * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
4462 2009-02-06  Tom Tromey  <tromey@redhat.com>
4464         * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
4465         (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
4466         (python-cmd.o): New target.
4467         * cli/cli-decode.c (set_cmd_completer): Add self parameter to
4468         completer prototype.
4469         (add_cmd): Initialize destroyer member of cmd_list_element. Use
4470         make_symbol_completion_list_fn as completer.
4471         (delete_cmd): Call destroyer if one is set.
4472         * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
4473         completer member.  Add destroyer member.
4474         (set_cmd_completer): Add self parameter to
4475         completer prototype.
4476         * command.h (set_cmd_completer): Add cmd parameter to
4477         completer prototype.
4478         * completer.c (noop_completer, filename_completer,
4479         location_completer, expression_completer, command_completer): Adapt
4480         to new completer prototype.
4481         (complete_line_internal): Pass new parameter to completer function.
4482         * completer.h (noop_completer, filename_completer,
4483         location_completer, expression_completer, command_completer): Adapt
4484         prototypes to new completer prototype.
4485         * interps.c (interpreter_completer): Adapt to new completer
4486         prototype.
4487         * python/python-cmd.c: New file.
4488         * python/python-internal.h (gdbpy_initialize_commands): Add
4489         prototype.
4490         (gdbpy_doc_cst): Add forward declaration.
4491         * python/python.c (gdbpy_doc_cst): Declare.
4492         (_initialize_python): Call gdbpy_initialize_commands.  Initialize
4493         gdbpy_doc_cst.
4494         * symtab.c (make_symbol_completion_list_fn): New function.
4495         * symtab.h (make_symbol_completion_list_fn): Add prototype.
4497 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
4499         * target.c (target_get_osdata): Check for equal or higher than
4500         process_stratum, not dummy_stratum.
4502 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
4504         * remote.c (extended_remote_can_run): Delete.
4505         (init_remote_ops): Don't register it.
4506         * target.c (target_get_osdata): Don't check for target_can_run.
4507         Instead any target that has already been pushed, otherwise
4508         fallback to the default run target.
4510 2009-02-06  Pedro Alves  <pedro@codesourcery.com>
4512         * target.c (target_create_inferior, target_detach)
4513         (target_mourn_inferior, target_attach, target_close): Do target
4514         debug output.
4515         (debug_to_attach, debug_to_detach, debug_to_create_inferior)
4516         (debug_to_mourn_inferior, debug_to_close): Delete.
4517         (setup_target_debug): Adjust.
4519 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
4521         * target.h (target_stopped_data_address_p): Delete declaration,
4522         and don't define as macro.
4523         * target.c (target_stopped_data_address_p): Delete.
4525 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
4526             Tom Tromey  <tromey@redhat.com>
4528         * python/python-utils.c (target_string_to_unicode): New function.
4529         * python/python-internal.h (target_string_to_unicode): New prototype.
4530         * python/python-value.c (valpy_string): New function.
4531         (value_object_methods): Add `string' entry.
4533 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
4535         * target.h (target_tid_to_str): Delete.
4536         * thread.c (print_thread_info, thread_apply_all_command)
4537         (thread_apply_command, thread_command, do_captured_thread_select):
4538         Use target_pid_to_str instead of target_tid_to_str.
4539         * linux-fork.c (delete_fork_command): Likewise.
4541 2009-02-05  Pedro Alves  <pedro@codesourcery.com>
4543         * frame.c (has_stack_frames): Make public.
4544         (get_prev_frame): Don't allow a NULL this_frame anymore.
4545         * frame.h (has_stack_frames): Declare.
4546         * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
4547         to get_prev_frame, instead start at get_current_frame.
4548         (varobj_create): Check has_stack_frames before getting any frame;
4549         eliminate one usage of deprecated_safe_get_selected_frame.
4551 2009-02-05  Tom Tromey  <tromey@redhat.com>
4552             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4554         * python/python.c (GdbMethods): Move to bottom of file.
4555         (get_parameter, execute_gdb_command, gdbpy_write,
4556         gdbpy_flush): Remove forward declarations.
4557         (eval_python_from_control_command): Fix error checking of function
4558         PyRun_SimpleString.  Fix error string.
4559         (python_command): Likewise.
4560         (execute_gdb_command): Added from_tty argument.
4562 2009-02-05  Thiago Jung Bauermann  <bauerman@br.ibm.com>
4564         * language.h (language_dfn): Add la_get_string member.
4565         (LA_GET_STRING): New macro.
4566         (default_get_string): New prototype.
4567         * language.c (default_get_string): New function.
4568         (unknown_language_defn, auto_language_defn, local_language_defn): Use
4569         default_get_string for la_get_string.
4570         * c-lang.c (c_get_string): New function.
4571         (c_language_defn, cplus_language_defn, asm_language_defn): Use
4572         c_get_string for la_get_string.
4573         (minimal_language_defn): Likewise
4574         * ada-lang.c (ada_language_defn): Likewise.
4575         * f-lang.c (f_language_defn): Use default_get_string for
4576         la_get_string.
4577         * jv-lang.c (java_language_defn): Likewise.
4578         * m2-lang.c (m2_language_defn): Likewise.
4579         * objc-lang.c (objc_language_defn): Likewise.
4580         * p-lang.c (p_language_defn): Likewise.
4581         * scm-lang.c (scm_language_defn): Likewise.
4582         * typeprint.c (type_to_string): New function.
4583         * value.h (type_to_string): New prototype.
4584         * valprint.c (val_print_string): Factor out code for reading string
4585         from the inferior into its own function.  Put 2 spaces after period
4586         in comments.
4587         (read_string): New function.
4588         * valprint.h (read_string): New prototype.
4590 2009-01-07  Pierre Muller  <muller@ics.u-strasbg.fr>
4591             Tom Tromey  <tromey@redhat.com>
4593         PR breakpoints/8079:
4594         * breakpoint.c (print_one_breakpoint): Use exp_string field
4595         to display expression of watchpoints.
4596         (mention): Likewise.
4597         (watch_command_1): Remove trailing whitespace from expression.
4598         * printcmd.c (struct display) <exp_string>: New field.
4599         (display_command): Set exp_string.
4600         (free_display): Free exp_string.
4601         (clear_displays): Use free_display.
4602         (do_one_display): Print exp_string.
4603         (display_info): Likewise.
4605 2009-02-04  Tom Tromey  <tromey@redhat.com>
4606             Thiago Jung Bauermann  <bauerman@br.ibm.com>
4607             Phil Muldoon  <pmuldoon@redhat.com>
4609         * python/python-internal.h (gdbpy_get_value_from_history): Rename
4610         prototype to gdbpy_history.
4611         (gdbpy_is_string): Declare.
4612         (python_string_to_host_string): Declare.
4613         * python/python-utils.c (gdbpy_is_string): New function.
4614         (unicode_to_encoded_string): New function.
4615         (unicode_to_target_string): Use it.
4616         (python_string_to_host_string): New function.
4617         * python/python-value.c (valpy_address): New function.
4618         (convert_value_from_python): Use gdbpy_is_string.  Change to throw
4619         Python exception instead of a GDB exception on error.  Properly check
4620         Python booleans.
4621         (valpy_getitem): Convert field name to host string.  Handle array
4622         accesses.  Adapt to new behaviour of convert_value_from_python.
4623         (valpy_new): Adapt to new behaviour of convert_value_from_python.
4624         (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
4625         VALPY_BITXOR, VALPY_BITOR>: New constants.
4626         (valpy_binop): Update.  Adapt to new behaviour of
4627         convert_value_from_python.
4628         (valpy_invert): New function.
4629         (valpy_lsh): Likewise.
4630         (valpy_rsh): Likewise.
4631         (valpy_and): Likewise.
4632         (valpy_or): Likewise.
4633         (valpy_xor): Likewise.
4634         (valpy_richcompare): Call convert_value_from_python instead of doing
4635         conversions itself.
4636         (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
4637         (gdbpy_get_value_from_history): Rename
4638         function to gdbpy_history.
4639         (gdbpy_initialize_values): Don't set tp_new.
4640         (value_object_type): Add valpy_new.
4641         (value_object_methods): Add `address' entry.
4642         (value_object_as_number): Update for new methods.
4643         * python/python.c (GdbMethods): Rename entry from
4644         `get_value_from_history' to `history'.
4646 2009-02-04  Jerome Guitton  <guitton@adacore.com>
4648         * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
4649         of type to guard against a crash.
4651 2009-02-04  Jerome Guitton  <guitton@adacore.com>
4653         * value.c (value_from_contents_and_address): Always return
4654         a lval_memory value, even if address is null.
4656 2009-02-04  Tristan Gingold  <gingold@adacore.com>
4658         * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
4659         (amd64_darwin_sigcontext_addr): Ditto.
4660         (darwin_dwarf_signal_frame_p): Ditto.
4661         (i386_darwin_init_abi): Handle signal frames, use the const for
4662         sc_num_regs.
4663         (x86_darwin_init_abi_64): Ditto.
4665 2009-02-04  Tristan Gingold  <gingold@adacore.com>
4667         * i386-tdep.c (i386_sigtramp_p): Make it public.
4668         * i386-tdep.h (i386_sigtramp_p): Declare.
4670 2009-02-04  Tristan Gingold  <gingold@adacore.com>
4672         * machoread.c (macho_symfile_read): Read minsymtab also from
4673         shared libraries.
4674         (macho_symfile_read): Try to read dwarf2 frame info from main
4675         object file, but not from OSO files.
4676         (macho_symfile_offsets): Update section names for latest BFD
4677         changes.
4678         * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
4679         (x86_darwin_init_abi_64): Ditto.
4680         * solib-darwin.c: New file.
4681         * solib-darwin.h: New file.
4682         * configure.tgt: Add solib.o solib-darwin.o for Darwin.
4684 2009-02-04  Tristan Gingold  <gingold@adacore.com>
4686         * solist.h (struct target_so_ops): Comment fallback behavior for
4687         operation same.
4689 2009-02-03  Tom Tromey  <tromey@redhat.com>
4691         * completer.c (add_struct_fields): Check type_name against NULL
4692         before use.
4694 2009-02-03  Joel Brobecker  <brobecker@adacore.com>
4696         * MAINTAINERS: Update Elena's email address.
4698 2009-02-02  Joel Brobecker  <brobecker@adacore.com>
4700         * breakpoint (update_watchpoint): Minor comment adjustment.
4702 2009-02-02  Tom Tromey  <tromey@redhat.com>
4704         PR gdb/9594:
4705         * completer.c (count_struct_fields): Count method names.
4706         (add_struct_fields): Add matching method names.
4708 2009-02-02  Doug Evans  <dje@google.com>
4710         * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
4711         doing any further tcl/tk configury.  Don't configure gdbtk if
4712         tcl or tk check fails.
4713         * aclocal.m4: Regenerate.
4714         * configure: Regenerate.
4716 2009-02-02  Tom Tromey  <tromey@redhat.com>
4718         PR exp/9059:
4719         * valops.c (find_overload_match): Follow typedefs before taking
4720         address of object argument.
4722 2009-02-01  Doug Evans  <dje@google.com>
4724         * target.h (target_waitstatus_to_string): Declare.
4725         * target.c (target_waitstatus_to_string): New function.  Copied from
4726         debug_to_wait.  Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
4727         TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
4728         TARGET_WAITKIND_NO_HISTORY.
4729         (debug_to_wait): Call it.
4730         * infrun.c (wait_for_inferior): If debug_infrun, print result of
4731         target_wait.
4732         (fetch_inferior_event): Ditto.
4734 2009-01-30  Tom Tromey  <tromey@redhat.com>
4736         * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
4738 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
4740         PR 8145.
4741         * thread.c (do_captured_list_thread_ids): Report the current
4742         thread id.
4744 2009-01-30  Vladimir Prus  <vladimir@codesourcery.com>
4746         * breakpoint.c (create_breakpoint, create_breakpoints)
4747         (break_command_really, set_breakpoint): New parameter enabled.
4748         (create_breakpoint, break_command_really): Make breakpoint
4749         disabled if so requested.
4750         * breakpoint.h (set_breakpoint): New parameter enabled.
4751         * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
4753 2009-01-28  Doug Evans  <dje@google.com>
4755         * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
4756         (amd64_displaced_step_fixup): Declare.
4757         * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
4758         (amd64_arch_regmap): Move out of amd64_analyze_stack_align
4759         and make static global.
4760         (amd64_arch_regmap_len): New static global.
4761         (amd64_arch_reg_to_regnum): New function.
4762         (struct amd64_insn): New struct.
4763         (struct displaced_step_closure): New struct.
4764         (onebyte_has_modrm,twobyte_has_modrm): New static globals.
4765         (rex_prefix_p,skip_prefixes)
4766         (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
4767         (amd64_insn_length,amd64_get_unused_input_int_reg)
4768         (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
4769         (amd64_displaced_step_copy_insn)
4770         (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
4771         (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
4772         (amd64_displaced_step_fixup): New functions.
4773         * amd64-linux-tdep.c: #include arch-utils.h.
4774         (amd64_linux_init_abi): Install displaced stepping support.
4776 2009-01-28  Daniel Jacobowitz  <dan@codesourcery.com>
4777             Jerome Guitton  <guitton@adacore.com>
4779         * configure, config.in: Regenerated.
4780         * configure.ac: Add --with-system-gdbinit.
4781         * main.c (get_init_files): New.
4782         (captured_main): Use get_init_files.  Load system gdbinit before
4783         $HOME/.gdbinit.
4784         (print_gdb_help): Print location of init files.
4786 2009-01-28  Pedro Alves  <pedro@codesourcery.com>
4788         * corefile.c (generic_search): Delete disabled code.
4789         * gdbcore.h (generic_search): Delete declaration.
4791 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
4793         * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
4794         parent to the child.
4795         * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
4796         * inf-ptrace.c (inf_ptrace_follow_fork): Likewise.  Use
4797         remove_breakpoints to remove breakpoints from the parent.
4799 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
4801         PR backtrace/9458, PR backtrace/8864:
4802         * frame.c (create_new_frame): Update the frame's cached PC before
4803         finding its unwinder.  Use frame_id_build to build the new frame's
4804         id.
4805         * stack.c (parse_frame_specification_1): Correct setting ``addrs''
4806         array values from the ``args'' array values.
4808 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
4810         * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
4811         (create_array_type, create_set_type, init_flags_type)
4812         (copy_type_recursive): Replace pairs of calls to XALLOC and memset
4813         with a call to XZALLOC or XCALLOC, and pairs of calls to
4814         obstack_alloc and memset with a call to OBSTACK_ZALLOC.
4816 2009-01-26  Pedro Alves  <pedro@codesourcery.com>
4818         Add "maint set|show internal-error|internal-warning quit|corefile
4819         ask|yes|no" commands.
4821         PR gdb/7580:
4822         * utils.c (internal_problem_ask, internal_problem_yes)
4823         (internal_problem_no, internal_problem_modes): New.
4824         (struct internal_problem): Remove FIXME.  Make should_quit and
4825         should_dump_core types to char *.
4826         (internal_vproblem, internal_error_problem)
4827         (internal_warning_problem): Adjust.
4828         (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
4829         functions.
4830         (add_internal_problem_command): New.
4831         (_initialize_utils): New.
4833 2009-01-25  Pedro Alves  <pedro@codesourcery.com>
4835         * infcmd.c (program_info): Use paddress instead of casting stop_pc
4836         to unsigned long.
4838 2009-01-24  Pedro Alves  <pedro@codesourcery.com>
4840         * infrun.c (normal_stop): Don't call
4841         deprecated_update_frame_pc_hack.
4842         * frame.c (deprecated_update_frame_pc_hack)
4843         (deprecated_update_frame_base_hack): Delete, and ...
4844         (create_new_frame): ... inline here.
4845         * frame.h (deprecated_update_frame_pc_hack)
4846         (deprecated_update_frame_base_hack): Delete declarations.
4848 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
4850         * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
4851         * cli/cli-setshow.c (do_setshow_command): Handle it.
4852         * command.h (enum var_types): Add var_zuinteger.
4853         (add_setshow_zuinteger_cmd): Declare.
4855         * valprint.c (_initialize_valprint): Change the set input-radix
4856         and set output-radix commands to zuinteger type.
4858 2009-01-23  Pedro Alves  <pedro@codesourcery.com>
4860         PR gdb/9664:
4861         * infrun.c (normal_stop): Tag threads as stopped, and run the
4862         hook-stop before printing the stack frame.
4864 2009-01-22  Pedro Alves  <pedro@codesourcery.com>
4866         PR c++/9631:
4867         * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
4868         vbasetype.
4870 2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
4872         * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
4873         unsigned long.
4875 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
4877         PR gdb/9346
4878         * infcmd.c (signal_command): Do not specify a resume PC.
4880 2009-01-19  Doug Evans  <dje@google.com>
4882         * dummy-frame.c (dummy_frame): Replace regcache member with
4883         caller_state.
4884         (dummy_frame_push): Replace caller_regcache arg with caller_state.
4885         All callers updated.
4886         (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
4887         (dummy_frame_pop): Rewrite.  Verify requested frame is in the
4888         dummy frame stack.  Restore program state.
4889         (cleanup_dummy_frames): Rewrite.
4890         (dummy_frame_sniffer): Update.  Make static.
4891         * dummy-frame.h (regcache,frame_info): Delete forward decls.
4892         (inferior_thread_state): New forward decl.
4893         (dummy_frame_push): Update prototype.
4894         * frame.c (frame_pop): dummy_frame_pop now does all the work for
4895         DUMMY_FRAMEs.
4896         * infcall.c (breakpoint_auto_delete_contents): Delete.
4897         (get_function_name,run_inferior_call): New fns.
4898         (call_function_by_hand): Simplify by moving some code to
4899         get_function_name, run_inferior_call.  Inferior function call wrapped
4900         in TRY_CATCH so there's less need for cleanups and all exits from
4901         proceed are handled similarily.  Detect program exit.
4902         Detect program stopping in a different thread.
4903         Make error messages more consistent.
4904         * inferior.h (inferior_thread_state): Declare (opaque type).
4905         (save_inferior_thread_state,restore_inferior_thread_state,
4906         make_cleanup_restore_inferior_thread_state,
4907         discard_inferior_thread_state, get_inferior_thread_state_regcache):
4908         Declare.
4909         (save_inferior_status): Update prototype.
4910         * infrun.c: (normal_stop): When stopped for the completion of an
4911         inferior function call, verify the expected stack frame kind.
4912         (inferior_thread_state): New struct.
4913         (save_inferior_thread_state,restore_inferior_thread_state,
4914         do_restore_inferior_thread_state_cleanup,
4915         make_cleanup_restore_inferior_thread_state,
4916         discard_inferior_thread_state,
4917         get_inferior_thread_state_regcache): New functions.
4918         (inferior_status): Move stop_signal, stop_pc, registers to
4919         inferior_thread_state.  Remove restore_stack_info.
4920         (save_inferior_status): Remove arg restore_stack_info.
4921         All callers updated.  Remove saving of state now saved by
4922         save_inferior_thread_state.
4923         (restore_inferior_status): Remove restoration of state now done by
4924         restore_inferior_thread_state.
4925         (discard_inferior_status): Remove freeing of registers, now done by
4926         discard_inferior_thread_state.
4928 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
4930         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
4931         at a time, times NUM_TO_SCROLL.
4932         * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
4933         fetch the selected frame if there is no stack.
4935 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
4937         PR gdb/9747:
4938         * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
4939         Declare.
4940         * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
4941         * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
4942         is thrown while handling an event, finish the thread state.
4943         (normal_stop): Use finish_thread_state cleanup.
4944         * infcmd.c (run_command_1): If an error is thrown while starting
4945         the inferior, finish the thread state.
4947 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
4949         * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
4950         skip breakpoints without a location (pending breakpoints).
4952 2009-01-18  Pedro Alves  <pedro@codesourcery.com>
4954         PR build/9186:
4955         * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
4957 2009-01-18  Nick Roberts  <nickrob@snap.net.nz>
4959         * thread.c (thread_command): Move call to annotate_thread_changed
4960         to...
4961         (do_captured_thread_select): ... here, to avoid printing an
4962         annotation if the thread change generates an exception.
4964 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
4966         * NEWS: Document x86_64/MinGW as a new native configuration.
4968 2009-01-16  Joel Brobecker  <brobecker@adacore.com>
4970         * NEWS: Move the documentation of "info os processes" to
4971         the appropriate section (documenting the new commands).
4973 2009-01-15  Doug Evans  <dje@google.com>
4975         * target.h (target_signal_to_string): Make return type const char *.
4976         (target_signal_to_name): Ditto.
4977         (target_signal_from_name): Make arg const char *.
4978         * infrun.c (sig_print_info): Update.
4979         * signals/signals.c (signals): Make array and struct members const.
4980         (target_signal_to_string): Make return type const char *.
4981         (target_signal_to_name): Ditto.
4982         (target_signal_from_name): Make arg const char *.
4984 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
4985             Tristan Gingold  <gingold@adacore.com>
4987         * solist.h (struct target_so_ops): New member bfd_open.
4988         (solib_find): Add prototype.
4989         (solib_bfd_fopen): Add prototype.
4990         * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
4991         from solib_bfd_open.
4992         (solib_bfd_open): Use ops->bfd_open override if present.  Call
4993         solib_find and solib_bfd_open otherwise.
4995         * objfiles.h (OBJF_KEEPBFD): New define.
4996         * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
4997         objfile flag is set.
4998         * solib.c (symbol_add_stub): Do not allocate second BFD for
4999         shared library; use OBJF_KEEPBFD flag on solib objfile.
5001 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
5003         * frame.c (get_frame_arch): Abort if called with NULL this_frame.
5005 2009-01-15  Ulrich Weigand  <uweigand@de.ibm.com>
5007         * value.h (address_of_variable): Add prototype.
5008         (locate_var_value): Remove prototype.
5010         * findvar.c (read_var_value): Do not attempt to default frame
5011         to selected frame.
5012         (locate_var_value): Remove function.
5013         * valops.c (value_of_variable): Retrieve selected frame for
5014         symbols that require a frame when called with NULL block.
5015         * valops.c (address_of_variable): New function.
5017         * eval.c (evaluate_subexp_for_address): Call address_of_variable
5018         instead of calling locate_var_value.
5019         (evaluate_subexp_with_coercion): Likewise.
5021 2009-01-14  Daniel Jacobowitz  <dan@codesourcery.com>
5023         * NEWS: Document "define" for prefixed commands.
5024         * cli/cli-cmds.c (show_user): Update calls to show_user_1.  Call
5025         show_user_1 for prefix commands.
5026         * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
5027         * cli/cli-script.c (validate_comname): Rewrite to handle prefix
5028         commands.  Return the containing command list.
5029         (define_command, document_command): Update to handle prefix commands.
5030         (show_user_1): Add prefix and name arguments.  Handle prefix
5031         commands.
5032         * cli/cli-script.h (show_user_1): Update prototype.
5034 2009-01-14  Kai Tietz  <kai.tietz@onevision.com>
5036         * ser-mingw.c (console_select_thread): Add return to make
5037         compiler happy.
5038         (pipe_select_thread): Likewise.
5039         (file_select_thread): Likewise.
5041 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
5043         * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
5044         previous change.
5046 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
5048         * remote.c (extended_remote_mourn_1): Invalidate our notion of
5049         current general thread.
5051 2009-01-14  Pedro Alves  <pedro@codesourcery.com>
5053         * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
5054         without a live selected thread.
5056 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
5058         Update the copyright notice of some of the files I missed
5059         in the previous copyright update.
5061 2009-01-14  Joel Brobecker  <brobecker@adacore.com>
5063         * windows-nat.c (handle_unload_dll): Use %p to print the DLL
5064         base address instead of casting it to DWORD.
5066 2009-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
5068         * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
5069         for NULL frame pointers.
5071 2009-01-13  Mark Kettenis  <kettenis@gnu.org>
5073         * utils.c (host_address_to_string): Reimplement in a way that
5074         avoids the cast of the address to long.
5076 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
5078         * mdebugread.c (parse_symbol): Save the symbol private data
5079         using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
5080         (psymtab_to_symtab_1): Likewise.
5081         (parse_procedure): Declare variable "e" only in the scope
5082         where it is used. Extract the symbol private data using
5083         SYMBOL_VALUE_BYTES.
5085 2009-01-13  Jim Blandy  <jimb@codesourcery.com>
5087         Abstract out common code for copying value locations.
5089         * value.h (set_value_component_location): New declaration.
5090         * value.c (set_value_component_location): New function.
5091         (value_primitive_field): Use it.
5092         * valarith.c (value_subscript, value_subscripted_rvalue): Same.
5093         * valops.c (search_struct_field, value_slice): Same.
5094         * ada-lang.c (coerce_unspec_val_to_type)
5095         (ada_value_primitive_packed_val): Same.
5097 2009-01-13  Joel Brobecker  <brobecker@adacore.com>
5099         * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
5101 2009-01-12  Christopher Faylor  <me+cygwin@cgf.cx>
5103         * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
5104         throughout.
5105         * i386-cygwin-tdep.c: Ditto.
5106         * i386-windows-nat.c: Ditto.
5107         * windows-nat.h: Ditto.
5108         * windows-tdep.c: Ditto.
5109         * windows-tdep.h: Ditto.
5110         * windows-nat.c: Ditto.
5111         (cygwin_load_start): Redefine as CORE_ADDR.
5112         (cygwin_load_end): Ditto.
5113         (windows_make_so): Coerce result of address arithmetic to uintptr_t
5114         before coercing to CORE_ADDR to avoid a compiler warning.
5115         (handle_exception): Define addr as CORE_ADDR and coerce
5116         ExceptionAddress to uintptr_t before assigining to avoid a compiler
5117         warning.
5118         * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
5119         files.
5121 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
5123         Fix linking with --enable-targets=all:
5124         * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
5125         (HFILES_NO_SRCDIR): Add windows-tdep.h.
5126         (ALLDEPFILES): Add windows-tdep.c.
5128 2009-01-11  Chris Faylor  <me.gdb@cgf.cx>
5130         * win32-nat.h: Delete.
5131         * windows-nat.h: Rename from win32-nat.h.
5132         * win32-nat.c: Delete.
5133         * windows-nat.c: Rename from win32-nat.c.
5134         * win32-termcap.c: Delete.
5135         * windows-termcap.c: Rename from win32-termcap.c.
5136         * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
5137         * configure.ac: Handle rename from win32-termcap.c ->
5138         windows-termcap.c.
5139         * configure: Regenerate.
5140         * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
5141         -> windows-termcap.c.
5142         * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
5143         windows-tdep.h.
5144         * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
5145         * windows-nat.c: Ditto.  Also reflect rename from from win32-tdep.h ->
5146         windows-tdep.h.
5147         (win32_make_so): Handle cygwin compiler warning due to change of
5148         load_addr from DWORD to LPVOID.
5149         (handle_load_dll): Use %p in format string to properly print address
5150         and avoid a compiler warning.
5151         (DEBUG_EXCEPTION_SIMPLE): Ditto.
5152         (handle_exception): Ditto.
5153         * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
5154         * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
5155         windows-nat.o.
5156         * config/i386/mingw.mh: Ditto.
5157         * config/i386/mingw64.mh: Ditto.
5159 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
5161         * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
5162         arrayprint_recurse_level to a parameter.  Update all the callers.  New
5163         comment at autovariables.
5165 2009-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
5167         * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
5168         coding style.
5170 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
5172         * target.c (target_xfer_partial): Use host_address_to_string to
5173         print the address of readbuf and writebuf. Cast the address of
5174         elements inside the myaddr buffer into intptr_t.
5175         (deprecated_debug_xfer_memory): Use paddress to print memaddr.
5176         Cast the address of elements inside the myaddr buffer into
5177         intptr_t.
5179 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
5181         * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
5182         * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
5183         * configure.host, configure.tgt: Add handling for x86_64/windows.
5184         * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
5185         and amd64-windows-tdep.c.
5187 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
5189         * win32-tdep.h, win32-tdep.c: New files.
5190         * i386-cygwin-tdep.h: Delete.
5191         * i386-cygwin-tdep.c: Include win32-tdep.h instead of
5192         i386-cygwin-tdep.h.
5193         (win32_xfer_shared_library): Delete.  Moved to win32-tdep.c.
5194         * win32-nat.c: Likewise.
5195         * configure.tgt: Add win32-tdep.o to the list of target object
5196         files for i386-cygwin and i386-mingw targets.
5198 2009-01-11  Joel Brobecker  <brobecker@adacore.com>
5200         * win32-nat.h: New file.
5201         * win32-nat.c (mappings): Initialize to NULL.
5202         (win32_set_context_register_offsets): New function.
5203         * i386-windows-nat.c: New file.
5204         (mappings): Moved here from win32-nat.c.
5205         (_initialize_i386_windows_nat): New function.
5206         * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
5207         * config/i386/cygwin.mh (NATDEPFILES): Likewise.
5209 2009-01-09  Andreas Schwab  <schwab@suse.de>
5211         * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
5213 2009-01-09  Daniel Jacobowitz  <dan@codesourcery.com>
5215         * gdbtypes.c (append_composite_type_field): Correct the location of
5216         appended fields.
5218 2009-01-09  Pedro Alves  <pedro@codesourcery.com>
5220         * defs.h (deprecated_error_hook): Delete declaration.
5221         * interps.c (clear_interpreter_hooks): Adjust.
5222         * remote-sim.c (gdb_os_error): Don't try to call
5223         deprecated_error_hook.  No need to call exit anymore.
5224         * top.c (deprecated_error_hook): Delete.
5226 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5228         * arch-utils.c (gdbarch_update_p): Use host_address_to_string
5229         to print the address of the gdbarch pointer.
5231 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5233         * gdbarch.sh: Fix all the compilation errors on amd64-windows
5234         due to casting a pointer to a long when printing a function
5235         address. Instead, use host_address_to_string to convert our
5236         address to a string.
5237         * gdbarch.c: Regenerate.
5239 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5241         * event-top.c (async_disconnect, async_stop_sig): use "raise"
5242         instead of "kill" to raise a signal.
5244 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5246         * win32-nat.c (get_module_name): Change the type of parameter
5247         "base_address" to LPVOID.  Remove unnecessary cast.
5248         (struct lm_info): Change type of load_addr to LPVOID.
5249         (win32_make_so): Change the type of parameter "load_addr"
5250         to LPVOID.  Remove some unnecessary casts.
5251         (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
5252         (win32_xfer_shared_libraries): Add missing cast.
5254 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5256         * win32-nat.c (has_detach_ability, set_process_privilege):
5257         Cast the result of GetProcAddress to (void *) to avoid
5258         a compilation warning.
5260 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5262         * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
5263         already defined.
5265 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5267         * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
5268         definition of local variable "done".
5269         (info_w32_command, handle_exception): Remove unnecessary cast.
5271 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5273         * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
5274         DebugSetProcessKillOnExit.  Update all uses in this file.
5275         (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
5276         Update all uses in this file.
5278 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5280         * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
5281         and use it when pushing the target.
5282         (win32_attach, win32_create_inferior): Update call to
5283         do_initial_win32_stuff.
5284         (win32_detach, win32_mourn_inferior): Use our ops parameter
5285         instead of the global win32_ops to unpush the target.
5287 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5289         * ser-mingw.c (ser_windows_open): Use proper type when casting
5290         in call to _open_osfhandle.
5292 2009-01-09  Kai Tietz  <kai.tietz@onevision.com>
5294         * coff-pe-read.c (read_pe_exported_syms): Fix typo.
5296 2009-01-09  Joel Brobecker  <brobecker@adacore.com>
5298         * CONTRIBUTE: Minor reformatting.
5300 2009-01-08  Kai Tietz  <kai.tietz@onevision.com>
5302         * MAINTAINERS: Add myself to Write After Approval.
5303         * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
5304         export directory.
5306 2009-01-08  Nathan Froyd  <froydnj@codesourcery.com>
5308         * remote-sim.c (gdb_os_error): Mark as a noreturn function.
5309         Call exit to make it obvious to GCC.
5311 2009-01-08  Tom Tromey  <tromey@redhat.com>
5313         PR breakpoints/9350:
5314         * varobj.c (varobj_invalidate): Unconditionally free
5315         all_rootvarobj.
5316         * symfile.c (syms_from_objfile): Free local_addr when returning
5317         normally.
5318         * exec.c (exec_file_attach): Do cleanups before returning.
5319         (exec_file_command): Likewise.
5320         * corefile.c (reopen_exec_file): Do cleanups before returning.
5321         * breakpoint.c (insert_breakpoint_locations): Do cleanups before
5322         returning.
5323         (do_vec_free): New function.
5324         (update_global_location_list): Make a cleanup for old_locations.
5325         Do cleanups before returning.  Remove unused variable 'e'.
5326         (find_condition_and_thread): Free result of parsing the
5327         expression.
5328         (print_it_typical): Do cleanups before returning.
5329         (breakpoint_re_set_one): Always free sals.sals.
5331 2009-01-08  Joel Brobecker  <brobecker@adacore.com>
5332             Emi Suzuki  <emi-suzuki@tjsys.co.jp>
5334         * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
5335         watchpoints.
5337 2009-01-07  Doug Evans  <dje@google.com>
5339         * top.c (gdb_prompt_string): Delete, unused.
5341 2009-01-07  Pedro Alves  <pedro@codesourcery.com>
5343         Delete ONE_PROCESS_WRITETEXT leftovers.
5345         * breakpoint.c (insert_bp_location): Delete process_warning
5346         argument.  Adjust.
5347         (insert_breakpoint_locations): Adjust.
5348         (reattach_breakpoints): Adjust.
5349         * infrun.c (normal_stop): Drop "It might be running in another
5350         process" notice.
5352 2009-01-07  Stan Shebs  <stan@codesourcery.com>
5354         * config/pa/linux.mh (XDEPFILES): Remove.
5356 2009-01-07  Doug Evans  <dje@google.com>
5358         * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
5360 2009-01-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5362         * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
5363         spacing, a regression from 2008-04-22.
5365 2009-01-07  Joel Brobecker  <brobecker@adacore.com>
5367         * utils.c (gdb_print_host_address): Adjust implementation to
5368         reuse host_address_to_string. Move comment explaining the conversion
5369         from host address to string from here...
5370         (host_address_to_string): ... to there.
5372 2009-01-07  Emi Suzuki  <emi-suzuki@tjsys.co.jp>
5374         * MAINTAINERS: Add myself for write after approval privileges.
5376 2009-01-06  Tom Tromey  <tromey@redhat.com>
5378         * value.c (set_internalvar): Use value_free, not xfree.
5380 2009-01-06  Jim Blandy  <jimb@red-bean.com>
5382         Check return values of functions declared with warn_unused_result
5383         attribute in GLIBC 2.8.
5384         * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
5385         * inflow.c (check_syscall): New function.
5386         (new_tty): Use check_syscall to check return values from open and dup.
5387         * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
5388         * main.c (captured_main): Call cwd after setting up gdb_stderr;
5389         check for errors from getcwd.
5390         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
5391         * ui-file.c (stdio_file_write): Ignore return value from fwrite.
5392         (stdio_file_fputs): Same.
5393         * utils.c (internal_vproblem): abort if last-ditch error message
5394         write fails.
5396         * top.c (gdb_init): Don't set the current directory here; that's
5397         already been done in captured_main.
5399 2009-01-06  Sandra Loosemore  <sandra@codesourcery.com>
5401         * ser-tcp.c: Adjust includes.
5402         (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
5403         (tcp_auto_retry, tcp_retry_limit): Declare.
5404         (TIMEOUT): Remove, in favor of tcp_retry_limit.
5405         (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
5406         (wait_for_connect): New function.
5407         (net_open): Use it.  Add auto-retry logic.
5408         (set_tcp_cmd, show_tcp_cmd): New functions.
5409         (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
5410         and "set/show tcp connect-timeout" commands.
5411         * NEWS: Document new commands.
5413 2009-01-05  Tom Tromey  <tromey@redhat.com>
5415         * python/python-internal.h (Py_ssize_t): Define as int.
5417 2009-01-05  Jim Blandy  <jimb@red-bean.com>
5419         * MAINTAINERS: Fix my e-mail address as steering committee member.
5421 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
5423         Updated copyright notices for most files.
5425 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
5427         * top.c (print_gdb_version): Update copyright year.
5429 2009-01-03  Joel Brobecker  <brobecker@adacore.com>
5431         * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
5433 2009-01-01  Pedro Alves  <pedro@codesourcery.com>
5435         PR breakpoints/9681:
5436         * exceptions.h (enum errors): New error type, MEMORY_ERROR.
5437         * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
5438         * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
5439         retrow all other exceptions.
5441 For older changes see ChangeLog-2008.
5443 Local Variables:
5444 mode: change-log
5445 left-margin: 8
5446 fill-column: 74
5447 version-control: never
5448 coding: utf-8
5449 End: