| 758 | |
| 759 | // 2 - copy-construct |
| 760 | optional_constexpr14 optional( optional const & other |
| 761 | #if optional_CPP11_OR_GREATER |
| 762 | optional_REQUIRES_A( |
| 763 | true || std::is_copy_constructible<T>::value |
| 764 | ) |
| 765 | #endif |
| 766 | ) |
| 767 | : has_value_( other.has_value() ) |
| 768 | { |
| 769 | if ( other.has_value() ) |
| 770 | contained.construct_value( other.contained.value() ); |
| 771 | } |
| 772 | |
| 773 | #if optional_CPP11_OR_GREATER |
| 774 |