Location
Arc::from_raw
Summary
Arc::from_raw mentions that the provided pointer has to have been returned from Arc::into_raw but it doesn't mention Arc::as_ptr at all. This disallows many usages that depend on not modifying the reference counter while passing Arc around in form of a pointer and converting it back by calling Arc::from_raw on the pointer and wrapping the result inside a ManuallyDrop (as after one conversion round of Arc::into_raw -> ManuallyDrop<Arc::from_raw> -> Arc::as_ptr would disallow recreating the Arc through Arc::from_raw)
Location
Arc::from_raw
Summary
Arc::from_rawmentions that the provided pointer has to have been returned fromArc::into_rawbut it doesn't mentionArc::as_ptrat all. This disallows many usages that depend on not modifying the reference counter while passingArcaround in form of a pointer and converting it back by callingArc::from_rawon the pointer and wrapping the result inside aManuallyDrop(as after one conversion round ofArc::into_raw->ManuallyDrop<Arc::from_raw>->Arc::as_ptrwould disallow recreating theArcthroughArc::from_raw)