introduce ErrnoException