1 error[E0718]: `add` language item must be applied to a trait with 1 generic argument
2 --> $DIR/lang-item-generic-requirements.rs:10:1
6 LL | trait MyAdd<'a, T> {}
7 | ------- this trait has 2 generic arguments
9 error[E0718]: `drop_in_place` language item must be applied to a function with at least 1 generic argument
10 --> $DIR/lang-item-generic-requirements.rs:14:1
12 LL | #[lang = "drop_in_place"]
13 | ^^^^^^^^^^^^^^^^^^^^^^^^^
15 LL | fn my_ptr_drop() {}
16 | - this function has 0 generic arguments
18 error[E0718]: `index` language item must be applied to a trait with 1 generic argument
19 --> $DIR/lang-item-generic-requirements.rs:18:1
21 LL | #[lang = "index"]
23 LL | trait MyIndex<'a, T> {}
24 | ------- this trait has 2 generic arguments
26 error[E0718]: `phantom_data` language item must be applied to a struct with 1 generic argument
27 --> $DIR/lang-item-generic-requirements.rs:22:1
29 LL | #[lang = "phantom_data"]
30 | ^^^^^^^^^^^^^^^^^^^^^^^^
32 LL | struct MyPhantomData<T, U>;
33 | ------ this struct has 2 generic arguments
35 error[E0718]: `owned_box` language item must be applied to a struct with at least 1 generic argument
36 --> $DIR/lang-item-generic-requirements.rs:28:1
38 LL | #[lang = "owned_box"]
39 | ^^^^^^^^^^^^^^^^^^^^^
42 | - this struct has 0 generic arguments
44 error[E0718]: `start` language item must be applied to a function with 1 generic argument
45 --> $DIR/lang-item-generic-requirements.rs:34:1
47 LL | #[lang = "start"]
50 LL | fn start(_: *const u8, _: isize, _: *const *const u8) -> isize {
51 | - this function has 0 generic arguments
53 error[E0392]: parameter `T` is never used
54 --> $DIR/lang-item-generic-requirements.rs:24:22
56 LL | struct MyPhantomData<T, U>;
59 = help: consider removing `T` or referring to it in a field
60 = help: if you intended `T` to be a const parameter, use `const T: usize` instead
62 error[E0392]: parameter `U` is never used
63 --> $DIR/lang-item-generic-requirements.rs:24:25
65 LL | struct MyPhantomData<T, U>;
68 = help: consider removing `U` or referring to it in a field
69 = help: if you intended `U` to be a const parameter, use `const U: usize` instead
71 error: aborting due to 8 previous errors
73 Some errors have detailed explanations: E0392, E0718.
74 For more information about an error, try `rustc --explain E0392`.