Closed
Description
An important correctness milestone is to have the compiler itself use NLL when bootstrapping. We've made some stabs at this but we need to start doing it all the time.
Instructions
- Log into Zulip and head to correct thread to say hi =)
- Select a crate from the list below
- Leave a comment that you are trying it
- Verify that
./x.py build --stage 1
works for you - Add
#![cfg_attr(not(stage0), feature(nll))]
to the lib.rs file- This incantation adds
#![feature(nll)]
, but only once we get to stage1 -- otherwise we'd be using the beta version of NLL, which is old and buggy.)
- This incantation adds
- Try
./x.py build --stage 1
again and see if it works - If so, open a PR
Crate list
-
liballoc
-- [nll] enable feature(nll) on various crates for bootstrap #53211 -
liballoc_jemalloc
-- [nll] enable feature(nll) on various crates for bootstrap #53211 -
liballoc_system
-- [nll] enable feature(nll) on various crates for bootstrap #53211 -
libarena
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
libbacktrace
-
libcompiler_builtins
-
libcore
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libfmt_macros
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
libgraphviz
-- [nll] enable feature(nll) on various crates for bootstrap #53211 -
liblibc
-
libpanic_abort
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
libpanic_unwind
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
libproc_macro
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libprofiler_builtins
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_allocator
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_apfloat
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
librustc_asan
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_borrowck
-- [nll] enable feature(nll) on various crates for bootstrap #53211 -
librustc_codegen_llvm
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_codegen_utils
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_cratesio_shim
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
librustc_data_structures
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_driver
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
librustc_errors
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_incremental
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
librustc_lint
-- [nll] enable feature(nll) on various crates for bootstrap #53211 -
librustc_llvm
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_lsan
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_metadata
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_mir
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_msan
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_passes
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_platform_intrinsics
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustc_plugin
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_privacy
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_resolve
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_save_analysis
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_target
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
librustc_traits
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_tsan
-- [nll] enable feature(nll) on various crates for bootstrap: part 2 #53214 -
librustc_typeck
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
librustdoc
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libserialize
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libstd
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libstd_unicode
-- rolled into libcore -
libsyntax
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libsyntax_ext
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libsyntax_pos
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
libterm
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
libtest
-- [nll] enable feature(nll) on various crates for bootstrap: part 4 #53230 -
libunwind
-- [nll] enable feature(nll) on various crates for bootstrap: part 3 #53219 -
stdsimd