Commit Graph

229913 Commits

Author SHA1 Message Date
Bernardo Sulzbach 0e2c68da64
Fix rust-analzyer ssr help message 2023-07-16 12:12:33 +02:00
nipzu 782bdfd791
Fix sort_unstable_by_key italicization 2023-07-16 12:07:04 +03:00
Jakub Beránek e04b915a1d Use log groups in `opt-dist`
Some of the output was quite verbose in CI logs, this should help with that.
2023-07-16 10:36:13 +02:00
bors 00a39cc785 Auto merge of #113745 - tshepang:patch-1, r=workingjubilee
collect.rs: remove "Basic usage" text where not useful
2023-07-16 07:37:33 +00:00
bors bc0628c9b4 Auto merge of #15292 - kberov:patch-1, r=lnicola
Update flags.rs

Fixed typo in documentation comment
2023-07-16 07:33:53 +00:00
Красимир Беров 8f169f9642
Update flags.rs
Fixed typo in documentation comment
2023-07-16 10:27:20 +03:00
bors 4fad3301b1 Auto merge of #15280 - lnicola:bump-rust-version, r=lnicola
minor: Bump rust-version to 1.70 and use the workspace one in xtask

CC https://github.com/rust-lang/rust-analyzer/issues/15279
2023-07-16 06:50:43 +00:00
bors f4b5c7c8bd Auto merge of #15291 - rust-lang:revert-15288-15143, r=lnicola
Revert "Handle TyAlias in projected_ty"

Reverts rust-lang/rust-analyzer#15288
2023-07-16 06:36:33 +00:00
Laurențiu Nicola 467f5f418e
Revert "Handle TyAlias in projected_ty" 2023-07-16 09:34:35 +03:00
Tshepang Mbambo f05dc95346
collect.rs: remove "Basic usage" text where not useful 2023-07-16 05:08:25 +02:00
bors ffb9b61294 Auto merge of #113430 - Zalathar:hash, r=b-naber
Remove `LLVMRustCoverageHashCString`

Coverage has two FFI functions for computing the hash of a byte string. One takes a ptr/len pair (`LLVMRustCoverageHashByteArray`), and the other takes a NUL-terminated C string (`LLVMRustCoverageHashCString`).

But on closer inspection, the C string version is unnecessary. The calling-side code converts a Rust `&str` into a `CString`, and the C++ code then immediately turns it back into a ptr/len string before actually hashing it. So we can just call the ptr/len version directly instead.

---

This PR also fixes a bug in the C++ declaration of `LLVMRustCoverageHashByteArray`. It should be `size_t`, since that's what is declared and passed on the Rust side, and it's what `StrRef`'s constructor expects to receive on the callee side.
2023-07-16 01:56:23 +00:00
Michael Goulet 8f178d1b0c Don't call predicate_must_hold during fulfillment in intercrate 2023-07-16 01:56:16 +00:00
bors 2c718d1259 Auto merge of #113738 - jyn514:rollup-mjcya4c, r=jyn514
Rollup of 3 pull requests

Successful merges:

 - #113643 (bootstrap: Clean up try_run)
 - #113731 (Remove unused `bootstrap::util::CiEnv` enum)
 - #113737 (update mailmap for myself)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-07-16 00:05:49 +00:00
jyn df729c2826
Rollup merge of #113737 - jyn514:mailmap, r=jyn514
update mailmap for myself
2023-07-15 18:52:32 -05:00
jyn 0a299f6512
Rollup merge of #113731 - jyn514:ci-env, r=ozkanonur
Remove unused `bootstrap::util::CiEnv` enum

the right one is `build_helper::CiEnv`; this one wasn't even used.
2023-07-15 18:52:32 -05:00
jyn 90c74e20ce
Rollup merge of #113643 - jyn514:try-run, r=ozkanonur
bootstrap: Clean up try_run

r? `@ozkanonur` since you reviewed `@GuillaumeGomez's` PR

