Regression: Re: FYI: fix varobj bug with python iterator errors

Jan Kratochvil jan.kratochvil@redhat.com
Fri Apr 1 05:25:00 GMT 2011


Hi Tom,

On Thu, 31 Mar 2011 21:58:45 +0200, Tom Tromey wrote:
> I'm checking this in.
[...]
> Built and regtested on x86-64 (compile farm).
[...]
> 2011-03-31  Tom Tromey  <tromey@redhat.com>
> 
> 	* varobj.c (update_dynamic_varobj_children): Properly handle
> 	errors from iterator.
> 
> 2011-03-31  Tom Tromey  <tromey@redhat.com>
> 
> 	* gdb.python/py-prettyprint.py (exception_flag): New global.
> 	(NoStringContainerPrinter._iterator.next): Check it.
> 	* gdb.python/py-prettyprint.c (main): New variable nstype2.
> 	* gdb.python/py-mi.exp: Set exception_flag and do more tests.

This commit 837e99b31775e6a75a593259738924bf050650d2 has regressions on
{x86_64-m32,i686}-{fedora15,rawhide}-linux-gnu, it still PASSes on
x86_64-{fedora15,rawhide}-linux-gnu, it also still PASSes on
{x86_64,x86_64-m32,i686}-fedora{13,14}-linux-gnu.


Thanks,
Jan


diff -dup -rU9999 pass/gdb.sum fail/gdb.sum
--- pass/gdb.sum	2011-04-01 07:18:38.000000000 +0200
+++ fail/gdb.sum	2011-04-01 07:20:28.000000000 +0200
@@ -1,76 +1,77 @@
-Test Run By jkratoch on Fri Apr  1 07:18:37 2011
+Test Run By jkratoch on Fri Apr  1 07:20:27 2011
 Native configuration is i386-unknown-linux-gnu
 
 		=== gdb tests ===
 
 Schedule of variations:
     unix
 
 Running target unix
 Running ./gdb.python/py-prettyprint.exp ...
 PASS: gdb.python/py-prettyprint.exp: set print pretty on
-PASS: gdb.python/py-prettyprint.exp: b 286
+PASS: gdb.python/py-prettyprint.exp: b 288
 PASS: gdb.python/py-prettyprint.exp: continue
 PASS: gdb.python/py-prettyprint.exp: python execfile ('py-prettyprint.py')
-PASS: gdb.python/py-prettyprint.exp: print ss
-PASS: gdb.python/py-prettyprint.exp: print ssa[1]
-PASS: gdb.python/py-prettyprint.exp: print ssa
-PASS: gdb.python/py-prettyprint.exp: print arraystruct
-PASS: gdb.python/py-prettyprint.exp: print ns2
-PASS: gdb.python/py-prettyprint.exp: print x
-PASS: gdb.python/py-prettyprint.exp: print cstring
-PASS: gdb.python/py-prettyprint.exp: print estring
+FAIL: gdb.python/py-prettyprint.exp: print ss
+FAIL: gdb.python/py-prettyprint.exp: print ssa[1]
+FAIL: gdb.python/py-prettyprint.exp: print ssa
+FAIL: gdb.python/py-prettyprint.exp: print arraystruct
+FAIL: gdb.python/py-prettyprint.exp: print ns2
+FAIL: gdb.python/py-prettyprint.exp: print x
+FAIL: gdb.python/py-prettyprint.exp: print cstring
+FAIL: gdb.python/py-prettyprint.exp: print estring
 PASS: gdb.python/py-prettyprint.exp: python pp_ls_encoding = 'UTF-8'
-PASS: gdb.python/py-prettyprint.exp: print estring2
-PASS: gdb.python/py-prettyprint.exp: print c
-PASS: gdb.python/py-prettyprint.exp: print nstype
+FAIL: gdb.python/py-prettyprint.exp: print estring2
+FAIL: gdb.python/py-prettyprint.exp: print c
+FAIL: gdb.python/py-prettyprint.exp: print nstype
 PASS: gdb.python/py-prettyprint.exp: set print pretty off
