[RFC][patch] cygwin/singal.h is not compatible with -std=c89 or -std=c99
Christopher Faylor
cgf-no-personal-reply-please@cygwin.com
Mon Nov 27 15:18:00 GMT 2006
On Mon, Nov 27, 2006 at 09:33:41AM +0100, Corinna Vinschen wrote:
>On Nov 25 16:46, V?clav Haisman wrote:
>> [FreeBSD]
>> struct sigaction {
>> union {
>> void (*__sa_handler)(int);
>> void (*__sa_sigaction)(int, struct __siginfo *, void *);
>> } __sigaction_u; /* signal handler */
>> int sa_flags; /* see signal options below */
>> sigset_t sa_mask; /* signal mask to apply */
>> };
>>
>> #define sa_handler __sigaction_u.__sa_handler
>>
>> So, the attached patch is the minimal patch [...]
>
>> struct sigaction
>> {
>> ! __extension__ union
>> {
>> _sig_func_ptr sa_handler; /* SIG_DFL, SIG_IGN, or pointer to a function */
>> void (*sa_sigaction) ( int, siginfo_t *, void * );
>
>Thanks for the patch. Looking into this, I'd rather use the FreeBSD
>approach, which is similary used in Linux. Please try the below patch.
How about the alternative "Don't do that" approach? I think there are
other parts of the header files which won't work with -std=c89. I've
always been coding with the understanding that this is a GNU C environment.
I'm not sure that I am comfortable making a lot of accommodations for
a non GNU environment.
cgf
More information about the Cygwin-patches
mailing list