Skip to content

Commit e0f2341

Browse files
committed
test: Add another test using multiple versions of the same crate
1 parent 320e6ce commit e0f2341

File tree

3 files changed

+33
-0
lines changed

3 files changed

+33
-0
lines changed

src/test/auxiliary/crateresolve5-1.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#[link(name = "crateresolve5",
2+
vers = "0.1")];
3+
4+
#[crate_type = "lib"];
5+
6+
fn structural() -> { name: str, val: int } {
7+
{ name: "crateresolve5", val: 10 }
8+
}
9+
10+
fn f() -> int { 10 }

src/test/auxiliary/crateresolve5-2.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#[link(name = "crateresolve5",
2+
vers = "0.2")];
3+
4+
#[crate_type = "lib"];
5+
6+
fn structural() -> { name: str, val: int } {
7+
{ name: "crateresolve5", val: 10 }
8+
}
9+
10+
fn f() -> int { 20 }

src/test/run-pass/crateresolve5.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// xfail-fast
2+
// aux-build:crateresolve5-1.rs
3+
// aux-build:crateresolve5-2.rs
4+
5+
use cr5_1 (name = "crateresolve5", vers = "0.1");
6+
use cr5_2 (name = "crateresolve5", vers = "0.2");
7+
8+
fn main() {
9+
// Structural types can be used between two versions of the same crate
10+
assert cr5_1::structural() == cr5_2::structural();
11+
// Make sure these are actually two different crates
12+
assert cr5_1::f() == 10 && cr5_2::f() == 20;
13+
}

0 commit comments

Comments
 (0)