GCC already uses C++ code in some areas such as for overloading, templates, and virtual tables, but the thoughts for this GCC language migration are to use the C++03 standard with macros preparing for C++0x. Predicate/accessor macros will be converted to C++ inline functions along with changing all C cases to C++. Further down the road is using the class hierarchy and member functions support of C++ along with various data structures.
The expressed reasons in the GCC notes for this migration are, "C++ is a tool to make the code base use more standard idioms, which makes it easy for newcomers." Not all of the active GNU Compiler Collection developers are onboard with this migration with several viewing this as "another incomplete transition with lots of fairly pointless churn."
More in the official notes.