i recommend reviewing commit-by-commit
2023-07-15 18:52:31 -05:00
jyn 2d3a964f26 update mailmap for myself 2023-07-15 18:22:11 -05:00
Eduardo Sánchez Muñoz b5fde0dae0 miri: fail when calling a function that requires an unavailable target feature
miri will report an UB when calling a function that has a `#[target_feature(enable = ...)]` attribute is called and the required feature is not available.

"Available features" are the same that `is_x86_feature_detected!` (or equivalent) reports to be available during miri execution (which can be enabled or disabled with the `-C target-feature` flag).
2023-07-16 00:23:17 +02:00
bors 4124617c6e Auto merge of #113606 - jyn514:parallel-compiler-cleanup, r=cjgillot
Don't require each rustc_interface tool to opt-in to parallel_compiler

Previously, forgetting to call `interface::set_thread_safe_mode` would cause the following ICE:
```
thread 'rustc' panicked at 'uninitialized dyn_thread_safe mode!', /rustc/dfe0683138de0959b6ab6a039b54d9347f6a6355/compiler/rustc_data_structures/src/sync.rs:74:18
```

This calls `set_thread_safe_mode` in `interface::run_compiler` to avoid requiring it in the caller.

Fixes `tests/run-make-fulldeps/issue-19371` when parallel-compiler is enabled.

r? `@SparrowLii` cc https://github.com/rust-lang/rust/issues/75760
2023-07-15 22:23:05 +00:00
Camille GILLOT 87233da5c2 Check entry type as part of item type checking. 2023-07-15 22:02:16 +00:00
bors 4c8bb79d9f Auto merge of #113697 - GuillaumeGomez:rm-unneeded-externallocation-handling, r=lqd
Remove unneeded handling for `ExternalLocation::Unknown` in rustdoc render context

Should fix perf regression introduced in https://github.com/rust-lang/rust/pull/113623.

r? `@lqd`
2023-07-15 20:31:40 +00:00
bors 425726d46b Auto merge of #113732 - matthiaskrgr:rollup-nm5qy4i, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - #113625 (Structurally normalize in selection)
 - #113644 (misc bootstrap cleanups)
 - #113663 (Implement "items do not inherit unsafety" note for THIR unsafeck)
 - #113683 (remove outdated `FIXME`s in bootstrap internals)
 - #113709 (rustdoc: use src consistently over source in CSS/JS)
 - #113724 (Migrate GUI colors test to original CSS color format)

r? `@ghost`
`@rustbot` modify labels: rollup
2023-07-15 18:13:26 +00:00
Matthias Krüger 5f94c876ad
Rollup merge of #113724 - GuillaumeGomez:migrate-gui-test-color-21, r=notriddle
Migrate GUI colors test to original CSS color format

Follow-up of https://github.com/rust-lang/rust/pull/111459.

r? `@notriddle`
2023-07-15 19:42:53 +02:00
Matthias Krüger 331b5baddd
Rollup merge of #113709 - notriddle:notriddle/src, r=GuillaumeGomez
rustdoc: use src consistently over source in CSS/JS

The two terms have been used, inconsistently, in closely related spots like the `src/` directory vs `source-files.js`, and with things like `src-sidebar-toggle` vs the `source-sidebar`. This PR changes most use of `source` to `src` instead (except the localStorage configuration variables, which would be very complicated to migrate).

