Subject: Re: va_list pointers, bad(?) gcc code
To: Frank van der Linden <fvdl@netbsd.org>
From: Michal Ludvig <mludvig@suse.cz>
List: tech-toolchain
Date: 11/11/2003 11:03:25
Frank van der Linden told me that:
> (no include files used to make it OS
> independent):
That might be the problem. Try to replace
> #define va_list __builtin_va_list
> #define va_start __builtin_va_start
> #define va_arg __builtin_va_arg
> #define va_end __builtin_va_end
With
#include <stdarg.h>
and
> void
> vfoo1(const char *a, va_list l)
> {
> vfoo2(a, &l);
> }
with
void
vfoo1(const char *a, va_list l)
{
va_list l2;
va_copy (l2, l);
vfoo2(a, &l2);
}
Now it should work...
Michal Ludvig
--
sUsE cR, s.R.o mludvig@suse.cz | Cray is the only computer
(+420) 296.545.373 http://www.suse.cz | that runs an endless loop
Personal homepage http://www.logix.cz/~mic | in just four hours.