mstorsjo added a comment.

In D67861#1678618 <https://reviews.llvm.org/D67861#1678618>, @labath wrote:

> Judging by the microsoft docs 
> <https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/vsnprintf-vsnprintf-vsnprintf-l-vsnwprintf-vsnwprintf-l?view=vs-2017>,
>  `vsnprintf` is avaliable at least since VS 2017 (the lowest version 
> supported by llvm). Is it possible that we can just delete this `#ifdef` ?


Yes, it would seem so.

With MSVC, you got an MSVC-specific version of the CRT, and with the versions 
of MSVC we require, it is a C99 compliant one.

With MinGW, you can link either against the UCRT (the same modern CRT as MSVC 
uses these days) or msvcrt.dll (the old legacy one, shipped as a part of the 
OS). But I checked that this use of `vsnprintf(NULL, 0, ...)` does seem to work 
with the old msvcrt.dll since at least XP (and llvm requires a much newer 
version of Windows anyway), so I would say that it should be safe.


Repository:
  rLLDB LLDB

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67861/new/

https://reviews.llvm.org/D67861



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to