//@ revisions: tuple unit struct_ | |
//@[unit] check-pass | |
#[cfg(unit)] | |
mod unit { | |
struct S; | |
impl S { | |
fn foo() { | |
let Self = S; | |
} | |
} | |
} | |
#[cfg(tuple)] | |
mod tuple { | |
struct S(()); | |
impl S { | |
fn foo() { | |
let Self = S; | |
//[tuple]~^ ERROR expected unit struct | |
} | |
} | |
} | |
#[cfg(struct_)] | |
mod struct_ { | |
struct S {} | |
impl S { | |
fn foo() { | |
let Self = S; | |
//[struct_]~^ ERROR expected value, found struct `S` | |
//[struct_]~| ERROR expected unit struct, found self constructor `Self` | |
} | |
} | |
} | |
fn main() {} |