about summary refs log tree commit diff
path: root/src/test/ui
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2020-09-05 02:24:05 +0000
committerbors <bors@rust-lang.org>2020-09-05 02:24:05 +0000
commitc3364780d2cfddfe329f62a3ec138fd4f9a60e27 (patch)
treeac119325a2e075c4657d9e6ab72b66f1ca9e62dd /src/test/ui
parent70c5f6efc445963bbfa5dd53f81c245741eac8cb (diff)
parent0aa215305a19fb3bab31b31898ee031cc3e10d7c (diff)
Auto merge of #75173 - jackh726:chalk-0.21, r=nikomatsakis
Upgrade Chalk to 0.21

Two commits here. First commit actually does the upgrade. Second commit has some changes to make more tests in compare-mode=chalk pass.

The `PlaceholdersCollector` and `RegionsSubstitutor` bits are bit a hacky, but only insomuch as `ParamsSubstitutor` is. These won't be needed eventually.

r? @nikomatsakis
Diffstat (limited to 'src/test/ui')
-rw-r--r--src/test/ui/chalkify/type_inference.rs2
-rw-r--r--src/test/ui/chalkify/type_inference.stderr8
-rw-r--r--src/test/ui/chalkify/type_wf.rs2
-rw-r--r--src/test/ui/chalkify/type_wf.stderr8
4 files changed, 14 insertions, 6 deletions
diff --git a/src/test/ui/chalkify/type_inference.rs b/src/test/ui/chalkify/type_inference.rs
index 2b62bf18a71..369777a7904 100644
--- a/src/test/ui/chalkify/type_inference.rs
+++ b/src/test/ui/chalkify/type_inference.rs
@@ -24,5 +24,5 @@ fn main() {
 
     // Here we have two solutions so we get back the behavior of the old-style
     // trait solver.
-    only_bar(x); //~ ERROR the trait bound `f64: Bar` is not satisfied
+    only_bar(x); //~ ERROR the trait bound `{float}: Bar` is not satisfied
 }
diff --git a/src/test/ui/chalkify/type_inference.stderr b/src/test/ui/chalkify/type_inference.stderr
index 5cfb968404d..fb8ccbfc660 100644
--- a/src/test/ui/chalkify/type_inference.stderr
+++ b/src/test/ui/chalkify/type_inference.stderr
@@ -1,11 +1,15 @@
-error[E0277]: the trait bound `f64: Bar` is not satisfied
+error[E0277]: the trait bound `{float}: Bar` is not satisfied
   --> $DIR/type_inference.rs:27:5
    |
 LL | fn only_bar<T: Bar>(_x: T) { }
    |                --- required by this bound in `only_bar`
 ...
 LL |     only_bar(x);
-   |     ^^^^^^^^ the trait `Bar` is not implemented for `f64`
+   |     ^^^^^^^^ the trait `Bar` is not implemented for `{float}`
+   |
+   = help: the following implementations were found:
+             <i32 as Bar>
+             <u32 as Bar>
 
 error: aborting due to previous error
 
diff --git a/src/test/ui/chalkify/type_wf.rs b/src/test/ui/chalkify/type_wf.rs
index 7c469d99c57..dd83a03fdf6 100644
--- a/src/test/ui/chalkify/type_wf.rs
+++ b/src/test/ui/chalkify/type_wf.rs
@@ -15,7 +15,7 @@ fn main() {
        x: 5,
     };
 
-    let s = S { //~ ERROR the trait bound `f64: Foo` is not satisfied
+    let s = S { //~ ERROR the trait bound `{float}: Foo` is not satisfied
         x: 5.0,
     };
 
diff --git a/src/test/ui/chalkify/type_wf.stderr b/src/test/ui/chalkify/type_wf.stderr
index ab585a6ed21..3cd60369454 100644
--- a/src/test/ui/chalkify/type_wf.stderr
+++ b/src/test/ui/chalkify/type_wf.stderr
@@ -1,11 +1,15 @@
-error[E0277]: the trait bound `f64: Foo` is not satisfied
+error[E0277]: the trait bound `{float}: Foo` is not satisfied
   --> $DIR/type_wf.rs:18:13
    |
 LL | struct S<T: Foo> {
    | ---------------- required by `S`
 ...
 LL |     let s = S {
-   |             ^ the trait `Foo` is not implemented for `f64`
+   |             ^ the trait `Foo` is not implemented for `{float}`
+   |
+   = help: the following implementations were found:
+             <Option<T> as Foo>
+             <i32 as Foo>
 
 error: aborting due to previous error