31 lines
464 B
Rust
31 lines
464 B
Rust
|
// build-pass
|
||
|
// compile-flags:-Copt-level=0
|
||
|
// edition:2018
|
||
|
|
||
|
struct S<T>(std::marker::PhantomData<T>);
|
||
|
|
||
|
impl<T> std::ops::Deref for S<T> {
|
||
|
type Target = T;
|
||
|
|
||
|
fn deref(&self) -> &Self::Target {
|
||
|
todo!()
|
||
|
}
|
||
|
}
|
||
|
impl<T> std::ops::DerefMut for S<T> {
|
||
|
fn deref_mut(&mut self) -> &mut Self::Target {
|
||
|
todo!()
|
||
|
}
|
||
|
}
|
||
|
|
||
|
async fn new() -> S<u64> {
|
||
|
todo!()
|
||
|
}
|
||
|
|
||
|
async fn crash() {
|
||
|
*new().await = 1 + 1;
|
||
|
}
|
||
|
|
||
|
fn main() {
|
||
|
let _ = crash();
|
||
|
}
|