Emulator Issues #11770
closedVS 2019 16.3 deprecates experimental/filesystem.
0%
Description
I work on Microsoft Visual Studio's C++ Standard Library implementation, and we regularly build Dolphin as part of our test suite. I recently checked in a change that will ship in VS 2019 16.3, which will require a code change in Dolphin. Specifically, <experimental/filesystem>
will be deprecated via an impossible-to-miss preprocessor "#error
The <experimental/filesystem>
header providing std::experimental::filesystem
is deprecated by Microsoft and will be REMOVED. It is superseded by the C++17 <filesystem>
header providing std::filesystem
. You can define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING
to acknowledge that you have received this warning."
Currently, I observe that Dolphin includes <experimental/filesystem>
in two places:
C:\Temp\RWC\src>grep -rP "include.*filesystem" *
Source/Core/Common/FileSearch.cpp:#include <experimental/filesystem>
Source/Core/Core/Boot/Boot.cpp:#include <experimental/filesystem>
In the short term, Dolphin should define the silencing macro _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING
before including <experimental/filesystem>
. (This has no effect for other platforms or toolset versions.) In the long term, Dolphin should switch to using C++17 <filesystem>
and std::filesystem
, which first shipped in VS 2017 15.7.