[clang] [clang-tools-extra] [libcxx] [clang] Enable sized deallocation by default in C++14 onwards (PR #83774)

Vassil Vassilev via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 19 15:08:47 PDT 2024


vgvassilev wrote:

> Not entirely certain what you're asking, but MSVC CRT does have a definition for sized delete:
> 
> ```
> _CRT_SECURITYCRITICAL_ATTRIBUTE
> void __CRTDECL operator delete(void* const block, size_t const) noexcept
> {
>     operator delete(block);
> }
> ```
> 
> in `crt\src\vcruntime\delete_scalar_size.cpp`

In that case for this test (or likely the entire interpreter library) we will have export that symbol with the linker. Something similar is done here: https://github.com/llvm/llvm-project/pull/84769/files#diff-d7f5dca2bd540f1b18ba90a66497b6b12e40fd07058b70f0fdec638c8e97406eR14-R71 as part of #84769. Unfortunately, this is the only reliable way as of today to export crt symbols to the JIT. cc: @lhames, @fsfod.


https://github.com/llvm/llvm-project/pull/83774


More information about the cfe-commits mailing list