On Mon, 3 May 2021, Martin Storsjö wrote:

On Mon, 3 May 2021, Christian Franke wrote:

Liu Hao wrote:
在 2021-05-03 14:49, Martin Storsjö 写道:

Just for the record - I wouldn't mind applying the patch or something like it. I agree with the arguments that it would be beneficial to get more precision here, even if one in general maybe can argue that we don't strictly need to provide such precision.


Oh fair enough, if you would like it, I don't mind applying it either.


Attached is a new patch with '_Atomic' and 'intptr_t' as requested.

This version actually fails to compile with clang, with errors like these:

../misc/gettimeofday.c:45:74: error: initializer element is not a compile-time constant static _Atomic GetSystemTimeAsFileTime_t GetSystemTimeAsFileTime_p = NULL;

^~~~
/home/martin/clang-trunk/i686-w64-mingw32/include/time.h:91:14: note: expanded from macro 'NULL'
#define NULL ((void *)0)
            ^~~~~~~~~~~

It seems like it's impossible to provide an initializer to an _Atomic variable with clang, if it's a function pointer type, while a regular pointer can be initialized just fine that way.

Well not actually impossible, but impractical.

If you'd use ((GetSystemTimeAsFileTime_t)0) as initializer, instead of NULL (which expands to ((void*)0) ) it does actually seem to work.

// Martin

_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to