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