@@ -10,36 +10,53 @@ warning: malformed `on_unimplemented` attribute
1010 --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:3:32
1111 |
1212LL | #[diagnostic::on_unimplemented(unsupported = "foo")]
13- | ^^^^^^^^^^^^^^^^^^^
13+ | ^^^^^^^^^^^^^^^^^^^ invalid option found here
14+ |
15+ = help: only `message`, `note` and `label` are allowed as options
1416
1517warning: malformed `on_unimplemented` attribute
1618 --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:12:50
1719 |
1820LL | #[diagnostic::on_unimplemented(message = "Boom", unsupported = "Bar")]
19- | ^^^^^^^^^^^^^^^^^^^
21+ | ^^^^^^^^^^^^^^^^^^^ invalid option found here
22+ |
23+ = help: only `message`, `note` and `label` are allowed as options
2024
2125warning: malformed `on_unimplemented` attribute
2226 --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:17:50
2327 |
2428LL | #[diagnostic::on_unimplemented(message = "Boom", on(_Self = "i32", message = "whatever"))]
25- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
29+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ invalid option found here
30+ |
31+ = help: only `message`, `note` and `label` are allowed as options
2632
2733warning: malformed `on_unimplemented` attribute
28- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:22:1
34+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:22:32
2935 |
3036LL | #[diagnostic::on_unimplemented = "boom"]
31- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
37+ | ^^^^^^^^ invalid option found here
38+ |
39+ = help: only `message`, `note` and `label` are allowed as options
40+
41+ warning: missing options for `on_unimplemented` attribute
42+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:26:1
43+ |
44+ LL | #[diagnostic::on_unimplemented]
45+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
46+ |
47+ = help: at least one of the `message`, `note` and `label` options are expected
3248
3349warning: malformed `on_unimplemented` attribute
3450 --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:3:32
3551 |
3652LL | #[diagnostic::on_unimplemented(unsupported = "foo")]
37- | ^^^^^^^^^^^^^^^^^^^
53+ | ^^^^^^^^^^^^^^^^^^^ invalid option found here
3854 |
55+ = help: only `message`, `note` and `label` are allowed as options
3956 = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
4057
4158error[E0277]: the trait bound `i32: Foo` is not satisfied
42- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:31 :14
59+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:37 :14
4360 |
4461LL | take_foo(1_i32);
4562 | -------- ^^^^^ the trait `Foo` is not implemented for `i32`
@@ -52,7 +69,7 @@ help: this trait has no implementations, consider adding one
5269LL | trait Foo {}
5370 | ^^^^^^^^^
5471note: required by a bound in `take_foo`
55- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:26 :21
72+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:31 :21
5673 |
5774LL | fn take_foo(_: impl Foo) {}
5875 | ^^^ required by this bound in `take_foo`
@@ -61,12 +78,13 @@ warning: malformed `on_unimplemented` attribute
6178 --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:12:50
6279 |
6380LL | #[diagnostic::on_unimplemented(message = "Boom", unsupported = "Bar")]
64- | ^^^^^^^^^^^^^^^^^^^
81+ | ^^^^^^^^^^^^^^^^^^^ invalid option found here
6582 |
83+ = help: only `message`, `note` and `label` are allowed as options
6684 = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
6785
6886error[E0277]: Boom
69- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:33 :14
87+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:39 :14
7088 |
7189LL | take_baz(1_i32);
7290 | -------- ^^^^^ the trait `Baz` is not implemented for `i32`
@@ -79,7 +97,7 @@ help: this trait has no implementations, consider adding one
7997LL | trait Baz {}
8098 | ^^^^^^^^^
8199note: required by a bound in `take_baz`
82- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:27 :21
100+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:32 :21
83101 |
84102LL | fn take_baz(_: impl Baz) {}
85103 | ^^^ required by this bound in `take_baz`
@@ -88,12 +106,13 @@ warning: malformed `on_unimplemented` attribute
88106 --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:17:50
89107 |
90108LL | #[diagnostic::on_unimplemented(message = "Boom", on(_Self = "i32", message = "whatever"))]
91- | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
109+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ invalid option found here
92110 |
111+ = help: only `message`, `note` and `label` are allowed as options
93112 = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
94113
95114error[E0277]: Boom
96- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:35 :15
115+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:41 :15
97116 |
98117LL | take_boom(1_i32);
99118 | --------- ^^^^^ the trait `Boom` is not implemented for `i32`
@@ -106,11 +125,39 @@ help: this trait has no implementations, consider adding one
106125LL | trait Boom {}
107126 | ^^^^^^^^^^
108127note: required by a bound in `take_boom`
109- --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:28 :22
128+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:33 :22
110129 |
111130LL | fn take_boom(_: impl Boom) {}
112131 | ^^^^ required by this bound in `take_boom`
113132
114- error: aborting due to 3 previous errors; 8 warnings emitted
133+ warning: missing options for `on_unimplemented` attribute
134+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:26:1
135+ |
136+ LL | #[diagnostic::on_unimplemented]
137+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
138+ |
139+ = help: at least one of the `message`, `note` and `label` options are expected
140+ = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
141+
142+ error[E0277]: the trait bound `i32: Whatever` is not satisfied
143+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:43:19
144+ |
145+ LL | take_whatever(1_i32);
146+ | ------------- ^^^^^ the trait `Whatever` is not implemented for `i32`
147+ | |
148+ | required by a bound introduced by this call
149+ |
150+ help: this trait has no implementations, consider adding one
151+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:29:1
152+ |
153+ LL | trait Whatever {}
154+ | ^^^^^^^^^^^^^^
155+ note: required by a bound in `take_whatever`
156+ --> $DIR/do_not_fail_parsing_on_invalid_options_1.rs:34:26
157+ |
158+ LL | fn take_whatever(_: impl Whatever) {}
159+ | ^^^^^^^^ required by this bound in `take_whatever`
160+
161+ error: aborting due to 4 previous errors; 10 warnings emitted
115162
116163For more information about this error, try `rustc --explain E0277`.
0 commit comments