diff --git a/microsoft_vcpp.html b/microsoft_vcpp.html index bfde08d..7f7acbb 100644 --- a/microsoft_vcpp.html +++ b/microsoft_vcpp.html @@ -267,8 +267,30 @@ types, as is required by the standard, and so ambiguities may emanate when overloading on wchar_t. The macro BOOST_NO_INTRINSIC_WCHAR_T is defined in this situation. -

-Standard Library

+ +

[delete-const-pointer] Deleting const X * does not work

+ +Trying to delete a pointer to a cv-qualified type gives an error: +
+void f()
+{
+  const int *p = new int(5);
+  delete p;        // C2664: cannot convert from "const int *" to "void *"
+}
+
+ +Workaround: Define the function +
+inline void operator delete(const void *p) throw()
+{ operator delete(const_cast<void*>(p)); }
+
+and similar functions for the other cv-qualifier combinations, for +operator delete[], and for the std::nothrow variants. + + + +

Standard Library

+

[clib-namespace] C library names in global namespace instead of std

Library names from the <c...> headers are in the global namespace instead of namespace std.

Workaround:  The header boost/config.hpp