1 error: reached the type-length limit while instantiating `D::matches::<[closure@/home/david/projects/rust/workdirs/rust1/s...`
2 --> $DIR/issue-22638.rs:60:5
4 LL | / pub fn matches<F: Fn()>(&self, f: &F) {
5 LL | | //~^ ERROR reached the type-length limit while instantiating `D::matches::<[closure
6 LL | | let &D(ref a) = self;
11 = note: consider adding a `#![type_length_limit="40000000"]` attribute to your crate
13 error: aborting due to previous error