2011/5/8 Sisyphus <[email protected]>:
> Hi,
>
> I have a mingw64 4.6.0 cross-compiler (20100414) which I'm in the process of
> phasing out, as it doesn't comply with MSVC standards regarding the
> decoration of library symbols.
>
> With that compiler, I inserted into both mingw/include/_mingw.h and
> x86_64-w64-mingw32/include/_mingw.h the following line of code:
>
> typedef unsigned int __uint128 __attribute__ ((__mode__ (TI)));
>
> Having done that, the following simple program then compiles and runs fine
> (reporting '16 16'):
>
> ###############################
> #include <stdio.h>
>
> int main(void) {
>    printf("%d %d\n", sizeof(__int128), sizeof(__uint128));
> }
>
> ###############################
>
> Upon upgrading to my new 20110410 (4.7.0) compiler I again made the same
> amendment to both of those _mingw.h files. But, this time, it's not working
> for me ... on attempting to compile the above program I'm getting:
>
> ################################
> C:\_64\c>x86_64-w64-mingw32-gcc -o try.exe try.c
> try.c: In function 'main':
> try.c:5:48: error: '__uint128' undeclared (first use in this function)
> try.c:5:48: note: each undeclared identifier is reported only once for each
> function it appears in
>
> ################################
>
> What accounts for the difference ?
>
> Cheers,
> Rob

Hello Rob,

sorry for coming that late to this thread.  The issue you see here is
that __int128 got in 4.6 a recognized type (means [signed/unsigned]
__int128 are for 64-bit supported.  For 32-bit, due the decision that
TImode (the 128-bit one in gcc) isn't enabled by default - you need to
enable -msse AFAIR - for 32-bit you don't have this type support.
See here for the magic you need to define __uint128 - dependent to
support of target - the magic we use in _mingw.h header. This should
give you a good start to solve you issue.

Regards,
Kai

------------------------------------------------------------------------------
What Every C/C++ and Fortran developer Should Know!
Read this article and learn how Intel has extended the reach of its 
next-generation tools to help Windows* and Linux* C/C++ and Fortran 
developers boost performance applications - including clusters. 
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to