* gdb.base/exprs.exp ("print unsigned short == (~0)"): Don't
assume that shorts are smaller than ints. On a 16-bit machine,
this isn't true.
("print unsigned char == (~0)"): Add test that verifies that ~0,
an int, is not equal to ~0 stored in an unsigned char. This tests
the same thing that the previous test meant to, but works on
16-bit machines, too.
("print unsigned char != (~0)"): Same test, complemented.
* gdb.base/callfuncs.exp: Make all test names unique.
* gdb.base/commands.exp: Make all test names unique.
* gdb.base/condbreak.exp: Make all test names unique.
* gdb.base/dbx.exp: Make all test names unique.
* gdb.base/default.exp: Make all test names unique.
* gdb.base/define.exp: Make all test names unique. Conform some FAIL
and TIMEOUT messages to their corresponding PASS message.
* gdb.base/ending-run.exp: Make all test names unique.
* gdb.base/long_long.exp: Remove duplicate test.
file -- to prevent failing when the compile fails but we have no
intention of running the tests anyway.
* gdb.base/long_long.exp: Test target_info for no_long_long, skip
tests if set.
* gdb.base/maint.exp: Support 2 byte integers as well as 4 byte
integers.
* gdb.c++/ctti.exp: Skip tests if skip_cplus_tests returns true.
* gdb.c++/namespace.exp: Ditto.
Fix PR gdb/16.
* gdb.base/commands.exp (infrun_breakpoint_command_test):
Converted HPUX fix for non-expected items following multiple
step commands into general solution for all platforms.
* gdb.base/break.exp (test_clear_command): Use a marker function
rather than 'main' for the test function. Also move this
test to an execution point where the marker function names are
guaranteed to be bound to functions. (Executing tests after a
'finish' from main runs into name conflicts with local names
in __libc_start_main).
* gdb.base/finish.exp: New test for gdb's "finish" command.
* gdb.base/return2.exp: New test for gdb's "return" command.
* gdb.base/return2.c: New source file for above.
* mips_pro.exp: Accept either "middle -> top -> main" or
"middle -> main" in the backtrace, because gcc can optimize
tail calls to jumps. Remove setup_xfail for the hppa case.
Add a comment with the original warning messages from PR 3016,
which was filed in 1993, to preserve them for posterity.
* gdb.base/a2-run.exp: Use gdb_skip_stdio_test.
* gdb.base/corefile.exp: Expect the message "Program is being
debugged already" when we send the "corefile" command, since
the preceeding gdb_load may have connected gdb to a remote target.
* gdb.base/display.exp: Disable hardware watchpoints if new
board info variable "no_hardware_watchpoints" is true.
Replace single-letter commands with more readable ones.
* gdb.base/recurse.exp (recurse_tests): Disable hardware watchpoints
if new board info variable "no_hardware_watchpoints" is true.
* gdb.base/restore.exp (restore_tests): Call gdb_skip_stdio_tests
to see if stdio (printf) testing is possible.
* gdb.base/watchpoint.exp: Disable hardware watchpoints if new
board info variable "no_hardware_watchpoints" is true. Use new
proc "gdb_skip_stdio_tests" to see if printf tests are possible.
t_double_values to initialize the FPU before inferior calls are made.
* gdb.base/callfuncs.exp: Test for register preservation after calling
inferior functions. Add tests for continuining, finishing and
returning from a stop in a call dummy.
* lib/gdb.exp (gdb_skip_float_test): New proc. Skip test if
no floating point support.
(gdb_skip_stdio_test): New proc. Skip test if no stdio support.
* gdb.base/call-ar-st.exp: Use above procs to skip tests.
* gdb.base/call-rt-st.exp: Ditto.
* gdb.base/call-strs.exp: Ditto.
* gdb.base/sizeof.exp (check_sizeof): Skip if no printf support.
* gdb.base/varargs.exp: Skip entire test if no printf support.
* gdb.base/ending-run.exp (Step to return): Skip if no printf supt.
* gdb.base/shlib-call.exp: Skip several tests if no printf support.
* gdb.base/recurse.exp: Run tests for all targets.
* gdb.base/so-impl-ld.exp: Added wildcard to handle the
gnu-oldld case on ARM.
* gdb.base/watchpoint.exp (test_stepping): Clear xfail
for ARM targets.
* gdb.base/annota1.exp (run until main breakpoint): Loosen up
the regular expression: accept an (almost) arbitrary sequence of
"frames-invalid" and "breakpoints-invalid" messages both before
and after the "starting" message.
* gdb.base/break.exp (bp on small function, optimized file):
Add a second pass pattern. The behavior differs here between stabs
and dwarf for one-line functions. Stabs preserves two line symbols
(one before the prologue and one after) with the same line number,
but dwarf regards these as duplicates and discards one of them.
Therefore the address after the prologue (where the breakpoint is)
has no exactly matching line symbol, and GDB reports the breakpoint
as if it were in the middle of a line rather than at the beginning.