-
Notifications
You must be signed in to change notification settings - Fork 13.9k
Description
We have a couple different modes that NLL can run in.
borrowck=mir is sort of the "adopt NLL whole hog"; it just runs the MIR-based borrow checker, and reports its errors as, well, errors.
borrowck=migrate is the migration plan for the 2018 edition. It runs the MIR-based borrow checker, and if it signals an error, then it runs the old AST-based borrow checker as a backup. If the code is accepted by AST-based borrow checker, then all the MIR-based errors are downgraded to warnings. This is the mode that we'll be deploying for Rust 2018.
Anyway: We are currently testing borrowck=mir for our test suite via compare-mode=nll.
The plan is to deploy borrowck=migrate.
We have barely any automated testing of borrowck=migrate.
See the problem here?
My proposal: We should change compare-mode=nll to use borrowck=migrate instead of borrowck=mir. We should make this change ASAP.