Expand description
Run the rustc compiler with our custom options and hooks.
Structsยง
- Charon
Callbacks - The callbacks for Charon
- RunCompiler
Normally Callbacks - Dummy callbacks used to run the compiler normally when we shouldnโt be analyzing the crate.
Staticsยง
- SKIP_
BORROWCK ๐
Functionsยง
- check_
late_ ๐rustc_ errors - Run rustc checks that normally happen close to codegen, so that we get all the post-mono errors etc.
- def_
id_ ๐debug - Custom
DefIddebug routine that doesnโt print unstable values like ids and hashes. - precheck_
rustc_ ๐errors - Run a couple of rustc queries that donโt involve MIR (so that they donโt steal it). Returns whether rustc reported errors. This lets us avoid running Charon translation on crates rustc already rejects.
- run_
compiler_ ๐with_ callbacks - Helper that runs the compiler and catches its fatal errors.
- run_
rustc_ driver - Run the rustc driver with our custom hooks. Returns
Noneif the crate was not compiled with charon (e.g. because it was a dependency). Otherwise returns the translated crate, ready for post-processing transformations. - set_
mir_ ๐options - Tweak options to get usable MIR even for foreign crates.
- set_
parallel_ ๐frontend - Enable rustcโs parallel front-end.
- set_
skip_ ๐borrowck - setup_
compiler ๐ - setup_
miri_ ๐sysroot cargo miri setupsets up a sysroot containing a standard library built with-Zalways-encode-mir.- skip_
borrowck_ ๐if_ set