[libcxx-commits] [libcxx] [libc++] Collapse `optional<T&>` inheritance hierarchy (PR #215286)

Nikolas Klauser via libcxx-commits libcxx-commits at lists.llvm.org
Tue Aug 11 01:41:10 PDT 2026


================
@@ -235,7 +190,7 @@ class optional<_Tp&> : public __optional_ref_iterator_base<_Tp&> {
 
   constexpr ~optional() = default;
 
-  using __base::__get;
+  _LIBCPP_HIDE_FROM_ABI constexpr value_type& __get() const noexcept { return *__value_; }
----------------
philnik777 wrote:

I'm not sure I understand. Can't you just use `operator*` if you want to access the object of a different `optional`?

https://github.com/llvm/llvm-project/pull/215286


More information about the libcxx-commits mailing list