This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
RE: IRIX 5 needs a fixincludes hack
- To: 'Alexandre Oliva' <aoliva at redhat dot com>, Bruce Korb <bkorb at allegronetworks dot com>
- Subject: RE: IRIX 5 needs a fixincludes hack
- From: Bruce Korb <bkorb at allegronetworks dot com>
- Date: Mon, 12 Mar 2001 10:48:02 -0800
- Cc: gcc-bugs at gcc dot gnu dot org
files = stdio.h;
select = '(printf\(.*), /\* va_list \*/ char \*'
c_fix = format;
c_fix_arg = "%1, __gnuc_va_list";
> -----Original Message-----
> From: Alexandre Oliva [mailto:aoliva@redhat.com]
> Sent: Sunday, March 11, 2001 11:08 AM
> To: Bruce Korb
> Cc: gcc-bugs@gcc.gnu.org
> Subject: IRIX 5 needs a fixincludes hack
>
>
> IRIX 5.2's stdio.h declares the following functions:
>
> /usr/include/stdio.h:extern int vfprintf(FILE *, const char
> *, /* va_list */ char *);
> /usr/include/stdio.h:extern int vprintf(const char *, /*
> va_list */ char *);
> /usr/include/stdio.h:extern int vsprintf(char *, const char
> *, /* va_list */ char *);
>
> I believe at least IRIX 5.3 is similar. The idea seems to be to avoid
> depending on va_list.
>
> This is fine in C, because void* and char* are interchangeable, but
> not in C++, because va_list is void*, that can't be implicitly
> converted to char*.
>
> I suggest that we arrange for fixincl to modify these headers, instead
> of arranging for gcc to set va_list to char* on IRIX 5. Bruce, might
> I ask you to come up with such a fixincl hack? I'm sure it would take
> you just a minute, whereas for me it would take a while :-(
>
> Thanks in advance :-)
>
> --
> 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
>