diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/compile-fail/intrinsic-return-address.rs | 24 | ||||
| -rw-r--r-- | src/test/run-pass/intrinsic-return-address.rs | 43 |
2 files changed, 0 insertions, 67 deletions
diff --git a/src/test/compile-fail/intrinsic-return-address.rs b/src/test/compile-fail/intrinsic-return-address.rs deleted file mode 100644 index 906056896be..00000000000 --- a/src/test/compile-fail/intrinsic-return-address.rs +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright 2014 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or -// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license -// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - -#![allow(warnings)] -#![feature(intrinsics)] - -extern "rust-intrinsic" { - fn return_address() -> *const u8; -} - -unsafe fn f() { let _ = return_address(); } -//~^ ERROR invalid use of `return_address` intrinsic: function does not use out pointer - -unsafe fn g() -> isize { let _ = return_address(); 0 } -//~^ ERROR invalid use of `return_address` intrinsic: function does not use out pointer - -fn main() {} diff --git a/src/test/run-pass/intrinsic-return-address.rs b/src/test/run-pass/intrinsic-return-address.rs deleted file mode 100644 index 63aed3f009f..00000000000 --- a/src/test/run-pass/intrinsic-return-address.rs +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2012-2014 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or -// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license -// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - - -#![feature(intrinsics)] - -use std::ptr; - -struct Point { - x: f32, - y: f32, - z: f32, -} - -extern "rust-intrinsic" { - fn return_address() -> *const u8; -} - -fn f(result: &mut usize) -> Point { - unsafe { - *result = return_address() as usize; - Point { - x: 1.0, - y: 2.0, - z: 3.0, - } - } - -} - -fn main() { - let mut intrinsic_reported_address = 0; - let pt = f(&mut intrinsic_reported_address); - let actual_address = &pt as *const Point as usize; - assert_eq!(intrinsic_reported_address, actual_address); -} |
