about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2022-10-26rustdoc: remove redundant CSS selector `.notable-traits .notable`Michael Howell-1/+1
The margin was already being set to 0 only a few lines lower.
2022-10-26Auto merge of #103572 - Dylan-DPC:rollup-a8bnxrw, r=Dylan-DPCbors-177/+82
Rollup of 6 pull requests Successful merges: - #95710 (Stabilize arbitrary_enum_discriminant, take 2) - #102706 (Support excluding the generation of the standalone docs) - #103428 (Removed verbose printing from the `PrettyPrinter` when printing constants) - #103543 (Update books) - #103546 (interpret: a bit of cast cleanup) - #103554 (rustdoc: add visible focus outline to rustdoc-toggle) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-10-26Rollup merge of #103554 - notriddle:notriddle/summary-focus-visible, r=jshaDylan DPC-0/+9
rustdoc: add visible focus outline to rustdoc-toggle The change in opacity is inconsistent with most of rustdoc, which uses default browser styles for the focus outline. Unfortunately, just using the default focus outline here won't work, because it gets applied to the summary itself instead of the pseudo-element "real button." Preview: https://notriddle.com/notriddle-rustdoc-demos/focus-outline/test_dingus/fn.test.html ## Screenshots ### light ![image](https://user-images.githubusercontent.com/1593513/197903818-61ce09e2-024e-4ca9-9aba-764039561d0a.png) ### dark ![image](https://user-images.githubusercontent.com/1593513/197903765-76e428ea-71e8-4724-ad21-7a4f9d923ea2.png) ### ayu ![image](https://user-images.githubusercontent.com/1593513/197903790-322e22ae-64b5-4138-b931-9ff3ff54f3b0.png)
2022-10-26Rollup merge of #103543 - ehuss:update-books, r=ehussDylan DPC-0/+0
Update books ## reference 4 commits in f6ed74f582bddcec73f753eafaab3749c4f7df61..4ea7c5def38ac81df33a9e48e5637a82a5ac404d 2022-10-08 02:43:26 -0700 to 2022-10-25 15:14:36 -0700 - Document Half Open Range Patterns + Improve Range Patterns in General (rust-lang/reference#1274) - clarifying which row contains the example (rust-lang/reference#1287) - Add `sym` operands for inline assembly (rust-lang/reference#1270) - Add basic GATs reference information (rust-lang/reference#1265) ## book 141 commits in f1e5ad844d0c61738006cdef26227beeb136948e..aa5ee485bd6bd80d205da7c82fcdd776f92fdd51 2022-09-19 09:48:21 -0400 to 2022-10-20 16:49:55 -0400 - Remove Turkish translation - Update chapter 4 from latest print edits - Update chapter 3 from latest print edits - Clarify division truncates toward zero. Fixes rust-lang/book#2856. - Update chapter 2 from latest print edits - Fix a problem with literal style ending - Explain both kinds of format string arguments - Update chapter 1 from latest print edits - Snapshot consolidated appendices - Fix ListNumber0, newlines after lists - Don't match nodes without anything - Handle listing numbers in appendices too - Regenerate everything - Fix chapter numbers in word doc so they're in the XML - Number Table captions too - Handle figures too - Regenerate ch4 - Handle listing numbers - Regenerate ch13 - Regenerate ch12 - Regenerate ch11 - Regenerate chapter 10 - Fix ListBullet0 - Handle ending of BoxCode better - Regenerate chapter 9 - Regenerate ch8 - Make RunInHead consistent-ish - Fix extra newline before boxes - Fix Box RunIn Head/Para - Fix newline after RunInHead/Para - Regenerate ch7 - Fix QuotePara - Fix ListPlain - Regenerate ch6 - Fix BoxCode - Regenerate chapter 5 - Fix GraphicSlug and CaptionLine - Regenerate snapshot of chapter 4 - Fix boxes a bit - Add a shellcheck ignore - Handle BoxListBullet - Handle superscript - Regenerate ch3 from xml and fix tables - Fix italics and whitespace interactions - Fix italic preceding/following - Fix preceding/following xpaths again - Fix italics - Fix code blocks - Fix more last bullets in lists - Fix box newlines - Fix last bullet in a list - Fix BoxType - Fix notes - Fix literals - Add the no editing warning at the top when getting snapshots from docx - Make the snapshot of the frontmatter nicer - Updates to appendixes C, D, and E after copyedit checks - Snapshots after copyedit checks of appendices a and b + recheck of 20 - Snapshot of appendices from copyedit - Updated snapshot of the appendices - Re-checks of chapter 19 - Re-checks of chapter 18 - Messy snapshot of chapter 20 after copyedit checks - Snapshot of ch20 after copyedit - Updated snapshot of chapter 20 - Messy snapshot of chapter 19 after copyedit checks - Snapshot of ch19 after copyedit - Updated snapshot of ch19 - Messy snapshot of ch 18 after copyedit review - Snapshot of ch 18 after copyedit - Update snapshot of ch18 - Messy snapshot of ch 17 after copyedit review - Snapshot of ch17 copyedit - Updated snapshot of ch17 - Messy snapshot of ch16 after copyedit - Snapshot of ch16 copyedited - Updated snapshot of ch16 - Messy snapshot of ch 15 after copyedit checks - Re-review of earlier chapters - Snapshot of ch15 copyedit - Update snapshot of ch15 - Messy snapshots of other chapters with indentation fixed - Messy snapshot of ch2 with indentation fixed - Add unittests to the allowed words - Messy snapshot of chapter 14 after checking copyedit - Snapshot of chapter 14 after copyedit - Update snapshot of ch14 - Regenerate manual output for chapter 14 - Messy snapshot of chapter 13 after copyedit check - Updated snapshot of ch13 after copyedit - Updated snapshot of ch13 - Messy snapshot of chapter 12 after copyedit checks - Snapshot of chapter 12 copyedited - Update snapshot for chapter 12 - Messy snapshot of chapter 11 after copyedit check - Snapshot of chapter 11 copyedited - Updated snapshot of chapter 11 - Messy snapshot of chapter 10 after copyedit check - Snapshot of chapter 10 copyedit - Updated snapshot of chapter 10 - Messy snapshot of ch9 after copyedit checks - Snapshot of ch 9 copyedit - Update snapshot of chapter 9 - Messy snapshot of chapter 8 - Update println style in ch8 - Snapshot of chapter 8 from copyedit - Updated snapshot of chapter 8 - Rearrange my notes yet again - Messy snapshot of ch7 after copyedit checks - Snapshot of chapter 7 from copyedit, fix chapter 6 name - Update snapshot of chapter 7 - Messy snapshot of chapter 6 after copyedit check - Update snapshot of chapter 6 - Change my notes again - Messy snapshot of chapter 5 after checking copyedit - Snapshot of chapter 5 from copyedit - Messy snapshot of chapter 4 after copyedit check - Changing my notes again - Snapshot of ch4 from nostarch - Messy snapshot of chapter 3 after copyedit check, ch4 on start check - Snapshot of ch3 from nostarch - Updated snapshot of ch3 - reorder notes - Messy snapshot of chapter 1 after copyedit check - Snapshot of ch01 docx from nostarch - Updated snapshot of chapter 1 - Messy snapshot of frontmatter docx - Another snapshot to fix the crab pinchers description - Messy snapshot of chapter 2 docx - Get the latest snapshot of chapter 2 - Upgrade to rand 0.8.5 - Notes to self - Update xsl and take snapshots from docx, such as they are - Update instructions on docx -> md now that I've done it again - Propagate frontmatter edits to src - Updated snapshots extracted from frontmatter - Support different styles in the docx - Line wrap bio - Frontmatter from word doc - Edits to docx files for nostarch - docx files from nostarch ## rust-by-example 6 commits in 5e7b296d6c345addbd748f242aae28c42555c015..03491f33375c5a2a1661c7fa4be671fe95ce1249 2022-10-05 08:24:45 -0300 to 2022-10-21 07:30:08 -0300 - fix rust-lang/rust-by-example#1628: the box pointer is on stack not on heap (rust-lang/rust-by-example#1629) - fix rust-lang/rust-by-example#1608: out-of-bound indexing is a runtime error (not a compile-time error) (rust-lang/rust-by-example#1626 ) - Fix: Path internal representation and conversions (rust-lang/rust-by-example#1625) - fix crate name in example (rust-lang/rust-by-example#1620) - avoid reserved keyword try as crate name (rust-lang/rust-by-example#1619) - Fix typo in iter_result.md (rust-lang/rust-by-example#1614) ## rustc-dev-guide 7 commits in 7518c3445dc02df0d196f5f84e568d633c5141fb..51a37ad19a15709d0601afbac6581f5aea6a45da 2022-10-08 12:29:47 +0200 to 2022-10-25 10:18:58 -0700 - Update `traits/resolution.md` (rust-lang/rustc-dev-guide#1494) - Update diagnostics to flat fluent message paths - Update rust-analyzer suggestions (rust-lang/rustc-dev-guide#1487) - miri is no longer a submodule but a subtree. (rust-lang/rustc-dev-guide#1488) - fix some links (rust-lang/rustc-dev-guide#1490) - typo and grammar (rust-lang/rustc-dev-guide#1484) - Add missing prerequisite for some Linux distros (rust-lang/rustc-dev-guide#1481)
2022-10-26Rollup merge of #103428 - SarthakSingh31:issue-94187, r=compiler-errorsDylan DPC-0/+13
Removed verbose printing from the `PrettyPrinter` when printing constants Partially solves #94187 by completing the first step described in [this comment](https://github.com/rust-lang/rust/issues/94187#issuecomment-1282339909).
2022-10-26Rollup merge of #102706 - ferrocene:pa-ignore-doc-index, r=jyn514Dylan DPC-18/+48
Support excluding the generation of the standalone docs For Ferrocene we need to exclude the generation of the standalone docs (which include the index page, which we want to replace with our own), but with the way bootstrap is currently implemented that proved not possible. This PR aims to support that. The first problem is that the `doc::Standalone` step did two things: it generated the "standalone" documentation (which includes the index page and all the pages at the root of the documentation tree), but it also generated some files like `rust.css` and `version_info.html` that other step like `doc::TheBook` required. This meant generating the book required generating the index page, which made disabling the index page generation problematic. The approach I took to fix the first problem is to split the step into `doc::Standalone` and `doc::SharedAssets`, with `doc::TheBook` now depending on `doc::SharedAssets`. The second problem is that disabling the `doc::Standalone` proved to be tricky due to its path, `src/doc`. The path is accurate, as the source files for that step are `src/doc/*.md`. The problem is, bootstrap treats `--exclude` as a *suffix*, and so it also excluded the Cargo book whose source lives at `src/tools/cargo/src/doc`. The approach I took to fix the second problem is to add the `standalone` path in addition to `src/doc`, so that you can pass `--exclude standalone`. I'm not fully happy with the solution, and the other idea I had was to just move the standalone docs source code to `src/doc/standalone`. I feel that second approach is cleaner, but also requires more changes and might require more consensus. This PR is best reviewed commit-by-commit. r? `@jyn514`
2022-10-26Rollup merge of #95710 - ↵Dylan DPC-159/+12
fee1-dead-contrib:stabilize_arbitrary_enum_discriminant, r=joshtriplett Stabilize arbitrary_enum_discriminant, take 2 Documentation has been updated in https://github.com/rust-lang/reference/pull/1055. cc #86860 for previous stabilization report. Not yet marks https://github.com/rust-lang/rust/issues/60553 as done: need documentation in the rust reference.
2022-10-26Auto merge of #103284 - compiler-errors:const-sad, r=oli-obkbors-3/+19
Revert "Unify tcx.constness and param env constness checks" Too much of a perf regression https://github.com/rust-lang/rust/pull/102975#issuecomment-1282702513, and an attempt in #103263 didn't fix it except for just a tiny bit. This change isn't really needed (see https://github.com/rust-lang/rust/pull/102830#issuecomment-1272514096), so this should be an easy revert.
2022-10-26Update src/librustdoc/html/static/css/rustdoc.cssMichael Howell-1/+2
Co-authored-by: Jacob Hoffman-Andrews <github@hoffman-andrews.com>
2022-10-26Auto merge of #103562 - Dylan-DPC:rollup-sheepp5, r=Dylan-DPCbors-39/+343
Rollup of 10 pull requests Successful merges: - #102951 (suggest type annotation for local statement initialed by ref expression) - #103209 (Diagnostic derives: allow specifying multiple alternative suggestions) - #103287 (Use a faster allocation size check in slice::from_raw_parts) - #103416 (Name the `impl Trait` in region bound suggestions) - #103430 (Workaround unstable stmt_expr_attributes for method receiver expressions) - #103444 (Remove extra type error after missing semicolon error) - #103520 (rustc_middle: Rearrange resolver outputs structures slightly) - #103533 (Use &self instead of &mut self for cast methods) - #103536 (Remove `rustc_driver::set_sigpipe_handler()`) - #103542 (Pinning tests for some `macro_rules!` errors discussed in the lang meeting) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-10-26Rollup merge of #103542 - scottmcm:invalid-macro-patterns, r=compiler-errorsDylan DPC-0/+28
Pinning tests for some `macro_rules!` errors discussed in the lang meeting r? ``@nikomatsakis`` Mind just stamping these, since they were useful for the meeting discussion today?
2022-10-26Rollup merge of #103444 - chenyukang:yukang/fix-103425-extra-diag, r=davidtwcoDylan DPC-0/+44
Remove extra type error after missing semicolon error Fixes #103425
2022-10-26Rollup merge of #103430 - cjgillot:receiver-attrs, r=petrochenkovDylan DPC-14/+17
Workaround unstable stmt_expr_attributes for method receiver expressions Fixes https://github.com/rust-lang/rust/issues/103244 cc ``@Mark-Simulacrum`` ``@ehuss``
2022-10-26Rollup merge of #103416 - compiler-errors:rpit-named, r=cjgillotDylan DPC-23/+23
Name the `impl Trait` in region bound suggestions Slightly more descriptive message
2022-10-26Rollup merge of #103209 - Xiretza:multiple-suggestions, r=davidtwcoDylan DPC-2/+133
Diagnostic derives: allow specifying multiple alternative suggestions This allows porting `span_suggestions()` to diagnostic structs. Doesn't work for `multipart_suggestions()` because the rank would be reversed - the struct would specify multiple spans, each of which has multiple possible replacements, while `multipart_suggestions()` creates multiple possible replacements, each with multiple spans.
2022-10-26Rollup merge of #102951 - SparrowLii:type_annotation, r=estebankDylan DPC-0/+98
suggest type annotation for local statement initialed by ref expression In a local statement with a type declaration, if a ref expression is used on the right side and not used on the left side, in addition to removing the `&` and `&mut` on the right side, we can add them on the left side alternatively Fixes #102892
2022-10-26Auto merge of #103279 - compiler-errors:normalize-hack-back, r=lcnrbors-0/+31
Add eval hack in `super_relate_consts` back Partially reverts 01adb7e98d5656c06497f33dd2747df144e78356. This extra eval call *still* needs to happen, for example, in `normalize_param_env_or_error` when a param-env predicate has an unnormalized constant, since the param-env candidates never get normalized during candidate assembly (everywhere else we can assume that they are normalized fully). r? `@lcnr,` though I feel like I've assigned quite a few PRs to you in the last few days, so feel free to reassign to someone else familiar with this code if you're busy! cc #103243 (fixes the issue, but don't want to auto-close that until a backport is performed).
2022-10-26Auto merge of #103158 - Bryanskiy:resolve_perf, r=petrochenkovbors-6/+6
Perf improvements for effective visibility calculating related to https://github.com/rust-lang/rust/pull/102026 r? `@petrochenkov`
2022-10-25rustdoc: add visible focus outline to rustdoc-toggleMichael Howell-0/+8
The change in opacity is inconsistent with most of rustdoc, which uses default browser styles for the focus outline. Unfortunately, just using the default focus outline here won't work, because it gets applied to the summary itself instead of the pseudo-element "real button."
2022-10-25Update booksEric Huss-0/+0
2022-10-25Pinning tests for some macro_rules things discussed in the lang meetingScott McMurray-0/+28
2022-10-25Name impl trait in region bound suggestionMichael Goulet-23/+23
2022-10-25Auto merge of #103392 - RalfJung:miri, r=oli-obkbors-470/+1521
update Miri I had to use a hacked version of josh to create this, so let's be careful with merging this and maybe wait a bit to see if the josh issue becomes more clear. But the history looks good to me, we are not adding duplicates of rustc commits that were previously mirrored to Miri. Also I want to add some cross-testing of Miri in x.py.
2022-10-25Perf improvements for effective visibility calculatingBryanskiy-6/+6
2022-10-25Miri: disable macOS testing for nowRalf Jung-1/+2
2022-10-25Rollup merge of #103122 - ouz-a:mir-technical-debt, r=oli-obkDylan DPC-3/+3
Remove misc_cast and validate types when casting Continuing our work in #102675 r? ````@oli-obk````
2022-10-25Added helper to prevent verbose printing from the `PrettyPrinter` when ↵Sarthak Singh-0/+13
printing constants
2022-10-25Auto merge of #102988 - dpaoliello:inlinerawdylib, r=dpaoliellobors-0/+102
Support raw-dylib functions being used inside inlined functions Fixes #102714 Issue Details: When generating the import library for `raw-dylib` symbols, we currently only use the functions and variables declared within the current crate. This works fine if all crates are static libraries or `rlib`s as the generated import library will be contained in the static library or `rlib` itself, but if a dependency is a dynamic library AND the use of a `raw-dylib` function or variable is inlined or part of a generic instantiation then the current crate won't see its dependency's import library and so linking will fail. Fix Details: Instead, when we generate the import library for a `dylib` or `bin` crate, we will now generate it for the symbols both for the current crate and all upstream crates. We do this in two steps so that the import library for the current crate is passed into the linker first, thus it is preferred if there are any ambiguous symbols.
2022-10-24Support raw-dylib functions being used inside inlined functionsDaniel Paoliello-0/+102
2022-10-25Rollup merge of #103495 - Enselic:rustdoc-unix_sigpipe, r=notriddleYuki Okushi-1/+3
rustdoc: Use `unix_sigpipe` instead of `rustc_driver::set_sigpipe_handler` Do what was already done for `rustc` in #102587, namely start using `unix_sigpipe` instead of `rustc_driver::set_sigpipe_handler`. After this has been merged, we can completely remove `rustc_driver::set_sigpipe_handler`. PR that added `set_sigpipe_handler`: https://github.com/rust-lang/rust/pull/49606 Tracking issue for `unix_sigpipe`: #97889 Verification of this change --------------------------- 1. Remove `#[unix_sigpipe = "sig_dfl"]` 1. Run `./x.py build` 1. Run `./build/aarch64-apple-darwin/stage1/bin/rustdoc --help | false` 1. Observe ICE 1. Add back `#[unix_sigpipe = "sig_dfl"]` 1. Run `./x.py build` 1. Run `./build/aarch64-apple-darwin/stage1/bin/rustdoc --help | false` 1. Observe ICE fixed ``@rustbot`` labels +T-rustdoc
2022-10-25Rollup merge of #103494 - notriddle:notriddle/test-arrow-hover, r=GuillaumeGomezYuki Okushi-3/+0
rustdoc: remove redundant CSS `a.test-arrow:hover` In 4b402dbe690dd00f567542ca9e41042826a168b5, when this rule was added, it was overriding a rule that made all links in docblock get an underline when hovered. This became redundant when, after reordering the rules, 7585632052298f9c84cc12ac5afcb23786ae1d3d changed the pro-underline rule to exclude the test-arrow link anyway.
2022-10-25Rollup merge of #103493 - notriddle:notriddle/source-sidebar-logo, ↵Yuki Okushi-5/+7
r=GuillaumeGomez rustdoc: remove unused `.sidebar-logo` DOM on source pages
2022-10-25Rollup merge of #103486 - ↵Yuki Okushi-52/+89
GuillaumeGomez:cleanup-rustdoc-gui-highlight-colors, r=notriddle Use functions in highlight-colors rustdoc GUI test r? ``@notriddle``
2022-10-25Rollup merge of #103462 - notriddle:notriddle/source-pre-rust-white-space, ↵Yuki Okushi-1/+0
r=Dylan-DPC rustdoc: remove no-op CSS `.source pre.rust { white-space: pre }` This rule, added in 49e6db7f3510a99ab3d3723b2430add985629c39, overrode a rule in normalize.css. https://github.com/rust-lang/rust/blob/49e6db7f3510a99ab3d3723b2430add985629c39/src/librustdoc/html/static/normalize.css#L169-L175 When normalize.css was updated, this rule went away. https://github.com/necolas/normalize.css/commit/a8edd0c5aa06b905e8e1550fd6a5c01e46375194
2022-10-25Rollup merge of #103410 - camsteffen:link-unstable-book, r=JohnTitorYuki Okushi-1/+1
-Z docs: Add link to unstable book
2022-10-25Rollup merge of #103409 - compiler-errors:rpitit-signature-mismatch, r=lcnrYuki Okushi-0/+37
Delay span bug when we can't map lifetimes back in `collect_trait_impl_trait_tys` When a lifetime is late-bound in a trait signature, but early-bound in an impl signature, we already emit an error -- however, we also ICE in `collect_trait_impl_trait_tys`, so just delay a bug here. Fixes #103407
2022-10-25Rollup merge of #103382 - compiler-errors:anon-apit-lt-region-ice, r=cjgillotYuki Okushi-0/+28
Don't ICE when reporting borrowck errors involving regions from `anonymous_lifetime_in_impl_trait` The issue here is that when we have: ``` trait Trait<'a> { .. } fn foo(arg: impl Trait) { .. } ``` The anonymous lifetime `'_` that we generate for `arg: impl Trait` doesn't end up in the argument type (which is a param) but in a where-clause of the function, in a predicate whose self type is that param ty. Fixes #101660 r? ``@cjgillot``
2022-10-25Rollup merge of #103350 - clubby789:refer-to-assoc-method, r=wesleywiserYuki Okushi-9/+44
Change terminology for assoc method suggestions when they are not called Fixes #103325 ```@rustbot``` label +A-diagnostics
2022-10-25Rollup merge of #103333 - chenyukang:yukang/fix-103143, r=wesleywiserYuki Okushi-0/+25
Fix assertion failed for break_last_token and trailing token Fixes #103143
2022-10-24Delay span bug when we can't map lifetimes back in collect_trait_impl_trait_tysMichael Goulet-0/+37
2022-10-24rustdoc: Use `unix_sigpipe` instead of `rustc_driver::set_sigpipe_handler`Martin Nordholts-1/+3
Start using `unix_sigpipe` instead of `rustc_driver::set_sigpipe_handler`. After this has been merged, we can completely remove `rustc_driver::set_sigpipe_handler`. Verification of this change --------------------------- 1. Remove `#[unix_sigpipe = "sig_dfl"]` 1. Run `./x.py build` 1. Run `./build/aarch64-apple-darwin/stage1/bin/rustdoc --help | false` 1. Observe ICE 1. Add back `#[unix_sigpipe = "sig_dfl"]` 1. Run `./x.py build` 1. Run `./build/aarch64-apple-darwin/stage1/bin/rustdoc --help | false` 1. Observe ICE fixed
2022-10-24rustdoc: remove redundant CSS `a.test-arrow:hover`Michael Howell-3/+0
In 4b402dbe690dd00f567542ca9e41042826a168b5, when this rule was added, it was overriding a rule that made all links in docblock get an underline when hovered. This became redundant when, after reordering the rules, 7585632052298f9c84cc12ac5afcb23786ae1d3d changed the pro-underline rule to exclude the test-arrow link anyway.
2022-10-24rustdoc: remove unused `.sidebar-logo` DOM on source pagesMichael Howell-5/+7
2022-10-24Auto merge of #103337 - flip1995:clippyup, r=Manishearthbors-4206/+8511
Update Clippy r? `@Manishearth`
2022-10-24Use functions in highlight-colors rustdoc GUI testGuillaume Gomez-52/+89
2022-10-24Document link to unstable bookCameron Steffen-1/+1
2022-10-24Auto merge of #94063 - Aaron1011:pretty-print-rental, r=lcnrbors-106/+326
Only apply `ProceduralMasquerade` hack to older versions of `rental` The latest version of `rental` (v0.5.6) contains a fix that allows it to compile without relying on the pretty-print back-compat hack. Hopefully, there are no longer any crates relying on the affected versions of the (much less popular) `procedural-masquerade` crate. This should allow us to target the pretty-print back-compat hack specifically to older versions of `rental`, and specifically mention upgrading to `rental` v0.5.6 in the lint message.
2022-10-24use the shared assets step for building std tooPietro Albini-1/+2
2022-10-24Rollup merge of #103437 - bjorn3:sync_cg_clif-2022-10-23, r=bjorn3Yuki Okushi-0/+2
Sync rustc_codegen_cranelift r? `@ghost` `@rustbot` label +A-codegen +A-cranelift +T-compiler
2022-10-24Rollup merge of #99939 - saethlin:pre-sort-tests, r=thomcc,jackh726Yuki Okushi-1/+86
Sort tests at compile time, not at startup Recently, another Miri user was trying to run `cargo miri test` on the crate `iced-x86` with `--features=code_asm,mvex`. This configuration has a startup time of ~18 minutes. That's ~18 minutes before any tests even start to run. The fact that this crate has over 26,000 tests and Miri is slow makes a lot of code which is otherwise a bit sloppy but fine into a huge runtime issue. Sorting the tests when the test harness is created instead of at startup time knocks just under 4 minutes out of those ~18 minutes. I have ways to remove most of the rest of the startup time, but this change requires coordinating changes of both the compiler and libtest, so I'm sending it separately. (except for doctests, because there is no compile-time harness)