El 12/09/15 a les 13:22, Antti Kantee ha escrit:
Yes, but I couldn't quite figure out what the right thing to do is, and then I 
admittedly forgot about it for a few weeks.

+ If the translation header includes <errno.h>, it won't work on systems without errno.h.  That said, 
I don't know of any systems with EFOO but no errno.h.  Notably, <rump/foo.h> generally does not 
include any "outside" headers to make <rump/> maximally adaptable to any environment.  If 
the translation header does not include errno.h, using it is very error-prone (forget to include errno.h 
and you get wrong results).

Well, <errno.h> is required by POSIX so if that's the target platform I think 
it's
fine to rely on it?

If you want to support non-POSIX systems maybe something like:

#ifndef ERANGE
#error "errno.h or equivalent must be included before this file"
#endif

As ERANGE is required as per ISO/C, I understand it's one of the symbols which 
must
always be provided by errno.h (or whatever replaces it).

+ The current <rump/rumperr.h> does not depend on the host having the concept 
of errnos, therefore the new routine should probably go into a separate header.  
Also, that header was very stupidly named, but I can't go back and change it anymore.

So let's move to another header then? :)

--
Robert Millan

Reply via email to