Compiling gcc with a C++ compiler has already uncovered a number of latent bugs, such as comparing values of enum_type_1 to values of enum_type_2. That's not an error in C, because enums are just ints, but in C++ they're distinct types and the compiler catches the problem. I hope stronger typing would also mean less casting to/from void*.
As well as increased type-safety C++ gives you automatic memory management (via destructors) which could potentially replace the garbage collection used today.
Gcc uses lots of hash tables and vectors internally (the VEC type mentioned at the link you gave) which could be replaced by standard C++ containers - although that's a bit less certain, as it would require a working C++ standard library as well as C++ compiler to bootstrap.
There are of course downsides to C++, so let's not have a language war here :)