Skip to content
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 11 pull requests #99567

Merged
merged 27 commits into from
Jul 21, 2022
Merged

Rollup of 11 pull requests #99567

merged 27 commits into from
Jul 21, 2022

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

joboet and others added 27 commits June 30, 2022 11:48
These merged in rust-lang#97437 for 1.64.0, apart from the main `io_safety`
feature that stabilized in 1.63.0.
Fix type error

Fix continue_value doc comment
Clarify when this method will panic.

Also fix formatting for `pick2_mut`.
`~const Drop` was renamed to `~const Destruct` and this special case should
be removed
std: use futex-based locks on Fuchsia

This switches `Condvar` and `RwLock` to the futex-based implementation currently used on Linux and some BSDs. Additionally, `Mutex` now has its own, priority-inheriting implementation based on the mutex in Fuchsia's `libsync`. It differs from the original in that it panics instead of aborting when reentrant locking is detected.

````@rustbot```` ping fuchsia
r? ````@m-ou-se````
Add `PhantomData` marker for dropck to `BTreeMap`

closes rust-lang#99408
…inators, r=scottmcm

Add map_continue and continue_value combinators to ControlFlow

As suggested in this comment: rust-lang#75744 (comment)

Related tracking issue: rust-lang#75744

r? ``````@scottmcm``````
Fix the stable version of `AsFd for Arc<T>` and `Box<T>`

These merged in rust-lang#97437 for 1.64.0, apart from the main `io_safety`
feature that stabilized in 1.63.0.
…, r=oli-obk

Normalize the arg spans to be within the call span

Makes more sense to point out the arg's span, and not the expression inside the macro
…rrors

Add regression test for rust-lang#52304

Closes rust-lang#52304
r? ```@compiler-errors```

Signed-off-by: Yuki Okushi <[email protected]>
Rewrite `orphan_check_trait_ref` to use a `TypeVisitor`

The current impl is far more confusing than it has any right to be ✨

r? rust-lang/types
Edit `rustc_index::vec::IndexVec::pick3_mut` docs

Clarify when this method will panic.

Part of rust-lang#93792.
…ix, r=oli-obk

Fix `remap_constness`

`~const Drop` was renamed to `~const Destruct` and this special case should
be removed
…ord, r=notriddle

Remove unused field in ItemKind::KeywordItem

For the keyword name, we use `Item::name` directly everywhere so there is no point into keeping it.

r? ``@notriddle``
@rustbot rustbot added T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels Jul 21, 2022
@rustbot rustbot added the rollup A PR which is a rollup label Jul 21, 2022
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=11

@bors
Copy link
Contributor

bors commented Jul 21, 2022

📌 Commit af64d93 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 21, 2022
@bors
Copy link
Contributor

bors commented Jul 21, 2022

⌛ Testing commit af64d93 with merge af7ab34...

@bors
Copy link
Contributor

bors commented Jul 21, 2022

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing af7ab34 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jul 21, 2022
@bors bors merged commit af7ab34 into rust-lang:master Jul 21, 2022
@rustbot rustbot added this to the 1.64.0 milestone Jul 21, 2022
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (af7ab34): comparison url.

Instruction count

  • Primary benchmarks: 🎉 relevant improvements found
  • Secondary benchmarks: mixed results
mean1 max count2
Regressions 😿
(primary)
N/A N/A 0
Regressions 😿
(secondary)
0.5% 0.5% 1
Improvements 🎉
(primary)
-0.3% -0.3% 4
Improvements 🎉
(secondary)
-0.7% -1.0% 5
All 😿🎉 (primary) -0.3% -0.3% 4

Max RSS (memory usage)

Results
  • Primary benchmarks: no relevant changes found
  • Secondary benchmarks: mixed results
mean1 max count2
Regressions 😿
(primary)
N/A N/A 0
Regressions 😿
(secondary)
5.8% 5.8% 1
Improvements 🎉
(primary)
N/A N/A 0
Improvements 🎉
(secondary)
-2.4% -2.9% 5
All 😿🎉 (primary) N/A N/A 0

Cycles

Results
  • Primary benchmarks: 😿 relevant regressions found
  • Secondary benchmarks: no relevant changes found
mean1 max count2
Regressions 😿
(primary)
2.3% 2.6% 3
Regressions 😿
(secondary)
N/A N/A 0
Improvements 🎉
(primary)
N/A N/A 0
Improvements 🎉
(secondary)
N/A N/A 0
All 😿🎉 (primary) 2.3% 2.6% 3

If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf.

@rustbot label: -perf-regression

Footnotes

  1. the arithmetic mean of the percent change 2 3

  2. number of relevant changes 2 3

@ComputerDruid
Copy link
Contributor

ComputerDruid commented Jul 21, 2022

This rollup started causing some code in fuchsia to fail to build. Minimized it to:

use std::collections::BTreeMap;
use std::io::Read;

pub fn example() {
    let mut path_content_map: BTreeMap<&str, (u64, Box<dyn Read>)> = BTreeMap::new();
    let s = format!("");
    let as_bytes = s.as_bytes();
    path_content_map.insert("foo", (as_bytes.len() as u64, Box::new(as_bytes)));
}

which gives:

error[E0597]: `s` does not live long enough
 --> src/lib.rs:7:20
  |
7 |     let as_bytes = s.as_bytes();
  |                    ^^^^^^^^^^^^ borrowed value does not live long enough
8 |     path_content_map.insert("foo", (as_bytes.len() as u64, Box::new(as_bytes)));
9 | }
  | -
  | |
  | `s` dropped here while still borrowed
  | borrow might be used here, when `path_content_map` is dropped and runs the `Drop` code for type `BTreeMap`
  |
  = note: values in a scope are dropped in the opposite order they are defined

For more information about this error, try `rustc --explain E0597`.
error: could not compile `repor_new_rust_failure` due to previous error

and cargo bisect-rustc identifies this rollup as the start of the regression. I'm not sure which PR is causing it yet though

@matthiaskrgr
Copy link
Member Author

might be #99413

@ComputerDruid
Copy link
Contributor

ComputerDruid commented Jul 21, 2022

Yep, it's definitely #99413. Sounds like it may be intended. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.