Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

vagueness about "add additional attributes" in `macro.proc.derive.attributes`

Open Beginner friendly
#1,760 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
65/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Stale
Tech stack
rust
Domain
documentation

Research direction

Start by locating the macro.proc.derive.attributes section and read the paragraph containing “add additional attributes into the scope.” Clarify that derive macro helper attributes may be used in the item’s scope rather than implying mutation of the input TokenStream; done means the wording is unambiguous and avoids the noted repetition.

Written by the indexing model from the issue text.

Description

A-proc-macro Language Cleanup

Derive macros can add additional attributes into the scope of the item they are on. Said attributes are called derive macro helper attributes. These attributes are inert, and their only purpose is to be fed into the derive macro that defined them. That said, they can be seen by all macros.

When it says a derive macro can "add additional attributes into the scope", it does not make it very clear that it allows these helper attributes to be used in the scope. Instead, the way it is worded suggests the derive macro can mutate its input TokenStream, which as far as I am aware is not the case. I believe derive macros are "pure"... with respect to their TokenStream, anyway.

...also "add additional" anything seems slightly repetitive, but that's relatively minor.

Dominant language
Rust
Stars
1.6k
Forks
609
Avg merge
1d 4h
Merged PRs (30d)
7

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from rust-lang/reference

All issues in rust-lang/reference

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.