std::error_code::operator=
From cppreference.com
                    
                                        
                    < cpp | error | error code
                    
                                                            
                    | template< class ErrorCodeEnum > error_code& operator=( ErrorCodeEnum e ); | (since C++11) | |
Replaces the error code and corresponding category with those representing error code enum e. 
Equivalent to *this = std::make_error_code(e). The overload participates in overload resolutions only if std::is_error_code_enum<ErrorCodeEnum>::value == true.
Parameters
| e | - | error code enum to construct | 
Return value
*this
Exceptions
noexcept specification:  
noexcept
  Notes
Copy-assignment operator is defined implicitly.
See also
| assigns another error code (public member function) |