| #![feature(never_type)] | |
| #![allow(unused_variables)] | |
| #![deny(unreachable_code)] | |
| use std::ops; | |
| struct Foo; | |
| impl ops::Add<!> for Foo { | |
| type Output = !; | |
| fn add(self, rhs: !) -> ! { | |
| unimplemented!() | |
| } | |
| } | |
| fn main() { | |
| let x = Foo + return; //~ ERROR unreachable | |
| } |