-
-
Notifications
You must be signed in to change notification settings - Fork 37
Closed
Labels
A-unpinArea: Unpin and UnsafeUnpinArea: Unpin and UnsafeUnpinC-upstream-bugCategory: This is a bug of compiler or dependencies (the fix may require action in the upstream)Category: This is a bug of compiler or dependencies (the fix may require action in the upstream)I-unsoundA soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/SoundnessA soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/Soundness
Description
pin-project provides an appropriate Unpin implementation by default. Since overlapping implementations are prohibited, this ensures that users cannot add inappropriate Unpin implementations.
However, currently, this guarantee can be broken by using #[feature(negative_impls)]
: playground
Thanks @danielhenrymantilla for pointing out the interaction with this feature.
danielhenrymantilla
Metadata
Metadata
Assignees
Labels
A-unpinArea: Unpin and UnsafeUnpinArea: Unpin and UnsafeUnpinC-upstream-bugCategory: This is a bug of compiler or dependencies (the fix may require action in the upstream)Category: This is a bug of compiler or dependencies (the fix may require action in the upstream)I-unsoundA soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/SoundnessA soundness hole (worst kind of bug), see: https://en.wikipedia.org/wiki/Soundness