Remove workarounds for Visual Studio before 2017
Since Mbed TLS 3.6.0, we no longer officially support Visual Studio versions older than 2017. In practice, our code base still has workarounds for Visual Studio 2013 and Visual Studio 2015, and up to 3.6.3 they were still needed because we were testing with VS 2013 on the CI, but we now only test with VS 2017.
The goal of this issue is to remove workarounds for Visual Studio 2013 and 2015 from the development branches of TF-PSA-Crypto and Mbed TLS (which will become 1.x and 4.x). The 3.6 branch is out of scope because we shouldn't make LTS branches less portable, even to officially unsupported platforms.
@gilles-peskine-arm Do you have specific examples in mind? How do we find these workarounds that we can now remove?
I don't have an exhaustive list. git grep '_MSC_VER [<>]' turns up a few things but it's mostly comparing to 1900 or above (i.e. 2019 or above). There's just one with 1700 in platform_util.h.
I thought we had a printf-related workaound that was no longer needed in MSVC 2017, but I might be misremembering. I thought it was https://github.com/Mbed-TLS/TF-PSA-Crypto/blob/cf4c26de948e8bfe6566dd8b78299df4b627127d/include/mbedtls/platform.h#L50 but apparently that's still needed in 2017.