-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Auto traits do not get de-duplicated properly when principal trait is auto trait #57057
Comments
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. |
This will be fixed in #56837. This is consistent with itself and can't cause UB of any kind. |
bors
added a commit
that referenced
this issue
Jan 5, 2019
…akis Add support for trait-objects without a principal The hard-error version of #56481 - should be merged after we do something about the `traitobject` crate. Fixes #33140. Fixes #57057. r? @nikomatsakis
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 fromdyn Send + Send
, and likewisedyn Sync + Send
is different fromdyn Sync + Send + Sync
. However, this clearly should not be the case, and indeeddyn Send + Send
is the same type asdyn 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.
playground
playground
CC @nikomatsakis @arielb1
The text was updated successfully, but these errors were encountered: