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