Donald Bruce Stewart wrote:
From (OpenBSD) man sigfillset :

sigemptyset() and sigfillset() are provided as macros, but actual functions are available if their names are undefined (with #undef name).

You want to use the function instead?

It's not their status as additional macros which causes trouble, but the missing casts. From OpenBSD's <signal.h>:

#define sigemptyset(set)        (*(set) = 0, 0)
#define sigfillset(set)         (*(set) = ~(sigset_t)0, 0)

This is plainly wrong, set should be casted to sigset_t* (or a temp.
variable of that type should be used). Hugs' FFI uses void* for Haskell's
Ptr Foo, and dereferencing this causes trouble... Linux' headers are a
bit more careful here.

Cheers,
   S.


_______________________________________________ Cvs-libraries mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/cvs-libraries

Reply via email to