Implement modified LWG 2665

llvm-svn: 284313
diff --git a/libcxx/src/experimental/filesystem/path.cpp b/libcxx/src/experimental/filesystem/path.cpp
index 22ad23b..64da302 100644
--- a/libcxx/src/experimental/filesystem/path.cpp
+++ b/libcxx/src/experimental/filesystem/path.cpp
@@ -277,6 +277,16 @@
     return parser::extract_preferred(__pn_, start_i);
 }
 
+string_view_t path::__root_path_raw() const
+{
+    size_t e = parser::root_directory_end(__pn_);
+    if (!parser::good(e))
+      e = parser::root_name_end(__pn_);
+    if (parser::good(e))
+      return string_view_t{__pn_}.substr(0, e + 1);
+    return {};
+}
+
 string_view_t path::__relative_path() const
 {
     if (empty()) {