1error[E0107]: missing generics for associated type `CollectionFamily::Member`
2  --> $DIR/issue-78671.rs:7:47
3   |
4LL |     Box::new(Family) as &dyn CollectionFamily<Member=usize>
5   |                                               ^^^^^^ expected 1 generic argument
6   |
7note: associated type defined here, with 1 generic parameter: `T`
8  --> $DIR/issue-78671.rs:4:10
9   |
10LL |     type Member<T>;
11   |          ^^^^^^ -
12help: add missing generic argument
13   |
14LL |     Box::new(Family) as &dyn CollectionFamily<Member<T>=usize>
15   |                                               ~~~~~~~~~
16
17error[E0038]: the trait `CollectionFamily` cannot be made into an object
18  --> $DIR/issue-78671.rs:7:25
19   |
20LL |     Box::new(Family) as &dyn CollectionFamily<Member=usize>
21   |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `CollectionFamily` cannot be made into an object
22   |
23note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
24  --> $DIR/issue-78671.rs:4:10
25   |
26LL | trait CollectionFamily {
27   |       ---------------- this trait cannot be made into an object...
28LL |     type Member<T>;
29   |          ^^^^^^ ...because it contains the generic associated type `Member`
30   = help: consider moving `Member` to another trait
31
32error: aborting due to 2 previous errors
33
34Some errors have detailed explanations: E0038, E0107.
35For more information about an error, try `rustc --explain E0038`.
36