Hi!
While compiling Celero, I received several warnings from Visual Studio.
Visual Studio 2019 : 19.24.28314.0
Celero\src\Distribution.cpp(59): error C2220: warning treated as error - no 'object' file generated
Celero\src\Distribution.cpp(59): warning C4244: 'argument': conversion from 'uint64_t' to 'const unsigned int', possible loss of data
Celero\src\Distribution.cpp(60): warning C4244: 'argument': conversion from 'uint64_t' to 'const unsigned int', possible loss of dataTestFixture.cpp
Celero\src\Distribution.cpp(61): warning C4244: 'argument': conversion from 'uint64_t' to 'const unsigned int', possible loss of data
Celero\src\Distribution.cpp(62): warning C4244: 'argument': conversion from 'uint64_t' to 'const unsigned int', possible loss of data
Visual Studio 2017 : 19.16.27035
Celero\include\celero/ExperimentResult.h(157): error C2220: the following warning is treated as an error
Celero\include\celero/ExperimentResult.h(157): warning C4251: 'celero::ExperimentResult::pimpl': class 'celero::Pimpl<celero::ExperimentResult::Impl>' needs to have dll-interface to be used by clients of class 'celero::ExperimentResult'
Celero\include\celero/ExperimentResult.h(157): note: see declaration of 'celero::Pimpl<celero::ExperimentResult::Impl>'
Celero\include\celero/ExperimentResult.h(157): error C2220: the following warning is treated as an error
Celero\include\celero/ExperimentResult.h(157): warning C4251: 'celero::ExperimentResult::pimpl': class 'celero::Pimpl<celero::ExperimentResult::Impl>' needs to have dll-interface to be used by clients of class 'celero::ExperimentResult'
Celero\include\celero/ExperimentResult.h(157): note: see declaration of 'celero::Pimpl<celero::ExperimentResult::Impl>'
Celero\include\celero/ExperimentResult.h(157): error C2220: the following warning is treated as an error
Celero\include\celero/ExperimentResult.h(157): warning C4251: 'celero::ExperimentResult::pimpl': class 'celero::Pimpl<celero::ExperimentResult::Impl>' needs to have dll-interface to be used by clients of class 'celero::ExperimentResult'
Celero\include\celero/ExperimentResult.h(157): note: see declaration of 'celero::Pimpl<celero::ExperimentResult::Impl>'
Celero\include\celero/Experiment.h(193): warning C4251: 'celero::Experiment::pimpl': class 'celero::Pimpl<celero::Experiment::Impl>' needs to have dll-interface to be used by clients of class 'celero::Experiment'
Celero\include\celero/Experiment.h(193): note: see declaration of 'celero::Pimpl<celero::Experiment::Impl>'
Celero\include\celero/Experiment.h(193): warning C4251: 'celero::Experiment::pimpl': class 'celero::Pimpl<celero::Experiment::Impl>' needs to have dll-interface to be used by clients of class 'celero::Experiment'
Celero\include\celero/Experiment.h(193): note: see declaration of 'celero::Pimpl<celero::Experiment::Impl>'
Celero\include\celero/Benchmark.h(108): warning C4251: 'celero::Benchmark::pimpl': class 'celero::Pimpl<celero::Benchmark::Impl>' needs to have dll-interface to be used by clients of class 'celero::Benchmark'
Celero\include\celero/Benchmark.h(108): note: see declaration of 'celero::Pimpl<celero::Benchmark::Impl>'
Celero\include\celero/Benchmark.h(108): warning C4251: 'celero::Benchmark::pimpl': class 'celero::Pimpl<celero::Benchmark::Impl>' needs to have dll-interface to be used by clients of class 'celero::Benchmark'
Celero\include\celero/Benchmark.h(108): note: see declaration of 'celero::Pimpl<celero::Benchmark::Impl>'
Celero\include\celero/ThreadTestFixture.h(71): warning C4251: 'celero::ThreadTestFixture::pimpl': class 'celero::Pimpl<celero::ThreadTestFixture::Impl>' needs to have dll-interface to be used by clients of class 'celero::ThreadTestFixture'
Celero\include\celero/ThreadTestFixture.h(71): note: see declaration of 'celero::Pimpl<celero::ThreadTestFixture::Impl>'
Celero\include\celero/ThreadTestFixture.h(71): warning C4251: 'celero::ThreadTestFixture::pimpl': class 'celero::Pimpl<celero::ThreadTestFixture::Impl>' needs to have dll-interface to be used by clients of class 'celero::ThreadTestFixture'
Celero\include\celero/ThreadTestFixture.h(71): note: see declaration of 'celero::Pimpl<celero::ThreadTestFixture::Impl>'
Celero\include\celero/Experiment.h(193): warning C4251: 'celero::Experiment::pimpl': class 'celero::Pimpl<celero::Experiment::Impl>' needs to have dll-interface to be used by clients of class 'celero::Experiment'
Celero\include\celero/Experiment.h(193): note: see declaration of 'celero::Pimpl<celero::Experiment::Impl>'
Celero\include\celero/Benchmark.h(108): warning C4251: 'celero::Benchmark::pimpl': class 'celero::Pimpl<celero::Benchmark::Impl>' needs to have dll-interface to be used by clients of class 'celero::Benchmark'
Celero\include\celero/Benchmark.h(108): note: see declaration of 'celero::Pimpl<celero::Benchmark::Impl>'
Celero\include\celero/ThreadTestFixture.h(71): warning C4251: 'celero::ThreadTestFixture::pimpl': class 'celero::Pimpl<celero::ThreadTestFixture::Impl>' needs to have dll-interface to be used by clients of class 'celero::ThreadTestFixture'
Celero\include\celero/ThreadTestFixture.h(71): note: see declaration of 'celero::Pimpl<celero::ThreadTestFixture::Impl>'
Celero\include\celero/UserDefinedMeasurementCollector.h(43): warning C4251: 'celero::UserDefinedMeasurementCollector::collected': class 'std::unordered_map<std::string,std::shared_ptr<celero::UserDefinedMeasurement>,std::hash<std::string>,std::equal_to<std::string>,std::allocator<std::pair<const std::string,std::shared_ptr<celero::UserDefinedMeasurement>>>>' needs to have dll-interface to be used by clients of class 'celero::UserDefinedMeasurementCollector'
Celero\include\celero/UserDefinedMeasurementCollector.h(43): warning C4251: 'celero::UserDefinedMeasurementCollector::collected': class 'std::unordered_map<std::string,std::shared_ptr<celero::UserDefinedMeasurement>,std::hash<std::string>,std::equal_to<std::string>,std::allocator<std::pair<const std::string,std::shared_ptr<celero::UserDefinedMeasurement>>>>' needs to have dll-interface to be used by clients of class 'celero::UserDefinedMeasurementCollector'
Celero\include\celero/UserDefinedMeasurementCollector.h(43): note: see declaration of 'std::unordered_map<std::string,std::shared_ptr<celero::UserDefinedMeasurement>,std::hash<std::string>,std::equal_to<std::string>,std::allocator<std::pair<const std::string,std::shared_ptr<celero::UserDefinedMeasurement>>>>'
Celero\include\celero/UserDefinedMeasurementCollector.h(43): note: see declaration of 'std::unordered_map<std::string,std::shared_ptr<celero::UserDefinedMeasurement>,std::hash<std::string>,std::equal_to<std::string>,std::allocator<std::pair<const std::string,std::shared_ptr<celero::UserDefinedMeasurement>>>>'
Celero\include\celero/UserDefinedMeasurementCollector.h(43): warning C4251: 'celero::UserDefinedMeasurementCollector::collected': class 'std::unordered_map<std::string,std::shared_ptr<celero::UserDefinedMeasurement>,std::hash<std::string>,std::equal_to<std::string>,std::allocator<std::pair<const std::string,std::shared_ptr<celero::UserDefinedMeasurement>>>>' needs to have dll-interface to be used by clients of class 'celero::UserDefinedMeasurementCollector'
Celero\include\celero/UserDefinedMeasurementCollector.h(43): note: see declaration of 'std::unordered_map<std::string,std::shared_ptr<celero::UserDefinedMeasurement>,std::hash<std::string>,std::equal_to<std::string>,std::allocator<std::pair<const
Hi! While compiling Celero, I received several warnings from Visual Studio.
Visual Studio 2019 : 19.24.28314.0
Visual Studio 2017 : 19.16.27035