xref: /llvm-project/libcxx/test/support/wide_temp_file.h (revision bc8f007fe045139dde244b2374b851f93cc7ed3c)
1*bc8f007fSLouis Dionne //===----------------------------------------------------------------------===//
2*bc8f007fSLouis Dionne //
3*bc8f007fSLouis Dionne // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*bc8f007fSLouis Dionne // See https://llvm.org/LICENSE.txt for license information.
5*bc8f007fSLouis Dionne // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*bc8f007fSLouis Dionne //
7*bc8f007fSLouis Dionne //===----------------------------------------------------------------------===//
8*bc8f007fSLouis Dionne 
9*bc8f007fSLouis Dionne #ifndef TEST_SUPPORT_WIDE_TEMP_FILE_H
10*bc8f007fSLouis Dionne #define TEST_SUPPORT_WIDE_TEMP_FILE_H
11*bc8f007fSLouis Dionne 
12*bc8f007fSLouis Dionne #include <codecvt>
13*bc8f007fSLouis Dionne #include <locale>
14*bc8f007fSLouis Dionne #include <string>
15*bc8f007fSLouis Dionne 
16*bc8f007fSLouis Dionne #include "platform_support.h"
17*bc8f007fSLouis Dionne #include "test_macros.h"
18*bc8f007fSLouis Dionne 
19*bc8f007fSLouis Dionne TEST_DIAGNOSTIC_PUSH
20*bc8f007fSLouis Dionne TEST_CLANG_DIAGNOSTIC_IGNORED("-Wdeprecated-declarations")
21*bc8f007fSLouis Dionne TEST_GCC_DIAGNOSTIC_IGNORED("-Wdeprecated-declarations")
get_wide_temp_file_name()22*bc8f007fSLouis Dionne inline std::wstring get_wide_temp_file_name() {
23*bc8f007fSLouis Dionne     return std::wstring_convert<std::codecvt_utf8_utf16<wchar_t> >().from_bytes(get_temp_file_name());
24*bc8f007fSLouis Dionne }
25*bc8f007fSLouis Dionne TEST_DIAGNOSTIC_POP
26*bc8f007fSLouis Dionne 
27*bc8f007fSLouis Dionne #endif // TEST_SUPPORT_WIDE_TEMP_FILE_H
28