diff options
author | Stephan T. Lavavej <stl@nuwen.net> | 2023-12-06 06:04:06 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-06 09:04:06 -0500 |
commit | 3aee4a96289b32386d1a6ccda9bc6bf4fff40e13 (patch) | |
tree | 1de2f58e9e57b4dbf816e3b6281824bc40e7d4df /llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | |
parent | bcb917eba70b454a3d11010c45889c364fd4d9ec (diff) | |
download | llvm-3aee4a96289b32386d1a6ccda9bc6bf4fff40e13.zip llvm-3aee4a96289b32386d1a6ccda9bc6bf4fff40e13.tar.gz llvm-3aee4a96289b32386d1a6ccda9bc6bf4fff40e13.tar.bz2 |
[libc++] Update <source_location> and msvc_stdlib_force_include.h (#74266)
This makes libc++'s <filesystem> tests compatible with MSVC's STL.
In msvc_stdlib_force_include.h, we need to define 3 more macros:
- _CRT_DECLARE_NONSTDC_NAMES activates the POSIX names of
`getcwd` etc. As the comment explains, we need this because
we test with Clang `-fno-ms-compatibility`, which defines
`__STDC__` to `1`, which causes the UCRT headers to disable
the POSIX names by default.
- Then we need _CRT_NONSTDC_NO_WARNINGS to avoid emitting
deprecation warnings about the POSIX names.
- Finally, we need `NOMINMAX` to seal away the ancient evil.
These macros are documented in https://learn.microsoft.com/en-us/cpp/c-runtime-library/compatibility?view=msvc-170.
As a drive-by change, the patch adds a "simulated" macro for
__has_feature(hwaddress_sanitizer). It also clang-formats all
of msvc_stdlib_force_include.h and removes guards for
__has_builtin(__builtin_source_location) in <source_location>,
since those are not needed anymore.
Diffstat (limited to 'llvm/lib/Analysis/ModuleSummaryAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions