Index: libcxx/include/filesystem =================================================================== --- libcxx/include/filesystem +++ libcxx/include/filesystem @@ -921,7 +921,7 @@ typedef basic_string string_type; typedef basic_string_view __string_view; - enum class _LIBCPP_ENUM_VIS format : unsigned char { + enum _LIBCPP_ENUM_VIS format : unsigned char { auto_format, native_format, generic_format Index: libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/source.pass.cpp =================================================================== --- libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/source.pass.cpp +++ libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/source.pass.cpp @@ -87,6 +87,9 @@ RunTestCaseImpl(MS, fs::path::format::auto_format); RunTestCaseImpl(MS, fs::path::format::native_format); RunTestCaseImpl(MS, fs::path::format::generic_format); + RunTestCaseImpl(MS, fs::path::auto_format); + RunTestCaseImpl(MS, fs::path::native_format); + RunTestCaseImpl(MS, fs::path::generic_format); } void test_sfinae() { Index: libcxx/test/std/input.output/filesystems/fs.enum/enum.path.format.pass.cpp =================================================================== --- libcxx/test/std/input.output/filesystems/fs.enum/enum.path.format.pass.cpp +++ libcxx/test/std/input.output/filesystems/fs.enum/enum.path.format.pass.cpp @@ -25,7 +25,6 @@ // Check that E is a scoped enum by checking for conversions. typedef std::underlying_type::type UT; - LIBCPP_STATIC_ASSERT(!std::is_convertible::value, ""); LIBCPP_ONLY(static_assert(std::is_same::value, "")); // Implementation detail