From 1525e9707562b8f33381f3a1abf898bb8ed89283 Mon Sep 17 00:00:00 2001
From: David Wood <david@davidtw.co>
Date: Fri, 28 Sep 2018 11:32:04 +0200
Subject: [PATCH] Update tests to demonstrate 2015 behaviour.

Adds a test to demonstrate behaviour of suggestions in the
2015 edition.
---
 .../rust-2018/local-path-suggestions-2015.rs  | 36 +++++++++++++++++++
 .../local-path-suggestions-2015.stderr        |  9 +++++
 ...ions.rs => local-path-suggestions-2018.rs} |  2 +-
 ...err => local-path-suggestions-2018.stderr} |  6 ++--
 4 files changed, 49 insertions(+), 4 deletions(-)
 create mode 100644 src/test/ui/rust-2018/local-path-suggestions-2015.rs
 create mode 100644 src/test/ui/rust-2018/local-path-suggestions-2015.stderr
 rename src/test/ui/rust-2018/{local-path-suggestions.rs => local-path-suggestions-2018.rs} (96%)
 rename src/test/ui/rust-2018/{local-path-suggestions.stderr => local-path-suggestions-2018.stderr} (75%)

diff --git a/src/test/ui/rust-2018/local-path-suggestions-2015.rs b/src/test/ui/rust-2018/local-path-suggestions-2015.rs
new file mode 100644
index 0000000000000..c691d2948229c
--- /dev/null
+++ b/src/test/ui/rust-2018/local-path-suggestions-2015.rs
@@ -0,0 +1,36 @@
+// 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.
+
+// aux-build:baz.rs
+// compile-flags:--extern baz
+// edition:2015
+
+// This test exists to demonstrate the behaviour of the import suggestions
+// from the `local-path-suggestions-2018.rs` test when not using the 2018 edition.
+
+extern crate baz as aux_baz;
+
+mod foo {
+    pub type Bar = u32;
+}
+
+mod baz {
+    use foo::Bar;
+
+    fn baz() {
+        let x: Bar = 22;
+    }
+}
+
+use foo::Bar;
+
+use foobar::Baz;
+
+fn main() { }
diff --git a/src/test/ui/rust-2018/local-path-suggestions-2015.stderr b/src/test/ui/rust-2018/local-path-suggestions-2015.stderr
new file mode 100644
index 0000000000000..d7580507ce425
--- /dev/null
+++ b/src/test/ui/rust-2018/local-path-suggestions-2015.stderr
@@ -0,0 +1,9 @@
+error[E0432]: unresolved import `foobar`
+  --> $DIR/local-path-suggestions-2015.rs:34:5
+   |
+LL | use foobar::Baz;
+   |     ^^^^^^ Did you mean `aux_baz::foobar`?
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0432`.
diff --git a/src/test/ui/rust-2018/local-path-suggestions.rs b/src/test/ui/rust-2018/local-path-suggestions-2018.rs
similarity index 96%
rename from src/test/ui/rust-2018/local-path-suggestions.rs
rename to src/test/ui/rust-2018/local-path-suggestions-2018.rs
index 840e6103ec67d..147dae401f6ac 100644
--- a/src/test/ui/rust-2018/local-path-suggestions.rs
+++ b/src/test/ui/rust-2018/local-path-suggestions-2018.rs
@@ -13,7 +13,7 @@
 // edition:2018
 
 mod foo {
-    type Bar = u32;
+    pub type Bar = u32;
 }
 
 mod baz {
diff --git a/src/test/ui/rust-2018/local-path-suggestions.stderr b/src/test/ui/rust-2018/local-path-suggestions-2018.stderr
similarity index 75%
rename from src/test/ui/rust-2018/local-path-suggestions.stderr
rename to src/test/ui/rust-2018/local-path-suggestions-2018.stderr
index 38a5d412183cc..97bf748881f29 100644
--- a/src/test/ui/rust-2018/local-path-suggestions.stderr
+++ b/src/test/ui/rust-2018/local-path-suggestions-2018.stderr
@@ -1,17 +1,17 @@
 error[E0432]: unresolved import `foo`
-  --> $DIR/local-path-suggestions.rs:20:9
+  --> $DIR/local-path-suggestions-2018.rs:20:9
    |
 LL |     use foo::Bar;
    |         ^^^ Did you mean `crate::foo`?
 
 error[E0432]: unresolved import `foo`
-  --> $DIR/local-path-suggestions.rs:27:5
+  --> $DIR/local-path-suggestions-2018.rs:27:5
    |
 LL | use foo::Bar;
    |     ^^^ Did you mean `self::foo`?
 
 error[E0432]: unresolved import `foobar`
-  --> $DIR/local-path-suggestions.rs:29:5
+  --> $DIR/local-path-suggestions-2018.rs:29:5
    |
 LL | use foobar::Baz;
    |     ^^^^^^ Did you mean `baz::foobar`?