> If you want to distribute your library as a binary object and a separate source-form interface/header today, you'll have to use a (wrapper) C API.
This is only true if you want to target different compilers. If you ship your binaries targeting a specific compiler (which is what just about every company does that I've ever worked with), you don't have any abi issues.