Commit graph

27288 commits

Author SHA1 Message Date
Ulrich Weigand
8e6a5956eb * gdb.base/watch_thread_num.exp: Revert 2008-09-03 change.
Skip test completely if gdb,no_hardware_watchpoints.
2010-10-19 21:29:23 +00:00
Ulrich Weigand
2c04da0de0 * gdb.base/foll-fork.exp: Make regexps to match catchpoint hits more
strict, but do not check for any particular function name within libc.
2010-10-19 21:28:33 +00:00
Sami Wagiaalla
79afc5ef5d Support overloading of 'operator->'.
2010-10-19  Sami Wagiaalla  <swagiaal@redhat.com>

	 PR C++/11500:
	* valarith.c (value_x_unop): Handle STRUCTOP_PTR.
	* eval.c (evaluate_subexp_standard): Check for overload of
	'operator->'.
	* valarith.c (value_x_binop): Throw NOT_FOUND_ERROR.
	(value_x_unop): Ditto.
	* valops.c: Include "exceptions.h".
	(find_overload_match): Throw NOT_FOUND_ERROR.
	(value_struct_elt): Ditto.

2010-10-19  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdb.cp/smartp.exp: New test.
	* gdb.cp/smartp.cc : New test.
2010-10-19 20:53:15 +00:00
Tom Tromey
cca56ac7ae * python/py-cmd.c (cmdpy_function): Unreference exception state. 2010-10-19 20:11:37 +00:00
Sami Wagiaalla
026ffab798 Support pointer to bool conversion.
2010-10-19  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdbtypes.h: Introduce BOOL_PTR_CONVERSION_BADNESS.
	* gdbtypes.c (rank_one_type): Use BOOL_PTR_CONVERSION_BADNESS
	for conversion.
	Make all other conversions illegal.

2010-10-19  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdb.cp/converts.exp: Test pointer to bool conversion.
	Test pointer to long conversion.
	* gdb.cp/oranking.exp: Removed relevant kfail.
2010-10-19 16:07:25 +00:00
Doug Evans
8c540a24cf * c-typeprint.c (c_type_print_base, case TYPE_CODE_TYPEDEF): Verify
assumptions of when this case happens.  Print "<unnamed typedef>".
2010-10-19 04:22:20 +00:00
gdbadmin
a01c006446 *** empty log message *** 2010-10-19 00:00:32 +00:00
Tom Tromey
3a772aa44d gdb
* valprint.c (val_print_string): Pass 'encoding' to
	LA_PRINT_STRING.
gdb/testsuite
	* gdb.python/py-prettyprint.exp (run_lang_tests): Test encoding
	argument to lazy_string.
	* gdb.python/py-prettyprint.py (pp_ls_encoding): New global.
	(pp_ls.to_string): Use it.
	* gdb.python/py-prettyprint.c (main): Move declarations to top.
	Add "estring2" local.
2010-10-18 19:14:03 +00:00
gdbadmin
36ad8f020a *** empty log message *** 2010-10-18 00:00:33 +00:00
Jan Kratochvil
5fc3827b43 gdb/testsuite/
Fix s390x compatibility.
	* gdb.dwarf2/pr11465.S (DW_TAG_pointer_type): Use PTRBITS.  Twice.
	* gdb.dwarf2/pr11465.exp: Set ptrbits, use it for -DPTRBITS.
