-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Rollup of 6 pull requests #100626
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Rollup of 6 pull requests #100626
Conversation
Passes tests
Previously added a blank _ => {} for match statements
fix: make `concat!` work with char Fixes rust-lang#12921 - I avoided making `unquote_str()` take char literals as well because it's depended on by another function `parse_string()` that's only supposed to take strings. - Even with this patch, we don't output `\0` as `\u{0}` which rust-lang#12921 pointed out ~~, but we're not actually responsible for serializing it but rowan is~~. They are functionally equivalent and I don't think it'd cause any confusion, but we *could* try escaping them before serialization (for reference, `rustc -Zunpretty=expanded`, which `cargo expand` uses under the hood, [makes use of `str::escape_default()`](https://github.com/rust-lang/rust/blob/3830ecaa8db798d2727cbdfa4ddf314ff938f268/compiler/rustc_ast/src/util/literal.rs#L161).
Add fixups for incomplete in proc-macros Partially implements rust-lang/rust-analyzer#12777. Added support for for loops and match statements. I couldn't do paths like `crate::foo::` as I wasn't able to add `SyntheticTokens` to the end of `foo::`, they always ended up after `crate::` This is my first contribution so please don't be shy about letting me know if I've done anything wrong!
Generate rust type from json fix rust-lang#10118 Should this be a diagnostic? I made it a diagnostic because of issue label.
…Veykril internal: Document CLI flag stability
[code] make toggleInlayHints understand {off,on}UntilPressed fixes rust-lang#12964
…r=Veykril Parse range patterns in struct and slice without trailing comma Resolves rust-lang#12935 This patch includes the support for range patterns in slices, which is unstable (tracked in rust-lang#67264). If it's not desired I can remove it.
Corrected order of printing op and `=` Fixes rust-lang/rust-analyzer#12971 where `Display` impl for assignment operators does `=+` instead of `+=`
Remove imports that are also in edition 2021's prelude small cleanup
Fix pattern field completions not working for unions
Recover from missing ellipsis in record literals for path expressions
…fn-trait-error, r=cjgillot Fix nonsense non-tupled `Fn` trait error Given this code: ```rust #![feature(unboxed_closures)] fn a<F: Fn<usize>>(f: F) {} fn main() { a(|_: usize| {}); } ``` We currently emit this error: ``` error[E0631]: type mismatch in closure arguments --> src/main.rs:6:5 | 6 | a(|_: usize| {}); | ^ ---------- found signature of `fn(usize) -> _` | | | expected signature of `fn(usize) -> _` | note: required by a bound in `a` --> src/main.rs:3:9 | 3 | fn a<F: Fn<usize>>(f: F) {} | ^^^^^^^^^ required by this bound in `a` For more information about this error, try `rustc --explain E0631`. error: could not compile `playground` due to previous error ``` Notably, it says the same thing for "expected" and "found"! Fix the output so that we instead emit: ``` error[E0308]: mismatched types --> /home/gh-compiler-errors/test.rs:6:5 | 6 | a(|_: usize| {}); | ^ types differ | = note: expected trait `Fn<usize>` found trait `Fn<(usize,)>` note: required by a bound in `a` --> /home/gh-compiler-errors/test.rs:3:9 | 3 | fn a<F: Fn<usize>>(f: F) {} | ^^^^^^^^^ required by this bound in `a` error: aborting due to previous error ``` The error could still use some work, namely the "mismatched types" part, but I'm leaving it a bit rough since the only way you'd ever get this error is when you're messing with `#![feature(unboxed_closures)]`. Simply making sure we actually print out the difference in trait-refs is good enough for me. I could probably factor in some additional improvements if those are desired.
Extend invalid floating point literal suffix suggestion Fixes rust-lang#100527
… r=spastorino Ast and parser tweaks r? `@spastorino`
compiletest: fix typo in runtest.rs nonexistant -> nonexistent
…r=lnicola ⬆️ rust-analyzer r? `@ghost`
Support 128-bit atomics on all aarch64 targets Some aarch64 targets currently set `max_atomic_width` to 64, but aarch64 always supports 128-bit atomics. r? `@Amanieu`
@bors r+ rollup=never p=5 |
⌛ Testing commit 35bd1d6 with merge 4cbfe643c7010b0ac445023f1997882a01c7cd9f... |
💥 Test timed out |
@bors retry |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR: In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (5746c75): comparison url. Instruction count
Max RSS (memory usage)Results
CyclesResults
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression Footnotes |
Successful merges:
Fn
trait error #99942 (Fix nonsense non-tupledFn
trait error)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup