about summary refs log tree commit diff
path: root/conform
diff options
context:
space:
mode:
Diffstat (limited to 'conform')
-rw-r--r--conform/data/locale.h-data22
-rw-r--r--conform/data/math.h-data106
-rw-r--r--conform/data/setjmp.h-data2
-rw-r--r--conform/data/signal.h-data66
-rw-r--r--conform/data/stdarg.h-data2
5 files changed, 78 insertions, 120 deletions
diff --git a/conform/data/locale.h-data b/conform/data/locale.h-data
index 8897ee08a1..adcd25f656 100644
--- a/conform/data/locale.h-data
+++ b/conform/data/locale.h-data
@@ -26,15 +26,17 @@ element {struct lconv} char int_p_sep_by_space
 element {struct lconv} char int_p_sign_posn
 #endif
 
-constant NULL
+macro-constant NULL == 0
 
-macro LC_ALL
-macro LC_COLLATE
-macro LC_CTYPE
-macro LC_MESSAGES
-macro LC_MONETARY
-macro LC_NUMERIC
-macro LC_TIME
+macro-int-constant LC_ALL
+macro-int-constant LC_COLLATE
+macro-int-constant LC_CTYPE
+#if !defined ISO && !defined ISO99 && !defined ISO11
+macro-int-constant LC_MESSAGES
+#endif
+macro-int-constant LC_MONETARY
+macro-int-constant LC_NUMERIC
+macro-int-constant LC_TIME
 
 #if defined XOPEN2K8 || defined POSIX2008
 constant LC_GLOBAL_LOCALE
@@ -59,8 +61,10 @@ function locale_t newlocale (int, const char*, locale_t)
 function locale_t uselocale (locale_t)
 #endif
 
-allow LC_*
+allow LC_[ABCDEFGHIJKLMNOPQRSTUVWXYZ]*
+#if !defined ISO && !defined ISO99 && !defined ISO11
 allow *_t
+#endif
 #if defined XOPEN2K8 || defined POSIX2008
 allow LC_*_MASK
 #endif
diff --git a/conform/data/math.h-data b/conform/data/math.h-data
index ce41dc5154..0d9246d8bc 100644
--- a/conform/data/math.h-data
+++ b/conform/data/math.h-data
@@ -1,4 +1,4 @@
-constant HUGE_VAL
+macro-constant HUGE_VAL {double}
 
 #if !defined ISO && !defined POSIX
 # if !defined XPG3 && !defined XPG4 && !defined UNIX98
@@ -14,6 +14,8 @@ macro isless
 macro islessequal
 macro islessgreater
 macro isunordered
+type float_t
+type double_t
 # endif
 # if defined XPG3 || defined XPG4 || defined UNIX98
 function double isnan (double)
@@ -37,28 +39,28 @@ constant M_SQRT1_2
 constant MAXFLOAT
 # endif
 # if !defined XPG3 && !defined XPG4 && !defined UNIX98
-constant HUGE_VALF
-constant HUGE_VALL
-constant INFINITY
-constant NAN
+macro-constant HUGE_VALF {float}
+macro-constant HUGE_VALL {long double}
+macro-constant INFINITY {float}
+macro-constant NAN {float}
 
-macro FP_INFINITE
-macro FP_NAN
-macro FP_NORMAL
-macro FP_SUBNORMAL
-macro FP_ZERO
+macro-int-constant FP_INFINITE
+macro-int-constant FP_NAN
+macro-int-constant FP_NORMAL
+macro-int-constant FP_SUBNORMAL
+macro-int-constant FP_ZERO
 
-optional-macro FP_FAST_FMA
-optional-macro FP_FAST_FMAF
-optional-macro FP_FAST_FMAL
+optional-macro-int-constant FP_FAST_FMA {int} == 1
+optional-macro-int-constant FP_FAST_FMAF {int} == 1
+optional-macro-int-constant FP_FAST_FMAL {int} == 1
 
-constant FP_ILOGB0
-constant FP_ILOGBNAN
+macro-int-constant FP_ILOGB0
+macro-int-constant FP_ILOGBNAN
 
-macro MATH_ERRNO == 1
-macro MATH_ERREXCEPT == 2
+macro-int-constant MATH_ERRNO {int} == 1
+macro-int-constant MATH_ERREXCEPT {int} == 2
 
-macro math_errhandling
+macro math_errhandling {int}
 # endif
 #endif
 
@@ -155,7 +157,7 @@ function double nan (const char*)
 #  endif
 # endif
 
-# if !defined POSIX && !defined POSIX2008
+# if !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
 // variable signgam
 allow signgam
 # endif
@@ -303,11 +305,9 @@ allow asinf
 allow atanf
 allow atan2f
 allow ceilf
-allow copysignf
 allow cosf
 allow coshf
 allow expf
-allow exp2f
 allow fabsf
 allow floorf
 allow fmodf
@@ -315,49 +315,22 @@ allow frexpf
 allow ldexpf
 allow logf
 allow log10f
-allow log2f
+allow modff
 allow powf
 allow sinf
 allow sinhf
 allow sqrtf
 allow tanf
 allow tanhf
