From: Guillaume Gomez Date: Tue, 15 Oct 2019 11:52:49 +0000 (+0200) Subject: Add long error explanation for E0577 X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=b22a1638bf55a5769cd29c22f76dfee3f79f9049;p=rust.git Add long error explanation for E0577 --- diff --git a/src/librustc_resolve/error_codes.rs b/src/librustc_resolve/error_codes.rs index 9937f27931f..b14913cd4fd 100644 --- a/src/librustc_resolve/error_codes.rs +++ b/src/librustc_resolve/error_codes.rs @@ -1823,6 +1823,33 @@ trait Hello { ``` "##, +E0577: r##" +Something other than a module was found in visibility scope. + +Erroneous code example: + +```compile_fail,E0577,edition2018 +pub struct Sea; + +pub (in crate::Sea) struct Shark; // error! + +fn main() {} +``` + +`Sea` is not a module, therefore it is invalid to use it in a visibility path. +To fix this error we need to ensure `Sea` is a module. + +Please note that the visibility scope can only be applied on ancestors! + +```edition2018 +pub mod Sea { + pub (in crate::Sea) struct Shark; // ok! +} + +fn main() {} +``` +"##, + E0603: r##" A private item was used outside its scope. @@ -1990,6 +2017,5 @@ fn main() {} // E0427, merged into 530 // E0467, removed // E0470, removed - E0577, E0578, }