Uh oh!
There was an error while loading. Please reload this page.
ICH: Add ability to test the ICH of exported metadata items. - #36370
Merged
bors merged 1 commit intoSep 24, 2016
Conversation
24 tasks
bors
commented
Sep 13, 2016
Collaborator
☔ The latest upstream changes (presumably #35960) made this pull request unmergeable. Please resolve the merge conflicts. |
michaelwoeristerforce-pushed
the
incr-comp-metadata-hashes-check
branch
from
September 23, 2016 16:43
cfe6f0d to
560476cComparenikomatsakis
commented
Sep 23, 2016
Contributor
@bors r+ |
bors
commented
Sep 23, 2016
Collaborator
📌 Commit 560476c has been approved by |
bors
commented
Sep 23, 2016
Collaborator
⌛ Testing commit 560476c with merge 9935022... |
bors
commented
Sep 23, 2016
Collaborator
💔 Test failed - auto-win-gnu-32-opt-rustbuild |
michaelwoeristerforce-pushed
the
incr-comp-metadata-hashes-check
branch
from
September 23, 2016 21:23
560476c to
6a2666dComparemichaelwoerister
commented
Sep 23, 2016
MemberAuthor
@bors r=nikomatsakis Deleted a constant that sneaked back in during rebasing. |
bors
commented
Sep 23, 2016
Collaborator
📌 Commit 6a2666d has been approved by |
bors
commented
Sep 24, 2016
Collaborator
bors added a commit
that referenced
this pull request
Sep 24, 2016
…ck, r=nikomatsakis ICH: Add ability to test the ICH of exported metadata items. Also adds an example test case for ICH testing. r? @nikomatsakis
bors
commented
Sep 24, 2016
Collaborator
nnethercote added a commit
to nnethercote/rust
that referenced
this pull request
Apr 7, 2026
This impl skips over a handful of attributes as if they aren't there. This skipping originated all the way back in rust-lang#36025, and was extended a couple of times, e.g. in rust-lang#36370. Those PRs don't have any explanation of why the skipping exists. Removing the impl (and falling back to the default impl for `[T]`) doesn't seem to have any effects.
nnethercote added a commit
to nnethercote/rust
that referenced
this pull request
Apr 7, 2026
This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang#36025 and was extended a couple of times, e.g. in rust-lang#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correcteness benefits.
nnethercote added a commit
to nnethercote/rust
that referenced
this pull request
Apr 7, 2026
This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang#36025 and was extended a couple of times, e.g. in rust-lang#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
rust-borsBot
pushed a commit
that referenced
this pull request
Apr 20, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in #36025 and was extended a couple of times, e.g. in #36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
github-actionsBot
pushed a commit
to rust-lang/rustc-dev-guide
that referenced
this pull request
Apr 21, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang/rust#36025 and was extended a couple of times, e.g. in rust-lang/rust#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
pullBot
pushed a commit
to LeeeeeeM/miri
that referenced
this pull request
Apr 24, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang/rust#36025 and was extended a couple of times, e.g. in rust-lang/rust#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
renovate-bot pushed a commit
to renovate-bot/rust-lang-_-compiler-builtins
that referenced
this pull request
Apr 26, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang/rust#36025 and was extended a couple of times, e.g. in rust-lang/rust#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
github-actionsBot
pushed a commit
to rust-lang/stdarch
that referenced
this pull request
May 4, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang/rust#36025 and was extended a couple of times, e.g. in rust-lang/rust#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
pullBot
pushed a commit
to Kokoro2336/rust-analyzer
that referenced
this pull request
May 4, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang/rust#36025 and was extended a couple of times, e.g. in rust-lang/rust#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
ghaaj pushed a commit
to ghaaj/polygrammar
that referenced
this pull request
Aug 7, 2026
…, r=JonathanBrouwer Remove `HashStable` impl for `[hir::Attribute]`. This impl skips: - All doc comments - A handful of other attributes, mostly `rustc_*` ones related to incremental compilation testing. This skipping originated in rust-lang/rust#36025 and was extended a couple of times, e.g. in rust-lang/rust#36370. Those PRs don't have any explanation of why the skipping exists. Perhaps the reasoning was that doc comments should only affect rustdoc and rustdoc doesn't use incremental compilation? But doc comments end up in metadata, and there is a query `attrs_for_def` that returns a `&'tcx [hir::Attribute]`. So skipping some attributes just seems plainly wrong. This commit removes the impl, which means `[hir::Attribute]` hashing falls back to the default impl for `[T]`. This has no noticeable effect on the test suite. It does slightly hurt performance, because of the doc comments. This perf regression seems worth it for the correctness benefits.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Also adds an example test case for ICH testing.
r? @nikomatsakis