From 12fbdf4d4e52bafaeef6f923b8f357a39a37c02b Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Tue, 30 Nov 2021 09:01:36 +0900 Subject: Fix conflicting declaration on Solaris SunC ``` "cont.c", line 24: identifier redeclared: madvise current : function(pointer to char, unsigned int, int) returning int previous: function(pointer to void, unsigned int, int) returning int : "/usr/include/sys/mman.h", line 232 ``` GCC ``` cont.c:24:12: error: conflicting types for 'madvise' 24 | extern int madvise(caddr_t, size_t, int); | ^~~~~~~ In file included from cont.c:16: /usr/include/sys/mman.h:232:12: note: previous declaration of 'madvise' was here 232 | extern int madvise(void *, size_t, int); | ^~~~~~~ ``` --- cont.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'cont.c') diff --git a/cont.c b/cont.c index 2af7971a9a..290be43012 100644 --- a/cont.c +++ b/cont.c @@ -18,8 +18,7 @@ // 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)) +#ifdef NEED_MADVICE_PROTOTYPE_USING_CADDR_T #include extern int madvise(caddr_t, size_t, int); #endif -- cgit v1.2.1