I'm happy to report that the gcc-in-cxx branch can now bootstrap. That is, the code in gcc proper can now be compiled with a C++ compiler.
My plan going forward is as follows (when we are back in stage 1): * For each difference between trunk and gcc-in-cxx: + Try to implement a -Wc++-compat warning which detects the change. - If it is possible, implement the warning, and make the changes to let gcc bootstrap with the warning. - If a warning is not possible for some reason, I will simply propose the change by itself. I expect this will be a small subset of the changes, mostly related to the build system and to low-level configuration like ansidecl.h. + This process will eventually eliminate all differences between trunk and gcc-in-cxx, at which point gcc-in-cxx can be retired. * Implement a configure option, --enable-c++-build or something like that, which builds gcc with a C++ compiler. + Start running regular builds with that option, to avoid any regressions in C++ buildability for cases for which there is no -Wc++-compat warning. * Begin the lobbying process for changing the default value of the configure option. I certainly welcome help on any of these steps. Ian