2020-02-14 18:50:26 -06:00
|
|
|
// Semantically, we do not allow e.g., `static X: u8 = 0;` as an associated item.
|
|
|
|
|
|
|
|
#![feature(specialization)]
|
|
|
|
|
|
|
|
fn main() {}
|
|
|
|
|
|
|
|
struct S;
|
|
|
|
impl S {
|
|
|
|
static IA: u8 = 0;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
static IB: u8;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
2020-02-22 01:16:39 -06:00
|
|
|
//~| ERROR associated constant in `impl` without body
|
2020-02-14 18:50:26 -06:00
|
|
|
default static IC: u8 = 0;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
pub(crate) default static ID: u8;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
2020-02-22 01:16:39 -06:00
|
|
|
//~| ERROR associated constant in `impl` without body
|
2020-02-14 18:50:26 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
trait T {
|
|
|
|
static TA: u8 = 0;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
static TB: u8;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
default static TC: u8 = 0;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
//~| ERROR `default` is only allowed on items in
|
|
|
|
pub(crate) default static TD: u8;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
//~| ERROR `default` is only allowed on items in
|
|
|
|
//~| ERROR unnecessary visibility qualifier
|
|
|
|
}
|
|
|
|
|
|
|
|
impl T for S {
|
|
|
|
static TA: u8 = 0;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
static TB: u8;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
2020-02-22 01:16:39 -06:00
|
|
|
//~| ERROR associated constant in `impl` without body
|
2020-02-14 18:50:26 -06:00
|
|
|
default static TC: u8 = 0;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
|
|
|
pub default static TD: u8;
|
|
|
|
//~^ ERROR associated `static` items are not allowed
|
2020-02-22 01:16:39 -06:00
|
|
|
//~| ERROR associated constant in `impl` without body
|
2020-02-14 18:50:26 -06:00
|
|
|
//~| ERROR unnecessary visibility qualifier
|
|
|
|
}
|