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: Putting C++ code into gcc front end


Richard Earnshaw wrote:
Richard Earnshaw wrote:


Could the C++ front end be modified to make it compilable with any C compiler (ignoring for the moment that parts of the C++ front end are now written in ISO c90). That is, how many gnu extensions are used, and can they be easily removed?

a quick compile with -pedantic shows, char bitfields such as 1 cp-tree.h: unsigned char is_lang_type_class : 1;. Making this an int would enlarge that structure.


The comment preceding lang_type_header already indicates that some of the bits there logically belong in lang_type_class. And a quick look through the header suggests that only one use really relies on this being an eight-bit field and that is lang_type_class: the other two uses are 1) a Union 2) lang_type_ptrmem (where it is already followed by a 32-bit aligned object.

So if we made this a bitfield of an int, we could push up to 32-bits worth of things into lang_type_header and the cost would be zero.
sounds ok to me. I'd encourange making cp conform to C89, rather than GNU89.

nathan

--
Nathan Sidwell    ::   http://www.codesourcery.com   ::     CodeSourcery LLC
         The voices in my head said this was stupid too
nathan at codesourcery dot com : http://www.cs.bris.ac.uk/~nathan/ : nathan at acm dot org



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