-allow erff
-allow erfcf
-allow gammaf
-allow hypotf
-allow j0f
-allow j1f
-allow jnf
-allow lgammaf
-allow tgammaf
-allow y0f
-allow y1f
-allow ynf
-allow isnanf
-allow acoshf
-allow asinhf
-allow atanhf
-allow cbrtf
-allow expm1f
-allow ilogbf
-allow log1pf
-allow logbf
-allow nextafterf
-allow remainderf
-allow rintf
-allow scalbf
 
 allow acosl
 allow asinl
 allow atanl
 allow atan2l
 allow ceill
-allow copysignl
 allow cosl
 allow coshl
 allow expl
-allow exp2l
 allow fabsl
 allow floorl
 allow fmodl
@@ -365,41 +338,18 @@ allow frexpl
 allow ldexpl
 allow logl
 allow log10l
-allow log2l
+allow modfl
 allow powl
 allow sinl
 allow sinhl
 allow sqrtl
 allow tanl
 allow tanhl
-allow erfl
-allow erfcl
-allow gammal
-allow hypotl
-allow j0l
-allow j1l
-allow jnl
-allow lgammal
-allow tgammal
-allow y0l
-allow y1l
-allow ynl
-allow isnanl
-allow acoshl
-allow asinhl
-allow atanhl
-allow cbrtl
-allow expm1l
-allow ilogbl
-allow log1pl
-allow logbl
-allow nextafterl
-allow remainderl
-allow rintl
-allow scalbl
 #endif
 
+#if !defined ISO && !defined ISO99 && !defined ISO11
 allow *_t
-// The following expressions are not entirely correct but the current
-// poorfnmatch implementation doesn't grok the right form.
-allow FP_*
+#endif
+#if !defined ISO && !defined POSIX && !defined XPG3 && !defined XPG4 && !defined UNIX98
+allow FP_[ABCDEFGHIJKLMNOPQRSTUVWXYZ]*
+#endif
diff --git a/conform/data/setjmp.h-data b/conform/data/setjmp.h-data
index 310105b2a9..af28ddb59a 100644
--- a/conform/data/setjmp.h-data
+++ b/conform/data/setjmp.h-data
@@ -19,4 +19,6 @@ macro-function int _setjmp (jmp_buf)
 # endif
 #endif
 
+#if !defined ISO && !defined ISO99 && !defined ISO11
 allow *_t
+#endif
diff --git a/conform/data/signal.h-data b/conform/data/signal.h-data
index 99468aecef..ba9019b62a 100644
--- a/conform/data/signal.h-data
+++ b/conform/data/signal.h-data
@@ -1,9 +1,9 @@
-constant SIG_DFL {void(*)(int)}
-constant SIG_ERR {void(*)(int)}
+macro-constant SIG_DFL {void(*)(int)}
+macro-constant SIG_ERR {void(*)(int)}
 #if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
-constant SIG_HOLD {void(*)(int)}
+macro-constant SIG_HOLD {void(*)(int)}
 #endif
-constant SIG_IGN {void(*)(int)}
+macro-constant SIG_IGN {void(*)(int)}
 
 type sig_atomic_t
 #if !defined ISO && !defined ISO99 && !defined ISO11
@@ -56,42 +56,42 @@ macro SIGRTMIN
 macro SIGRTMAX
 #endif
 
-constant SIGABRT
-constant SIGFPE
-constant SIGILL
-constant SIGINT
-constant SIGSEGV
-constant SIGTERM
+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
-constant SIGALRM
-constant SIGHUP
-constant SIGIO
-constant SIGKILL
-constant SIGPIPE
-constant SIGQUIT
-constant SIGUSR1
-constant SIGUSR2
-constant SIGCHLD
-constant SIGCONT
-constant SIGSTOP
-constant SIGTSTP
-constant SIGTTIN
-constant SIGTTOU
-constant SIGBUS
-constant SIGPOLL
-constant SIGPROF
-constant SIGSYS
+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
+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
+macro-int-constant SIGBUS {int} > 0
+macro-int-constant SIGPOLL {int} > 0
+macro-int-constant SIGPROF {int} > 0
+macro-int-constant SIGSYS {int} > 0
 # if !defined POSIX && !defined POSIX2008
-constant SIGTRAP
+macro-int-constant SIGTRAP {int} > 0
 # endif
-constant SIGURG
-constant SIGVTALRM
-constant SIGXCPU
-constant SIGXFSZ
+macro-int-constant SIGURG {int} > 0
+macro-int-constant SIGVTALRM {int} > 0
+macro-int-constant SIGXCPU {int} > 0
+macro-int-constant SIGXFSZ {int} > 0
 
 type {struct sigaction}
 
diff --git a/conform/data/stdarg.h-data b/conform/data/stdarg.h-data
index a9b5d6532b..2c87a3b56d 100644
--- a/conform/data/stdarg.h-data
+++ b/conform/data/stdarg.h-data
@@ -9,4 +9,6 @@ macro va_end
 macro va_copy
 #endif
 
+#if !defined ISO && !defined ISO99 && !defined ISO11
 allow *_t
+#endif