Error code E0267

A loop keyword (break or continue) was used inside a closure but outside of any loop.

Erroneous code example:

#![allow(unused)] fn main() { let w = || { break; }; // error: `break` inside of a closure }

break and continue keywords can be used as normal inside closures as long as they are also contained within a loop. To halt the execution of a closure you should instead use a return statement. Example:

#![allow(unused)] fn main() { let w = || { for _ in 0..10 { break; } }; w(); }