rust/src/test/ui/traits/trait-safety-fn-body.rs

17 lines
362 B
Rust
Raw Normal View History

2014-12-10 09:59:20 -06:00
// Check that an unsafe impl does not imply that unsafe actions are
// legal in the methods.
2014-12-19 05:54:09 -06:00
unsafe trait UnsafeTrait : Sized {
2014-12-10 09:59:20 -06:00
fn foo(self) { }
}
unsafe impl UnsafeTrait for *mut isize {
2014-12-10 09:59:20 -06:00
fn foo(self) {
// Unsafe actions are not made legal by taking place in an unsafe trait:
2016-08-10 02:29:45 -05:00
*self += 1;
//~^ ERROR E0133
2014-12-10 09:59:20 -06:00
}
}
fn main() { }