Closed
Description
I tried this code:
#![feature(const_fn)]
struct Foo(Option<&'static mut i32>);
impl Foo {
const fn new() -> Self {
Self(None)
}
}
fn main() {}
I expected to see this happen: Compilable
Instead, this happened:
Compiling foo v0.1.0 (/home/hiroki/foo)
error[E0723]: mutable references in const fn are unstable
--> src/main.rs:5:14
|
5 | Self(None)
| ^^^^
|
= note: see issue #57563 <https://github.com/rust-lang/rust/issues/57563> for more information
= help: add `#![feature(const_fn)]` to the crate attributes to enable
error: aborting due to previous error
For more information about this error, try `rustc --explain E0723`.
error: could not compile `foo`
To learn more, run the command again with --verbose.
Meta
rustc --version --verbose
:
rustc 1.48.0-nightly (8b4085359 2020-09-23)
binary: rustc
commit-hash: 8b4085359ae798dedb05c95ad42520557bd25320
commit-date: 2020-09-23
host: x86_64-unknown-linux-gnu
release: 1.48.0-nightly
LLVM version: 11.0
I found this bug when I was trying to build linked-list-allocator crate.
cargo-bisect-rustc
: https://gist.github.com/toku-sa-n/0b8e18d78c625ee1dd6b9fe630bed7ce