2010-10-17 18:55:09 +00:00
Jan Kratochvil
01f8c46dda gdb/
Fix the `stopped language detection' testcase for gcc-4.5.
	* dwarf2read.c (read_partial_die): Set also LANGUAGE_OF_MAIN.
	* symfile.c (set_initial_language): Move variable filename to a more
	inner block.  Prefer LANGUAGE_OF_MAIN.
	* symtab.c (language_of_main): New variable.
	(set_main_name): Always reset LANGUAGE_OF_MAIN.
	* symtab.h (language_of_main): New declaration.
2010-10-17 18:49:47 +00:00
Jan Kratochvil
8aeb23f364 gdb/
* gdbthread.h (currently_stepping): New declaration.
	* infrun.c (currently_stepping): Remove the forward declaration.
	(currently_stepping): Make it global.
	* linux-nat.c (resume_callback) <lp->stopped && lp->status == 0>: New
	variables tp and step, initialized them.  Pass STEP to to_resume.
	Print also possibly "PTRACE_SINGLESTEP" if STEP.  Initialize LP->STEP.
	* remote.c (currently_stepping_callback): New.
	(remote_vcont_resume)
	<ptid_equal (ptid, minus_one_ptid) || ptid_is_pid (ptid)>:
	New variable tp.  Call currently_stepping_callback and step such
	thread.

gdb/testsuite/
	* gdb.threads/sigstep-threads.exp: New file.
	* gdb.threads/sigstep-threads.c: New file.
2010-10-17 18:24:47 +00:00
Jan Kratochvil
c1e5657246 gdb/
* infrun.c (follow_exec): Replace symbol_file_add_main by
	symbol_file_add with SYMFILE_DEFER_BP_RESET, set_initial_language and
	breakpoint_re_set.
	* m32r-rom.c (m32r_load, m32r_upload_command): Use parameter 0 for
	clear_symtab_users.
	* objfiles.c (free_all_objfiles): Likewise.
	* remote-m32r-sdi.c (m32r_load): Likewise.
	* solib-som.c (som_solib_create_inferior_hook): Likewise.
	* symfile.c (new_symfile_objfile): New comment for add_flags.  Call
	clear_symtab_users with ADD_FLAGS.
	(reread_symbols): Use parameter 0 for clear_symtab_users.
	(clear_symtab_users): New parameter add_flags.  Do not call
	breakpoint_re_set if SYMFILE_DEFER_BP_RESET.
	(clear_symtab_users_cleanup): Use parameter 0 for clear_symtab_users.
	* symtab.h (clear_symtab_users): New parameter add_flags.

gdb/testsuite/
	* gdb.base/pie-execl.exp: New file.
	* gdb.base/pie-execl.c: New file.
2010-10-17 17:45:17 +00:00
Jan Kratochvil
3a182a6912 gdb/
Fix GCC false warning.
	* varobj.c (value_get_print_value) <str_addr>: Initialize it.
2010-10-17 08:43:46 +00:00
gdbadmin
ad65951529 *** empty log message *** 2010-10-17 00:00:32 +00:00
gdbadmin
591c895777 *** empty log message *** 2010-10-16 00:00:33 +00:00
Pierre Muller
3a9d7214ad * p-typeprint.c (pascal_type_print_method_args): Fix problem in
display of type of method arguments.
2010-10-15 23:08:04 +00:00
Tom Tromey
09ca9e2e34 PR python/11948:
* varobj.c (value_get_print_value): Use val_print_string to print
	lazy strings.
	* python/py-prettyprint.c (print_string_repr): Use
	val_print_string to print lazy strings.  Fix cleanup logic.
	(print_children): Likewise.
	* python/python-internal.h (gdbpy_extract_lazy_string): Update.
	* python/py-lazy-string.c (gdbpy_extract_lazy_string): Rewrite.
	Change return type to 'void', add 'addr' argument.
	* value.h (val_print_string): Update.
	* valprint.c (val_print_string): Add 'encoding' argument.
	* printcmd.c (print_formatted): Update.
	* p-valprint.c (pascal_val_print): Update.
	* m2-valprint.c (print_unpacked_pointer): Update.
	(m2_print_array_contents): Likewise.
	* jv-valprint.c (java_value_print): Update.
	* f-valprint.c (f_val_print): Update.
	* c-valprint.c (c_val_print): Update.
	* auxv.c (fprint_target_auxv): Update.
2010-10-15 18:54:13 +00:00
Jan Kratochvil
92163a10dc gdb/
PR exp/12117
	* gdbtypes.c (check_typedef): Clean up function comment.
	Keep track of instance flags as we strip typedefs and create a new
	type to preserve them if necessary.
	* gdbtypes.h (type) <instance_flags>: Extend the comment.

gdb/testsuite/
	PR exp/12117
	* gdb.cp/ptype-cv-cp.cc: New file.
	* gdb.cp/ptype-cv-cp.exp: New file.
2010-10-15 17:48:48 +00:00
Pierre Muller
dae714134c * p-lang.c (is_pascal_string_type): Use TYPE_FIELD_NAME accessor. 2010-10-15 15:42:51 +00:00
gdbadmin
0a72ddf55c *** empty log message *** 2010-10-15 00:00:04 +00:00
Sami Wagiaalla
7062b0a0df Fixed void* vs int* overload issue (PR C++/10343).
2010-10-14  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdbtypes.h: Create BASE_PTR_CONVERSION_BADNESS.
	* gdbtypes.c (rank_one_type): Move type comparison code out of here
	to...
	(types_equal): ...here. And changed it as follows:
	Outside of typedefs type must be of the same TYPE_CODE.
	When compairing two pointers or references they are equal if their
	targets are equal.
	Correct pointer conversions.

2010-10-14  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdb.cp/converts.cc: New test program.
	* gdb.cp/converts.exp: New test.
	* gdb.cp/overload.exp: Added test for void* vs int*.
	* gdb.cp/overload.exp: Ditto.
	* gdb.cp/oranking.exp: Removed related kfail.
2010-10-14 16:13:43 +00:00
Pierre Muller
5c3da5ea2e * p-lang.c (is_pascal_string_type): Avoid crashes on structures
having fields without names.
2010-10-14 15:18:54 +00:00
gdbadmin
c2a41a5128 *** empty log message *** 2010-10-14 00:00:02 +00:00
Doug Evans
0e3509dbce New python module gdb.types.
* NEWS: Document it.
	* data-directory/Makefile.in (PYTHON_FILES): Add gdb/types.py.
	* python/lib/gdb/types.py: New file.

	testsuite/
	* lib/gdb-python.exp (gdb_check_python_config): New function.
	* gdb.python/Makefile.in (EXECUTABLES): Add lib-types.
	* gdb.python/lib-types.cc: New file.
	* gdb.python/lib-types.exp: New file.

	doc/
	* gdb.texinfo (Python): Add "Python modules".
	(Types in Python): Add reference to gdb.types section.
	(Python modules): New node.
2010-10-13 20:08:46 +00:00
Tom Tromey
577ce03a7c * language.h (LA_PRINT_ARRAY_INDEX): Fix argument name. 2010-10-13 17:38:09 +00:00
Doug Evans
a737a51bb0 * c-typeprint.c: Whitespace cleanup.
(cp_type_print_method_args): Remove unnecessary forward decl.
	(cp_type_print_derivation_info): Ditto.
	(c_type_print_varspec_prefix): Mark as static at definition.
	(c_type_print_modifier): Fix arg descriptions.
2010-10-13 15:10:10 +00:00
Jan Kratochvil
8dc785338e gdb/
* python/py-breakpoint.c (bppy_set_condition): New comment.
	* python/py-cmd.c (cmdpy_function): Call also gdbpy_print_stack for
	failed PyUnicode_Decode.
	(cmdpy_completer): Skip element for failed
	python_string_to_host_string.
	(cmdpy_init): Return -1 on failed python_string_to_host_string.
	* python/py-frame.c (frapy_read_var): Extend the function comment.
	* python/py-function.c (fnpy_init): Return -1 on failed
	python_string_to_host_string.
	* python/py-inferior.c (infpy_read_memory, infpy_write_memory): Extend
	the function comment.
	(infpy_search_memory): Extend the function comment.  Remove the
	PyErr_SetString call on already set error state.
	* python/py-param.c (set_parameter_value): Extend the function
	comment.  Return -1 on failed python_string_to_host_string, twice.
	(set_attr): Extend the function comment.
	(compute_enum_values): Extend the function comment.  New variable
	back_to.  Protect self->enumeration by BACK_TO cleanups.  Return 0 on
	failed python_string_to_host_string.
	(get_doc_string): Call gdbpy_print_stack on failed
	python_string_to_host_string.
	(parmpy_init): Extend the function comment.
	* python/py-prettyprint.c (pretty_print_one_value): Likewise.
	(gdbpy_get_display_hint, print_children): Call gdbpy_print_stack on
	failed python_string_to_host_string.
	* python/py-value.c (valpy_new, valpy_getitem, valpy_call)
	(valpy_binop, valpy_richcompare): Extend the function comment.
	* python/python.c
	(struct python_env) <error_type, error_value, error_traceback>: New
	fields.
	(restore_python_env): Handle PyErr_Occurred.  Call PyErr_Restore.
	(ensure_python_env): Call PyErr_Fetch.
	* varobj.c (update_dynamic_varobj_children): Call gdbpy_print_stack on
	failed convert_value_from_python.
	(value_get_print_value): Call gdbpy_print_stack on failed
	python_string_to_target_python_string.

gdb/testsuite/
	* gdb.python/py-error.exp: New file.
	* gdb.python/py-error.py: New file.
2010-10-13 13:24:40 +00:00
gdbadmin
a071456ba8 *** empty log message *** 2010-10-13 00:00:33 +00:00
Tom Tromey
1bdb0c5472 * python/py-prettyprint.c (search_pp_list): Fix error checking. 2010-10-12 22:44:20 +00:00
Sami Wagiaalla
0526b37ab5 Eliminate 'is_ancestor' redundant code.
2010-10-12  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdbtypes.c (do_is_ancestor): New function.
	(is_ancestor): Use do_is_ancestor.
	(is_public_ancestor): Use do_is_ancestor.
2010-10-12 20:58:17 +00:00
Jan Kratochvil
93c17e06d2 gdb/testsuite/
* gdb.base/break-interp.exp (test_ld): Replace gdb_expect by
	gdb_test_multiple.
2010-10-12 18:41:06 +00:00
Jan Kratochvil
d8b34041e0 gdb/testsuite/
* gdb.base/break-interp.exp: Use ldlags for linking flags.
	* gdb.base/prelink.exp: Likewise.
	* gdb.base/solib-nodir.exp: Likewise.
	* lib/gdb.exp (gdb_compile) <*-*-openbsd*>
	(gdb_compile) <shlib_load>: Use ldlags for linking flags.
	* lib/prelink-support.exp (build_executable_own_libs): Likewise.
2010-10-12 18:12:49 +00:00
Ulrich Weigand
e0cc584ecf * break-interp.exp (test_ld): Use two separate gdb_expect statements
for the "info files" test to avoid timeouts on slow machines.
2010-10-12 17:17:36 +00:00
Pierre Muller
c1b5be3809 * ser-go32.c (struct dos_ops): Add missing fdopen field. 2010-10-12 15:40:03 +00:00
Matthew Gretton-Dann
6877026586 * gdb/arm-tdep.c (arm_mode_strings): Add NULL entry at end of array. 2010-10-12 08:46:15 +00:00
gdbadmin
60536292df *** empty log message *** 2010-10-12 00:00:02 +00:00
Jan Kratochvil
cfc353b10d gdb/testsuite/
* gdb.cp/infcall-dlopen.cc (openlib): Support NULL FILENAME.
	(main): Make openlib dummy call.
2010-10-11 21:36:26 +00:00
Doug Evans
64b0002014 * c-typeprint.c (c_type_print_modifier): Add note that this prints
the address space id too.
2010-10-11 19:24:52 +00:00
Doug Evans
44592cc4ef * gdb.texinfo (Values From Inferior): Add reference to "Types in
Python" from gdb.Value.type description.
2010-10-11 15:46:09 +00:00
Jan Kratochvil
43b8e24199 gdb/
Fix attaching to re-prelinked executables on ppc64.
	* solib-svr4.c (svr4_exec_displacement): New variable plt2_asect,
	initialize it, try to adjust FILESZ field by it.
2010-10-11 08:50:33 +00:00
Jan Kratochvil
d3d7896de3 gdb/testsuite/
Fix missing _start PIE relocation on ppc64 due to stop on dl_main.
	* break-interp.exp (reach): Move the core body ...
	(reach_1): ... here.  Use stop-on-solib-events for _dl_debug_state.
	(test_ld): Provide always real argument, even to the linker.  Replace
	dl_main by _dl_debug_state.
2010-10-11 08:47:47 +00:00
Jan Kratochvil
5e533c94a6 gdb/testsuite/
Fix results of prelinked PIEs on ppc*.
	* gdb.base/break-interp.exp (reach, test_core, test_attach_gdb):
	Accept also DISPLACEMENT "PRESENT".
	(main): Replace "ZERO" displacements by "PRESENT".
2010-10-11 08:45:12 +00:00
gdbadmin
b44435fc67 *** empty log message *** 2010-10-11 00:00:33 +00:00
gdbadmin
8c2c26d54a *** empty log message *** 2010-10-10 00:00:33 +00:00
gdbadmin
a76f98451d *** empty log message *** 2010-10-09 00:00:32 +00:00
Daniel Jacobowitz
417b511093 * tracepoint.c (merge_uploaded_trace_state_variables): Only print
messages if info_verbose.
2010-10-08 20:45:21 +00:00
Sami Wagiaalla
3354061073 Test case for unimplemented overload cases.
2010-10-08  Sami Wagiaalla  <swagiaal@redhat.com>

	* gdb.cp/oranking.exp: New test.
	* gdb.cp/oranking.cc: New test program.
2010-10-08 18:28:46 +00:00
Ken Werner
3bdf2bbd3e gdb:
* valops.c (value_cast): Handle vector types.
	* valarith.c (value_binop): Widen scalar to vector if appropriate.
gdb/testsuite:
	* gdb.base/gnu_vector.c (ia, ib, fa, fb): New variables.
	* gdb.base/gnu_vector.exp: Add tests for scalar to vector widening.
2010-10-08 16:50:55 +00:00
Ulrich Weigand
ec3d575a7a * arm-tdep.c (thumb_expand_immediate): New function.
(thumb_instruction_changes_pc): Likewise.
	(thumb2_instruction_changes_pc): Likewise.
	(thumb_analyze_prologue): Handle 32-bit Thumb instructions during
	prologue parsing.  Improved support for optimized code.
	(thumb_scan_prologue): Do not reply on line-number information,
	use same heuristics as arm_scan_prologue insead.
	(skip_prologue_function): Accept functions
	"__tls_get_addr" and "__aeabi_read_tp".
2010-10-08 13:31:07 +00:00