Commit graph

12678 commits

Author SHA1 Message Date
Guillaume Gomez
9e71c7b5a9 Small run-make-support API improvements 2024-07-03 11:34:39 +02:00
Tobias Decking
d982844b47
Implement the _mm256_zeroupper and _mm256_zeroall intrinsics 2024-07-03 11:08:23 +02:00
bors
58bf5936c0 Auto merge of #17536 - Veykril:syntax-diags, r=Veykril
fix: Don't emit semantic diagnostics in files with a lot of syntax errors

These will only add to the noise when something very unexpected breaks or where parser recovery fails to kick in.
2024-07-03 09:01:48 +00:00
Lukas Wirth
87da256395 fix: Don't emit semantic diagnostics in files with a lot of syntax errors 2024-07-03 10:59:46 +02:00
Lukas Wirth
5e60845f52 Fix up the syntax tree for macro 2.0 2024-07-03 10:41:19 +02:00
bors
2db4ff40af Auto merge of #127261 - jhpratt:rollup-cpoayvr, r=jhpratt
Rollup of 8 pull requests

Successful merges:

 - #123588 (Stabilize `hint::assert_unchecked`)
 - #126403 (Actually report normalization-based type errors correctly for alias-relate obligations in new solver)
 - #126917 (Disable rmake test `inaccessible-temp-dir` on riscv64)
 - #127115 (unreferenced-used-static: run test everywhere)
 - #127204 (Stabilize atomic_bool_fetch_not)
 - #127239 (remove unnecessary ignore-endian-big from stack-overflow-trait-infer …)
 - #127245 (Add a test for `generic_const_exprs`)
 - #127246 (Give remote-test-client a longer timeout)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-07-03 08:36:39 +00:00
Jacob Pratt
d801730872
Rollup merge of #127246 - ferrocene:hoverbear/remote-test-client-has-longer-timeout, r=Mark-Simulacrum
Give remote-test-client a longer timeout

In https://github.com/rust-lang/rust/pull/126959, ``@Mark-Simulacrum`` suggested we simply extend the timeout of the `remote-test-client` instead of making it configurable. This is acceptable for my use case.

I'm doing some work with a remote host running tests using `x.py`'s remote test runner system.

After building the `remote-test-server` with:

```bash
./x build src/tools/remote-test-server --target aarch64-unknown-linux-gnu
```

I can transfer the `remote-test-server` to the remote and set up a port forwarded SSH connection, then I run:

```bash
TEST_DEVICE_ADDR=127.0.0.1:12345 ./x.py test library/core --target aarch64-unknown-linux-gnu
```

This works great if the host is nearby, however if the average round trip time is over 100ms (the timeout), it creates problems as it silently trips the timeout.

This PR extends that timeout to a less strict 2s.

r? ``@Mark-Simulacrum``
2024-07-03 03:03:17 -04:00
Lukas Wirth
8f8f440cb2 Skip match exhaustiveness checking if pattern type contains errors 2024-07-03 08:31:40 +02:00
Weihang Lo
1ca7e24e36
Update cargo 2024-07-02 23:34:50 -04:00
Michael Goulet
b1059ccda2 Instance::resolve -> Instance::try_resolve, and other nits 2024-07-02 17:28:03 -04:00
Ralf Jung
41b98da42d Miri function identity hack: account for possible inlining 2024-07-02 21:05:30 +02:00
bors
ad1d8a8f1e Auto merge of #3707 - adwinwhite:dup, r=RalfJung
Add syscall `dup()` for unix target

Add support for `dup()` and `dup2()`.

Fixes #3454
2024-07-02 19:04:49 +00:00
Ralf Jung
c96bec1860 use let-else to avoid rightwards drift 2024-07-02 21:03:13 +02:00
Ana Hobden
4b0b97f66d
Give remote-test-client a longer timeout 2024-07-02 10:09:40 -07:00
Matthias Krüger
a10c231118
Rollup merge of #127230 - hattizai:patch01, r=saethlin
chore: remove duplicate words

