diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-10-31 02:54:05 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-10-31 02:54:05 +0100 |
| commit | 0bd4037931042103a702bc8bf8aeca8ca5c7264b (patch) | |
| tree | 98910ef0b2719faf0576d4607a74f7ee938a10fb | |
| parent | 6cee78c4f052f2189e5598d21e8bbfcfe5df6896 (diff) | |
| parent | 125d60d4df2f3cdd3fdd830e725eed2bab64aa3b (diff) | |
| download | rust-0bd4037931042103a702bc8bf8aeca8ca5c7264b.tar.gz rust-0bd4037931042103a702bc8bf8aeca8ca5c7264b.zip | |
Rollup merge of #65434 - GuillaumeGomez:long-err-explanation-E0577, r=Dylan-DPC
Add long error explanation for E0577 Part of #61137. r? @kinnison
| -rw-r--r-- | src/librustc_resolve/error_codes.rs | 28 | ||||
| -rw-r--r-- | src/test/ui/resolve/resolve-bad-visibility.stderr | 2 | ||||
| -rw-r--r-- | src/test/ui/span/visibility-ty-params.stderr | 1 |
3 files changed, 29 insertions, 2 deletions
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, } diff --git a/src/test/ui/resolve/resolve-bad-visibility.stderr b/src/test/ui/resolve/resolve-bad-visibility.stderr index 43af38cf491..197ecf0cb00 100644 --- a/src/test/ui/resolve/resolve-bad-visibility.stderr +++ b/src/test/ui/resolve/resolve-bad-visibility.stderr @@ -30,5 +30,5 @@ LL | pub(in too_soon) struct H; error: aborting due to 5 previous errors -Some errors have detailed explanations: E0433, E0742. +Some errors have detailed explanations: E0433, E0577, E0742. For more information about an error, try `rustc --explain E0433`. diff --git a/src/test/ui/span/visibility-ty-params.stderr b/src/test/ui/span/visibility-ty-params.stderr index c2f0711b0c8..d3fa1d7732e 100644 --- a/src/test/ui/span/visibility-ty-params.stderr +++ b/src/test/ui/span/visibility-ty-params.stderr @@ -18,3 +18,4 @@ LL | m!{ m<> } error: aborting due to 3 previous errors +For more information about this error, try `rustc --explain E0577`. |
