| You are the one not understanding what it means to pick C code and compile it with a C++ compiler, minus the semantic differences. Should I enumerate all of them to make you happy? > You have blah->Foo(bar); in C++. In C it won't compile by any design. That code has to be rewritten as blah->vtbl->Foo(blah,bar). It is not C code as you claimed. It won't compile with C compiler. It's C++. Nothing prevents you to write COM calls in C++ code just like in C, blah->vtbl->Foo(blah,bar). The code won't stop compiling. > I asked how type checking disappears in this process, not how you compile C with C++.... The whole point was about writing C like code with a C++ compiler. > How can a JIT compiler obtain the PGO data in the first place? Is it running under profiler all the time? You realize that you've just refuted your claim about performance not being affected, right? By using a multi-stage JIT compiler with different levels of optimization and making use of multi-cores. 99% of the applications are never able to saturate all cores to the point it matters to the overall performance. I have always been on the Pascal and C++ side against C since the early 90's on BBS and USENET. So this type of disbelief against better tooling is not strange to me. Cry Engine, Unreal (C++ with GC), Unity, MonoGame, with their separation between lower level C++ and higher level languages, and the way those engines are being adopted by Sony, Nintendo, Microsoft, Amazon, Google speak for themselves. Just like C and Pascal overtook Assembly, C++ overtook C, something else will overtake C++. |
Sony and Nintendo do not use these engines, MS might be making the new Gears with UE though, rest of their first party don't. Amazon and Google have one successful game between themselves (and that's a mobile game). All these engines bring to the industry are indies and mobile games. UE actually lost quite a lot of AAA they had in UE3 times. Epic's and Crytec's own games don't do quite well (Crytec is not even making payroll). So yeah, looks like C++ games do not have much to worry about.