remove duplicate words in comments to improve readability.
2024-07-02 17:47:50 +02:00
Matthias Krüger
3cf567e3c0
Rollup merge of #127136 - compiler-errors:coroutine-closure-env-shim, r=oli-obk
Fix `FnMut::call_mut`/`Fn::call` shim for async closures that capture references

I adjusted async closures to be able to implement `Fn` and `FnMut` *even if* they capture references, as long as those references did not need to borrow data from the closure captures themselves. See #125259.

However, when I did this, I didn't actually relax an assertion in the `build_construct_coroutine_by_move_shim` shim code, which builds the `Fn`/`FnMut`/`FnOnce` implementations for async closures. Therefore, if we actually tried to *call* `FnMut`/`Fn` on async closures, it would ICE.

This PR adjusts this assertion to ensure that we only capture immutable references in closures if they implement `Fn`/`FnMut`. It also adds a bunch of tests and makes more of the async-closure tests into `build-pass` since we often care about these tests actually generating the right closure shims and stuff. I think it might be excessive to *always* use build-pass here, but 🤷 it's not that big of a deal.

Fixes #127019
Fixes #127012

r? oli-obk
2024-07-02 17:47:46 +02:00
Oneirical
45313a6ca0 rewrite test-harness to rmake 2024-07-02 11:37:59 -04:00
Oneirical
3a656462ef rewrite and rename issue-47384 to rmake 2024-07-02 11:37:59 -04:00
Oneirical
86bd3498b2 rewrite rlib-chain to rmake 2024-07-02 11:37:58 -04:00
Oneirical
371845b630 rewrite dylib-chain to rmake 2024-07-02 11:37:32 -04:00
Lukas Wirth
0fef8f01a3 Move lifetimes in front of type and const params but after self 2024-07-02 14:17:34 +02:00
Lukas Wirth
99e432d253 Make GenericParams::lifetimes private 2024-07-02 13:45:53 +02:00
Lukas Wirth
446e15484c Make GenericParams::where_predicates private 2024-07-02 13:45:50 +02:00
Lukas Wirth
1da9ade53d Make GenericParams::type_or_consts private 2024-07-02 13:45:48 +02:00
Lukas Wirth
5fa5378856 Fix lifetime parameters moving paramter defaults 2024-07-02 12:34:32 +02:00
bors
4a7d29f376 Auto merge of #3724 - bjorn3:use_symbol_name_query, r=RalfJung
Use the symbol_name query instead of trying to infer from the link_name attribute

This prevents the calculated name from going out of sync with exported_symbols. It also avoids having to special case the panic_impl lang item.

It also makes it easier to fix miri with https://github.com/rust-lang/rust/pull/127173.
2024-07-02 10:29:45 +00:00
bjorn3
e03c3b6f19 Allow _Unwind_RaiseException with MinGW 2024-07-02 10:19:59 +00:00
Ralf Jung
cbea3d7add Merge from rustc 2024-07-02 08:21:57 +02:00
Ralf Jung
3e44883606 Preparing for merge from rustc 2024-07-02 08:21:44 +02:00
hattizai
ada9fda7c3 chore: remove duplicate words 2024-07-02 11:25:31 +08:00
bors
7d97c59438 Auto merge of #126941 - GuillaumeGomez:migrate-run-make-llvm-ident, r=Kobzol
Migrate `run-make/llvm-ident` to `rmake.rs`

Part of https://github.com/rust-lang/rust/issues/121876.

r? `@Kobzol`

try-job: armhf-gnu
2024-07-01 21:55:41 +00:00
Guillaume Gomez
a509b5a0ba
Rollup merge of #127201 - GuillaumeGomez:improve-run-make-support, r=Kobzol
Improve run-make-support API

I think I'll slowly continue this work. Makes things a bit nicer for contributors, so why not. :D

