about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2021-06-03Remove check for projections in a branch without anyTomasz Miąsko-13/+0
The else branch is taken when projection slice is empty so everything except for the call to the `visit_local` is a dead code.
2021-06-03Remove unused support for `VarDebugInfo`Tomasz Miąsko-33/+4
This code has been dead since changes in 68961.
2021-06-03Auto merge of #85958 - hyd-dev:miri, r=RalfJungbors-7/+11
Update Miri Fixes #85946. r? `@RalfJung`
2021-06-03Update Mirihyd-dev-7/+11
2021-06-03Auto merge of #85952 - JohnTitor:rollup-r00gu9q, r=JohnTitorbors-133/+227
Rollup of 13 pull requests Successful merges: - #83362 (Stabilize `vecdeque_binary_search`) - #85706 (Turn off frame pointer elimination on all Apple platforms. ) - #85724 (Fix issue 85435 by restricting Fake Read precision) - #85852 (Clarify meaning of MachineApplicable suggestions.) - #85877 (Intra doc link-ify a reference to a function) - #85880 (convert assertion on rvalue::threadlocalref to delay bug) - #85896 (Add test for forward declared const param defaults) - #85897 (Update I-unsound label for triagebot) - #85900 (Use pattern matching instead of checking lengths explicitly) - #85911 (Avoid a clone of output_filenames.) - #85926 (Update cargo) - #85934 (Add `Ty::is_union` predicate) - #85935 (Validate type of locals used as indices) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2021-06-03Rollup merge of #85935 - tmiasko:validate-indexing, r=jonas-schievinkYuki Okushi-2/+20
Validate type of locals used as indices
2021-06-03Rollup merge of #85934 - tmiasko:is-union, r=jackh726Yuki Okushi-59/+32
Add `Ty::is_union` predicate
2021-06-03Rollup merge of #85926 - ehuss:update-cargo, r=ehussYuki Okushi-3/+22
Update cargo 10 commits in e931e4796b61de593aa1097649445e535c9c7ee0..0cecbd67323ca14a7eb6505900d0d7307b00355b 2021-05-24 16:17:27 +0000 to 2021-06-01 20:09:13 +0000 - Configure hosts separately from targets when --target is specified. (rust-lang/cargo#9322) - Add some validation to rustc-link-arg (rust-lang/cargo#9523) - Implement suggestions for unknown features in workspace (rust-lang/cargo#9420) - Extract common `make_dep_path` to cargo_util (rust-lang/cargo#9529) - Add a note about rustflags compatibility. (rust-lang/cargo#9524) - Consolidate doc collision detection. (rust-lang/cargo#9526) - Add `--depth` option for `cargo-tree` (rust-lang/cargo#9499) - `cargo tree -e no-proc-macro` to hide procedural macro dependencies (rust-lang/cargo#9488) - Update to semver 1.0.0 (rust-lang/cargo#9508) - Update tar dependency to 0.4.35 (rust-lang/cargo#9517)
2021-06-03Rollup merge of #85911 - cjgillot:one-output, r=Aaron1011Yuki Okushi-3/+3
Avoid a clone of output_filenames. Part of #85153
2021-06-03Rollup merge of #85900 - LingMan:pat_mat, r=petrochenkovYuki Okushi-19/+7
Use pattern matching instead of checking lengths explicitly This piece of code checks that there are exaclty two variants, one having exactly one field, the other having exactly zero fields. If any of these conditions is violated, it returns `None`. Otherwise it assigns that one field's ty to `field_ty`. Instead of fiddling with indices and length checks explicitly, use pattern matching to simplify this. `@rustbot` modify labels +C-cleanup +T-compiler
2021-06-03Rollup merge of #85897 - steffahn:update_unsound_label_for_triagebot, ↵Yuki Okushi-1/+1
r=Mark-Simulacrum Update I-unsound label for triagebot Following the remaming of the `I-unsound` label (removing the space and the emoji) as discussed [on Zulip](https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/A.20way.20to.20self-label.20soundness.20issues.3F/near/240962907) (or [in the archive](https://zulip-archive.rust-lang.org/122651general/88362Awaytoselflabelsoundnessissues.html#240962907)), this change of the `triagebot.toml` is necessary to keep the automatic `I-prioritize` flagging.
2021-06-03Rollup merge of #85896 - BoxyUwU:remove-fixme-fwd-declared-const-default, ↵Yuki Okushi-3/+45
r=petrochenkov Add test for forward declared const param defaults
2021-06-03Rollup merge of #85880 - csmoe:ice-85768, r=oli-obkYuki Okushi-4/+63
convert assertion on rvalue::threadlocalref to delay bug Closes #85768 r? ``@oli-obk``
2021-06-03Rollup merge of #85877 - est31:intra_doc_links, r=jyn514Yuki Okushi-4/+4
Intra doc link-ify a reference to a function
2021-06-03Rollup merge of #85852 - m-ou-se:machineapplicable-docs, r=nikomatsakisYuki Okushi-1/+5
Clarify meaning of MachineApplicable suggestions. This documents the meaning of MachineApplicable in case of multiple suggestions, as described in https://github.com/rust-lang/rust/issues/53934#issuecomment-831396123 r? ``@nikomatsakis``
2021-06-03Rollup merge of #85724 - sexxi-goose:rox-fix-issue-85435, r=nikomatsakisYuki Okushi-19/+20
Fix issue 85435 by restricting Fake Read precision This PR fixes the root bug of issue #85435 by restricting Fake Read precision in closures and removing the feature gate introduced in PR #85564. More info [here](https://github.com/rust-lang/rust/issues/85561#issuecomment-846223784) and [here](https://github.com/rust-lang/rust/issues/85561#issuecomment-847270533). Closes #85561 r? ``@nikomatsakis``
2021-06-03Rollup merge of #85706 - jrmuizel:fpe, r=nagisaYuki Okushi-5/+1
Turn off frame pointer elimination on all Apple platforms. This ends up disabling frame pointer elimination on aarch64_apple_darwin which matches what clang does by default along with the aarch64_apple_ios and x86_64_apple_darwin targets. Further, the Apple docs "Writing ARM64 Code for Apple Platforms" has a section called "Respect the Purpose of Specific CPU Registers" which specifically calls out the frame pointer register (x29): The frame pointer register (x29) must always address a valid frame record. Some functions — such as leaf functions or tail calls — may opt not to create an entry in this list As a result, stack traces are always meaningful, even without debug information. Other platforms are updated to not override the default.
2021-06-03Rollup merge of #83362 - SOF3:stab/vecdeque-binary-search, r=m-ou-seYuki Okushi-10/+4
Stabilize `vecdeque_binary_search` This PR stabilizes the feature `vecdeque_binary_search` as tracked in #78021. The tracking issue has not received any comments for the past 5 months, and concerns have been raised neither in the RFC rust-lang/rfcs#2997 nor in the tracking issue #78021.
2021-06-03Auto merge of #84988 - alexcrichton:safe-target-feature-wasm, r=joshtriplettbors-8/+75
rustc: Allow safe #[target_feature] on wasm This commit updates the compiler's handling of the `#[target_feature]` attribute when applied to functions on WebAssembly-based targets. The compiler in general requires that any functions with `#[target_feature]` are marked as `unsafe` as well, but this commit relaxes the restriction for WebAssembly targets where the attribute can be applied to safe functions as well. The reason this is done is that the motivation for this feature of the compiler is not applicable for WebAssembly targets. In general the `#[target_feature]` attribute is used to enhance target CPU features enabled beyond the basic level for the rest of the compilation. If done improperly this means that your program could execute an instruction that the CPU you happen to be running on does not understand. This is considered undefined behavior where it is unknown what will happen (e.g. it's not a deterministic `SIGILL`). For WebAssembly, however, the target is different. It is not possible for a running WebAssembly program to execute an instruction that the engine does not understand. If this were the case then the program would not have validated in the first place and would not run at all. Even if this were allowed in some hypothetical future where engines have some form of runtime feature detection (which they do not right now) any implementation of such a feature would generate a trap if a module attempts to execute an instruction the module does not understand. This deterministic trap behavior would still not fall into the category of undefined behavior because the trap is deterministic. For these reasons the `#[target_feature]` attribute is now allowed on safe functions, but only for WebAssembly targets. This notably enables the wasm-SIMD intrinsics proposed for stabilization in #74372 to be marked as safe generally instead of today where they're all `unsafe` due to the historical implementation of `#[target_feature]` in the compiler.
2021-06-03Auto merge of #84834 - GuillaumeGomez:sidebar-unification, r=jshabors-99/+173
Sidebar unification This PR does a few things: * Put crates list at all levels (before, it was only on the "top" items) * Fix bug in module sidebar: the list of items was from the parent module. The other changes (on bootstrap mostly) were to allow to generate multiple crates in a same folder so that we can ensure that clicking on the crates in the sidebar works as expected. I added a rustdoc-gui test to ensure everything is where it should be. r? `@jyn514`
2021-06-02Auto merge of #84703 - GuillaumeGomez:cleanup-dom, r=jshabors-241/+256
Clean up dom The commits come from #84480. They were errors reported by the `tidy` script that we will use to ensure that the HTML generated by rustdoc is valid. I checked carefully that there were no difference so in principle it should be exactly the same rendering but a double-check would be very appreciated in case I missed something. Extra note: `<h4>` and some `<h3>` tags were replaced by `<div>` because they're not supposed to contain tags as they currently do. r? `@jsha`
2021-06-02Auto merge of #85904 - cjgillot:one-name, r=petrochenkovbors-30/+23
Restrict access to crate_name. Also remove original_crate_name, which had the exact same implementation. Part of #85153
2021-06-02Replace h3 for notable traits with divGuillaume Gomez-15/+23
2021-06-02Stabilize VecDeque::partition_point.Mara Bos-2/+1
2021-06-02Bump vecdeque_binary_search stabilization to 1.54.Mara Bos-3/+3
2021-06-02Bumped `vecdeque_binary_search` stabilization version to 1.53.0SOFe-3/+3
2021-06-02Stabilize `vecdeque_binary_search`SOFe-8/+3
2021-06-02Update rustdoc testsGuillaume Gomez-94/+100
2021-06-02Remove data-level selectors from CSS.Jacob Hoffman-Andrews-82/+20
2021-06-02Turn off frame pointer elimination on all Apple platforms.Jeff Muizelaar-5/+1
This ends up disabling frame pointer elimination on aarch64_apple_darwin which matches what clang does by default along with the aarch64_apple_ios and x86_64_apple_darwin targets. Further, the Apple docs "Writing ARM64 Code for Apple Platforms" has a section called "Respect the Purpose of Specific CPU Registers" which specifically calls out the frame pointer register (x29): The frame pointer register (x29) must always address a valid frame record. Some functions — such as leaf functions or tail calls — may opt not to create an entry in this list As a result, stack traces are always meaningful, even without debug information. Other platforms are updated to not override the default.
2021-06-02Restrict access to crate_name.Camille GILLOT-30/+23
Also remove original_crate_name, which had the exact same implementation
2021-06-02Validate type of locals used as indicesTomasz Miąsko-2/+20
2021-06-02Add `Ty::is_union` predicate and use itTomasz Miąsko-55/+31
2021-06-02Implement `Ty::is_enum` using `matches!`Tomasz Miąsko-4/+1
2021-06-02Auto merge of #85337 - cjgillot:less-anon, r=michaelwoeristerbors-27/+54
Avoid creating anonymous nodes with zero or one dependency. Anonymous nodes are only useful to encode dependencies, and cannot be replayed from one compilation session to another. As such, anonymous nodes without dependency are always green. Anonymous nodes with only one dependency are equivalent to this dependency. cc #45408 cc `@michaelwoerister`
2021-06-02Auto merge of #85892 - tmiasko:i, r=oli-obkbors-0/+45
Miscellaneous inlining improvements
2021-06-02Auto merge of #85908 - cjgillot:private-dep-query, r=Aaron1011bors-12/+12
Make is_private_dep a query. Part of #85153 r? `@Aaron1011`
2021-06-02Miscellaneous inlining improvementsTomasz Miąsko-0/+45
2021-06-02Auto merge of #85905 - cjgillot:one-trait-map, r=Aaron1011bors-69/+28
Only compute the trait map once Part of #85153 r? `@Aaron1011`
2021-06-01Update cargoEric Huss-3/+22
2021-06-02Auto merge of #85687 - m-ou-se:new-prelude, r=yaahcbors-14/+27
New prelude RFC: rust-lang/rfcs#3114 Tracking issue: https://github.com/rust-lang/rust/issues/85684
2021-06-02convert Rvalue::threadlocalref assertion to delay bugcsmoe-17/+11
2021-06-01Auto merge of #85331 - cjgillot:dirty-dancing, r=Aaron1011bors-790/+528
Make rustc_dirty/clean annotations exhaustive by default Fixes #45009
2021-06-01Use pattern matching instead of checking lengths explicitlyLingMan-19/+7
This piece of code checks that there are exaclty two variants, one having exactly one field, the other having exactly zero fields. If any of these conditions is violated, it returns `None`. Otherwise it assigns that one field's ty to `field_ty`. Instead of fiddling with indices and length checks explicitly, use pattern matching to simplify this.
2021-06-01Auto merge of #85829 - bjorn3:simplify_crate_num, r=jackh726bors-71/+12
Remove CrateNum::ReservedForIncrCompCache It's only use is easily replaceable with `Option<CrateNum>`.
2021-06-01Make trait_map an Option.Camille GILLOT-15/+6
2021-06-01Make the reasoning more explicit.Camille GILLOT-5/+9
2021-06-01Avoid creating anonymous nodes with zero or one dependency.Camille GILLOT-27/+50
2021-06-01Don't generate impl-items div container if there is noneGuillaume Gomez-4/+6
2021-06-01Avoid a clone of output_filenames.Camille GILLOT-3/+3