如何允许弃用的功能?

时间:2015-06-09 22:44:48

标签: rust deprecated

我有一个依赖于string_cache的Rust项目,这需要每晚。但是,由于不推荐使用的功能,nightly的最新版本拒绝编译:

$ cargo build
   Compiling string_cache v0.1.0 (https://github.com/servo/string-cache#45f19068)
/home/wilfred/.multirust/toolchains/nightly/cargo/git/checkouts/string-cache-efa5c30b1d5a962c/master/src/atom/mod.rs:65:21: 65:37 error: use of deprecated item: use `String::from` instead, #[deny(deprecated)] on by default
/home/wilfred/.multirust/toolchains/nightly/cargo/git/checkouts/string-cache-efa5c30b1d5a962c/master/src/atom/mod.rs:65             string: String::from_str(string_to_add),
                                                                                                                                            ^~~~~~~~~~~~~~~~
error: aborting due to previous error
Could not compile `string_cache`.

To learn more, run the command again with --verbose.

如何编译string_cache?我试过添加

#![allow(deprecated)]

到我的主人,但这不会改变行为。

1 个答案:

答案 0 :(得分:3)

默认情况下,编译器不会对已弃用方法的使用施加任何限制:

fn main() {
   (32.0f64).is_positive();
}

编译,但有警告:

warning: use of deprecated item: renamed to is_sign_positive, #[warn(deprecated)] on by default

您的错误消息有助于指出罪魁祸首:

#[deny(deprecated)] on by default

您必须弄清楚deny的指定位置。