]> git.proxmox.com Git - rustc.git/blame - src/test/debuginfo/self-in-generic-default-method.rs
Update unsuspicious file list
[rustc.git] / src / test / debuginfo / self-in-generic-default-method.rs
CommitLineData
1a4d82fc
JJ
1// min-lldb-version: 310
2
3// compile-flags:-g
4
5// === GDB TESTS ===================================================================================
6
7// gdb-command:run
8
9// STACK BY REF
10// gdb-command:print *self
c30ab7b3
SL
11// gdbg-check:$1 = {x = 987}
12// gdbr-check:$1 = self_in_generic_default_method::Struct {x: 987}
1a4d82fc
JJ
13// gdb-command:print arg1
14// gdb-check:$2 = -1
15// gdb-command:print arg2
16// gdb-check:$3 = 2
17// gdb-command:continue
18
19// STACK BY VAL
20// gdb-command:print self
c30ab7b3
SL
21// gdbg-check:$4 = {x = 987}
22// gdbr-check:$4 = self_in_generic_default_method::Struct {x: 987}
1a4d82fc
JJ
23// gdb-command:print arg1
24// gdb-check:$5 = -3
25// gdb-command:print arg2
26// gdb-check:$6 = -4
27// gdb-command:continue
28
29// OWNED BY REF
30// gdb-command:print *self
c30ab7b3
SL
31// gdbg-check:$7 = {x = 879}
32// gdbr-check:$7 = self_in_generic_default_method::Struct {x: 879}
1a4d82fc
JJ
33// gdb-command:print arg1
34// gdb-check:$8 = -5
35// gdb-command:print arg2
36// gdb-check:$9 = -6
37// gdb-command:continue
38
39// OWNED BY VAL
40// gdb-command:print self
c30ab7b3
SL
41// gdbg-check:$10 = {x = 879}
42// gdbr-check:$10 = self_in_generic_default_method::Struct {x: 879}
1a4d82fc
JJ
43// gdb-command:print arg1
44// gdb-check:$11 = -7
45// gdb-command:print arg2
46// gdb-check:$12 = -8
47// gdb-command:continue
48
49// OWNED MOVED
50// gdb-command:print *self
c30ab7b3
SL
51// gdbg-check:$13 = {x = 879}
52// gdbr-check:$13 = self_in_generic_default_method::Struct {x: 879}
1a4d82fc
JJ
53// gdb-command:print arg1
54// gdb-check:$14 = -9
55// gdb-command:print arg2
56// gdb-check:$15 = -10.5
57// gdb-command:continue
58
59
60// === LLDB TESTS ==================================================================================
61
62// lldb-command:run
63
64// STACK BY REF
65// lldb-command:print *self
f035d41b 66// lldbg-check:[...]$0 = { x = 987 }
0bf4aa26 67// lldbr-check:(self_in_generic_default_method::Struct) *self = Struct { x: 987 }
1a4d82fc 68// lldb-command:print arg1
0bf4aa26
XL
69// lldbg-check:[...]$1 = -1
70// lldbr-check:(isize) arg1 = -1
1a4d82fc 71// lldb-command:print arg2
0bf4aa26
XL
72// lldbg-check:[...]$2 = 2
73// lldbr-check:(u16) arg2 = 2
1a4d82fc
JJ
74// lldb-command:continue
75
76// STACK BY VAL
77// lldb-command:print self
f035d41b 78// lldbg-check:[...]$3 = { x = 987 }
0bf4aa26 79// lldbr-check:(self_in_generic_default_method::Struct) self = Struct { x: 987 }
1a4d82fc 80// lldb-command:print arg1
0bf4aa26
XL
81// lldbg-check:[...]$4 = -3
82// lldbr-check:(isize) arg1 = -3
1a4d82fc 83// lldb-command:print arg2
0bf4aa26
XL
84// lldbg-check:[...]$5 = -4
85// lldbr-check:(i16) arg2 = -4
1a4d82fc
JJ
86// lldb-command:continue
87
88// OWNED BY REF
89// lldb-command:print *self
f035d41b 90// lldbg-check:[...]$6 = { x = 879 }
0bf4aa26 91// lldbr-check:(self_in_generic_default_method::Struct) *self = Struct { x: 879 }
1a4d82fc 92// lldb-command:print arg1
0bf4aa26
XL
93// lldbg-check:[...]$7 = -5
94// lldbr-check:(isize) arg1 = -5
1a4d82fc 95// lldb-command:print arg2
0bf4aa26
XL
96// lldbg-check:[...]$8 = -6
97// lldbr-check:(i32) arg2 = -6
1a4d82fc
JJ
98// lldb-command:continue
99
100// OWNED BY VAL
101// lldb-command:print self
f035d41b 102// lldbg-check:[...]$9 = { x = 879 }
0bf4aa26 103// lldbr-check:(self_in_generic_default_method::Struct) self = Struct { x: 879 }
1a4d82fc 104// lldb-command:print arg1
0bf4aa26
XL
105// lldbg-check:[...]$10 = -7
106// lldbr-check:(isize) arg1 = -7
1a4d82fc 107// lldb-command:print arg2
0bf4aa26
XL
108// lldbg-check:[...]$11 = -8
109// lldbr-check:(i64) arg2 = -8
1a4d82fc
JJ
110// lldb-command:continue
111
112// OWNED MOVED
113// lldb-command:print *self
f035d41b 114// lldbg-check:[...]$12 = { x = 879 }
0bf4aa26 115// lldbr-check:(self_in_generic_default_method::Struct) *self = Struct { x: 879 }
1a4d82fc 116// lldb-command:print arg1
0bf4aa26
XL
117// lldbg-check:[...]$13 = -9
118// lldbr-check:(isize) arg1 = -9
1a4d82fc 119// lldb-command:print arg2
0bf4aa26
XL
120// lldbg-check:[...]$14 = -10.5
121// lldbr-check:(f32) arg2 = -10.5
1a4d82fc
JJ
122// lldb-command:continue
123
b039eaaf 124#![feature(omit_gdb_pretty_printer_section)]
1a4d82fc
JJ
125#![omit_gdb_pretty_printer_section]
126
c34b1796 127#[derive(Copy, Clone)]
1a4d82fc 128struct Struct {
c34b1796 129 x: isize
1a4d82fc
JJ
130}
131
132trait Trait : Sized {
133
c34b1796 134 fn self_by_ref<T>(&self, arg1: isize, arg2: T) -> isize {
1a4d82fc
JJ
135 zzz(); // #break
136 arg1
137 }
138
c34b1796 139 fn self_by_val<T>(self, arg1: isize, arg2: T) -> isize {
1a4d82fc
JJ
140 zzz(); // #break
141 arg1
142 }
143
c34b1796 144 fn self_owned<T>(self: Box<Self>, arg1: isize, arg2: T) -> isize {
1a4d82fc
JJ
145 zzz(); // #break
146 arg1
147 }
148}
149
150impl Trait for Struct {}
151
152fn main() {
153 let stack = Struct { x: 987 };
154 let _ = stack.self_by_ref(-1, 2_u16);
155 let _ = stack.self_by_val(-3, -4_i16);
156
c295e0f8 157 let owned: Box<_> = Box::new(Struct { x: 879 });
1a4d82fc
JJ
158 let _ = owned.self_by_ref(-5, -6_i32);
159 let _ = owned.self_by_val(-7, -8_i64);
160 let _ = owned.self_owned(-9, -10.5_f32);
161}
162
163fn zzz() {()}