2018-10-12 07:34:14 -06:00
|
|
|
// Some versions of the non-rust-enabled LLDB print the wrong generic
|
|
|
|
// parameter type names in this test.
|
|
|
|
// rust-lldb
|
2013-11-04 15:53:01 +09:00
|
|
|
|
2014-02-06 19:57:09 -08:00
|
|
|
// compile-flags:-g
|
2014-07-09 14:46:09 +02:00
|
|
|
|
|
|
|
// === GDB TESTS ===================================================================================
|
|
|
|
|
2014-04-24 11:35:48 +02:00
|
|
|
// gdb-command:run
|
|
|
|
|
|
|
|
// gdb-command:print int_int
|
2016-10-25 23:32:04 +02:00
|
|
|
// gdbg-check:$1 = {key = 0, value = 1}
|
|
|
|
// gdbr-check:$1 = generic_struct::AGenericStruct<i32, i32> {key: 0, value: 1}
|
2014-04-24 11:35:48 +02:00
|
|
|
// gdb-command:print int_float
|
2016-10-25 23:32:04 +02:00
|
|
|
// gdbg-check:$2 = {key = 2, value = 3.5}
|
|
|
|
// gdbr-check:$2 = generic_struct::AGenericStruct<i32, f64> {key: 2, value: 3.5}
|
2014-04-24 11:35:48 +02:00
|
|
|
// gdb-command:print float_int
|
2016-10-25 23:32:04 +02:00
|
|
|
// gdbg-check:$3 = {key = 4.5, value = 5}
|
|
|
|
// gdbr-check:$3 = generic_struct::AGenericStruct<f64, i32> {key: 4.5, value: 5}
|
2014-04-24 11:35:48 +02:00
|
|
|
// gdb-command:print float_int_float
|
2016-10-25 23:32:04 +02:00
|
|
|
// gdbg-check:$4 = {key = 6.5, value = {key = 7, value = 8.5}}
|
|
|
|
// gdbr-check:$4 = generic_struct::AGenericStruct<f64, generic_struct::AGenericStruct<i32, f64>> {key: 6.5, value: generic_struct::AGenericStruct<i32, f64> {key: 7, value: 8.5}}
|
2013-08-13 16:31:42 +02:00
|
|
|
|
2014-07-09 14:46:09 +02:00
|
|
|
// === LLDB TESTS ==================================================================================
|
|
|
|
|
|
|
|
// lldb-command:run
|
|
|
|
|
|
|
|
// lldb-command:print int_int
|
2018-10-02 10:13:30 -06:00
|
|
|
// lldbg-check:[...]$0 = AGenericStruct<i32, i32> { key: 0, value: 1 }
|
|
|
|
// lldbr-check:(generic_struct::AGenericStruct<i32, i32>) int_int = AGenericStruct<i32, i32> { key: 0, value: 1 }
|
2014-07-09 14:46:09 +02:00
|
|
|
// lldb-command:print int_float
|
2018-10-02 10:13:30 -06:00
|
|
|
// lldbg-check:[...]$1 = AGenericStruct<i32, f64> { key: 2, value: 3.5 }
|
|
|
|
// lldbr-check:(generic_struct::AGenericStruct<i32, f64>) int_float = AGenericStruct<i32, f64> { key: 2, value: 3.5 }
|
2014-07-09 14:46:09 +02:00
|
|
|
// lldb-command:print float_int
|
2018-10-02 10:13:30 -06:00
|
|
|
// lldbg-check:[...]$2 = AGenericStruct<f64, i32> { key: 4.5, value: 5 }
|
|
|
|
// lldbr-check:(generic_struct::AGenericStruct<f64, i32>) float_int = AGenericStruct<f64, i32> { key: 4.5, value: 5 }
|
2014-07-09 14:46:09 +02:00
|
|
|
|
|
|
|
// lldb-command:print float_int_float
|
2018-10-02 10:13:30 -06:00
|
|
|
// lldbg-check:[...]$3 = AGenericStruct<f64, generic_struct::AGenericStruct<i32, f64>> { key: 6.5, value: AGenericStruct<i32, f64> { key: 7, value: 8.5 } }
|
|
|
|
// lldbr-check:(generic_struct::AGenericStruct<f64, generic_struct::AGenericStruct<i32, f64>>) float_int_float = AGenericStruct<f64, generic_struct::AGenericStruct<i32, f64>> { key: 6.5, value: AGenericStruct<i32, f64> { key: 7, value: 8.5 } }
|
2014-07-09 14:46:09 +02:00
|
|
|
|
2014-12-03 14:48:18 -08:00
|
|
|
|
2015-09-19 16:33:47 -04:00
|
|
|
#![feature(omit_gdb_pretty_printer_section)]
|
2014-12-03 14:48:18 -08:00
|
|
|
#![omit_gdb_pretty_printer_section]
|
|
|
|
|
2013-08-13 16:31:42 +02:00
|
|
|
struct AGenericStruct<TKey, TValue> {
|
|
|
|
key: TKey,
|
|
|
|
value: TValue
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
|
2015-01-25 22:05:03 +01:00
|
|
|
let int_int = AGenericStruct { key: 0, value: 1 };
|
|
|
|
let int_float = AGenericStruct { key: 2, value: 3.5f64 };
|
|
|
|
let float_int = AGenericStruct { key: 4.5f64, value: 5 };
|
2014-06-27 12:30:25 -07:00
|
|
|
let float_int_float = AGenericStruct {
|
|
|
|
key: 6.5f64,
|
2015-01-25 22:05:03 +01:00
|
|
|
value: AGenericStruct { key: 7, value: 8.5f64 },
|
2014-06-27 12:30:25 -07:00
|
|
|
};
|
2013-08-13 16:31:42 +02:00
|
|
|
|
2014-07-09 14:46:09 +02:00
|
|
|
zzz(); // #break
|
2013-08-13 16:31:42 +02:00
|
|
|
}
|
|
|
|
|
2014-07-09 14:46:09 +02:00
|
|
|
fn zzz() { () }
|