std:: make_error_code (std::io_errc)

From cppreference.com
< cpp ‎ | io ‎ | io errc
std::io_errc
Non-member functions
make_error_code (std::io_errc)
(C++11)
Helper classes
Defined in header <ios>
std:: error_code make_error_code ( std:: io_errc e ) noexcept ;
(since C++11)

Constructs an std::error_code object from a value of type std::io_errc as if by return std:: error_code ( static_cast < int > ( e ) , std:: iostream_category ( ) ) .

This function is called by the constructor of std::error_code with an std::io_errc argument.

Parameters

e - error code number

Return value

A value of type std::error_code that holds the error code number from e associated with the error category "iostream" .

Example

#include <iostream>
#include <system_error>
 
int main()
{
    std::error_code ec = std::make_error_code(std::io_errc::stream);
 
    // This works because of the overloaded method
    //    and the is_error_code_enum specialization.
    ec = std::io_errc::stream;
 
    std::cout << "Error code from io_errc::stream has category "
              << ec.category().name() << '\n';
}

Output:

Error code from io_errc::stream has category iostream

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 2087 C++11 make_error_code(io_errc) was not declared noexcept declared noexcept

See also

(C++11)
holds a platform-dependent error code
(class)
(C++11)
the IO stream error codes
(enum)
creates error code value for errc enum e
(function)
constructs a future error code
(function)