Closed GoogleCodeExporter closed 8 years ago
Even with the patch there's still an issue with traits.h and VS2002, which I
have no clue how to fix:
include\yaml-cpp\traits.h(38) : error C2065: 'T' : undeclared identifier
include\yaml-cpp\traits.h(38) : error C2687: cannot define a nested UDT of a
template class out of line
include\yaml-cpp\traits.h(38) : fatal error C1903: unable to recover from
previous error(s); stopping compilation
Code is:
template <class T>
struct enable_if_c<false, T> {};
Original comment by matthias...@gmail.com
on 10 Jan 2011 at 6:33
It turned out that defining LONGLONG macro collides with newer Windows SDKs.
Use direct replacement instead.
Original comment by matthias...@gmail.com
on 10 Jan 2011 at 7:47
Attachments:
On a related note:
In gcc with the -pedantic flag, you get the error
yaml-cpp-0.2.5/include/traits.h:20: error: ISO C++ 1998 does not support `long
long'
Maybe using typedefs such as uint64_t from stdint.h will provide more defined
behavior?
Original comment by david130...@gmail.com
on 25 Jan 2011 at 10:50
Hi David, "gcc" is a little bit unspecific.
On Windows under MinGW I could compile it with GCC 3.2.3 and GCC 4.5.0 without
any issues.
Only experienced this "long long not allowed" issue with Visual C++ 2002 and
earlier.
Original comment by matthias...@gmail.com
on 26 Jan 2011 at 5:16
Fixed, r435.
To confirm: with the patch listed above, you no longer get that compiler error
listed in comment 1 (http://code.google.com/p/yaml-cpp/issues/detail?id=90#c1)?
Original comment by jbe...@gmail.com
on 2 Mar 2011 at 5:17
Original issue reported on code.google.com by
matthias...@gmail.com
on 10 Jan 2011 at 6:10