https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99995
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|[12/13/14/15/16 Regression] |[12/13/14/15 Regression] |should not include |should not include |<unistd.h> in c++20 mode |<unistd.h> in c++20 mode Status|ASSIGNED |RESOLVED Resolution|--- |FIXED --- Comment #12 from Jonathan Wakely <redi at gcc dot gnu.org> --- r16-995-gda9b2ea04c084d removed unistd.h from the headers, so fixed for GCC 16. It won't be possible to backport that, so unless we want to declare syscall(long, ...) ourselves we still need unistd.h on the branches. There are probably other things we could do to reduce the size of preprocessed source in C++20 (and later) but they can be dealt with as separate bugs.