Commit Graph

241858 Commits

Author SHA1 Message Date
Michael Goulet
bb33200047 Make sure all kinds of generators only return unit 2023-12-18 01:45:42 +00:00
Michael Goulet
454bff7682 Ensure yield expressions desugar correctly in async generators 2023-12-18 01:42:19 +00:00
Kai Luo
a8e1da3171 Address comment 2023-12-18 09:41:36 +08:00
León Orell Valerian Liehr
4a5dd169f7
Deny ~const trait bounds in inherent impl headers 2023-12-18 01:48:49 +01:00
Camille GILLOT
503af0deb2 Fortify test. 2023-12-17 23:31:58 +00:00
Vadim Petrochenkov
be321aa473 resolve: Replace visibility table in resolver outputs with query feeding
Also feed missing visibilities for import stems and trait impl items, which were previously evaluated lazily.
2023-12-18 02:26:55 +03:00
bors
43dcc9b786 Auto merge of #114962 - darklyspaced:debug, r=est31
adds a column number to `dbg!()`

this would be very nice to have for a few reasons:
1. the rfc, when deciding not to add column numbers to macro, failed to acknowledge any potential ambiguous cases -- such as the one provided in #114910 -- which do exist
2. would be able to consistently and easily jump directly to the `dbg!()` regardless of the sutation
3. takes up, at a maximum, 3 characters of _horizontal_ screen space

fixes #114910
2023-12-17 23:01:18 +00:00
Weihang Lo
8ed5b293f4
Update cargo 2023-12-17 17:58:57 -05:00
Camille GILLOT
3ea5cfaa11 Tolerate overaligned MIR constants for codegen. 2023-12-17 22:56:42 +00:00
Alistair Francis
d66a96495e ci: docker: dist-various-1: Include RISC-V C compilers
The compiler-builtins for RISC-V are missing some key functions, such as
__bswapsi2 [1].

We can't just pull in the LLVM compiler-rt builtins as the rust-lang/rust
distribution container doesn't have a C compiler [2].

This patch adds RISC-V C compilers to the CI Dockerfile as the first
step towards enabling LLVM compiler-rt builtins for RISC-V Rust.

1: https://github.com/rust-lang/compiler-builtins/issues/350
2: e4f46b91ca

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2023-12-18 08:23:06 +10:00
bors
6a62871320 Auto merge of #119053 - matthiaskrgr:rollup-hky3ld3, r=matthiaskrgr
Rollup of 4 pull requests

Successful merges:

 - #118880 (More expressions correctly are marked to end with curly braces)
 - #118928 (fix: Overlapping spans in delimited meta-vars)
 - #119022 (Remove unnecessary constness from ProjectionCandidate)
 - #119052 (Avoid overflow in GVN constant indexing.)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-12-17 20:57:02 +00:00
Matthias Krüger
39fe059a35
Rollup merge of #119052 - cjgillot:gvn-index-overflow, r=compiler-errors
Avoid overflow in GVN constant indexing.

Fixes https://github.com/rust-lang/rust/issues/118992
Fixes https://github.com/rust-lang/rust/issues/119008
2023-12-17 21:30:00 +01:00
Matthias Krüger
677bb6cd60
Rollup merge of #119022 - compiler-errors:no-constness, r=fee1-dead
Remove unnecessary constness from ProjectionCandidate

Constness in an item bound will be represented by an effect param, so no need to record constness here.

r? fee1-dead
2023-12-17 21:30:00 +01:00
Matthias Krüger
93d3a4231e
Rollup merge of #118928 - EliseZeroTwo:EliseZeroTwo/fix-issue-118786, r=cjgillot
fix: Overlapping spans in delimited meta-vars

Closes #118786

Delimited meta-vars inside of MBE's spans were set to have the same opening and closing position resulting in an ICE when debug assertions were enabled and an error was present in the templated code.

This ensures that the spans do not overlap, whilst still having the spans point at the usage of the meta-var inside the macro definition.

It includes a regression test.

🖤
2023-12-17 21:29:59 +01:00
Matthias Krüger
6269bf1a3a
Rollup merge of #118880 - GearsDatapacks:issue-118859-fix, r=compiler-errors
More expressions correctly are marked to end with curly braces

