diff options
Diffstat (limited to 'tests/ui/stability-attribute/missing-const-stability.rs')
| -rw-r--r-- | tests/ui/stability-attribute/missing-const-stability.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/ui/stability-attribute/missing-const-stability.rs b/tests/ui/stability-attribute/missing-const-stability.rs new file mode 100644 index 00000000000..6eff899bfbf --- /dev/null +++ b/tests/ui/stability-attribute/missing-const-stability.rs @@ -0,0 +1,33 @@ +#![feature(staged_api)] +#![feature(const_trait_impl)] +#![stable(feature = "stable", since = "1.0.0")] + +#[stable(feature = "stable", since = "1.0.0")] +pub const fn foo() {} //~ ERROR function has missing const stability attribute + +#[unstable(feature = "unstable", issue = "none")] +pub const fn bar() {} // ok because function is unstable + +#[stable(feature = "stable", since = "1.0.0")] +pub struct Foo; +impl Foo { + #[stable(feature = "stable", since = "1.0.0")] + pub const fn foo() {} //~ ERROR associated function has missing const stability attribute + + #[unstable(feature = "unstable", issue = "none")] + pub const fn bar() {} // ok because function is unstable +} + +#[stable(feature = "stable", since = "1.0.0")] +#[const_trait] +pub trait Bar { + #[stable(feature = "stable", since = "1.0.0")] + fn fun(); +} +#[stable(feature = "stable", since = "1.0.0")] +impl const Bar for Foo { + //~^ ERROR implementation has missing const stability attribute + fn fun() {} +} + +fn main() {} |
