- 01 1月, 2022 1 次提交
-
-
由 Guillaume Gomez 提交于
-
- 20 12月, 2021 9 次提交
-
-
由 bors 提交于
Remove 'speculative evaluation' of predicates Performing 'speculative evaluation' introduces caching bugs that cannot be fixed without invasive changes to projection. Hopefully, we can win back most of the performance lost by re-adding 'cache completion' Fixes #90662
-
由 bors 提交于
rustdoc: make `--passes` and `--no-defaults` have no effect Fixes #91714 One potential issue is that currently there is no stable way to achieve `--document-hidden-items`. This affects test `issue-15347`. I also had to modify the tests `issue-42875` and `no-compiler-export`. Regardless of combinations of `--document-hidden-items` and `--document-private-items`, I was unable to get these to pass without the modifications. I left behind a comment noting the change.
-
由 Nicholas Nethercote 提交于
This makes `Obligation` two words bigger, but avoids allocating a lot of the time. I previously tried this in #73983 and it didn't help much, but local timings look more promising now.
-
由 bors 提交于
Rollup of 4 pull requests Successful merges: - #91791 (Fix an ICE when lowering a float with missing exponent magnitude) - #91878 (Remove `in_band_lifetimes` from `rustc_infer`) - #91895 (Remove `in_band_lifetimes` for `rustc_monomorphize`) - #92029 (Explicitly set no ELF flags for .rustc section) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Matthias Krüger 提交于
Explicitly set no ELF flags for .rustc section For a data section, the object crate will set the SHF_ALLOC by default, which is exactly what we don't want. Explicitly set sh_flags to zero to avoid this. I checked with `objdump -h` that this produces the right flags for ELF. Fixes #92013.
-
由 Matthias Krüger 提交于
Remove `in_band_lifetimes` for `rustc_monomorphize` #91867
-
由 Matthias Krüger 提交于
Remove `in_band_lifetimes` from `rustc_infer` See #91867 for more information. This crate actually had a typo `'ctx` in one of its functions: ```diff -pub fn same_type_modulo_infer(a: Ty<'tcx>, b: Ty<'ctx>) -> bool { +pub fn same_type_modulo_infer<'tcx>(a: Ty<'tcx>, b: Ty<'tcx>) -> bool { ``` Also, I wasn't entirely sure about the lifetimes in `suggest_new_region_bound`: ```diff pub fn suggest_new_region_bound( - tcx: TyCtxt<'tcx>, + tcx: TyCtxt<'_>, err: &mut DiagnosticBuilder<'_>, fn_returns: Vec<&rustc_hir::Ty<'_>>, ``` Should all of those lifetimes really be distinct?
-
由 Matthias Krüger 提交于
Fix an ICE when lowering a float with missing exponent magnitude This fixes: https://github.com/rust-lang/rust/issues/91434
-
- 19 12月, 2021 27 次提交
-
-
由 bors 提交于
Rollup of 7 pull requests Successful merges: - #91141 (Revert "Temporarily rename int_roundings functions to avoid conflicts") - #91984 (Remove `in_band_lifetimes` from `rustc_middle`) - #92028 (Sync portable-simd to fix libcore build for AVX-512 enabled targets) - #92042 (Enable `#[thread_local]` for all windows-msvc targets) - #92071 (Update example code for Vec::splice to change the length) - #92077 (rustdoc: Remove unused `collapsed` field) - #92081 (rustdoc: Remove unnecessary `need_backline` function) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 threadexception 提交于
Co-authored-by: NSimonas Kazlauskas <github@kazlauskas.me>
-
由 Matthias Krüger 提交于
rustdoc: Remove unnecessary `need_backline` function r? `@GuillaumeGomez`
-
由 Matthias Krüger 提交于
rustdoc: Remove unused `collapsed` field `render/context` always runs after `run_global_context`, so it was always set to `true`. This is a holdover from when rustdoc allowed configuring passes, but the `collapse-docs` pass was removed ages ago, and the ability to configure passes is about to be removed. Found while reviewing https://github.com/rust-lang/rust/pull/91305.
-
由 Matthias Krüger 提交于
Update example code for Vec::splice to change the length The current example for `Vec::splice` illustrates the replacement of a section of length 2 with a new section of length 2. This isn't a particularly interesting case for splice, and makes it look a bit like a shorthand for the kind of manipulations that could be done with a mutable slice. In order to provide a stronger example, this updates the example to use different lengths for the source and destination regions, and uses a slice from the middle of the vector to illustrate that this does not necessarily have to be at the beginning or the end. Resolves #92067
-
由 Matthias Krüger 提交于
Enable `#[thread_local]` for all windows-msvc targets As it stands, `#[thread_local]` is enabled haphazardly for msvc. It seems all 64-bit targets have it enabled, but not 32-bit targets unless they're also UWP targets (perhaps because UWP was added more recently?). So this PR simply enables it for 32-bit targets as well. I can't think of a reason not to and I've confirmed by running tests locally which pass. See also #91659
-
由 Matthias Krüger 提交于
Sync portable-simd to fix libcore build for AVX-512 enabled targets Fixes https://github.com/rust-lang/rust/pull/91484#issuecomment-989933534 cc ``@workingjubilee``
-
由 Matthias Krüger 提交于
Remove `in_band_lifetimes` from `rustc_middle` See #91867 This was mostly straightforward. In several places, I take advantage of the fact that lifetimes are non-hygenic: a macro declares the 'tcx' lifetime, which is then used in types passed in as macro arguments.
-
由 Matthias Krüger 提交于
Revert "Temporarily rename int_roundings functions to avoid conflicts" This reverts commit 3ece63b6. This should be okay because #90329 has been merged. r? `@joshtriplett`
-
由 bors 提交于
Remove `SymbolStr` This was originally proposed in https://github.com/rust-lang/rust/pull/74554#discussion_r466203544. As well as removing the icky `SymbolStr` type, it allows the removal of a lot of `&` and `*` occurrences. Best reviewed one commit at a time. r? `@oli-obk`
-
由 bors 提交于
rustdoc: Add `UrlPartsBuilder` This is a type for efficiently and easily constructing the part of a URL after the domain: `nightly/core/str/struct.Bytes.html`. It allows simplifying some code and avoiding some allocations in the `href_*` functions. It will also allow making `Cache.paths` et al. use `Symbol` without having to allocate `String`s in the `href_*` functions. `String`s would be necessary otherwise because `Symbol::as_str()` returns `SymbolStr`, whose `Deref<Target = str>` impl requires the `str` to not outlive it. This is the primary motivation for the addition of `UrlPartsBuilder`.
-
由 bors 提交于
Re-introduce concept of projection cache 'completion' Instead of clearing out the cache entirely, we store the intermediate evaluation result into the cache entry. This accomplishes several things: * We avoid the performance hit associated with re-evaluating the sub-obligations * We avoid causing issues with incremental compilation, since the final evaluation result is always the same * We avoid affecting other uses of the same `InferCtxt` which might care about 'side effects' from processing the sub-obligations (e,g. region constraints). Only code that is specifically aware of the new 'complete' code is affected
-
由 bors 提交于
Rollup of 7 pull requests Successful merges: - #91834 (Update browser-ui-test version and improve rustdoc-gui tests readability) - #91894 (Remove `in_band_lifetimes` from `rustc_incremental`) - #91932 (Add user seed to `-Z randomize-layout`) - #91956 (fix(rustc_lint): better detect when parens are necessary) - #92020 (Remove P: Unpin bound on impl Stream for Pin) - #92063 (docs: fix typo) - #92082 (rustdoc: Write doc-comments directly instead of using FromIterator) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Aaron Hill 提交于
Instead of clearing out the cache entirely, we store the intermediate evaluation result into the cache entry. This accomplishes several things: * We avoid the performance hit associated with re-evaluating the sub-obligations * We avoid causing issues with incremental compilation, since the final evaluation result is always the same * We avoid affecting other uses of the same `InferCtxt` which might care about 'side effects' from processing the sub-obligations (e,g. region constraints). Only code that is specifically aware of the new 'complete' code is affected
-
由 Matthias Krüger 提交于
rustdoc: Write doc-comments directly instead of using FromIterator The FromIterator impl made the code much harder to understand. The types don't make sense until you realize there's a custom FromIterator impl. This is the first commit from https://github.com/rust-lang/rust/pull/91305; since ``@camelid`` wrote it originally I don't feel bad unilaterally approving it. r? ``@ghost`` ``@bors`` r+ Note that this will conflict with https://github.com/rust-lang/rust/pull/92078.
-
由 Matthias Krüger 提交于
docs: fix typo Add missing `'s` to ` Let check it out.`
-
由 Matthias Krüger 提交于
Remove P: Unpin bound on impl Stream for Pin Similar to https://github.com/rust-lang/rust/pull/81363.
-
由 Matthias Krüger 提交于
fix(rustc_lint): better detect when parens are necessary Fixes #90807
-
由 Matthias Krüger 提交于
Add user seed to `-Z randomize-layout` Allows users of -`Z randomize-layout` to provide `-Z layout-seed=<seed>` in order to further randomizing type layout randomization. Extension of [compiler-team/#457](https://github.com/rust-lang/compiler-team/issues/457), allows users to change struct layouts without changing code and hoping that item path hashes change, aiding in detecting layout errors
-
由 Matthias Krüger 提交于
Remove `in_band_lifetimes` from `rustc_incremental` #91867
-
由 Matthias Krüger 提交于
Update browser-ui-test version and improve rustdoc-gui tests readability Since the `0.5.1`, we can use trailing commas. I also used the opportunity to clean up the existing tests. r? `@notriddle`
-
由 bors 提交于
Avoid sorting in hash map stable hashing Suggested by `@the8472` [here](https://github.com/rust-lang/rust/pull/89404#issuecomment-991813333). I hope that I understood it right, I replaced the sort with modular multiplication, which should be commutative. Can I ask for a perf. run? However, locally it didn't help at all. Creating the `StableHasher` all over again is probably slowing it down quite a lot. And using `FxHasher` is not straightforward, because the keys and values only implement `HashStable` (and probably they shouldn't be just hashed via `Hash` anyway for it to actually be stable). Maybe the `StableHash` interface could be changed somehow to better suppor these scenarios where the hasher is short-lived. Or the `StableHasher` implementation could have variants with e.g. a shorter buffer for these scenarios.
-
由 bors 提交于
Rollup of 7 pull requests Successful merges: - #91566 (Apply path remapping to DW_AT_GNU_dwo_name when producing split DWARF) - #91926 (Remove `in_band_lifetimes` from `rustc_metadata`) - #91931 (Remove `in_band_lifetimes` from `rustc_codegen_llvm`) - #92024 (rustc_codegen_llvm: Give each codegen unit a unique DWARF name on all platforms, not just Apple ones.) - #92037 (Use a const ParamEnv when in default_method_body_is_const) - #92047 (Set `RUST_BACKTRACE=0` when running location-detail tests) - #92050 (Add a space and 2 grave accents ) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Nikita Popov 提交于
For a data section, the object crate will set the SHF_ALLOC by default, which is exactly what we don't want. Explicitly set sh_flags to zero to avoid this.
-
由 Noah Lev 提交于
The FromIterator impl made the code much harder to understand. The types don't make sense until you realize there's a custom FromIterator impl.
-
由 Joshua Nelson 提交于
-
由 Joshua Nelson 提交于
`render/context` always runs after `run_global_context`, so it was always set to `true`. This is a holdover from when rustdoc allowed configuring passes, but the `collapse-docs` pass was removed ages ago, and the ability to configure passes is about to be removed.
-
- 18 12月, 2021 3 次提交
-
-
由 ajtribick 提交于
-
由 bors 提交于
Rollup of 7 pull requests Successful merges: - #91858 (pass -Wl,-z,origin to set DF_ORIGIN when using rpath) - #91923 (Remove `in_band_lifetimes` from `rustc_query_impl`) - #91925 (Remove `in_band_lifetimes` from `rustc_privacy`) - #91977 (Clean up search code and unify function returned values) - #92018 (Fix typo in "new region bound" suggestion) - #92022 (Eliminate duplicate codes of expected_found_bool) - #92032 (hir: Do not introduce dummy type names for `extern` blocks in def paths) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
-
由 Matthias Krüger 提交于
Add a space and 2 grave accents I only noticed this because I have this implementation copy pasted in some places in my code and I really can't wait for this to be stabilized...
-