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,,,