]> git.lizzy.rs Git - rust.git/blob - tests/ui/dyn-star/issue-102430.rs
Don't resolve type var roots in point_at_expr_source_of_inferred_type
[rust.git] / tests / ui / dyn-star / issue-102430.rs
1 // check-pass
2
3 #![feature(dyn_star)]
4 #![allow(incomplete_features)]
5
6 trait AddOne {
7     fn add1(&mut self) -> usize;
8 }
9
10 impl AddOne for usize {
11     fn add1(&mut self) -> usize {
12         *self += 1;
13         *self
14     }
15 }
16
17 impl AddOne for &mut usize {
18     fn add1(&mut self) -> usize {
19         (*self).add1()
20     }
21 }
22
23 fn add_one(mut i: dyn* AddOne + '_) -> usize {
24     i.add1()
25 }
26
27 fn main() {
28     let mut x = 42usize;
29     let y = &mut x as (dyn* AddOne + '_);
30
31     println!("{}", add_one(y));
32 }