[libcxx] Document windows specifics regarding file_type and perms. NFC.
authorMartin Storsjö <martin@martin.st>
Sun, 7 Mar 2021 21:49:56 +0000 (23:49 +0200)
committerMartin Storsjö <martin@martin.st>
Mon, 8 Mar 2021 13:27:07 +0000 (15:27 +0200)
This was requested in the review of D98138.

Differential Revision: https://reviews.llvm.org/D98155

libcxx/include/filesystem

index 58a1ef2..372b28f 100644 (file)
@@ -276,6 +276,8 @@ struct _LIBCPP_TYPE_VIS space_info {
   uintmax_t available;
 };
 
+// On Windows, the library never identifies files as  block, character, fifo
+// or socket.
 enum class _LIBCPP_ENUM_VIS file_type : signed char {
   none = 0,
   not_found = -1,
@@ -289,6 +291,10 @@ enum class _LIBCPP_ENUM_VIS file_type : signed char {
   unknown = 8
 };
 
+// On Windows, these permission bits map to one single readonly flag per
+// file, and the executable bit is always returned as set. When setting
+// permissions, as long as the write bit is set for either owner, group or
+// others, the readonly flag is cleared.
 enum class _LIBCPP_ENUM_VIS perms : unsigned {
   none = 0,