Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Box Item::Attributes #80802

Merged
merged 1 commit into from Jan 14, 2021
Merged

Box Item::Attributes #80802

merged 1 commit into from Jan 14, 2021

Conversation

jyn514
Copy link
Member

@jyn514 jyn514 commented Jan 8, 2021

This reduces the size of Item from 128 to 40 bytes. I think this is as small as it needs to get 🎉

Builds on #80339 and should not be merged before.

r? @GuillaumeGomez

@jyn514 jyn514 added T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. I-compilemem Issue: Problems and improvements with respect to memory usage during compilation. labels Jan 8, 2021
@rust-highfive

This comment has been minimized.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 8, 2021
@jyn514 jyn514 added S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 8, 2021
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-llvm-9 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
.................................................................................................... 9000/11245
.................................................................................................... 9100/11245
.................................................................................................... 9200/11245
.........................................i......i................................................... 9300/11245
................................................................................iiiiii..iiiiii.i.... 9400/11245
.................................................................................................... 9600/11245
.................................................................................................... 9700/11245
.................................................................................................... 9800/11245
.................................................................................................... 9900/11245
---
Suite("src/test/assembly") not skipped for "bootstrap::test::Assembly" -- not in ["src/tools/tidy"]
Check compiletest suite=assembly mode=assembly (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)

running 27 tests
iiiiiiiiiiiiiiiiiiiiiiiiiii

 finished in 0.078 seconds
