From: Paul F. <pj...@wa...> - 2024-12-12 20:40:52
|
On 12/12/2024 12:18, 罗勇刚(Yonggang Luo) wrote: > > > On Thu, Dec 12, 2024 at 7:24 PM Mark Wielaard <ma...@kl...> wrote: > > > > On Thu, Dec 12, 2024 at 03:36:26PM +0800, 罗勇刚(Yonggang Luo) wrote: > > > Any reviews? I think this can be get merged > > > > There were a couple of questions which I am not sure I saw an answer > > to. Could you explain how you tested? Why aren't you creating a new > > section for win64? You are adding it as a variant of 64bit > This is already the section for win64/mingw > > > linux/freebsd, but then need to change the data type of some, why is > sizeof(unsigned long int) === 8*8 on linux/freebsd, but > sizeof(unsigned long int) === 4*8 on PLAT_amd64_win64(mingw/msvc) > mingw > > > that OK for the existing platforms? The patch Bart added for win32 > > used uintptr, which seems a better data type than long long. > uintptr is fine, but I am not sure every compiler have ` uintptr_t`, that depends on header file > > `unsigned long long it` is always safe for every compiler(without no need the header) No it isn't. All variations of "long long" were added with C99. https://en.cppreference.com/w/c/language/arithmetic_types I would be very surprised if there aren't people still using the Valgrind headers and compiling with c90. I think that the type used should either be compatible with the oldest compilers (along the lines Mark’s suggestion) or else there should be a separate section for win32 non-__GNUC__. I'll have a look at Dr Memory. I think that it uses the same mechanism for client requests and also supports Windows. A+ Paul |