about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2022-03-13Rollup merge of #94907 - bjorn3:smaller_rust_src_component, r=Mark-SimulacrumMatthias Krüger-0/+5
Omit stdarch test crates from the rust-src component These crates aren't necessary for building the standard library. This saves 30MB of disk space. Fixes #94906
2022-03-13Rollup merge of #94844 - bjorn3:rustbuild_cleanup, r=Mark-SimulacrumMatthias Krüger-164/+222
Reduce rustbuild bloat caused by serde_derive This reduces the size of the `.text` section from 10.1MiB (6.2MiB for just rustbuild code) to 9.3MiB (5.3MiB for just rustbuild code). This also reduces compile time from ~6.1s for incr recompilation to ~5.6s. r? `@Mark-Simulacrum`
2022-03-13Rollup merge of #94777 - lancethepants:armv7-unknown-linux-uclibceabi, ↵Matthias Krüger-11/+21
r=Mark-Simulacrum Update armv7-unknown-linux-uclibceabi platform support page. A few edits and fixes to the support page for the armv7-unknown-linux-uclibceabi target.
2022-03-13Omit stdarch test crates from the rust-src componentbjorn3-0/+5
These crates aren't necessary for building the standard library. This saves 30MB of disk space. Fixes #94906
2022-03-13Remove FieldName enumbjorn3-34/+6
2022-03-13Auto merge of #94704 - Kobzol:llvm-pgo-update-suite, r=Mark-Simulacrumbors-32/+49
Gather LLVM PGO profiles from `rustc-perf` suite on real-world crates This PR expands the benchmark suite used to gather LLVM PGO profiles in CI from `libcore` to several real-world crates. I hand-picked a few crates, but the list is up for debate. Previous results that we got from running `syn,cargo,serde` looked pretty [good](https://perf.rust-lang.org/compare.html?start=2631aeef823a9e16d31f999d3f07001e5fcc4b3d&end=abf097afa10dde1aa3d8a1d422724a46aab79bf3). Running `libcore` + `rustc-perf` with some number of crates is repeated now (and for BOLT it will also be needed), so maybe we can extract it to a bash function? r? `@Mark-Simulacrum`
2022-03-13Prevent duplicate monomorphization of deserialization implsbjorn3-1/+5
This reduces binary size from 9.7MiB (5.8MiB for just rustbuild code) to 9.3MiB (5.3MiB for just rustbuild code). This doesn't reduce compile time in a statistically significant way.
2022-03-13Use trimmed down deserialization impl for configbjorn3-146/+237
This reduces binary size from 10.1MiB (6.2MiB for just rustbuild code) to 9.7MiB (5.8MiB for just rustbuild code). This also reduces compile time from ~6.1s for incr recompilation to ~5.6s. There is still a lot of unnecessary code due to the toml crate monomorphizing every deserialization impl 5 times.
2022-03-13Rename derive_merge macro to define_config and move Deserialize impl into itbjorn3-19/+10
2022-03-13Auto merge of #94320 - GuillaumeGomez:sidebar-display, r=jshabors-3/+25
Fix sidebar elements display The bug can be seen more easily when the javascript is disabled: ![Screenshot from 2022-02-24 12-18-28](https://user-images.githubusercontent.com/3050060/155514578-cbefd3dd-f006-47e9-bc76-7c26d7e823e8.png) r? `@jsha`
2022-03-13Auto merge of #94862 - pierwill:bootstrap-useless, r=Dylan-DPCbors-9/+5
Remove unneeded conversions in bootstrapping code Fixes warnings from `clippy::useless_conversion` in `src/bootstrap`.
2022-03-13Auto merge of #94898 - RalfJung:miri, r=RalfJungbors-7/+11
update Miri Fixes https://github.com/rust-lang/rust/issues/94871
2022-03-12update MiriRalf Jung-7/+11
2022-03-13Auto merge of #94895 - matthiaskrgr:rollup-9hue5qk, r=matthiaskrgrbors-3/+20
Rollup of 3 pull requests Successful merges: - #94867 (Add regression test for `<i32 as Iterator>::count`) - #94886 (Update browser-ui-test version used in CI) - #94894 (Remove needless use of `Into`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-03-12Rollup merge of #94894 - camelid:into, r=nagisaMatthias Krüger-2/+2
Remove needless use of `Into`
2022-03-12Rollup merge of #94886 - GuillaumeGomez:update-browser-ui-test, r=notriddleMatthias Krüger-1/+1
Update browser-ui-test version used in CI I realized that the extension of `assert-text*` commands was generated not completely valid (it stopped at first "success" and moved instead of running all checks). It was fixed in [this PR](https://github.com/GuillaumeGomez/browser-UI-test/pull/280). We don't use this feature currently in the rustdoc GUI tests, but just in case... r? ``@notriddle``
2022-03-12Rollup merge of #94867 - notriddle:notriddle/i32-count-regression-test, ↵Matthias Krüger-0/+17
r=Dylan-DPC Add regression test for `<i32 as Iterator>::count` Closes #84495
2022-03-12Auto merge of #90358 - DevinR528:omitted-field-fix, r=jackh726bors-76/+412
Fix exposing fields marked unstable or doc hidden Closes https://github.com/rust-lang/rust/issues/89837 Work towards https://github.com/rust-lang/rust/issues/89554 Filter fields that are marked `doc(hidden)` or are unstable with that feature turned off. This brings structs and enums into alignment behavior-wise when emitting warning/errors about pattern exhaustiveness/reachability. cc `@Nadrieril`
2022-03-12Remove needless use of `Into`Noah Lev-2/+2
2022-03-12Fix rebase conflicts with stderr filesDevin Ragotzy-53/+160
2022-03-12Only filter doc(hidden) fields/variants when not crate localDevin Ragotzy-9/+65
2022-03-12Update output for doc hidden usefulness ui test outputDevin Ragotzy-62/+64
2022-03-12Add struct to doc hidden usefulness ui testsDevin Ragotzy-11/+35
2022-03-12Add struct to stability ui tests in usefulnessDevin Ragotzy-15/+60
2022-03-12Update non-exhaustive omitted_patterns ui outputDevin Ragotzy-4/+46
2022-03-12Add unstable struct fields to ui testsDevin Ragotzy-2/+62
2022-03-12Auto merge of #94865 - ↵bors-0/+24
notriddle:notriddle/single-colon-path-not-const-generics, r=cjgillot diagnostics: single colon within `<>` probably, not type ascription Fixes #94812
2022-03-12Auto merge of #94711 - ouz-a:master3, r=oli-obkbors-0/+92
Return early to fix ICE This fixes #94627, ICE happens because compiler tries to suggest constraining type parameter but the only constraint is implicit `std::Sized` one, so it gets removed and there is nothing to suggest resulting in ICE.
2022-03-12Use consistent prose for `::`Michael Howell-2/+2
Co-authored-by: Camille Gillot <gillot.camille@gmail.com>
2022-03-12Update browser-ui-test version used in CIGuillaume Gomez-1/+1
2022-03-12Auto merge of #94873 - DrMeepster:box_alloc_ice3, r=oli-obkbors-0/+6
Fix ICE when using Box<T, A>, again Sequel to #94043, fixes #94835.
2022-03-12Auto merge of #94870 - notriddle:notriddle/filter-regression, r=oli-obkbors-3/+3
diagnostics: do not spurriously claim something is "not an iterator" Fixes a minor regression caused by #94746, where `iter::Filter` is spurriously declared "not an iterator."
2022-03-12Auto merge of #94875 - matthiaskrgr:rollup-tq1li2d, r=matthiaskrgrbors-93/+758
Rollup of 3 pull requests Successful merges: - #94150 (rustdoc-json: Include GenericParamDefKind::Type::synthetic in JSON) - #94833 ([2/2] Implement macro meta-variable expression) - #94863 (Remove redundant slicing of whole ranges in `bootstrap`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2022-03-12Rollup merge of #94863 - pierwill:bootstrap-slicing, r=Mark-SimulacrumMatthias Krüger-5/+5
Remove redundant slicing of whole ranges in `bootstrap` Found with `clippy::redundant_slicing`.
2022-03-12Rollup merge of #94833 - c410-f3r:meta-take-2, r=petrochenkovMatthias Krüger-83/+689
[2/2] Implement macro meta-variable expression Final part of https://github.com/rust-lang/rust/pull/93545#issuecomment-1050963295 r? `@petrochenkov`
2022-03-12Rollup merge of #94150 - Enselic:synthetic-generic-parameters-in-json, ↵Matthias Krüger-5/+64
r=CraftSpider rustdoc-json: Include GenericParamDefKind::Type::synthetic in JSON The rustdoc JSON for ``` pub fn f(_: impl Clone) {} ``` will effectively be ``` pub fn f<impl Clone: Clone>(_: impl Clone) {} ``` where a synthetic generic parameter called `impl Clone` with generic trait bound `Clone` is added to the function declaration. The generated HTML filters out these generic parameters by doing `self.params.iter().filter(|p| !p.is_synthetic_type_param())`, because the synthetic generic paramter is not of interest to regular users. For the same reason, we should expose whether or not a generic parameter is synthetic or not also in the rustdoc JSON, so that rustdoc JSON clients can also have the option to hide syntehtic generic parameters. `@rustbot` modify labels: +A-rustdoc-json
2022-03-12Auto merge of #94733 - nnethercote:fix-AdtDef-interning, r=fee1-deadbors-101/+102
Improve `AdtDef` interning. This commit makes `AdtDef` use `Interned`. Much of the commit is tedious changes to introduce getter functions. The interesting changes are in `compiler/rustc_middle/src/ty/adt.rs`. r? `@fee1-dead`
2022-03-11fix another assumption about boxDrMeepster-0/+6
2022-03-11diagnostics: do not spurriously claim something is "not an iterator"Michael Howell-3/+3
Fixes a minor regression caused by #94746, where iter::Filter is spurriously declared "not an iterator."
2022-03-11Add regression test for `<i32 as Iterator>::count`Michael Howell-0/+17
Fixes #84495
2022-03-11diagnostics: single colon within `<>` probably, not type ascriptionMichael Howell-0/+24
Fixes #94812
2022-03-11Implement macro meta-variable expressionCaio-83/+689
2022-03-11Remove redundant slicing of whole ranges in `bootstrap`pierwill-5/+5
2022-03-11Remove unneeded conversions in bootstrapping codepierwill-9/+5
Fixes warnings from `clippy::useless_conversion` in `src/bootstrap`.
2022-03-11Rollup merge of #94839 - ↵Dylan DPC-0/+56
TaKO8Ki:suggest-using-double-colon-for-struct-field-type, r=cjgillot Suggest using double colon when a struct field type include single colon #92685
2022-03-11Rollup merge of #94827 - RalfJung:offset-from-ub, r=oli-obkDylan DPC-6/+50
CTFE/Miri: detect out-of-bounds pointers in offset_from Also I became uneasy with aggressively doing `try_to_int` here -- this will always succeed on Miri, leading to the wrong codepath being taken. We should rather try to convert them both to pointers, and use the integer path as a fallback, so that's what I implemented now. Hiding whitespaces helps with the diff. Fixes https://github.com/rust-lang/miri/issues/1950 r? ``@oli-obk``
2022-03-11Rollup merge of #94818 - yoshuawuyts:into-future-associated-type, r=joshtriplettDylan DPC-2/+2
Rename `IntoFuture::Future` to `IntoFuture::IntoFuture` Ref: https://github.com/rust-lang/rust/issues/67644#issuecomment-1051401459 This renames `IntoFuture::Future` to `IntoFuture::IntoFuture`. This adds the `Into*` prefix to the associated type, similar to the [`IntoIterator::IntoIter`](https://doc.rust-lang.org/std/iter/trait.IntoIterator.html#associatedtype.IntoIter) associated type. It's my mistake we didn't do so in the first place. This fixes that and brings the two closer together. Thanks! ### References __`IntoIterator` trait def__ ```rust pub trait IntoIterator { type Item; type IntoIter: Iterator<Item = Self::Item>; fn into_iter(self) -> Self::IntoIter; } ``` __`IntoFuture` trait def__ ```rust pub trait IntoFuture { type Output; type IntoFuture: Future<Output = Self::Output>; // Prior to this PR: `type Future:` fn into_future(self) -> Self::IntoFuture; } ``` cc/ `@eholk` `@rust-lang/wg-async`
2022-03-11Rollup merge of #94769 - GuillaumeGomez:collapsed-by-default, r=notriddleDylan DPC-6/+19
Collapse blanket and auto-trait impls by default Blocked on #94740 (the two first commits come from it). This behaviour was changed in https://github.com/rust-lang/rust/pull/88490 and apparently wasn't caught since then. You can test it [here](https://rustdoc.crud.net/imperio/collapsed-by-default/test_docs/struct.Foo.html#blanket-implementations). r? ``@notriddle``
2022-03-11Update GUI testGuillaume Gomez-1/+8
2022-03-11Collapse Blanket Implementations and Auto-trait implementations by defaultGuillaume Gomez-5/+11