a00f522af8
Continuing the series of patches to clean up conformtest expectations for "POSIX" (1995/6) based on review of the expectations against the standard, this patch cleans up those for semaphore.h, signal.h and tar.h (including various corrections for other standards for the expectations affected by this patch). Tested x86_64. (Some of the failures for signal.h shown up by this patch correcting expectations for that header are among the reasons for posix/annexc being expected to fail. The goal is for conformtest eventually to replace posix/annexc and stdlib/isomac once it has all relevant functionality, and for the loop over standards and headers in conformtest to convert to separate makefile targets for each combination, so they can be run in parallel and so that xfails can be more specific than the present xfailing of the whole of conformtest.) * conform/conformtest.pl: Allow ' and \ in values given for constants. * conform/data/semaphore.h-data [POSIX] (fcntl.h): Allow header inclusion. [POSIX] (sys/types.h): Likewise. [POSIX2008 || XOPEN2K8] (sys/types.h): Don't allow header inclusion. [POSIX || UNIX98 || XOPEN2K] (time.h): Don't allow header inclusion. * conform/data/signal.h-data (SIGIO): Remove expectation. [XPG3] (SIGBUS): Do not expect. [POSIX || XPG3] (SIGPOLL): Likewise. [POSIX || XPG3] (SIGPROF): Likewise. [POSIX || XPG3] (SIGSYS): Likewise. [XPG3] (SIGTRAP): Likewise. [POSIX || XPG3] (SIGURG): Likewise. [POSIX || XPG3] (SIGVTALRM): Likewise. [POSIX || XPG3] (SIGXCPU): Likewise. [POSIX || XPG3] (SIGXFSZ): Likewise. [POSIX] (SA_SIGINFO): Expect. [XPG3] (siginfo_t): Do not expect type or contents. [POSIX] (si_pid): Do not expect element. [POSIX] (si_uid): Likewise. [POSIX] (si_addr): Likewise. [POSIX] (si_status): Likewise. [POSIX] (si_band): Likewise. [XPG4] (si_value): Likewise. [POSIX || XPG3] (ILL_ILLOPC): Do not expect. [POSIX || XPG3] (ILL_ILLOPN): Likewise. [POSIX || XPG3] (ILL_ILLADR): Likewise. [POSIX || XPG3] (ILL_ILLTRP): Likewise. [POSIX || XPG3] (ILL_PRVOPC): Likewise. [POSIX || XPG3] (ILL_PRVREG): Likewise. [POSIX || XPG3] (ILL_COPROC): Likewise. [POSIX || XPG3] (ILL_BADSTK): Likewise. [POSIX || XPG3] (FPE_INTDIV): Likewise. [POSIX || XPG3] (FPE_INTOVF): Likewise. [POSIX || XPG3] (FPE_FLTDIV): Likewise. [POSIX || XPG3] (FPE_FLTOVF): Likewise. [POSIX || XPG3] (FPE_FLTUND): Likewise. [POSIX || XPG3] (FPE_FLTRES): Likewise. [POSIX || XPG3] (FPE_FLTINV): Likewise. [POSIX || XPG3] (FPE_FLTSUB): Likewise. [POSIX || XPG3] (SEGV_MAPERR): Likewise. [POSIX || XPG3] (SEGV_ACCERR): Likewise. [POSIX || XPG3] (BUS_ADRALN): Likewise. [POSIX || XPG3] (BUS_ADRERR): Likewise. [POSIX || XPG3] (BUS_OBJERR): Likewise. [POSIX || XPG3] (CLD_EXITED): Likewise. [POSIX || XPG3] (CLD_KILLED): Likewise. [POSIX || XPG3] (CLD_DUMPED): Likewise. [POSIX || XPG3] (CLD_TRAPPED): Likewise. [POSIX || XPG3] (CLD_STOPPED): Likewise. [POSIX || XPG3] (CLD_CONTINUED): Likewise. [POSIX || XPG3] (POLL_IN): Likewise. [POSIX || XPG3] (POLL_OUT): Likewise. [POSIX || XPG3] (POLL_MSG): Likewise. [POSIX || XPG3] (POLL_ERR): Likewise. [POSIX || XPG3] (POLL_PRI): Likewise. [POSIX || XPG3] (POLL_HUP): Likewise. [POSIX || XPG3 || POSIX2008] (TRAP_BRKPT): Likewise. [POSIX || XPG3 || POSIX2008] (TRAP_TRACE): Likewise. (SIG*): Do not allow. [XPG3] (si_*): Likewise. [XPG3] (SI_*): Likewise. [XPG3 || XPG4] (sigev_*): Likewise. [XPG3 || XPG4] (SIGEV_*): Likewise. [XPG3 || XPG4] (sival_*): Likewise. [POSIX || XPG3 || XPG4] (uc_*): Likewise. [POSIX || XPG3] (BUS_*): Likewise. [POSIX || XPG3] (CLD_*): Likewise. [POSIX || XPG3] (FPE_*): Likewise. [POSIX || XPG3] (ILL_*): Likewise. [POSIX || XPG3] (POLL_*): Likewise. [POSIX || XPG3] (SEGV_*): Likewise. [POSIX || XPG3 || POSIX2008] (SS_*): Likewise. [POSIX || XPG3 || POSIX2008] (SV_*): Likewise. [POSIX || XPG3 || POSIX2008] (TRAP_*): Likewise. [POSIX || XPG3 || POSIX2008] (ss_*): Likewise. [POSIX || XPG3 || POSIX2008] (sv_*): Likewise. * conform/data/tar.h-data (TMAGLEN): Use macro-int-constant. Specify type and value. (TVERSLEN): Likewise. (REGTYPE): Likewise. (AREGTYPE): Likewise. (LNKTYPE): Likewise. (SYMTYPE): Likewise. (CHRTYPE): Likewise. (BLKTYPE): Likewise. (DIRTYPE): Likewise. (FIFOTYPE): Likewise. (CONTTYPE): Likewise. (TSUID): Likewise. (TSGID): Likewise. (TSVTX): Likewise. (TUREAD): Likewise. (TUWRITE): Likewise. (TUEXEC): Likewise. (TGREAD): Likewise. (TGWRITE): Likewise. (TGEXEC): Likewise. (TOREAD): Likewise. (TOWRITE): Likewise. (TOEXEC): Likewise. [POSIX] (TSVTX): Expect constant.
305 lines
7.6 KiB
Plaintext
305 lines
7.6 KiB
Plaintext
macro-constant SIG_DFL {void(*)(int)}
|
|
macro-constant SIG_ERR {void(*)(int)}
|
|
#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
|
|
macro-constant SIG_HOLD {void(*)(int)}
|
|
#endif
|
|
macro-constant SIG_IGN {void(*)(int)}
|
|
|
|
type sig_atomic_t
|
|
#if !defined ISO && !defined ISO99 && !defined ISO11
|
|
type sigset_t
|
|
#endif
|
|
#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
|
|
type pid_t
|
|
#elif defined POSIX
|
|
# define pid_t __pid_t
|
|
# define uid_t __uid_t
|
|
#endif
|
|
#if defined XOPEN2K8 || defined POSIX2008
|
|
type size_t
|
|
type pthread_t
|
|
type uid_t
|
|
|
|
type mcontext_t
|
|
|
|
type ucontext_t
|
|
element ucontext_t {ucontext_t*} uc_link
|
|
element ucontext_t sigset_t uc_sigmask
|
|
element ucontext_t stack_t uc_stack
|
|
element ucontext_t mcontext_t uc_mcontext
|
|
|
|
type {struct timespec}
|
|
element {struct timespec} __time_t tv_sec
|
|
element {struct timespec} long tv_nsec
|
|
#endif
|
|
|
|
#if defined POSIX || defined UNIX98 || defined XOPEN2K8 || defined POSIX2008
|
|
element {union sigval} int sival_int
|
|
element {union sigval} {void*} sival_ptr
|
|
|
|
type {struct sigevent}
|
|
|
|
// Test the elements of the sigevent_t structure.
|
|
element {struct sigevent} int sigev_notify
|
|
element {struct sigevent} int sigev_signo
|
|
element {struct sigevent} {union sigval} sigev_value
|
|
element {struct sigevent} {void(*} sigev_notify_function )(union sigval)
|
|
element {struct sigevent} {pthread_attr_t*} sigev_notify_attributes
|
|
|
|
constant SIGEV_NONE
|
|
constant SIGEV_SIGNAL
|
|
constant SIGEV_THREAD
|
|
|
|
type {union sigval}
|
|
|
|
macro SIGRTMIN
|
|
macro SIGRTMAX
|
|
#endif
|
|
|
|
macro-int-constant SIGABRT {int} > 0
|
|
macro-int-constant SIGFPE {int} > 0
|
|
macro-int-constant SIGILL {int} > 0
|
|
macro-int-constant SIGINT {int} > 0
|
|
macro-int-constant SIGSEGV {int} > 0
|
|
macro-int-constant SIGTERM {int} > 0
|
|
|
|
function void (*signal (int, void(*)(int)))(int)
|
|
function int raise (int)
|
|
|
|
#if !defined ISO && !defined ISO99 && !defined ISO11
|
|
macro-int-constant SIGALRM {int} > 0
|
|
macro-int-constant SIGHUP {int} > 0
|
|
macro-int-constant SIGKILL {int} > 0
|
|
macro-int-constant SIGPIPE {int} > 0
|
|
macro-int-constant SIGQUIT {int} > 0
|
|
macro-int-constant SIGUSR1 {int} > 0
|
|
macro-int-constant SIGUSR2 {int} > 0
|
|
macro-int-constant SIGCHLD {int} > 0
|
|
macro-int-constant SIGCONT {int} > 0
|
|
macro-int-constant SIGSTOP {int} > 0
|
|
macro-int-constant SIGTSTP {int} > 0
|
|
macro-int-constant SIGTTIN {int} > 0
|
|
macro-int-constant SIGTTOU {int} > 0
|
|
# ifndef XPG3
|
|
macro-int-constant SIGBUS {int} > 0
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3
|
|
macro-int-constant SIGPOLL {int} > 0
|
|
macro-int-constant SIGPROF {int} > 0
|
|
macro-int-constant SIGSYS {int} > 0
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3 && !defined POSIX2008
|
|
macro-int-constant SIGTRAP {int} > 0
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3
|
|
macro-int-constant SIGURG {int} > 0
|
|
macro-int-constant SIGVTALRM {int} > 0
|
|
macro-int-constant SIGXCPU {int} > 0
|
|
macro-int-constant SIGXFSZ {int} > 0
|
|
# endif
|
|
|
|
type {struct sigaction}
|
|
|
|
element {struct sigaction} {void(*} sa_handler )(int)
|
|
element {struct sigaction} sigset_t sa_mask
|
|
element {struct sigaction} int sa_flags
|
|
element {struct sigaction} {void(*} sa_sigaction )(int, siginfo_t*, void*)
|
|
|
|
constant SA_NOCLDSTOP
|
|
constant SA_SIGINFO
|
|
constant SIG_BLOCK
|
|
constant SIG_UNBLOCK
|
|
constant SIG_SETMASK
|
|
# if !defined POSIX && !defined POSIX2008
|
|
constant SA_ONSTACK
|
|
# endif
|
|
# if !defined POSIX
|
|
constant SA_RESETHAND
|
|
constant SA_RESTART
|
|
constant SA_NOCLDWAIT
|
|
constant SA_NODEFER
|
|
# endif
|
|
# if !defined POSIX && !defined POSIX2008
|
|
constant SS_ONSTACK
|
|
constant SS_DISABLE
|
|
constant MINSIGSTKSZ
|
|
constant SIGSTKSZ
|
|
# endif
|
|
|
|
# if !defined POSIX
|
|
type ucontext_t
|
|
|
|
element ucontext_t {ucontext_t*} uc_link
|
|
element ucontext_t sigset_t uc_sigmask
|
|
element ucontext_t stack_t uc_stack
|
|
element ucontext_t mcontext_t uc_mcontext
|
|
|
|
type stack_t
|
|
|
|
element stack_t {void*} ss_sp
|
|
element stack_t size_t ss_size
|
|
element stack_t int ss_flags
|
|
|
|
type {struct sigstack}
|
|
|
|
element {struct sigstack} int ss_onstack
|
|
element {struct sigstack} {void*} ss_sp
|
|
# endif
|
|
|
|
# ifndef XPG3
|
|
type siginfo_t
|
|
|
|
element siginfo_t int si_signo
|
|
# if !defined POSIX && !defined POSIX2008
|
|
element siginfo_t int si_errno
|
|
# endif
|
|
element siginfo_t int si_code
|
|
# ifndef POSIX
|
|
element siginfo_t pid_t si_pid
|
|
element siginfo_t uid_t si_uid
|
|
element siginfo_t {void*} si_addr
|
|
element siginfo_t int si_status
|
|
element siginfo_t long si_band
|
|
# endif
|
|
# ifndef XPG4
|
|
element siginfo_t {union sigval} si_value
|
|
# endif
|
|
# endif
|
|
|
|
# if !defined POSIX && !defined XPG3
|
|
constant ILL_ILLOPC
|
|
constant ILL_ILLOPN
|
|
constant ILL_ILLADR
|
|
constant ILL_ILLTRP
|
|
constant ILL_PRVOPC
|
|
constant ILL_PRVREG
|
|
constant ILL_COPROC
|
|
constant ILL_BADSTK
|
|
constant FPE_INTDIV
|
|
constant FPE_INTOVF
|
|
constant FPE_FLTDIV
|
|
constant FPE_FLTOVF
|
|
constant FPE_FLTUND
|
|
constant FPE_FLTRES
|
|
constant FPE_FLTINV
|
|
constant FPE_FLTSUB
|
|
constant SEGV_MAPERR
|
|
constant SEGV_ACCERR
|
|
constant BUS_ADRALN
|
|
constant BUS_ADRERR
|
|
constant BUS_OBJERR
|
|
constant CLD_EXITED
|
|
constant CLD_KILLED
|
|
constant CLD_DUMPED
|
|
constant CLD_TRAPPED
|
|
constant CLD_STOPPED
|
|
constant CLD_CONTINUED
|
|
constant POLL_IN
|
|
constant POLL_OUT
|
|
constant POLL_MSG
|
|
constant POLL_ERR
|
|
constant POLL_PRI
|
|
constant POLL_HUP
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3 && !defined POSIX2008
|
|
constant TRAP_BRKPT
|
|
constant TRAP_TRACE
|
|
# endif
|
|
constant SI_USER
|
|
constant SI_QUEUE
|
|
constant SI_TIMER
|
|
constant SI_ASYNCIO
|
|
constant SI_MESGQ
|
|
|
|
# if !defined XOPEN2K8 && !defined POSIX && !defined POSIX2008
|
|
function void (*bsd_signal (int, void(*)(int)))(int)
|
|
# endif
|
|
function int kill (pid_t, int)
|
|
# if !defined POSIX && !defined POSIX2008
|
|
function int killpg (pid_t, int)
|
|
# endif
|
|
# if !defined XPG3 && !defined XPG4
|
|
function int pthread_kill (pthread_t, int)
|
|
function int pthread_sigmask (int, const sigset_t*, sigset_t*)
|
|
# endif
|
|
function int sigaction (int, const struct sigaction*, struct sigaction*)
|
|
function int sigaddset (sigset_t*, int)
|
|
# if !defined POSIX && !defined POSIX2008
|
|
function int sigaltstack (const stack_t*, stack_t*)
|
|
# endif
|
|
function int sigdelset (sigset_t*, int)
|
|
function int sigemptyset (sigset_t*)
|
|
function int sigfillset (sigset_t*)
|
|
# if !defined POSIX && !defined POSIX2008
|
|
function int sighold (int)
|
|
function int sigignore (int)
|
|
function int siginterrupt (int, int)
|
|
# endif
|
|
function int sigismember (const sigset_t*, int)
|
|
#if !defined POSIX && !defined POSIX2008
|
|
function int sigpause (int)
|
|
# endif
|
|
function int sigpending (sigset_t*)
|
|
function int sigprocmask (int, const sigset_t*, sigset_t*)
|
|
# if !defined XPG3 && !defined XPG4
|
|
function int sigqueue (pid_t, int, const union sigval)
|
|
# endif
|
|
# if !defined POSIX && !defined POSIX2008
|
|
function int sigrelse (int)
|
|
function void (*sigset (int, void(*)(int)))(int)
|
|
# endif
|
|
# if !defined POSIX
|
|
function int sigstack (struct sigstack*, struct sigstack*)
|
|
# endif
|
|
function int sigsuspend (const sigset_t*)
|
|
# if !defined XPG3 && !defined XPG4
|
|
function int sigtimedwait (const sigset_t*, siginfo_t*, const struct timespec*)
|
|
# endif
|
|
function int sigwait (const sigset_t*, int*)
|
|
# if !defined XPG3 && !defined XPG4
|
|
function int sigwaitinfo (const sigset_t*, siginfo_t*)
|
|
# endif
|
|
# if defined XOPEN2K8 || defined POSIX2008
|
|
function void psiginfo (const siginfo_t*, const char*)
|
|
function void psignal (int, const char*)
|
|
# endif
|
|
|
|
// The following expressions are not entirely correct but the current
|
|
// poorfnmatch implementation doesn't grok the right form.
|
|
allow sa_*
|
|
allow SA_*
|
|
# ifndef XPG3
|
|
allow si_*
|
|
allow SI_*
|
|
# endif
|
|
# if !defined XPG3 && !defined XPG4
|
|
allow sigev_*
|
|
allow SIGEV_*
|
|
allow sival_*
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3 && !defined XPG4
|
|
allow uc_*
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3
|
|
allow BUS_*
|
|
allow CLD_*
|
|
allow FPE_*
|
|
allow ILL_*
|
|
allow POLL_*
|
|
allow SEGV_*
|
|
# endif
|
|
# if !defined POSIX && !defined XPG3 && !defined POSIX2008
|
|
allow SS_*
|
|
allow SV_*
|
|
allow TRAP_*
|
|
allow ss_*
|
|
allow sv_*
|
|
# endif
|
|
allow *_t
|
|
|
|
allow-header time.h
|
|
#endif
|
|
|
|
allow SIG[ABCDEFGHIJKLMNOPQRSTUVWXYZ]*
|
|
allow SIG_*
|