Replace old GDB and LLDB pretty-printers with new ones which were originally written for IntelliJ Rust. New LLDB pretty-printers support synthetic children. New GDB/LLDB pretty-printers support all Rust types supported by old pretty-printers, and also support: Rc, Arc, Cell, Ref, RefCell, RefMut, HashMap, HashSet.
30 lines
702 B
Rust
30 lines
702 B
Rust
// ignore-windows failing on win32 bot
|
|
// ignore-freebsd: gdb package too new
|
|
// ignore-android: FIXME(#10381)
|
|
// compile-flags:-g
|
|
// min-gdb-version 8.1
|
|
// min-lldb-version: 310
|
|
|
|
// === GDB TESTS ===================================================================================
|
|
|
|
// gdb-command: run
|
|
|
|
// gdb-command: print vec
|
|
// gdb-check:$1 = Vec(size=1000000000) = {[...]...}
|
|
|
|
// gdb-command: print slice
|
|
// gdb-check:$2 = &[u8] {data_ptr: [...]"\000", length: 1000000000}
|
|
|
|
#![allow(unused_variables)]
|
|
|
|
fn main() {
|
|
|
|
// Vec
|
|
let mut vec: Vec<u8> = Vec::with_capacity(1_000_000_000);
|
|
unsafe{ vec.set_len(1_000_000_000) }
|
|
let slice = &vec[..];
|
|
|
|
zzz(); // #break
|
|
}
|
|
|
|
fn zzz() { () }
|