This is the mail archive of the gcc@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]
Other format: [Raw text]

Re: does gcc support multiple sizes, or not?


Mark Mitchell wrote:
>I think you really have to accept that the change you want to make goes
>to a relatively fundamental invariant of C++.

I don't see how you can call this a realatively fundamental invariant
of C++, given how various C++ implementations have supported multiple
pointer sizes for much of the history of C++.  Perhaps you could argue
that Standard C++ made a fundamental change to the language, but I don't
think so.  The original STL made specific allowances for different memory
models and pointer types, and this design, with it's otherwise unnecessary
"pointer" and "size_type" types, was incorporated in to the standard.
I think the intent of the "(T *)(U *)(T *)x == (T *)x" invariant was
only to limit the standard pointer types, not make to non-standard
pointer types of differt size fundamentally not C++.  (Unlike, say,
the fundamental changes the standard made to how templates work...)

					Ross Ridge


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