]> git.lizzy.rs Git - rust.git/blob - src/test/debuginfo/unsized.rs
Pin panic-in-drop=abort test to old pass manager
[rust.git] / src / test / debuginfo / unsized.rs
1 // compile-flags:-g
2
3 // === GDB TESTS ===================================================================================
4
5 // gdb-command:run
6
7 // gdb-command:print *a
8 // gdbg-check:$1 = {value = [...] "abc"}
9 // gdbr-check:$1 = unsized::Foo<[u8]> {value: [...]}
10
11 // gdb-command:print *b
12 // gdbg-check:$2 = {value = {value = [...] "abc"}}
13 // gdbr-check:$2 = unsized::Foo<unsized::Foo<[u8]>> {value: unsized::Foo<[u8]> {value: [...]}}
14
15
16 #![feature(omit_gdb_pretty_printer_section)]
17 #![omit_gdb_pretty_printer_section]
18
19 struct Foo<T: ?Sized> {
20     value: T
21 }
22
23 fn main() {
24     let foo: Foo<Foo<[u8; 4]>> = Foo {
25         value: Foo {
26             value: *b"abc\0"
27         }
28     };
29     let a: &Foo<[u8]> = &foo.value;
30     let b: &Foo<Foo<[u8]>> = &foo;
31
32     zzz(); // #break
33 }
34
35 fn zzz() { () }