The #[rustc_on_unimplemented]
attribute lets you specify a custom error
message for when a particular trait isn’t implemented on a type placed in a
position that needs that trait. For example, when the following code is
compiled:
#![feature(rustc_attrs)]
#[rustc_on_unimplemented(lorem="")] // error!
trait BadAnnotation {}
Runthere will be an error about bool
not implementing Index<u8>
, followed by a
note saying “the type bool
cannot be indexed by u8
”.
For this to work, some note must be specified. An empty attribute will not do anything, please remove the attribute or add some helpful note for users of the trait.