all size_t in the file should be replaced by std::size_t. or do you intend to use size_t?