Skip to content

Commit

Permalink
Rollup merge of rust-lang#82752 - JohnTitor:gat-ice-test, r=jackh726
Browse files Browse the repository at this point in the history
Add a regression test for issue-81712

Fixes rust-lang#81712, also fixes rust-lang#79768 as duplicate.
r? ```@jackh726```
  • Loading branch information
m-ou-se authored Mar 5, 2021
2 parents 4ef4085 + 0ae7250 commit da3d6ac
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 0 deletions.
21 changes: 21 additions & 0 deletions src/test/ui/generic-associated-types/issue-81712-cyclic-traits.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// Regression test for #81712.

#![feature(generic_associated_types)]
#![allow(incomplete_features)]

trait A {
type BType: B<AType = Self>;
}

trait B {
type AType: A<BType = Self>;
}
trait C {
type DType<T>: D<T, CType = Self>;
//~^ ERROR: missing generics for associated type `C::DType` [E0107]
}
trait D<T> {
type CType: C<DType = Self>;
}

fn main() {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
error[E0107]: missing generics for associated type `C::DType`
--> $DIR/issue-81712-cyclic-traits.rs:14:10
|
LL | type DType<T>: D<T, CType = Self>;
| ^^^^^ expected 1 type argument
|
note: associated type defined here, with 1 type parameter: `T`
--> $DIR/issue-81712-cyclic-traits.rs:14:10
|
LL | type DType<T>: D<T, CType = Self>;
| ^^^^^ -
help: use angle brackets to add missing type argument
|
LL | type DType<T><T>: D<T, CType = Self>;
| ^^^

error: aborting due to previous error

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

0 comments on commit da3d6ac

Please sign in to comment.