1
Fork 0
Commit graph

287067 commits

Author SHA1 Message Date
Matthias Krüger
67e2358fbb
Rollup merge of #139902 - lcnr:no-opaque-cast-projection, r=oli-obk
do not emit `OpaqueCast` projections with `-Znext-solver`

We normalize opaque types in their defining scope if the new solver is enabled. This means projections do not contain any 'revealable' opaque types we need to worry about. We either have a type which has been normalized by writeback or we need to normalize it anyways.

r? ```@compiler-errors``` ```@oli-obk```
2025-04-17 17:40:28 +02:00
Matthias Krüger
cecc7a490a
Rollup merge of #139870 - Shourya742:2025-04-15-add-retries-to-remove_and_create_dir_all, r=jieyouxu
add retries to remove and create dir all

closes: #139230

r? ```@jieyouxu```
2025-04-17 17:40:28 +02:00
Matthias Krüger
d2db1c1df9
Rollup merge of #139850 - xizheyin:issue-138698, r=jieyouxu
Hide unstable print kinds within emit_unknown_print_request_help in stable channel

Fixes #138698

We need to get the channel from `matches`. However, since `matches`(Line 1169) is constructed after `rustc_optgroups` (Line1165, where `RustcOptGroup::value_hint` is generated, i.e. what `rustc --print print` prints), I've left it unchanged here for now.

2da29dbe8f/compiler/rustc_driver_impl/src/lib.rs (L1161-L1169)

There is actually a way to manually parse the `--crate-name` parameter, but I'm afraid that's an unorthodox practice. So I conservatively just modified `emit_unknown_print_request_help` to print different parameters depending on whether they are nightly or not when passing the error parameter.

r? ```@jieyouxu```
2025-04-17 17:40:27 +02:00
Matthias Krüger
da43826398
Rollup merge of #139774 - compiler-errors:supertrait-alias, r=lcnr
Fix replacing supertrait aliases in `ReplaceProjectionWith`

The new solver has a procedure called `predicates_for_object_candidate`, which elaborates the super-bounds and item-bounds that are required to hold for a dyn trait to implement something via a built-in object impl.

In that procedure, there is a folder called `ReplaceProjectionWith` which is responsible for replacing projections that reference `Self`, so that we don't encounter cycles when we then go on to normalize those projections in the process of proving these super-bounds.

That folder had a few problems: Firstly, it wasn't actually checking that this was a super bound originating from `Self`. Secondly, it only accounted for a *single* projection type def id, but trait objects can have multiple (i.e. `trait Foo<A, B>: Bar<A, Assoc = A> + Bar<B, Assoc = B>`).

To fix the first, it's simple enough to just add an equality check for the self ty. To fix the second, I implemented a matching step that's very similar to the `projection_may_match` check we have for upcasting, since on top of having multiple choices, we need to deal with both non-structural matches and ambiguity.

This probably lacks a bit of documentation, but I think it works pretty well.

Fixes https://github.com/rust-lang/trait-system-refactor-initiative/issues/171

