Hi, Joel! Thank you for having a look at this. On 03/21/2014 10:14 AM, Joel Brobecker wrote: > Use "(void)" instead of "()". There was a recent policy clarification > regarding the CS to be using with testcases, and basically we decided > to try to follow the GCS as much as we reasonably could. Cut-n-paste-o. Fixed. >> +# If we get here and gdb hasn't crashed, the tests pass. >> +pass "corrupt DWARF" > > That's just me but I usually do a "print 1" test, just to make sure > that even if the testing framework did not detect the GDB process > dying, the "print 1" test definitely will. Not important on most, > if not all platforms, but ISTR some odd platforms where this helped. > That's just a suggestion, you don't have to follow it. Actually, I think that's a very good idea (which did not occur to me). My big hesitation with this is that this failure gets reported as UNRESOLVED. While I try to be studious about checking XFAIL/UNRESOLVED/ERROR, I sometimes overlook these in favor of a raw PASS/FAIL check in gdb.sum. I've attached a revision with those two changes (ChangeLog remains unchanged). Keith ChangeLog 2014-03-20 Keith Seitz PR gdb/15827 * dwarf2read.c (skip_one_die): Check that all relative-offset sibling DIEs fall within range of the current reader's buffer. (read_partial_die): Likewise. testsuite/ChangeLog 2014-03-20 Keith Seitz PR gdb/15827 * gdb.dwarf2/corrupt.c: New file. * gdb.dwarf2/corrupt.exp: New file.