-PASS: gdb.python/py-prettyprint.exp: print nstype on one line
+FAIL: gdb.python/py-prettyprint.exp: print nstype on one line
 PASS: gdb.python/py-prettyprint.exp: continue until exit
 PASS: gdb.python/py-prettyprint.exp: set print pretty on
-PASS: gdb.python/py-prettyprint.exp: b 286
+PASS: gdb.python/py-prettyprint.exp: b 288
 PASS: gdb.python/py-prettyprint.exp: continue
 PASS: gdb.python/py-prettyprint.exp: python execfile ('py-prettyprint.py')
 PASS: gdb.python/py-prettyprint.exp: print ss
 PASS: gdb.python/py-prettyprint.exp: print ssa[1]
 PASS: gdb.python/py-prettyprint.exp: print ssa
 PASS: gdb.python/py-prettyprint.exp: print arraystruct
 PASS: gdb.python/py-prettyprint.exp: print cps
 PASS: gdb.python/py-prettyprint.exp: print cpss
 PASS: gdb.python/py-prettyprint.exp: print cpssa[0]
 PASS: gdb.python/py-prettyprint.exp: print cpssa[1]
 PASS: gdb.python/py-prettyprint.exp: print cpssa
 PASS: gdb.python/py-prettyprint.exp: print sss
 PASS: gdb.python/py-prettyprint.exp: print ref
 PASS: gdb.python/py-prettyprint.exp: print derived
 PASS: gdb.python/py-prettyprint.exp: print ns
 PASS: gdb.python/py-prettyprint.exp:
 PASS: gdb.python/py-prettyprint.exp: print ns
 PASS: gdb.python/py-prettyprint.exp:
 PASS: gdb.python/py-prettyprint.exp: print ns
 PASS: gdb.python/py-prettyprint.exp:
 PASS: gdb.python/py-prettyprint.exp: print ns2
 PASS: gdb.python/py-prettyprint.exp: print x
 PASS: gdb.python/py-prettyprint.exp: print cstring
 PASS: gdb.python/py-prettyprint.exp: print estring
 PASS: gdb.python/py-prettyprint.exp: python pp_ls_encoding = 'UTF-8'
 PASS: gdb.python/py-prettyprint.exp: print estring2
 PASS: gdb.python/py-prettyprint.exp: print c
 PASS: gdb.python/py-prettyprint.exp: print nstype
 PASS: gdb.python/py-prettyprint.exp: set print pretty off
 PASS: gdb.python/py-prettyprint.exp: print nstype on one line
 PASS: gdb.python/py-prettyprint.exp: continue until exit
-PASS: gdb.python/py-prettyprint.exp: b 286
+PASS: gdb.python/py-prettyprint.exp: b 288
 PASS: gdb.python/py-prettyprint.exp: continue
 PASS: gdb.python/py-prettyprint.exp: python execfile ('py-prettyprint.py')
-PASS: gdb.python/py-prettyprint.exp: print ss enabled #1
+FAIL: gdb.python/py-prettyprint.exp: print ss enabled #1
 PASS: gdb.python/py-prettyprint.exp: python disable_lookup_function ()
-PASS: gdb.python/py-prettyprint.exp: print ss disabled
+FAIL: gdb.python/py-prettyprint.exp: print ss disabled
 PASS: gdb.python/py-prettyprint.exp: python enable_lookup_function ()
-PASS: gdb.python/py-prettyprint.exp: print ss enabled #2
+FAIL: gdb.python/py-prettyprint.exp: print ss enabled #2
 
 		=== gdb Summary ===
 
-# of expected passes		60
+# of expected passes		45
+# of unexpected failures	15
 /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb version  7.2.50.20110331-cvs -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory 
 
