[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] XEN 3.0.1 vsprintf.c - strange macro expansion



Armand Puccetti wrote:
When preprocessing the file vsprintf.c, macro 'va_arg' gets expanded into '__builtin_va_arg', which is not XEN code.

For instance, at line 317 of that file,

   field_width = va_arg(args,int);

becomes

   field_width = __builtin_va_arg(args,int);

using the preprocessing command below.

cpp -C -E -nostdinc -iwithprefix include -I.../xen-3.0.1/xen/include -I.../xen-3.0.1/xen/include/asm-x86/mach-generic -I.../xen-3.0.1/xen/include/asm-x86/mach-default -DNDEBUG -D__i386__ vsprintf.c

The def inition of macro va_arg is located in file acenv.h:298, but has little to do with this result.
Settings: Compiler: gcc 4.0.2, OS: Ubuntu Linux kernel 2.6.12.10

I don't know what acenv.h but AFAIK we aren't using it's va_arg() definition. We include stdarg.h and I assume we build with libgcc.

Regards,

Anthony Liguori

What might be the reason of this behavior? A bug in gcc?





_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.