It also renames `.srclink` to `.src`. This is mostly aiming to cut out one of those many little peanut-butter bits of bloat, and is consistent with how other link classes are done (like how you have `a.mod` stylesheet rules, but there's also a `mod` class put on the body tag).
2023-07-15 19:42:53 +02:00
Matthias Krüger d0ef799156
Rollup merge of #113683 - ozkanonur:polished, r=jyn514
remove outdated `FIXME`s in bootstrap internals

self-explanatory
2023-07-15 19:42:52 +02:00
Matthias Krüger 9b8be2f0e1
Rollup merge of #113663 - syvb:non_inherited_unsafe_thir, r=cjgillot
Implement "items do not inherit unsafety" note for THIR unsafeck

Implements the "items do not inherit unsafety from separate enclosing items" note from the MIR unsafety checker in the THIR unsafety checker (`-Z thir-unsafeck`) to maintain parity between the two unsafety checkers. The logic to find the separate enclosing item is nearly the same as in the MIR unsafety checker.
2023-07-15 19:42:52 +02:00
Matthias Krüger e76ae3e4c5
Rollup merge of #113644 - jyn514:bootstrap-cleanups, r=albertlarsan68
misc bootstrap cleanups

- rename `detail_exit_macro` to `exit`
- remove unnecessary `Builder::new_standalone` function
- support `x suggest` with build-metrics
2023-07-15 19:42:51 +02:00
Matthias Krüger da18cf8572
Rollup merge of #113625 - compiler-errors:structurally-norm-in-selection, r=lcnr
Structurally normalize in selection

We need to do this because of the fact that we're checking the `Ty::kind` on a type during selection, but goals passed into select are not necessarily normalized.

Right now, we're (kinda) unnecessarily normalizing the RHS of a trait upcasting goal, which is broken for different reasons (#113393). But I'm waiting for this PR to land before discussing that one.

r? `@lcnr`
2023-07-15 19:42:51 +02:00
jyn 6f589d53ba Remove unused `bootstrap::util::CiEnv` enum
the right one is `build_helper::CiEnv`; this one wasn't even used.
2023-07-15 12:37:11 -05:00
jyn c0c6a24f89 Replace `builder::try_run_quiet` with `run_quiet_delaying_failure`
It was only used when a `builder` is available, and I want to encourage using the version that supports `--no-fail-fast`.
2023-07-15 12:31:31 -05:00
jyn 78f51a4be0 Rename `Builder::try_run` to `run_delaying_failure` 2023-07-15 12:31:31 -05:00
jyn 63d7992353 Deduplicate `Builder::try_run` and mark `Config::try_run` as deprecated
This does three things:
1. Remove `forward!(Build, fn try_run())`. Having `try_run` behave differently as a free function than an associated function is confusing, and `Builder::try_run` is a very desirable name.
2. Move `test::try_run` and `run::try_run` to `Builder::try_run`. These functions are different than `Config::try_run` - they delay the failure and print it out at the end of the build.
3. Mark `Config::try_run` as deprecated to encourage people to use `Builder::try_run` instead.
2023-07-15 12:27:53 -05:00
bors 996e054f1e Auto merge of #15288 - alibektas:15143, r=lnicola
Handle TyAlias in projected_ty

First of all I still have no idea how MIR works but #15143 has been an issue that constantly made RA crash so I have been looking for a way to make RA stop panicking. I have zero claims that what I want to merge has any sense or is correct 😄  but there isn't any more panicking. Even if it is wrong may this be at least a step towards resolving this issue.
As is customary this PR fixes #15143
2023-07-15 17:14:13 +00:00
Ali Bektas f8f19c4288 Change names to sth more presentable 2023-07-15 19:04:59 +02:00
Ali Bektas 75f06ce1fb Handle TyAlias in projected_ty 2023-07-15 18:32:21 +02:00
syvb 2cfe8ed37d Implement "items do not inherit unsafety" for THIR unsafeck 2023-07-15 11:59:38 -04:00
bors 7a17f577b3 Auto merge of #112157 - erikdesjardins:align, r=nikic
Resurrect: rustc_target: Add alignment to indirectly-passed by-value types, correcting the alignment of byval on x86 in the process.

Same as #111551, which I [accidentally closed](https://github.com/rust-lang/rust/pull/111551#issuecomment-1571222612) :/

---

This resurrects PR #103830, which has sat idle for a while.

Beyond #103830, this also:
- fixes byval alignment for types containing vectors on Darwin (see `tests/codegen/align-byval-vector.rs`)
- fixes byval alignment for overaligned types on x86 Windows (see `tests/codegen/align-byval.rs`)
- fixes ABI for types with 128bit requested alignment on ARM64 Linux (see `tests/codegen/aarch64-struct-align-128.rs`)

r? `@nikic`

---

`@pcwalton's` original PR description is reproduced below:

Commit 88e4d2c from five years ago removed
support for alignment on indirectly-passed arguments because of problems with
the `i686-pc-windows-msvc` target. Unfortunately, the `memcpy` optimizations I
recently added to LLVM 16 depend on this to forward `memcpy`s. This commit
attempts to fix the problems with `byval` parameters on that target and now
correctly adds the `align` attribute.

The problem is summarized in [this comment] by `@eddyb.` Briefly, 32-bit x86 has
special alignment rules for `byval` parameters: for the most part, their
alignment is forced to 4. This is not well-documented anywhere but in the Clang
source. I looked at the logic in Clang `TargetInfo.cpp` and tried to replicate
it here. The relevant methods in that file are
`X86_32ABIInfo::getIndirectResult()` and
`X86_32ABIInfo::getTypeStackAlignInBytes()`. The `align` parameter attribute
for `byval` parameters in LLVM must match the platform ABI, or miscompilations
will occur. Note that this doesn't use the approach suggested by eddyb, because
I felt it was overkill to store the alignment in `on_stack` when special
handling is really only needed for 32-bit x86.

As a side effect, this should fix #80127, because it will make the `align`
parameter attribute for `byval` parameters match the platform ABI on LLVM
x86-64.

[this comment]: #80822 (comment)
2023-07-15 15:39:53 +00:00
bors 4d6e4260b2 Auto merge of #113514 - jyn514:more-gha-groups, r=oli-obk
Add even more GHA log groups

This also adds a dynamic check that we don't emit nested groups, since GHA currently doesn't support them.

r? `@oli-obk`
2023-07-15 13:52:04 +00:00
Guillaume Gomez 2778b71155 Migrate GUI colors test to original CSS color format 2023-07-15 15:14:06 +02:00
Michael Howell d7d0a4533c rustdoc: rename to `src-script.js`
This is a separate commit to keep Git happy.
2023-07-14 16:54:14 -07:00
Michael Howell e72fba4160 rustdoc: use `src` consistently over `source` in JavaScript
Since the directory that contains source files is called `src`,
it makes sense to name the scripts that way, too.
2023-07-14 16:54:14 -07:00
Michael Howell 34bc8fbea3 rustdoc: use `src` consistently over `source` in code
The CSS uses an inconsistent mix of both. This commit switches
it to always use `src`.
2023-07-14 16:38:01 -07:00
jyn 3a0caed188 fix another nesting issue 2023-07-14 17:34:27 -05:00
jyn 02ae14c972 fix another GHA log panic 2023-07-14 17:32:27 -05:00
jyn ce843aa24c add a couple more groups
- group rustdoc-js-std
- group rust-installer/test.sh
2023-07-14 17:32:25 -05:00
jyn 3e306c2ddb Add `track_caller` to builder.msg
this makes the panics on nested GHA groups more useful
2023-07-14 17:32:05 -05:00
jyn 9851a141a3 put configure behind a group 2023-07-14 17:27:20 -05:00
jyn dcd8d376cb don't print download progress in CI 2023-07-14 17:27:20 -05:00
jyn 26cdf7566c Add must_use to `msg_` functions
This caught several places which weren't waiting until the command finished to drop the Group.

I also took the liberty of calling `msg_sysroot_tool` from `run_cargo_test` to reduce code duplication and make errors like this less likely in the future.
2023-07-14 17:27:20 -05:00
jyn fff8223584 Add GHA log groups for tool tests 2023-07-14 17:27:20 -05:00