On Nov 10, 8:38 am, "jason" <ja...@njkfrudils.plus.com> wrote:
> The fix that Brian and I did for the locale for C should also work for C++
> as in tests/cxx/clocale.c there is the same over-riding definition of
> localeconv , so I think that the same exclusions should apply ie the C
> version
> #if ! (defined(__MINGW64__) || (defined(_MSC_VER) && _MSC_VER < 1500))
> #if HAVE_LOCALECONV
> #ifdef _MSC_VER
> __GMP_DECLSPEC
> #endif
> struct lconv *
> localeconv (void)
> {
>   static struct lconv  l;
>   l.decimal_point = decimal_point;
>   return &l;}
>
> #endif
> #endif
>
> and the present C++ version
>
> #if HAVE_LOCALECONV
> struct lconv *
> localeconv (void)
> {
>   static struct lconv  l;
>   l.decimal_point = point_string;
>   return &l;}
>
> #endif
>
> So if I change the C++ version so it is the same as the C version , then it
> should "pass" the tests.
> Brian is this the right fix for MSVC ?
> I'll test it on mingw64 now
>
> Jason
>
>
>
>
>
>
>
> ----- Original Message -----
> From: "jason" <ja...@njkfrudils.plus.com>
> To: <mpir-devel@googlegroups.com>
> Sent: Wednesday, November 10, 2010 8:18 AM
> Subject: Re: [mpir-devel] Re: MPIR-2.2.0-rc1 released
>
> > On nehalem-w64-mingw32
>
> > /lib
> > /bin/sh ../../libtool --tag=CXX   --mode=link
> > g++  -O2 -m64 -march=core2 -mtune=
> > core2   -o t-unary.exe t-unary.o -L../../.libs ../../tests/libtests.la
> > ../../lib
> > mpirxx.la ../../libmpir.la
> > c:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.6.0/../../../../x86_64-w64-min 
> > gw32/
> > lib/../lib/libmsvcrt.a(dusfs00649.o):(.text+0x0): multiple definition of
> > `locale
> > conv'
> > clocale.o:clocale.c:(.text+0x0): first defined here
> > collect2: ld returned 1 exit status
> > make[4]: *** [t-locale.exe] Error 1
> > make[4]: *** Waiting for unfinished jobs....
> > libtool: link: g++ -O2 -m64 -march=core2 -mtune=core2 -o
> > t-misc.exe -misc.o  -L
> > /c/cygwin/home/root/BOX11/.libs ../../tests/.libs/libtests.a
> > ../../.libs/libmpir
> > xx.a 
> > -L/c/bb/vista64-mingw32/mingw-x86-x86_64/build/build/gcc/obj/x86_64-w64-min
>
> > Clearly C++ handles the locale differently than the plain C , because I
> > fixed that case , this should be an easy fix I hope , my knowledge of C++
> > is minimal
>
> > Jason
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "mpir-devel" group.
> > To post to this group, send email to mpir-de...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > mpir-devel+unsubscr...@googlegroups.com.
> > For more options, visit this group at
> >http://groups.google.com/group/mpir-devel?hl=en.

Hi Jason,

The MSVC version makes no use of the clocale.c file since locale
replacement just works in C++ 'out of the box' so we don't need to
fake it.

   Brian

-- 
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-de...@googlegroups.com.
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en.

Reply via email to