1

Тема: Як вимкнути певний тип попереджень?

Мені доводиться використовувати застарілий підхід для створення автодоповнення слів у gtk4, бо нового вони ще не створили, а функціонал необхідний для самостійного створення прихований від звичайного користувача. Тому Rust, звісно, видає мені з десяток повідомлень про depreciated method.
Ось приклад: warning: use of deprecated method `gtk4::prelude::EntryExt::set_completion`: Since 4.10
Як мені вимкнути цей тип попереджень?

Подякували: leofun011

2

Re: Як вимкнути певний тип попереджень?

Teg Miles написав:

Rust, звісно, видає мені з десяток повідомлень про depreciated method.
Ось приклад: warning: use of deprecated method `gtk4::prelude::EntryExt::set_completion`: Since 4.10
Як мені вимкнути цей тип попереджень?

До функції або модуля додати атрибут

#![cfg_attr(debug_assertions, allow(deprecated))]

якщо це для debug, або

#![allow(deprecated)]

якщо це для всіх (debug, release, інші конфіґурації).

Ще можна те саме тільки без !, якщо додатковий рівень не треба.

Джерело: Rust репо (GitHub).
+ users.rust-lang.org: Як додавати або усувати помилки компілятора (текст, en)

Подякували: koala, Teg Miles2

3

Re: Як вимкнути певний тип попереджень?

Звертаю увагу, що атрибути #[] є зовнішніми, а #![] - внутрішніми. Тобто якщо ви хочете вимкнути попередження лише для одного виразу, вам треба дописати перед цим виразом #[allow(deprecated)], а якщо для всього модуля - то #![allow(deprecated)].

Подякували: Teg Miles, leofun012