Skip to content

<filesystem>: LWG-3430 - std::fstream & co. should be constructible from string_view #5313

@tiagomacarios

Description

@tiagomacarios

After updating to Xcode 16.3 we are seeing various breaks with filesystem::path. We believe this is due to:

Xcode 16.3 release notes

LWG3430 has been implemented which disallows implicit conversion of the source arguments to std::filesystem::path when constructing std::basic_*fstream. This effectively removes the possibility to directly construct a std::basic_*fstream from a std::basic_string_view, a input-iterator or a C-string, instead you can construct a temporary std::basic_string. This change has been applied to C++17 and later.

LWG3430 - std::fstream & co. should be constructible from string_view

It looks like the MSVC STL is the only STL that does not implement this change which causes a fair bit of headache for large codebase that need cross-platform compatibility. Would it be possible to implement it?

Metadata

Metadata

Assignees

No one assigned

    Labels

    invalidThis issue is incorrect or by design

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions