diff options
| author | Eduard Burtescu <edy.burt@gmail.com> | 2016-03-06 14:17:53 +0200 |
|---|---|---|
| committer | Eduard Burtescu <edy.burt@gmail.com> | 2016-03-17 21:51:52 +0200 |
| commit | 6c0674e613a708e25d9ae92de4ae4bc5756805c4 (patch) | |
| tree | 37428d4c59bf9344e88c6b0176641bf466d82449 /src/test | |
| parent | aec63821d04872f9190c3d8606d0a58428005222 (diff) | |
| download | rust-6c0674e613a708e25d9ae92de4ae4bc5756805c4.tar.gz rust-6c0674e613a708e25d9ae92de4ae4bc5756805c4.zip | |
trans: Remove the foreign module.
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/compile-fail/dupe-symbols-8.rs | 23 | ||||
| -rw-r--r-- | src/test/compile-fail/linkage2.rs | 2 | ||||
| -rw-r--r-- | src/test/run-pass/unique-ffi-symbols.rs | 25 |
3 files changed, 26 insertions, 24 deletions
diff --git a/src/test/compile-fail/dupe-symbols-8.rs b/src/test/compile-fail/dupe-symbols-8.rs deleted file mode 100644 index 3c0e545e193..00000000000 --- a/src/test/compile-fail/dupe-symbols-8.rs +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2015 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. -// -// error-pattern:already defined - - -#![allow(warnings)] - -fn main() { - { - extern fn fail() {} - } - { - extern fn fail() {} - } -} diff --git a/src/test/compile-fail/linkage2.rs b/src/test/compile-fail/linkage2.rs index edbeebe882e..2a127d937ea 100644 --- a/src/test/compile-fail/linkage2.rs +++ b/src/test/compile-fail/linkage2.rs @@ -12,7 +12,7 @@ extern { #[linkage = "extern_weak"] static foo: i32; - //~^ ERROR: must have type `*T` + //~^ ERROR: must have type `*const T` or `*mut T` } fn main() { diff --git a/src/test/run-pass/unique-ffi-symbols.rs b/src/test/run-pass/unique-ffi-symbols.rs new file mode 100644 index 00000000000..81563f40e94 --- /dev/null +++ b/src/test/run-pass/unique-ffi-symbols.rs @@ -0,0 +1,25 @@ +// Copyright 2016 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. + +// We used to have a __rust_abi shim that resulted in duplicated symbols +// whenever the item path wasn't enough to disambiguate between them. +fn main() { + let a = { + extern fn good() -> i32 { return 0; } + good as extern fn() -> i32 + }; + let b = { + extern fn good() -> i32 { return 5; } + good as extern fn() -> i32 + }; + + assert!(a != b); + assert_eq!((a(), b()), (0, 5)); +} |
