fix ambigous olverloads for compiled format

This commit is contained in:
Daumantas Kavolis 2019-09-26 15:36:56 +01:00
parent 5f49bf1fab
commit 45a1990bab
2 changed files with 4 additions and 2 deletions

View File

@ -1409,7 +1409,8 @@ inline std::basic_string<Char> vformat(
*/
// Pass char_t as a default template parameter instead of using
// std::basic_string<char_t<S>> to reduce the symbol size.
template <typename S, typename... Args, typename Char = char_t<S>>
template <typename S, typename... Args, typename Char = char_t<S>,
FMT_ENABLE_IF(internal::is_string<S>::value)>
inline std::basic_string<Char> format(const S& format_str, Args&&... args) {
return internal::vformat(
to_string_view(format_str),

View File

@ -3351,7 +3351,8 @@ inline typename buffer_context<Char>::iterator vformat_to(
}
template <typename S, typename... Args, std::size_t SIZE = inline_buffer_size,
typename Char = enable_if_t<internal::is_string<S>::value, char_t<S>>>
typename Char = char_t<S>,
FMT_ENABLE_IF(internal::is_string<S>::value)>
inline typename buffer_context<Char>::iterator format_to(
basic_memory_buffer<Char, SIZE>& buf, const S& format_str, Args&&... args) {
internal::check_format_string<Args...>(format_str);