Skip to content

Mark private methods and pimpl constructors of public classes as unexported

Given the methods are marked as private and thus not intended for external use, exporting the symbols adds some minor unneeded costs in binary size and linking time, which can be avoided. Same for constructors taking pimpl-private classes arguments, which are not intended for external use either.

Stripped binary size in releasedebug mode: 1467992 before, 1463704 after (0,292 % reduction)

Nowhere impressive, but peanuts add up :)

Merge request reports