On 2012-08-16 at 03:49:16 [+0200], mmadia-github.separate-build-environment <community@xxxxxxxxxxxx> wrote: > diff --git a/headers/build/posix_target/target_signal.h > b/headers/build/posix_target/target_signal.h [...] > +/* macros defining the standard signal handling behavior */ > +// NOTE: #8730 -- does __sighandler_t need to be prefixed? > +#define _HAIKU_BUILD_SIG_DFL ((__sighandler_t)0) /* > "default" signal behaviour */ Yes. > +// NOTE: #8730 -- are unions handled in the same was as structs, enums? > +union _HAIKU_BUILD_IDENTIFIER(sigval) { Yes, exactly like structs. > + int sival_int; > + void* sival_ptr; > +}; > + > +struct _HAIKU_BUILD_IDENTIFIER(sigevent) { > + int sigev_notify; /* > notification type */ > + int sigev_signo; /* signal > number */ > + union _HAIKU_BUILD_IDENTIFIER(sigval) sigev_value; /* > user-defined signal value */ > + // NOTE: #8730 -- hmm. No idea as what to do for this. > + void (*sigev_notify_function)(union > _HAIKU_BUILD_IDENTIFIER(sigval)); It's fine like this. [...] > +/* signal handler function types */ > +// TODO: #8730 -- Get advice from Ingo on what to do. > +typedef void (*__sighandler_t)(int); > +typedef void (*__siginfo_handler_t)(int, > _HAIKU_BUILD_IDENTIFIER(siginfo_t)*, void*); Use _HAIKU_BUILD_IDENTIFIER for the name of the type. These work just like any other typedef. Only the notation is a bit different, since they are function types. CU, Ingo