This doesn't make any sense, the point of including headers is so that definitions are available to compilers for checking and optimisations. By making them opaque pointers that is defeated.
@ntrel if you find there is a problem with compile speed raise an issue so it can be assessed.