improve error message

This commit is contained in:
Ariel Ben-Yehuda 2016-03-31 21:42:23 +03:00
parent 8a461d940c
commit 728d20f7cc
21 changed files with 25 additions and 25 deletions

View file

@ -15,7 +15,7 @@ trait Get {
trait Other {
fn uhoh<U:Get>(&self, foo: U, bar: <Self as Get>::Value) {}
//~^ ERROR the predicate `Self : Get` is not satisfied
//~^ ERROR the trait bound `Self : Get` is not satisfied
}
fn main() {

View file

@ -18,7 +18,7 @@ trait Foo<T> {
fn f<T:Foo<isize>>(t: &T) {
let u: <T as Foo<usize>>::Bar = t.get_bar();
//~^ ERROR the predicate `T : Foo<usize>` is not satisfied
//~^ ERROR the trait bound `T : Foo<usize>` is not satisfied
}
fn main() { }

View file

@ -19,7 +19,7 @@ struct Struct {
impl Struct {
fn uhoh<T>(foo: <T as Get>::Value) {}
//~^ ERROR the predicate `T : Get` is not satisfied
//~^ ERROR the trait bound `T : Get` is not satisfied
}
fn main() {

View file

@ -25,7 +25,7 @@ trait Get {
trait Other {
fn uhoh<U:Get>(&self, foo: U, bar: <Self as Get>::Value) {}
//~^ ERROR the predicate `Self : Get` is not satisfied
//~^ ERROR the trait bound `Self : Get` is not satisfied
}
fn main() { }

View file

@ -25,12 +25,12 @@ trait Get {
trait Other {
fn uhoh<U:Get>(&self, foo: U, bar: <Self as Get>::Value) {}
//~^ ERROR the predicate `Self : Get` is not satisfied
//~^ ERROR the trait bound `Self : Get` is not satisfied
}
impl<T:Get> Other for T {
fn uhoh<U:Get>(&self, foo: U, bar: <(T, U) as Get>::Value) {}
//~^ ERROR the predicate `(T, U) : Get` is not satisfied
//~^ ERROR the trait bound `(T, U) : Get` is not satisfied
}
fn main() { }

View file

@ -91,7 +91,7 @@ fn main()
let _ = 42usize as *const [u8]; //~ ERROR casting
let _ = v as *const [u8]; //~ ERROR cannot cast
let _ = fat_v as *const Foo;
//~^ ERROR the predicate `[u8] : std::marker::Sized` is not satisfied
//~^ ERROR the trait bound `[u8] : std::marker::Sized` is not satisfied
//~^^ HELP run `rustc --explain E0277` to see a detailed explanation
//~^^^ NOTE `[u8]` does not have a constant size known at compile-time
//~^^^^ NOTE required for the cast to the object type `Foo`
@ -106,7 +106,7 @@ fn main()
let a : *const str = "hello";
let _ = a as *const Foo;
//~^ ERROR the predicate `str : std::marker::Sized` is not satisfied
//~^ ERROR the trait bound `str : std::marker::Sized` is not satisfied
//~^^ HELP run `rustc --explain E0277` to see a detailed explanation
//~^^^ NOTE `str` does not have a constant size known at compile-time
//~^^^^ NOTE required for the cast to the object type `Foo`

View file

@ -23,7 +23,7 @@ trait Bar<X> { }
// We don't always check where clauses for sanity, but in this case
// wfcheck does report an error here:
fn vacuous<A>() //~ ERROR the predicate `i32 : Bar<u32>` is not satisfied
fn vacuous<A>() //~ ERROR the trait bound `i32 : Bar<u32>` is not satisfied
where i32: Foo<u32, A>
{
// ... the original intention was to check that we don't use that

View file

@ -32,7 +32,7 @@ fn main() {
let f1 = Bar;
f1.foo(1usize);
//~^ error: the predicate `Bar : Foo<usize>` is not satisfied
//~^ error: the trait bound `Bar : Foo<usize>` is not satisfied
//~| help: the following implementations were found:
//~| help: <Bar as Foo<i32>>
//~| help: <Bar as Foo<u8>>

View file

@ -36,7 +36,7 @@ fn main() {
let f1 = Bar;
f1.foo(1usize);
//~^ error: the predicate `Bar : Foo<usize>` is not satisfied
//~^ error: the trait bound `Bar : Foo<usize>` is not satisfied
//~| help: the following implementations were found:
//~| help: <Bar as Foo<i8>>
//~| help: <Bar as Foo<i16>>

View file

@ -25,7 +25,7 @@ pub trait Foo {
impl<T> Foo for T {
type Bar = MySet<T>;
//~^ ERROR the predicate `T : MyHash` is not satisfied
//~^ ERROR the trait bound `T : MyHash` is not satisfied
}
#[rustc_error]

View file

@ -21,7 +21,7 @@ impl<T> Foo<T> {
fn fails_copy(self) {
require_copy(self.x);
//~^ ERROR the predicate `T : std::marker::Copy` is not satisfied
//~^ ERROR the trait bound `T : std::marker::Copy` is not satisfied
}
}

View file

@ -26,7 +26,7 @@ impl<T> Foo<T> for Bar<T> {
fn fails_copy(self) {
require_copy(self.x);
//~^ ERROR the predicate `T : std::marker::Copy` is not satisfied
//~^ ERROR the trait bound `T : std::marker::Copy` is not satisfied
}
}

View file

@ -28,5 +28,5 @@ impl Bar<X> for isize {
fn main() {
1.method::<X>();
//~^ ERROR the predicate `X : Foo<X>` is not satisfied
//~^ ERROR the trait bound `X : Foo<X>` is not satisfied
}

View file

@ -15,5 +15,5 @@ struct Struct;
fn main() {
drop(equal(&Struct, &Struct))
//~^ ERROR the predicate `Struct : std::cmp::Eq` is not satisfied
//~^ ERROR the trait bound `Struct : std::cmp::Eq` is not satisfied
}