Skip to content

Commit

Permalink
'fix libc++ hack fp on MSVC abi
Browse files Browse the repository at this point in the history
  • Loading branch information
trcrsired authored and expnkx committed Jun 24, 2024
1 parent 1d1e627 commit 06b4862
Showing 1 changed file with 20 additions and 10 deletions.
30 changes: 20 additions & 10 deletions include/fast_io_legacy_impl/filebuf/fp_hack/libc++symbol.h
Original file line number Diff line number Diff line change
Expand Up @@ -87,46 +87,56 @@ inline constexpr auto compute_libcxx_stdinoutbufname() noexcept
{
if constexpr(::std::same_as<char_type,char>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char>");
}
else if constexpr(::std::same_as<char_type,wchar_t>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<wchar_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<wchar_t>");
}
else if constexpr(::std::same_as<char_type,char8_t>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char8_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char8_t>");
}
else if constexpr(::std::same_as<char_type,char16_t>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char16_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char16_t>");
}
else
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char32_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdoutbuf<char32_t>");
}
}
else
{
if constexpr(::std::same_as<char_type,char>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char>");
}
else if constexpr(::std::same_as<char_type,wchar_t>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<wchar_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<wchar_t>");
}
else if constexpr(::std::same_as<char_type,char8_t>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char8_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char8_t>");
}
else if constexpr(::std::same_as<char_type,char16_t>)
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char16_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char16_t>");
}
else
{
return ::fast_io::details::compute_libcxx_msvcabi_symbol(u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char32_t>");
return ::fast_io::details::compute_libcxx_msvcabi_symbol(
u8"class std::" FAST_IO_LIBCPP_ABI_NAMESPACE_STR u8"::__stdinbuf<char32_t>");
}
}
}
Expand Down

0 comments on commit 06b4862

Please sign in to comment.