rust/compiler/rustc_driver_impl
Chris Denton 6d36c8a5fc
Return ExitCode from rustc_driver::main
This makes rustc simply return an exit code from main rather than calling `std::process::exit` with an exit code. This means that drops run normally and the process exits cleanly.

Also instead of hard coding success and failure codes this uses `ExitCode::SUCCESS` and `ExitCode::FAILURE`, which in turn effectively uses `libc::EXIT_SUCCESS` and `libc::EXIT_FAILURE` (via std). These are `0` and `1` respectively for all currently supported host platforms so it doesn't actually change the exit code.
2026-01-23 21:04:27 +00:00
..
src Return ExitCode from rustc_driver::main 2026-01-23 21:04:27 +00:00
Cargo.toml feat: added syntax highlighting for code blocks in rustc --explain 2026-01-19 17:44:24 +05:30
messages.ftl don't uppercase error messages 2025-09-03 15:24:49 +02:00
README.md Update out-dated link 2024-10-06 18:08:28 +08:00

The driver crate is effectively the "main" function for the rust compiler. It orchestrates the compilation process and "knits together" the code from the other crates within rustc. This crate itself does not contain any of the "main logic" of the compiler (though it does have some code related to pretty printing or other minor compiler options).

For more information about how the driver works, see the rustc dev guide.