| // Regression test for #24356 | |
| fn main() { | |
| { | |
| use std::ops::Deref; | |
| struct Thing(i8); | |
| /* | |
| // Correct impl | |
| impl Deref for Thing { | |
| type Target = i8; | |
| fn deref(&self) -> &i8 { &self.0 } | |
| } | |
| */ | |
| // Causes ICE | |
| impl Deref for Thing { | |
| //~^ ERROR E0046 | |
| fn deref(&self) -> i8 { self.0 } | |
| } | |
| let thing = Thing(72); | |
| *thing | |
| }; | |
| } |