On Wed, Nov 07, 2007 at 11:08:54PM +0100, Abdelrazak Younes wrote: > Abdelrazak Younes wrote: >> Andre Poenitz wrote: >>> On Wed, Nov 07, 2007 at 11:53:06AM +0100, Enrico Forestieri wrote: >>>> On Wed, Nov 07, 2007 at 10:55:23AM +0100, Stefan Schimanski wrote: >>>> >>>>> This commit breaks the MathStream class. You get plenty of ascii codes >>>>> if you copy a part of a formula and insert it, e.g. \frac becomes >>>>> 92frac. Reverting the MathStream part of the commit fixes it. >>>> This only happens when USE_WCHAR_T is not defined, and I think that >>>> the culprit is the following line in strfwd.h: >>>> >>>> template<> struct char_traits<wchar_t>; >>>
There's some traits specific to your implementation missing. >>> template<> struct char_traits<lyx::char_type> ? >> Most probably yes. > > Hum, perhaps not: Bad. That's what I committed now. > ------ Build started: Project: lyx, Configuration: Release Win32 ------ > Compiling... > TextClass.cpp > C:\Program Files\Microsoft Visual Studio 8\VC\include\xstring(1210) : error > C2780: '_Traits::char_type *std::_Traits_helper::move_s(_Traits::char_type > *,size_t,const _Traits::char_type *,size_t,std::_Unsecure_char_traits_tag)' > : expects 5 arguments - 4 provided > C:\Program Files\Microsoft Visual Studio 8\VC\include\iosfwd(624) : > see declaration of 'std::_Traits_helper::move_s' > C:\Program Files\Microsoft Visual Studio 8\VC\include\xstring(1202) > : while compiling class template member function > 'std::basic_string<_Elem,_Traits,_Ax> > &std::basic_string<_Elem,_Traits,_Ax>::erase(unsigned int,unsigned int)' > with > [ > _Elem=lyx::char_type, > _Traits=std::char_traits<lyx::char_type>, > _Ax=std::allocator<lyx::char_type> > ] > d:\devel\lyx\trunk\src\support/docstring.h(63) : see reference to > class template instantiation 'std::basic_string<_Elem,_Traits,_Ax>' being > compiled > with > [ > _Elem=lyx::char_type, > _Traits=std::char_traits<lyx::char_type>, > _Ax=std::allocator<lyx::char_type> > ] > C:\Program Files\Microsoft Visual Studio 8\VC\include\xstring(1210) : error > C2780: '_Traits::char_type *std::_Traits_helper::move_s(_Traits::char_type > *,size_t,const _Traits::char_type *,size_t,std::_Secure_char_traits_tag)' : > expects 5 arguments - 4 provided > C:\Program Files\Microsoft Visual Studio 8\VC\include\iosfwd(614) : > see declaration of 'std::_Traits_helper::move_s' > C:\Program Files\Microsoft Visual Studio 8\VC\include\xstring(1210) : error > C2770: invalid explicit template argument(s) for '_Traits::char_type > *std::_Traits_helper::move_s(_Traits::char_type *,size_t,const > _Traits::char_type *,size_t)' > C:\Program Files\Microsoft Visual Studio 8\VC\include\iosfwd(606) : > see declaration of 'std::_Traits_helper::move_s' There's some traits specific to your implementation missing. Would #include "support/docstring.h" in TextClass.cpp help? Andre'