[devel] extern inline function redifinition

Peter V. Saveliev =?iso-8859-1?q?peet_=CE=C1_altlinux=2Eru?=
Ср Окт 24 02:01:19 MSD 2007


В сообщении от Wednesday 24 October 2007 01:16:00 Konstantin A. Lepikhov 
написал(а):
<skip />
> а что в коде? Помойму просто надо убрать inline декларирование из
> extern'ов, такое даже в ядре не используют.

сам вызов:

        /* Now we have successfully converted the call into a recvmsg call */
        ret = recvfrom(sock, data, len, flags,
            msg->msg_name, &msg->msg_namelen);

что вызывает (в этом же файле):

ssize_t
recvfrom(int sock, void *buf, size_t len, int flags, struct sockaddr *from,
    socklen_t *fromlen)
{

как оно прототипировано там же:

#define DECLARE(name, ret, args) static ret (*libc_##name) args
DECLARE(recvfrom, ssize_t, (int, void *, size_t, int, struct sockaddr *,
            socklen_t *));

Можешь подсказать, _зачем_ оно так? :)

-- 
Peter V. Saveliev


Подробная информация о списке рассылки Devel