diff -dup -rU9999 pass/gdb.log fail/gdb.log
--- pass/gdb.log	2011-04-01 07:18:38.000000000 +0200
+++ fail/gdb.log	2011-04-01 07:20:28.000000000 +0200
@@ -1,368 +1,622 @@
-Test Run By jkratoch on Fri Apr  1 07:18:37 2011
+Test Run By jkratoch on Fri Apr  1 07:20:27 2011
 Native configuration is i386-unknown-linux-gnu
 
 		=== gdb tests ===
 
 Schedule of variations:
     unix
 
 Running target unix
 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
 Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
 Using ./config/unix.exp as tool-and-target-specific interface file.
 Running ./gdb.python/py-prettyprint.exp ...
 spawn /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory
 GNU gdb (GDB) 7.2.50.20110331-cvs
 Copyright (C) 2011 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i386-unknown-linux-gnu".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 (gdb) set height 0
 (gdb) set width 0
 (gdb) python print 'test'
 test
 (gdb) Executing on host: gcc ./gdb.python/py-prettyprint.c  -g  -lm   -o /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint    (timeout = 300)
 spawn -ignore SIGHUP gcc ./gdb.python/py-prettyprint.c -g -lm -o /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint
 spawn /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory
 GNU gdb (GDB) 7.2.50.20110331-cvs
 Copyright (C) 2011 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i386-unknown-linux-gnu".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 (gdb) set height 0
 (gdb) set width 0
 (gdb) dir
 Reinitialize source path to empty? (y or n) y
 Source directories searched: $cdir:$cwd
 (gdb) dir ./gdb.python
 Source directories searched: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/./gdb.python:$cdir:$cwd
 (gdb) kill
 The program is not being run.
 (gdb) file /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint
 Reading symbols from /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint...done.
 (gdb) delete breakpoints
 (gdb) info breakpoints
 No breakpoints or watchpoints.
 (gdb) break main
-Breakpoint 1 at 0x8048501: file ./gdb.python/py-prettyprint.c, line 209.
+Breakpoint 1 at 0x8048505: file ./gdb.python/py-prettyprint.c, line 209.
 (gdb) run 
 Starting program: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint 
 
 Breakpoint 1, main () at ./gdb.python/py-prettyprint.c:209
 209	  string x = make_string ("this is x");
 (gdb) set print pretty on
 (gdb) PASS: gdb.python/py-prettyprint.exp: set print pretty on
-b 286
-Breakpoint 2 at 0x804865a: file ./gdb.python/py-prettyprint.c, line 286.
-(gdb) PASS: gdb.python/py-prettyprint.exp: b 286
+b 288
+Breakpoint 2 at 0x8048673: file ./gdb.python/py-prettyprint.c, line 288.
+(gdb) PASS: gdb.python/py-prettyprint.exp: b 288
 continue
 Continuing.
 
-Breakpoint 2, main () at ./gdb.python/py-prettyprint.c:286
-286	  return 0;      /* break to inspect struct and union */
+Breakpoint 2, main () at ./gdb.python/py-prettyprint.c:288
+288	  return 0;      /* break to inspect struct and union */
 (gdb) PASS: gdb.python/py-prettyprint.exp: continue
 python execfile ('py-prettyprint.py')
 (gdb) PASS: gdb.python/py-prettyprint.exp: python execfile ('py-prettyprint.py')
 print ss
-$1 = a=< a=<1> b=<0xffffcef8>> b=< a=<2> b=<0xffffcf00>>
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ss
+$1 = Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce54) != b(0xffffceec)
+Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce5c) != b(0xffffcf08)
+a=<> b=<>
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ss
 print ssa[1]
-$2 = a=< a=<5> b=<0xffffcee8>> b=< a=<6> b=<0xffffcef0>>
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ssa[1]
+$2 = Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce44) != b(0x804877c)
+Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce4c) != b(0xffffce60)
+a=<> b=<>
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ssa[1]
 print ssa
