[PATCH] D157227: [Clang] Don't add `undef` for `operator new` under -fno-exceptions.

DianQK via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Aug 6 04:59:48 PDT 2023


DianQK created this revision.
Herald added subscribers: atanasyan, jrtc27.
Herald added a reviewer: aaron.ballman.
Herald added a project: All.
DianQK requested review of this revision.
Herald added subscribers: cfe-commits, wangpc.
Herald added a project: clang.

The current implementation of `operator new` under -fno-exceptions returns`nullptr`.
This is undefined behavior. D150610 <https://reviews.llvm.org/D150610> may take longer to complete.
Removing the undef attribute may be a solution without changing libcxx.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D157227

Files:
  clang/include/clang/Basic/Attr.td
  clang/lib/CodeGen/CGCall.cpp
  clang/lib/Sema/SemaDecl.cpp
  clang/lib/Sema/SemaExprCXX.cpp
  clang/test/CodeGen/noundef-analysis.cpp
  clang/test/CodeGenCXX/aix-alignment.cpp
  clang/test/CodeGenCXX/align-avx-complete-objects.cpp
  clang/test/CodeGenCXX/builtin-calling-conv.cpp
  clang/test/CodeGenCXX/builtin-is-constant-evaluated.cpp
  clang/test/CodeGenCXX/builtin-operator-new-delete.cpp
  clang/test/CodeGenCXX/cxx11-initializer-array-new.cpp
  clang/test/CodeGenCXX/cxx1z-aligned-allocation.cpp
  clang/test/CodeGenCXX/delete-two-arg.cpp
  clang/test/CodeGenCXX/microsoft-abi-array-cookies.cpp
  clang/test/CodeGenCXX/mips-size_t-ptrdiff_t.cpp
  clang/test/CodeGenCXX/multi-dim-operator-new.cpp
  clang/test/CodeGenCXX/new-alias.cpp
  clang/test/CodeGenCXX/new-array-init.cpp
  clang/test/CodeGenCXX/new-infallible.cpp
  clang/test/CodeGenCXX/new-overflow.cpp
  clang/test/CodeGenCXX/new.cpp
  clang/test/CodeGenCXX/new_hot_cold.cpp
  clang/test/CodeGenCXX/operator-new.cpp
  clang/test/CodeGenCXX/static-init.cpp
  clang/test/CodeGenCoroutines/coro-alloc.cpp
  clang/test/CodeGenCoroutines/coro-gro.cpp
  clang/test/CodeGenCoroutines/coro-gro2.cpp
  clang/test/CodeGenCoroutines/coro-return.cpp
  clang/test/CodeGenObjCXX/arc-new-delete.mm
  clang/test/CodeGenObjCXX/copy.mm
  clang/test/OpenMP/reduction_implicit_map.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D157227.547565.patch
Type: text/x-patch
Size: 49528 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230806/9f5c90f4/attachment-0001.bin>


More information about the cfe-commits mailing list