std::experimental::get_underlying
From cppreference.com
                    
                                        
                    < cpp | experimental | propagate const
                    
                                                            
                    |   template< class T > 
constexpr T& get_underlying(propagate_const<T>& pt);  | 
(library fundamentals TS v2) | |
|   template< class T > 
constexpr const T& get_underlying(const propagate_const<T>& pt);  | 
(library fundamentals TS v2) | |
Retrieves a reference to the pointer-like object stored in a propagate_const.
[edit] Parameters
| pt | - |   a propagate_const object
 | 
[edit] Return value
A reference to the pointer-like object stored in pt.
[edit] Exceptions
noexcept specification:  
noexcept