diff options
| -rw-r--r-- | src/Makefile | 1 | ||||
| -rw-r--r-- | src/test/compile-fail/use-uninit-2.rs | 13 | ||||
| -rw-r--r-- | src/test/compile-fail/use-uninit-3.rs | 15 | ||||
| -rw-r--r-- | src/test/compile-fail/use-uninit.rs | 4 | ||||
| -rw-r--r-- | src/test/run-pass/lazy-init.rs | 13 |
5 files changed, 42 insertions, 4 deletions
diff --git a/src/Makefile b/src/Makefile index 9c61d6a3..176349ca 100644 --- a/src/Makefile +++ b/src/Makefile @@ -451,6 +451,7 @@ TEST_XFAILS_LLVM := $(addprefix test/run-pass/, \ u8-incr.rs \ unit.rs \ user.rs \ + use-uninit.rs \ utf8.rs \ vec-append.rs \ vec-concat.rs \ diff --git a/src/test/compile-fail/use-uninit-2.rs b/src/test/compile-fail/use-uninit-2.rs new file mode 100644 index 00000000..79cebe28 --- /dev/null +++ b/src/test/compile-fail/use-uninit-2.rs @@ -0,0 +1,13 @@ +// error-pattern:Unsatisfied precondition + +fn foo(int x) { + log x; +} + +fn main() { + let int x; + if (1 > 2) { + x = 10; + } + foo(x); +}
\ No newline at end of file diff --git a/src/test/compile-fail/use-uninit-3.rs b/src/test/compile-fail/use-uninit-3.rs new file mode 100644 index 00000000..e6545451 --- /dev/null +++ b/src/test/compile-fail/use-uninit-3.rs @@ -0,0 +1,15 @@ +// error-pattern:Unsatisfied precondition + +fn foo(int x) { + log x; +} + +fn main() { + let int x; + if (1 > 2) { + log "whoops"; + } else { + x = 10; + } + foo(x); +}
\ No newline at end of file diff --git a/src/test/compile-fail/use-uninit.rs b/src/test/compile-fail/use-uninit.rs index 5790bfbd..03dafdcc 100644 --- a/src/test/compile-fail/use-uninit.rs +++ b/src/test/compile-fail/use-uninit.rs @@ -6,9 +6,5 @@ fn foo(int x) { fn main() { let int x; - if (1 > 2) { - x = 10; - } else { - } foo(x); }
\ No newline at end of file diff --git a/src/test/run-pass/lazy-init.rs b/src/test/run-pass/lazy-init.rs new file mode 100644 index 00000000..986dbf20 --- /dev/null +++ b/src/test/run-pass/lazy-init.rs @@ -0,0 +1,13 @@ +fn foo(int x) { + log x; +} + +fn main() { + let int x; + if (1 > 2) { + x = 12; + } else { + x = 10; + } + foo(x); +}
\ No newline at end of file |