diff --git a/microsoft_vcpp.html b/microsoft_vcpp.html index 04cee7b..6a95d75 100644 --- a/microsoft_vcpp.html +++ b/microsoft_vcpp.html @@ -130,7 +130,7 @@ loops in another pair of curly braces.

[inclass-member-init] In-class member initialization

-In-class member initialization, require to implement a +In-class member initialization, required to implement a Standard-conforming std::numeric_limits template, does not work. @@ -141,6 +141,10 @@ struct A }; +Workaround: Either use an enum (which has incorrect +type, but can be used in compile-time constant expressions), or define +the value out-of-line (which allows for the correct type, but prohibits +using the constant in compile-time constant expressions).

[koenig-lookup] Argument-dependent lookup

@@ -235,6 +239,9 @@ struct B {}; +Workaround: Leave off the "typename" keyword. That makes +the program non-conforming, though. +

[wchar_t] wchar_t is not built-in

@@ -247,7 +254,7 @@ wchar_t x; // "missing storage class or type identifier" Workaround: When using Microsoft Visual C++, the header boost/config.hpp -includes <cstddef>, which defines defines +includes <cstddef>, which defines wchar_t as a typedef for unsigned short. Note that this means that the compiler does not see wchar_t and unsigned short as distinct