diff options
Diffstat (limited to 'src/test/ui/rfc-2632-const-trait-impl/staged-api.rs')
-rw-r--r-- | src/test/ui/rfc-2632-const-trait-impl/staged-api.rs | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/src/test/ui/rfc-2632-const-trait-impl/staged-api.rs b/src/test/ui/rfc-2632-const-trait-impl/staged-api.rs deleted file mode 100644 index 1d79f5adf..000000000 --- a/src/test/ui/rfc-2632-const-trait-impl/staged-api.rs +++ /dev/null @@ -1,63 +0,0 @@ -// revisions: stable unstable - -#![cfg_attr(unstable, feature(unstable))] // The feature from the ./auxiliary/staged-api.rs file. -#![feature(const_trait_impl)] -#![feature(staged_api)] -#![stable(feature = "rust1", since = "1.0.0")] - -// aux-build: staged-api.rs -extern crate staged_api; - -use staged_api::*; - -#[stable(feature = "rust1", since = "1.0.0")] -pub struct Foo; - -#[stable(feature = "rust1", since = "1.0.0")] -#[cfg_attr(unstable, rustc_const_unstable(feature = "foo", issue = "none"))] -#[cfg_attr(stable, rustc_const_stable(feature = "foo", since = "1.0.0"))] -impl const MyTrait for Foo { - //[stable]~^ ERROR trait implementations cannot be const stable yet - fn func() {} -} - -// Const stability has no impact on usage in non-const contexts. -fn non_const_context() { - Unstable::func(); - Foo::func(); -} - -#[unstable(feature = "none", issue = "none")] -const fn const_context() { - Unstable::func(); - // ^ This is okay regardless of whether the `unstable` feature is enabled, as this function is - // not const-stable. - Foo::func(); - //[unstable]~^ ERROR not yet stable as a const fn - // ^ fails, because the `foo` feature is not active -} - -#[stable(feature = "rust1", since = "1.0.0")] -#[cfg_attr(unstable, rustc_const_unstable(feature = "foo", issue = "none"))] -pub const fn const_context_not_const_stable() { - //[stable]~^ ERROR function has missing const stability attribute - Unstable::func(); - // ^ This is okay regardless of whether the `unstable` feature is enabled, as this function is - // not const-stable. - Foo::func(); - //[unstable]~^ ERROR not yet stable as a const fn - // ^ fails, because the `foo` feature is not active -} - -#[stable(feature = "rust1", since = "1.0.0")] -#[rustc_const_stable(feature = "cheese", since = "1.0.0")] -const fn stable_const_context() { - Unstable::func(); - //[unstable]~^ ERROR not yet stable as a const fn - Foo::func(); - //[unstable]~^ ERROR not yet stable as a const fn - const_context_not_const_stable() - //[unstable]~^ ERROR not yet stable as a const fn -} - -fn main() {} |