about summary refs log tree commit diff
path: root/src/doc/rustc-dev-guide/ci
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-08-19 11:36:53 +0000
committerbors <bors@rust-lang.org>2025-08-19 11:36:53 +0000
commit8c32e313cccf7df531e2d49ffb8227bb92304aee (patch)
tree7fd1e4b477f9942fd96d8cf68e63d3eea112777c /src/doc/rustc-dev-guide/ci
parent8365fcb2b840c95eeb0bc377af8bd498fad22245 (diff)
parent8baab4cdf77979aed3ed7a5617df651c3e933405 (diff)
downloadrust-8c32e313cccf7df531e2d49ffb8227bb92304aee.tar.gz
rust-8c32e313cccf7df531e2d49ffb8227bb92304aee.zip
Auto merge of #142487 - estebank:serde-attr-5, r=petrochenkov
Detect missing `derive` on unresolved attribute even when not imported

When encountering unresolved attributes, ensure the proc-macros for every crate in scope are added to the `macro_map` so that typos and missing `derive`s are properly detected.

```
error: cannot find attribute `sede` in this scope
  --> $DIR/missing-derive-3.rs:20:7
   |
LL |     #[sede(untagged)]
   |       ^^^^
   |
help: the derive macros `Deserialize` and `Serialize` accept the similarly named `serde` attribute
   |
LL |     #[serde(untagged)]
   |         +

error: cannot find attribute `serde` in this scope
  --> $DIR/missing-derive-3.rs:14:7
   |
LL |     #[serde(untagged)]
   |       ^^^^^
   |
note: `serde` is imported here, but it is a crate, not an attribute
  --> $DIR/missing-derive-3.rs:4:1
   |
LL | extern crate serde;
   | ^^^^^^^^^^^^^^^^^^^
help: `serde` is an attribute that can be used by the derive macros `Deserialize` and `Serialize`, you might be missing a `derive` attribute
   |
LL + #[derive(Deserialize, Serialize)]
LL | enum B {
   |
```

Follow up to rust-lang/rust#134841. Fix rust-lang/rust#47608.
Diffstat (limited to 'src/doc/rustc-dev-guide/ci')
0 files changed, 0 insertions, 0 deletions