]> git.lizzy.rs Git - rust.git/blob - src/test/debuginfo/extern-c-fn.rs
5043e7d9b8af397c2a4561bd91f14795b380ce46
[rust.git] / src / test / debuginfo / extern-c-fn.rs
1 // min-lldb-version: 310
2
3 // compile-flags:-g
4
5 // === GDB TESTS ===================================================================================
6 // gdb-command:run
7
8 // gdb-command:print s
9 // gdbg-check:$1 = [...]"abcd"
10 // gdbr-check:$1 = [...]"abcd\000"
11 // gdb-command:print len
12 // gdb-check:$2 = 20
13 // gdb-command:print local0
14 // gdb-check:$3 = 19
15 // gdb-command:print local1
16 // gdb-check:$4 = true
17 // gdb-command:print local2
18 // gdb-check:$5 = 20.5
19
20 // gdb-command:continue
21
22 // === LLDB TESTS ==================================================================================
23 // lldb-command:run
24
25 // lldb-command:print len
26 // lldbg-check:[...]$0 = 20
27 // lldbr-check:(i32) len = 20
28 // lldb-command:print local0
29 // lldbg-check:[...]$1 = 19
30 // lldbr-check:(i32) local0 = 19
31 // lldb-command:print local1
32 // lldbg-check:[...]$2 = true
33 // lldbr-check:(bool) local1 = true
34 // lldb-command:print local2
35 // lldbg-check:[...]$3 = 20.5
36 // lldbr-check:(f64) local2 = 20.5
37
38 // lldb-command:continue
39
40 #![allow(unused_variables)]
41 #![allow(dead_code)]
42 #![feature(omit_gdb_pretty_printer_section)]
43 #![omit_gdb_pretty_printer_section]
44
45
46 #[no_mangle]
47 pub unsafe extern "C" fn fn_with_c_abi(s: *const u8, len: i32) -> i32 {
48     let local0 = len - 1;
49     let local1 = len > 2;
50     let local2 = (len as f64) + 0.5;
51
52     zzz(); // #break
53
54     return 0;
55 }
56
57 fn main() {
58     unsafe {
59         fn_with_c_abi(b"abcd\0".as_ptr(), 20);
60     }
61 }
62
63 #[inline(never)]
64 fn zzz() {()}