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
{{ message }}
Repository navigation
Auto traits do not get de-duplicated properly when principal trait is auto trait #57057
This was an issue that came up during work on #55994.
Basically, a bug in the de-duplication code means that dyn Send is a different type from dyn Send + Send, and likewise dyn Sync + Send is different from dyn Sync + Send + Sync. However, this clearly should not be the case, and indeed dyn Send + Send is the same type as dyn Send + Send + Send. (Note, this is only tangentially related to the lint #56522.)
Apart from potentially surprising behaviour, the issue with the above lies with trait impls and coherence. I am unaware of a specific ICE that can arise because of it, but it is probably UB in general.
Activity
alexreg commentedon Dec 22, 2018
Note, I intend to fix this in #55994 of course, but this services as a reference point at least, and will be cited in code.
arielb1 commentedon Dec 22, 2018
This will be fixed in #56837. This is consistent with itself and can't cause UB of any kind.
Auto merge of #56837 - arielb1:nonprincipal-trait-objects, r=nikomats…