r? ``@Kobzol``
2024-07-01 20:29:59 +02:00
Guillaume Gomez
61e7f05895
Rollup merge of #126880 - Rejyr:migrate-rmake-vw, r=Kobzol
Migrate `volatile-intrinsics`, `weird-output-filenames`, `wasm-override-linker`, `wasm-exceptions-nostd` to `rmake`

Also refactors `wasm-abi` and `compressed-debuginfo`.

Part of #121876.

r? ``@jieyouxu``

try-job: x86_64-gnu-debug
try-job: dist-various-2
2024-07-01 20:29:57 +02:00
bjorn3
18049b73ec Use the symbol_name query instead of trying to infer from the link_name attribute
This prevents the calculated name from going out of sync with
exported_symbols. It also avoids having to special case the panic_impl
lang item.
2024-07-01 18:04:13 +00:00
Shohei Wada
f398be1639 squash. 2024-07-02 01:52:34 +09:00
Michael Howell
cc1b3ee7f1 clippy: update to pulldown-cmark 0.11 2024-07-01 07:21:02 -07:00
Adwin White
ccc50b21c1 add syscall dup() 2024-07-01 21:52:10 +08:00
Guillaume Gomez
7276499dc9 Migrate run-make/llvm-ident to rmake.rs 2024-07-01 15:12:13 +02:00
Guillaume Gomez
fc8b6c6657 Add input_file method on LlvmFileCheck 2024-07-01 15:10:13 +02:00
Lukas Wirth
fe9337311c Improve error message when the proc-macro server unexpectedly exits 2024-07-01 14:30:21 +02:00
bors
94e5efdab1 Auto merge of #17495 - listochkin:pass-cargo-extra-args-for-debugger, r=Veykril
pass cargo extra args when debugging

fixes #17128
2024-07-01 10:34:09 +00:00
bors
29fbc2414d Auto merge of #17494 - harrysarson:harry/keep-braces, r=Veykril
do not normalize `use foo::{self}` to `use foo`

It changes behaviour and can cause collisions. E.g. for the following snippet

```rs
mod foo {

    pub mod bar {}

    pub const bar: i32 = 8;
}

// transforming the below to `use foo::bar;` causes the error:
//
//   the name `bar` is defined multiple times
use foo::bar::{self};

const bar: u32 = 99;

fn main() {
    let local_bar = bar;
}
```

we still normalize

```rs
use foo::bar;
use foo::bar::{self};
```

to `use foo::bar;` because this cannot cause collisions.

See: https://github.com/rust-lang/rust-analyzer/pull/17140#issuecomment-2079189725
2024-07-01 10:20:01 +00:00
Guillaume Gomez
fcfac05657 Improve target method API in run-make-support 2024-07-01 10:55:57 +02:00
Guillaume Gomez
b5b97dccae Improve run-make-support API for assert* functions 2024-07-01 10:55:57 +02:00
bors
dffbad50c1 Auto merge of #17522 - Veykril:comptimes, r=Veykril
internal: Cut compiletimes slightly
2024-07-01 08:43:11 +00:00
Michael Howell
15fbe618a1 rustdoc: update to pulldown-cmark 0.11 2024-06-30 18:33:48 -07:00
Lukas Wirth
d40bc51e3d Bump rustc_pattern_analysis 2024-06-30 18:41:55 +02:00
Matthias Krüger
4037197353
Rollup merge of #127161 - GuillaumeGomez:improve-run-make-args, r=Kobzol
Improve `run-make-support` library `args` API

It allows to pass both `Vec` and slices, which makes it much better (for me at least 😉).

r? ``@Kobzol``
2024-06-30 18:25:35 +02:00
Matthias Krüger
6f5765599e
Rollup merge of #126018 - nnethercote:rm-box_pointers-lint, r=lcnr
Remove the `box_pointers` lint.

As the comment says, this lint "is mostly historical, and not particularly useful". It's not worth keeping it around.

r? ``@estebank``
2024-06-30 18:25:31 +02:00
Lukas Wirth
1653889bad Remove serde flag from indexmap dependency 2024-06-30 18:14:53 +02:00