about summary refs log tree commit diff
path: root/conform
diff options
context:
space:
mode:
Diffstat (limited to 'conform')
-rw-r--r--conform/conformtest.pl2
-rw-r--r--conform/data/semaphore.h-data4
-rw-r--r--conform/data/signal.h-data48
-rw-r--r--conform/data/tar.h-data48
4 files changed, 64 insertions, 38 deletions
diff --git a/conform/conformtest.pl b/conform/conformtest.pl
index 8b97d0dfc7..085fbb8c6d 100644
--- a/conform/conformtest.pl
+++ b/conform/conformtest.pl
@@ -391,7 +391,7 @@ while ($#headers >= 0) {
 		     "Member \"$member\" does not have the correct type.",
 		     $res, 0);
       }
-    } elsif (/^(macro|constant|macro-constant|macro-int-constant) +([a-zA-Z0-9_]*) *(?:{([^}]*)} *)?(?:([>=<!]+) ([A-Za-z0-9_-]*))?/) {
+    } elsif (/^(macro|constant|macro-constant|macro-int-constant) +([a-zA-Z0-9_]*) *(?:{([^}]*)} *)?(?:([>=<!]+) ([A-Za-z0-9_\\'-]*))?/) {
       my($symbol_type) = $1;
       my($symbol) = $2;
       my($type) = $3;
diff --git a/conform/data/semaphore.h-data b/conform/data/semaphore.h-data
index 41595135dc..8c3497baa6 100644
--- a/conform/data/semaphore.h-data
+++ b/conform/data/semaphore.h-data
@@ -16,11 +16,13 @@ function int sem_trywait (sem_t*)
 function int sem_unlink (const char*)
 function int sem_wait (sem_t*)
 
-# ifndef POSIX
 allow-header fcntl.h
+# if !defined POSIX2008 && !defined XOPEN2K8
 allow-header sys/types.h
 # endif
+# if !defined POSIX && !defined UNIX98 && !defined XOPEN2K
 allow-header time.h
+# endif
 
 allow sem_*
 allow SEM_*
diff --git a/conform/data/signal.h-data b/conform/data/signal.h-data
index bb3784ad7b..7584865f12 100644
--- a/conform/data/signal.h-data
+++ b/conform/data/signal.h-data
@@ -69,7 +69,6 @@ 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 SIGIO {int} > 0
 macro-int-constant SIGKILL {int} > 0
 macro-int-constant SIGPIPE {int} > 0
 macro-int-constant SIGQUIT {int} > 0
@@ -81,17 +80,23 @@ 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
-# if !defined POSIX && !defined POSIX2008
+# 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}
 
@@ -101,6 +106,7 @@ 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
@@ -110,7 +116,6 @@ constant SA_ONSTACK
 # if !defined POSIX
 constant SA_RESETHAND
 constant SA_RESTART
-constant SA_SIGINFO
 constant SA_NOCLDWAIT
 constant SA_NODEFER
 # endif
@@ -141,20 +146,27 @@ 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
+#  if !defined POSIX && !defined POSIX2008
 element siginfo_t int si_errno
-# endif
+#  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
@@ -176,8 +188,6 @@ constant SEGV_ACCERR
 constant BUS_ADRALN
 constant BUS_ADRERR
 constant BUS_OBJERR
-constant TRAP_BRKPT
-constant TRAP_TRACE
 constant CLD_EXITED
 constant CLD_KILLED
 constant CLD_DUMPED
@@ -190,6 +200,11 @@ 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
@@ -251,26 +266,35 @@ function void psignal (int, const char*)
 
 // The following expressions are not entirely correct but the current
 // poorfnmatch implementation doesn't grok the right form.
-allow SIG*
 allow sa_*
-allow uc_*
-allow ss_*
-allow sv_*
+allow SA_*
+# ifndef XPG3
 allow si_*
 allow SI_*
+# endif
+# if !defined XPG3 && !defined XPG4
 allow sigev_*
 allow SIGEV_*
 allow sival_*
-allow SA_*
+# 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
diff --git a/conform/data/tar.h-data b/conform/data/tar.h-data
index 591850c144..8477860e57 100644
--- a/conform/data/tar.h-data
+++ b/conform/data/tar.h-data
@@ -1,33 +1,33 @@
 #if !defined ISO && !defined ISO99 && !defined ISO11
 macro-str TMAGIC "ustar"
-constant TMAGLEN == 6
+macro-int-constant TMAGLEN {int} == 6
 macro-str TVERSION "00"
-constant TVERSLEN == 2
+macro-int-constant TVERSLEN {int} == 2
 
-constant REGTYPE
-constant AREGTYPE
-constant LNKTYPE
-constant SYMTYPE
-constant CHRTYPE
-constant BLKTYPE
-constant DIRTYPE
-constant FIFOTYPE
-constant CONTTYPE
+macro-int-constant REGTYPE {int} == '0'
+macro-int-constant AREGTYPE {int} == '\0'
+macro-int-constant LNKTYPE {int} == '1'
+macro-int-constant SYMTYPE {int} == '2'
+macro-int-constant CHRTYPE {int} == '3'
+macro-int-constant BLKTYPE {int} == '4'
+macro-int-constant DIRTYPE {int} == '5'
+macro-int-constant FIFOTYPE {int} == '6'
+macro-int-constant CONTTYPE {int} == '7'
 
-constant TSUID == 04000
-constant TSGID == 02000
-# if !defined POSIX && !defined POSIX2008
-constant TSVTX == 01000
+macro-int-constant TSUID {int} == 04000
+macro-int-constant TSGID {int} == 02000
+# if !defined POSIX2008
+macro-int-constant TSVTX {int} == 01000
 # endif
-constant TUREAD == 00400
-constant TUWRITE == 00200
-constant TUEXEC == 00100
-constant TGREAD == 00040
-constant TGWRITE == 00020
-constant TGEXEC == 00010
-constant TOREAD == 00004
-constant TOWRITE == 00002
-constant TOEXEC == 00001
+macro-int-constant TUREAD {int} == 00400
+macro-int-constant TUWRITE {int} == 00200
+macro-int-constant TUEXEC {int} == 00100
+macro-int-constant TGREAD {int} == 00040
+macro-int-constant TGWRITE {int} == 00020
+macro-int-constant TGEXEC {int} == 00010
+macro-int-constant TOREAD {int} == 00004
+macro-int-constant TOWRITE {int} == 00002
+macro-int-constant TOEXEC {int} == 00001
 
 allow *_t
 #endif