]> git.lizzy.rs Git - rust.git/commitdiff
Add long error explanation for E0577
authorGuillaume Gomez <guillaume1.gomez@gmail.com>
Tue, 15 Oct 2019 11:52:49 +0000 (13:52 +0200)
committerGuillaume Gomez <guillaume1.gomez@gmail.com>
Wed, 30 Oct 2019 13:48:45 +0000 (14:48 +0100)
src/librustc_resolve/error_codes.rs

index 9937f27931fb7b8258fdb529093d65eec757ab17..b14913cd4fddeca792e0877aa9ff8994f2e67120 100644 (file)
@@ -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,
 }