1 // min-lldb-version: 310
5 // === GDB TESTS ===================================================================================
10 // gdb-command:print c
12 // gdb-command:print d
14 // gdb-command:continue
15 // gdb-command:print a
17 // gdb-command:print c
19 // gdb-command:print e
21 // gdb-command:continue
22 // gdb-command:print a
24 // gdb-command:print c
27 // === LLDB TESTS ==================================================================================
30 // lldb-command:print a
31 // lldbg-check:(int) $0 = 5
32 // lldbr-check:(int) a = 5
33 // lldb-command:print c
34 // lldbg-check:(int) $1 = 6
35 // lldbr-check:(int) c = 6
36 // lldb-command:print d
37 // lldbg-check:(int) $2 = 7
38 // lldbr-check:(int) d = 7
39 // lldb-command:continue
40 // lldb-command:print a
41 // lldbg-check:(int) $3 = 7
42 // lldbr-check:(int) a = 7
43 // lldb-command:print c
44 // lldbg-check:(int) $4 = 6
45 // lldbr-check:(int) c = 6
46 // lldb-command:print e
47 // lldbg-check:(int) $5 = 8
48 // lldbr-check:(int) e = 8
49 // lldb-command:continue
50 // lldb-command:print a
51 // lldbg-check:(int) $6 = 8
52 // lldbr-check:(int) a = 8
53 // lldb-command:print c
54 // lldbg-check:(int) $7 = 6
55 // lldbr-check:(int) c = 6
57 #![feature(omit_gdb_pretty_printer_section, generators, generator_trait)]
58 #![omit_gdb_pretty_printer_section]
60 use std::ops::Generator;
66 let c = 6; // Live across multiple yield points
68 let d = 7; // Live across only one yield point
73 let e = 8; // Live across zero yield points
81 Pin::new(&mut b).resume(());
82 Pin::new(&mut b).resume(());
83 Pin::new(&mut b).resume(());