Best-practice guidelines for Windows Socket Servers (according to the MSDN) is to use the following:
#define errno WSAGetLastError()
For direct-mapping to Unix-style socket errors for compatibility in IPv4 servers. However, this conflicts with line 167 in Memory.h:
166: #ifdef EIGEN_HAS_ERRNO
167: errno = ENOMEM; // according to the standard
Which results in a compile error. It is not safe to assume errno is a primitive value type.
hm, this contradicts the C++ standard: http://en.cppreference.com/w/cpp/error/errno
I'm also a bit confuse, do you mean that you defined "#define errno WSAGetLastError()" in your own code and that WSAGetLastError() does not return a writable reference, or that is how errno is defined by <cerrno>, or that errno is not defined at all???