This revision was automatically updated to reflect the committed changes.
Closed by commit rL315234: [libc++] Support Microsoft ABI without vcruntime
headers (authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D38522?vs=117613&id=118251#toc
Repository:
rL LLVM
https://r
smeenai accepted this revision.
smeenai added a comment.
This revision is now accepted and ready to land.
I spoke to @EricWF on IRC last week and got his approval to commit this without
review if no one had gotten to it in a couple of days, so I'm going ahead with
that.
https://reviews.llvm.or
smeenai added inline comments.
Comment at: src/support/runtime/exception_msvc.ipp:31
+extern "C" {
+typedef void(__CRTDECL* terminate_handler)();
+_ACRTIMP terminate_handler __cdecl set_terminate(
smeenai wrote:
> compnerd wrote:
> > Really? clang-format removes
smeenai added a comment.
In https://reviews.llvm.org/D38522#887768, @compnerd wrote:
> Why do we expect the tests to fail without vcruntime headers?
msvcrt's implementations of the various new/delete operators call
`__scrt_throw_std_bad_alloc` and `__scrt_throw_std_bad_array_new_length`, which
compnerd added a comment.
Why do we expect the tests to fail without vcruntime headers?
Comment at: src/support/runtime/exception_msvc.ipp:31
+extern "C" {
+typedef void(__CRTDECL* terminate_handler)();
+_ACRTIMP terminate_handler __cdecl set_terminate(
Really?
smeenai updated this revision to Diff 117613.
smeenai added a comment.
Remove SAL annotations as well; they're unneeded and add a header dependency
https://reviews.llvm.org/D38522
Files:
CMakeLists.txt
docs/UsingLibcxx.rst
include/__config_site.in
include/exception
include/new
src/n
smeenai created this revision.
Herald added a subscriber: mgorny.
The vcruntime headers are hairy and clash with both libc++ headers
themselves and other libraries. libc++ normally deals with the clashes
by deferring to the vcruntime headers and silencing its own definitions,
but for clients which