By the way using new cvt_byname_t(name,1) instead of new cvt_byname_t(name) does not change anything. Looks sensible since the suggested "double delete" explanation is a "locale" double delete, not a "facet" double delete.