Как исправить "нестабильное использование имен extern prelude, представленных с элементами` extern crate` " - PullRequest
0 голосов
/ 28 января 2019

Когда я запускаю cargo build (даже после cargo clean), ящик v_escape_derive версии 0.2.1 не может быть скомпилирован.Я получаю следующее сообщение:

error[E0658]: use of extern prelude names introduced with `extern crate` items is unstable (see issue #55599)
 --> /Users/***/.cargo/registry/src/github.com-***/v_escape_derive-0.2.1/src/lib.rs:7:5
  |
7 | use proc_macro::TokenStream;
  |     ^^^^^^^^^^
  |
  = help: add #![feature(extern_crate_item_prelude)] to the crate attributes to enable

Я попытался запустить cargo clean до cargo build, но безуспешно.

Когда я видел эти extern crate ошибки раньше, проблема была о edition =2015, но редакция для моего проекта - 2018, и в файлах моего проекта нет строки extern crate ....Насколько я понимаю, проблема заключается во внешнем файле lib.rs (т. Е. Во внутреннем файле этого пакета v_escape_derive, поэтому я не думаю, что его стоит менять).

1 Ответ

0 голосов
/ 28 января 2019

Даже в Rust 2018, некоторые ящики являются специальными, и должен быть импортирован через extern crate.Это включает в себя proc_macro ящик.

Чтобы решить проблему, добавьте в код строку extern crate proc_macro;.

, насколько я вижу, проблема в [другой ящик]

Тогда вы должны подать вопрос на этот ящик;он не работает в стабильном Rust.

В частности, относительно v_escape_derive 0.2.1 ;это старая версия.Текущая версия 0.4 не имеет этой проблемы.Обновите свои зависимости, чтобы включить обновление.

См. Также:

...