Skip to content

Commit

Permalink
Update tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Zoxc committed Apr 16, 2018
1 parent 5841c68 commit 9cbe3b7
Show file tree
Hide file tree
Showing 27 changed files with 83 additions and 133 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#![feature(specialization)]

trait Trait<T> { type Assoc; }
//~^ cyclic dependency detected [E0391]
//~^ cycle detected

impl<T> Trait<T> for Vec<T> {
type Assoc = ();
Expand Down
2 changes: 1 addition & 1 deletion src/test/compile-fail/const-size_of-cycle.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// error-pattern: cyclic dependency detected
// error-pattern: cycle detected

#![feature(const_fn)]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ trait Trait { type Item; }
struct A<T>
where T : Trait,
T : Add<T::Item>
//~^ ERROR cyclic dependency detected
//~^ ERROR cycle detected
//~| ERROR associated type `Item` not found for `T`
{
data: T
Expand Down
2 changes: 1 addition & 1 deletion src/test/compile-fail/cycle-trait-default-type-trait.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// again references the trait.

trait Foo<X = Box<Foo>> {
//~^ ERROR cyclic dependency detected
//~^ ERROR cycle detected
}

fn main() { }
2 changes: 1 addition & 1 deletion src/test/compile-fail/cycle-trait-supertrait-direct.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
// Test a supertrait cycle where a trait extends itself.

trait Chromosome: Chromosome {
//~^ ERROR cyclic dependency detected
//~^ ERROR cycle detected
}

fn main() { }
2 changes: 1 addition & 1 deletion src/test/compile-fail/infinite-vec-type-recursion.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@
// except according to those terms.

type x = Vec<x>;
//~^ ERROR cyclic dependency detected
//~^ ERROR cycle detected

fn main() { let b: x = Vec::new(); }
2 changes: 1 addition & 1 deletion src/test/compile-fail/issue-20772.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
// except according to those terms.

trait T : Iterator<Item=Self::Item>
//~^ ERROR cyclic dependency detected
//~^ ERROR cycle detected
//~| ERROR associated type `Item` not found for `Self`
{}

Expand Down
2 changes: 1 addition & 1 deletion src/test/compile-fail/issue-20825.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ pub trait Subscriber {
}

pub trait Processor: Subscriber<Input = Self::Input> {
//~^ ERROR cyclic dependency detected [E0391]
//~^ ERROR cycle detected
type Input;
}

Expand Down
2 changes: 1 addition & 1 deletion src/test/compile-fail/issue-21177.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ trait Trait {
}

fn foo<T: Trait<A = T::B>>() { }
//~^ ERROR cyclic dependency detected
//~^ ERROR cycle detected
//~| ERROR associated type `B` not found for `T`

fn main() { }
2 changes: 1 addition & 1 deletion src/test/compile-fail/issue-22673.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
// except according to those terms.

trait Expr : PartialEq<Self::Item> {
//~^ ERROR: cyclic dependency detected
//~^ ERROR: cycle detected
type Item;
}

Expand Down
8 changes: 3 additions & 5 deletions src/test/compile-fail/issue-26548.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,9 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// error-pattern: cyclic dependency detected
// note-pattern: the cycle begins when computing layout of
// note-pattern: ...which then requires computing layout of
// note-pattern: ...which then again requires computing layout of

// error-pattern: cycle detected when computing layout of
// note-pattern: ...which requires computing layout of
// note-pattern: ...which again requires computing layout of

trait Mirror { type It: ?Sized; }
impl<T: ?Sized> Mirror for T { type It = Self; }
Expand Down
4 changes: 2 additions & 2 deletions src/test/compile-fail/issue-34373.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ trait Trait<T> {
fn foo(_: T) {}
}

pub struct Foo<T = Box<Trait<DefaultFoo>>>;
type DefaultFoo = Foo; //~ ERROR cyclic dependency detected
pub struct Foo<T = Box<Trait<DefaultFoo>>>; //~ ERROR cycle detected
type DefaultFoo = Foo;

fn main() {
}
3 changes: 2 additions & 1 deletion src/test/compile-fail/issue-44415.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,15 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// error-pattern: cycle detected when computing layout of

#![feature(const_fn)]
#![feature(core_intrinsics)]

use std::intrinsics;

struct Foo {
bytes: [u8; unsafe { intrinsics::size_of::<Foo>() }],
//~^ ERROR cyclic dependency detected
x: usize,
}

Expand Down
10 changes: 5 additions & 5 deletions src/test/compile-fail/resolve-self-in-impl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ impl Tr for S where Self: Copy {} // OK
impl Tr for S where S<Self>: Copy {} // OK
impl Tr for S where Self::A: Copy {} // OK

impl Tr for Self {} //~ ERROR cyclic dependency detected
impl Tr for S<Self> {} //~ ERROR cyclic dependency detected
impl Self {} //~ ERROR cyclic dependency detected
impl S<Self> {} //~ ERROR cyclic dependency detected
impl Tr<Self::A> for S {} //~ ERROR cyclic dependency detected
impl Tr for Self {} //~ ERROR cycle detected
impl Tr for S<Self> {} //~ ERROR cycle detected
impl Self {} //~ ERROR cycle detected
impl S<Self> {} //~ ERROR cycle detected
impl Tr<Self::A> for S {} //~ ERROR cycle detected

fn main() {}
3 changes: 1 addition & 2 deletions src/test/ui/cycle-trait-supertrait-indirect.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,9 @@ trait A: B {
}

trait B: C {
//~^ ERROR cycle detected
}

trait C: B { }
//~^ ERROR cyclic dependency detected
//~| cyclic reference

fn main() { }
22 changes: 11 additions & 11 deletions src/test/ui/cycle-trait-supertrait-indirect.stderr
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
error[E0391]: cyclic dependency detected
--> $DIR/cycle-trait-supertrait-indirect.rs:20:1
error[E0391]: cycle detected when computing the supertraits of `B`
--> $DIR/cycle-trait-supertrait-indirect.rs:17:1
|
LL | trait C: B { }
| ^^^^^^^^^^ cyclic reference
LL | trait B: C {
| ^^^^^^^^^^
|
note: the cycle begins when computing the supertraits of `B`...
--> $DIR/cycle-trait-supertrait-indirect.rs:14:1
note: ...which requires computing the supertraits of `C`...
--> $DIR/cycle-trait-supertrait-indirect.rs:21:1
|
LL | trait A: B {
LL | trait C: B { }
| ^^^^^^^^^^
note: ...which then requires computing the supertraits of `C`...
--> $DIR/cycle-trait-supertrait-indirect.rs:17:1
= note: ...which again requires computing the supertraits of `B`, completing the cycle
note: cycle used when computing the supertraits of `A`
--> $DIR/cycle-trait-supertrait-indirect.rs:14:1
|
LL | trait B: C {
LL | trait A: B {
| ^^^^^^^^^^
= note: ...which then again requires computing the supertraits of `B`, completing the cycle.

error: aborting due to previous error

Expand Down
3 changes: 1 addition & 2 deletions src/test/ui/impl-trait/auto-trait-leak.rs
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,7 @@ fn after() -> impl Fn(i32) {
// independently resolved and only require the concrete
// return type, which can't depend on the obligation.
fn cycle1() -> impl Clone {
//~^ ERROR cyclic dependency detected
//~| cyclic reference
//~^ ERROR cycle detected
send(cycle2().clone());

Rc::new(Cell::new(5))
Expand Down
22 changes: 9 additions & 13 deletions src/test/ui/impl-trait/auto-trait-leak.stderr
Original file line number Diff line number Diff line change
Expand Up @@ -28,33 +28,29 @@ note: required by `send`
LL | fn send<T: Send>(_: T) {}
| ^^^^^^^^^^^^^^^^^^^^^^

error[E0391]: cyclic dependency detected
--> $DIR/auto-trait-leak.rs:42:1
|
LL | fn cycle1() -> impl Clone {
| ^^^^^^^^^^^^^^^^^^^^^^^^^ cyclic reference
|
note: the cycle begins when processing `cycle1`...
error[E0391]: cycle detected when processing `cycle1`
--> $DIR/auto-trait-leak.rs:42:1
|
LL | fn cycle1() -> impl Clone {
| ^^^^^^^^^^^^^^^^^^^^^^^^^
note: ...which then requires processing `cycle2::{{impl-Trait}}`...
--> $DIR/auto-trait-leak.rs:50:16
|
note: ...which requires processing `cycle2::{{impl-Trait}}`...
--> $DIR/auto-trait-leak.rs:49:16
|
LL | fn cycle2() -> impl Clone {
| ^^^^^^^^^^
note: ...which then requires processing `cycle2`...
--> $DIR/auto-trait-leak.rs:50:1
note: ...which requires processing `cycle2`...
--> $DIR/auto-trait-leak.rs:49:1
|
LL | fn cycle2() -> impl Clone {
| ^^^^^^^^^^^^^^^^^^^^^^^^^
note: ...which then requires processing `cycle1::{{impl-Trait}}`...
note: ...which requires processing `cycle1::{{impl-Trait}}`...
--> $DIR/auto-trait-leak.rs:42:16
|
LL | fn cycle1() -> impl Clone {
| ^^^^^^^^^^
= note: ...which then again requires processing `cycle1`, completing the cycle.
= note: ...which again requires processing `cycle1`, completing the cycle
note: cycle used when type-checking all item bodies

error: aborting due to 3 previous errors

Expand Down
3 changes: 1 addition & 2 deletions src/test/ui/issue-12511.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,10 @@
// except according to those terms.

trait t1 : t2 {
//~^ ERROR cycle detected
}

trait t2 : t1 {
//~^ ERROR cyclic dependency detected
//~| cyclic reference
}

fn main() { }
17 changes: 6 additions & 11 deletions src/test/ui/issue-12511.stderr
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
error[E0391]: cyclic dependency detected
--> $DIR/issue-12511.rs:14:1
|
LL | trait t2 : t1 {
| ^^^^^^^^^^^^^ cyclic reference
|
note: the cycle begins when computing the supertraits of `t1`...
error[E0391]: cycle detected when computing the supertraits of `t1`
--> $DIR/issue-12511.rs:11:1
|
LL | trait t1 : t2 {
| ^^^^^^^^^^^^^
note: ...which then requires computing the supertraits of `t2`...
--> $DIR/issue-12511.rs:11:1
|
LL | trait t1 : t2 {
note: ...which requires computing the supertraits of `t2`...
--> $DIR/issue-12511.rs:15:1
|
LL | trait t2 : t1 {
| ^^^^^^^^^^^^^
= note: ...which then again requires computing the supertraits of `t1`, completing the cycle.
= note: ...which again requires computing the supertraits of `t1`, completing the cycle

error: aborting due to previous error

Expand Down
17 changes: 4 additions & 13 deletions src/test/ui/issue-23302-1.stderr
Original file line number Diff line number Diff line change
@@ -1,20 +1,11 @@
error[E0391]: cyclic dependency detected
--> $DIR/issue-23302-1.rs:14:9
|
LL | A = X::A as isize, //~ ERROR E0391
| ^^^^^^^^^^^^^ cyclic reference
|
note: the cycle begins when const-evaluating `X::A::{{initializer}}`...
--> $DIR/issue-23302-1.rs:14:9
|
LL | A = X::A as isize, //~ ERROR E0391
| ^^^^^^^^^^^^^
note: ...which then requires computing layout of `X`...
error[E0391]: cycle detected when const-evaluating `X::A::{{initializer}}`
--> $DIR/issue-23302-1.rs:14:9
|
LL | A = X::A as isize, //~ ERROR E0391
| ^^^^
= note: ...which then again requires const-evaluating `X::A::{{initializer}}`, completing the cycle.
|
note: ...which requires computing layout of `X`...
= note: ...which again requires const-evaluating `X::A::{{initializer}}`, completing the cycle

error: aborting due to previous error

Expand Down
17 changes: 4 additions & 13 deletions src/test/ui/issue-23302-2.stderr
Original file line number Diff line number Diff line change
@@ -1,20 +1,11 @@
error[E0391]: cyclic dependency detected
--> $DIR/issue-23302-2.rs:14:9
|
LL | A = Y::B as isize, //~ ERROR E0391
| ^^^^^^^^^^^^^ cyclic reference
|
note: the cycle begins when const-evaluating `Y::A::{{initializer}}`...
--> $DIR/issue-23302-2.rs:14:9
|
LL | A = Y::B as isize, //~ ERROR E0391
| ^^^^^^^^^^^^^
note: ...which then requires computing layout of `Y`...
error[E0391]: cycle detected when const-evaluating `Y::A::{{initializer}}`
--> $DIR/issue-23302-2.rs:14:9
|
LL | A = Y::B as isize, //~ ERROR E0391
| ^^^^
= note: ...which then again requires const-evaluating `Y::A::{{initializer}}`, completing the cycle.
|
note: ...which requires computing layout of `Y`...
= note: ...which again requires const-evaluating `Y::A::{{initializer}}`, completing the cycle

error: aborting due to previous error

Expand Down
4 changes: 2 additions & 2 deletions src/test/ui/issue-23302-3.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.

const A: i32 = B;
const A: i32 = B; //~ ERROR cycle detected

const B: i32 = A; //~ ERROR cyclic dependency detected
const B: i32 = A;

fn main() { }
29 changes: 12 additions & 17 deletions src/test/ui/issue-23302-3.stderr
Original file line number Diff line number Diff line change
@@ -1,30 +1,25 @@
error[E0391]: cyclic dependency detected
--> $DIR/issue-23302-3.rs:13:16
|
LL | const B: i32 = A; //~ ERROR cyclic dependency detected
| ^ cyclic reference
|
note: the cycle begins when const checking if rvalue is promotable to static `A`...
error[E0391]: cycle detected when const checking if rvalue is promotable to static `A`
--> $DIR/issue-23302-3.rs:11:1
|
LL | const A: i32 = B;
LL | const A: i32 = B; //~ ERROR cycle detected
| ^^^^^^^^^^^^^^^^^
note: ...which then requires checking which parts of `A` are promotable to static...
--> $DIR/issue-23302-3.rs:11:1
|
LL | const A: i32 = B;
| ^^^^^^^^^^^^^^^^^
note: ...which then requires const checking if rvalue is promotable to static `B`...
note: ...which requires checking which parts of `A` are promotable to static...
--> $DIR/issue-23302-3.rs:11:16
|
LL | const A: i32 = B;
LL | const A: i32 = B; //~ ERROR cycle detected
| ^
note: ...which then requires checking which parts of `B` are promotable to static...
note: ...which requires const checking if rvalue is promotable to static `B`...
--> $DIR/issue-23302-3.rs:13:1
|
LL | const B: i32 = A; //~ ERROR cyclic dependency detected
LL | const B: i32 = A;
| ^^^^^^^^^^^^^^^^^
= note: ...which then again requires const checking if rvalue is promotable to static `A`, completing the cycle.
note: ...which requires checking which parts of `B` are promotable to static...
--> $DIR/issue-23302-3.rs:13:16
|
LL | const B: i32 = A;
| ^
= note: ...which again requires const checking if rvalue is promotable to static `A`, completing the cycle

error: aborting due to previous error

Expand Down
Loading

0 comments on commit 9cbe3b7

Please sign in to comment.