Skip to content

NormalizesTo: return nested goals to caller #122687

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

Merged
merged 5 commits into from
Mar 18, 2024

Conversation

lcnr
Copy link
Contributor

@lcnr lcnr commented Mar 18, 2024

Fixes the regression of paperclip-core. see https://hackmd.io/IsVAafiOTAaPIFcUxRJufw for more details.

r? @compiler-errors

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Mar 18, 2024
@rustbot
Copy link
Collaborator

rustbot commented Mar 18, 2024

Some changes occurred to the core trait solver

cc @rust-lang/initiative-trait-system-refactor

@rust-log-analyzer

This comment has been minimized.

@lcnr lcnr force-pushed the normalizes-to-emit-nested-goals branch from 1ae8d1d to f26e1e8 Compare March 18, 2024 14:53
@lcnr lcnr force-pushed the normalizes-to-emit-nested-goals branch from b01097f to 70c52a4 Compare March 18, 2024 16:00
@BoxyUwU
Copy link
Member

BoxyUwU commented Mar 18, 2024

if we never evaluate goals inside of normalizes-to are we able to make normalizes-to a tcx query since we don't actually care about whatever goals are in the search graph for evaluating it? I imagine it would probably suck, we still use the whole candidate assembly machinery so. ?? there would be no real point

@lcnr
Copy link
Contributor Author

lcnr commented Mar 18, 2024

if we never evaluate goals inside of normalizes-to are we able to make normalizes-to a tcx query since we don't actually care about whatever goals are in the search graph for evaluating it? I imagine it would probably suck, we still use the whole candidate assembly machinery so. ?? there would be no real point

we still have to evaluate goals inside of normalizes-to to drop candidates which don't hold due to their nested goals

Copy link
Member

@lqd lqd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

High-value review comments™

@lcnr lcnr force-pushed the normalizes-to-emit-nested-goals branch from 70c52a4 to 0b29b71 Compare March 18, 2024 17:13
@compiler-errors
Copy link
Member

@bors r+ rollup (new solver)

@bors
Copy link
Collaborator

bors commented Mar 18, 2024

📌 Commit 0b29b71 has been approved by compiler-errors

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 18, 2024
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request Mar 18, 2024
…ls, r=compiler-errors

`NormalizesTo`: return nested goals to caller

Fixes the regression of `paperclip-core`. see https://hackmd.io/IsVAafiOTAaPIFcUxRJufw for more details.

r? `@compiler-errors`
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Mar 18, 2024
…ls, r=compiler-errors

`NormalizesTo`: return nested goals to caller

Fixes the regression of `paperclip-core`. see https://hackmd.io/IsVAafiOTAaPIFcUxRJufw for more details.

r? ``@compiler-errors``
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 18, 2024
…iaskrgr

Rollup of 12 pull requests

Successful merges:

 - rust-lang#121258 (Reject overly generic assoc const binding types)
 - rust-lang#121823 (never patterns: suggest `!` patterns on non-exhaustive matches)
 - rust-lang#122060 (Stabilize `imported_main`)
 - rust-lang#122158 (Provide structured suggestion for `#![feature(foo)]`)
 - rust-lang#122642 (Improve wording of `Vec::swap_remove`)
 - rust-lang#122675 (core: document default attribute stabilization)
 - rust-lang#122687 (`NormalizesTo`: return nested goals to caller)
 - rust-lang#122691 (Fix ICE: `global_asm!()` Don't Panic When Unable to Evaluate Constant)
 - rust-lang#122693 (Fix heading anchors in doc pages.)
 - rust-lang#122699 (Fix a typo in the 1.77.0 relnotes)
 - rust-lang#122700 (Remove redundant files, rename base riscv32 file)
 - rust-lang#122701 (Detect allocator for box in `must_not_suspend` lint)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 18, 2024
…iaskrgr

Rollup of 11 pull requests

Successful merges:

 - rust-lang#121258 (Reject overly generic assoc const binding types)
 - rust-lang#121823 (never patterns: suggest `!` patterns on non-exhaustive matches)
 - rust-lang#122060 (Stabilize `imported_main`)
 - rust-lang#122158 (Provide structured suggestion for `#![feature(foo)]`)
 - rust-lang#122642 (Improve wording of `Vec::swap_remove`)
 - rust-lang#122675 (core: document default attribute stabilization)
 - rust-lang#122687 (`NormalizesTo`: return nested goals to caller)
 - rust-lang#122693 (Fix heading anchors in doc pages.)
 - rust-lang#122699 (Fix a typo in the 1.77.0 relnotes)
 - rust-lang#122700 (Remove redundant files, rename base riscv32 file)
 - rust-lang#122701 (Detect allocator for box in `must_not_suspend` lint)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit e906205 into rust-lang:master Mar 18, 2024
@rustbot rustbot added this to the 1.79.0 milestone Mar 18, 2024
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Mar 18, 2024
Rollup merge of rust-lang#122687 - lcnr:normalizes-to-emit-nested-goals, r=compiler-errors

`NormalizesTo`: return nested goals to caller

Fixes the regression of `paperclip-core`. see https://hackmd.io/IsVAafiOTAaPIFcUxRJufw for more details.

r? ```@compiler-errors```
@lcnr lcnr deleted the normalizes-to-emit-nested-goals branch March 19, 2024 09:45
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
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. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants