-
Notifications
You must be signed in to change notification settings - Fork 13.2k
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 #69521
Rollup of 8 pull requests #69521
Conversation
Point at the intermediary unfullfilled trait bounds.
Surface associated type projection bounds that could not be fulfilled in E0599 errors. Always present the list of unfulfilled trait bounds, regardless of whether we're pointing at the ADT or trait that didn't satisfy it.
When the obligation that couldn't be fulfilled is specific to a nested obligation, maintain both the nested and parent obligations around for more accurate and detailed error reporting.
Previously, when inserting the entry function, we only checked for duplicate _definitions_ of `main`. However, it's possible to cause problems even only having a duplicate _declaration_. For example, shadowing `main` using an extern block isn't caught by the current check, and causes an assertion failure down the line in in LLVM code.
…kfelix Implement new gdb/lldb pretty-printers This PR replaces current gdb and lldb pretty-printers with new ones which were originally written for [IntelliJ Rust](https://github.com/intellij-rust/intellij-rust/tree/master/prettyPrinters). The current state of lldb pretty-printers is poor, because [they don't use synthetic children](rust-lang#55586 (comment)). When I started to reimplement lldb pretty-printers with synthetic children support, I've found current version strange and hard to support. I think `debugger_pretty_printers_common.py` is overkill, so I got rid of it. The new pretty-printers have to support all types supported by current pretty-printers, and also support `Rc`, `Arc`, `Cell`, `Ref`, `RefCell`, `RefMut`, `HashMap`, `HashSet`.
Add more context to E0599 errors Point at the intermediary unfulfilled trait bounds. Fix rust-lang#52523, fix rust-lang#61661, cc rust-lang#36513, fix rust-lang#68131, fix rust-lang#64417, fix rust-lang#61768, cc rust-lang#57457, cc rust-lang#9082, fix rust-lang#57994, cc rust-lang#64934, cc rust-lang#65149.
Fail on multiple declarations of `main`. Closes rust-lang#67946. Previously, when inserting the entry function, we only checked for duplicate _definitions_ of `main`. However, it's possible to cause problems even only having a duplicate _declaration_. For example, shadowing `main` using an extern block isn't caught by the current check, and causes an assertion failure down the line in in LLVM code. r? @pnkfelix
librustc_typeck: remove loop that never actually loops
…mulacrum Do not ping PR reviewers in toolstate breakage As per rust-lang#69419 (comment) We should also remove author part?
…acrum rustc_span: Add `Symbol::to_ident_string` for use in diagnostic messages Covers the same error reporting use case (rust-lang#69387 (comment)) as the `Display` impl for `Ident`. cc rust-lang#69053 Follow-up to rust-lang#69387. r? @Mark-Simulacrum
don't take redundant references to operands
…c-morse use find(x) instead of filter(x).next()
@bors r+ rollup=never p=8 |
📌 Commit 8c811a4 has been approved by |
Rollup of 8 pull requests Successful merges: - #60826 (Implement new gdb/lldb pretty-printers) - #69255 (Add more context to E0599 errors) - #69379 (Fail on multiple declarations of `main`.) - #69430 (librustc_typeck: remove loop that never actually loops) - #69449 (Do not ping PR reviewers in toolstate breakage) - #69491 (rustc_span: Add `Symbol::to_ident_string` for use in diagnostic messages) - #69495 (don't take redundant references to operands) - #69496 (use find(x) instead of filter(x).next()) Failed merges: r? @ghost
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
💔 Test failed - checks-azure |
Successful merges:
main
. #69379 (Fail on multiple declarations ofmain
.)Symbol::to_ident_string
for use in diagnostic messages #69491 (rustc_span: AddSymbol::to_ident_string
for use in diagnostic messages)Failed merges:
r? @ghost