Commit graph

4683 commits

Author SHA1 Message Date
Keith Seitz
5b4f6e25c3 PR gdb/13483
* gdbtypes.h (BOOL_PTR_CONVERSION_BADNESS): Rename to ...
	(BOOL_CONVERSION_BADNESS): ... this.
	* gdbtypes.c (BOOL_PTR_CONVERSION_BADNESS): Likewise.
	(rank_one_type): Allow all boolean conversions
	permitted by the standard.

	* gdb.cp/converts.cc (A::A): Add ctor.
	(A::member_): Add member.
	(enum my_enum): New enumeration.
	(main): Add calls to foo1_7 with various
	permitted arguments.
	* gdb.cp/converts.exp: Add tests for boolean
	conversions permitted by the standard.
2012-09-10 17:12:53 +00:00
Yit Phang Khoo
b4ca5ed946 2012-09-08 Khoo Yit Phang <khooyp@cs.umd.edu>
Replace -nw option with $INTERNAL_GDBFLAGS in "xgdb" tests to
	avoid spurious results due to ~/.gdbinit.
	* gdb.gdb/complaint.exp (setup_test): Replace -nw option with
	$INTERNAL_GDBFLAGS in run command.
	* gdb.gdb/observer.exp (setup_test): Ditto.
	* gdb.gdb/selftest.exp (test_with_self): Ditto.
	* gdb.gdb/xfullpath.exp (setup_test): Ditto.
2012-09-08 05:29:21 +00:00
Doug Evans
1491095679 * boards/fission.exp: New file. 2012-09-06 20:39:48 +00:00
Doug Evans
db90b9d320 (test_subscript_regression): Remove no longer necessary globals,
from previous patch.
2012-09-06 17:57:41 +00:00
Doug Evans
d54b30bb5d * gdb.python/py-value.exp: Use clean_restart. 2012-09-06 17:52:38 +00:00
Doug Evans
91b253e153 * gdb.base/info-macros.c: Fix whitespace. 2012-09-05 18:20:53 +00:00
Pedro Alves
1292279a4e 2012-08-28 Pedro Alves <palves@redhat.com>
PR gdb/14428

	gdb/
	* infcmd.c (default_print_one_register_info): New, factored out
	from default_print_registers_info.
	(default_print_registers_info): Use it.  Mark value unavailable if
	necessary.
	(registers_info): Print user registers with
	default_print_one_register_info.

	gdb/testsuite/
	* gdb.base/pc-fp.exp: Adjust expected output of 'info registers pc fp'.
2012-08-28 09:05:35 +00:00
Jan Kratochvil
1c8cdcb14f gdb/
* breakpoint.c (parse_breakpoint_sals) <(*address) == NULL>: New
	variable pc.  Call find_pc_line instead of find_pc_overlay, restore
	original PC for it.

gdb/testsuite/
	* gdb.base/break-caller-line.c: New file.
	* gdb.base/break-caller-line.exp: New file.
2012-08-27 16:55:39 +00:00
Jan Kratochvil
1e8e8b5114 gdb/testsuite/
* gdb.ada/rdv_wait.exp (set debug-file-directory): New command.
	* gdb.arch/i386-cfi-notcurrent.S: New file.
	* gdb.arch/i386-cfi-notcurrent.exp: New file.
2012-08-27 16:34:35 +00:00
Pedro Alves
1591a1e852 2012-08-27 Wei-cheng Wang <cole945@gmail.com>
* memattr.c (create_mem_region): Fix memory region overlapping
	checking.

2012-08-27  Wei-cheng Wang  <cole945@gmail.com>
	    Yao Qi <yao@codesourcery.com>
	    Pedro Alves <palves@redhat.com>

	* gdb.base/memattr.exp (delete_memory, region_pass, region_fail):
	New procedures.
	(top level): Add overlap checking tests.
2012-08-27 08:58:01 +00:00
Tom Tromey
4442ada7ba * lib/gdb.exp (skip_unwinder_tests): Don't leave 'ok' set if
gdb_test_multiple fails for other reasons.
2012-08-24 15:26:23 +00:00
Yao Qi
e7d50cc9e6 gdb/testsuite/
* lib/gdb.exp (skip_unwinder_tests): Remove pass.
2012-08-24 03:19:58 +00:00
Pedro Alves
dfbd5e7bbb 2012-08-23 Pedro Alves <palves@redhat.com>
gdb/
	* infrun.c (_initialize_infrun) <handle command help text>:
	Mention that multiple signals are supported.

	gdb/testsuite/
	* gdb.base/help.exp: Adjust to "handle" help text change.
2012-08-23 16:59:14 +00:00
Yao Qi
8d735b87dd gdb/
* tracepoint.c (disconnect_tracing): Call set_tracepoint_num.
	(tfind_1): Don't call registers_changed, set_traceframe_num,
	and clear_traceframe_info.
	Call set_current_traceframe.
	(set_current_traceframe): call set_traceframe_num.

gdb/testsuite:

	* gdb.trace/disconnected-tracing.c (start, end): New.
	(main): Call start and end.
	* gdb.trace/disconnected-tracing.exp (disconnected_tracing): Move
	existing tests into this proc.
	(disconnected_tfind): New.
2012-08-23 16:11:10 +00:00
Yao Qi
61b1d75968 gdb/testsuite/
* boards/native-gdbserver.exp (${board}_upload): New.
	* boards/native-stdio-gdbserver.exp (${board}_upload): New.
	* gdb.trace/tfile.exp: Don't check 'gdb,nofileio'.
	Execute tfile on remote target.
	Copy trace file from target to host.
2012-08-23 14:01:42 +00:00
Joseph Myers
6ca1b14767 * arm-tdep.c (thumb_get_next_pc_raw): Mask off low bits for bx pc
and blx pc.

testsuite:
	* gdb.arch/thumb-bx-pc.S: New file.
	* gdb.arch/thumb-bx-pc.exp: New file.
2012-08-22 19:47:58 +00:00
Tom Tromey
706e37059f * elfread.c (elf_symtab_read): Update.
* objfiles.c (objfiles_bfd_data): New global.
	(get_objfile_bfd_data, free_objfile_per_bfd_storage)
	(objfile_bfd_data_free, set_objfile_per_bfd): New functions.
	(allocate_objfile, free_objfile): Update.
	(_initialize_objfiles): Initialize objfiles_bfd_data.
	* objfiles.h (struct objfile_per_bfd_storage): New.
	(struct objfile) <per_bfd>: New field.
	<filename_cache>: Remove.
	(set_objfile_per_bfd): Declare.
	* symfile.c (reread_symbols): Update.  Call
	set_objfile_per_bfd.
	(allocate_symtab): Update.
	* symmisc.c (print_symbol_bcache_statistics): Update.
	(print_objfile_statistics): Print the size of the BFD obstack.
gdb/testsuite
	* gdb.base/maint.exp: Update.
2012-08-22 16:01:09 +00:00
Tom Tromey
b4893d4828 * lib/gdb.exp (skip_unwinder_tests): New proc.
* gdb.cp/nextoverthrow.exp: Use skip_unwinder_tests.
	* gdb.java/jnpe.exp: Use skip_unwinder_tests.
2012-08-22 14:27:49 +00:00
Tom Tromey
45b7da814b * gdb.hp/gdb.aCC/exception.exp: Remove. 2012-08-21 19:36:47 +00:00
Andrew Pinski
f94363d720 2012-08-19 Andrew Pinski <apinski@cavium.com>
* mips-tdep.c (is_octeon): New function.
	(is_octeon_bbit_op): New function.
	(mips32_next_pc): Handle Octeon's bbit instructions.
	(mips32_instruction_has_delay_slot): Likewise.

012-08-19  Andrew Pinski  <apinski@cavium.com>

        * gdb.arch/mips-octeon-bbit.c: New file.
        * gdb.arch/mips-octeon-bbit.exp: New Test.
2012-08-19 22:22:49 +00:00
Keith Seitz
e5afdbd7a0 PR c++/14365
* c-typeprint.c (c_type_print_varspec_prefix): Pass
	-1 for SHOW to c_type_print_base for METHODPTR and MEMBERPTR.

	* gdb.dwarf2/dw2-anon-mptr.exp: New file.
	* gdb.dwarf2/dw2-anon-mptr.S: New file.
2012-08-19 19:37:51 +00:00
Jan Kratochvil
c29e8b6460 gdb/testsuite/
* gdb.base/solib-corrupted.exp (make solibs looping): Replace
	verbose -log by more specific untested call.
2012-08-18 07:02:09 +00:00
Yao Qi
15a7e7bcb1 gdb/testsuite/
* gdb.trace/tfind.exp: Move tests on various command help before
	checking target supports trace.
	Fix the expected output of 'help tfind end'.
2012-08-18 01:00:19 +00:00
Keith Seitz
a451cb65e3 PR c++/13356
* gdbtypes.c (strict_type_checking): New variable.
	(show_strict_type_checking): New function.
	(rank_one_type): Return NS_POINTER_INTEGER_CONVERSION_BADNESS
	if strict type checking is disabled.
	(_initialize_gdbtypes): Add "check type" subcommand.
	* gdbtypes.h (NS_INTEGER_POINTER_CONVERSION_BADNESS): New struct.

	PR c++/13356
	* gdb.base/default.exp: Update all "check type" tests.
	* gdb.base/help.exp: Likewise.
	* gdb.base/setshow.exp: Likewise.
	* gdb.cp/converts.cc (foo1_type_check): New function.
	(foo2_type_check): New function.
	(foo3_type_check): New function.
	(main): Call new functions.
	* converts.exp: Add tests for integer-to-pointer conversions
	with/without strict type-checking.

	PR c++/13356
	* gdb.texinfo (Type and Range Checking): Remove warning.
	Remove spurious commas.
	Update text and examples for re-implementation of set/show
	check type.
	(C and C++ Type and Range Checks): Likewise.

	* language.h (type_mode): Remove.
	(type_check): Remove.
	(struct language_defn): Remove la_type_check.
	(STRICT_TYPE): Remove unused macro.
	(type_error): Remove.
	* language.c (set_type_range_case): Renamed to ...
	(set_range_case): ... this.  Update all callers.
	Remove type_mode/type_check.
	(type_mode): Remove.
	(type_check): Remove.
	(show_type_command): Remove.
	(set_type_command): Remove.
	(language_info): Remove type checking output.
	(type_error): Remove unused function.
	(range_error): Update comment.
	(unknown_language_defn): Remove la_type_check.
	(auto_language_defn): Likewise.
	(local_language_defn): Likewise.
	(_initialize_language): Remove "check type" subcommand.
	* ada-lang.c (ada_language_defn): Remove la_type_check.
	* c-lang.c (c_language_defn): Likewise.
	(cplus_language_defn): Likewise.
	(asm_language_defn): Likewise.
	(minimal_language_defn): Likewise.
	* d-lang.c (d_language_defn): Likewise.
	* f-lang.c (f_language_defn): Likewise.
	* go-lang.c (go_language_defn): Likewise.
	* jv-lang.c (java_language_defn): Likewise.
	* m2-lang.c (m2_language_defn): Likewise.
	* objc-lang.c (objc_language_defn): Likewise.
	* opencl-lang.c (opencl_language_defn): Likewise.
	* p-lang.c (pascal_language_defn): Likewise.
2012-08-17 17:37:03 +00:00
Mike Frysinger
dbf6a605ee gdb: fix test failures after updating usage strings 2012-08-17 03:06:11 +00:00
Joel Brobecker
0c92d8c1c3 DWARF frame unwinder executes one too many rows
The problem is trying to unwind from a function where %ebp is NOT
used as the frame pointer, and the size of the frame changes over
the lifetime of that function.

For instance, trying to unwind past the GNAT runtime function
called system.tasking.rendezvous.timed_selective_wait on x86-linux,
one can get:

    (gdb) bt
    [...]
    #3  0x0805364b in system.tasking.rendezvous.timed_selective_wait ()
    #4  0xb7fe5068 in ?? ()
    Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Looking at the CFI, we find the following initial instructions...

>   DW_CFA_def_cfa: %esp+4 (r4 ofs 4)
>   DW_CFA_offset: %eip at cfa-4  (r8 = %eip)

... and the associated FDE:

> 00001be4 00000054 00001be8 FDE cie=00000000 pc=08053310..08053951
[...]
>   DW_CFA_advance_loc: 8 to 080534ad
>   DW_CFA_def_cfa_offset: 112
>   DW_CFA_advance_loc2: 414 to 0805364b
>   DW_CFA_def_cfa_offset: 108
[...]

The problem is that the DWARF frame unwinder executed the FDE until
the row for PC == 0x0805364b. But in reality, our program hasn't
executed the instruction at that address yet (it is the return address).
So GDB executed a little too much of the FDE, giving us the wrong
offset for the frame base, and thus the wrong address where %eip
got saved.

This patch fixes the problem by using a more correct PC as the bound
for executing the FDE.

gdb/ChangeLog:

        * dwarf2-frame.c (dwarf2_frame_cache): Use
        get_frame_address_in_block instead of get_frame_pc as
        the bound for executing the frame's FDE.

gdb/testsuite/ChangeLog:

        * gdb.ada/rdv_wait: New testcase.
2012-08-16 15:45:46 +00:00
Keith Seitz
1c9f2ed2b3 Forgotten commit from 2012-07-30. 2012-08-15 23:25:08 +00:00
Jan Kratochvil
e56f7f42e4 gdb/testsuite/
* gdb.base/attach-twice.exp: Remove excessive ps exec.
2012-08-14 18:47:37 +00:00
Doug Evans
e202d6e802 * gdb.base/help.exp: Update expected output. 2012-08-13 21:14:48 +00:00
Doug Evans
f47f77df4e * value.c (show_convenience): Tweak comment.
(_initialize_values): Mention convenience functions in the help text
	for "show convenience".

	doc/
	* gdb.texinfo (Convenience Vars): Update text for "show convenience"
	to include functions.

	testsuite/
	* gdb.base/default.exp: Update expected output of "show convenience".
2012-08-13 14:31:00 +00:00
Doug Evans
a72c32530e Add $_memeq, $_regex, $_streq, $_strlen convenience functions.
* NEWS: Document them.
	* data-directory/Makefile.in (PYTHON_FILES): Add function/__init__.py,
	function/strfns.py.
	* python/py-type.c (typy_array_1): New function.
	(typy_array): Call it.
	(typy_vector): New function.
	(type_object_methods): Add "vector".
	* python/lib/gdb/function/__init__.py: New file.
	* python/lib/gdb/function/strfns.py: New file.

	doc/
	* gdb.texinfo (Convenience Funs): New node.
	(Types In Python): Document Type.vector.

	testsuite/
	* gdb.python/py-strfns.c: New file.
	* gdb.python/py-strfns.exp: New file.
	* gdb.python/py-type.exp (test_fields): Add vector tests.
2012-08-10 20:26:00 +00:00
Mike Frysinger
de0bea007c gdb: add completion handler for "handle" and "signal"
The command line completion has spoiled me.  Thus the lack of completion with
the "handle" command annoys me.  Patch!

This does a few things:
 - adds a VEC_merge helper
 - adds a generic signal completer
 - adds a completion handler for the "handle" command
 - sets the completion handler for the "signal" command

URL: http://sourceware.org/bugzilla/show_bug.cgi?id=10436
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-10 05:03:13 +00:00
Yao Qi
5b9afe8a35 gdb/
* cli/cli-decode.c (set_cmd_prefix): New.
	(lookup_cmd_for_prefixlist): New.
	(add_prefix_cmd): Call set_cmd_prefix and update field 'prefix'
	of each cmd_list_element in *prefixlist.
	(add_setshow_cmd_full): set_cmd_prefix.
	(add_alias_cmd): Likewise.
	* cli/cli-decode.h (struct cmd_list_element) <prefix>: New field.
	Declare 'auto_boolean_enums'.
	* cli/cli-setshow.c: Include "observer.h".
	(notify_command_param_changed_p): New.
	(add_setshow_auto_boolean_cmd): Move auto_boolean_enums out.
	Remove 'static'.
	(do_setshow_command): Split it to ...
	(do_set_command, do_show_command): ... them.  New.
	(do_set_command): Call observer_notify_command_param_changed if
	notify_command_param_changed_p returns true.
	(cmd_show_list): Caller update.
	* auto-load.c (set_auto_load_cmd): Likewise.
	* remote.c (show_remote_cmd): Likewise.
	* cli/cli-setshow.h: Update declarations.
	* top.c (execute_command): Call do_set_command and do_show_command.

	* NEWS: Mention new MI notification.
	* mi/mi-interp.c: Declare mi_command_param_changed.
	(mi_interpreter_init): Attach mi_command_param_changed to
	observer command_param_changed.
	(mi_command_param_changed): New.
	Remove mi_suppress_breakpoint_notifications.
	Define global variable mi_suppress_notification.
	(mi_breakpoint_created): Update.
	(mi_breakpoint_deleted): Likewise.
	(mi_breakpoint_modified): Likewise.
	* mi/mi-main.c (mi_cmd_execute): Likewise.  Check command
	'gdb-set' and set mi_suppress_notification.
	* mi/mi-main.h: (mi_suppress_notification): New struct.

