Rust errors / Names, paths and imports
Rust compiler error · checked with rustc 1.99.0
Rust error E0711: feature `foo` is declared stable since 1.29.0, but was previously declared stable since 1.0.0
What it means#### This error code is internal to the compiler and will not be emitted with normal Rust code.
What rustc prints
error[E0711]: feature `foo` is declared stable since 1.29.0, but was previously declared stable since 1.0.0
--> main.rs:11:1
|
11 | #[stable(feature = "foo", since = "1.29.0")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Real output of rustc 1.99.0 compiling the official example below (2021 edition). Your names and line numbers will differ; the first line is the part to match.
The compiler team's explanation
This error code is internal to the compiler and will not be emitted with normal Rust code.
Feature declared with conflicting stability requirements.
// NOTE: this attribute is perma-unstable and should *never* be used outside of
// stdlib and the compiler.
#![feature(staged_api)]
#![stable(feature = "...", since = "1.0.0")]
#[stable(feature = "foo", since = "1.0.0")]
fn foo_stable_1_0_0() {}
// error: feature `foo` is declared stable since 1.29.0
#[stable(feature = "foo", since = "1.29.0")]
fn foo_stable_1_29_0() {}
// error: feature `foo` is declared unstable
#[unstable(feature = "foo", issue = "none")]
fn foo_unstable() {}
In the above example, the foo feature is first defined to be stable since 1.0.0, but is then re-declared stable since 1.29.0. This discrepancy in versions causes an error. Furthermore, foo is then re-declared as unstable, again the conflict causes an error.
This error can be fixed by splitting the feature, this allows any stability requirements and removes any possibility of conflict.
From rustc --explain E0711 (1.99.0), part of the Rust project, MIT or Apache-2.0. Official page.
Related errors
- E0425cannot find value in this scope
- E0603is private
- E0432unresolved import
- E0005refutable pattern in local binding
- E0648`export_name` may not contain null characters
- E0710unknown tool name `clipp` found in scoped lint: `clipp::filter_map`
- E0725A feature attribute named a feature that was disallowed in the compiler command line flags
- E0742visibilities can only be restricted to ancestor modules
Up next
Often hit nextE0425: cannot find value in this scopeA related error from the same family.Read it next →Did this answer your question?