* serial.h (SERIAL_SET_TTY_STATE): Comment return value.
[deliverable/binutils-gdb.git] / gdb / testsuite / TODO
CommitLineData
3dcb8617
JK
1The highest priority item is not on this list: Fix bugs in the
2existing testsuite, fix the GDB/compiler/shell/etc bugs which it
3detects (particularly when they are hard to XFAIL), make it run
4reliably without unexpected failures on the "standard" machines, etc.
5This list exists largely as "tests we can add when we are ready to
6risk destabilizing it again".
7
8return.exp--reenable test (there is nothing known to be wrong with the
9test, but it hasn't been tried on a wide range of architectures).
10
11nodebug.exp--test printing variables.
12
13Get crossload tests to use --with-targets and reenable them.
14
15corefile.exp:
161. Print variables from the core file (data and stack), and text
17(from the exec file). This tests whether the corefile sections are
18mapped to the right addresses.
192. Test what happens when we get a new exec file without explicitly
20getting rid of the core file (we at least must avoid core dumps and such).
213. Test backtrace in corefile.exp.
224. Test ability to run program when there is a core target, then go
23back to the core file when the program exits.
24
25Test handling of floating point variables
261. float, double, or long double
272. in register or saved register or memory. Also the case where a
28double is in two float registers and only one of them is saved.
293. print them or set them
304. (Alpha) integer (32 or 64 bit) in floating point register.
31
32Print registers--"p $r5", "p sizeof ($r5)". Test that they print
33appropriately (integer registers in decimal, registers which always
34contain addresses (pc, probably sp and fp, maybe others) in hex,
35floating point).
36
37Test "info line" with all kinds of linespecs. Test that the last line
38of the file works right.
39
40weird.exp--test that unrecognized cross-reference types or
41unrecognized visibility or virtual characters get skipped properly
42(see stabs.texinfo).
43
0ab6de23
RS
44Test "jump" including jump to a breakpoint (the latter will need an
45xfail for UDI and probably VxWorks (PR 1786 for vxworks; PR 2416
46contains some info for 29k).
47
3dcb8617
JK
48Test C++ nested types (especially if PR 1954 is fixed; even if not
49*some* things already should work even in the presence of nested
50types). Test classes nested more than 9 levels deep (g++ mangles
51these differently) (both a demangle test and some tests which also
52test the compiler). Test calling a method of a class nested more than
539 levels (for gdb_mangle_name and demangling).
54
3dcb8617
JK
55Test that printing const-qualified versions of various types works.
56In particular, on the sparc and probably other machines, "double" is
57handled differently from most types because it requires more alignment
58and thus goes in a different section (there is a gcc 2.4.5 bug with
59"const double" on sparc).
60
61Test that GDB's "source" command works and that things work if stdin
62is redirected (to a file or a pipe). Test user defined command. Run
63an inferior each of these ways (to test that inflow.c works). Test
64that GDB works if the last line of stdin or a source'd file lacks a
65newline.
66
67Test that module__2do (for example) in a C program does not get
68demangled.
69
70Test that unmatched single quotes produce error messages, both in
71expressions and linespecs.
72
73Test "cd". "foo/bar/.." should get simplified to "foo". "/../.."
74should not get simplified (for Mach). "/.." should not get simplified
75(for other networked OSes; POSIX.1 section B.2.3.7). All these
76examples should continue to work with trailing slashes.
77
78Test scoping; here is a start
79 1 int i=2;
80 2 int j=3;
81 3 main()
82 4 {
83 5 int i;
84 6 for (i=600; i>0; i--)
85 7 print_line(i);
86 8 }
87 9
8810 print_line(i)
8911 int i;
9012 {
9113 h();
9214 printf("%d\n",i);
9315 }
9416
9517 h()
9618 {
9719 printf("In h...");
9820 }
99Set a breakpoint in h, and print i, print_line::i, and main::i. Set a
100breakpoint in main (or don't run the program), and test that
101print_line::i is an error. But if i were static, "p main::i" should
102work even if the program is not being run.
103
104Write a test for the reentracy bug with rs6000_struct_return_address
105in rs6000-tdep.c.
106
107Test "return" from dummy frames.
108
109FORTRAN common blocks (a.out and xcoff--weird.exp has the start of
110one but it is not quite right as of 19 Nov 1993).
111
112Test that "x" command sets $_ and $__. Test $_ in general.
113
114Test ability to process NMAGIC a.out files.
115
116If there are two breakpoints in the same place, and exactly one of
117them has its condition true, test that the correct breakpoint gets
118printed.
119
3dcb8617
JK
120Set a watchpoint on a local variable (to be interesting, make a few
121calls, to be more interesting, make a recursive call). Test that it
122gets disabled when leaving that scope.
123
124Test calling a function, hitting a breakpoint in the called function,
125calling another function, and hitting a breakpoint. Test backtrace
126works in the presence of multiple dummy frames. Test that "continue"
127will get you out of the inner called function, and "continue" again
128will get you back to where you were when you called the first one.
129
130Test special longjmp handling in wait_for_inferior (need to figure out
131in detail what the proper behavior in each case is). Test longjmp to
132a place where there is a breakpoint (such that
133BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE happens). In general, test
134interactions between longjmp and watchpoints, breakpoints, stepping,
135call function, etc.
136
137Test jumping right past a breakpoint (the case where wait_for_inferior
138passes not_a_breakpoint to bpstat_stop_status). Might already be
139tested by some of the sun3 tests. Probably want a .s test to avoid
140compiler dependencies.
141
142Test more obscure wait_for_inferior cases, expanding on the tests in
143watchpoint.exp, signals.exp, etc.
144
145Test that the copyright year in the startup message matches the
146current year (would produce a single spurious FAIL on old GDB's, but
147probably still a good idea).
148\f
149(this is for editing this file with GNU emacs)
150Local Variables:
151mode: text
152End:
This page took 0.030977 seconds and 4 git commands to generate.