std::future_errc
|   Defined in header  
<future>
  | 
||
|   enum class future_errc { 
    broken_promise             = /* implementation-defined */,  | 
(since C++11) | |
The scoped enumeration std::future_errc defines the error codes reported by std::future and related classes in std::future_error exception objects. Only four error codes are required, although the implementation may define additional error codes. Because the appropriate specialization of std::is_error_code_enum is provided, values of type std::future_errc are implicitly convertible to std::error_code. 
| All error codes are distinct and non-zero. | (since C++14) | 
Contents | 
[edit] Member constants
| Constant | Explanation | 
  broken_promise
 | 
the asynchronous task abandoned its shared state | 
  future_already_retrieved
 | 
the contents of shared state were already accessed through std::future | 
  promise_already_satisfied
 | 
attempt to store a value in the shared state twice | 
  no_state
 | 
attempt to access std::promise or std::future without an associated shared state | 
[edit] Non-member functions
|    constructs a future error code  (function)  | 
|
|    constructs a future error_condition  (function)  | 
[edit] Helper classes
|    extends the type trait std::is_error_code_enum to identify future error codes  (class template)  | 
[edit] Notes
In C++11, broken_promise was specified to equal zero despite std::error_code/std::error_condition using zero to mean "no error". This was fixed in C++14.
[edit] Example
| This section is incomplete Reason: no example  | 
[edit] See also
|    (C++11) 
 | 
   holds a platform-dependent error code   (class)  | 
|    (C++11) 
 | 
   holds a portable error code  (class)  |