-$3 = {a=< a=<3> b=<0xffffced8>> b=< a=<4> b=<0xffffcee0>>, a=< a=<5> b=<0xffffcee8>> b=< a=<6> b=<0xffffcef0>>}
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ssa
+$3 = {Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce34) != b(0x804877c)
+Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce3c) != b(0x8048434)
+a=<> b=<>, Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce44) != b(0x804877c)
+Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce4c) != b(0xffffce60)
+a=<> b=<>}
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ssa
 print arraystruct
 $4 = {
-  y = 7, 
-  x = { a=<23> b=<0xffffcec8>,  a=<24> b=<0xffffced0>}
+  y = 1445368, 
+  x = {Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce24) != b(0x1308f8)
+, Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce2c) != b(0x0)
 }
-(gdb) PASS: gdb.python/py-prettyprint.exp: print arraystruct
+}
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print arraystruct
 print ns2
-$5 = <error reading variable: Address 0x0 out of bounds>
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ns2
+$5 = ""
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ns2
 print x
-$6 = "this is x"
-(gdb) PASS: gdb.python/py-prettyprint.exp: print x
+$6 = "symbol=%s;  lookup in file=%s [%lu]\n"
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print x
 print cstring
-$7 = "const string"
-(gdb) PASS: gdb.python/py-prettyprint.exp: print cstring
+$7 = 
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print cstring
 print estring
-$8 = "embedded x\201\202\203\204"
-(gdb) PASS: gdb.python/py-prettyprint.exp: print estring
+$8 = "\370\b\023"
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print estring
 python pp_ls_encoding = 'UTF-8'
 (gdb) PASS: gdb.python/py-prettyprint.exp: python pp_ls_encoding = 'UTF-8'
 print estring2
-$9 = "embedded ", <incomplete sequence \302>
-(gdb) PASS: gdb.python/py-prettyprint.exp: print estring2
+$9 =  <Address 0x2 out of bounds>
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print estring2
 print c
