#ifndef ISO
type {struct sched_param}
element {struct sched_param} int sched_priority
optional-element {struct sched_param} int sched_ss_low_priority
optional-element {struct sched_param} {struct timespec} sched_ss_repl_period
optional-element {struct sched_param} {struct timespec} sched_ss_init_budget
optional-element {struct sched_param} int sched_ss_max_repl

# if defined XOPEN2K8 || defined POSIX2008
type pid_t
type time_t
type {struct timespec}
# endif

constant SCHED_FIFO
constant SCHED_RR
optional-constant SCHED_SPORADIC
constant SCHED_OTHER

function int sched_get_priority_max (int)
function int sched_get_priority_min (int)
function int sched_getparam (pid_t, struct sched_param*)
function int sched_getscheduler (pid_t)
function int sched_rr_get_interval (pid_t, struct timespec*)
function int sched_setparam (pid_t, const struct sched_param*)
function int sched_setscheduler (pid_t, int, const struct sched_param*)
function int sched_yield (void)

allow-header time.h

allow sched_*
allow SCHED_*
allow *_t
#endif
