Wednesday, February 27, 2002

This could be really useful for producing a name for types and such.
Zack Weinberg - C error printer cleanup, phase 1 The C front end has its own set of error-printing routines which
permit it to print several different language constructs in error
messages. For instance,

cp_error ("type `%T' is not a base type for type `%T'", basetype, type);

This naturally duplicates a lot of machinery. It is also severely
type-unsafe. For instance, it feeds inaccurate type information to
va_arg, and it calls function pointers with the wrong signature. I'm
somewhat surprised it worked at all. This is the first of a series of
three patches which aim to clean up the mess.

0 Comments:

Post a Comment

<< Home