The demise of gcc has begun. Not because I don't particularly like C++ but because the folks actually have an interest to gradually start moving a C codebase into C++ as if they didn't have better things to do. Sure, some syntactic things will look cleaner (let's just exclude those that will look uglier for the sake of fairness)--in five years or whenever their transition could be considered complete.
The GCC folks are feeling the pressure from Clang/LLVM, which is a good thing. Under the guidance of the FSF, GCC has intentionally tangled the front end with the back end. The purpose of this was to make it hard to modularize GCC, because if GCC were modular, then you could write a proprietary component for it (like you can write proprietary Linux modules).
Their goal here is to make it easier for new developers to write their own passes or front ends or whatever. GCC may be more mature, but Clang/LLVM are way easier to dive into.
> Under the guidance of the FSF, GCC has intentionally tangled the front end with the back end. The purpose of this was to make it hard to modularize GCC, because if GCC were modular, then you could write a proprietary component for it (like you can write proprietary Linux modules).
Surely you must be joking... do you have a reference for this? Sure, I sometimes the motives of the FSF but this would be quite outrageous from a software engineering perspective.
Just out of curiosity, couldn't the FSF release GCC under the AGPL or something like that and then modularize it all they want? That was my first thought when reading that message. That way they can promote freedom and still have modular software.
Of course, the AGPL might not have existed in 2000, but I haven't heard about GCC moving to the AGPL since then either.
It's actually the opposite; GCC is being ported to C++ because there is actually so much interest in continuing to hack on it. The current codebase is being hobbled in various ways by being limited to pure C. GCC even has a (nasty) internal garbage collector, despite being a C program: http://gcc.gnu.org/wiki/Memory_management
If GCC was dying as you said, nobody would be interested in such large refactors that have no point other than to make development easier.
I would regard attempts to more aggressively refactor a 30-year-old codebase as a sign of health, rather than the opposite. A sick project gets only hacks to overcome the fire du jour.