Re:The C++20 Naughty and Nice List for Game Devs
by etra0 on Monday December 25, 2023 @01:15PM
(#38764732)
> And all that you get just writing normal C++.
But, as far as I understand, the boundary layer has to still be C (the side that loads DLLs and stuff), because of the natural limitations of templated languages and linkers.
And as soon as you change any interface you'd need to recompile more parts of the code. The same can be applied with Rust using dylib. At the end, the glue code always end up being C.
Re:The C++20 Naughty and Nice List for Game Devs
by kllrnohj on Monday December 25, 2023 @02:58PM
(#38765589)
On any given compiler you can make C++ have a stable ABI. You can even do this commonly in practice across compiler versions, even, the standard library typically tries to achieve this.
It's easier to have a long term cross version cross compiler stable C ABI, but if you're talking a single toolchain that simplifies the problem tremendously and you can absolutely do that with C++ in practice at that point
This is only for development. Shipping builds will usually statically link everything.