diff options
author | Naohisa Goto <ngotogenome@gmail.com> | 2021-11-29 23:46:48 +0900 |
---|---|---|
committer | Naohisa Goto <ngotogenome@gmail.com> | 2021-11-30 00:03:04 +0900 |
commit | 8287d2f23c06c614d1ae83b6e0dad48bcda622cb (patch) | |
tree | d78fe726e7beb324cae25fa8c2f423764e2e5cb3 /cont.c | |
parent | 67a1e2258974df4b597d019739595c18fbb9a7c1 (diff) |
Workaround for implicit declaration of function 'madvise' on Solaris
On Solaris, madvise(3C) is NOT defined for SUS (XPG4v2) or later,
but MADV_* macros are defined when __EXTENSIONS__ is defined.
This may cause compile error on Solaris 10 with GCC when
"-Werror=implicit-function-declaration" and "-D_XOPEN_SOURCE=600"
are added by configure.
Diffstat (limited to 'cont.c')
-rw-r--r-- | cont.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -16,6 +16,14 @@ #include <sys/mman.h> #endif +// On Solaris, madvise() is NOT declared for SUS (XPG4v2) or later, +// but MADV_* macros are defined when __EXTENSIONS__ is defined. +#if defined(__sun) && defined(HAVE_CADDR_T) && \ + (defined(MADV_FREE) || defined(MADV_DONTNEED)) +#include <sys/types.h> +extern int madvise(caddr_t, size_t, int); +#endif + #include COROUTINE_H #include "eval_intern.h" |