This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: egcs-980315, gen*.c system.h and fatal() using stdarg/varargs
- To: jfc at mit dot edu
- Subject: Re: egcs-980315, gen*.c system.h and fatal() using stdarg/varargs
- From: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Date: Mon, 30 Mar 1998 12:05:13 -0500 (EST)
- Cc: egcs at cygnus dot com, ghazi at caip dot rutgers dot edu
> From: John Carr <jfc@mit.edu>
>
> > All of these individual hacks play tricks with type mismatches
> > on arguments passed to fprintf. None of them accounts for the actual
> > size of the argument passed. Yet somehow we haven't had a bug report
> > against this.
>
> I sent a bug report about the C++ error handler a couple months ago.
> Compile C++ with HOST_WIDE_INT = long long. It will crash as soon as
> it prints a message because it assumes that HOST_WIDE_INT, int, long,
> and pointer are all the same size and passed the same way to functions.
Okay I'm convinced. I did some work on a vfprintf.c module.
I'll post it shortly for review, however I'd prefer not to tackle
libiberty. Either someone else should handle that, or I can add code to
link in just gcc/vfprintf.c if autoconf determines vfprintf() is
missing. (Eg, using AC_REPLACE_FUNCS.)
--Kaveh
--
Kaveh R. Ghazi Project Manager / Custom Development
ghazi@caip.rutgers.edu Icon CMT Corp.