Skip to content

Commit 13fb18e

Browse files
committed
Fix ambiguity in value_traits partial specializations for float.
Fixes #83.
1 parent fb39c14 commit 13fb18e

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

examples/conversions.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,5 +53,8 @@ int main()
5353

5454
root->get_as<int64_t>("medium-negative");
5555

56+
root->insert("float", 0.1f);
57+
root->get_as<double>("float");
58+
5659
return 0;
5760
}

include/cpptoml.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,7 @@ template <class T>
331331
struct value_traits<
332332
T, typename std::enable_if<
333333
!valid_value_or_string_convertible<T>::value
334+
&& !std::is_floating_point<typename std::decay<T>::type>::value
334335
&& std::is_signed<typename std::decay<T>::type>::value>::type>
335336
{
336337
using value_type = int64_t;

0 commit comments

Comments
 (0)