OSDN Git Service

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