Subject: just noticed this...
To: None <current-users@NetBSD.ORG>
From: Perry E. Metzger <email@example.com>
Date: 01/08/1995 15:06:21
Just noticed this source commit. Doesn't this end up sacrificing the
ability of users to drop in any GCC they pick up whenever they like,
or use other compilers/languages, and doesn't it also lower
portability? Was signal mask initialization time a real problem?
Not making judgements -- just curious...
>From: The Source Master <srcmastr@NetBSD.ORG>
>Date: 5 Jan 1995 02:07:16 -0500
>Wed Jan 4 22:01:20 PST 1995
>Update of /b/source/CVS/src/include
>In directory sun-lamp.cs.berkeley.edu:/c/users/jtc/src/include
>We removed the sigaddset(), sigdelset(), and sigismember() macros, although
>they were POSIX.1 compliant, because users have misinterpreted the spec and
>have written programs that depend on -1 being returned when a signal number
>is out of range. This made initialization of signal masks significantly
>This change uses GCC's inline function extension to provide macro-like
>signal mask manipulation functions. Since most of the time constants
>like SIGINT is used, gcc is able to remove unused range checking code.
>Gcc is also smart enough to coalesce adjacent sigemptyset(), sigaddset(),
>sigdelset(), and sigfullset() calls into a single assignment.