* NEWS: Mention pointer to member improvements.
[deliverable/binutils-gdb.git] / gdb / testsuite / TODO
index a7365f260226ccd50aea853420300e0811b5a358..978991c77cdb0f936497856fa2ace5f5502db457 100644 (file)
@@ -5,26 +5,20 @@ reliably without unexpected failures on the "standard" machines, etc.
 This list exists largely as "tests we can add when we are ready to
 risk destabilizing it again".
 
-return.exp--reenable test (there is nothing known to be wrong with the
-test, but it hasn't been tried on a wide range of architectures).
-
-nodebug.exp--test printing variables.
+There are some tests which are only run on some platforms because they
+have not been tested on more platforms.  Enable them and fix any
+problems.  A partial list: recurse.exp, watchpoint.exp
+(test_watchpoint_triggered_in_syscall, test_complex_watchpoint).
 
 Test printing of structures passed by value, for the 7th, 8th, and 9th
 arguments (PR 1714).  Test printing structure arguments of
 2,4,6,8,12,16,and 20 bytes.  Same for structure return of all those
 sizes ("return", "finish", and call function).
 
-Get crossload tests to use --with-targets and reenable them.
+Get crossload tests to use --enable-targets and reenable them.
 
 corefile.exp:
-1.  Print variables from the core file (data and stack), and text
-(from the exec file).  This tests whether the corefile sections are
-mapped to the right addresses.
-2.  Test what happens when we get a new exec file without explicitly
-getting rid of the core file (we at least must avoid core dumps and such).
-3.  Test backtrace in corefile.exp.
-4.  Test ability to run program when there is a core target, then go
+Test ability to run program when there is a core target, then go
 back to the core file when the program exits.
 
 Test handling of floating point variables
@@ -39,6 +33,10 @@ appropriately (integer registers in decimal, registers which always
 contain addresses (pc, probably sp and fp, maybe others) in hex,
 floating point).
 
+Test completer.  Test that it completes a variety of things correctly
+(see the list of test cases in main.c in the gdb source).  Test TAB,
+M-?, and the "complete" command.
+
 Test "info line" with all kinds of linespecs.  Test that the last line
 of the file works right.
 
@@ -53,10 +51,19 @@ these differently) (both a demangle test and some tests which also
 test the compiler).  Test calling a method of a class nested more than
 9 levels (for gdb_mangle_name and demangling).
 
-Test printing complex types, including functions, pointers to arrays
-of pointers of functions, functions which return pointers to
+Test static member functions (C++).  Test that "ptype" shows them
+correctly, both before and after they have been converted from stub
+methods.  Test that we can call them.
+
+Test printing complicated types, including functions, pointers to
+arrays of pointers of functions, functions which return pointers to
 functions, etc.
 
+printcmd.exp--test printing enum values.  Test printing an enum
+variable whose value is out of range.  Test "p (int)enum_var", "p/x
+enum_var".  Test that in something like "enum {FOO, LAST_THING=FOO}"
+we print FOO, not LAST_THING.
+
 Test GDB expressions--test all operators (and overloaded operators for
 C++).  Test integer constants which are signed or unsigned int, long,
 or long long.  Test detection of overflow of an integer constant.
@@ -77,9 +84,6 @@ an inferior each of these ways (to test that inflow.c works).  Test
 that GDB works if the last line of stdin or a source'd file lacks a
 newline.
 
-Test that module__2do (for example) in a C program does not get
-demangled.
-
 Test that unmatched single quotes produce error messages, both in
 expressions and linespecs.
 
@@ -117,13 +121,21 @@ work even if the program is not being run.
 Write a test for the reentracy bug with rs6000_struct_return_address
 in rs6000-tdep.c.
 
-Test "return" from dummy frames.
+Test "return" from dummy frames.  Test "return" from non-innermost
+frame.  Test that "return" from a non-innermost frame restores
+registers which are saved not in that frame but in a frame more inner
+(I believe this currently works on few if any architectures).
 
 FORTRAN common blocks (a.out and xcoff--weird.exp has the start of
 one but it is not quite right as of 19 Nov 1993).
 
 Test that "x" command sets $_ and $__.  Test $_ in general.
 
+Test that "p/a" works when given addresses in text, data, and bss
+segments.  Test that it works if program is compiled with or without
+-g.  Test that it works if preceding symbol is static or if it is
+extern.
+
 Given `char abc[] = "abc\0def";' test "x/s abc" followed by "x/s"
 (should display "abc" followed by "def").  Test this works with no
 error message even if this is the last thing in the section (tests
@@ -171,9 +183,18 @@ compiler dependencies.
 Test more obscure wait_for_inferior cases, expanding on the tests in
 watchpoint.exp, signals.exp, etc.
 
-Test that the copyright year in the startup message matches the
-current year (would produce a single spurious FAIL on old GDB's, but
-probably still a good idea).
+Test stepping into functions which are one line long and functions
+which are on line 1 of the source file. (there is a class of bugs in
+which gdb doesn't find the line number information, and thus doesn't
+step into the function).
+
+Test that prologue recognition, backtrace, printing locals, etc.,
+still work in the presence of large frames (the point being that at
+some point immediate fields in RISC instructions will overflow and
+prologues will need to look different.  For sparc, the immediate field
+is 13 bits (signed), so I believe the threshold would be 4K bytes in a
+frame).
+
 \f
 (this is for editing this file with GNU emacs)
 Local Variables:
This page took 0.025493 seconds and 4 git commands to generate.