blob: c552132c4de507a1dad6d86d34be1b0f024f951a [file]
// This test makes sure that the LLDB pretty printer does not throw an exception
// when trying to handle a Vec<> or anything else that contains zero-sized
// fields.
//@ ignore-gdb
//@ compile-flags:-g
//@ disable-gdb-pretty-printers
// === LLDB TESTS ==================================================================================
//@ lldb-command:run
//@ lldb-command:v v
//@ lldb-check:[...] size=3 { [0] = 1 [1] = 2 [2] = 3 }
//@ lldb-command:v zs
//@ lldb-check:[...] {x:{}, y:123, z:{}, w:456}
#![allow(unused_variables)]
#![allow(dead_code)]
struct ZeroSizedStruct;
struct StructWithZeroSizedField {
x: ZeroSizedStruct,
y: u32,
z: ZeroSizedStruct,
w: u64
}
fn main() {
let v = vec![1,2,3];
let zs = StructWithZeroSizedField {
x: ZeroSizedStruct,
y: 123,
z: ZeroSizedStruct,
w: 456
};
zzz(); // #break
}
fn zzz() { () }