summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2023-11-12Prepare 1.74.0 releaseMark Rousskov-1/+1
2023-11-09Auto merge of #11596 - blyxyas:fix-fp-needless_pass_by_ref_mut, r=Jarchobors-140/+72
Move `needless_pass_by_ref_mut`: `suspicious` -> `nursery` [Related to [this Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/needless_pass_by_ref_mut.20isn't.20ready.20for.20stable)] `needless_pass_by_ref_mut` has been released with some important bugs (notably having a lot of reported false positives and an ICE). So it may not be really ready for being in stable until these problems are solved. This PR changes the lint's category from `suspicious` to `nursery`, just that. changelog: none
2023-11-06Update to LLVM 17.0.4Nikita Popov-0/+0
(cherry picked from commit 9df857f658ad3acfdf45268952911d51ad58123a)
2023-11-06improve and fix x installonur-ozkan-22/+30
Fix: Write access check of `prefix` and `sysconfdir` when DESTDIR is present. Improvement: Instead of repeatedly reading `DESTDIR` within each `fn prepare_dir` usage, read it once and pass it to the `fn prepare_dir`. Signed-off-by: onur-ozkan <work@onurozkan.dev> (cherry picked from commit 4b14048d6037a2da5601952a2dd36fe67d04218b)
2023-11-06ensure the parent path's existence on `x install`onur-ozkan-3/+3
Signed-off-by: onur-ozkan <work@onurozkan.dev> (cherry picked from commit 2c8759ef8a91b70b567a7459694635ed70c19248)
2023-10-21Auto merge of #117005 - cuviper:beta-next, r=cuviperbors-395/+313
[beta] backports and stage0 bump - Bump stage0 to released stable compiler - Hide host effect params from docs #116670 - Fix a performance regression in obligation deduplication. #116826 - Make `#[repr(Rust)]` and `#[repr(C)]` incompatible with one another #116829 - Update to LLVM 17.0.3 #116840 - Disable effects in libcore again #116856 - revert rust-lang/rust#114586 #116879 r? cuviper
2023-10-20Update to LLVM 17.0.3Nikita Popov-0/+0
(cherry picked from commit ab22470eb3592f41634e411ffe98343f70053e57)
2023-10-20Add some FIXMEs for remaining issues that we need to fix before using more ↵Oli Scherer-0/+4
const trait things in libcore (cherry picked from commit 16f8396f6df6902eeef580396785ab8888c3718b)
2023-10-20hide `host` param from generic parameter list of `~const` boundsOli Scherer-8/+17
(cherry picked from commit 6724f9926c9e8c2d37e3e68e44238897bd89fddf)
2023-10-20Hide host effect params from docsOli Scherer-13/+17
(cherry picked from commit c4e61faf2e078dc30b62488326404137600e5e11)
2023-10-20Bump stage0 to released stable compilerJosh Stone-374/+275
2023-10-20[beta-1.74] Update cargoWeihang Lo-0/+0
2023-10-11[beta-1.74] Update cargoWeihang Lo-0/+0
2023-10-03Override wasm32 release channel to nightlyMark Rousskov-0/+11
This should fix running tests on the emscripten target. In the future it's expected we'll want to entirely remove this builder since it's a tier 2 target, but for this initially beta-targeted patch keeping the changes minimal is preferred.
2023-10-02Bump to betaMark Rousskov-1/+1
2023-10-01Auto merge of #116108 - onur-ozkan:support-make-jobs-flag, r=Mark-Simulacrumbors-0/+7
Pass `-jN` from Make to `BOOTSTRAP_ARGS` Enables the same functionality as `x -jN` in Make by passing the `-jN` arg from Make to the `BOOTSTRAP_ARGS` if it is specified.
2023-09-30Auto merge of #116127 - onur-ozkan:sanity-checks-on-install, r=Mark-Simulacrumbors-0/+31
add sanity checks for user write access on `x install` Resolves #113580
2023-09-30Auto merge of #116254 - WaffleLapkin:nicen-traversal, r=cjgillotbors-13/+19
Assorted improvements for `rustc_middle::mir::traversal` r? `@cjgillot` I'm not _entirely_ sure about all changes, although I do like all of them. If you'd like I can drop some commits. Best reviewed on a commit-by-commit basis, I think, since they are fairly isolated.
2023-09-30Auto merge of #116195 - fmease:rustdoc-investigate-perf-regression, ↵bors-27/+16
r=GuillaumeGomez rustdoc: speed up processing of cross-crate fns to fix a perf regression * The first commit doesn't affect perf but get's rid of a `.clone()` and a bunch of lines of code. I can drop it if you'd like me to * The second commit, *“reduce the amount of `asyncness` query executions”*, addresses the perf regression introduced in #116084 r? `@ghost`
2023-09-30Auto merge of #116280 - weihanglo:update-cargo, r=weihanglobors-0/+0
Update cargo 4 commits in e6aabe8b3fcf639be3a5bf68e77853bd7b3fa27d..59596f0f31a94fde48b5aa7e945cd0b7ceca9620 2023-09-26 16:31:53 +0000 to 2023-09-29 19:29:17 +0000 - refactor: Switch from termcolor to anstream (rust-lang/cargo#12751) - Add missing `strip` entries in `dev` and `release` profiles. (rust-lang/cargo#12748) - Add better suggestion for the unsupported silent flag (rust-lang/cargo#12723) - docs(ref): Establish publish best practices (rust-lang/cargo#12745) r? ghost
2023-09-30Auto merge of #115933 - oli-obk:simd_shuffle_const, r=workingjubileebors-3/+56
Prototype using const generic for simd_shuffle IDX array cc https://github.com/rust-lang/rust/issues/85229 r? `@workingjubilee` on the design TLDR: there is now a `fn simd_shuffle_generic<T, U, const IDX: &'static [u32]>(x: T, y: T) -> U;` intrinsic that allows replacing ```rust simd_shuffle(a, b, const { stuff }) ``` with ```rust simd_shuffle_generic::<_, _, {&stuff}>(a, b) ``` which makes the compiler implementations much simpler, if we manage to at some point eliminate `simd_shuffle`. There are some issues with this today though (can't do math without bubbling it up in the generic arguments). With this change, we can start porting the simple cases and get better data on the others.
2023-09-30Update cargoWeihang Lo-0/+0
2023-09-30Auto merge of #115368 - loongarch-rs:none-tier2, r=pietroalbinibors-3/+7
Promote loongarch64-unknown-none* to Tier 2 MCP: https://github.com/rust-lang/compiler-team/issues/664
2023-09-30rustdoc: reduce the amount of `asyncness` query executionsLeón Orell Valerian Liehr-1/+7
2023-09-29rustdoc: simplify sugared_async_return_typeLeón Orell Valerian Liehr-26/+9
2023-09-29Rollup merge of #116263 - ferrocene:pa-more-bare-metal-fixes, r=oli-obkMatthias Krüger-0/+11
More fixes for running the test suite on a bare metal target This PR adds more fixes needed to run the test suite on bare metal targets (in this case, without unwinding and with static relocations). There is no CI job exercising tests without unwinds, but I can confirm this worked in Ferrocene's CI.
2023-09-29Rollup merge of #116216 - heiher:crosstool, r=KobzolMatthias Krüger-23/+5
ci: upgrade to crosstool-ng 1.26.0 This PR upgrades our builders from crosstool-ng 1.25.0 to 1.26.0. Except for LoongArch64 and RISC-V 64, which have minor version upgrades, other architectures have not changed.
2023-09-29add needs-relocation-model-pic to compiletestPietro Albini-0/+11
2023-09-29Rollup merge of #116245 - flip1995:clippy-backport, r=ManishearthMatthias Krüger-1/+1
Clippy backport: Move needless_raw_string_hashes to pedantic Really small backport this time. Context: https://github.com/rust-lang/rust-clippy/pull/11415#issuecomment-1739880932 I'd rather get this in 1.74 than waiting another release cycle. r? `@Manishearth` cc `@Mark-Simulacrum` This should be merged before beta is branched tomorrow.
2023-09-29Rollup merge of #116234 - RalfJung:miri, r=RalfJungMatthias Krüger-72/+228
Miri subtree update r? `@ghost`
2023-09-29Rollup merge of #116231 - DaniPopes:simpler-lint-array, r=NilstriebMatthias Krüger-8/+6
Remove `rustc_lint_defs::lint_array`
2023-09-29Rollup merge of #116133 - pouriya:refactor-bootstrap.py, r=albertlarsan68Matthias Krüger-49/+41
ref(bootstrap.py): add `eprint` function Implemented a 3-line function called `eprint` which is just like `print` but for `stderr`. So each `print(..., file=sys.stderr)` becomes `eprint(...)`. <br/> Testing `eprint` function: ```sh $ cat eprint.py ``` ```python import sys def eprint(*args, **kwargs): kwargs['file'] = sys.stderr print(*args, **kwargs) eval('eprint({})'.format(sys.argv[1])) ``` ```sh $ python3 eprint.py '"hello"' hello $ ``` ```sh $ python3 eprint.py '"hello"' 2>/dev/null $ ``` ```sh $ python3 eprint.py '"hello", "world", flush=True, file=sys.stdout' hello world $ ``` ```sh $ python3 eprint.py '"hello", "world", flush=True, file=sys.stdout' 2>/dev/null $ ```
2023-09-28Reverse postorder instead of using reversed postorderMaybe Waffle-13/+19
2023-09-28Remove `rustc_lint_defs::lint_array`DaniPopes-8/+6
2023-09-28Move needless_raw_string_hashes to pedanticAlex Macleod-1/+1
2023-09-28Auto merge of #116227 - nikic:update-llvm-14, r=cuviperbors-0/+0
Update LLVM submodule Update LLVM submodule to pull in additional 17.x backports. Fixes https://github.com/rust-lang/rust/issues/115970. Fixes miscompile from https://github.com/rust-lang/rust/pull/115554. Fixes miscompile from https://github.com/rust-lang/rust/pull/102099. Fixes inlining regressions mentioned at https://github.com/rust-lang/llvm-project/pull/153.
2023-09-28Auto merge of #114882 - ChrisDenton:riddle-me, r=dtolnaybors-18/+15
Update windows ffi bindings Bump `windows-bindgen` to version 0.51.1. This brings with it some changes to the generated FFI bindings, but little that affects the code. One change that does have more of an impact is `SOCKET` being `usize` instead of either `u64` or `u32` (as is used in std's public `SOCKET` type). However, it's now easy enough to abstract over that difference. Finally I added a few new bindings that are likely to be used in pending PRs, mostly to make sure they're ok with the new metadata. r? libs
2023-09-28Update LLVM submoduleNikita Popov-0/+0
2023-09-28Rollup merge of #116213 - tmandry:doclnl, r=ehussMatthias Krüger-0/+8
Document -Zlink-native-libraries Originally added in #70095.
2023-09-28Rollup merge of #116211 - matthiaskrgr:clippy3, r=compiler-errorsMatthias Krüger-1/+1
more clippy complextity fixes redundant_guards, useless_format, clone_on_copy
2023-09-28Merge from rustcThe Miri Conjob Bot-14/+52
2023-09-28Preparing for merge from rustcThe Miri Conjob Bot-1/+1
2023-09-28Auto merge of #116208 - matthiaskrgr:the_loop_that_wasnt, r=GuillaumeGomezbors-1/+1
rustdoc: while -> if we will always return once we step inside the while-loop thus `if` is sufficient here
2023-09-28ci: upgrade to crosstool-ng 1.26.0WANG Rui-23/+5
2023-09-27Document -Zlink-native-librariesTyler Mandry-0/+8
Originally added in #70095.
2023-09-27Auto merge of #116148 - DaniPopes:rustdoc-type-layout-ws, r=jshabors-2/+2
Fix whitespace in rustdoc type_layout.html `Size: <size>` was missing a space after the colon: ![image](https://github.com/rust-lang/rust/assets/57450786/c5a672f3-a28a-4b56-91e7-a4e6ffc8106e)
2023-09-27fix clippy::{redundant_guards, useless_format}Matthias Krüger-1/+1
2023-09-27Auto merge of #109597 - cjgillot:gvn, r=oli-obkbors-4/+16
Implement a global value numbering MIR optimization The aim of this pass is to avoid repeated computations by reusing past assignments. It is based on an analysis of SSA locals, in order to perform a restricted form of common subexpression elimination. By opportunity, this pass allows for some simplifications by combining assignments. For instance, this pass could be able to see through projections of aggregates to directly reuse the aggregate field (not in this PR). We handle references by assigning a different "provenance" index to each `Ref`/`AddressOf` rvalue. This ensure that we do not spuriously merge borrows that should not be merged. Meanwhile, we consider all the derefs of an immutable reference to a freeze type to give the same value: ```rust _a = *_b // _b is &Freeze _c = *_b // replaced by _c = _a ```
2023-09-27rustdoc: while -> ifMatthias Krüger-1/+1
we will always return once we step inside the while-loop thus `if` is sufficient here
2023-09-27Auto merge of #114901 - compiler-errors:style-guide-wc, r=calebcartwrightbors-6/+32
Amend style guide section for formatting where clauses in type aliases This PR has two parts: 1. Amend wording about breaking before or after the `=`, which is a style guide bugfix to align it with current rustfmt behavior. 2. Explain how to format trailing (#89122) where clauses, which are preferred in both GATs (#90076) and type aliases (#114662). r? `@joshtriplett`