r? lcnr
2025-04-17 17:40:27 +02:00
Jakub Beránek
cecf16785f
Add a note about the test dashboard to the post-merge report 2025-04-17 17:38:15 +02:00
Amanieu d'Antras
e5e5fb9d80 Fix drop handling in hint::select_unpredictable
This intrinsic doesn't drop the value that is not selected so this is
manually done in the public function that wraps the intrinsic.
2025-04-17 17:30:53 +02:00
Jakub Beránek
08cb187d26
Turn test_dashboard into a file 2025-04-17 17:26:40 +02:00
Jakub Beránek
aa9cb70190
Print number of root tests and subdirectories 2025-04-17 17:25:12 +02:00
Jieyou Xu
83af9f57c1
run-make: drop os_pipe workaround now that anonymous_pipe is stable on beta 2025-04-17 23:23:30 +08:00
Jakub Beránek
d2c1763336
Create a macro for rendering test results 2025-04-17 17:18:38 +02:00
Jakub Beránek
1a6e0d52e5
Render test revisions separately 2025-04-17 17:14:26 +02:00
Alex Crichton
f9091e24a0 Ignore zero-sized types in wasm future-compat warning
This commit fixes a false positive of the warning triggered for #138762
and the fix is to codify that zero-sized types are "safe" in both the
old and new ABIs.
2025-04-17 07:42:55 -07:00
Jakub Beránek
4b310338f8
Add a note about how to find tests that haven't been executed anywhere. 2025-04-17 16:35:39 +02:00
Jakub Beránek
a326afd5dd
Add buttons for expanding and collapsing all test suites 2025-04-17 16:30:23 +02:00
Patrick-6
50cf102311 Change function visibility to pub 2025-04-17 16:23:44 +02:00
Jakub Beránek
c8a882b7b5
Add command to citool for generating a test dashboard 2025-04-17 16:18:24 +02:00
Jakub Beránek
111c15c48e
Extract function for normalizing path delimiters to utils 2025-04-17 16:18:01 +02:00
Jakub Beránek
d14df2652d
Make parent in download_auto_job_metrics optional 2025-04-17 16:18:01 +02:00
Lukas Woodtli
7a5a884275 Make C string merging test work on MIPS
Assembly for MIPS uses, by convention, a different prefix for local
anonymous variables.
2025-04-17 16:08:22 +02:00
xizheyin
8562110e0d Hide unstable print kinds within emit_unknown_print_request_help in stable channel
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
2025-04-17 22:02:31 +08:00
Antoni Boucher
06af88e06c Add new failing test 2025-04-17 08:50:09 -04:00
Antoni Boucher
4b5940ad77 Fix overflow operations 2025-04-17 08:50:06 -04:00
Antoni Boucher
0d773175cc Add support for simd_insert_dyn and simd_extract_dyn 2025-04-17 08:50:02 -04:00
Antoni Boucher
bb1e6a3193 Fix tests 2025-04-17 08:49:55 -04:00
Antoni Boucher
6504f4c09c Format 2025-04-17 08:49:52 -04:00
Antoni Boucher
bc0bc8d5e1 Fix int_to_float_cast for f128 2025-04-17 08:49:49 -04:00
Antoni Boucher
ec44cfdfb4 Fix tests 2025-04-17 08:49:44 -04:00
Antoni Boucher
ecf0a1eea3 Update GCC version 2025-04-17 08:49:41 -04:00
Antoni Boucher
5cf2bbc4e2 Fix clippy warnings 2025-04-17 08:49:37 -04:00
Antoni Boucher
f9822772e8 Fix libcore tests 2025-04-17 08:49:33 -04:00
Antoni Boucher
9a453d46f4 Update other patches 2025-04-17 08:49:30 -04:00
Antoni Boucher
e1fa74b4a9 Implement copysignf128 2025-04-17 08:49:24 -04:00
Antoni Boucher
5c832e5ece Remove most of builtins hack since it's not necessary anymore 2025-04-17 08:49:21 -04:00
Antoni Boucher
be75a58538 Fix compilation 2025-04-17 08:49:15 -04:00
Antoni Boucher
cc81c706e4 Fix patches 2025-04-17 08:49:08 -04:00
Antoni Boucher
c1d21003bb Update to nightly-2025-04-17 2025-04-17 08:34:54 -04:00
Antoni Boucher
90c6c9f6a9 Merge branch 'master' into sync_from_rust_2025_04_17 2025-04-17 08:34:28 -04:00
Jieyou Xu
6c5a481f93
tests: remove unused auxiliaries under tests/ui/directory_ownership/ 2025-04-17 19:45:28 +08:00
Jieyou Xu
89cac55bb8
tests: use //@ ignore-auxiliary with backlinked primary test file 2025-04-17 19:45:28 +08:00
petr sumbera - Sun Microsystems - Prague Czech Republic
35a4140723 update libc 2025-04-17 13:39:46 +02:00
bors
883f9f72e8 Auto merge of #139949 - matthiaskrgr:rollup-pxc5tsx, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - #138632 (Stabilize `cfg_boolean_literals`)
 - #139416 (unstable book; document `macro_metavar_expr_concat`)
 - #139782 (Consistent with treating Ctor Call as Struct in liveness analysis)
 - #139885 (document RUSTC_BOOTSTRAP, RUSTC_OVERRIDE_VERSION_STRING, and -Z allow-features in the unstable book)
 - #139904 (Explicitly annotate edition for `unpretty=expanded` and `unpretty=hir` tests)
 - #139932 (transmutability: Refactor tests for simplicity)
 - #139944 (Move eager translation to a method on Diag)
 - #139948 (git: ignore `60600a6fa4` for blame purposes)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-04-17 11:21:54 +00:00
