The C++17 standard demands for std::filesystem::path: "For Windows-based operating systems, value_type is wchar_t and preferred_separator is the backslash character (L’\\’)." (30.10.8-2)
While I still don't really like the decision, I will try to help those in need of a more std::filesystem conforming implementation for C++11/14 by implementing an option to build ghc::filesystem
with ghc::filesystem::path::value_type as wchar_t and ghc::filesystem::path::string_type as std::basic_string<wchar_t> on Windows.
It might be a good idea to actually activate that option from the helper header files that try to detect std::filesystem and include ghc::filesystem only when no standard version is available, as in these situations the resulting fs::path should have the same interface.