Fixes #118859, and replaces the mentioned match statement with an exhaustive list, so that this code doesn't get overlooked in the future
2023-12-17 21:29:59 +01:00
Camille GILLOT
8022057ebb Avoid overflow in GVN constant indexing. 2023-12-17 19:50:38 +00:00
bors
4283aeaca5 Auto merge of #119048 - aliemjay:perf-register-pred, r=compiler-errors
don't fold ParamEnv in register_predicate_obligation

\>5% perf gain for diesel!
2023-12-17 18:27:09 +00:00
Chris Denton
e585b0ed58
Use FileEndOfFileInfo, not FileAllocationInfo
This fixes WINE support
2023-12-17 17:57:33 +00:00
Ali MJ Al-Nasrawy
e0df93b07e don't fold ParamEnv in register_predicate_obligation 2023-12-17 17:24:04 +00:00
bors
d14e52b47a Auto merge of #117884 - bvanjoi:fix-117794, r=compiler-errors
skip rpit constraint checker if borrowck return type error

Fixes #117794
Fixes #117886
Fixes #119025

Prior to change #117418, the value of `concrete_opaque_types` for `mir_borrock(T:🅰️:opaque)` was `None`. However, due to modifications in `body.local_decls`, the return value had been changed.

The changed of `body.local_decls` has let to the addition of `ty:Error` to `infcx.opaque_type_storage.opaque_types` during `TypeChecker::equate_inputs_and_outputs`. This is due to it utilizing the output of a function signature that was appended during `construct_error`(which previously only appended a `ty::Error`) and then execute `TypeChecker::Related_types`.

Therefore, in this PR, I've implemented a condition to bypass the rpit check when an error is encountered.

r? `@compiler-errors`
2023-12-17 16:28:37 +00:00
bors
3a2aa5854c Auto merge of #119020 - onur-ozkan:remove-hex, r=albertlarsan68
remove `hex` dependency in bootstrap

First commit removes the `hex` dependency, as we can achieve the same output with the added function, which is very small and simple.

Second commit creates a test module for the helpers util and adds unit tests for multiple helper functions, including `hex_encode`.
2023-12-17 14:26:54 +00:00
bors
e95a69d306 Auto merge of #118828 - mu001999:master, r=b-naber
Remove dead codes in rustc_codegen_gcc

Detected by #118257
2023-12-17 12:15:56 +00:00
bors
5151b8c427 Auto merge of #119039 - RalfJung:miri, r=RalfJung
Miri subtree update

r? `@ghost`
2023-12-17 10:18:25 +00:00
bohan
64e311add2 skip rpit constraint check if borrowck return type error 2023-12-17 16:49:00 +08:00
Ralf Jung
c7e3b3f84c do not allow ABI mismatches inside repr(C) types 2023-12-17 09:34:25 +01:00
bors
9f13b9d9ca Auto merge of #119000 - celinval:smir-cstr, r=ouz-a
Add a method to StableMIR to check if a type is a CStr

Also add a check that StableMIR works properly with C string literal.
2023-12-17 08:18:17 +00:00
bors
00a82a5f3c Auto merge of #3229 - saethlin:protector-gc-ice, r=RalfJung
Visit the AllocIds and BorTags in borrow state FrameExtra

Fixes https://github.com/rust-lang/miri/issues/3228

I said

> The obvious way would be to visit the AllocIds in borrow_tracker::FrameExtra in the GC.

Since I have had no new ideas, that's what this does.
2023-12-17 07:58:17 +00:00
Ali MJ Al-Nasrawy
8c215e7841 fix diagnostic regresssion 2023-12-17 07:31:07 +00:00
Ali MJ Al-Nasrawy
9f7d0e91b5 use Vec for region constraints 2023-12-17 07:31:07 +00:00
onur-ozkan
81b98a0a13 expand helpers tests with new test module tests/helpers
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-12-17 10:31:04 +03:00
bors
2f19122f73 Auto merge of #119001 - notriddle:notriddle/searchwords, r=GuillaumeGomez
rustdoc-search: remove parallel searchWords array

This might have made sense if the algorithm could use `searchWords` to skip having to look at `searchIndex`, but since it always does a substring check on both the stock word and the normalizedName, it doesn't seem to help performance anyway.

Profile: http://notriddle.com/rustdoc-html-demo-8/searchwords/index.html
2023-12-17 06:20:49 +00:00
bors
5e7025419d Auto merge of #118830 - GuillaumeGomez:env-tracked_env, r=Nilstrieb
Add support for `--env` on `tracked_env::var`

