28 Aug
2019
28 Aug
'19
5:55 p.m.
Is UINT_MAX really supposed to fail? Otherwise you need an errno check. Either way, some more test cases would be a good idea.
For the given test for 4GB: on 32-bit, strtoulW returns 32-bit ULONG_MAX and sets errno to ERANGE on 64-bit, strtoulW returns 0x100000000 and does not set errno since the return is DWORD, I chose UINT_MAX since it's the same for both 32 and 64-bit and shortened the check to just "value >= UINT_MAX" will add more tests, though thanks daniel