Well, I found this
define sprintf libintl_sprintf
so its not sprintf being called but libintl_sprintf. I imagine that means the compile doesn't know to check the arguments.
That was it
This line of code isn't generating any errors:
sprintf(szErrFmtStr, "Failed to connect to %s");
shouldn't this generate C4473 - not enough arguments passed for format string
Or am I missing something? The code compiles without warnings, but gives an access violation when executed. It doesn't look like the warning is disabled.
I'm compiling with VS2019, warning level set to 4.
I'm pretty sure that I saw it with visual studio a few weeks ago in this same code. I disabled it then because I had higher priority stuff to deal with. Just reenabled it and it doesn't generate anymore.
MS just released an update. Let me see what that does
Nope. Still not getting a warning