|
1 # Test printing roots that refer to NULL pointers. |
|
2 |
|
3 # Since mozilla.prettyprinters.Pointer declines to create pretty-printers |
|
4 # for null pointers, GDB built-in printing code ends up handling them. But |
|
5 # as of 2012-11, GDB suppresses printing pointers in replacement values: |
|
6 # see: http://sourceware.org/ml/gdb/2012-11/msg00055.html |
|
7 # |
|
8 # Thus, if the pretty-printer for JS::Rooted simply returns the referent as |
|
9 # a replacement value (which seems reasonable enough, if you want the |
|
10 # pretty-printer to be completely transparent), and the referent is a null |
|
11 # pointer, it prints as nothing at all. |
|
12 # |
|
13 # This test ensures that the JS::Rooted pretty-printer doesn't make that |
|
14 # mistake. |
|
15 |
|
16 gdb.execute('set print address on') |
|
17 |
|
18 run_fragment('Root.null') |
|
19 |
|
20 assert_pretty('null', '0x0') |