Jieyou Xu
6bbee334fd
rustc-dev-guide: document //@ ignore-auxiliary 2025-04-17 18:52:57 +08:00
Jieyou Xu
d1178faa93
tests: refine disable reason for tests/debuginfo/drop-locations.rs 2025-04-17 18:52:57 +08:00
Jieyou Xu
d20f848478
compiletest: add specific //@ ignore-auxiliary for test support files
This is for files that *participate* in actual tests but should not be
built by `compiletest` (i.e. these files are involved through `mod xxx;`
or `include!()` or `#[path = "xxx"]`, etc.).

A specialized directive like `//@ ignore-auxiliary` makes it way easier
to audit disabled tests via `//@ ignore-test`.
2025-04-17 18:52:56 +08:00
lcnr
c85b5fcd07 check OpaqueCast tests with next-solver 2025-04-17 12:41:20 +02:00
lcnr
289a23e0e2 do not emit OpaqueCast projections with -Znext-solver 2025-04-17 12:15:04 +02:00
Maksim Bondarenkov
62a104d99e opt-dist: add a flag for running tests
when using `opt-dist local` user probably won't need to run tests (for
various reasons). currently the only way to disable them is to set
`TRY_DIST_BUILD=1`, which is not obvious and can be bad for non-CI
envronments (as I guess)
2025-04-17 13:01:22 +03:00
Maksim Bondarenkov
bf2696311b bootstrap: enable zlib for LLVM when we compile it for profiling
when compiling target LLVM with `opt-dist local` on Windows/MinGW,
profraw files are being compressed with zlib, so compiling without it
will make `llvm-profdata` complain about lacking of zlib support. this
error is shown:

`profile uses zlib compression but the profile reader was built without
zlib support`

example from llvm test suite: 76b5fcbf97/llvm/test/tools/llvm-profdata/nocompress.test (L15)
2025-04-17 12:53:17 +03:00
bors
94015d3cd4 Auto merge of #139926 - weihanglo:update-cargo, r=weihanglo
Update cargo

4 commits in 864f74d4eadcaea3eeda37a2e7f4d34de233d51e..d811228b14ae2707323f37346aee3f4147e247e6
2025-04-11 20:37:27 +0000 to 2025-04-15 15:18:42 +0000
- use `zlib-rs` for gzip compression in rust code (rust-lang/cargo#15417)
- test(rustfix): Use `snapbox` for snapshot testing (rust-lang/cargo#15429)
- chore(deps): update rust crate gix to 0.71.0 [security] (rust-lang/cargo#15391)
- Make sure search paths inside OUT_DIR precede external paths (rust-lang/cargo#15221)

Also,

* The license exception of sha1_smol with BSD-3-Clause is no longer needed, as `gix-*` doesn't depend on it.
* Cargo depends on zlib-rs, which is distributed under Zlib license

r? ghost
2025-04-17 08:07:28 +00:00
León Orell Valerian Liehr
82ff0a0e6a
rustdoc: Properly clean fn params in all contexts 2025-04-17 08:55:53 +02:00