]> git.lizzy.rs Git - rust.git/commitdiff
loop_break_value: fix tests (but ignore one expected not to compile)
authorDiggory Hardy <git@dhardy.name>
Tue, 16 May 2017 17:54:41 +0000 (18:54 +0100)
committerDiggory Hardy <git@dhardy.name>
Tue, 16 May 2017 17:54:41 +0000 (18:54 +0100)
src/doc/unstable-book/src/language-features/loop-break-value.md

index 7218cad1c22810ed8201b5f120f4bbee531abe10..9e36ea7b1a76291c44229b707145c6d1b4a2cd11 100644 (file)
@@ -15,6 +15,8 @@ never exits.
 A `loop` can instead evaluate to a useful value via *break with value*:
 
 ```rust
+#![feature(loop_break_value)]
+
 // Find the first square number over 1000:
 let mut n = 1;
 let square = loop {
@@ -28,6 +30,8 @@ let square = loop {
 The evaluation type may be specified externally:
 
 ```rust
+#![feature(loop_break_value)]
+
 // Declare that value returned is unsigned 64-bit:
 let n: u64 = loop {
     break 1;
@@ -37,9 +41,11 @@ let n: u64 = loop {
 It is an error if types do not agree, either between a "break" value and an external requirement,
 or between multiple "break" values:
 
-```rust
+```no_compile
+#![feature(loop_break_value)]
+
 loop {
-    if random_bool() {
+    if true {
         break 1u32;
     } else {
         break 0u8;  // error: types do not agree
@@ -69,6 +75,8 @@ When no value is given, the value `()` is assumed, thus `break;` is equivalent t
 Using a label allows returning a value from an inner loop:
 
 ```rust
+#![feature(loop_break_value)]
+
 let result = 'outer: loop {
     for n in 1..10 {
         if n > 4 {