mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-25 00:03:43 +00:00
b8e90766b5
Signed-off-by: Yuki Okushi <jtitor@2k36.org>
23 lines
450 B
Rust
23 lines
450 B
Rust
// 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,
|
|
}
|
|
}
|
|
}
|