@@ -538,7 +538,7 @@ impl<T> fmt::Pointer for Unique<T> {
538538/// building abstractions like `Rc<T>` or `Arc<T>`, which internally
539539/// use raw pointers to manage the memory that they own.
540540#[ unstable( feature = "shared" , reason = "needs an RFC to flesh out design" ,
541- issue = "0 " ) ]
541+ issue = "27730 " ) ]
542542pub struct Shared < T : ?Sized > {
543543 pointer : NonZero < * const T > ,
544544 // NOTE: this marker has no consequences for variance, but is necessary
@@ -551,37 +551,37 @@ pub struct Shared<T: ?Sized> {
551551
552552/// `Shared` pointers are not `Send` because the data they reference may be aliased.
553553// NB: This impl is unnecessary, but should provide better error messages.
554- #[ unstable( feature = "shared" , issue = "0 " ) ]
554+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
555555impl < T : ?Sized > !Send for Shared < T > { }
556556
557557/// `Shared` pointers are not `Sync` because the data they reference may be aliased.
558558// NB: This impl is unnecessary, but should provide better error messages.
559- #[ unstable( feature = "shared" , issue = "0 " ) ]
559+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
560560impl < T : ?Sized > !Sync for Shared < T > { }
561561
562- #[ unstable( feature = "shared" , issue = "0 " ) ]
562+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
563563impl < T : ?Sized > Shared < T > {
564564 /// Creates a new `Shared`.
565565 pub unsafe fn new ( ptr : * mut T ) -> Self {
566566 Shared { pointer : NonZero :: new ( ptr) , _marker : PhantomData }
567567 }
568568}
569569
570- #[ unstable( feature = "shared" , issue = "0 " ) ]
570+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
571571impl < T : ?Sized > Clone for Shared < T > {
572572 fn clone ( & self ) -> Self {
573573 * self
574574 }
575575}
576576
577- #[ unstable( feature = "shared" , issue = "0 " ) ]
577+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
578578impl < T : ?Sized > Copy for Shared < T > { }
579579
580580#[ cfg( not( stage0) ) ] // remove cfg after new snapshot
581- #[ unstable( feature = "shared" , issue = "0 " ) ]
581+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
582582impl < T : ?Sized , U : ?Sized > CoerceUnsized < Shared < U > > for Shared < T > where T : Unsize < U > { }
583583
584- #[ unstable( feature = "shared" , issue = "0 " ) ]
584+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
585585impl < T : ?Sized > Deref for Shared < T > {
586586 type Target = * mut T ;
587587
@@ -591,7 +591,7 @@ impl<T: ?Sized> Deref for Shared<T> {
591591 }
592592}
593593
594- #[ unstable( feature = "shared" , issue = "0 " ) ]
594+ #[ unstable( feature = "shared" , issue = "27730 " ) ]
595595impl < T > fmt:: Pointer for Shared < T > {
596596 fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
597597 fmt:: Pointer :: fmt ( & * self . pointer , f)
0 commit comments