3 // Test that `&PrinterSupport`, which is really short for `&'a
4 // PrinterSupport<'b>`, gets properly expanded when it appears in a
5 // closure type. This used to result in messed up De Bruijn indices.
7 // pretty-expanded FIXME #23616
9 trait PrinterSupport<'ast> {
10 fn ast_map(&self) -> Option<&'ast usize> { None }
14 f: Option<&'ast usize>
17 impl<'ast> PrinterSupport<'ast> for NoAnn<'ast> {
20 fn foo<'ast, G>(f: Option<&'ast usize>, g: G) where G: FnOnce(&dyn PrinterSupport) {
21 let annotation = NoAnn { f: f };