This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: C++: Fix three mangling bugs


>>>>> "Chip" == Chip Salzenberg <chip@valinux.com> writes:

    Chip>   1. Constant values throughout the range of both
    Chip> HOST_WIDE_INT and 'unsigned HOST_WIDE_INT' may be used as
    Chip> template parameters. [*] So it's vital that the numeric
    Chip> mangling handle them.

I agree 100%.  As for your asterisk, it's true that that's an issue --
and one that has never been solved in any version of G++, I don't
think.  What's really needed is a language-independent INTEGER_CST
printing routine that deals with constants that have values too big to
represent in a HOST_WIDE_INT.  Such a thing is actually harder to
write than it seems at first -- but certainly doable.

    Chip>   2. HOST_WIDE_INT may be larger than int.

    Chip>   3. This code may be compiled by a K&R compiler, so we
    Chip> can't count on prototypes to do the conversions.  Or, am I
    Chip> wrong about that?  Is the C++ front end only compiled with
    Chip> gcc?

Yes, but still an interesting point.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]