cargo new allows these identifiers to be project name, but likely to cause confusion.
Current banned keywords for project name (excluding weak keywords): [1]; [2]
Context-sensitive identifiers by category:
-
Project structure
main, lib, init, config, setup, default, testing, etc.
-
Tooling
cargo, rustc, build, target, deps, doc, bin, src, examples, tests, benches, out, etc.
-
Compiler
std, core, alloc, proc_macro, compiler_builtins, panic_abort, panic_unwind, etc.
edit: Quick checked source code found 2 keywords missing from the current restricted name list: gen and union.
Appreciate enlightenment on this. Thanks.