
On Mon, Jan 28, 2008 at 10:02:26AM +0300, Alexei Alexandrov wrote:
Alexei Alexandrov wrote:
I also ran the failing use case under valgrind - it showed a number of "conditional jumps on uninitialized value" somewhere deep under libstdc++ and also a couple of "4 bytes uninitialized read". I don't know if it's related to the problem though - I was just trying to do what I can.
The problem is rather serious for me - I'm ready to do whatever it's needed to help the boost.filesystem maintainer (is it you?) investigate and fix the problem.
Beman, is there any way to help with investigating/fixing this issue? I also wonder whether wpath is being tested on Linux as part of Boost test suite? I mean, I'm the only one who reported this problem or just nobody used wchar_t with standard codecvt on Linux so far?
There is simple no need for wchar_t on Linux. If you use a classical encoding in your filesystem it is a 8bit one (except you use a Asian language such as Japanese). All modern distributions switched already to UTF-8 as default encoding and for this you don't need wchar_t as well. Use ordinary char* streams for this ... Remember that you know for UTF-8 always where the current character stops if you just have a pointer to an arbritary byte (in the middle of a multi-byte character). It's also useless to group bytes pairwise as a valid UTF-8 character can consist of more than two bytes. char* is really sufficent. Jens