This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gdb 5.3 versus gdb HEAD%20030201 (draft #2)


GDB test suite regressions from 5.3 to HEAD%20030201 (draft #2)

High priority issues:
  pr gdb/1026
  native x86_64-unknown-linux-gnu

[I didn't get all the way through the list, so this is not complete yet.
 I will probably do another spin and then continue this.]

These results are based on the data that I used for the Sunday Project
report of 2003-02-01:

  http://www.shout.net/~mec/sunday/2003-02-01/index.html

Between gdb 5.3 and gdb HEAD%20030201, 18 files in testsuite/gdb.mi were
renamed from 'mi0-*.exp' to 'mi1-*.exp'.  I have to accommodate this
when I compare test results.  So I changed my results cruncher: it
transforms both 'mi0-*.exp' and 'mi1-*.exp' to 'mi[01]-*.exp', so that
the results become comparable.  It's a bit of a kludge.

There's a serious problem with stabs+ in gcc gcc-3_3-branch and gcc
HEAD.  Both gdb 5.3 and gdb HEAD%20030201 report a lot of FAILs with
these gcc's.  Technically, this is not a regression in gdb.  But we're
going to suck down a lot of bug reports if we release a gdb that does
not work well with the upcoming gcc 3.3, which is tentatively scheduled
for 2003-03-01.  These bad results have been there since the big gcc
merge and the creation of gcc-3_3-branch.  I've been tardy at looking
into them.

Michal Ludvig also reports that native x86_64-unknown-linux-gnu has
regressed significantly from gdb 5.3 to gdb 2003-02-01-cvs.

I analyzed results which disimproved from gdb 5.3 to gdb HEAD plus
non-PASS results from new tests in gdb HEAD.  I did not analyze results
which improved from gdb 5.3 to gdb HEAD.

All test runs are native i686-pc-linux-gnu on a red hat linux 8 system.
I test with gcc v2 and v3, several versions of binutils, and both
dwarf-2 and stabs+.

Most of the results are either:

  . New tests that do not PASS ("null -> XXX").  These need investigation,
    but most of them will turn out to be existing bugs in 5.3.

  . Known unstable tests in annota2.exp, killed.exp, schedlock.exp.
    Some of these are bugs in gdb but they are not regressions from 5.3.

  . Bits of the big problem with stabs+ support with gcc gcc-3_branch
    and gcc HEAD.

Michael C

===

  . gdb.base/advance.exp: advance function not called by current frame
    gdb.base/advance.exp: continue to call to func3 in main
    gdb.base/advance.exp: advance function called as param
    gdb.base/advance.exp: advance with no argument
    gdb.base/until.exp: until func, not called by current frame
      null -> FAIL
	all gcc v3

      This is new test with a bug in the test script.

      Analysis here:

	http://sources.redhat.com/ml/gdb-patches/2003-01/msg00621.html

      Patch submitted here:

	http://sources.redhat.com/ml/gdb-patches/2003-02/msg00054.html

      This patch has been committed.  So this section should go away
      after the next sunday project spin.

  . gdb.base/constvars.exp: ptype crass
      null -> XFAIL

      This is a new test.  Using the same test script, gdb improved from
      5.3 to gdb HEAD%20030201.

      This test does 'ptype' on a structure with a 'char * const ptr'
      member.  gdb 5.3 does not have this test.  With gdb 5.3 and
      dwarf-2, gdb prints the structure member as 'char * constptr' with
      the single word 'constptr' -- obviously incorrect.  With gdb 5.3
      and stabs+, gdb prints the structure member as 'char *ptr',
      dropping the const.

      With gdb HEAD%20030201 and dwarf-2, gdb prints 'char * const ptr',
      which is an improvement.  With gdb HEAD%20030201 and stabs+, gdb
      prints 'char *ptr', the same bad behavior as gdb 5.3.

  . gdb.base/constvars.exp: ptype crisp
      null -> XFAIL
      v2 stabs+

      This is a new test.  Using the same test script, gdb has the same
      behavior in 5.3 and gdb HEAD%20030201.

      This test does 'ptype' on a structure with a 'char * const *ptr'
      member.  gdb 5.3 and gdb HEAD%20030201 have the same behavior,
      modulo whitespace changes.  They respond correctly with gcc 2.95.3
      dwarf-2, gcc 3.X dwarf-2, and gcc 3.X stabs+; and they respond
      incorrectly with gcc 2.95.3 stabs+.

  . gdb.base/ending-run.exp: continue after exit
      null -> UNSUPPORTED

      This is a new test which is working properly.

      Some configurations (I don't know which ones) can land in a DLD
      function after leaving main().  These configurations run this
      particular test.  Other configurations return UNSUPPORTED for this
      test.

      gdb's behavior is fine.  I find the UNSUPPORTED a bit gratuitous.
      Perhaps the test script should do nothing rather than generate an
      UNSUPPORTED.

  . gdb.c++/annota2.exp: annotate-quit

      pr gdb/544: gdb.c++/annota2.exp: annotate-quit test sometimes fails
      http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=544
      Fluctuation in test result from unknown cause.

      This is a long-standing issue with gdb.  It has not changed from
      gdb 5.3 to gdb HEAD%20030201.  The issue has to do with gdb
      handling of ^C coming very quickly from 'expect'.  I believe
      there is not actually any problem with annotation.

  . gdb.c++/casts.exp: cast base class pointer to derived class pointer
      null -> UNRESOLVED
	dwarf-2 with gcc HEAD

      This is a cascade problem from the previous test script,
      gdb.c++/anon-union.exp.  anon-union.exp causes an internal error
      in gcc HEAD%20030128 (PR gcc/9039).  The after-effects kill the
      first test of the next test script.

  . gdb.c++/casts.exp: cast base class pointer to derived class pointer
      null -> FAIL
	stabs+ with gcc gcc-3_3-branch, gcc HEAD
	stabs+ with gcc gcc-3_3-branch, gcc HEAD

      This is a high-priority bug.  It might be in either gdb or gcc.
      gcc changed its stabs+ output, and gdb does not handle the new
      output.  PR gdb/1026.

  . gdb.c++/classes.exp: ptype struct default_public_struct
      UNRESOLVED -> XFAIL
	dwarf-2 with gcc HEAD

  . gdb.c++/local.exp: ptype Local
      FAIL -> FAIL
      dwarf-2 with gcc v3

  . gdb.c++/pr-574.exp: PR gdb/574
      null -> FAIL
      stabs+ with gcc gcc-3_3-branch, gcc HEAD

  . gdb.mi/gdb701.exp: create fooPtr
      null -> FAIL
      dwarf-2 with gcc v2, gcc 3.2.1, gcc gcc-3_2-branch, gcc 3.2-7-rh

  . gdb.mi/gdb792.exp: list children of class C
      null -> FAIL
      stabs+ with gcc gcc-3_3-branch, gcc HEAD

  . gdb.threads/killed.exp: GDB exits after multi-threaded program exits messily (PR ...)
      pass -> KFAIL

  . gdb.threads/schedlock.exp: *


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]