Last time I looked, you could turn the D garbage collector off (both completely and temporarily).
While Unity uses C#, it still seems to use C/C++ components for graphics and physics and such (going by the libraries it uses internally, anyway) and allows you to call native code if you wish.
> Last time I looked, you could turn the D garbage collector off (both completely and temporarily).
You can, but it's hard to ensure a strict no-allocation policy afterwards (someone did it recently).
A moderate amount of allocations each frame is usually ok, and this routinely happens in C++ engines too. In my opinion, it's absolutely possible to make a game with D and GC enabled. It's a bit like not making too much drawcalls in a frame.
The very small list of unsupported APIs are extraneous and unnecessary in the context of cross-platform code. So, what APIs are you referring to, specifically?
Even Microsoft has started to deploy native code for .NET Windows Phone 8 applications with the MDIL format.
A C++ replacement in the game / graphics area needs to provide the same mix of hardware control and abstractions that C++ provides.
Currently I only see Ada as possible contender, but it is considered too verbose by many developers.
D and Rust still need to earn the hearts of the games community and become more stable.