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

Wang Pengcheng via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 19 23:50:16 PDT 2024


wangpc-pp 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.

So should I wait for landing this PR or is there a workaround to fix this problem?

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


More information about the cfe-commits mailing list