You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Supporting specialization in the new solver is challenging.
We only add alias bounds for projections which are well-formed due to a ParamEnv candidate (and add a special-case for builtin traits which act as if they are specialized). This is necessary for soundness (#6). It causes us to fail to prove <T as Trait>::DefaultAssoc: Sized with the new solver. Because specialization is used by std we may also allow alias bound candidates for specializing impls, even if unsound.
Other issues to be added here.
The text was updated successfully, but these errors were encountered:
Supporting specialization in the new solver is challenging.
We only add alias bounds for projections which are well-formed due to a
ParamEnv
candidate (and add a special-case for builtin traits which act as if they are specialized). This is necessary for soundness (#6). It causes us to fail to prove<T as Trait>::DefaultAssoc: Sized
with the new solver. Because specialization is used by std we may also allow alias bound candidates for specializing impls, even if unsound.Other issues to be added here.
The text was updated successfully, but these errors were encountered: