Enable loop and while in constants behind a feature flag#67216
Merged
bors merged 19 commits intorust-lang:masterfrom Dec 15, 2019
Merged
Enable loop and while in constants behind a feature flag#67216bors merged 19 commits intorust-lang:masterfrom
loop and while in constants behind a feature flag#67216bors merged 19 commits intorust-lang:masterfrom
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR is an initial implementation of #52000. It adds a
const_loopfeature gate, which allowswhileandloopexpressions through both HIR and MIR const-checkers if enabled.forexpressions remain forbidden by the HIR const-checker, since they desugar to a call toIntoIterator::into_iter, which will be rejected anyways.whileloops also require#![feature(const_if_match)], since they have a conditional built into them. The diagnostics from the HIR const checker will suggest this to the user.r? @oli-obk
cc @rust-lang/wg-const-eval