Error code E0577

Something other than a module was found in visibility scope.

Erroneous code example:

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!

pub mod sea {
    pub (in crate::sea) struct Shark; // ok!
}

fn main() {}