-$10 = container "container" with 2 elements = {
-  [0] = 23,
-  [1] = 72
+$10 = container  with 129100401 elements = {
+  [0] = 11492,
+  [1] = 103232,
+  [2] = 450,
+  [3] = 786450,
+  [4] = 1430,
+  [5] = 646912,
+  [6] = 7,
+  [7] = 786450,
+  [8] = 7803,
+  [9] = 414656,
+  [10] = 35,
+  [11] = 786466,
+  [12] = 2799,
+  [13] = 1175856,
+  [14] = 46,
+  [15] = 786450,
+  [16] = 5605,
+  [17] = 1071968,
+  [18] = 35,
+  [19] = 786450,
+  [20] = 2799,
+  [21] = 841232,
+  [22] = 84,
+  [23] = 786450,
+  [24] = 21691,
+  [25] = 924864,
+  [26] = 902,
+  [27] = 786450,
+  [28] = 2189,
+  [29] = 1072512,
+  [30] = 156,
+  [31] = 786450,
+  [32] = 3884,
+  [33] = 914320,
+  [34] = 155,
+  [35] = 786466,
+  [36] = 8818,
+  [37] = 1105232,
+  [38] = 126,
+  [39] = 786450,
+  [40] = 15009,
+  [41] = 658288,
+  [42] = 165,
+  [43] = 786450,
+  [44] = 19032,
+  [45] = 903936,
+  [46] = 104,
+  [47] = 786450,
+  [48] = 7045,
+  [49] = 868448,
+  [50] = 48,
+  [51] = 786450,
+  [52] = 13528,
+  [53] = 165520,
+  [54] = 21,
+  [55] = 786450,
+  [56] = 1109,
+  [57] = 418640,
+  [58] = 60,
+  [59] = 786450,
+  [60] = 8162,
+  [61] = 433440,
+  [62] = 179,
+  [63] = 786466,
+  [64] = 1652,
+  [65] = 1132800,
+  [66] = 103,
+  [67] = 786466,
+  [68] = 22390,
+  [69] = 1094608,
+  [70] = 169,
+  [71] = 786450,
+  [72] = 1905,
+  [73] = 852464,
+  [74] = 237,
+  [75] = 786450,
+  [76] = 9515,
+  [77] = 509920,
+  [78] = 65,
+  [79] = 786466,
+  [80] = 726,
+  [81] = 953232,
+  [82] = 57,
+  [83] = 786450,
+  [84] = 2477,
+  [85] = 660944,
+  [86] = 525,
+  [87] = 786466,
+  [88] = 8347,
+  [89] = 523104,
+  [90] = 3575,
+  [91] = 786450,
+  [92] = 11229,
+  [93] = 1132128,
+  [94] = 30,
+  [95] = 786450,
+  [96] = 15942,
+  [97] = 191232,
+  [98] = 122,
+  [99] = 786466,
+  [100] = 726,
+  [101] = 1176800,
+  [102] = 57,
+  [103] = 786450,
+  [104] = 16727,
+  [105] = 880064,
+  [106] = 81,
+  [107] = 786450,
+  [108] = 12113,
+  [109] = 661664,
+  [110] = 184,
+  [111] = 786466,
+  [112] = 4898,
+  [113] = 418400,
+  [114] = 48,
+  [115] = 786466,
+  [116] = 17147,
+  [117] = 1086240,
+  [118] = 362,
+  [119] = 786450,
+  [120] = 14730,
+  [121] = 206864,
+  [122] = 134,
+  [123] = 786466,
+  [124] = 10602,
+  [125] = 159408,
+  [126] = 126,
+  [127] = 786466,
+  [128] = 12101,
+  [129] = 861200,
+  [130] = 63,
+  [131] = 786450,
+  [132] = 16108,
+  [133] = 822208,
+  [134] = 176,
+  [135] = 786450,
+  [136] = 19050,
+  [137] = 109728,
+  [138] = 18,
+  [139] = 786450,
+  [140] = 20130,
+  [141] = 459904,
+  [142] = 127,
+  [143] = 786450,
+  [144] = 21831,
+  [145] = 1145104,
+  [146] = 161,
+  [147] = 786450,
+  [148] = 2978,
+  [149] = 404608,
+  [150] = 292,
+  [151] = 786450,
+  [152] = 13766,
+  [153] = 648624,
+  [154] = 389,
+  [155] = 786450,
+  [156] = 14449,
+  [157] = 988944,
+  [158] = 92,
+  [159] = 786450,
+  [160] = 10110,
+  [161] = 864320,
+  [162] = 61,
+  [163] = 786450,
+  [164] = 1383,
+  [165] = 830336,
+  [166] = 122,
+  [167] = 786466,
+  [168] = 16026,
+  [169] = 1008688,
+  [170] = 322,
+  [171] = 786450,
+  [172] = 17916,
+  [173] = 1041120,
+  [174] = 71,
+  [175] = 786450,
+  [176] = 21327,
+  [177] = 243936,
+  [178] = 44,
+  [179] = 786466,
+  [180] = 3540,
+  [181] = 1003744,
+  [182] = 154,
+  [183] = 786450,
+  [184] = 11543,
+  [185] = 1133680,
+  [186] = 103,
+  [187] = 786466,
+  [188] = 22223,
+  [189] = 542416,
+  [190] = 100,
+  [191] = 786466,
+  [192] = 7902,
+  [193] = 852864,
+  [194] = 568,
+  [195] = 786450,
+  [196] = 9973,
+  [197] = 832592,
+  [198] = 57,
+  [199] = 786450
+  ...
 }
-(gdb) PASS: gdb.python/py-prettyprint.exp: print c
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print c
 print nstype
 $11 = {
-  [0] = 7,
-  [1] = 42
-}
-(gdb) PASS: gdb.python/py-prettyprint.exp: print nstype
+  [0] = Cannot access memory at address 0x0
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print nstype
 set print pretty off
 (gdb) PASS: gdb.python/py-prettyprint.exp: set print pretty off
 print nstype
-$12 = {[0] = 7, [1] = 42}
-(gdb) PASS: gdb.python/py-prettyprint.exp: print nstype on one line
+$12 = {[0] = Cannot access memory at address 0x0
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print nstype on one line
 continue
 Continuing.
-[Inferior 1 (process 6947) exited normally]
+[Inferior 1 (process 26666) exited normally]
 (gdb) PASS: gdb.python/py-prettyprint.exp: continue until exit
 Executing on host: g++ ./gdb.python/py-prettyprint.c   -L/home/jkratoch/redhat/gdb-clean-m32/libiberty  -g  -lm   -o /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint    (timeout = 300)
 spawn -ignore SIGHUP g++ ./gdb.python/py-prettyprint.c -L/home/jkratoch/redhat/gdb-clean-m32/libiberty -g -lm -o /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint
 spawn /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory
 GNU gdb (GDB) 7.2.50.20110331-cvs
 Copyright (C) 2011 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i386-unknown-linux-gnu".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 (gdb) set height 0
 (gdb) set width 0
 (gdb) dir
 Reinitialize source path to empty? (y or n) y
 Source directories searched: $cdir:$cwd
 (gdb) dir ./gdb.python
 Source directories searched: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/./gdb.python:$cdir:$cwd
 (gdb) kill
 The program is not being run.
 (gdb) file /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint
 Reading symbols from /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint...done.
 (gdb) delete breakpoints
 (gdb) info breakpoints
 No breakpoints or watchpoints.
 (gdb) break main
 Breakpoint 1 at 0x8048604: file ./gdb.python/py-prettyprint.c, line 209.
 (gdb) run 
 Starting program: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint 
 
 Breakpoint 1, main () at ./gdb.python/py-prettyprint.c:209
 209	  string x = make_string ("this is x");
 (gdb) set print pretty on
 (gdb) PASS: gdb.python/py-prettyprint.exp: set print pretty on
-b 286
-Breakpoint 2 at 0x8048826: file ./gdb.python/py-prettyprint.c, line 286.
-(gdb) PASS: gdb.python/py-prettyprint.exp: b 286
+b 288
+Breakpoint 2 at 0x8048838: file ./gdb.python/py-prettyprint.c, line 288.
+(gdb) PASS: gdb.python/py-prettyprint.exp: b 288
 continue
 Continuing.
 
-Breakpoint 2, main () at ./gdb.python/py-prettyprint.c:286
-286	  return 0;      /* break to inspect struct and union */
+Breakpoint 2, main () at ./gdb.python/py-prettyprint.c:288
+288	  return 0;      /* break to inspect struct and union */
 (gdb) PASS: gdb.python/py-prettyprint.exp: continue
 python execfile ('py-prettyprint.py')
 (gdb) PASS: gdb.python/py-prettyprint.exp: python execfile ('py-prettyprint.py')
 print ss
 $1 = a=< a=<1> b=<0xffffcedc>> b=< a=<2> b=<0xffffcee4>>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ss
 print ssa[1]
-$2 = a=< a=<5> b=<0xffffce1c>> b=< a=<6> b=<0xffffce24>>
+$2 = a=< a=<5> b=<0xffffce14>> b=< a=<6> b=<0xffffce1c>>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ssa[1]
 print ssa
-$3 = {a=< a=<3> b=<0xffffce0c>> b=< a=<4> b=<0xffffce14>>, a=< a=<5> b=<0xffffce1c>> b=< a=<6> b=<0xffffce24>>}
+$3 = {a=< a=<3> b=<0xffffce04>> b=< a=<4> b=<0xffffce0c>>, a=< a=<5> b=<0xffffce14>> b=< a=<6> b=<0xffffce1c>>}
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ssa
 print arraystruct
 $4 = {
   y = 7, 
   x = { a=<23> b=<0xffffcecc>,  a=<24> b=<0xffffced4>}
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print arraystruct
 print cps
-$5 =  a=<8> b=<0xffffce78>
+$5 =  a=<8> b=<0xffffce70>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print cps
 print cpss
 $6 = {
   zss = 9, 
-  s =  a=<10> b=<0xffffce6c>
+  s =  a=<10> b=<0xffffce64>
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print cpss
 print cpssa[0]
 $7 = {
   zss = 11, 
-  s =  a=<12> b=<0xffffce30>
+  s =  a=<12> b=<0xffffce28>
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print cpssa[0]
 print cpssa[1]
 $8 = {
   zss = 13, 
-  s =  a=<14> b=<0xffffce40>
+  s =  a=<14> b=<0xffffce38>
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print cpssa[1]
 print cpssa
 $9 = {{
     zss = 11, 
-    s =  a=<12> b=<0xffffce30>
+    s =  a=<12> b=<0xffffce28>
   }, {
     zss = 13, 
-    s =  a=<14> b=<0xffffce40>
+    s =  a=<14> b=<0xffffce38>
   }}
 (gdb) PASS: gdb.python/py-prettyprint.exp: print cpssa
 print sss
-$10 = a=<15> b=< a=<8> b=<0xffffce78>>
+$10 = a=<15> b=< a=<8> b=<0xffffce70>>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print sss
 print ref
-$11 = a=<15> b=< a=<8> b=<0xffffce78>>
+$11 = a=<15> b=< a=<8> b=<0xffffce70>>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ref
 print derived
 $12 = {
   <Vbase1> = pp class name: Vbase1, 
   <Vbase2> = {
     <VirtualTest> = pp value variable is: 1, 
     members of Vbase2: 
-    _vptr.Vbase2 = 0x8048a78
+    _vptr.Vbase2 = 0x8048a98
   }, 
   <Vbase3> = {
     members of Vbase3: 
-    _vptr.Vbase3 = 0x8048a84
+    _vptr.Vbase3 = 0x8048aa4
   }, 
   members of Derived: 
   value = 2
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print derived
 print ns 
 $13 = "embedded\000null\000string"
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ns
 set print elements 3
 (gdb) PASS: gdb.python/py-prettyprint.exp:
 print ns
 $14 = "emb"...
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ns
 set print elements 10
 (gdb) PASS: gdb.python/py-prettyprint.exp:
 print ns
 $15 = "embedded\000n"...
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ns
 set print elements 200
 (gdb) PASS: gdb.python/py-prettyprint.exp:
 print ns2
 $16 = <error reading variable: Address 0x0 out of bounds>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print ns2
 print x
 $17 = "this is x"
 (gdb) PASS: gdb.python/py-prettyprint.exp: print x
 print cstring
 $18 = "const string"
 (gdb) PASS: gdb.python/py-prettyprint.exp: print cstring
 print estring
 $19 = "embedded x\201\202\203\204"
 (gdb) PASS: gdb.python/py-prettyprint.exp: print estring
 python pp_ls_encoding = 'UTF-8'
 (gdb) PASS: gdb.python/py-prettyprint.exp: python pp_ls_encoding = 'UTF-8'
 print estring2
 $20 = "embedded ", <incomplete sequence \302>
 (gdb) PASS: gdb.python/py-prettyprint.exp: print estring2
 print c
 $21 = container "container" with 2 elements = {
   [0] = 23,
   [1] = 72
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print c
 print nstype
 $22 = {
   [0] = 7,
   [1] = 42
 }
 (gdb) PASS: gdb.python/py-prettyprint.exp: print nstype
 set print pretty off
 (gdb) PASS: gdb.python/py-prettyprint.exp: set print pretty off
 print nstype
 $23 = {[0] = 7, [1] = 42}
 (gdb) PASS: gdb.python/py-prettyprint.exp: print nstype on one line
 continue
 Continuing.
-[Inferior 1 (process 7117) exited normally]
+[Inferior 1 (process 26695) exited normally]
 (gdb) PASS: gdb.python/py-prettyprint.exp: continue until exit
 Executing on host: gcc ./gdb.python/py-prettyprint.c  -g  -lm   -o /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint    (timeout = 300)
 spawn -ignore SIGHUP gcc ./gdb.python/py-prettyprint.c -g -lm -o /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint
 spawn /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory
 GNU gdb (GDB) 7.2.50.20110331-cvs
 Copyright (C) 2011 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i386-unknown-linux-gnu".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 (gdb) set height 0
 (gdb) set width 0
 (gdb) dir
 Reinitialize source path to empty? (y or n) y
 Source directories searched: $cdir:$cwd
 (gdb) dir ./gdb.python
 Source directories searched: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/./gdb.python:$cdir:$cwd
 (gdb) kill
 The program is not being run.
 (gdb) file /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint
 Reading symbols from /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint...done.
 (gdb) delete breakpoints
 (gdb) info breakpoints
 No breakpoints or watchpoints.
 (gdb) break main
-Breakpoint 1 at 0x8048501: file ./gdb.python/py-prettyprint.c, line 209.
+Breakpoint 1 at 0x8048505: file ./gdb.python/py-prettyprint.c, line 209.
 (gdb) run 
 Starting program: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/gdb.python/py-prettyprint 
 
 Breakpoint 1, main () at ./gdb.python/py-prettyprint.c:209
 209	  string x = make_string ("this is x");
-(gdb) b 286
-Breakpoint 2 at 0x804865a: file ./gdb.python/py-prettyprint.c, line 286.
-(gdb) PASS: gdb.python/py-prettyprint.exp: b 286
+(gdb) b 288
+Breakpoint 2 at 0x8048673: file ./gdb.python/py-prettyprint.c, line 288.
+(gdb) PASS: gdb.python/py-prettyprint.exp: b 288
 continue
 Continuing.
 
-Breakpoint 2, main () at ./gdb.python/py-prettyprint.c:286
-286	  return 0;      /* break to inspect struct and union */
+Breakpoint 2, main () at ./gdb.python/py-prettyprint.c:288
+288	  return 0;      /* break to inspect struct and union */
 (gdb) PASS: gdb.python/py-prettyprint.exp: continue
 python execfile ('py-prettyprint.py')
 (gdb) PASS: gdb.python/py-prettyprint.exp: python execfile ('py-prettyprint.py')
 print ss
-$1 = a=< a=<1> b=<0xffffcef8>> b=< a=<2> b=<0xffffcf00>>
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ss enabled #1
+$1 = Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce54) != b(0xffffceec)
+Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce5c) != b(0xffffcf08)
+a=<> b=<>
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ss enabled #1
 python disable_lookup_function ()
 (gdb) PASS: gdb.python/py-prettyprint.exp: python disable_lookup_function ()
 print ss
-$2 = {a = {a = 1, b = 0xffffcef8}, b = {a = 2, b = 0xffffcf00}}
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ss disabled
+$2 = {a = {a = 134513895, b = 0xffffceec}, b = {a = 6, b = 0xffffcf08}}
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ss disabled
 python enable_lookup_function ()
 (gdb) PASS: gdb.python/py-prettyprint.exp: python enable_lookup_function ()
 print ss
-$3 = a=< a=<1> b=<0xffffcef8>> b=< a=<2> b=<0xffffcf00>>
-(gdb) PASS: gdb.python/py-prettyprint.exp: print ss enabled #2
+$3 = Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce54) != b(0xffffceec)
+Traceback (most recent call last):
+  File "py-prettyprint.py", line 96, in to_string
+    raise Exception("&a(%s) != b(%s)" % (str(a.address), str(b)))
+Exception: &a(0xffffce5c) != b(0xffffcf08)
+a=<> b=<>
+(gdb) FAIL: gdb.python/py-prettyprint.exp: print ss enabled #2
 testcase ./gdb.python/py-prettyprint.exp completed in 1 seconds
 
 		=== gdb Summary ===
 
-# of expected passes		60
+# of expected passes		45
+# of unexpected failures	15
 Executing on host: /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory --version    (timeout = 300)
 spawn -ignore SIGHUP /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory --version
 GNU gdb (GDB) 7.2.50.20110331-cvs
 Copyright (C) 2011 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i386-unknown-linux-gnu".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../../gdb/gdb version  7.2.50.20110331-cvs -nw -nx -data-directory /home/jkratoch/redhat/gdb-clean-m32/gdb/testsuite/../data-directory 
 
-runtest completed at Fri Apr  1 07:18:38 2011
+runtest completed at Fri Apr  1 07:20:28 2011



More information about the Gdb-patches mailing list