all of that describes a lack of extension support. “they just need to be updated” means “gnome devs don’t care about extensions, so shit that was working just fine now broke, and it’s up to the extension dev to find and fix bugs they didn’t introdkce”
But sure, you just need to update… and pin versions and shit
you need to compile c with a c++ compiler to be able to define macros for keywords iirc. But I did do this once to translate c to my native language, Maltese. It was cursed