blob: 14d2269de598048ec7d3280a186070e136410ee7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
//@ known-bug: #130524
trait Transform {
type Output<'a>;
}
trait Propagate<Input> {}
fn new_node<T: Transform>(_c: Vec<Box<dyn for<'a> Propagate<<T as Transform>::Output<'a>>>>) -> T {
todo!()
}
impl<Input, T> Propagate<Input> for T {}
struct Noop;
impl Transform for Noop {
type Output<'a> = ();
}
fn main() {
let _node: Noop = new_node(vec![Box::new(Noop)]);
}
|