Utilities library
Language support
Type support (basic types, RTTI)
Library feature-test macros (C++20)
Dynamic memory management
Program utilities
Coroutine support (C++20)
Variadic functions
Debugging support
Three-way comparison
General utilities
Date and time
Function objects
Formatting library (C++20)
Relational operators (deprecated in C++20)
Integer comparison functions
Swap and type operations
Common vocabulary types
Elementary string conversions

error_condition() noexcept;
(1) (since C++11)
error_condition( int val, const error_category& cat ) noexcept;
(2) (since C++11)
template< class ErrorConditionEnum >
error_condition( ErrorConditionEnum e ) noexcept;
(3) (since C++11)
error_condition( const error_condition& other ) = default;
(4) (since C++11)
(implicitly declared)
error_condition( error_condition&& other ) = default;
(5) (since C++11)
(implicitly declared)

Constructs new error condition.

1) Default constructor. Initializes the error condition with generic category and error value 0.
2) Initializes the error condition with error value val and error category cat.
3) Initializes the error condition with enum e. Effectively calls make_error_condition that is only found by argument-dependent lookup for e. This overload participates in overload resolution only if std::is_error_condition_enum<ErrorConditionEnum>::value is true.
4,5) Implicitly defined copy constructor and move constructor. Initializes the error condition with the contents of the other.

[edit] Parameters

other - another error condition to initialize with
val - error value
cat - error category
e - error condition enum

[edit] Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior
LWG 3629 C++11 only std::make_error_condition overloads were used ADL-found overloads are used

[edit] See also

creates an error condition for an errc value e
(function) [edit]
constructs an iostream error condition
(function) [edit]
constructs a future error_condition
(function) [edit]