On 11/24/20 11:35 AM, sten.kristian.ivars...@gmail.com wrote:
[snip]std::filesystem POSIX mode is common to all POSIX platforms where backslashes are NOT directory separators. How do you make them accept your demands? How are you going to force POSIX platforms allow Windows specific code?I've been trying to say over and over again that our code doesn't handle any Windows specific stuff and not anywhere have I claimed that anyone else need to handle Windows specific stuff either (except for the internals of Cygwin of which Windows specific logic is already present) I repeat; I don't expect any of the Cygwin-Posix-functions to accept any Windows-style-paths (though some of them, as I repeatedly have said, already does so) and I only expect that I can operate according to the C++-standard on an instantiated std::filesystem::path
How do you expect std::filesystem to do that when Windows paths are not even accepted in API calls?
Make it try to enter subdirectories every time std::filesystem is called? You refuse to understand that Cygwin is NOT Windows, it is a POSIX platform. Using Cygwin means complying with POSIX expectations and standards. I don't see how this conversation can continue if you still refuse to see Cygwin as something separate from Windows. Besides, you have already answered your question by ruling out MinGW, so Microsoft Visual Studio it is.I repeat (again); neither MinGW/MSVS is an option because we're trying to use Posix and C++ Just to be clear: - Our code DOESN'T handle Windows-style-paths explicitly in any way - We DON'T expect Cygwin-Posix-file-related-functions to accept Windows-style-paths - We WOULD like std::filesystem to work according to the C++ ISO standard
Why would std::filesystem be an exception? How would it know if a backslash is part of a name and not a separator? How does it know when to apply exceptions? What about mixed paths?
The C++ standard mentions separators, not specific characters, and the forward slash is used under Cygwin, not the Windows backslash.
The bigger question would be how would you expect a Cygwin application to even accept a Windows paths. It should use *nix paths, as all Cygwin programs do.
OpenPGP_0x713B5FE29C145D45_and_old_rev.asc
Description: application/pgp-keys
OpenPGP_signature
Description: OpenPGP digital signature
-- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple