Bootstrap failure (Re: [Patch] Java: Prepare for %q, %< and %> in diagnostic messages)

Jakub Jelinek jakub@redhat.com
Wed Oct 6 13:59:00 GMT 2004


On Wed, Oct 06, 2004 at 03:47:41PM +0200, Paolo Bonzini wrote:
> >It says in 7.15 "va_list is an object type".  So, you can take its
> >address and later dereference to get an lvalue that is a va_list.
> 
> I wonder if it is it legal to declare a va_list which is an array, and 
> even if it is, why not changing it to an array-within-a-struct.

BTW,
#include <stdarg.h>

va_list *pap;

void
foo (int i, ...)
{
  va_list ap;
  va_start (ap, i);
  pap = ≈
  bar (6);
  va_end (ap);
}

works just fine on x86_64 where typedef struct __va_list_tag va_list[1];
(void *)pap == (void *)ap on this arch, so passing va_list and va_list *
makes no difference.

	Jakub



More information about the Gcc-patches mailing list