I'm sure you're just throwing in a personal anecdote of interest and already know this, but for readers unfamiliar with these pieces of hardware:
The SNES (early 90s) and the GBA (early 2000s), despite roughly similar graphical capabilities, are vastly different machines. The SNES uses a 65816-based architecture running at ~3MHz that's extremely hard to compile C down to while still getting acceptable performance/code size - almost all games for it were coded in assembly language.
By comparison, the GBA uses an ARM7-based architecture running at ~33MHz. GCC was available for it literally before it came out. Even though I'd experimented a bit with QBASIC when I was younger, plugging away on the GBA when I was around 14 was how I learned C, how computers really work at a low-level, and roughly speaking, how to "really" code.
So this isn't a GBA C++ compiler - that's existed for ages. This is a "just" game engine. It's super cool that people are still working on stuff like this - the GBA is a very fun platform to develop a game on, at a nice sweet spot between straightforward enough to get started on, powerful enough to make something cool, not so powerful that you need a team of dozens to make something impressive (for the platform).
Sorry, was confused by "them". Yeah, he is basically the creatpr of all the big programming tutorials on snes programming. But to be such a giant he was mighty uninterested. He wanted to get into making music instead.
However, you’re limited to the CPU’s (relatively) mediocre processing power. This is exactly how some of the raycasted game engines were built, though:
There is no framebuffer on the GBA, just sprites and tiled backgrounds. Although if it's like on the DS, I don't recall exactly, you can setup a background in such a way that it emulates a framebuffer. Handy for software 3D.