gdb/doc/

	* observer.texi: New observer command_param_changed.
	* gdb.texinfo (GDB/MI Async Records): Doc for '=cmd-param-changed'.

gdb/testsuite/

	* gdb.mi/mi-cmd-param-changed.exp: New.
	* gdb.mi/mi-cli.exp: Update for MI notification "=cmd-param-changed".
	* gdb.mi/mi-var-rtti.exp, gdb.mi/mi2-cli.exp: Likewise.
	* gdb.mi/mi2-prompt.exp: Likewise.
2012-08-09 12:53:46 +00:00
Doug Evans
4f485ebc90 * eval.c (evaluate_subexp_standard): Fix thinko in handling
UNOP_MEMVAL_TYPE.
	* expprint.c (print_subexp_standard, case OP_TYPE): New.
	(print_subexp_standard, case UNOP_CAST_TYPE): Don't increment pos.
	(print_subexp_standard, case UNOP_DYNAMIC_CAST): Ditto.
	(print_subexp_standard, case UNOP_REINTERPRET_CAST): Ditto.
	(print_subexp_standard, case UNOP_MEMVAL_TYPE): Ditto.
	(dump_subexp_body_standard, case UNOP_DYNAMIC_CAST): Don't increment
	elt.
	(dump_subexp_body_standard, case UNOP_REINTERPRET_CAST): Ditto.
	(dump_subexp_body_standard, case UNOP_CAST_TYPE): Ditto.
	(dump_subexp_body_standard, case UNOP_MEMVAL_TYPE): Ditto.
	(dump_prefix_expression): Handle OP_TYPE.

	testsuite/
	* gdb.base/debug-expr.c: New file.
	* gdb.base/debug-expr.exp: New file.
	* gdb.base/exprs.exp: Test {type} casts.
	* gdb.cp/debug-expr.exp: New file.
