One hassle with compiling gcc in C++ is that we casually mix enum
types in the frontends. This was originally done because the code
field in the tree type was eight bits, and there was not enough room
to hold all the different tree codes used by all the frontends.
However, the code field is now 16 bits, and there is no longer any
reason for the awkward tree code split.
I have committed this patch to the gcc-in-cxx branch to generate a
single set of tree codes across all the frontends. I am testing this
patch for mainline.