error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:1:10
   |
LL | type A = [u8; 4]::AssocTy;
   |          ^^^^^^^^^^^^^^^^ help: try: `<[u8; 4]>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:5:10
   |
LL | type B = [u8]::AssocTy;
   |          ^^^^^^^^^^^^^ help: try: `<[u8]>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:9:10
   |
LL | type C = (u8)::AssocTy;
   |          ^^^^^^^^^^^^^ help: try: `<(u8)>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:13:10
   |
LL | type D = (u8, u8)::AssocTy;
   |          ^^^^^^^^^^^^^^^^^ help: try: `<(u8, u8)>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:17:10
   |
LL | type E = _::AssocTy;
   |          ^^^^^^^^^^ help: try: `<_>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:21:19
   |
LL | type F = &'static (u8)::AssocTy;
   |                   ^^^^^^^^^^^^^ help: try: `<(u8)>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:27:10
   |
LL | type G = dyn 'static + (Send)::AssocTy;
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `<dyn 'static + (Send)>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:44:10
   |
LL | type I = ty!()::AssocTy;
   |          ^^^^^^^^^^^^^^ help: try: `<ty!()>::AssocTy`

error: missing angle brackets in associated item path
  --> $DIR/bad-assoc-ty.rs:37:19
   |
LL |     ($ty: ty) => ($ty::AssocTy);
   |                   ^^^^^^^^^^^^ help: try: `<$ty>::AssocTy`
...
LL | type J = ty!(u8);
   |          ------- in this macro invocation

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:1:10
   |
LL | type A = [u8; 4]::AssocTy;
   |          ^^^^^^^^^^^^^^^^ help: use fully-qualified syntax: `<[u8; _] as Trait>::AssocTy`

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:5:10
   |
LL | type B = [u8]::AssocTy;
   |          ^^^^^^^^^^^^^ help: use fully-qualified syntax: `<[u8] as Trait>::AssocTy`

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:9:10
   |
LL | type C = (u8)::AssocTy;
   |          ^^^^^^^^^^^^^ help: use fully-qualified syntax: `<u8 as Trait>::AssocTy`

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:13:10
   |
LL | type D = (u8, u8)::AssocTy;
   |          ^^^^^^^^^^^^^^^^^ help: use fully-qualified syntax: `<(u8, u8) as Trait>::AssocTy`

error[E0121]: the type placeholder `_` is not allowed within types on item signatures
  --> $DIR/bad-assoc-ty.rs:17:10
   |
LL | type E = _::AssocTy;
   |          ^ not allowed in type signatures

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:21:19
   |
LL | type F = &'static (u8)::AssocTy;
   |                   ^^^^^^^^^^^^^ help: use fully-qualified syntax: `<u8 as Trait>::AssocTy`

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:27:10
   |
LL | type G = dyn 'static + (Send)::AssocTy;
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use fully-qualified syntax: `<(dyn std::marker::Send + 'static) as Trait>::AssocTy`

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:33:10
   |
LL | type H = Fn(u8) -> (u8)::Output;
   |          ^^^^^^^^^^^^^^^^^^^^^^ help: use fully-qualified syntax: `<(dyn std::ops::Fn(u8) -> u8 + 'static) as Trait>::Output`

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:37:19
   |
LL |     ($ty: ty) => ($ty::AssocTy);
   |                   ^^^^^^^^^^^^ help: use fully-qualified syntax: `<u8 as Trait>::AssocTy`
...
LL | type J = ty!(u8);
   |          ------- in this macro invocation

error[E0223]: ambiguous associated type
  --> $DIR/bad-assoc-ty.rs:44:10
   |
LL | type I = ty!()::AssocTy;
   |          ^^^^^^^^^^^^^^ help: use fully-qualified syntax: `<u8 as Trait>::AssocTy`

error: aborting due to 19 previous errors

Some errors have detailed explanations: E0121, E0223.
For more information about an error, try `rustc --explain E0121`.
