-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 8 pull requests #132035
Rollup of 8 pull requests #132035
Conversation
When using `concat!` to join paths, the Unix path separator (`/`) is often used. This breaks on Windows if the base path is a verbatim path (i.e. starts with `\\?\`).
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Dominator-order information is only needed for coverage graphs, and is easy enough to collect by just traversing the graph again. This avoids wasted work when computing graph dominators for any other purpose.
This also removes unused support for `[rev]` in debugger commands, and makes breakpoint detection slightly more sensible.
This reduces the need to juggle raw tuples, and opens up the possibility of moving more parts of directive parsing into `line_directive`.
…eyouxu Fixup Windows verbatim paths when used with the `include!` macro On Windows, the following code can fail if the `OUT_DIR` environment variable is a [verbatim path](https://doc.rust-lang.org/std/path/enum.Prefix.html) (i.e. begins with `\\?\`): ```rust include!(concat!(env!("OUT_DIR"), "/src/repro.rs")); ``` This is because verbatim paths treat `/` literally, as if it were just another character in the file name. The good news is that the standard library already has code to fix this. We can simply use `components` to normalize the path so it works as intended.
…=spastorino Validate args are correct for `UnevaluatedConst`, `ExistentialTraitRef`/`ExistentialProjection` For the `Existential*` ones, we have to do some adjustment to the args list to deal with the missing `Self` type, so we introduce a `debug_assert_existential_args_compatible` function to the interner as well.
…storino Add a note for `?` on a `impl Future<Output = Result<..>>` in sync function It's confusing to `?` a future of a result in a sync function. We have a suggestion to `.await` it if we're in an async function, but not a sync function. Note that this is the case for sync functions, at least. Let's be a bit more vague about a fix, since it's somewhat context dependent. For example, you could block on it, or you could make your function asynchronous. 🤷
add `TestFloatParse` to `tools.rs` for bootstrap add TestFloatParse to tools for bootstrap, I am not sure this is what the issue rust-lang#128012 discussion wants. try-job: aarch64-apple
Add doc(plugins), doc(passes), etc. to INVALID_DOC_ATTRIBUTES This fixes rust-lang#82824.
don't stage-off to previous compiler when CI rustc is available Resolves the 4th item in [Tracking Issue for download-rustc improvements](rust-lang#131744).
Move `cmp_in_dominator_order` out of graph dominator computation Dominator-order information is only needed for coverage graphs, and is easy enough to collect by just traversing the graph again. This avoids wasted work when computing graph dominators for any other purpose.
compiletest: Make `line_directive` return a `DirectiveLine` This reduces the need to juggle raw tuples, and opens up the possibility of moving more parts of directive parsing into `line_directive`. In order to make the main change possible, this PR also (partly) separates the debugger-command parsing from the main directive parser. That cleanup removes support for `[rev]` in debugger commands, which is not used by any tests.
@bors r+ rollup=never p=8 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: bca5fdebe0 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (86d69c7): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countThis is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.
Max RSS (memory usage)Results (primary 0.6%, secondary 1.1%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResults (secondary 2.2%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 781.36s -> 780.615s (-0.10%) |
Successful merges:
include!
macro #125205 (Fixup Windows verbatim paths when used with theinclude!
macro)UnevaluatedConst
,ExistentialTraitRef
/ExistentialProjection
#131049 (Validate args are correct forUnevaluatedConst
,ExistentialTraitRef
/ExistentialProjection
)?
on aimpl Future<Output = Result<..>>
in sync function #131549 (Add a note for?
on aimpl Future<Output = Result<..>>
in sync function)TestFloatParse
totools.rs
for bootstrap #131731 (addTestFloatParse
totools.rs
for bootstrap)cmp_in_dominator_order
out of graph dominator computation #132022 (Movecmp_in_dominator_order
out of graph dominator computation)line_directive
return aDirectiveLine
#132033 (compiletest: Makeline_directive
return aDirectiveLine
)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup