]> git.lizzy.rs Git - rust.git/commitdiff
Update existing tests for trivial bounds changes
authorMatthew Jasper <mjjasper1@gmail.com>
Sun, 6 May 2018 21:57:49 +0000 (22:57 +0100)
committerMatthew Jasper <mjjasper1@gmail.com>
Tue, 15 May 2018 10:43:59 +0000 (11:43 +0100)
src/test/compile-fail/cross-fn-cache-hole.rs
src/test/compile-fail/issue-42796.rs
src/test/ui/issue-48728.stderr

index b034fedb805e343b85ae4024275185aa8f033a70..d437fc019fda04f5ccec10d0d72548eb96a52445 100644 (file)
 // Check that when there are vacuous predicates in the environment
 // (which make a fn uncallable) we don't erroneously cache those and
 // then consider them satisfied elsewhere. The current technique for
-// doing this is just to filter "global" predicates out of the
-// environment, which means that we wind up with an error in the
-// function `vacuous`, because even though `i32: Bar<u32>` is implied
-// by its where clause, that where clause never holds.
+// doing this is to not use global caches when there is a chance that
+// the environment contains such a predicate.
+// We still error for `i32: Bar<u32>` pending #48214
 
 trait Foo<X,Y>: Bar<X> {
 }
index 10622eccbdcd19d9a47000d82a1661571bca80cb..b07c23c3fc72da5ec4721be552483a4e80178305 100644 (file)
@@ -17,7 +17,7 @@ impl<T, Smoke> Mirror<Smoke> for T {
 }
 
 pub fn poison<S>(victim: String) where <String as Mirror<S>>::Image: Copy {
-    loop { drop(victim); } //~ ERROR use of moved value
+    loop { drop(victim); }
 }
 
 fn main() {
index 05c87fe66ee8508af42102db4c8c1b272a4cc243..937266d6d55735ef09906485dbb5bd3723bf9163 100644 (file)
@@ -6,6 +6,8 @@ LL | #[derive(Clone)] //~ ERROR conflicting implementations of trait `std::clone
 ...
 LL | impl<T: Clone + ?Sized> Clone for Node<[T]> {
    | ------------------------------------------- first implementation here
+   |
+   = note: upstream crates may add new impl of trait `std::clone::Clone` for type `[_]` in future versions
 
 error: aborting due to previous error