Follow-up of https://github.com/rust-lang/rust/pull/118368.
Part of Part of https://github.com/rust-lang/rust/issues/80792.

It adds support of the `--env` option for proc-macros through `tracked_env::var`.

r? `@Nilstrieb`
2023-12-17 04:23:08 +00:00
bors
9022e6a39c Auto merge of #119011 - Zalathar:assert-not, r=est31
coverage: Regression test for `assert!(!false)`

This verifies that #118904 has already been fixed by #118198.

---

`@rustbot` label +A-code-coverage
2023-12-17 01:29:59 +00:00
bors
445177724a Auto merge of #117595 - jyn514:x-clippy, r=albertlarsan68
x clippy

thanks to `@asquared31415` `@albertlarsan68` for all their help, most of this pr is their work

note that this also adds x clippy --stage 0 -Awarnings to x86_64-gnu-llvm-15 to make sure it stays working; that won't gate on any clippy warnings, just enforce that clippy doesn't give a hard error. we can't add --stage 1 until clippy fixes its debug assertions not to panic.

note that `x clippy --stage 1` currently breaks when combined with download-rustc.

unlike the previous prs, this doesn't require changes to clippy (it works by using RUSTC_WRAPPER instead), and supports stage 0

read this commit-by-commit

closes https://github.com/rust-lang/rust/pull/107628; see also https://github.com/rust-lang/rust/pull/106394, https://github.com/rust-lang/rust/pull/97443. fixes https://github.com/rust-lang/rust/issues/95988. helps with https://github.com/rust-lang/rust/issues/76495.

r? bootstrap
2023-12-16 20:52:36 +00:00
Joshua Nelson
a078c3aea8 test x clippy --stage 0 in ci 2023-12-16 15:24:59 -05:00
Albert Larsan
9288954789 Update stage0.json
you can replicate this commit with `./x.py run bump-stage0 --args 2023-11-13`
2023-12-16 15:24:59 -05:00
asquared31415
9341325c73 make x.py clippy download and use beta clippy 2023-12-16 15:24:59 -05:00
jyn
2979a2c72d use RUSTC_WRAPPER instead of RUSTC 2023-12-16 15:24:37 -05:00
jyn
336ed0ebc7 give a better error if renaming a temp file fails 2023-12-16 15:09:20 -05:00
Rémy Rakic
8560c67e4c describe unstable linker flavors in the unstable book 2023-12-16 20:02:22 +00:00
Rémy Rakic
968d40066c remove unstable linker flavors from stable documentation 2023-12-16 20:01:11 +00:00
bors
02ad6676dd Auto merge of #110494 - majaha:noTrapAfterNoreturn, r=nikic
Use the LLVM option NoTrapAfterNoreturn

Use this LLVM option: https://llvm.org/doxygen/classllvm_1_1TargetOptions.html#acd83fce25de1ac9f6c975135a8235c22 when TrapUnreachable is enabled. This prevents codegenning unnecessary double-traps in some situations.

See further discussion here: https://github.com/rust-lang/compiler-team/issues/618
2023-12-16 18:55:01 +00:00
Michael Goulet
20927d3956 Remove unnecessary constness from ProjectionCandidate 2023-12-16 17:21:20 +00:00
onur-ozkan
3ea3c3885b create helper fn hex_encode and remove hex dependency
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2023-12-16 20:16:53 +03:00
Ben Kimock
ce4f57511e Visit the AllocIds and BorTags in borrow state FrameExtra 2023-12-16 11:56:42 -05:00
jyn
0ffac661fa fix printing cargo args on --dry-run 2023-12-16 11:16:14 -05:00
bors
e223c41028 Auto merge of #119013 - flip1995:clippy-subtree-sync, r=Manishearth
Clippy subtree update

r? `@matthiaskrgr` (As Manish wrote that he is a bit inactive until the new year)
2023-12-16 14:49:59 +00:00
Philipp Krones
b92ab506d3
Update Cargo.lock 2023-12-16 14:13:12 +01:00
Philipp Krones
61f4a73c67
Merge commit 'a859e5cc1ce100df22346a1005da30532d04de59' into clippyup 2023-12-16 14:12:50 +01:00
bors
a859e5cc1c Auto merge of #11971 - flip1995:rustup, r=flip1995
Rustup

r? `@ghost`

changelog: none
2023-12-16 13:02:49 +00:00