Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Implement the new-style trait solver #56384
Final PR of what I believe to be a minimally working implementation of the new-style trait solver.
The new trait solver can be used by providing the
The trait solver is invoked in rustc by using the
Some next steps, I think, are:
I added a few very simple tests to check that the new solver has the right behavior, they won't be needed anymore once it is mature enough. Additionally it shows off that we get implied bounds for free.
Click to expand the log.
Sorry for being so slow @scalexm -- this looks great, but I do have a few concerns:
- We should decide how to handle subtyping before landing; a FIXME may suffice here
- I'm a bit concerned about adding the def-id to param-env, it seems like this could affect queries in unintended ways, leading to less re-use than we would otherwise get
(Maybe we can only set the def-id if
-Zchalk is used for now?)