Skip to content

Commit ee6ed86

Browse files
committed
Add codegen test
1 parent 170e30b commit ee6ed86

File tree

3 files changed

+51
-0
lines changed

3 files changed

+51
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
#![allow(internal_features)]
2+
#![feature(staged_api)]
3+
#![feature(impl_stability)]
4+
#![stable(feature = "a", since = "1.1.1" )]
5+
6+
/// Aux crate for unstable impl codegen test.
7+
8+
#[stable(feature = "a", since = "1.1.1" )]
9+
trait Trait {
10+
fn method(&self);
11+
}
12+
13+
#[unstable_feature_bound(foo)]
14+
impl Trait for T {
15+
// FIXME: this line above failed with cannot find type `T` in this scope
16+
fn method(&self) {
17+
println!("hi");
18+
}
19+
}
20+
21+
fn main() {
22+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
//@ aux-build:unstable_impl_codegen_aux1.rs
2+
3+
#![allow(internal_features)]
4+
#![feature(staged_api)]
5+
#![feature(impl_stability)]
6+
#![stable(feature = "a", since = "1.1.1" )]
7+
#[feature(foo)]
8+
9+
extern crate unstable_impl_codegen_aux1 as aux;
10+
11+
/// Upstream crate for unstable impl codegen test
12+
/// that depends on aux crate in
13+
/// unstable_impl_codegen_aux1.rs
14+
15+
fn foo<T>(a:T) {
16+
a.method();
17+
}
18+
19+
fn main() {
20+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
//@ aux-build:unstable_impl_codegen_aux2.rs
2+
3+
/// Downstream crate for unstable impl codegen test
4+
/// that depends on upstream crate in
5+
/// unstable_impl_codegen_aux2.rs
6+
7+
fn main() {
8+
foo(1_u8);
9+
}

0 commit comments

Comments
 (0)