`friend class` was obviously wrong, going back and trying to use Clang.