public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* virtual arguments
@ 2001-09-18  9:20 SETTLE MW ALEXANDER
  2001-09-28 17:02 ` Alexandre Oliva
  0 siblings, 1 reply; 2+ messages in thread
From: SETTLE MW ALEXANDER @ 2001-09-18  9:20 UTC (permalink / raw)
  To: gcc-help

Greetings,

I have kind of a weird problem related to gcc.  I'm currently running
version 2.96 in conjunction with another compiler suite called IMPACT.
IMPACT invokes gcc for it's initial phase of compilation and returns the
following error message.

 /usr/lib/gcc-lib/i386-redhat-linux/2.96/include/stdarg.h line 43: error:
      identifier "__builtin_va_list" is undefined
   typedef __builtin_va_list __gnuc_va_list;

I can not figure out where __builtin_va_list is defined.  I was hoping
someone might be able to explain where this type is first declared.

I also noticed that when I invoke gcc without IMPACT this error does not
come up.  However, if I look at the output generated when I run
<gcc -E wc.c > I still can not determine where __builtin_va_list is
defined and am not sure why the above error does not occur.

Before upgrading to gcc-2.96 we were using gcc-2.91 and __gnuc_va_list
was explicitly defined as type void *, int the stdarg.h file.

Thanks for the help.

Alex

Alex Settle
Vulcan Science Academy

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: virtual arguments
  2001-09-18  9:20 virtual arguments SETTLE MW ALEXANDER
@ 2001-09-28 17:02 ` Alexandre Oliva
  0 siblings, 0 replies; 2+ messages in thread
From: Alexandre Oliva @ 2001-09-28 17:02 UTC (permalink / raw)
  To: SETTLE MW ALEXANDER; +Cc: gcc-help

On Sep 18, 2001, SETTLE  MW ALEXANDER <Mw.Settle@Colorado.EDU> wrote:

> I can not figure out where __builtin_va_list is defined.

It is a compiler built-in type, defined in the compiler implementation
itself.

> Before upgrading to gcc-2.96 we were using gcc-2.91 and __gnuc_va_list
> was explicitly defined as type void *, int the stdarg.h file.

Yup, it didn't use this built-in before, which made the implementation
of variable arguments far more complicated than it had to be.  va_arg
et al are no longer implemented as macros.  Rather, the knowledge
about va_list type was built into the compiler, and a number of
built in funtions and types are now used to implement variable
arguments.  I'm afraid you'll have to get stdarg.h and varargs.h that
comply with whatever IMPACT expects for variable-arguments handling.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-09-28 17:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-09-18  9:20 virtual arguments SETTLE MW ALEXANDER
2001-09-28 17:02 ` Alexandre Oliva

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).