mirror of
https://github.com/apache/nuttx.git
synced 2026-05-11 16:01:03 +08:00
d1772e1432
The Open Group Base Specification IEEE Std 1003.1-2024 states that > The <mqueue.h> header shall define O_RDONLY, O_WRONLY, O_RDWR, > O_CREAT, O_EXCL, and O_NONBLOCK as described in <fcntl.h>. https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/mqueue.h.html It also states that: > The <mqueue.h> header shall define the struct timespec structure as described in <time.h>. https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/mqueue.h.html The way the `mqueue.h` include file is defined right now violates the standard, having potentially different code depending on the platform the code is being compiled against - assuming a multi-arch POSIX environment. The standard also states that: > Inclusion of the <mqueue.h> header may make visible symbols defined > in the headers <fcntl.h>, <signal.h>, and <time.h>. So having those includes shouldn't be an issue.