blob: b5f1e7f7449a22eeb73d479c4b708d166acd4add (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// compile-flags: --crate-type=lib -Zmir-opt-level=2
// build-pass
// ^-- Must be build-pass, because check-pass will not run const prop.
pub trait TestTrait {
type MyType;
fn func() -> Option<Self>
where
Self: Sized;
}
impl<T> dyn TestTrait<MyType = T>
where
Self: Sized,
{
pub fn other_func() -> Option<Self> {
match Self::func() {
Some(me) => Some(me),
None => None,
}
}
}
|