Repository navigation
Rollup of 21 pull requests - #165056
Rollup of 21 pull requests#165056
Conversation
Previously, expressions behind stmt_expr_attributes were only rejected when the cfg condition evaluated to false. If the condition was true, the code compiled successfully. This meant code like an attributed binary operand could compile on one platform but fail on another, even though removing the operand would leave an invalid expression. This change always rejects cfg in expression positions where removing the expression would produce invalid code. Expression positions where removal is safe continue to work as before. Signed-off-by: Usman Akinyemi <usmanakinyemi202@gmail.com>
```
error[E0310]: the parameter type `R` may not live long enough
--> $DIR/implicit-static-lifetime-in-dyn-trait-return-type.rs:10:5
|
LL | fn bb<R>(r: R) -> Box<dyn Foo> {
| ------- this `dyn Trait` has an implicit `'static` lifetime bound 3
LL | Box::new(Bar(r))
| ^^^^^^^^^^^^^^^^
| |
| the parameter type `R` must be valid for the static lifetime...
| ...so that the type `R` will meet its required lifetime bounds
|
help: consider adding an explicit lifetime bound
|
LL | fn bb<R: 'static>(r: R) -> Box<dyn Foo> {
| +++++++++
help: consider adding an explicit lifetime bound
|
LL | fn bb<'a, R>(r: R) -> Box<dyn Foo + 'a> {
| +++ ++++
```
Report the same error for true and false cfg predicates when the surrounding expression cannot be removed. Apply it consistently during normal expansion and cfg_eval. Signed-off-by: Usman Akinyemi <usmanakinyemi202@gmail.com>
This is the abstraction that clang/flang both use. It simplifies the code by quite a bit (although not until we delete the old version). Mainly this enables the use of the NewPM for LLVM targets that opt-in (currently only Lanai and MSP430, but more soon).
It's an error to have `#[inline]#[rustc_force_inline]fn blah(){}`, but they both lower to the same `InlineAttr`, so this would error and then have an attribute list of multiple inline attrs
``` error[E0803]: cannot infer an appropriate lifetime for lifetime parameter `'s` in generic type due to conflicting requirements ```
Fixes a side effect of 127a5d9 reported on Zulip.
…td::no_code` macro
|
test-aarch64-apple-macos-26-2 might be stuck? |
|
It looks to be still making progress actually, just very slowly. Lets let it live for now? |
|
💔 Test for f7ed956 failed: CI. Failed job:
|
|
The job Click to see the possible cause of the failure (guessed by this bot)Important For more information how to resolve CI failures of this job, visit this link. |
|
@bors retry |
This comment has been minimized.
This comment has been minimized.
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 41089d0 (parent) -> ab019e7 (this PR) Test differencesShow 1972 test diffsStage 1
Stage 2
Additionally, 1944 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard ab019e71a1a1f4688bcc4d5bf06d2c5a424a31a5 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
🎉🎉🎉🎉🎉 |
|
Finished benchmarking commit (ab019e7): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 0.1%, secondary 0.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 0.7%, secondary 1.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.1%, secondary 0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 490.666s -> 488.323s (-0.48%) |
|
📌 Perf builds for each rolled up PR:
parent commit: 41089d07a0 In the case of a perf regression, run the following command with the SHAs of each PR you suspect might be the cause: |
View all comments
Successful merges:
--generate-link-to-definitionrustdoc option on std docs #162808 (Enable--generate-link-to-definitionrustdoc option on std docs){,}or;#163059 (Recover invalid return type until{,}or;)dyn Traitin return type #164188 (Suggest adding lifetime fordyn Traitin return type)falsein root contexts #164345 (fix: handlefalsein root contexts)Selfmapping #164785 (delegation: emit error when there is no field forSelfmapping)IntoIteratorin parallel API #164799 (Don't useIntoIteratorin parallel API)r? @ghost
Create a similar rollup