20 General utilities library [utilities]

20.6 Optional objects [optional]

20.6.3 Class template optional [optional.optional]

20.6.3.2 Destructor [optional.dtor]

~optional();

Effects: If is_trivially_destructible_v<T> != true and *this contains a value, calls val->T::~T().

Remarks: If is_trivially_destructible_v<T> == true then this destructor shall be a trivial destructor.