diff options
Diffstat (limited to 'src/test/ui/expr/if/if-else-type-mismatch.rs')
-rw-r--r-- | src/test/ui/expr/if/if-else-type-mismatch.rs | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/test/ui/expr/if/if-else-type-mismatch.rs b/src/test/ui/expr/if/if-else-type-mismatch.rs new file mode 100644 index 000000000..1a0a36df2 --- /dev/null +++ b/src/test/ui/expr/if/if-else-type-mismatch.rs @@ -0,0 +1,46 @@ +fn main() { + let _ = if true { + 1i32 + } else { + 2u32 + }; + //~^^ ERROR `if` and `else` have incompatible types + let _ = if true { 42i32 } else { 42u32 }; + //~^ ERROR `if` and `else` have incompatible types + let _ = if true { + 3u32; + } else { + 4u32 + }; + //~^^ ERROR `if` and `else` have incompatible types + let _ = if true { + 5u32 + } else { + 6u32; + }; + //~^^ ERROR `if` and `else` have incompatible types + let _ = if true { + 7i32; + } else { + 8u32 + }; + //~^^ ERROR `if` and `else` have incompatible types + let _ = if true { + 9i32 + } else { + 10u32; + }; + //~^^ ERROR `if` and `else` have incompatible types + let _ = if true { + + } else { + 11u32 + }; + //~^^ ERROR `if` and `else` have incompatible types + let _ = if true { + 12i32 + } else { + + }; + //~^^^ ERROR `if` and `else` have incompatible types +} |