编译错误 len 作为 const fn 还不稳定

Ami*_*bha 7 rust

我从我的依赖项之一收到错误消息。这是错误的代码示例:bytes 0.5.2

pub const fn foo(foo: &'static [u8]) -> usize {
    foo.len()
}
Run Code Online (Sandbox Code Playgroud)
error: `core::slice::<impl [T]>::len` is not yet stable as a const fn
 --> <source>:2:5
  |
2 |     foo.len()
  |     ^^^^^^^^^
error: aborting due to previous error
Run Code Online (Sandbox Code Playgroud)
active toolchain
----------------

stable-x86_64-pc-windows-msvc (default) rustc 1.38.0 (625451e37 2019-09-23)
Run Code Online (Sandbox Code Playgroud)

log*_*yth 10

0.5.x似乎需要除锈1.39,因此最简单的选择很可能会升级到最新版本。

错误状态

core::slice::<impl [T]>::len 作为 const fn 还不稳定

如果您查看发行说明,1.39您会发现其中一个条目是

str::len[T]::lenstr::as_bytes现在const函数

所以这个箱子特别需要 >=1.39

  • 我运行 rustup update stable,它解决了!非常感谢! (3认同)