This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Does --enable-clocale=gnu work on Linux/ia64?


On Sat, Nov 24, 2001 at 08:36:12PM -0800, Benjamin Kosnik wrote:
> 
> > Well, I tried --enable-clocale=gnu again with gcc-3.1 from CVS on
> > Linux/ia64. Now I got this problem:
> > 
> >    _Intl>::_M_initialize_moneypunct(__locale_struct*) [with _CharT = wchar_t, 
> >    bool _Intl = false]':
> > moneypunct.cc:401: reinterpret_cast from `char*' to `wchar_t' loses precision
> > moneypunct.cc:402: reinterpret_cast from `char*' to `wchar_t' loses precision
> > numpunct.cc: In member function `void 
> >    std::numpunct<_CharT>::_M_initialize_numpunct(__locale_struct*) [with _CharT 
> >    = wchar_t]':
> > numpunct.cc:80: reinterpret_cast from `char*' to `wchar_t' loses precision
> > numpunct.cc:81: reinterpret_cast from `char*' to `wchar_t' loses precision
> > make[5]: *** [numpunct.lo] Error 1
> > make[5]: *** Waiting for unfinished jobs....
> 
> Which is this:
>   _M_decimal_point = 
> reinterpret_cast<wchar_t>(__nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, 
> __cloc));
> 
> 
> Why does this work on x86 but not ia64?
> 
>  > > Has anyone tried --enable-clocale=gnu on Linux/ia64?
> 
> Nope. It seems to work on powerpc though.

Well, on x86 and powerpc, wchar_t is long int. Gcc won't complain about
casting from char* to wchar_t. However, on ia64, wchar_t is int. Gcc is
not very happy. I think that part of libstdc++ is pretty much broken.


H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]