Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Apr 2004 18:51:27 +0300
From:      Valentin Nechayev <netch@lucky.net>
To:        ia64@freebsd.org
Subject:   va_list q
Message-ID:  <20040421155127.GS57650@netch.kiev.ua>

next in thread | raw e-mail | index | archive | help
Hi,
I was notified that maintained port (net/pppd23) can't be built on ia64.
Failure message is:

cc -O -pipe   -g -I../include -DHAVE_PATHS_H -D_BITYPES  -c utils.c
utils.c: In function `vslprintf':
utils.c:253: error: invalid use of non-lvalue array
*** Error code 1

The code in question is:

int
vslprintf(buf, buflen, fmt, args)
[...]
#ifndef __powerpc__
>            n = vslprintf(buf, buflen + 1, f, va_arg(args, va_list));
#else
            /* On the powerpc, a va_list is an array of 1 structure */
            n = vslprintf(buf, buflen + 1, f, va_arg(args, void *));
#endif

(I selected failed line with '>')

va_arg() uses translation to pointer to specified type; this translation
fails with message shown above. Can anybody say how can it be fixed,
and whether shown powerpc hack is applicable to ia64 if it's good solution?


-netch-



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040421155127.GS57650>