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: gcc-in-cxx update / multi-targeted gcc


Quoting "Joseph S. Myers" <joseph@codesourcery.com>:

On Wed, 29 Apr 2009, Joern Rennecke wrote:

What are your thoughts on using gcc extensions for gcc-in-cxx ?

I believe we agreed in a previous discussion to aim for building with the intersection of C++98/C++03 and C++ as supported by GCC 3.4 (including making sure at an appropriate point that it builds with a non-GCC compiler, probably an EDG-based one such as the Intel compiler). Though bearing in mind that PPL doesn't build with GCC before 4.0, the GCC version required for building with GCC might increase (though I think increasing beyond 4.1 would be a bad idea for some time yet).

I think we should distinguish here between the language we want to support for bootstrapping versus the language we want to be use for builds in general to allow convenient type checking, and to support configurations that are not essential for bootstrapping, like ones with multiple target architectures.

When compiling for a single target, we could still use standard enums
in the interface even where the enums are target dependent.
Although that defeats the purpose of the target vector (it is not interchangeable with any other target vector), it allows you
to bootstrap the compiler, and then you can use that compiler to build
a multi-targeted gcc which requires the gcc extension.


For the generated-enum-in-macro problem, we could use a plain integral type
as the variable type and a cast to the enum when reading as a fallback
mechanism.

But allowing the statement expression for gcc would give better type checking.


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