std::error_code is a platform-dependent error code. Each std::error_code object holds a pair of error code originating from the operating system, or some low-level interface and a pointer to an object of type std::error_category, which corresponds to the said interface. The error code values may be not unique across different error categories.