summaryrefslogtreecommitdiff
path: root/deps/fmt/src/format.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/fmt/src/format.cc')
-rw-r--r--deps/fmt/src/format.cc39
1 files changed, 10 insertions, 29 deletions
diff --git a/deps/fmt/src/format.cc b/deps/fmt/src/format.cc
index 618aa07d0b..66925b4210 100644
--- a/deps/fmt/src/format.cc
+++ b/deps/fmt/src/format.cc
@@ -28,31 +28,6 @@ template FMT_API dragonbox::decimal_fp<float> dragonbox::to_decimal(float x)
FMT_NOEXCEPT;
template FMT_API dragonbox::decimal_fp<double> dragonbox::to_decimal(double x)
FMT_NOEXCEPT;
-
-// DEPRECATED! This function exists for ABI compatibility.
-template <typename Char>
-typename basic_format_context<std::back_insert_iterator<buffer<Char>>,
- Char>::iterator
-vformat_to(buffer<Char>& buf, basic_string_view<Char> format_str,
- basic_format_args<basic_format_context<
- std::back_insert_iterator<buffer<type_identity_t<Char>>>,
- type_identity_t<Char>>>
- args) {
- using iterator = std::back_insert_iterator<buffer<char>>;
- using context = basic_format_context<
- std::back_insert_iterator<buffer<type_identity_t<Char>>>,
- type_identity_t<Char>>;
- auto out = iterator(buf);
- format_handler<iterator, Char, context> h(out, format_str, args, {});
- parse_format_string<false>(format_str, h);
- return out;
-}
-template basic_format_context<std::back_insert_iterator<buffer<char>>,
- char>::iterator
-vformat_to(buffer<char>&, string_view,
- basic_format_args<basic_format_context<
- std::back_insert_iterator<buffer<type_identity_t<char>>>,
- type_identity_t<char>>>);
} // namespace detail
// Workaround a bug in MSVC2013 that prevents instantiation of format_float.
@@ -66,12 +41,15 @@ template FMT_API std::locale detail::locale_ref::get<std::locale>() const;
// Explicit instantiations for char.
-template FMT_API std::string detail::grouping_impl<char>(locale_ref);
-template FMT_API char detail::thousands_sep_impl(locale_ref);
+template FMT_API auto detail::thousands_sep_impl(locale_ref)
+ -> thousands_sep_result<char>;
template FMT_API char detail::decimal_point_impl(locale_ref);
template FMT_API void detail::buffer<char>::append(const char*, const char*);
+// DEPRECATED!
+// There is no correspondent extern template in format.h because of
+// incompatibility between clang and gcc (#2377).
template FMT_API void detail::vformat_to(
detail::buffer<char>&, string_view,
basic_format_args<FMT_BUFFER_CONTEXT(char)>, detail::locale_ref);
@@ -88,10 +66,13 @@ template FMT_API int detail::format_float(long double, int, detail::float_specs,
// Explicit instantiations for wchar_t.
-template FMT_API std::string detail::grouping_impl<wchar_t>(locale_ref);
-template FMT_API wchar_t detail::thousands_sep_impl(locale_ref);
+template FMT_API auto detail::thousands_sep_impl(locale_ref)
+ -> thousands_sep_result<wchar_t>;
template FMT_API wchar_t detail::decimal_point_impl(locale_ref);
template FMT_API void detail::buffer<wchar_t>::append(const wchar_t*,
const wchar_t*);
+
+template struct detail::basic_data<void>;
+
FMT_END_NAMESPACE