Re: ‘SIG_SETMASK’ and -std=c99

Marco Atzeri marco.atzeri@gmail.com
Sun Aug 6 14:52:00 GMT 2017


On 06/08/2017 11:44, Achim Gratz wrote:
> Marco Atzeri writes:
>> building again hdf5-1.8.18 on latest cygwin I hit
>>
>> error: ‘SIG_SETMASK’ undeclared
>>
>> removing  "-std=c99" from CFLAGS solves the issue.
>
> https://stackoverflow.com/questions/20849917/invalid-signal-processing-library-in-linux

That is not very informative as signal.h is in C99.
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf

however SIG_SETMASK is not
http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html

>
>> As before the "-std=c99" was not causing any problem , it is not clear
>> to me if the current behavior is correct or a side effect of latest
>> cygwin header reshuffle.
>
> The "-std=c*" options are not meant to expose any symbols that are not
> defined in the respective C standard.  You almost always want to use
> "-std=gnu*" instead if you target POSIX-y systems.

formally you are right. However it seems that Cygwin is now
more stringent than Linux where this problem does not arise.


> Regards,
> Achim.

Regards
Marco


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list