I am trying to find memcmp , but it seems not existing with Island RTL.
Instead, I found RtlCompareMemory, it seems to be a substitute for memcmp. But the return value of RtlCompareMemory doesn’t seem to be right - if two blocks of memory are the same, I would expect RtlCompareMemory returns 0 (just like memcmp does), but it will return the size of the memory. For example:
var a: Int64 := 1000;
var b: Int64 := 1000;
RtlCompareMemory(@a, @b, 8) will return 8, instead of 0. Is this intended? It is definitely not compatible with memcmp, which begs for another question: where is memcmp?
The problem is that the Windows doesn’t have a C runtime. VC has one, but it’s not distributed with Windows by default. I’ll be implementing this one in the rtl.
Grab latest IslandRTL to fix (or wait for the build).