about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPramod Bisht <pramodpsb@outlook.com>2018-07-07 15:51:50 +0530
committerPramod Bisht <pramodpsb@outlook.com>2018-07-07 15:51:50 +0530
commitab767eecb00847df456fa519a07b9ee96d786000 (patch)
treef830a3f390d1bc83d738fde96572f5756ede48da
parentd5f443d81de64a6b551ce2f09fb129b03941b05c (diff)
downloadrust-ab767eecb00847df456fa519a07b9ee96d786000.tar.gz
rust-ab767eecb00847df456fa519a07b9ee96d786000.zip
Added UI testcases for #52049
-rw-r--r--src/test/ui/suggestions/issue-52049.nll.stderr13
-rw-r--r--src/test/ui/suggestions/issue-52049.rs18
-rw-r--r--src/test/ui/suggestions/issue-52049.stderr13
3 files changed, 44 insertions, 0 deletions
diff --git a/src/test/ui/suggestions/issue-52049.nll.stderr b/src/test/ui/suggestions/issue-52049.nll.stderr
new file mode 100644
index 00000000000..6f71f167611
--- /dev/null
+++ b/src/test/ui/suggestions/issue-52049.nll.stderr
@@ -0,0 +1,13 @@
+error[E0597]: borrowed value does not live long enough
+  --> $DIR/issue-52049.rs:16:10
+   |
+LL |     foo(&unpromotable(5u32));
+   |          ^^^^^^^^^^^^^^^^^^ temporary value does not live long enough
+LL | }
+   | - temporary value only lives until here
+   |
+   = note: borrowed value must be valid for the static lifetime...
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0597`.
diff --git a/src/test/ui/suggestions/issue-52049.rs b/src/test/ui/suggestions/issue-52049.rs
new file mode 100644
index 00000000000..daff2258d36
--- /dev/null
+++ b/src/test/ui/suggestions/issue-52049.rs
@@ -0,0 +1,18 @@
+// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution and at
+// http://rust-lang.org/COPYRIGHT.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+fn foo(_: &'static u32) {}
+
+fn unpromotable<T>(t: T) -> T { t }
+
+fn main() {
+    foo(&unpromotable(5u32));
+}
+//~^^ ERROR borrowed value does not live long enough
diff --git a/src/test/ui/suggestions/issue-52049.stderr b/src/test/ui/suggestions/issue-52049.stderr
new file mode 100644
index 00000000000..e1e501023fc
--- /dev/null
+++ b/src/test/ui/suggestions/issue-52049.stderr
@@ -0,0 +1,13 @@
+error[E0597]: borrowed value does not live long enough
+  --> $DIR/issue-52049.rs:16:10
+   |
+LL |     foo(&unpromotable(5u32));
+   |          ^^^^^^^^^^^^^^^^^^ - temporary value only lives until here
+   |          |
+   |          temporary value does not live long enough
+   |
+   = note: borrowed value must be valid for the static lifetime...
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0597`.