gdb/
[external/binutils.git] / gdb / ChangeLog
1 2013-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
2
3         Code cleanup.
4         * dwarf2read.c (dw2_expand_symtabs_with_filename): Rename to ...
5         (dw2_expand_symtabs_with_fullname): ... here.  Rename parameter
6         filename to fullname.  Rename variable this_name to this_fullname.
7         Lowercase FILENAME_CMP call.
8         (dw2_find_symbol_file): New comment for the returned string.
9         (dwarf2_gdb_index_functions): Rename the function to
10         dw2_expand_symtabs_with_fullname.
11         * psymtab.c (read_psymtabs_with_filename): Rename to ...
12         (read_psymtabs_with_fullname): ... here.  Rename parameter filename to
13         fullname.
14         (psym_functions): Rename the function to read_psymtabs_with_fullname.
15         * symfile.h (struct quick_symbol_functions): Rename field
16         expand_symtabs_with_filename to expand_symtabs_with_fullname and its
17         parameter filename to fullname.  Document returned string meaning for
18         find_symbol_file.
19         * symtab.c (find_line_symtab): Rename the called function to
20         expand_symtabs_with_fullname.
21
22 2013-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
23
24         Code cleanup.
25         * breakpoint.c (clear_command): Remove variable is_abs, unify the
26         call of filename_cmp with compare_filenames_for_search.
27         * dwarf2read.c (dw2_map_symtabs_matching_filename): Remove variable
28         is_abs, unify the call of FILENAME_CMP with
29         compare_filenames_for_search.  New gdb_asserts for real_path and name.
30         Unify the call of compare_filenames_for_search with FILENAME_CMP.
31         * psymtab.c (partial_map_symtabs_matching_filename): Likewise.
32         * symfile.h (struct quick_symbol_functions): Extend the comment for
33         map_symtabs_matching_filename.
34         * symtab.c (compare_filenames_for_search): Remove the function comment
35         relative path requirement.  Handle absolute filenames, with a comment.
36         (iterate_over_some_symtabs): Remove variable is_abs, unify the call of
37         FILENAME_CMP with compare_filenames_for_search.  New gdb_asserts for
38         real_path and name.  Unify the call of compare_filenames_for_search
39         with FILENAME_CMP.
40         (iterate_over_symtabs): New gdb_assert on REAL_PATH.
41
42 2013-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
43
44         Code cleanup.
45         * breakpoint.c (print_breakpoint_location): Replace bp_location field
46         source_file references by symtab field references.  Remove variables
47         sal and fullname.
48         (momentary_breakpoint_from_master, add_location_to_breakpoint):
49         (clear_command, say_where): Replace bp_location field source_file
50         references by symtab field references.
51         (bp_location_dtor): Remove the source_file reference.
52         (update_static_tracepoint): Replace bp_location field source_file
53         references by symtab field references.
54         (breakpoint_free_objfile): New function.
55         * breakpoint.h (struct bp_location): Extend the comment for line_number.
56         Replace the field source_file by field symtab, extend its comment.
57         (breakpoint_free_objfile): New declaration.
58         * objfiles.c (free_objfile): Call breakpoint_free_objfile.
59         * tui/tui-winsource.c (tui_update_breakpoint_info): Replace bp_location
60         field source_file references by symtab field references.
61
62 2013-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
63
64         Replace xfullpath calls by gdb_realpath calls.
65         * cli/cli-cmds.c (find_and_open_script): Remove xfullpath from the
66         function comment.
67         * dwarf2read.c (dw2_map_expand_apply): Remove parameter full_path.
68         Remove it from the iterate_over_some_symtabs call.
69         (dw2_map_symtabs_matching_filename): Remove parameter full_path.
70         Remove it from the dw2_map_expand_apply calls, remove a block handling
71         it.
72         * psymtab.c (partial_map_expand_apply): Remove parameter full_path.
73         Remove it from the iterate_over_some_symtabs call.
74         (partial_map_symtabs_matching_filename): Remove parameter full_path.
75         Remove it from the partial_map_expand_apply calls, remove a block
76         handling it.  Drop gdb_realpath call and cleanups from the real_path
77         handling.
78         * source.c (openp): Drop the comment part about xfullpath.  Replace
79         xfullpath calls by gdb_realpath calls.
80         (find_and_open_source): Replace xfullpath call by gdb_realpath call.
81         * symfile.h (struct quick_symbol_functions): Remove parameter full_path
82         from method map_symtabs_matching_filename and its comment.
83         * symmisc.c (maintenance_print_msymbols): Replace xfullpath call by
84         gdb_realpath call.
85         * symtab.c (iterate_over_some_symtabs): Remove parameter full_path,
86         remove it also from the function comment, remove a block handling it.
87         Drop gdb_realpath call and cleanups from the real_path handling.
88         (iterate_over_symtabs): Drop variable full_path and its use.
89         * symtab.h (iterate_over_some_symtabs): Remove parameter full_path.
90         * utils.c (xfullpath): Remove.
91         * utils.h (xfullpath): Remove.
92
93 2013-02-01  Andreas Tobler  <andreast@fgznet.ch>
94
95         * Makefile.in (ALL_TARGET_OBS): Add ppc64-tdep.o.
96         (HFILES_NO_SRCDIR): Add ppc64-tdep.h.
97         (ALLDEPFILES): Add ppc64-tdep.c.
98         * configure.tgt (powerpc-*-linux* | powerpc64-*-linux*): Add
99         ppc64-tdep.o to gdb_target_obs.
100         * ppc64-tdep.h: New file.
101         * ppc64-tdep.c: New file.
102         (insn_d, insn_ds, insn_xfx, ppc64_desc_entry_point): Move from
103         ppc-linux-tdep.c to here.
104         (PPC64_STANDARD_LINKAGE1_LEN, PPC64_STANDARD_LINKAGE2_LEN)
105         (PPC64_STANDARD_LINKAGE2_LEN): Likewise and use ARRAY_SIZE macro.
106         (ppc64_standard_linkage1_target, ppc64_standard_linkage2_target)
107         (ppc64_standard_linkage3_target, ppc64_skip_trampoline_code): Move
108         from ppc-linux-tdep.c to here.
109         (ppc64_convert_from_func_ptr_addr): Rename from
110         ppc64_linux_convert_from_func_ptr_addr to
111         ppc64_convert_from_func_ptr_addr and move from ppc-linux-tdep.c to
112         here.
113         * rs6000-tdep.c:
114         (read_insn): Move from ppc-linux-tdep.c to here.
115         (insns_match_pattern, insn_d_field, insn_ds_field): Move
116         from ppc-linux-tdep.c to here and rename them with the ppc_ prefix.
117         * ppc-linux-tdep.c: Include ppc64-tdep.h.
118         Removed above functions.
119         (ppc_linux_init_abi): Adjust.
120
121 2013-02-01  Aleksandar Ristovski  <aristovski@qnx.com>
122
123         * ada-valprint.c (ada_print_floating): Remove unused 'len'.
124
125 2013-02-01  Aleksandar Ristovski  <aristovski@qnx.com>
126
127         * ada-lang.c (assign_aggregate): Remove unused 'is_array_aggregate'.
128
129 2013-02-01  Pedro Alves  <palves@redhat.com>
130
131         * dummy-frame.c (deprecated_pc_in_call_dummy): Delete function.
132         * frame.h (deprecated_pc_in_call_dummy): Delete declaration.
133
134 2013-02-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
135
136         * elfread.c (elf_symfile_read): Limit separate debug info additions to
137         files with no separate debug info.
138         * objfiles.c (add_separate_debug_objfile): Add gdb_assert calls.
139         * symfile.c (read_symbols): Call find_separate_debug_file_in_section
140         only for files with no separate debug info.
141
142 2013-01-31  Tom Tromey  <tromey@redhat.com>
143
144         * jit.c (jit_program_space_data): Rename from jit_inferior_data;
145         change type.
146         (struct jit_program_space_data): Rename from jit_inferior_data.
147         Update comments.
148         (get_jit_program_space_data): Rename from get_jit_inferior_data.
149         Change return type.  Attach data to program space.
150         (jit_program_space_data_cleanup): Rename from
151         jit_inferior_data_cleanup; change argument type.
152         (jit_read_descriptor): Change 'inf_data' argument to 'ps_data',
153         change type.
154         (jit_register_code): Update.
155         (jit_update_inferior_cache): Remove.
156         (jit_breakpoint_deleted): Get jit data from the location's program
157         space.
158         (jit_breakpoint_re_set_internal): Rename 'inf_data' argument to
159         'ps_data', change type.
160         (jit_inferior_init, jit_breakpoint_re_set_internal)
161         (jit_event_handler): Update.
162         (free_objfile_data): Get data from objfile's program space.
163         (_initialize_jit): Update.
164
165 2013-01-31  Tom Tromey  <tromey@redhat.com>
166
167         PR gdb/13987:
168         * jit.c (struct jit_inferior_data) <cached_code_address,
169         jit_breakpoint>: New fields.
170         (jit_breakpoint_re_set_internal): Fix logging.  Only create
171         breakpoint if cached address has changed.
172         (jit_update_inferior_cache, jit_breakpoint_deleted): New
173         functions.
174         (_initialize_jit): Register breakpoint deleted observer.
175
176 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
177
178         * infrun.c (handle_syscall_event): Remove unused gdbarch.
179         (save_infcall_suspend_state): Ifdef out unused inf.
180         (restore_infcall_suspend_state): Ifdef out unused inf.
181         * jit.c (jit_register_code): Remove unused i, b, inf_data.
182         (jit_frame_sniffer): Remove unused inf_data.
183
184 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
185
186         * c-exp.y (classify_inner_name): Remove unused type.
187         * c-lang.c (c_printstr): Remove unused byte_order, i, things_printed,
188         in_quotes, need_comma, wchar_buf, output, cleanup, iter, finished,
189         need_escape.
190         (c_get_string): Remove unused kind.
191         * c-typeprint.c (c_type_print_args): Remove unused i, len, args, table2.
192
193 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
194
195         * charset.c (intermediate_encoding): Remove unused i.
196         * completer.c (signal_completer): Remove unused i.
197         * continuations.c (discard_my_continuations_1): Remove unused
198         continuation_ptr.
199         * corelow.c (core_close): Remove unuseD name.
200         (get_core_siginfo): Remove unused pid.
201         * cp-namespace.c (cp_lookup_symbol_imports_or_template): Remove unused
202         i, cps.
203         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Remove unused base_offset.
204         (loclist_describe_location): Remove unused first.
205         * event-top.c (command_line_handler): Remove unused got_eof.
206         * exec.c (exec_close_1): Remove unused need_symtab_cleanup.
207         (resize_section_table): Remove unused old_value.
208         * gdb_bfd.c (gdb_bfd_map_section): Remove unused header.
209         * gnu-v3-abi.c (compute_vtable_size): Remove unused addr.
210         * i386-tdep.c (i386_process_record): Remove unused rex.
211         * infcmd.c (get_return_value): Remove unused uiout.
212         * jv-lang.c (type_from_class): Remove unused is_array.
213         * jv-valprint.c (java_val_print): Remove unused i.
214         * linux-nat.c (linux_nat_stop_lwp): Remove unused ptid.
215         * linux-thread-db.c (thread_db_find_new_threads_2): Remove unuseD pid.
216         * m2-typeprint.c (m2_print_type): Remove unused code.
217         * macroexp.c (get_character_constant): Remove unused body_start.
218         (macro_stringify): Remove unused result.
219         * objc-lang.c (find_methods): Remove unused gdbarch.
220         * objfiles.c (filter_overlapping_sections): Remove unused abfd1, abfd2.
221         * regcache.c (regcache_cooked_read): Remove unused gdbarch.
222         * stack.c (print_frame_args): Remove unused summary.
223         * thread.c (thread_apply_command): Remove unused p.
224         * valarith.c (value_x_unop): Remove unused mangle_ptr.
225         * valops.c (search_struct_method): Remove unused skip.
226         * valprint.c (generic_val_print): Remove unused byte_order.
227         * varobj.c (varobj_update): Remove unused changed.
228         * cli/cli-cmds.c (complete_command): Remove unused next_item.
229         (alias_command): Remove unused c.
230         * mi/mi-cmd-catch.c (mi_catch_load_unload): Remove unused c.
231         * mi/mi-main.c (mi_cmd_data_write_register_values): Remove unused
232         format.
233         (mi_cmd_data_write_memory): Remove unused word_format.
234         (mi_cmd_data_write_memory_bytes): Remove unused r.
235         * python/py-gdb-readline.c (gdbpy_readline_wrapper): Remove unused
236         p_start, p_end.
237         * python/python.c (_initialize_python): Remove unused cmd_name, cmd.
238         * tui/tui-disasm.c (tui_set_disassem_content): Remove unused
239         line_width.
240
241 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
242
243         * dwarf2-frame.c (dwarf2_compile_cfa_to_ax): Remove unused num_regs.
244         * symtab.c (iterate_over_symtabs): Remove unused s.
245         (find_pc_sect_symtab): Remove unused pspAce.
246         (find_pc_sect_line): Remove unused alt_symtab.
247         (find_pcs_for_symtab_line): Remove unused ix, previous_function.
248         (completion_list_add_name): Remove unused newsize.
249
250 2013-01-31  Tom Tromey  <tromey@redhat.com>
251
252         PR c++/14998:
253         * dwarf2read.c (read_tag_ptr_to_member_type): Handle
254         TYPE_CODE_FUNC.
255
256 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
257
258         * target.c (target_read_string): Remove unused origlen.
259
260 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
261
262         * auto-load.c (auto_load_expand_dir_vars): Remove unused dir_vec.
263         * ax-gdb.c (gen_printf): Remove unused expr, i, bot, fr, flen, fmt.
264         * ax-general.c (ax_print): Remove unused is_float.
265         * blockframe.c (block_innermost_frame): Remove unused start, end.
266         * break-catch-sig.c (catch_signal_command): Remove unused gdbarch.
267
268 2013-01-31  Aleksandar Ristovski  <aristovski@qnx.com>
269
270         * solib-svr4.c (svr4_keep_data_in_core): Remove unused lmo.
271         (svr4_read_so_list): Remove unused lmo.
272         * solib-target.c (solib_target_relocate_section_addresses): Remove
273         unused flags.
274
275 2013-01-30  Tom Tromey  <tromey@redhat.com>
276
277         * hppa-tdep.c (read_unwind_info): Use SECT_OFF_TEXT, not "0".
278
279 2013-01-30  Tom Tromey  <tromey@redhat.com>
280
281         * symfile.c (get_file_crc): Use bfd_calc_gnu_debuglink_crc32.
282         * utils.c (gnu_debuglink_crc32): Remove.
283         * utils.h (gnu_debuglink_crc32): Don't declare.
284
285 2013-01-30  Tom Tromey  <tromey@redhat.com>
286
287         * dwarf2read.c (compute_delayed_physnames, read_call_site_scope)
288         (read_structure_type, read_enumeration_type): Remove cast.
289
290 2013-01-30  Tom Tromey  <tromey@redhat.com>
291
292         * dwarf2read.c (read_namespace_type): Remove cast.
293         (read_typedef): Likewise.
294
295 2013-01-29  Tom Tromey  <tromey@redhat.com>
296
297         * dwarf2read.c (free_dwo_file): Remove assert.
298
299 2013-01-29  Tom Tromey  <tromey@redhat.com>
300
301         * value.c (deprecated_set_value_modifiable): Remove.
302         * value.h (deprecated_set_value_modifiable): Remove.
303
304 2013-01-28  Doug Evans  <dje@google.com>
305
306         * dwarf2loc.c (dwarf2_find_location_expression): Don't add base address
307         to addresses from dwo files.
308
309 2013-01-25  Siva Chandra Reddy  <sivachandra@google.com>
310
311         * valops.c (find_overload_match): Remove unused argument 'lax'.
312         * value.h: Remove unused argument 'lax' from the declaration of
313         find_overload_match.
314         * eval.c (value_subexp_standard): Do not pass a 'lax' argument
315         to find_overload_match.
316         * valarith.c (value_user_defined_cpp_op): Do not pass a 'lax'
317         argument to find_overload_match.
318
319 2013-01-25  Tom Tromey  <tromey@redhat.com>
320
321         * dwarf2read.c (processing_has_namespace_info): Remove.
322         (struct dwarf2_cu) <processing_has_namespace_info>: New field.
323         (process_die, read_func_scope, dwarf2_start_symtab)
324         (new_symbol_full): Update.
325
326 2013-01-25  Tom Tromey  <tromey@redhat.com>
327
328         * cp-namespace.c (cp_set_block_scope): Remove.
329         * cp-support.h (cp_set_block_scope): Remove.
330         * dbxread.c: Include block.h.
331         (cp_set_block_scope): New function.
332         (process_one_symbol): Update.
333         * dwarf2read.c (read_func_scope): Use block_set_scope.
334
335 2013-01-25  Pedro Alves  <palves@redhat.com>
336
337         * remote.c (add_current_inferior_and_thread): Tweak comment.
338
339 2013-01-25  Tom Tromey  <tromey@redhat.com>
340
341         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
342         (cp_add_using_directive): Add 'copy_names' argument.
343         * cp-support.h (cp_add_using_directive): Update.
344         (struct using_direct) <import_src, import_dest, alias,
345         declaration>: Now const.
346         * dwarf2read.c (read_import_statement): Use obconcat.
347         Don't copy names passed to cp_add_using_directive.
348
349 2013-01-25  Tom Tromey  <tromey@redhat.com>
350
351         * c-exp.y (qualified_name): Use TYPE_SAFE_NAME.
352
353 2013-01-25  Pedro Alves  <palves@redhat.com>
354
355         * remote.c (stop_reply_extract_thread): New.
356         (add_current_inferior_and_thread): New parameter 'wait_status'.
357         Handle it.
358         (remote_start_remote): Pass wait status to
359         add_current_inferior_and_thread.
360         (extended_remote_run): Update comment.
361         (extended_remote_create_inferior_1): Pass wait status to
362         add_current_inferior_and_thread.
363
364 2013-01-25  Andrew Burgess  <aburgess@broadcom.com>
365             Ulrich Weigand  <uweigand@de.ibm.com>
366
367         * valarith.c (value_vector_widen): New function for replicating a
368         scalar into a vector.
369         (value_binop): Use value_vector_widen to widen scalar to vector
370         rather than casting, this better matches gcc C behaviour.
371         * valops.c (value_casst): Update logic for casting between vector
372         types, and for casting from scalar to vector, try to match gcc C
373         behaviour.
374         * value.h (value_vector_widen): Declare.
375         * opencl-lang.c (opencl_value_cast): New opencl specific casting
376         function, handle special case for casting scalar to vector.
377         (opencl_relop): Use opencl_value_cast.
378         (evaluate_subexp_opencl): Use opencl_value_cast instead of
379         value_cast, and handle BINOP_ASSIGN, UNOP_CAST, and UNOP_CAST_TYPE
380         in order to use opencl_value_cast.
381
382 2013-01-25  Yao Qi  <yao@codesourcery.com>
383
384         * event-loop.c: Include "queue.h".
385         (gdb_event_p): New typedef.
386         (DECLARE_QUEUE_P): Use.
387         (DEFINE_QUEUE_P): Use.
388         (async_queue_event): Remove.
389         (gdb_event_xfree): New.
390         (initialize_event_loop): New.
391         (process_event): Use QUEUE macros.
392         (event_queue): Remove.
393         (gdb_wait_for_event): Caller update.
394         (check_async_event_handlers): Likewise.
395         (poll_timers): Likewise.
396         * event-loop.h (initialize_event_loop): Declare.
397         * event-loop.c (gdb_event_xfree): New.
398         * top.c (gdb_init): Call initialize_event_loop.
399
400 2013-01-25  Yao Qi  <yao@codesourcery.com>
401
402         * event-loop.c (async_queue_event): Remove one parameter
403         'position'.  Remove code handling 'position' == TAIL.
404         (gdb_wait_for_event): Caller update.
405         (check_async_event_handlers): Caller update.
406         (poll_timers): Caller update.
407         * event-loop.h (enum queue_position): Remove.
408
409 2013-01-25  Maxim Kuvyrkov  <maxim@kugelworks.com>
410
411         * MAINTAINERS: Update my email.
412
413 2013-01-25  Yao Qi  <yao@codesourcery.com>
414
415         * main.c (print_gdb_help): Remove "--epoch" from the help
416         message.
417
418 2013-01-24  Ulrich Weigand  <uweigand@de.ibm.com>
419
420         * symtab.c (skip_prologue_using_sal): Consider a file
421         change the same as an increased line number
422
423 2013-01-24  Tiago Stürmer Daitx  <tdaitx@linux.vnet.ibm.com>
424
425         * MAINTAINERS (Write After Approval): Add myself to the list. 
426
427 2013-01-24  Tom Tromey  <tromey@redhat.com>
428
429         * ada-lang.h (ada_decode_symbol): Make return type const.
430         * ada-lang.c (ada_decode_symbol): Likewise.
431
432 2013-01-23  Doug Evans  <dje@google.com>
433
434         * linespec.c (find_linespec_symbols): Make static.
435
436 2013-01-23  Tiago Stürmer Daitx  <tdaitx@linux.vnet.ibm.com>
437
438         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Set correct
439         type on float conversion for complex type.
440
441 2013-01-23  Siva Chandra Reddy  <sivachandra@google.com>
442
443         Add a new class gdb.Architecture which exposes GDB's
444         internal representation of architecture via GDB Python API.
445         * Makefile.in: Add entries corresponding to the new file
446         python/py-arch.c.
447         * NEWS (Python Scripting): Add entries for the new class
448         gdb.Architecture and the new method gdb.Frame.architecture.
449         * python/py-arch.c: Implement gdb.Architecture class.
450         * python/py-frame.c (frapy_arch): Implement the method
451         gdb.Frame.architecture().
452         (frame_object_methods): Add 'architecture' to the method table.
453         * python/python-internal.h: Add declarations of new utility
454         functions.
455         * python/python.c (_initialize_python): Initialize
456         gdb.Architecture class.
457
458 2013-01-23  Doug Evans  <dje@google.com>
459
460         Work around binutils/15021.
461         * dwarf2read.c (dwarf2_per_cu_data): Split imported_symtabs and
462         type_unit_group out of union s.  All uses updated.
463         (read_index_from_section): Watch for index version 8.
464         (follow_die_sig): If using .gdb_index version <= 7, record the TU as
465         an imported symtab.
466         (write_psymtabs_to_index): Increment version number to 8.
467
468 2013-01-22  Pedro Alves  <palves@redhat.com>
469
470         * annotate.c (breakpoint_changed): Skip if breakpoint is not
471         user-visible.
472
473 2013-01-22  Pedro Alves  <palves@redhat.com>
474
475         * annotate.c (annotate_breakpoints_changed): Rename to ...
476         (annotate_breakpoints_invalid): ... this.  Make static.
477         (breakpoint_changed): Adjust.
478         (_initialize_annotate): Always install the observers.  Install a
479         "breakpoint_created" observer.
480         * annotate.h (annotate_breakpoints_changed): Delete declaration.
481         * breakpoint.c (set_breakpoint_condition)
482         (breakpoint_set_commands, do_map_commands_command)
483         (init_raw_breakpoint, clear_command, set_ignore_count)
484         (enable_breakpoint_disp): No longer call
485         annotate_breakpoints_changed.
486
487 2013-01-22  Pedro Alves  <palves@redhat.com>
488
489         * annotate.c: Include "inferior.h".
490         (frames_invalid_emitted)
491         (breakpoints_invalid_emitted): New globals.
492         (async_background_execution_p): New function.
493         (annotate_breakpoints_changed, annotate_frames_invalid): Skip
494         emitting the annotation if it has already been emitted.
495         (annotate_display_prompt): New function.
496         * annotate.h (annotate_display_prompt): New declaration.
497         * event-top.c: Include annotate.h.
498         (display_gdb_prompt): Call annotate_display_prompt.
499
500 2013-01-22  Pedro Alves  <palves@redhat.com>
501
502         * annotate.c (ignore_count_changed): Delete.
503         (annotate_breakpoints_changed): Don't clear ignore_count_changed.
504         (annotate_ignore_count_change): Delete.
505         (annotate_stopped): Don't emit a delayed breakpoints-changed
506         annotation.
507         * annotate.h (annotate_ignore_count_change): Delete.
508         * breakpoint.c (bpstat_check_breakpoint_conditions): Don't call
509         annotate_ignore_count_change.
510
511 2013-01-22  Tom Tromey  <tromey@redhat.com>
512
513         * dwarf2loc.c (dwarf2_compile_expr_to_ax) <DW_OP_fbreg>: Only
514         require_rvalue for a register location.
515
516 2013-01-21  Marc Khouzam  <marc.khouzam@ericsson.com>
517
518         * breakpoint.c (print_one_breakpoint_location): Add MI
519         field 'thread-groups' when printing a breakpoint.
520         (output_thread_groups): New function.
521
522 2013-01-21  Siva Chandra Reddy  <sivachandra@google.com>
523
524         * python/lib/gdb/commands/explore.py
525         (CompoundExplorer.explore_expr): Correct the name of a method
526         being invoked.
527         (ExploreTypeCommand.invoke): Add a missing 'return'.
528
529 2013-01-21  Tom Tromey  <tromey@redhat.com>
530
531         * gdb_obstack.h (obconcat): Move declaration here, from...
532         * symfile.h (obconcat): ... here.
533         * gdb_obstack.c: New file.
534         (obconcat): Move from...
535         * symfile.c (obconcat): ... here.
536         * Makefile.in (SFILES): Add gdb_obstack.c.
537         (COMMON_OBS): Add gdb_obstack.o.
538
539 2013-01-21  Tom Tromey  <tromey@redhat.com>
540
541         * symfile.h (obsavestring): Don't declare.
542         * symfile.c (obsavestring): Remove.
543         * ada-exp.y: Use obstack_copy0, not obsavestring.
544         * ada-lang.c: Use obstack_copy0, not obsavestring.
545         * coffread.c: Use obstack_copy0, not obsavestring.
546         * cp-namespace.c: Use obstack_copy0, not obsavestring.
547         * dbxread.c: Use obstack_copy0, not obsavestring.
548         * dwarf2read.c: Use obstack_copy0, not obsavestring.
549         * jit.c: Use obstack_copy0, not obsavestring.
550         * mdebugread.c: Use obstack_copy0, not obsavestring.
551         * psymtab.c: Use obstack_copy0, not obsavestring.
552         * stabsread.c: Use obstack_copy0, not obsavestring.
553         * xcoffread.c: Use obstack_copy0, not obsavestring.
554
555 2013-01-21  Tom Tromey  <tromey@redhat.com>
556
557         * dwarf2read.c (fixup_go_packaging): Save package name
558         on objfile obstack.
559         * gdbtypes.c (init_type): Don't copy name.
560
561 2013-01-21  Tom Tromey  <tromey@redhat.com>
562
563         * dwarf2read.c (struct partial_die_info) <name, scope>: Now
564         const.
565         (struct attribute) <u.str>: Now const.
566         (struct fnfieldlist) <name>: Now const.
567         (dw2_get_file_names_reader, init_cutu_and_read_dies): Update.
568         (partial_die_parent_scope): Make return type const.
569         (partial_die_full_name, add_partial_symbol): Update.
570         (dwarf2_compute_name, dwarf2_full_name, dwarf2_physname): Make
571         'name' const.
572         (find_file_and_directory): Make 'name' and 'comp_dir' const.
573         (read_file_scope, read_func_scope, dwarf2_add_field)
574         (dwarf2_add_member_fn, read_structure_type)
575         (process_enumeration_scope, read_array_type, read_module_type)
576         (read_base_type, read_subrange_type): Update.
577         (dwarf2_start_symtab): Make 'name' and 'comp_dir' const.
578         (new_symbol_full, guess_full_die_structure_name): Update.
579         (dwarf2_canonicalize_name): Return const type.  Make 'name' const.
580         (dwarf2_name): Return const type.
581         (dwarf_decode_macro_bytes, dwarf_decode_macros): Make 'comp_dir'
582         const.
583
584 2013-01-21  Tom Tromey  <tromey@redhat.com>
585
586         * gdbtypes.c (init_type): Make 'name' const.
587         * gdbtypes.h (init_type): Update.
588
589 2013-01-21  Tom Tromey  <tromey@redhat.com>
590
591         * buildsym.c (patch_subfile_names): Use set_last_source_file.
592         (start_symtab): Make 'name' and 'dirname' const.  Use
593         set_last_source_file.
594         (restart_symtab, reset_symtab_globals): Use set_last_source_file.
595         (last_source_file): Define.  Now static.
596         (set_last_source_file, get_last_source_file): New functions.
597         * buildsym.h (last_source_file): Don't declare.
598         (start_symtab): Update.
599         (set_last_source_file, get_last_source_file): Declare.
600         * coffread.c (complete_symtab): Use set_last_source_file.
601         (coff_end_symtab): Likewise.
602         (coff_symtab_read): Use set_last_source_file, get_last_source_file.
603         * dbxread.c (read_dbx_symtab, read_ofile_symtab): Use
604         set_last_source_file.
605         (process_one_symbol): Use get_last_source_file.
606         * mdebugread.c (parse_partial_symbols): Use set_last_source_file.
607         (psymtab_to_symtab_1): Use get_last_source_file.
608         * xcoffread.c (process_linenos): Use get_last_source_file.
609         (complete_symtab): Use set_last_source_file.
610         (read_xcoff_symtab): Use set_last_source_file, get_last_source_file.
611         (scan_xcoff_symtab): Use set_last_source_file.
612
613 2013-01-21  Tom Tromey  <tromey@redhat.com>
614
615         * symtab.c (struct demangled_name_entry) <mangled>: Now const.
616         (symbol_set_names): Remove casts.  Handle field const-ness.
617
618 2013-01-21  Tom Tromey  <tromey@redhat.com>
619
620         * dwarf2read.c (new_symbol_full): Remove cast.
621         * symtab.c (symbol_set_demangled_name): Make 'name' const.
622         * symtab.h (symbol_set_demangled_name): Update.
623
624 2013-01-21  Tom Tromey  <tromey@redhat.com>
625
626         * main.c (captured_main): Call bfd_init.
627
628 2013-01-21  Tom Tromey  <tromey@redhat.com>
629
630         * gnu-v2-abi.c (_initialize_gnu_v2_abi): Don't set default ABI.
631         * gnu-v3-abi.c (_initialize_gnu_v3_abi): Set default ABI.
632         * minsyms.c (install_minimal_symbols): Don't check for _Z symbols.
633         * NEWS: Update.
634
635 2013-01-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
636
637         * symmisc.c (maintenance_print_msymbols): Check also ST_DEV.
638
639 2013-01-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
640
641         Fix gdb.fortran/common-block.exp crash in PIE mode.
642         * dwarf2read.c (new_symbol_full) <DW_TAG_common_block>: Use
643         LOC_COMMON_BLOCK.
644         * f-valprint.c (info_common_command_for_block): Expect
645         LOC_COMMON_BLOCK in gdb_assert.
646         * symtab.h (struct general_symbol_info): Update comment for the
647         common_block member.
648         (domain_enum): Extend comment for the COMMON_BLOCK_DOMAIN member.
649         (enum address_class): New member LOC_COMMON_BLOCK.
650
651 2013-01-18  David Blaikie  <dblaikie@gmail.com>
652
653         * MAINTAINERS (Write After Approval): Add "David Blaikie".
654
655 2013-01-18  Tom Tromey  <tromey@redhat.com>
656
657         PR c++/14999:
658         * dwarf2loc.c (dwarf2_compile_expr_to_ax) <DW_OP_fbreg>:
659         Call require_rvalue.
660
661 2013-01-18  Yao Qi  <yao@codesourcery.com>
662
663         * dbxread.c (dbx_psymtab_to_symtab): Delete the declaration.
664         (dbx_read_symtab): New declaration.
665         (dbx_psymtab_to_symtab): Delete.
666         (dbx_read_symtab): Rename from dbx_psymtab_to_symtab.
667         Rename parameter PST to SELF.  Exchanged two parameters.
668         (start_psymtab): Caller update.
669         * dwarf2read.c (dwarf2_psymtab_to_symtab): Delete the declaration.
670         (dwarf2_read_symtab): New declaration.
671         (dwarf2_psymtab_to_symtab): Delete.
672         (dwarf2_read_symtab): Rename from dwarf2_psymtab_to_symtab.
673         Rename parameter PST to SELF.  Exchanged two parameters.
674         (create_partial_symtab): Caller update.
675         * mdebugread.c (mdebug_psymtab_to_symtab): Delete.
676         (mdebug_read_symtab): Rename from mdebug_psymtab_to_symtab.
677         Rename parameter PST to SELF.  Exchanged two parameters.
678         (parse_partial_symbols, new_psymtab): Caller update.
679         * psympriv.h (struct partial_symtab) <read_symtab>: Exchange
680         two parameters.
681         * psymtab.c (psymtab_to_symtab): Caller update.
682         * xcoffread.c (xcoff_psymtab_to_symtab): Delete.
683         (xcoff_read_symtab): Rename from xcoff_psymtab_to_symtab.
684         Rename parameter PST to SELF.  Exchanged two parameters.
685         (xcoff_start_psymtab): Caller update.
686
687 2013-01-18  Yao Qi  <yao@codesourcery.com>
688
689         * infrun.c (proceed): Rename local variable 'oneproc' to
690         'force_step'.
691
692 2013-01-17  Doug Evans  <dje@google.com>
693
694         * dwarf2read.c (dw2_build_type_unit_groups_reader): Delete.
695         (dw2_build_type_unit_groups): Delete.  All uses updated.
696
697         * symtab.h (struct symbol_search): Add comment.
698
699 2013-01-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
700
701         * symtab.c (compare_filenames_for_search): New comment for
702         HAS_DRIVE_SPEC.
703
704 2013-01-17  Tom Tromey  <tromey@redhat.com>
705
706         * cp-abi.c (cp_abi_completer): Fix typo in assignment.
707
708 2013-01-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
709
710         * symtab.c (iterate_over_some_symtabs): New variable cleanups,
711         initialize it by existing make_cleanup.  Call new do_cleanups.
712
713 2013-01-17  Tom Tromey  <tromey@redhat.com>
714
715         * cp-abi.c (cp_abi_completer): New function.
716         (_initialize_cp_abi): Set completer for "set cp-abi".
717
718 2013-01-17  Tom Tromey  <tromey@redhat.com>
719
720         * mem-break.c: Remove obsolete comment.
721         * bfin-tdep.c (bfin_breakpoint_from_pc): Fix comment.
722
723 2012-01-17  Sanjoy Das <sanjoy@playingwithpointers.com>
724
725         * jit.c (jit_reader_load_command): Interpret the jit reader name
726         as an absolute path if it begins with a forward slash.
727
728 2012-01-17  Sanjoy Das <sanjoy@playingwithpointers.com>
729
730         PR gdb/14550
731
732         * jit.c (finalize_symtab): Ensure that only the global block has a
733         NULL superblock.
734
735 2013-01-17  Pedro Alves  <palves@redhat.com>
736
737         * acinclude.m4: Include ../config/plugins.m4,
738         ../config/largefile.m4 and ../config/lead-dot.m4.  Add comments.
739         * Makefile.in (aclocal_m4_deps): Update.
740         * aclocal.m4: Renegerate.
741
742 2013-01-16  Doug Evans  <dje@google.com>
743
744         * contrib/cc-with-tweaks.sh: Add references to Fission docs.
745
746 2013-01-16  Pedro Alves  <palves@redhat.com>
747             Tom Tromey  <tromey@redhat.com>
748
749         PR cli/7221:
750         * NEWS: Add "catch signal".
751         * breakpoint.c (base_breakpoint_ops): No longer static.
752         (bpstat_explains_signal): New function.
753         (init_catchpoint): No longer static.
754         (base_breakpoint_explains_signal): New function.
755         (base_breakpoint_ops): Initialize new field.
756         * breakpoint.h (enum bpstat_signal_value): New.
757         (struct breakpoint_ops) <explains_signal>: New field.
758         (bpstat_explains_signal): Remove macro, declare as function.
759         (base_breakpoint_ops, init_catchpoint): Declare.
760         * break-catch-sig.c: New file.
761         * inferior.h (signal_catch_update): Declare.
762         * infrun.c (signal_catch): New global.
763         (handle_syscall_event): Update for change to
764         bpstat_explains_signal.
765         (handle_inferior_event): Likewise.  Always handle random signals
766         via bpstats.
767         (signal_cache_update): Check signal_catch.
768         (signal_catch_update): New function.
769         (_initialize_infrun): Initialize signal_catch.
770         * Makefile.in (SFILES): Add break-catch-sig.c.
771         (COMMON_OBS): Add break-catch-sig.o.
772
773 2013-01-16  Tom Tromey  <tromey@redhat.com>
774
775         * breakpoint.c (print_one_catch_fork, print_one_catch_vfork)
776         (print_one_catch_solib, print_one_catch_syscall)
777         (print_one_catch_exec, print_one_exception_catchpoint): Emit
778         "catch-type".
779
780 2013-01-16  Yao Qi  <yao@codesourcery.com>
781
782         * printcmd.c (current_display_number): Make it static.
783
784 2013-01-16  Yao Qi  <yao@codesourcery.com>
785
786         * infcmd.c (step_once): Don't check '!single_inst' as it was
787         checked before.
788
789 2013-01-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
790
791         * dwarf2read.c (psymtab_include_file_name): Extend the function comment.
792
793 2013-01-14  Tom Tromey  <tromey@redhat.com>
794
795         * cli/cli-decode.c (add_setshow_string_noescape_cmd): Return the
796         set command.
797         * command.h (add_setshow_string_noescape_cmd): Update.
798         * corefile.c (set_gnutarget_command): Remove trailing whitespace.
799         (complete_set_gnutarget): New function.
800         (_initialize_core): Set the "set gnutarget" completer.
801
802 2013-01-14  Tom Tromey  <tromey@redhat.com>
803
804         PR symtab/14442:
805         * c-typeprint.c (cp_type_print_method_args): Handle 'restrict'.
806         (c_type_print_modifier): Likewise.
807         * dwarf2read.c (read_tag_restrict_type): New function.
808         (read_type_die_1): Handle DW_TAG_restrict_type.
809         * gdbtypes.c (make_restrict_type): New function.
810         (recursive_dump_type): Handle TYPE_RESTRICT.
811         * gdbtypes.h (enum type_flag_values): Renumber.
812         (enum type_instance_flag_value): Add
813         TYPE_INSTANCE_FLAG_RESTRICT.
814         (TYPE_RESTRICT): New macro.
815         (make_restrict_type): Declare.
816
817 2013-01-14  Tom Tromey  <tromey@redhat.com>
818
819         PR symtab/14931:
820         * psymtab.c (struct psymtab_state): New.
821         (discard_psymtabs_upto, make_cleanup_discard_psymtabs): New
822         functions.
823         * psympriv.h (make_cleanup_discard_psymtabs): Declare.
824         * dwarf2read.c (dwarf2_build_psymtabs): Catch exceptions.
825
826 2013-01-14  Richard Sharman  <richard_sharman@mitel.com>
827             Pedro Alves  <palves@redhat.com>
828
829         PR remote/14786
830
831         * remote.c (remote_threads_info): Make a copy of the reply from
832         qfThreadInfo and use that instead of rs->buf.
833
834 2013-01-14  Yao Qi  <yao@codesourcery.com>
835
836         * dbxread.c (dbx_psymtab_to_symtab_1): Don't check PST is NULL.
837         (dbx_psymtab_to_symtab): Likewise.
838         * dwarf2read.c (dwarf2_psymtab_to_symtab): Likewise.
839         * mdebugread.c (mdebug_psymtab_to_symtab): Likewise.
840         * xcoffread.c (xcoff_psymtab_to_symtab_1): Likewise.
841
842 2013-01-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
843
844         * parse.c (parse_exp_in_context): New variable inner_chain.  Call
845         make_cleanup_restore_current_language.  Call set_language.  Move
846         OLD_CHAIN and INNER_CHAIN cleanups.
847         * utils.c (do_restore_current_language)
848         (make_cleanup_restore_current_language): New functions.
849         * utils.h (make_cleanup_restore_current_language): New declaration.
850
851 2013-01-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
852
853         * source.c (symtab_to_fullname): Apply rewrite_source_path also for
854         non-existing files.
855
856         * source.c (symtab_to_fullname): Do not prepend DIRNAME for
857         non-existing files if FILENAME is already absolute.
858
859 2013-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
860
861         * macrocmd.c (macro_inform_no_debuginfo): Use puts_filtered instead of
862         fputs_filtered.  Append trailing newline.
863
864 2013-01-11  Yao Qi  <yao@codesourcery.com>
865             Stan Shebs  <stan@codesourcery.com>
866
867         * psymtab.c (init_psymbol_list): Clarify the comment.
868
869 2013-01-11  Yao Qi  <yao@codesourcery.com>
870
871         * breakpoint.c (print_one_breakpoint_location): Remove dead code.
872         (update_dprintf_command_list): Assert that 'printf_line' is
873         non-null.  Remove condition check.
874
875 2013-01-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
876
877         Code cleanup.
878         * psymtab.c (psymtab_to_fullname, psymtab_to_fullname): Make the return
879         type const char *.
880         * tui/tui-source.c (tui_source_is_displayed): Make the parameter fname
881         const char *.
882         * tui/tui-source.h (tui_source_is_displayed): Likewise.
883
884 2013-01-09  Anthony Green  <green@moxielogic.com>
885
886         * cp-abi.c (cplus_print_vtable): Don't return value from void
887         function.
888         * ada-lang.c (re_set_catch_assert): Ditto.
889
890 2013-01-09  Doug Evans  <dje@google.com>
891
892         * symfile.h (quick_symbol_functions): Delete member
893         pre_expand_symtabs_matching.  All uses removed.
894         * dwarf2read.c (dw2_lookup_symbol): Implement.
895         (dw2_do_expand_symtabs_matching): Delete.
896         (dw2_pre_expand_symtabs_matching): Delete.
897         (struct dw2_symtab_iterator): New type.
898         (dw2_symtab_iter_init, dw2_symtab_iter_next): New functions.
899         (dw2_expand_symtabs_for_function): Rewrite.
900         (dwarf2_gdb_index_functions): Update.
901         * psymtab.c (pre_expand_symtabs_matching_psymtabs): Delete.
902         (psym_functions): Update.
903
904 2013-01-09  Tom Tromey  <tromey@redhat.com>
905
906         * config/pa/hpux.mh (NATDEPFILES): Remove somread.o.
907         * configure: Rebuild.
908         * configure.ac: Add somread.o to the build if BFD has SOM
909         support.
910         * somread.c: Include som/aout.h, not syms.h.
911         (som_symtab_read): Use som_external_symbol_dictionary_record.
912         Unpack records manually.
913         (_initialize_somread): Declare.
914
915 2012-01-08  Mike Frysinger  <vapier@gentoo.org>
916
917         * common/linux-ptrace.c (linux_ptrace_test_ret_to_nx) [__x86_64__]:
918         Cast return_address to 64bits.
919
920 2013-01-08  Hui Zhu  <hui_zhu@mentor.com>
921
922         * printcmd.c: Remove define of function output_command.
923         * tracepoint.c: Remove extern of function output_command.
924         * valprint.h: (output_command): New extern.
925
926 2013-01-07  Tom Tromey  <tromey@redhat.com>
927
928         * objc-lang.c (objc_emit_char, objc_printchar, objc_printstr):
929         Remove.
930         (objc_language_defn): Use c_printchar, c_printstr,
931         c_emit_char.
932
933 2013-01-07  Tom Tromey  <tromey@redhat.com>
934
935         PR cli/7719:
936         * NEWS: Update.
937         * ada-valprint.c (printstr, print_field_values): Remove
938         "inspect_it" code.
939         * cp-valprint.c (cp_print_value_fields): Remove "inspect_it"
940         code.
941         * jv-valprint.c (java_print_value_fields): Remove "inspect_it"
942         code.
943         * m2-lang.c (m2_printstr): Remove "inspect_it" code.
944         * main.c (captured_main): Remove "epoch" argument.
945         * objc-lang.c (objc_printstr): Remove "inspect_it" code.
946         * p-lang.c (pascal_printstr): Remove "inspect_it" code.
947         * p-valprint.c (pascal_object_print_value_fields): Remove
948         "inspect_it" code.
949         * printcmd.c (print_command_1): Remove 'inspect' argument.
950         (print_command, call_command): Update.
951         (inspect_command): Remove.
952         (_initialize_printcmd): Make "inspect" an alias for "print".
953         * top.c (epoch_interface): Remove.
954         * top.h (epoch_interface): Remove.
955         * valprint.c (user_print_options): Update.
956         (print_converted_chars_to_obstack): Remove "inspect_it" code.
957         * valprint.h (struct value_print_options) <inspect_it>: Remove
958         field.
959
960 2013-01-04  Tom Tromey  <tromey@redhat.com>
961
962         * valprint.h (read_string): Add 'extern'.
963
964 2013-01-07  Joel Brobecker  <brobecker@adacore.com>
965
966         * darwin-nat.c: Fix typo in TASK_DYLD_INFO_COUNT macro test
967         used to decide whether to define darwin_read_dyld_info or not.
968
969 2013-01-03  Pierre Muller  <muller@sourceware.org>
970
971         * main.c (relocate_gdb_directory): Avoid calling stat function
972         if DIR is empty.
973
974 2013-01-03  Yao Qi  <yao@codesourcery.com>
975
976         * psymtab.c (fixup_psymbol_section): Update declaration.
977         (fixup_psymbol_section): Remove code returning value.
978
979 2013-01-03  Yao Qi  <yao@codesourcery.com>
980
981         * symtab.h: Remove some out of date comments.
982          (enum exception_event_kind): Move it ...
983         * breakpoint.c: ... here.
984
985 2013-01-02  Iain Sandoe  <developer@sandoe-acoustics.co.uk>
986
987         PR gdb/14405
988         * darwin-nat.c (darwin_read_dyld_info): Only build if
989         TASK_DYLD_INFO_COUNT is defined.
990         (darwin_xfer_partial): Call darwin_read_dyld_info only if
991         TASK_DYLD_INFO_COUNT is defined.
992
993 2013-01-02  Tom Tromey  <tromey@redhat.com>
994
995         * symfile.h (struct ecoff_debug_hack): Remove.
996         * objfiles.c: Don't include mdebugread.h.
997
998 2013-01-02  Tom Tromey  <tromey@redhat.com>
999
1000         * config/i386/darwin.mh (NATDEPFILES): Remove machoread.o.
1001         * configure.ac: Check for Mach-O support in BFD.  Update
1002         CONFIG_OBS.
1003         * configure: Rebuild.
1004
1005 2013-01-02  Tom Tromey  <tromey@redhat.com>
1006
1007         * acinclude.m4 (GDB_AC_CHECK_BFD): New macro.
1008         * configure.ac: Use GDB_AC_CHECK_BFD.
1009         * configure: Rebuild.
1010
1011 2013-01-01  Maxim Kuvyrkov  <maxim.kuvyrkov@gmail.com>
1012
1013         * MAINTAINERS: Update my email.
1014
1015 2013-01-01  Joel Brobecker  <brobecker@adacore.com>
1016
1017         * cli/cli-script.h (make_cleanup_free_command_lines): Make extern.
1018
1019 2013-01-01  Joel Brobecker  <brobecker@adacore.com>
1020
1021         * rs6000-nat.c (bss_data_overlap): New function.
1022         (vmap_symtab): Use it to adjust the .bss section's offset.
1023
1024 2013-01-01  Joel Brobecker  <brobecker@adacore.com>
1025
1026         Update year range in copyright notice of all files.
1027
1028 2013-01-01, 13  Joel Brobecker  <brobecker@adacore.com>
1029
1030         * top.c (print_gdb_version): Update copyright year.
1031
1032 For older changes see ChangeLog-2012.
1033 \f
1034 Local Variables:
1035 mode: change-log
1036 left-margin: 8
1037 fill-column: 74
1038 version-control: never
1039 coding: utf-8
1040 End: