error[E0308]: mismatched types
  --> $DIR/issue-72076.rs:3:23
   |
LL |     fn f() -> Self::S {}
   |                       ^^ expected associated type, found `()`
   |
   = note: expected associated type `<Self as X>::S`
                    found unit type `()`
   = help: consider constraining the associated type `<Self as X>::S` to `()` or calling a method that returns `<Self as X>::S`
   = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html

error: aborting due to previous error

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