Subject: 24.3: conflicting types for `rpl_readlink' on powerpc-apple-darwin
From: Klaus Zeitler <[email-masked]>
To: <[email-masked]>
Date: Thu, 20 Feb 2014 15:58:03 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Building emacs 24.3 on powerpc-apple-darwin gives me the
following error:

--- snip ---

gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/Volumes/UFS_exp2/exptools/expmake/build/gnuemacs2src/emacs-24.3/lib -I../src -I/Volumes/UFS_exp2/exptools/expmake/build/gnuemacs2src/emacs-24.3/src   -I/opt/exp/gnu/include   -g3 -O2 -MT careadlinkat.o -MD -MP -MF .deps/careadlinkat.Tpo -c -o careadlinkat.o careadlinkat.c
In file included from unistd.h:43,
                 from careadlinkat.h:24,
                 from careadlinkat.c:23:
/usr/include/unistd.h:240: error: conflicting types for `rpl_readlink'
unistd.h:1559: error: previous declaration of `rpl_readlink'

--- snip ---

Looking at the 2 definitions of readlink I see in /usr/include/unistd.h:

int	 readlink(const char *, char *, int);

and in emacs-24.3/lib/unistd.h

_GL_FUNCDECL_RPL (readlink, ssize_t,
                  (const char *file, char *buf, size_t bufsize)
                  _GL_ARG_NONNULL ((1, 2)));

So it seems the 3rd parameter is different. Also I wonder why we include
2 different unistd.h files in the first place.

Attached is the complete configure/compile log.

-- 
 -------------------------------------------------------------------
|  Klaus Zeitler              Alcatel-Lucent                        |
|  Lorenzstrasse 10           D-70435 Stuttgart, Germany            |
|  Department:                MS/E Building: 004  Office: 1/62      |
|  Telefon:                   +49 711 821 43898                     |
|  Email:                     [email-masked]      |
|                                                                   |
| Alcatel-Lucent Deutschland AG                                     |
| Sitz der Gesellschaft: Stuttgart · Amtsgericht Stuttgart HRB 4026 |
| Vorsitzender des Aufsichtsrates: Michael Oppenhoff                |
| Vorstand: Wilhelm Dresselhaus (Chairman) · Hans-Jörg Daub ·       |
|           Andreas Gehe                                            |
 -------------------------------------------------------------------
---
You can only be young once. But you can always be immature. -- Dave Barry