Add test for issue-72911
This commit is contained in:
parent
832d0a7667
commit
8dcf86887c
22
src/test/ui/impl-trait/issue-72911.rs
Normal file
22
src/test/ui/impl-trait/issue-72911.rs
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
// Regression test for #72911.
|
||||||
|
|
||||||
|
pub struct Lint {}
|
||||||
|
|
||||||
|
impl Lint {}
|
||||||
|
|
||||||
|
pub fn gather_all() -> impl Iterator<Item = Lint> {
|
||||||
|
//~^ ERROR: cannot resolve opaque type
|
||||||
|
lint_files().flat_map(|f| gather_from_file(&f))
|
||||||
|
}
|
||||||
|
|
||||||
|
fn gather_from_file(dir_entry: &foo::MissingItem) -> impl Iterator<Item = Lint> {
|
||||||
|
//~^ ERROR: failed to resolve
|
||||||
|
unimplemented!()
|
||||||
|
}
|
||||||
|
|
||||||
|
fn lint_files() -> impl Iterator<Item = foo::MissingItem> {
|
||||||
|
//~^ ERROR: failed to resolve
|
||||||
|
unimplemented!()
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {}
|
34
src/test/ui/impl-trait/issue-72911.stderr
Normal file
34
src/test/ui/impl-trait/issue-72911.stderr
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
error[E0433]: failed to resolve: use of undeclared type or module `foo`
|
||||||
|
--> $DIR/issue-72911.rs:12:33
|
||||||
|
|
|
||||||
|
LL | fn gather_from_file(dir_entry: &foo::MissingItem) -> impl Iterator<Item = Lint> {
|
||||||
|
| ^^^ use of undeclared type or module `foo`
|
||||||
|
|
||||||
|
error[E0433]: failed to resolve: use of undeclared type or module `foo`
|
||||||
|
--> $DIR/issue-72911.rs:17:41
|
||||||
|
|
|
||||||
|
LL | fn lint_files() -> impl Iterator<Item = foo::MissingItem> {
|
||||||
|
| ^^^ use of undeclared type or module `foo`
|
||||||
|
|
||||||
|
error[E0720]: cannot resolve opaque type
|
||||||
|
--> $DIR/issue-72911.rs:7:24
|
||||||
|
|
|
||||||
|
LL | pub fn gather_all() -> impl Iterator<Item = Lint> {
|
||||||
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ recursive opaque type
|
||||||
|
LL |
|
||||||
|
LL | lint_files().flat_map(|f| gather_from_file(&f))
|
||||||
|
| -----------------------------------------------
|
||||||
|
| |
|
||||||
|
| returning here with type `std::iter::FlatMap<impl std::iter::Iterator, [type error], [closure@$DIR/issue-72911.rs:9:27: 9:51]>`
|
||||||
|
| returning here with type `std::iter::FlatMap<impl std::iter::Iterator, [type error], [closure@$DIR/issue-72911.rs:9:27: 9:51]>`
|
||||||
|
...
|
||||||
|
LL | fn gather_from_file(dir_entry: &foo::MissingItem) -> impl Iterator<Item = Lint> {
|
||||||
|
| -------------------------- returning this opaque type `std::iter::FlatMap<impl std::iter::Iterator, [type error], [closure@$DIR/issue-72911.rs:9:27: 9:51]>`
|
||||||
|
...
|
||||||
|
LL | fn lint_files() -> impl Iterator<Item = foo::MissingItem> {
|
||||||
|
| -------------------------------------- returning this opaque type `std::iter::FlatMap<impl std::iter::Iterator, [type error], [closure@$DIR/issue-72911.rs:9:27: 9:51]>`
|
||||||
|
|
||||||
|
error: aborting due to 3 previous errors
|
||||||
|
|
||||||
|
Some errors have detailed explanations: E0433, E0720.
|
||||||
|
For more information about an error, try `rustc --explain E0433`.
|
Loading…
x
Reference in New Issue
Block a user