summaryrefslogtreecommitdiffstats
path: root/tests/ui/on-unimplemented/bad-annotation.stderr
blob: a8d3c8680faae46907328f7e684eb1dc500e3d6b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
error: malformed `rustc_on_unimplemented` attribute input
  --> $DIR/bad-annotation.rs:17:1
   |
LL | #[rustc_on_unimplemented]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
help: the following are the possible correct uses
   |
LL | #[rustc_on_unimplemented = "message"]
   |
LL | #[rustc_on_unimplemented(/*opt*/ message = "...", /*opt*/ label = "...", /*opt*/ note = "...")]
   |

error[E0230]: there is no parameter `C` on trait `BadAnnotation2`
  --> $DIR/bad-annotation.rs:22:1
   |
LL | #[rustc_on_unimplemented = "Unimplemented trait error on `{Self}` with params `<{A},{B},{C}>`"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0231]: only named substitution parameters are allowed
  --> $DIR/bad-annotation.rs:27:1
   |
LL | #[rustc_on_unimplemented = "Unimplemented trait error on `{Self}` with params `<{A},{B},{}>`"]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0232]: this attribute must have a valid value
  --> $DIR/bad-annotation.rs:32:26
   |
LL | #[rustc_on_unimplemented(lorem="")]
   |                          ^^^^^^^^ expected value here
   |
   = note: eg `#[rustc_on_unimplemented(message="foo")]`

error[E0232]: this attribute must have a valid value
  --> $DIR/bad-annotation.rs:36:26
   |
LL | #[rustc_on_unimplemented(lorem(ipsum(dolor)))]
   |                          ^^^^^^^^^^^^^^^^^^^ expected value here
   |
   = note: eg `#[rustc_on_unimplemented(message="foo")]`

error[E0232]: this attribute must have a valid value
  --> $DIR/bad-annotation.rs:40:39
   |
LL | #[rustc_on_unimplemented(message="x", message="y")]
   |                                       ^^^^^^^^^^^ expected value here
   |
   = note: eg `#[rustc_on_unimplemented(message="foo")]`

error[E0232]: this attribute must have a valid value
  --> $DIR/bad-annotation.rs:44:39
   |
LL | #[rustc_on_unimplemented(message="x", on(desugared, message="y"))]
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected value here
   |
   = note: eg `#[rustc_on_unimplemented(message="foo")]`

error[E0232]: empty `on`-clause in `#[rustc_on_unimplemented]`
  --> $DIR/bad-annotation.rs:48:26
   |
LL | #[rustc_on_unimplemented(on(), message="y")]
   |                          ^^^^ empty on-clause here

error[E0232]: this attribute must have a valid value
  --> $DIR/bad-annotation.rs:52:26
   |
LL | #[rustc_on_unimplemented(on="x", message="y")]
   |                          ^^^^^^ expected value here
   |
   = note: eg `#[rustc_on_unimplemented(message="foo")]`

error[E0232]: this attribute must have a valid value
  --> $DIR/bad-annotation.rs:59:40
   |
LL | #[rustc_on_unimplemented(on(desugared, on(desugared, message="x")), message="y")]
   |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected value here
   |
   = note: eg `#[rustc_on_unimplemented(message="foo")]`

error: aborting due to 10 previous errors

Some errors have detailed explanations: E0230, E0231, E0232.
For more information about an error, try `rustc --explain E0230`.