Porting status of ACE files (Last update 28/12/95)
--------------------------------------------------

Overall problems:
-----------------
errno:
	errno is a problem for Win32. When Win32 functions are
	called, the 'last error' code is set. It is retrieved
	by ::GetLastError(), and set by ::SetLastError(), and
	is thread specific. We cannot obtain the address of the
	number like we can with _errno(). We could junk the
	MSVC++ CRT library, and implement errno	via this:

	typedef int errno_t; // might already be defined
	class Win32_Errno
	{
	  operator errno_t() const { return ::GetLastError(); }
	  errno_t operator= (errno_t e) const { ::SetLastError(e); return e; }
	};
	Win32_Errno errno;
	Then we'd supply a unix errors -> Win32 errors mapping
	like
	#define ENOMEM  ERROR_NOT_ENOUGH_MEMORY 
	#define ENOTSUP ERROR_NOT_SUPPORTED
	#define ENOTSUP ERROR_NOT_SUPPORTED
	#define EEXISTS ERROR_FILE_EXISTS
	or at least the ones which ACE uses generally, like EBUSY, EAGAIN, etc.

class ACE
---------
timestamp:
	lacks microseconds and OS independence for Win32

round_to_pagesize:
	Uses fixed pagesize, otherwise OK

Porting document:
-----------------
Not finished...
