https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117210
--- Comment #10 from Dimitry Andric <dimitry at andric dot com> ---
(In reply to Jonathan Wakely from comment #9)
> Does this work?
>
> #include <sys/cdefs.h>
> #include <cstdlib>
>
> int main ()
> {
> long long a = 5;
> std::llabs(a);
> return 0;
> }
Yes, that works. So maybe we were lucky that cdefs.h got transitively included
in the past, but not anymore?
That said, sys/cdefs.h is really a bit of a FreeBSD implementation detail. It
does get included automatically with most of the regular system headers,
including <stdlib.h>.