| 51 | shared_ptr_with_addressof_operator() = default; |
| 52 | explicit shared_ptr_with_addressof_operator(T *p) : impl(p) {} |
| 53 | T *get() const { return impl.get(); } |
| 54 | T **operator&() { throw std::logic_error("Call of overloaded operator& is not expected"); } |
| 55 | }; |
| 56 |