2012-08-08 21:17:04 +00:00
Jan Kratochvil
5888842d28 gdb/testsuite/
* gdb.base/valgrind-infcall.exp (continue #$continue_count): Use
	global variable loop, not a 'break'.  Add loop count limit to 100.
	Add new fail case for terminated vgdb.
2012-08-07 18:04:12 +00:00
Jan Kratochvil
4f69f4c267 gdb/
PR 11804
	* defs.h (find_memory_region_ftype): New comment.  New arg modified.
	* fbsd-nat.c (fbsd_find_memory_regions): Add the passed modified value.
	* gcore.c (gcore_create_callback): New function comment.  Add modified
	parameter.  Only write modified regions.  Set SEC_READONLY exactly
	according to MODIFIED.
	(objfile_find_memory_regions): Ignore separate debug info files.  Ass
	the passed modified value to FUNC.
	* gnu-nat.c (gnu_find_memory_regions): Add the passed modified value.
	* linux-tdep.c (linux_find_memory_regions): Try to reads smaps file
	first.  New variables modified and has_anonymous.  Parse the lines of
	smaps file.  Add the passed MODIFIED value to FUNC.
	* procfs.c (find_memory_regions_callback): Add the passed modified
	value.

gdb/testsuite/
	PR 11804
	* gdb.base/gcore-relro.exp: New file.
	* gdb.base/gcore-relro-main.c: New file.
	* gdb.base/gcore-relro-lib.c: New file.
2012-08-07 13:26:33 +00:00
Jan Kratochvil
e2de53900e gdb/testsuite/
Do not false FAIL with old GCCs.
	* gdb.base/watchpoint.exp (self-delete local watch) <$no_hw>: XFAIL for
	GCC < 4.5 in $no_hw mode.
2012-08-07 13:13:49 +00:00
Jan Kratochvil
606603c520 gdb/testsuite/
* gdb.base/default.exp (cd): Accept new directory with no arguments.
2012-08-07 05:49:02 +00:00
Jan Kratochvil
777f26c29b gdb/testsuite/
* gdb.base/list.exp (test_only_end): New function.
	Call it.
2012-08-06 20:14:11 +00:00
Tom Tromey
2c12abee48 PR python/14386:
* varobj.c (update_dynamic_varobj_children): Don't call
	PyIter_Check.
gdb/testsuite
	* gdb.python/py-mi.exp: Add test for printer whose children
	are a list.
	* gdb.python/py-prettyprint.c (struct children_as_list): New.
	(main): New variable children_as_list.
	* gdb.python/py-prettyprint.py (class pp_children_as_list):
	New.
	(register_pretty_printers): Register new printer.
2012-08-06 18:44:45 +00:00
Edjunior Barbosa Machado
0eae2cf456 2012-08-03 Edjunior Machado <emachado@linux.vnet.ibm.com>
* gdb.base/valgrind-infcall.exp: Expect leading `.' on ppc64's
	symbols. Abort if vgdb remote connection is closed.
2012-08-03 16:03:07 +00:00
Doug Evans
09e0881dfd * gdb.base/info-fun.exp: Fix failures on m68k, ppc64, s390x. 2012-08-02 22:27:47 +00:00
Sergio Durigan Junior
b40f514fed 2012-08-02 Sergio Durigan Junior <sergiodj@redhat.com>
* gdb.base/pc-fp.exp: Adjust testcase to match different outputs from
	s390x, PowerPC 64 and m68k-linux.
2012-08-02 20:37:14 +00:00
Ulrich Weigand
11315ae03c * gdb.base/annota1.exp: Accept no frames-invalid notification
when starting up the program.
	* gdb.python/py-value.exp (test_value_numeric_ops): Pointers may
	show a symbolic value as well.
	* gdb.server/server-exec-info.exp: Skip test when skipping
	gdbserver test and/or when skipping shared library tests.
	* gdb.threads/linux-dp.exp: Unset "seen" when done with it to
	avoid name conflicts with other tests.
2012-08-02 15:59:59 +00:00
Ulrich Weigand
0547eeed14 * gdb.dwarf2/dw2-icc-opaque.S: Remove .align directives.
Fix wrong output on big-endian systems.
	* gdb.dwarf2/dw2-icc-opaque.exp: Expect @mode32 attribute on
	4-byte pointer types on 64-bit s390x.
2012-08-02 15:57:49 +00:00
Ulrich Weigand
bdddb4dec8 * gdb.base/watchpoint.c (func2): Initialize local_a. Add
marker comment at the beginning (after intialization).
	* gdb.base/watchpoint.exp (test_complex_watchpoint): Set func2
	breakpoint on marker comment instead of function begin.
	(test_wide_location_1): Do not expect HW watchpoints on 32-bit
	PowerPC.
	(test_wide_location_2): Do not expect HW watchpoints on 32-bit
	or 64-bit PowerPC.
	(do_tests): Consistently set can-use-hw-watchpoints to 0 if
	gdb,no_hardware_watchpoints flag is set.
	(initialize): Remove now redundant can-use-hw-watchpoints change.
2012-08-02 15:55:45 +00:00
Yao Qi
5d206025da gdb/testsuite:
* boards/local-remote-host.exp: New.
2012-08-02 08:46:32 +00:00
Ulrich Weigand
4f6650997a * gdb.base/catch-load.exp: Fix argument to gdb_load_shlibs.
* gdb.base/ctxobj.exp: Call gdb_load_shlibs.
	* gdb.base/print-file-var.exp: Likewise.
	* gdb.server/solib-list.exp: Skip on remote targets.
2012-08-01 13:07:51 +00:00
Ulrich Weigand
b62e2b271b gdbserver/ChangeLog:
* linux-arm-low.c (arm_linux_hw_point_initialize): Distinguish
	between unsupported TYPE and unimplementable ADDR/LEN combination.
	(arm_insert_point): Act on new return value.

testsuite/ChangeLog:

	* gdb.base/watchpoint.exp (test_wide_location_1): Expect software
	watchpoints on ARM.  When expecting software watchpoints, tolerate
	(remote) targets that report unsupported hardware watchpoint only
	at continue time.
	(test_wide_location_2): Likewise.
2012-08-01 13:02:41 +00:00
Jan Kratochvil
a967a8512a gdb/testsuite/
* gdb.base/valgrind-infcall.exp: Relax the UNSUPPORTED check for more
	valgrind versions.
2012-08-01 09:02:50 +00:00
Jan Kratochvil
75d9f9ff36 gdb/testsuite/
* gdb.base/valgrind-db-attach.exp: Do not run in remote mode.
2012-07-31 07:35:18 +00:00
Jan Kratochvil
a14dd77ea7 gdb/
* infcall.c (call_function_by_hand): Move BP_ADDR comment to
	AT_ENTRY_POINT.
	(call_function_by_hand) <ON_STACK>: Call write_memory with
	gdbarch_breakpoint_from_pc, if possible.
	(call_function_by_hand) <AT_ENTRY_POINT>: The BP_ADDR comment is moved
	here.

gdb/testsuite/
	* gdb.base/valgrind-infcall.c: New file.
	* gdb.base/valgrind-infcall.exp: New file.
2012-07-31 07:33:16 +00:00
Keith Seitz
eff9c3e636 * linespec.c (linespec_lex_number): A number followed
by quotes is a valid number, too.

	* gdb.linespec/ls-errs.exp: Check some quote-enclosed
	linespecs.
2012-07-30 17:45:37 +00:00
Doug Evans
85220e0181 * gdb.dwarf2/fission-reread.S: Use .data instead of .bss.
* gdb.dwarf2/pr13961.S: Ditto.
2012-07-30 16:56:04 +00:00
Doug Evans
7f9b20344e * gdb.dwarf2/dw4-sig-types.exp: Fix typo. 2012-07-30 16:33:18 +00:00
Andrew Burgess
4e969b4f01 http://sourceware.org/ml/gdb-patches/2012-07/msg00551.html
Re-evaluate floating variables as part of variable invalidate to remove
references to type structures that might have been freed.
2012-07-30 12:10:23 +00:00
Jan Kratochvil
e7de8362c1 gdb/testsuite/
Fix testsuite regression after --use-deprecated-index-sections removal.
	* gdb.base/annota1.exp (run until main breakpoint): Update the expect
	string.
	* gdb.base/async-shell.exp (gdbindex_warning_re): Likewise.
2012-07-27 21:34:30 +00:00
Yao Qi
7255706c3e gdb/gdbserver/
PR remote/14161.

	* server.h: Declare gdb_agent_about_to_close.
	* target.c (kill_inferior): Include "agent.h".
	New.  Send command 'kill'.
	* target.h (kill_inferior): Removed macro.
	* tracepoint.c (gdb_agent_about_to_close): New.
	(gdb_agent_helper_thread): Handle command 'close'.
	Wait endlessly until the inferior stops.
	Install gdb_agent_remove_socket to atexit hook.
	(agent_socket_name): New static variable.
	(gdb_agent_socket_init): Replace local variable 'name' with
	'agent_socket_name'.
	(gdb_agent_remove_socket): New.

gdb/doc/
	* gdb.texinfo (IPA Protocol Commands): Document new command
	'close'.

gdb/testsuite/
	KFAIL for PR remote/14161.
	* gdb.trace/strace.exp (strace_remove_socket): kfail for native.
	Cleanup socket files.
	(strace_info_marker): Detach inferior.
2012-07-27 08:09:14 +00:00
Tom Tromey
f2e8016f41 * Makefile.in (SFILES): Remove objc-exp.y.
(YYFILES): Remove objc-exp.c.
    	(YYOBJ): Remove objc-exp.o.
    	(local-maintainer-clean): Don't mention objc-exp.c.
    	* c-exp.y: Include objc-lang.h.
    	(%union) <class>: New field.
    	(NSSTRING, SELECTOR, CLASSNAME, OBJC_LBRAC): New tokens.
    	(exp): Clone subscript production for OBJC_LBRAC.  Add various
    	Objective C productions.
    	(msglist, msgarglist, msgarg): New productions.
    	(array_mod, func_mod, operator): Clone productions for
    	OBJC_LBRAC.
    	(parse_string_or_char): Handle '@' strings.
    	(lex_one_token): Return OBJC_LBRAC.  Recognize @selector.
    	(classify_name): Check la_name_of_this.  Recognize ObjC class
    	names.
    	* objc-exp.y: Remove.
    	* objc-lang.c (objc_language_defn): Use c_parse, c_error.
    	* objc-lang.h (objc_parse, objc_error): Don't declare.
gdb/testsuite
    	* gdb.objc/print.exp (test_float_accepted): Remove kfails.
2012-07-26 20:11:10 +00:00
Jan Kratochvil
f66713d24a gdb/
* python/py-inferior.c (infpy_threads): Call update_thread_list ().

gdb/testsuite/
	* gdb.python/py-inferior.c (thread): New function.
	(check_threads): New function.
	(test_threads): New function.
	* gdb.python/py-inferior.exp: Added test.
	Replaced runto with continue to breakpoint.
2012-07-26 19:09:35 +00:00
Tom Tromey
8223e12c08 * lib/ada.exp (standard_ada_testfile): New proc.
* gdb.ada/aliased_array.exp: Use standard_ada_testfile.
	* gdb.ada/array_bounds.exp: Use standard_ada_testfile.
	* gdb.ada/array_return.exp: Use standard_ada_testfile.
	* gdb.ada/array_subscript_addr.exp: Use standard_ada_testfile.
	* gdb.ada/arrayidx.exp: Use standard_ada_testfile.
	* gdb.ada/arrayparam.exp: Use standard_ada_testfile.
	* gdb.ada/arrayptr.exp: Use standard_ada_testfile.
	* gdb.ada/atomic_enum.exp: Use standard_ada_testfile.
	* gdb.ada/bad-task-bp-keyword.exp: Use standard_ada_testfile.
	* gdb.ada/bp_enum_homonym.exp: Use standard_ada_testfile.
	* gdb.ada/bp_on_var.exp: Use standard_ada_testfile.
	* gdb.ada/bp_range_type.exp: Use standard_ada_testfile.
	* gdb.ada/call_pn.exp: Use standard_ada_testfile.
	* gdb.ada/catch_ex.exp: Use standard_ada_testfile.
	* gdb.ada/char_enum.exp: Use standard_ada_testfile.
	* gdb.ada/char_param.exp: Use standard_ada_testfile.
	* gdb.ada/complete.exp: Use standard_ada_testfile.
	* gdb.ada/cond_lang.exp: Use standard_ada_testfile,
	standard_output_file.
	* gdb.ada/dyn_loc.exp: Use standard_ada_testfile.
	* gdb.ada/enum_idx_packed.exp: Use standard_ada_testfile.
	* gdb.ada/exec_changed.exp: Use standard_ada_testfile,
	standard_output_file.
	* gdb.ada/exprs.exp: Use standard_ada_testfile.
	* gdb.ada/fixed_cmp.exp: Use standard_ada_testfile.
	* gdb.ada/fixed_points.exp: Use standard_ada_testfile.
	* gdb.ada/formatted_ref.exp: Use standard_ada_testfile.
	* gdb.ada/frame_args.exp: Use standard_ada_testfile.
	* gdb.ada/fullname_bp.exp: Use standard_ada_testfile.
	* gdb.ada/fun_addr.exp: Use standard_ada_testfile.
	* gdb.ada/fun_in_declare.exp: Use standard_ada_testfile.
	* gdb.ada/funcall_param.exp: Use standard_ada_testfile.
	* gdb.ada/homonym.exp: Use standard_ada_testfile.
	* gdb.ada/info_locals_renaming.exp: Use standard_ada_testfile.
	* gdb.ada/int_deref.exp: Use standard_ada_testfile.
	* gdb.ada/interface.exp: Use standard_ada_testfile.
	* gdb.ada/lang_switch.exp: Use standard_ada_testfile,
	standard_output_file
	* gdb.ada/mi_catch_ex.exp: Use standard_ada_testfile.
	* gdb.ada/mi_task_arg.exp: Use standard_ada_testfile.
	* gdb.ada/mi_task_info.exp: Use standard_ada_testfile.
	* gdb.ada/mod_from_name.exp: Use standard_ada_testfile.
	* gdb.ada/nested.exp: Use standard_ada_testfile.
	* gdb.ada/null_array.exp: Use standard_ada_testfile.
	* gdb.ada/null_record.exp: Use standard_ada_testfile.
	* gdb.ada/operator_bp.exp: Use standard_ada_testfile.
	* gdb.ada/packed_array.exp: Use standard_ada_testfile.
	* gdb.ada/packed_tagged.exp: Use standard_ada_testfile.
	* gdb.ada/print_chars.exp: Use standard_ada_testfile.
	* gdb.ada/print_pc.exp: Use standard_ada_testfile.
	* gdb.ada/ptr_typedef.exp: Use standard_ada_testfile.
	* gdb.ada/ptype_field.exp: Use standard_ada_testfile.
	* gdb.ada/ptype_tagged_param.exp: Use standard_ada_testfile.
	* gdb.ada/rec_return.exp: Use standard_ada_testfile.
	* gdb.ada/ref_param.exp: Use standard_ada_testfile.
	* gdb.ada/ref_tick_size.exp: Use standard_ada_testfile.
	* gdb.ada/same_enum.exp: Use standard_ada_testfile.
	* gdb.ada/set_pckd_arr_elt.exp: Use standard_ada_testfile.
	* gdb.ada/small_reg_param.exp: Use standard_ada_testfile.
	* gdb.ada/start.exp: Use standard_ada_testfile.
	* gdb.ada/str_ref_cmp.exp: Use standard_ada_testfile.
	* gdb.ada/sym_print_name.exp: Use standard_ada_testfile.
	* gdb.ada/taft_type.exp: Use standard_ada_testfile.
	* gdb.ada/tagged.exp: Use standard_ada_testfile.
	* gdb.ada/tagged_not_init.exp: Use standard_ada_testfile.
	* gdb.ada/task_bp.exp: Use standard_ada_testfile.
	* gdb.ada/tasks.exp: Use standard_ada_testfile.
	* gdb.ada/tick_last_segv.exp: Use standard_ada_testfile.
	* gdb.ada/type_coercion.exp: Use standard_ada_testfile.
	* gdb.ada/uninitialized_vars.exp: Use standard_ada_testfile.
	* gdb.ada/variant_record_packed_array.exp: Use standard_ada_testfile.
	* gdb.ada/watch_arg.exp: Use standard_ada_testfile.
	* gdb.ada/whatis_array_val.exp: Use standard_ada_testfile.
	* gdb.ada/widewide.exp: Use standard_ada_testfile.
2012-07-26 18:43:02 +00:00
Jan Kratochvil
bbec57e429 gdb/testsuite/
Fix testsuite regression after --use-deprecated-index-sections removal.
	* lib/mi-support.exp (gdbindex_warning_re): Update the expect string.
2012-07-25 20:19:56 +00:00
Jan Kratochvil
9cc8e32c67 gdb/testsuite/
Fix compatibility with Tcl before 7.5.
	* lib/future.exp (lreverse): New function if it does not exist.
2012-07-25 20:17:59 +00:00
Marc Khouzam
ea5ca7b5cf 2012-07-25 Marc Khouzam <marc.khouzam@ericsson.com>
* gdb.mi/mi-pending.c: New method to set a second pending
	breakpoint.
	* gdb.mi/mi-pending.exp: Set a pending breakpoint with a
	condition.
2012-07-25 18:34:17 +00:00
Pedro Alves
64776a0b2d 2012-07-20 Pedro Alves <palves@redhat.com>
PR threads/11692
	PR gdb/12203

	gdb/
	* infrun.c (handle_inferior_event) <new thread>: Don't special
	case minus_one_ptid.
	<TARGET_WAITKIND_SPURIOUS>: Ditto.
	* linux-thread-db.c (thread_get_info_callback): Don't return early
	if the thread is zombie.
	(thread_from_lwp): Change return type to void.  Rewrite stale
	comment.
	(attach_thread): Don't return early if the thread is zombie,
	instead set its "dying" flag.
	(thread_db_wait): Don't return TARGET_WAITKIND_SPURIOUS anymore.
	(find_new_threads_callback): Don't return early if the thread is
	zombie.

	gdb/testsuite/
	* gdb.threads/create-fail.c: New file.
	* gdb.threads/create-fail.exp: New file.
2012-07-20 17:27:29 +00:00
Pedro Alves
13e4e967fc 2012-07-19 Pedro Alves <palves@redhat.com>
* config/monitor.exp (gdb_load): Remove redundant ';' in for loop.
	* config/vx.exp (gdb_start): Likewise.
	* gdb.base/printcmds.exp (test_print_repeats_10): Likewise.
	* gdb.base/setvar.exp (test_set): Likewise.
	* gdb.base/sigall.exp: Use foreach+lrange instead of for+continue.
	* gdb.reverse/sigall-precsave.exp: Likewise.
	* gdb.reverse/sigall-reverse.exp: Likewise.
2012-07-19 20:00:59 +00:00
Pedro Alves
b7aefa4d2e 2012-07-19 Pedro Alves <palves@redhat.com>
* gdb.reverse/sigall-precsave.exp: Set a breakpoint at each signal
	handler before recording.
2012-07-19 17:05:49 +00:00
Tom Tromey
608b49672e PR exp/13206:
* ax-gdb.c (gen_expr) <OP_TYPEOF, OP_DECLTYPE>: New cases.
	* breakpoint.c (watchpoint_exp_is_const) <OP_TYPEOF,
	OP_DECLTYPE>: New cases.
	* c-exp.y (TYPEOF, DECLTYPE): New tokens.
	(type_exp): Add new productions.
	(ident_tokens): Add __typeof__, typeof, __typeof, __decltype,
	and decltype.
	* eval.c (evaluate_subexp_standard) <OP_TYPEOF, OP_DECLTYPE>:
	New case.
	* expprint.c (dump_subexp_body_standard) <OP_TYPEOF,
	OP_DECLTYPE>: New case.
	* parse.c (operator_length_standard) <OP_TYPEOF, OP_DECLTYPE>:
	New case.
	* std-operator.def (OP_TYPEOF, OP_DECLTYPE): New constants.
	* varobj.c (varobj_create): Handle OP_TYPEOF, OP_DECLTYPE.
gdb/testsuite
	* gdb.cp/casts.exp: Add tests for typeof and decltype.
	* gdb.cp/casts.cc (decltype): New function.
	(main): Use it.
2012-07-19 15:38:18 +00:00
Pedro Alves
b1e0c0fa45 2012-07-19 Pedro Alves <palves@redhat.com>
* gdb.base/sigall.exp (signals): New list.
	<top level>: Loop over signals in the $signals list instead of
	calling a test function once per signal.
	* gdb.reverse/sigall-precsave.exp (signals): New list.
	<top level>: Loop over signals in the $signals list instead of
	calling a test function once per signal.
	* gdb.reverse/sigall-reverse.exp (signals): New list.
	<top level>: Loop over signals in the $signals list instead of
	calling a test function once per signal.
2012-07-19 14:33:19 +00:00
Yao Qi
6ace3df1ec * cli/cli-setshow.c (do_setshow_command): Handle case 'var_filename'
and case 'var_optional_filename' together.
	* infcmd.c (_initialize_infcmd): Call add_setshow_string_noescape_cmd
	instead of add_setshow_optional_filename_cmd for setshow command
	'args'.  Set completer for 'set args'.

gdb/testsuite:

	* gdb.base/setshow.exp: Test 'set args ~'.
2012-07-19 12:48:17 +00:00
Jan Kratochvil
263a0f8c38 gdb/testsuite/
* gdb.base/store.exp (check_set): Import gdb_prompt.
	(continue to wack_${t}): Make it to conditional gdb_test_multiple.
	(${prefix}; next ${t}): Hide its name, handle it conditionally now.
2012-07-16 19:17:54 +00:00
Jan Kratochvil
8f04399994 gdb/
PR 11914
	* f-valprint.c (info_common_command): New variable frame_id.
	Reinitialize FI form FRAME_ID after each print_variable_and_value.
	* printcmd.c (print_variable_and_value): Extend function comment.
	Add comment for invalidated FRAME.
	* stack.c (backtrace_command_1): New variable frame_id.  Reinitialize
	FI form FRAME_ID after each print_frame_local_vars.
	(struct print_variable_and_value_data): Change frame to frame_id.
	(do_print_variable_and_value): New variable frame, initialize it from
	p->frame_id.  Add comment for invalidated FRAME.
	(print_frame_local_vars, print_frame_arg_vars): New function comment.
	Update CB_DATA.FRAME to CB_DATA.FRAME_ID initialization.  Add comment
	for invalidated FRAME.

gdb/testsuite/
	PR 11914
	* gdb.python/py-prettyprint.c (eval_func, eval_sub): New.
	(main): Call eval_sub.
	* gdb.python/py-prettyprint.exp:
	(python execfile ('py-prettyprint.py')): Move it earlier.
	New breakpoint for eval-break.
	(continue to breakpoint: eval-break, info locals): New test.
	(python execfile ('py-prettyprint.py')): Move it from here.
	* gdb.python/py-prettyprint.py (class pp_eval_type): New.
	(register_pretty_printers): Register pp_eval_type.
2012-07-16 19:15:39 +00:00
Jan Kratochvil
725c7b66aa gdb/testsuite/
Fix a testcase regression by me.
	* gdb.dwarf2/fission-reread.S: Fix two DW_FORM_data8 to be
	DW_FORM_data4.
2012-07-15 08:34:55 +00:00
Jan Kratochvil
4359dff1c5 gdb/
* buildsym.c (end_symtab_1): Split it to ...
	(end_symtab_get_static_block): ... this ...
	(end_symtab_from_static_block): ... and this function.
	(end_symtab, end_expandable_symtab): Call them.
	* buildsym.h (end_symtab_get_static_block)
	(end_symtab_from_static_block): New declarations.
	* dwarf2read.c (process_full_comp_unit): New variable static_block.
	Set its valid CU ranges.

gdb/testsuite/
	* gdb.dwarf2/dw2-minsym-in-cu.S: New file.
	* gdb.dwarf2/dw2-minsym-in-cu.exp: New file.
2012-07-13 20:26:11 +00:00
Jan Kratochvil
61e44cfa26 gdb/testsuite/
Fix gdbserver run regression.
	* gdb.trace/disconnected-tracing.exp (executabel): Fix typo.
2012-07-13 08:14:37 +00:00
Tom Tromey
93c0ef3768 * lib/gdb.exp (standard_testfile): Don't declare objdir.
(clean_restart): Likewise.
	(core_find): Use standard_output_file.
2012-07-12 16:39:42 +00:00
Tom Tromey
76027ef599 * gdb.dwarf2/dup-psym.exp: Use prepare_for_testing_full.
* gdb.dwarf2/dw2-anonymous-func.exp: Use
	prepare_for_testing_full.
	* gdb.dwarf2/dw2-basic.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-compressed.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-const.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-cu-size.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-intercu.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-intermix.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-linkage-name-trust.exp: Use
	prepare_for_testing_full.
	* gdb.dwarf2/dw2-producer.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-ref-missing-frame.exp: Use
	prepare_for_testing_full.
	* gdb.dwarf2/dw2-restore.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/dw2-strp.exp: Use prepare_for_testing_full.
	* gdb.dwarf2/mac-fileno.exp: Use prepare_for_testing_full.
2012-07-12 15:15:07 +00:00
Tom Tromey
85b4440aee * lib/gdb.exp (build_executable_from_specs): New proc, from
build_executable.
	(build_executable): Use it.
	(prepare_for_testing_full): New proc.
2012-07-12 15:09:41 +00:00
Tom Tromey
55baab269c * gdb.reverse/break-precsave.exp: Use standard_output_file.
* gdb.reverse/consecutive-precsave.exp: Use standard_output_file.
	* gdb.reverse/finish-precsave.exp: Use standard_output_file.
	* gdb.reverse/i386-precsave.exp: Use standard_output_file.
	* gdb.reverse/machinestate-precsave.exp: Use standard_output_file.
	* gdb.reverse/sigall-precsave.exp: Use standard_output_file.
	* gdb.reverse/solib-precsave.exp: Use standard_output_file.
	* gdb.reverse/step-precsave.exp: Use standard_output_file.
	* gdb.reverse/until-precsave.exp: Use standard_output_file.
	* gdb.reverse/watch-precsave.exp: Use standard_output_file.
2012-07-11 15:21:36 +00:00
Tom Tromey
298a9cf0ef * gdb.mi/dw2-ref-missing-frame.exp: Use standard_testfile,
standard_output_file.
	* gdb.mi/gdb2549.exp: Use standard_testfile.
	* gdb.mi/gdb669.exp: Use standard_testfile.
	* gdb.mi/gdb701.exp: Use standard_testfile.
	* gdb.mi/gdb792.exp: Use standard_testfile.
	* gdb.mi/mi-async.exp: Use standard_testfile.
	* gdb.mi/mi-basics.exp: Use standard_testfile.
	* gdb.mi/mi-break.exp: Use standard_testfile.
	* gdb.mi/mi-cli.exp: Use standard_testfile.
	* gdb.mi/mi-console.exp: Use standard_testfile.
	* gdb.mi/mi-disassemble.exp: Use standard_testfile.
	* gdb.mi/mi-eval.exp: Use standard_testfile.
	* gdb.mi/mi-file-transfer.exp: Use standard_testfile.
	* gdb.mi/mi-file.exp: Use standard_testfile.
	* gdb.mi/mi-inheritance-syntax-error.exp: Use standard_testfile.
	* gdb.mi/mi-logging.exp: Use standard_testfile.
	* gdb.mi/mi-nonstop-exit.exp: Use standard_testfile.
	* gdb.mi/mi-nonstop.exp: Use standard_testfile.
	* gdb.mi/mi-ns-stale-regcache.exp: Use standard_testfile.
	* gdb.mi/mi-nsintrall.exp: Use standard_testfile.
	* gdb.mi/mi-nsmoribund.exp: Use standard_testfile.
	* gdb.mi/mi-nsthrexec.exp: Use standard_testfile.
	* gdb.mi/mi-pending.exp: Use standard_testfile,
	standard_output_file.
	* gdb.mi/mi-pthreads.exp: Use standard_testfile.
	* gdb.mi/mi-read-memory.exp: Use standard_testfile.
	* gdb.mi/mi-regs.exp: Use standard_testfile.
	* gdb.mi/mi-return.exp: Use standard_testfile.
	* gdb.mi/mi-reverse.exp: Use standard_testfile.
	* gdb.mi/mi-simplerun.exp: Use standard_testfile.
	* gdb.mi/mi-solib.exp: Use standard_testfile,
	standard_output_file.
	* gdb.mi/mi-stack.exp: Use standard_testfile.
	* gdb.mi/mi-stepi.exp: Use standard_testfile.
	* gdb.mi/mi-stepn.exp: Use standard_testfile.
	* gdb.mi/mi-syn-frame.exp: Use standard_testfile.
	* gdb.mi/mi-until.exp: Use standard_testfile.
	* gdb.mi/mi-var-block.exp: Use standard_testfile.
	* gdb.mi/mi-var-child-f.exp: Use standard_testfile.
	* gdb.mi/mi-var-child.exp: Use standard_testfile.
	* gdb.mi/mi-var-cmd.exp: Use standard_testfile.
	* gdb.mi/mi-var-cp.exp: Use standard_testfile.
	* gdb.mi/mi-var-display.exp: Use standard_testfile.
	* gdb.mi/mi-var-invalidate.exp: Use standard_testfile,
	standard_output_file.
	* gdb.mi/mi-var-rtti.exp: Use standard_testfile.
	* gdb.mi/mi-watch-nonstop.exp: Use standard_testfile.
	* gdb.mi/mi-watch.exp: Use standard_testfile.
	* gdb.mi/mi2-amd64-entry-value.exp: Use standard_testfile.
	* gdb.mi/mi2-basics.exp: Use standard_testfile.
	* gdb.mi/mi2-break.exp: Use standard_testfile.
	* gdb.mi/mi2-cli.exp: Use standard_testfile.
	* gdb.mi/mi2-console.exp: Use standard_testfile.
	* gdb.mi/mi2-disassemble.exp: Use standard_testfile.
	* gdb.mi/mi2-eval.exp: Use standard_testfile.
	* gdb.mi/mi2-file.exp: Use standard_testfile.
	* gdb.mi/mi2-pthreads.exp: Use standard_testfile.
	* gdb.mi/mi2-read-memory.exp: Use standard_testfile.
	* gdb.mi/mi2-regs.exp: Use standard_testfile.
	* gdb.mi/mi2-return.exp: Use standard_testfile.
	* gdb.mi/mi2-simplerun.exp: Use standard_testfile.
	* gdb.mi/mi2-stack.exp: Use standard_testfile.
	* gdb.mi/mi2-stepi.exp: Use standard_testfile.
	* gdb.mi/mi2-syn-frame.exp: Use standard_testfile.
	* gdb.mi/mi2-until.exp: Use standard_testfile.
	* gdb.mi/mi2-var-block.exp: Use standard_testfile.
	* gdb.mi/mi2-var-child.exp: Use standard_testfile.
	* gdb.mi/mi2-var-cmd.exp: Use standard_testfile.
	* gdb.mi/mi2-var-display.exp: Use standard_testfile.
	* gdb.mi/mi2-watch.exp: Use standard_testfile.
2012-07-10 15:32:52 +00:00
Tom Tromey
f5f3a911ec * gdb.cp/abstract-origin.exp: Use standard_testfile.
* gdb.cp/ambiguous.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/annota2.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/annota3.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/anon-ns.exp: Use standard_testfile.
	* gdb.cp/anon-struct.exp: Use standard_testfile.
	* gdb.cp/anon-union.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/arg-reference.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/bool.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/breakpoint.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/bs15503.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/call-c.exp: Use standard_testfile, clean_restart,
	standard_output_file.
	* gdb.cp/casts.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/class2.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/classes.exp: Use standard_testfile, prepare_for_testing.
	(test_static_members): Update.
	* gdb.cp/cmpd-minsyms.exp: Use standard_testfile.
	* gdb.cp/converts.exp: Use standard_testfile.
	* gdb.cp/cp-relocate.exp: Use standard_testfile.
	* gdb.cp/cpcompletion.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/cpexprs.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/cplabel.exp: Use standard_testfile.
	* gdb.cp/cplusfuncs.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/ctti.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/derivation.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/destrprint.exp: Use standard_testfile.
	* gdb.cp/dispcxx.exp: Use standard_testfile.
	* gdb.cp/exception.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/expand-psymtabs-cxx.exp: Use standard_testfile.
	* gdb.cp/extern-c.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/formatted-ref.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/fpointer.exp: Use standard_testfile.
	* gdb.cp/gdb1355.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/gdb2384.exp: Use standard_testfile, clean_restart,
	standard_output_file.
	* gdb.cp/gdb2495.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/hang.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/infcall-dlopen.exp: Use standard_testfile,
	standard_output_file.
	* gdb.cp/inherit.exp: Use standard_testfile, prepare_for_testing.
	(do_tests): Update.
	* gdb.cp/koenig.exp: Use standard_testfile.
	* gdb.cp/local.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/m-data.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/m-static.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/mb-ctor.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/mb-inline.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/mb-templates.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/member-ptr.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/meth-typedefs.exp: Use standard_testfile.
	* gdb.cp/method.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/method2.exp: Use standard_testfile.
	* gdb.cp/minsym-fallback.exp: Use standard_testfile,
	standard_output_file.
	* gdb.cp/misc.exp: Use standard_testfile, prepare_for_testing.
	(do_tests): Update.
	* gdb.cp/namespace-enum.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/namespace-nested-import.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/namespace.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/nextoverthrow.exp: Use standard_testfile.
	* gdb.cp/no-dmgl-verbose.exp: Use standard_testfile.
	* gdb.cp/nsdecl.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/nsimport.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/nsnested.exp: Use standard_testfile.
	* gdb.cp/nsnoimports.exp: Use standard_testfile.
	* gdb.cp/nsrecurs.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/nsstress.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/nsusing.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/operator.exp: Use standard_testfile.
	* gdb.cp/oranking.exp: Use standard_testfile.
	* gdb.cp/overload-const.exp: Use standard_testfile.
	* gdb.cp/overload.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/ovldbreak.exp: Use standard_testfile.
	* gdb.cp/ovsrch.exp: Use standard_testfile.
	* gdb.cp/paren-type.exp: Use standard_testfile.
	* gdb.cp/pass-by-ref.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/pr-1023.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/pr-1210.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/pr-574.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/pr10687.exp: Use standard_testfile, clean_restart.
	* gdb.cp/pr10728.exp: Use standard_testfile,
	standard_output_file.
	* gdb.cp/pr12028.exp: Use standard_testfile.
	* gdb.cp/pr9067.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/pr9167.exp: Use standard_testfile.
	* gdb.cp/pr9631.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/printmethod.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/psmang.exp: Use standard_testfile, clean_restart.
	* gdb.cp/psymtab-parameter.exp: Use standard_testfile.
	* gdb.cp/ptype-cv-cp.exp: Use standard_testfile.
	* gdb.cp/re-set-overloaded.exp: Use standard_testfile,
	standard_output_file.
	* gdb.cp/readnow-language.exp: Use standard_testfile.
	* gdb.cp/ref-params.exp: Use standard_testfile, build_executable.
	(gdb_start_again): Use clean_restart.
	* gdb.cp/ref-types.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/rtti.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/shadow.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/smartp.exp: Use standard_testfile.
	* gdb.cp/static-method.exp: Use standard_testfile.
	* gdb.cp/static-print-quit.exp: Use standard_testfile.
	* gdb.cp/temargs.exp: Use standard_testfile.
	* gdb.cp/templates.exp: Use standard_testfile,
	prepare_for_testing.
	(do_tests): Update.
	* gdb.cp/try_catch.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/typedef-operator.exp: Use standard_testfile.
	* gdb.cp/userdef.exp: Use standard_testfile, prepare_for_testing.
	* gdb.cp/virtbase.exp: Use standard_testfile,
	prepare_for_testing.
	* gdb.cp/virtfunc.exp: Use standard_testfile,
	prepare_for_testing.
	(do_tests): Update.
	* gdb.cp/virtfunc2.exp: Use standard_testfile,
	prepare_for_testing.
2012-07-10 15:18:18 +00:00
Tom Tromey
686f09d021 * lib/gdb.exp (standard_testfile): Unset output variables from
earlier invocations.
2012-07-10 14:41:16 +00:00
Yao Qi
9357e02197 gdb/testsuite:
* gdb.mi/gdb2549.exp: Remove -DFAKEARGV from compilation flags.
	* gdb.mi/mi-async.exp, gdb.mi/mi-basics.exp: Likewise.
	* gdb.mi/mi-break.exp, gdb.mi/mi-cli.exp: Likewise.
	* gdb.mi/mi-console.exp, gdb.mi/mi-disassemble.exp: Likewise.
	* gdb.mi/mi-eval.exp, gdb.mi/mi-file.exp: Likewise.
	* gdb.mi/mi-read-memory.exp, gdb.mi/mi-regs.exp: Likewise.
	* gdb.mi/mi-return.exp, gdb.mi/mi-reverse.exp: Likewise.
	* gdb.mi/mi-simplerun.exp, gdb.mi/mi-stack.exp: Likewise.
	* gdb.mi/mi-stepi.exp, gdb.mi/mi-syn-frame.exp: Likewise.
	* gdb.mi/mi-until.exp, gdb.mi/mi-var-block.exp: Likewise.
	* gdb.mi/mi-var-child.exp, gdb.mi/mi-var-cmd.exp: Likewise.
	* gdb.mi/mi-var-display.exp: Likewise.
	* gdb.mi/mi-var-invalidate.exp: Likewise.
	* gdb.mi/mi-watch.exp, gdb.mi/mi2-basics.exp: Likewise.
	* gdb.mi/mi2-break.exp, gdb.mi/mi2-cli.exp: Likewise.
	* gdb.mi/mi2-console.exp: Likewise.
	* gdb.mi/mi2-disassemble.exp: Likewise.
	* gdb.mi/mi2-eval.exp, gdb.mi/mi2-file.exp: Likewise.
	* gdb.mi/mi2-read-memory.exp: Likewise.
	* gdb.mi/mi2-regs.exp, gdb.mi/mi2-return.exp: Likewise.
	* gdb.mi/mi2-simplerun.exp: Likewise.
	* gdb.mi/mi2-stack.exp, gdb.mi/mi2-stepi.exp: Likewise.
	* gdb.mi/mi2-syn-frame.exp: Likewise.
	* gdb.mi/mi2-until.exp, gdb.mi/mi2-var-block.exp: Likewise.
	* gdb.mi/mi2-var-child.exp, gdb.mi/mi2-var-cmd.exp: Likewise.
	* gdb.mi/mi2-var-display.exp, gdb.mi/mi2-watch.exp: Likewise.
2012-07-09 18:28:17 +00:00
Tom Tromey
e314d62968 * c-exp.y (check_parameter_typelist): New function.
(parameter_typelist): Call it.
	* eval.c (make_params): Handle '(void)' case.
	* gdbtypes.c (lookup_function_type_with_arguments): Handle
	'(void)' case.
testsuite
	* gdb.base/whatis.exp: Add error checks for improper 'void' uses.
	* gdb.base/callfuncs.exp: Add cast-based test.
	* gdb.base/callfuncs.c (voidfunc): New function.
2012-07-09 14:20:52 +00:00
Doug Evans
06928b3f65 * gdb.dwarf2/dw4-sig-type-unused.S: Fix typo. 2012-07-08 22:34:59 +00:00
Jan Kratochvil
32f11bad17 gdb/testsuite/
Fix XFAIL compatibility with old i386 systems.
	* gdb.base/stale-infcall.exp (test system longjmp tracking support):
	Check also 'Cannot insert breakpoint 0'.
2012-07-07 12:10:14 +00:00
Jan Kratochvil
76b83c514f gdb/
PR 14321
	* findcmd.c (parse_find_args): New variable pattern_buf_size_need.
	Increase buffer sizes to 2x we need, not just 2x of the previous size.

gdb/testsuite/
	PR 14321
	* gdb.base/find.exp
	(find int64_search_buf, +64/8*100, int64_search_buf): New test.
2012-07-06 15:51:40 +00:00
Tom Tromey
a6fb9c08a9 * c-exp.y (DOTDOTDOT): New token.
(func_mod, exp): Use parameter_typelist.
	(parameter_typelist): New production.
	(tokentab3): Add "..." token.
	* eval.c (make_params): Handle varargs.
	* gdbtypes.c (lookup_function_type_with_arguments): Handle
	varargs.
testsuite
	* gdb.base/whatis.exp: Add test.
2012-07-06 14:48:48 +00:00
Tom Tromey
71918a863f PR exp/9608:
* c-exp.y (%union) <tvec>: Change type.
	(func_mod): Now uses <tvec> type.
	(exp): Update for tvec change.
	(direct_abs_decl): Push the typelist.
	(func_mod): Return a typelist.
	(nonempty_typelist): Update for tvec change.
	* gdbtypes.c (lookup_function_type_with_arguments): New function.
	* gdbtypes.h (lookup_function_type_with_arguments): Declare.
	* parse.c (pop_type_list): New function.
	(push_typelist): New function.
	(follow_types): Handle tp_function_with_arguments.
	* parser-defs.h (type_ptr): New typedef.  Define a VEC.
	(enum type_pieces) <tp_function_with_arguments>: New constant.
	(union type_stack_elt) <typelist_val>: New field.
	(push_typelist): Declare.
testsuite
	* gdb.base/whatis.exp: Add regression test.
2012-07-06 14:47:00 +00:00
Tom Tromey
fcde5961eb * c-exp.y (%union) <type_stack>: New field.
(abs_decl, direct_abs_decl): Use <type_stack> type.  Update.
	(ptr_operator_ts): New production.
	(ptype): Update.
	* parse.c (type_stack_reserve): New function.
	(check_type_stack_depth): Use it.
	(pop_type_stack, append_type_stack, push_type_stack)
	(get_type_stack, type_stack_cleanup): New functions.
	(follow_types): Handle tp_type_stack.
	(_initialize_parse): Simplify initialization.
	* parser-defs.h (enum type_pieces) <tp_type_stack>: New
	constant.
	(union type_stack_elt) <stack_val>: New field.
	(get_type_stack, append_type_stack, push_type_stack)
	(type_stack_cleanup): Declare.
testsuite
	* gdb.base/whatis.exp: Add tests.
2012-07-06 14:44:22 +00:00
Jan Kratochvil
f9cf0f4ab2 gdb/testsuite/
PR 12649
	* gdb.base/dprintf.exp (Set dprintf style to agent): Add missing
	gdb_test_multiple $gdb_prompt terminator.
2012-07-04 14:57:23 +00:00
Pedro Alves
979ade8b16 2012-07-04 Pedro Alves <palves@redhat.com>
* gdb.mi/mi-reverse.exp: Use supports_reverse and
	supports_process_record.
2012-07-04 11:28:04 +00:00
Pedro Alves
8a980b44d0 2012-07-04 Pedro Alves <palves@redhat.com>
* gdb.ada/packed_tagged/comp_bug.adb: Convert to unix text line
	endings.
	* gdb.mi/mi-reverse.exp: Convert to unix text line endings.
2012-07-04 10:48:32 +00:00
Stan Shebs
855ba978e4 * gdb.base/info-os.c (main): Retry resource acquisition until an
available one is found.
	* gdb.base/info-os.exp: Collect resource keys from the program
	and use them in matching.
2012-07-03 23:17:13 +00:00
Jan Kratochvil
fcb4437118 gdb/
* linux-thread-db.c (inferior_has_bug): New function.
	(thread_db_find_new_threads_silently): Return boolean as checked by
	inferior_has_bug, describe it in the comments.
	(try_thread_db_load_1): Move call to thread_db_find_new_threads_silently
	earlier.  Abort the initialization if it returned non-zero.
	(thread_db_find_new_threads_2): Preinitialize ERR.  Check errors also
	if UNTIL_NO_NEW,

gdb/testsuite/
	* gdb.threads/gcore-thread.exp: Remove variable libthread_db_seen.
	Wrap the test into loop for corefile and core0file.
2012-07-02 20:28:38 +00:00
Jan Kratochvil
0f3c2347e6 gdb/testsuite/
* gdb.dwarf2/fission-reread.S: Change # comments to /* */ comments.
2012-07-02 20:10:48 +00:00
Jan Kratochvil
08a67be67e gdb/testsuite/
* gdb.dwarf2/fission-reread.S: Remove .section attributes.
	Change CU pointer size to 4 bytes, adjust .8byte to .4byte.  Remove
	.note.GNU-stack.
2012-07-02 20:09:26 +00:00
Sergio Durigan Junior
ff4a45007a gdb/testsuite:
2012-07-02  Sergio Durigan Junior  <sergiodj@redhat.com>

	* gdb.base/help.exp (help b, help br, help bre, help brea, help
	break): Include help message for the new `-probe' and `-probe-stap'
	options.
2012-07-02 17:53:19 +00:00
Stan Shebs
d3ce09f5bf Add target-side support for dynamic printf.
* NEWS: Mention the additional style.
	* breakpoint.h (struct bp_target_info): New fields tcommands, persist.
	(struct bp_location): New field cmd_bytecode.
	* breakpoint.c: Include format.h.
	(disconnected_dprintf): New global.
	(parse_cmd_to_aexpr): New function.
	(build_target_command_list): New function.
	(insert_bp_location): Call it.
	(remove_breakpoints_pid): Skip dprintf breakpoints.
	(print_one_breakpoint_location): Ditto.
	(dprintf_style_agent): New global.
	(dprintf_style_enums): Add dprintf_style_agent.
	(update_dprintf_command_list): Add agent case.
	(agent_printf_command): New function.
	(_initialize_breakpoint): Add new commands.
	* common/ax.def (printf): New bytecode.
	* ax.h (ax_string): Declare.
	* ax-gdb.h (gen_printf): Declare.
	* ax-gdb.c: Include cli-utils.h, format.h.
	(gen_printf): New function.
	(maint_agent_print_command): New function.
	(_initialize_ax_gdb): Add maint agent-printf command.
	* ax-general.c (ax_string): New function.
	(ax_print): Add printf disassembly.
	* Makefile.in (SFILES): Add format.c
	(COMMON_OBS): Add format.o.
	* common/format.h: New file.
	* common/format.c: New file.
	* printcmd.c: Include format.h.
	(ui_printf): Call parse_format_string.
	* remote.c (remote_state): New field breakpoint_commands.
	(PACKET_BreakpointCommands): New enum.
	(remote_breakpoint_commands_feature): New function.
	(remote_protocol_features): Add new BreakpointCommands entry.
	(remote_can_run_breakpoint_commands): New function.
	(remote_add_target_side_commands): New function.
	(remote_insert_breakpoint): Call it.
	(remote_insert_hw_breakpoint): Ditto.
	(_initialize_remote): Add new packet configuration for
	target-side breakpoint commands.
	* target.h (struct target_ops): New field
	to_can_run_breakpoint_commands.
	(target_can_run_breakpoint_commands): New macro.
	* target.c (update_current_target): Handle
	to_can_run_breakpoint_commands.

	[gdbserver]
	* Makefile.in (WARN_CFLAGS_NO_FORMAT): Define.
	(ax.o): Add it to build rule.
	(ax-ipa.o): Ditto.
	(OBS): Add format.o.
	(IPA_OBS): Add format.o.
	* server.c (handle_query): Claim support for breakpoint commands.
	(process_point_options): Add command case.
	(process_serial_event): Leave running if there are printfs in
	effect.
	* mem-break.h (any_persistent_commands): Declare.
	(add_breakpoint_commands): Declare.
	(gdb_no_commands_at_breakpoint): Declare.
	(run_breakpoint_commands): Declare.
	* mem-break.c (struct point_command_list): New struct.
	(struct breakpoint): New field command_list.
	(any_persistent_commands): New function.
	(add_commands_to_breakpoint): New function.
	(add_breakpoint_commands): New function.
	(gdb_no_commands_at_breakpoint): New function.
	(run_breakpoint_commands): New function.
	* linux-low.c (linux_wait_1): Test for and run breakpoint commands
	locally.
	* ax.c: Include format.h.
	(ax_printf): New function.
	(gdb_eval_agent_expr): Add printf opcode.

	[doc]
	* gdb.texinfo (Dynamic Printf): Mention agent style and
	disconnected dprintf.
	(Maintenance Commands): Describe maint agent-printf.
	(General Query Packets): Mention BreakpointCommands feature.
	(Packets): Document commands extension to Z0 packet.
	* agentexpr.texi (Bytecode Descriptions): Document printf
	bytecode.

	[testsuite]
	* gdb.base/dprintf.exp: Add agent style tests.
2012-07-02 15:29:39 +00:00
Jan Kratochvil
a16242411f gdb/testsuite/
* gdb.base/stale-infcall.c (infcall): New label test-next.
	(main): New labels test-pass and test-fail.
	* gdb.base/stale-infcall.exp: Continue to test-next.  Put breakpoint
	$test_fail_bpnum to test-fail.
	(test system longjmp tracking support): New test.
	Delete $test_fail_bpnum.
	* lib/gdb.exp (gdb_continue_to_breakpoint): Accept also Temporary
	breakpoint.
2012-07-02 12:06:56 +00:00