Suite("src/test/incremental") not skipped for "bootstrap::test::Incremental" -- not in ["src/tools/tidy"]
Check compiletest suite=incremental mode=incremental (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
---
Suite("src/test/debuginfo") not skipped for "bootstrap::test::Debuginfo" -- not in ["src/tools/tidy"]
Check compiletest suite=debuginfo mode=debuginfo (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)

running 116 tests
iiiiiiiiii.i.i..i....iii....i..i...ii...........iiii........i.....i...i.......ii.i.ii......iiii....i 100/116
test result: ok. 78 passed; 0 failed; 38 ignored; 0 measured; 0 filtered out; finished in 2.26s

 finished in 2.342 seconds
Suite("src/test/ui-fulldeps") not skipped for "bootstrap::test::UiFullDeps" -- not in ["src/tools/tidy"]
---
Building stage0 tool linkchecker (x86_64-unknown-linux-gnu)
   Compiling once_cell v1.4.1
   Compiling linkchecker v0.1.0 (/checkout/src/tools/linkchecker)
    Finished release [optimized] target(s) in 1.78s
std/primitive.slice.html:1476: broken link - src/core/slice/ascii.rs.html
std/primitive.slice.html:1476: broken link - src/core/slice/ascii.rs.html
std/primitive.slice.html:1477: broken link - src/core/slice/ascii.rs.html
std/primitive.slice.html:1480: broken link - src/core/slice/ascii.rs.html
std/primitive.slice.html:1485: broken link - src/core/slice/ascii.rs.html
std/primitive.slice.html:1689: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1706: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1707: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1720: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1720: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1722: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1723: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1723: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1725: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1726: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1726: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1728: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1729: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1729: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1731: broken link - src/alloc/vec/partial_eq.rs.html
std/primitive.slice.html:1732: broken link - src/core/slice/cmp.rs.html
std/primitive.slice.html:1733: broken link - src/core/slice/cmp.rs.html
std/primitive.f64.html:825: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:825: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:827: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:827: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:888: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:888: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:952: broken link - src/core/fmt/float.rs.html
std/primitive.f64.html:952: broken link - src/core/fmt/float.rs.html
std/io/struct.IoSlice.html:689: broken link - src/core/slice/ascii.rs.html
std/io/struct.IoSlice.html:690: broken link - src/core/slice/ascii.rs.html
std/io/struct.IoSliceMut.html:1476: broken link - src/core/slice/ascii.rs.html
std/io/struct.IoSliceMut.html:1477: broken link - src/core/slice/ascii.rs.html
std/io/struct.IoSliceMut.html:1480: broken link - src/core/slice/ascii.rs.html
std/io/struct.IoSliceMut.html:1485: broken link - src/core/slice/ascii.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/tuple.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.Ord.html:107: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.Ord.html:108: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/tuple.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.Eq.html:36: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialOrd.html:150: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.PartialOrd.html:151: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/slice/cmp.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/tuple.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/ptr/const_ptr.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialEq.html:153: broken link - src/core/ptr/mut_ptr.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/cmp/trait.PartialEq.html:203: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2436: broken link - src/core/slice/ascii.rs.html
std/vec/struct.Vec.html:2437: broken link - src/core/slice/ascii.rs.html
std/vec/struct.Vec.html:2440: broken link - src/core/slice/ascii.rs.html
std/vec/struct.Vec.html:2445: broken link - src/core/slice/ascii.rs.html
std/vec/struct.Vec.html:2630: broken link - src/alloc/vec/cow.rs.html
std/vec/struct.Vec.html:2630: broken link - src/alloc/vec/cow.rs.html
std/vec/struct.Vec.html:2657: broken link - src/alloc/vec/cow.rs.html
std/vec/struct.Vec.html:2657: broken link - src/alloc/vec/cow.rs.html
std/vec/struct.Vec.html:2713: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2713: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2715: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2716: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2716: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2718: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2719: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2719: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2721: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2722: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2722: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2724: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2725: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2725: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2727: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2731: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2731: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2733: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2734: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2734: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2736: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2737: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2737: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2739: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2740: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2740: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2742: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2743: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2743: broken link - src/alloc/vec/partial_eq.rs.html
std/vec/struct.Vec.html:2745: broken link - src/alloc/vec/partial_eq.rs.html
std/iter/trait.FromIterator.html:94: broken link - src/core/unit.rs.html
std/iter/trait.FromIterator.html:105: broken link - src/core/unit.rs.html
std/iter/trait.FromIterator.html:105: broken link - src/alloc/vec/cow.rs.html
std/iter/trait.FromIterator.html:105: broken link - src/alloc/vec/cow.rs.html
std/primitive.tuple.html:86: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:86: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:87: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:87: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:88: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:88: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:89: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:89: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:90: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:90: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:91: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:91: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:92: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:92: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:93: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:93: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:94: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:94: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:95: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:95: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:96: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:96: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:97: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:97: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:98: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:122: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:122: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:126: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:126: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:130: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:130: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:134: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:134: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:138: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:138: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:142: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:142: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:146: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:146: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:150: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:150: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:154: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:154: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:158: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:158: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:162: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:162: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:166: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:166: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:170: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:170: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:172: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:173: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:173: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:175: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:176: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:176: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:178: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:179: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:179: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:181: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:182: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:182: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:184: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:185: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:185: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:187: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:188: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:188: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:190: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:191: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:191: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:193: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:194: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:194: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:196: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:197: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:197: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:199: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:200: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:200: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:202: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:203: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:203: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:205: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:206: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:206: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:207: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:208: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:210: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:212: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:213: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:213: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:214: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:215: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:217: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:219: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:220: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:220: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:221: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:222: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:224: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:226: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:227: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:227: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:228: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:229: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:231: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:233: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:234: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:234: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:235: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:236: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:238: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:240: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:241: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:241: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:242: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:243: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:245: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:247: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:248: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:248: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:249: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:250: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:252: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:254: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:255: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:255: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:256: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:257: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:259: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:261: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:262: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:262: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:263: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:264: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:266: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:268: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:269: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:269: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:270: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:271: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:273: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:275: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:276: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:276: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:277: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:278: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:280: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:282: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:283: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:283: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:284: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:285: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:287: broken link - src/core/tuple.rs.html
std/primitive.tuple.html:289: broken link - src/core/tuple.rs.html
std/primitive.f32.html:848: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:848: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:850: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:850: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:905: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:905: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:969: broken link - src/core/fmt/float.rs.html
std/primitive.f32.html:969: broken link - src/core/fmt/float.rs.html
std/primitive.bool.html:42: broken link - src/core/bool.rs.html
std/primitive.bool.html:42: broken link - src/core/bool.rs.html
std/primitive.bool.html:49: broken link - src/core/bool.rs.html
std/primitive.unit.html:37: broken link - src/core/unit.rs.html
std/primitive.unit.html:48: broken link - src/core/unit.rs.html
std/fmt/trait.Debug.html:102: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Debug.html:102: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Debug.html:102: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Debug.html:102: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Display.html:48: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Display.html:48: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Display.html:48: broken link - src/core/fmt/float.rs.html
std/fmt/trait.Display.html:48: broken link - src/core/fmt/float.rs.html
std/fmt/trait.LowerExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.LowerExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.LowerExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.LowerExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.UpperExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.UpperExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.UpperExp.html:42: broken link - src/core/fmt/float.rs.html
std/fmt/trait.UpperExp.html:42: broken link - src/core/fmt/float.rs.html
std/borrow/enum.Cow.html:166: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:166: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:174: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:174: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:213: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:213: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:217: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:217: broken link - src/alloc/vec/cow.rs.html
std/borrow/enum.Cow.html:225: broken link - src/alloc/vec/partial_eq.rs.html
std/borrow/enum.Cow.html:225: broken link - src/alloc/vec/partial_eq.rs.html
std/borrow/enum.Cow.html:227: broken link - src/alloc/vec/partial_eq.rs.html

@GuillaumeGomez
Copy link
Member

Looks good for now. I'll re-review once #80339 has been merged. Also, might be worth it to have a perf run too.

@bors
Copy link
Contributor

bors commented Jan 10, 2021

☔ The latest upstream changes (presumably #80867) made this pull request unmergeable. Please resolve the merge conflicts.

@jyn514 jyn514 force-pushed the box-attributes branch 2 times, most recently from 6d21dd3 to 030e1c9 Compare January 10, 2021 15:38
This reduces the size of Item from 136 to 48 bytes.
@jyn514 jyn514 added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. labels Jan 10, 2021
@jyn514
Copy link
Member Author

jyn514 commented Jan 10, 2021

@bors try @rust-timer queue

This didn't actually depend on #80339, I was just too lazy to change it. Since that isn't getting merged any time soon I dropped those changes.

@rust-timer
Copy link
Collaborator

Awaiting bors try build completion.

@bors
Copy link
Contributor

bors commented Jan 10, 2021

⌛ Trying commit 690aeaf with merge 2420bbf76cea896b7592e5edbbf9be549d1c8f3e...

@bors
Copy link
Contributor

bors commented Jan 10, 2021

☀️ Try build successful - checks-actions
Build commit: 2420bbf76cea896b7592e5edbbf9be549d1c8f3e (2420bbf76cea896b7592e5edbbf9be549d1c8f3e)

@rust-timer
Copy link
Collaborator

Queued 2420bbf76cea896b7592e5edbbf9be549d1c8f3e with parent fd34606, future comparison URL.

@rustbot label: +S-waiting-on-perf

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jan 10, 2021
@rust-timer
Copy link
Collaborator

Finished benchmarking try commit (2420bbf76cea896b7592e5edbbf9be549d1c8f3e): comparison url.

Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. Please note that if the perf results are neutral, you should likely undo the rollup=never given below by specifying rollup- to bors.

Importantly, though, if the results of this run are non-neutral do not roll this PR up -- it will mask other regressions or improvements in the roll up.

@bors rollup=never
@rustbot label: +S-waiting-on-review -S-waiting-on-perf

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Jan 10, 2021
@jyn514
Copy link
Member Author

jyn514 commented Jan 10, 2021

Interesting. Up to -.6% on serde-doc (which is probably the closest we have to a realistic rustdoc benchmark), but up to +.2% on other several other benches, including hello world and await-call-tree. Max-rss is all over the place.

One reason this might be slow is that attributes are accessed a lot, here's rg item.attrs src/librustdoc:

item.attrs
src/librustdoc/clean/mod.rs
876:    let macro_kind = item.attrs.iter().find_map(|a| {
899:            for mi in item.attrs.lists(sym::proc_macro_derive) {
2040:                    let attrs = item.attrs.clean(cx);

src/librustdoc/clean/inline.rs
437:    item.attrs = merge_attrs(cx, parent_module.into(), load_attrs(cx, did), attrs);
438:    debug!("merged_attrs={:?}", item.attrs);

src/librustdoc/visit_ast.rs
260:                    let please_inline = item.attrs.iter().any(|item| match item.meta_item_list() {
283:                    attrs: &item.attrs,

src/librustdoc/formats/cache.rs
325:                        for alias in item.attrs.get_doc_aliases() {

src/librustdoc/html/render/cache.rs
86:            for alias in item.attrs.get_doc_aliases() {

src/librustdoc/passes/check_code_block_syntax.rs
52:                super::source_span_for_markdown_range(self.cx, &dox, &code_block.range, &item.attrs)
86:                    super::span_of_attrs(&item.attrs).unwrap_or(item.source.span()),
109:        if let Some(dox) = &item.attrs.collapsed_doc_value() {
110:            let sp = span_of_attrs(&item.attrs).unwrap_or(item.source.span());

src/librustdoc/passes/doc_test_lints.rs
40:        let dox = item.attrs.collapsed_doc_value().unwrap_or_else(String::new);
99:            let sp = span_of_attrs(&item.attrs).unwrap_or(item.source.span());
112:            span_of_attrs(&item.attrs).unwrap_or(item.source.span()),

src/librustdoc/passes/non_autolinks.rs
74:        let dox = item.attrs.collapsed_doc_value().unwrap_or_default();
77:                let sp = super::source_span_for_markdown_range(cx, &dox, &range, &item.attrs)
78:                    .or_else(|| span_of_attrs(&item.attrs))

src/librustdoc/doctest.rs
137:                    &krate.item.attrs,
1035:        self.visit_testable(name, &item.attrs, item.hir_id, item.span, |this| {
1041:        self.visit_testable(item.ident.to_string(), &item.attrs, item.hir_id, item.span, |this| {
1047:        self.visit_testable(item.ident.to_string(), &item.attrs, item.hir_id, item.span, |this| {
1053:        self.visit_testable(item.ident.to_string(), &item.attrs, item.hir_id, item.span, |this| {

src/librustdoc/passes/html_tags.rs
184:        let dox = item.attrs.collapsed_doc_value().unwrap_or_default();
188:                let sp = match super::source_span_for_markdown_range(cx, &dox, range, &item.attrs) {
190:                    None => span_of_attrs(&item.attrs).unwrap_or(item.source.span()),

src/librustdoc/passes/propagate_doc_cfg.rs
27:        let new_cfg = match (self.parent_cfg.take(), item.attrs.cfg.take()) {
37:        item.attrs.cfg = new_cfg;

src/librustdoc/html/render/mod.rs
2258:    let cfg = match (&item.attrs.cfg, parent.attrs.cfg.as_ref()) {
2263:    debug!("Portability {:?} - {:?} = {:?}", item.attrs.cfg, parent.attrs.cfg, cfg);
2272:    let cfg = match (&item.attrs.cfg, parent.and_then(|p| p.attrs.cfg.as_ref())) {
2279:        item.attrs.cfg,

src/librustdoc/passes/collect_intra_doc_links.rs
893:        if item.is_mod() && item.attrs.inner_docs {
901:        for (parent_module, doc) in item.attrs.collapsed_doc_value_by_module_level() {
914:                    item.attrs.links.push(link);
920:            if !item.attrs.inner_docs {
1002:        let base_node = if item.is_mod() && item.attrs.inner_docs {
1656:    let attrs = &item.attrs;

r? @nnethercote - am I missing something obvious to make this faster?

@nnethercote
Copy link
Contributor

@bors r+

@bors
Copy link
Contributor

bors commented Jan 13, 2021

📌 Commit 690aeaf has been approved by nnethercote

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 13, 2021
@bors
Copy link
Contributor

bors commented Jan 13, 2021

⌛ Testing commit 690aeaf with merge ab80a582cfb3c1ab6117d842406e32bbe036e509...

@rust-log-analyzer
Copy link
Collaborator

The job i686-msvc-1 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
failures:

---- [incremental] incremental\thinlto\cgu_invalidated_when_import_removed.rs stdout ----

error in revision `cfail2`: test compilation failed although it shouldn't!
status: exit code: 1
command: PATH="D:\a\rust\rust\build\i686-pc-windows-msvc\stage2\bin;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.28.29333\bin\HostX64\x64;C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.28.29333\bin\HostX64\x86;D:\a\rust\rust\build\i686-pc-windows-msvc\stage0-bootstrap-tools\i686-pc-windows-msvc\release\deps;D:\a\rust\rust\build\i686-pc-windows-msvc\stage0\bin;D:\a\rust\rust\ninja;D:\a\rust\rust\msys2\mingw32\bin;C:\hostedtoolcache\windows\Python\3.9.1\x64\Scripts;C:\hostedtoolcache\windows\Python\3.9.1\x64;C:\msys64\usr\bin;D:\a\rust\rust\sccache;C:\Users\runneradmin\.dotnet\tools;C:\Program Files\MongoDB\Server\4.4\bin;C:\aliyun-cli;C:\ProgramData\kind;C:\vcpkg;C:\cf-cli;C:\Program Files (x86)\NSIS;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack\2.5.1\x64;C:\ProgramData\chocolatey\lib\ghc.8.10.2.2\tools\ghc-8.10.2\bin;C:\Program Files\dotnet;C:\mysql-5.7.21-winx64\bin;C:\Program Files\R\R-4.0.3\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\Program Files (x86)\sbt\bin;C:\Rust\.cargo\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\bin;C:\Program Files (x86)\pipx_bin;C:\hostedtoolcache\windows\go\1.14.13\x64\bin;C:\hostedtoolcache\windows\Python\3.7.9\x64\Scripts;C:\hostedtoolcache\windows\Python\3.7.9\x64;C:\hostedtoolcache\windows\Ruby\2.5.8\x64\bin;C:\Program Files\Java\jdk8u275-b01\bin;C:\npm\prefix;C:\Program Files\Microsoft SDKs\Azure\Azure Dev Spaces CLI;C:\Program Files\Microsoft SDKs\Azure\Azure Dev Spaces CLI;C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0;C:\windows\System32\OpenSSH;C:\ProgramData\Chocolatey\bin;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\Docker;C:\Program Files\PowerShell\7;C:\Program Files\dotnet;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn;C:\Program Files\nodejs;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.6.3\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\OpenSSL\bin;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\TortoiseSVN\bin;C:\SeleniumWebDrivers\ChromeDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\Program Files\CMake\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\bin;C:\Program Files (x86)\Microsoft BizTalk Server;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\bin\\rustc.exe" "D:\\a\\rust\\rust\\src/test\\incremental\\thinlto\\cgu_invalidated_when_import_removed.rs" "-Zthreads=1" "--target=i686-pc-windows-msvc" "--cfg" "cfail2" "-C" "incremental=D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.inc" "-Z" "incremental-verify-ich" "--error-format" "json" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-C" "prefer-dynamic" "--out-dir" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed" "-Crpath" "-Cdebuginfo=0" "-Zunstable-options" "-Lnative=D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\native\\rust-test-helpers" "-O" "-Zhuman-readable-cgu-names" "-Cllvm-args=-import-instr-limit=10" "-L" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\auxiliary"
------------------------------------------

------------------------------------------
stderr:
stderr:
------------------------------------------
error: linking with `link.exe` failed: exit code: 1201
   |
   = note: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Tools\\MSVC\\14.28.29333\\bin\\HostX64\\x86\\link.exe" "/NOLOGO" "/NXCOMPAT" "/LARGEADDRESSAWARE" "/SAFESEH" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.cgu_invalidated_when_import_removed.7rcbfp3g.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.cgu_invalidated_when_import_removed.7rcbfp3g-bar.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.cgu_invalidated_when_import_removed.7rcbfp3g-foo.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.std.1686h8ch-in-cgu_invalidated_when_import_removed.7rcbfp3g-rt.volatile.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.std.1686h8ch-in-cgu_invalidated_when_import_removed.7rcbfp3g-sys_common-backtrace.volatile.rcgu.o" "/OUT:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.exe" "/OPT:REF,ICF" "/DEBUG" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\native\\rust-test-helpers" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\auxiliary" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "std-60343a5f9dad50f8.dll.lib" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib\\libcompiler_builtins-432b832063ae9291.rlib" "advapi32.lib" "ws2_32.lib" "userenv.lib" "msvcrt.lib"
   = note: LINK : fatal error LNK1201: error writing to program database 'D:\a\rust\rust\build\i686-pc-windows-msvc\test\incremental\thinlto\cgu_invalidated_when_import_removed\cgu_invalidated_when_import_removed.pdb'; check for insufficient disk space, invalid path, or insufficient privilege

error: aborting due to previous error


---
    [incremental] incremental\thinlto\cgu_invalidated_when_import_removed.rs

test result: FAILED. 123 passed; 1 failed; 2 ignored; 0 measured; 0 filtered out; finished in 14.24s

Some tests failed in compiletest suite=incremental mode=incremental host=i686-pc-windows-msvc target=i686-pc-windows-msvc


command did not execute successfully: "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage0-tools-bin\\compiletest.exe" "--compile-lib-path" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\bin" "--run-lib-path" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "--rustc-path" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\bin\\rustc.exe" "--src-base" "D:\\a\\rust\\rust\\src/test\\incremental" "--build-base" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental" "--stage-id" "stage2-i686-pc-windows-msvc" "--suite" "incremental" "--mode" "incremental" "--target" "i686-pc-windows-msvc" "--host" "i686-pc-windows-msvc" "--llvm-filecheck" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\llvm\\build\\bin\\FileCheck.exe" "--nodejs" "C:\\Program Files\\nodejs\\node" "--host-rustcflags" "-Crpath -O -Cdebuginfo=0 -Zunstable-options  -Lnative=D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\native\\rust-test-helpers" "--target-rustcflags" "-Crpath -O -Cdebuginfo=0 -Zunstable-options  -Lnative=D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\native\\rust-test-helpers" "--docck-python" "C:\\hostedtoolcache\\windows\\Python\\3.9.1\\x64\\python3.exe" "--lldb-python" "C:\\hostedtoolcache\\windows\\Python\\3.9.1\\x64\\python3.exe" "--gdb" "C:\\msys64\\usr\\bin\\gdb" "--llvm-version" "11.0.1-rust-1.51.0-nightly" "--llvm-components" "aarch64 aarch64asmparser aarch64codegen aarch64desc aarch64disassembler aarch64info aarch64utils aggressiveinstcombine all all-targets analysis arm armasmparser armcodegen armdesc armdisassembler arminfo armutils asmparser asmprinter avr avrasmparser avrcodegen avrdesc avrdisassembler avrinfo binaryformat bitreader bitstreamreader bitwriter cfguard codegen core coroutines coverage debuginfocodeview debuginfodwarf debuginfogsym debuginfomsf debuginfopdb demangle dlltooldriver dwarflinker engine executionengine extensions frontendopenmp fuzzmutate globalisel gtest gtest_main hexagon hexagonasmparser hexagoncodegen hexagondesc hexagondisassembler hexagoninfo instcombine instrumentation interpreter ipo irreader jitlink libdriver lineeditor linker lto mc mca mcdisassembler mcjit mcparser mips mipsasmparser mipscodegen mipsdesc mipsdisassembler mipsinfo mirparser msp430 msp430asmparser msp430codegen msp430desc msp430disassembler msp430info native nativecodegen nvptx nvptxcodegen nvptxdesc nvptxinfo objcarcopts object objectyaml option orcerror orcjit passes powerpc powerpcasmparser powerpccodegen powerpcdesc powerpcdisassembler powerpcinfo profiledata remarks riscv riscvasmparser riscvcodegen riscvdesc riscvdisassembler riscvinfo riscvutils runtimedyld scalaropts selectiondag sparc sparcasmparser sparccodegen sparcdesc sparcdisassembler sparcinfo support symbolize systemz systemzasmparser systemzcodegen systemzdesc systemzdisassembler systemzinfo tablegen target testingsupport textapi transformutils vectorize webassembly webassemblyasmparser webassemblycodegen webassemblydesc webassemblydisassembler webassemblyinfo windowsmanifest x86 x86asmparser x86codegen x86desc x86disassembler x86info xray" "--cc" "" "--cxx" "" "--cflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"


failed to run: D:\a\rust\rust\build\bootstrap\debug\bootstrap test --stage 2 --exclude src/test/ui --exclude src/tools/linkchecker
Build completed unsuccessfully in 0:38:37
Build completed unsuccessfully in 0:38:37
make: *** [Makefile:72: ci-subset-1] Error 1

@bors
Copy link
Contributor

bors commented Jan 13, 2021

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jan 13, 2021
@jyn514
Copy link
Member Author

jyn514 commented Jan 13, 2021

Looks spurious:

error: linking with `link.exe` failed: exit code: 1201
   |
   = note: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Tools\\MSVC\\14.28.29333\\bin\\HostX64\\x86\\link.exe" "/NOLOGO" "/NXCOMPAT" "/LARGEADDRESSAWARE" "/SAFESEH" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.cgu_invalidated_when_import_removed.7rcbfp3g.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.cgu_invalidated_when_import_removed.7rcbfp3g-bar.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.cgu_invalidated_when_import_removed.7rcbfp3g-foo.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.std.1686h8ch-in-cgu_invalidated_when_import_removed.7rcbfp3g-rt.volatile.rcgu.o" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.std.1686h8ch-in-cgu_invalidated_when_import_removed.7rcbfp3g-sys_common-backtrace.volatile.rcgu.o" "/OUT:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\cgu_invalidated_when_import_removed.exe" "/OPT:REF,ICF" "/DEBUG" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\native\\rust-test-helpers" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\test\\incremental\\thinlto\\cgu_invalidated_when_import_removed\\auxiliary" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "/LIBPATH:D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib" "std-60343a5f9dad50f8.dll.lib" "D:\\a\\rust\\rust\\build\\i686-pc-windows-msvc\\stage2\\lib\\rustlib\\i686-pc-windows-msvc\\lib\\libcompiler_builtins-432b832063ae9291.rlib" "advapi32.lib" "ws2_32.lib" "userenv.lib" "msvcrt.lib"
   = note: LINK : fatal error LNK1201: error writing to program database 'D:\a\rust\rust\build\i686-pc-windows-msvc\test\incremental\thinlto\cgu_invalidated_when_import_removed\cgu_invalidated_when_import_removed.pdb'; check for insufficient disk space, invalid path, or insufficient privilege

@bors retry

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 13, 2021
@bors
Copy link
Contributor

bors commented Jan 14, 2021

⌛ Testing commit 690aeaf with merge c7b0ddb...

@bors
Copy link
Contributor

bors commented Jan 14, 2021

☀️ Test successful - checks-actions
Approved by: nnethercote
Pushing c7b0ddb to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jan 14, 2021
@bors bors merged commit c7b0ddb into rust-lang:master Jan 14, 2021
@rustbot rustbot added this to the 1.51.0 milestone Jan 14, 2021
@jyn514 jyn514 deleted the box-attributes branch January 14, 2021 05:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I-compilemem Issue: Problems and improvements with respect to memory usage during compilation. merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants