std::localeobject. All Boost.Locale tools relay on
std::localeobject's facets. The locale object should be generated with generator class and then passed to the function or alternatively global locale should be set using
std::locale::global()function such that global locale (and default created one) would have required facets to use.
iostreamobjects. Thus because
std::outand other global streams were created before changing the global locale Boost.Locale manipulators have no effect. You need to write: