| //===----------------------------------------------------------------------===// |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
| // See https://llvm.org/LICENSE.txt for license information. |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| //===----------------------------------------------------------------------===// |
| // UNSUPPORTED: c++98, c++03, c++11, c++14 |
| // plate <class charT, class traits = char_traits<charT> > |
| // explicit basic_ofstream(const filesystem::path& s, ios_base::openmode mode = ios_base::out); |
| #include "platform_support.h" |
| namespace fs = std::filesystem; |
| fs::path p = get_temp_file_name(); |
| static_assert(!std::is_convertible<fs::path, std::ofstream>::value, |
| "ctor should be explicit"); |
| static_assert(std::is_constructible<std::ofstream, fs::path const&, |
| std::ios_base::openmode>::value, |
| std::ifstream stream(p, std::ios_base::out); |
| std::wofstream stream(p); |
| std::wifstream stream(p); |
| std::wifstream stream(p, std::ios_base::out); |