warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
  --> $DIR/specialization-wfcheck.rs:3:12
   |
LL | #![feature(specialization)]
   |            ^^^^^^^^^^^^^^
   |
   = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
   = help: consider using `min_specialization` instead, which is more stable and complete
   = note: `#[warn(incomplete_features)]` on by default

error[E0277]: the trait bound `U: Eq` is not satisfied
  --> $DIR/specialization-wfcheck.rs:7:17
   |
LL | default impl<U> Foo<'static, U> for () {}
   |                 ^^^^^^^^^^^^^^^ the trait `Eq` is not implemented for `U`
   |
note: required by a bound in `Foo`
  --> $DIR/specialization-wfcheck.rs:5:18
   |
LL | trait Foo<'a, T: Eq + 'a> { }
   |                  ^^ required by this bound in `Foo`
help: consider restricting type parameter `U`
   |
LL | default impl<U: std::cmp::Eq> Foo<'static, U> for () {}
   |               ++++++++++++++

error: aborting due to 1 previous error; 1 warning emitted

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