id summary reporter owner description type status milestone component version severity resolution keywords cc 7211 path_locale destructor crashes when overloaded operator new and delete are present Michel Lemay Beman Dawes "path_locale is defined using this construct in path.cpp: std::locale path_locale(std::locale(), new windows_file_codecvt); Under the debugger of VC10/11, the destructor of std::locale calls free() for this facet pointer when refcount reaches 0. I ackknowledge this is a bug in dinkumware implementation of the microsoft STL. See for mor information: http://connect.microsoft.com/VisualStudio/feedback/details/750951/std-locale-implementation-in-crt-assumes-all-facets-to-be-allocated-on-crt-heap-and-crashes-in-destructor-in-debug-mode-if-a-facet-was-allocated-by-a-custom-allocator That said, I suggest a workaround made using only standard calls. in v3/src/windows_file_codecvt.hpp, change the constructor to pass along default refcount: explicit windows_file_codecvt(size_t refs = 0) : std::codecvt(refs) {} and in v3/src/path.cpp, define path_locale like this: windows_file_codecvt windows_cvt_path_locale(1); std::locale path_locale(std::locale(), &windows_cvt_path_locale); " Bugs new To Be Determined filesystem Boost 1.51.0 Problem