Files
clang-p2996/llvm/lib/Support/MemAlloc.cpp
Josh Stone b80965efc1 [Support] Report OOM from allocate_buffer (#85449)
Previously, it called `::operator new` which may throw `std::bad_alloc`,
regardless of whether LLVM itself was built with exception handling, and
this can cause safety issues if outside code has destructors that will
call back into LLVM. Now we use `::operator new(..., nothrow)` and call
`llvm::report_bad_alloc_error` when allocation fails, which will abort
when LLVM is built without exceptions.

Ref: https://github.com/llvm/llvm-project/issues/85281
2025-01-27 09:04:43 -08:00

1.2 KiB