#include "options.h" #ifdef POSIX_MESSAGE_PASSING #include #define T(t) (t*)0; #define F(t,n) {t *y = &x.n;} static void f() { T(mqd_t) T(pthread_attr_t) T(size_t) T(ssize_t) T(struct timespec) T(struct sigevent) { struct mq_attr x; F(long, mq_flags) F(long, mq_maxmsg) F(long, mq_msgsize) F(long, mq_curmsgs) } {int(*p)(mqd_t) = mq_close;} {int(*p)(mqd_t,struct mq_attr*) = mq_getattr;} {int(*p)(mqd_t,const struct sigevent*) = mq_notify;} {mqd_t(*p)(const char*,int,...) = mq_open;} {ssize_t(*p)(mqd_t,char*,size_t,unsigned*) = mq_receive;} {int(*p)(mqd_t,const char*,size_t,unsigned) = mq_send;} {int(*p)(mqd_t,const struct mq_attr*restrict,struct mq_attr*restrict) = mq_setattr;} {int(*p)(const char*) = mq_unlink;} } #include static void g() { {ssize_t(*p)(mqd_t,char*restrict,size_t,unsigned*restrict,const struct timespec*restrict) = mq_timedreceive;} {int(*p)(mqd_t,const char*,size_t,unsigned,const struct timespec*) = mq_timedsend;} } #endif