Skip to content

Rollup of 13 pull requests - #85483

Closed
Dylan-DPC-zz wants to merge 39 commits into
rust-lang:masterfrom
Dylan-DPC-zz:rollup-n823yih
Closed

Rollup of 13 pull requests#85483
Dylan-DPC-zz wants to merge 39 commits into
rust-lang:masterfrom
Dylan-DPC-zz:rollup-n823yih

Conversation

@Dylan-DPC-zz

Copy link
Copy Markdown

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

adamgemmelland others added 30 commits April 28, 2021 17:54
These features were recently added to std_detect. Features not supported
by LLVM 9, the current minimum version for Rust, are commented.
In https://reviews.llvm.org/D102093 lots of things stopped taking the
DebugLogging boolean parameter. Mercifully we appear to always set
DebugPassManager to false, so I don't think we're losing anything by not
passing this parameter.
The makes the code for handling "auto-hide" settings more consistent.
…nieu
Update list of allowed aarch64 features
I recently added these features to std_detect for aarch64 linux, pending [review](rust-lang/stdarch#1146).
I have commented any features not supported by LLVM 9, the current minimum version for Rust. Some (PAuth at least) were renamed between 9 & 12 and I've left them disabled. TME, however, is not in LLVM 9 but I've left it enabled.
See rust-lang/stdarch#993
Introduce `sys_common::rt::rtprintpanic!` to replace `sys_common::util` functionality
This PR introduces a new macro `rtprintpanic!`, similar to `sys_common::util::dumb_print` and uses that macro to replace all `sys_common::util` functionality.
impl FromStr for proc_macro::Literal
Note that unlike `impl FromStr for proc_macro::TokenStream`, this impl does not permit whitespace or comments. The input string must consist of nothing but your literal.
- `"1".parse::<Literal>()` ⟶ ok
- `"1.0".parse::<Literal>()` ⟶ ok
- `"'a'".parse::<Literal>()` ⟶ ok
- `"\"\n\"".parse::<Literal>()` ⟶ ok
- `"0 1".parse::<Literal>()` ⟶ LexError
- `" 0".parse::<Literal>()` ⟶ LexError
- `"0 ".parse::<Literal>()` ⟶ LexError
- `"/* comment */0".parse::<Literal>()` ⟶ LexError
- `"0/* comment */".parse::<Literal>()` ⟶ LexError
- `"0// comment".parse::<Literal>()` ⟶ LexError
---
## Use case
```rust
let hex_int: Literal = format!("0x{:x}", int).parse().unwrap();
```
The only way this is expressible in the current API is significantly worse.
```rust
let hex_int = match format!("0x{:x}", int)
.parse::<TokenStream>()
.unwrap()
.into_iter()
.next()
.unwrap()
{
TokenTree::Literal(literal) => literal,
_ => unreachable!(),
};
```
Windows implementation of feature `path_try_exists`
Draft of a Windows implementation of `try_exists` (rust-lang#83186).
The first commit reorganizes the code so I would be interested to get some feedback on if this is a good idea or not. It moves the `Path::try_exists` function to `fs::exists`. leaving the former as a wrapper for the latter. This makes it easier to provide platform specific implementations and matches the `fs::metadata` function.
The other commit implements a Windows specific variant of `exists`. I'm still figuring out my approach so this is very much a first draft. Eventually this will need some more eyes from knowledgable Windows people.
Add method-toggle to <details> for methods
The makes the code for handling "auto-hide" settings more consistent.
Demo at https://hoffman-andrews.com/rust/hoist-classes/std/string/struct.String.htmlFixesrust-lang#84829
Move `std::memchr` to `sys_common`
`std::memchr` is a thin abstraction over the different `memchr` implementations in `sys`, along with documentation and tests. The module is only used internally by `std`, nothing is exported externally. Code like this is exactly what the `sys_common` module is for, so this PR moves it there.
…ou-se
Expose `Concurrent` (private type in public i'face)
rust-lang#53410 introduced experimental support for custom test frameworks.
Such frameworks may wish to build upon `library/test` by calling into its publicly exposed API (which I entirely understand is wholly unstable). However, any that wish to call `test::run_test` cannot currently do so because `test::options::Concurrent` (the type of its `concurrent` parameter) is not publicly exposed.
…gisa
PassWrapper: update for LLVM change D102093
In https://reviews.llvm.org/D102093 lots of things stopped taking the
DebugLogging boolean parameter. Mercifully we appear to always set
DebugPassManager to false, so I don't think we're losing anything by not
passing this parameter.
…_type, r=davidtwco
Add diagnostic item to `CStr`
Required for clippy issue: rust-lang/rust-clippy#7145
…=dtolnay
Fix UB in documented example for `ptr::swap`
Compare [this (short) discussion on zulip](https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/Pointers.20to.20overlapping.20arrays) (or [in the archive](https://zulip-archive.rust-lang.org/122651general/92017Pointerstooverlappingarrays.html), if you don’t have an account).
`@rustbot` label T-doc T-libs
CTFE Machine: do not expose Allocation
`Memory` is careful now to not expose direct access to `Allocation`, but this one slipped through.
r? `@oli-obk`
@rustbotrustbot added the rollup A PR which is a rollup label May 19, 2021
@Dylan-DPC-zz

Copy link
Copy Markdown
Author

@bors r+ rollup=never p=5

@bors

bors commented May 19, 2021

Copy link
Copy Markdown
Collaborator

📌 Commit 21007ee has been approved by Dylan-DPC

@borsbors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label May 19, 2021
@bors

bors commented May 19, 2021

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 21007ee with merge 543b8da4a8df7d15dab6b40480aba346333f9f4f...

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job dist-various-2 failed! Check out the build log: (web)(plain)

Click to see the possible cause of the failure (guessed by this bot)

error[E0308]: mismatched types
--> library/std/src/fs.rs:2235:5
|
2234 | pub fn try_exists<P: AsRef<Path>>(path: P) -> io::Result<bool> {
| ---------------- expected `core::result::Result<bool, io::error::Error>` because of return type
2235 | fs_imp::try_exists(path.as_ref())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `bool`, found `()`
= note: expected enum `core::result::Result<bool, _>`
found enum `core::result::Result<(), _>`
error: aborting due to previous error; 1 warning emitted
error: aborting due to previous error; 1 warning emitted
For more information about this error, try `rustc --explain E0308`.
[RUSTC-TIMING] std test:false 1.572
error: could not compile `std`
To learn more, run the command again with --verbose.
command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "build" "--target" "wasm32-unknown-unknown" "-Zbinary-dep-depinfo" "-j" "16" "--release" "--locked" "--color" "always" "--features" "panic-unwind backtrace compiler-builtins-c" "--manifest-path" "/checkout/library/test/Cargo.toml" "--message-format" "json-render-diagnostics"
failed to run: /checkout/obj/build/bootstrap/debug/bootstrap dist --host= --target x86_64-fuchsia,aarch64-fuchsia,wasm32-unknown-unknown,wasm32-wasi,sparcv9-sun-solaris,x86_64-pc-solaris,x86_64-unknown-linux-gnux32,x86_64-fortanix-unknown-sgx,nvptx64-nvidia-cuda,armv7-unknown-linux-gnueabi,armv7-unknown-linux-musleabi,i686-unknown-freebsd
Build completed unsuccessfully in 0:15:51

@bors

bors commented May 19, 2021

Copy link
Copy Markdown
Collaborator

💔 Test failed - checks-actions

@borsbors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels May 19, 2021
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

rollupA PR which is a rollupS-waiting-on-reviewStatus: Awaiting review from the assignee but also interested parties.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

17 participants

@Dylan-DPC-zz@bors@rust-log-analyzer@RalfJung@rustbot@adamgemmell@CDirkx@eggyal@lnicola@durin42@mgacek8@jsha@steffahn@GuillaumeGomez@ChrisDenton@dtolnay@Dylan-DPC