Make sure while-exprs require 'cond: bool' exactly.
This commit is contained in:
parent
ebcc966ac1
commit
f01562af33
|
@ -19,4 +19,10 @@ fn main() {
|
|||
if b_mut_ref() {} //~ ERROR mismatched types [E0308]
|
||||
if &true {} //~ ERROR mismatched types [E0308]
|
||||
if &mut true {} //~ ERROR mismatched types [E0308]
|
||||
|
||||
// This is also NOT:
|
||||
while b_ref() {} //~ ERROR mismatched types [E0308]
|
||||
while b_mut_ref() {} //~ ERROR mismatched types [E0308]
|
||||
while &true {} //~ ERROR mismatched types [E0308]
|
||||
while &mut true {} //~ ERROR mismatched types [E0308]
|
||||
}
|
||||
|
|
|
@ -34,6 +34,42 @@ LL | if &mut true {}
|
|||
= note: expected type `bool`
|
||||
found type `&mut bool`
|
||||
|
||||
error: aborting due to 4 previous errors
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/if-no-match-bindings.rs:24:11
|
||||
|
|
||||
LL | while b_ref() {}
|
||||
| ^^^^^^^ expected bool, found &bool
|
||||
|
|
||||
= note: expected type `bool`
|
||||
found type `&bool`
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/if-no-match-bindings.rs:25:11
|
||||
|
|
||||
LL | while b_mut_ref() {}
|
||||
| ^^^^^^^^^^^ expected bool, found &mut bool
|
||||
|
|
||||
= note: expected type `bool`
|
||||
found type `&mut bool`
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/if-no-match-bindings.rs:26:11
|
||||
|
|
||||
LL | while &true {}
|
||||
| ^^^^^ expected bool, found &bool
|
||||
|
|
||||
= note: expected type `bool`
|
||||
found type `&bool`
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/if-no-match-bindings.rs:27:11
|
||||
|
|
||||
LL | while &mut true {}
|
||||
| ^^^^^^^^^ expected bool, found &mut bool
|
||||
|
|
||||
= note: expected type `bool`
|
||||
found type `&mut bool`
|
||||
|
||||
error: aborting due to 8 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0308`.
|
||||
|
|
Loading…
Reference in New Issue