Consider tracking `stable` instead of `nightly`
This would make it easier to wrangle the use of unstable features throughout the codebase, but would require downstream users to set RUSTC_BOOTSTRAP, which is frowned upon by the Rust core team.
What is the chance of being able to use the stable Rust toolchain instead of the nightly?
When integrating the capDL initialiser from rust-sel4 in Microkit the build process becomes a lot more complicated due to the use of the nightly toolchain, unfortunately the user-experience of cargo/rustup is poor for non-stable toolchains.
For at least the capDL initialiser, what are the nightly features used that are required?
Implementing a Rust language runtime, which the CapDL initializer requires (even in its simplest configuration), necessarily entails the use of unstable Rust features.
For example, #![feature(lang_items)] is required for setting a panic handler.
The RUSTC_BOOTSTRAP=1 trick should allow the Microkit SDK build to use a stable compiler, though.
The RUSTC_BOOTSTRAP=1 trick should allow the Microkit SDK build to use a stable compiler, though.
Ah I thought that would build the nightly compiler from source or something but reading the docs that does not seem to be the case.
Will try that out, thanks.