Skip to content

Commit

Permalink
Promote crashes tests to ui.
Browse files Browse the repository at this point in the history
  • Loading branch information
cjgillot committed Aug 24, 2024
1 parent d163fe8 commit d334955
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 9 deletions.
8 changes: 0 additions & 8 deletions tests/crashes/125249.rs

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
//@ known-bug: rust-lang/rust#126850
//@ check-pass

fn bug<T>() -> impl Iterator<
Item = [(); {
|found: &String| Some(false);
Expand Down
9 changes: 9 additions & 0 deletions tests/ui/impl-trait/in-trait/return-type-notation.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#![allow(incomplete_features)]
#![feature(return_type_notation)]

trait IntFactory {
fn stream(&self) -> impl IntFactory<stream(..): IntFactory<stream(..): Send> + Send>;
//~^ ERROR cycle detected when resolving lifetimes for `IntFactory::stream`
}

pub fn main() {}
27 changes: 27 additions & 0 deletions tests/ui/impl-trait/in-trait/return-type-notation.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
error[E0391]: cycle detected when resolving lifetimes for `IntFactory::stream`
--> $DIR/return-type-notation.rs:5:5
|
LL | fn stream(&self) -> impl IntFactory<stream(..): IntFactory<stream(..): Send> + Send>;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: ...which requires computing function signature of `IntFactory::stream`...
--> $DIR/return-type-notation.rs:5:5
|
LL | fn stream(&self) -> impl IntFactory<stream(..): IntFactory<stream(..): Send> + Send>;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: ...which requires looking up late bound vars inside `IntFactory::stream`...
--> $DIR/return-type-notation.rs:5:5
|
LL | fn stream(&self) -> impl IntFactory<stream(..): IntFactory<stream(..): Send> + Send>;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
= note: ...which again requires resolving lifetimes for `IntFactory::stream`, completing the cycle
note: cycle used when listing captured lifetimes for opaque `IntFactory::stream::{opaque#0}`
--> $DIR/return-type-notation.rs:5:25
|
LL | fn stream(&self) -> impl IntFactory<stream(..): IntFactory<stream(..): Send> + Send>;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
= note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0391`.

0 comments on commit d334955

Please sign in to comment.