Paul Gofman (@gofman) commented about dlls/msvcrt/tests/printf.c:
ok(!strcmp(buffer,"foo "),"Negative field width ignored \"%s\"\n",buffer); ok( r==5, "return count wrong\n");
+ r = p_sprintf(buffer, "%.*f", 0x80000000, 3.14); + ok(!strcmp(buffer,"3.140000"),"Negative precision ignored \"%s\"\n",buffer); + ok( r==8, "return count wrong\n"); + + r = p_sprintf(buffer, "%.*f", 0x80000000, NAN);
Does it really ignore it or maybe uses just some bits, or checks maximum value (what will it do for 0x7fffffff?) or maybe even that 0x80000000 is meaningful undocuemnted flag? I'd suggest to extend the test with some other values, like 0x80000001 for a start and overall check for more values, even if locally not to overload the test suite with paranoid checks for any possible condition. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10107#note_129704