mirror of https://github.com/rust-lang/rust.git
41 lines
605 B
Rust
41 lines
605 B
Rust
// If it is impossible to find query arguments just from the hash
|
|
// compiler should treat the node as red
|
|
|
|
// In this test prior to fixing compiler was having problems figuring out
|
|
// drop impl for T inside of m
|
|
|
|
//@ revisions:cfail1 cfail2
|
|
//@ compile-flags: --crate-type=lib
|
|
//@ build-pass
|
|
|
|
pub trait P {
|
|
type A;
|
|
}
|
|
|
|
struct S;
|
|
|
|
impl P for S {
|
|
type A = C;
|
|
}
|
|
|
|
struct T<D: P>(D::A, Z<D>);
|
|
|
|
struct Z<D: P>(D::A, String);
|
|
|
|
impl<D: P> T<D> {
|
|
pub fn i() -> Self {
|
|
loop {}
|
|
}
|
|
}
|
|
|
|
enum C {
|
|
#[cfg(cfail1)]
|
|
Up(()),
|
|
#[cfg(cfail2)]
|
|
Lorry(()),
|
|
}
|
|
|
|
pub fn m() {
|
|
T::<S>::i();
|
|
}
|