error_condition() noexcept;
Effects: Constructs an object of type
error_condition. Postconditions: val_ == 0 and
cat_ == &generic_category(). error_condition(int val, const error_category& cat) noexcept;
Effects: Constructs an object of type
error_condition. Postconditions: val_ == val and
cat_ == &cat. template <class ErrorConditionEnum>
error_condition(ErrorConditionEnum e) noexcept;
Effects: Constructs an object of type
error_condition. Postconditions: *this == make_error_condition(e). Remarks: This constructor shall not participate in overload resolution unless
is_error_condition_enum_v<ErrorConditionEnum> is
true.