Why the example does not work?

Hi dear all, I'm trying the code in this doc, following is the shortened code

main.rs

mod crate_helper_module {
}

pub mod submodule {
  use crate_helper_module;
}

fn main() {
}

It can be compiled with edition 2015, but failed with edition 2018

 no `crate_helper_module` external crate

Why they are different ? Is there any doc about edition 2018 ? Many thanks!!!

In Rust 2018, paths within the current crate are prefixed with crate:: like this:

pub mod submodule {
  use crate::crate_helper_module;
}

See the Edition Guide.

Also works:

mod crate_helper_module {
}

pub mod submodule {
  use super::crate_helper_module;
}

fn main() {
}