wherror 2.4.0

The same derive(Error) macro thiserror provides + the features you want!
Documentation
1
2
3
4
5
error: not expected here; the #[source] attribute belongs on a specific field
 --> tests/ui/unexpected-struct-source.rs:4:1
  |
4 | #[source]
  | ^^^^^^^^^