A break
statement with an argument appeared in a non-loop
loop.
Example of erroneous code:
let result = while true {
if satisfied(i) {
break 2 * i; // error: `break` with value from a `while` loop
}
i += 1;
};
RunThe break
statement can take an argument (which will be the value of the loop
expression if the break
statement is executed) in loop
loops, but not
for
, while
, or while let
loops.
Make sure break value;
statements only occur in loop
loops:
let result = loop { // This is now a "loop" loop.
if satisfied(i) {
break 2 * i; // ok!
}
i += 1;
};
Run