2014-10-09 09:31:03 -05:00
|
|
|
// min-lldb-version: 310
|
2013-08-05 04:12:40 -05:00
|
|
|
|
2014-02-06 21:57:09 -06:00
|
|
|
// compile-flags:-g
|
2014-07-09 07:46:09 -05:00
|
|
|
|
|
|
|
// === GDB TESTS ===================================================================================
|
|
|
|
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:run
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// BEFORE if
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$1 = 999
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$2 = -1
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// AT BEGINNING of 'then' block
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$3 = 999
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$4 = -1
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// AFTER 1st redeclaration of 'x'
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$5 = 1001
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$6 = -1
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// AFTER 2st redeclaration of 'x'
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$7 = 1002
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$8 = 1003
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// AFTER 1st if expression
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$9 = 999
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$10 = -1
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// BEGINNING of else branch
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$11 = 999
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$12 = -1
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// BEGINNING of else branch
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$13 = 1004
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$14 = 1005
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
|
|
|
// BEGINNING of else branch
|
2014-04-24 04:35:48 -05:00
|
|
|
// gdb-command:print x
|
|
|
|
// gdb-check:$15 = 999
|
|
|
|
// gdb-command:print y
|
|
|
|
// gdb-check:$16 = -1
|
|
|
|
// gdb-command:continue
|
2013-08-05 04:12:40 -05:00
|
|
|
|
2014-07-09 07:46:09 -05:00
|
|
|
|
|
|
|
// === LLDB TESTS ==================================================================================
|
|
|
|
|
|
|
|
// lldb-command:run
|
|
|
|
|
|
|
|
// BEFORE if
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$0 = 999
|
|
|
|
// lldbr-check:(i32) x = 999
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$1 = -1
|
|
|
|
// lldbr-check:(i32) y = -1
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// AT BEGINNING of 'then' block
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$2 = 999
|
|
|
|
// lldbr-check:(i32) x = 999
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$3 = -1
|
|
|
|
// lldbr-check:(i32) y = -1
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// AFTER 1st redeclaration of 'x'
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$4 = 1001
|
|
|
|
// lldbr-check:(i32) x = 1001
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$5 = -1
|
|
|
|
// lldbr-check:(i32) y = -1
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// AFTER 2st redeclaration of 'x'
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$6 = 1002
|
|
|
|
// lldbr-check:(i32) x = 1002
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$7 = 1003
|
|
|
|
// lldbr-check:(i32) y = 1003
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// AFTER 1st if expression
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$8 = 999
|
|
|
|
// lldbr-check:(i32) x = 999
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$9 = -1
|
|
|
|
// lldbr-check:(i32) y = -1
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// BEGINNING of else branch
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$10 = 999
|
|
|
|
// lldbr-check:(i32) x = 999
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$11 = -1
|
|
|
|
// lldbr-check:(i32) y = -1
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// BEGINNING of else branch
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$12 = 1004
|
|
|
|
// lldbr-check:(i32) x = 1004
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$13 = 1005
|
|
|
|
// lldbr-check:(i32) y = 1005
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
|
|
|
// BEGINNING of else branch
|
|
|
|
// lldb-command:print x
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$14 = 999
|
|
|
|
// lldbr-check:(i32) x = 999
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:print y
|
2018-10-02 11:13:30 -05:00
|
|
|
// lldbg-check:[...]$15 = -1
|
|
|
|
// lldbr-check:(i32) y = -1
|
2014-07-09 07:46:09 -05:00
|
|
|
// lldb-command:continue
|
|
|
|
|
2015-09-19 15:33:47 -05:00
|
|
|
#![feature(omit_gdb_pretty_printer_section)]
|
2014-12-03 16:48:18 -06:00
|
|
|
#![omit_gdb_pretty_printer_section]
|
2014-07-09 07:46:09 -05:00
|
|
|
|
2013-08-05 04:12:40 -05:00
|
|
|
fn main() {
|
|
|
|
|
2015-01-25 15:05:03 -06:00
|
|
|
let x = 999;
|
|
|
|
let y = -1;
|
2013-08-05 04:12:40 -05:00
|
|
|
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
|
|
|
|
if x < 1000 {
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
|
2015-01-25 15:05:03 -06:00
|
|
|
let x = 1001;
|
2013-08-05 04:12:40 -05:00
|
|
|
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
|
2015-01-25 15:05:03 -06:00
|
|
|
let x = 1002;
|
|
|
|
let y = 1003;
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
} else {
|
2013-09-19 00:04:03 -05:00
|
|
|
unreachable!();
|
2013-08-05 04:12:40 -05:00
|
|
|
}
|
|
|
|
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
|
|
|
|
if x > 1000 {
|
2013-09-19 00:04:03 -05:00
|
|
|
unreachable!();
|
2013-08-05 04:12:40 -05:00
|
|
|
} else {
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
|
2015-01-25 15:05:03 -06:00
|
|
|
let x = 1004;
|
|
|
|
let y = 1005;
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
}
|
|
|
|
|
2014-07-09 07:46:09 -05:00
|
|
|
zzz(); // #break
|
2013-08-05 04:12:40 -05:00
|
|
|
sentinel();
|
|
|
|
}
|
|
|
|
|
|
|
|
fn zzz() {()}
|
|
|
|
fn sentinel() {()}
|