struct T1(pub(in self::m2)()); // error[E0433]: failed to resolve: could not find `m2` in `self`
struct T2(pub(in super::m1::m2)()); // error[E0433]: failed to resolve: could not find `m2` in `m1`
struct T3(pub(in crate::m1::m2)()); // error[E0433]: failed to resolve: could not find `m2` in `m1`
struct T4(pub(in crate::m3)()); // error[E0433]: failed to resolve: could not find `m3` in the crate root
pub mod m2 {}
}
mod m3 {}
ощущается как баг особенно с учётом того, что rust-analyzer корректно резолвит
короче, баг в тексте ошибки, но по смыслу — так нельзя, потому что во всех этих случаях структура не будет видима в модуле, в котором она объявлена, что странно
Почему структура не будет видима в модуле, в котором она объявлена? Структура будет видима не нельзя будет её сконструировать и получить доступ к полю.
Обсуждают сегодня