From: Fangrui Song Date: Mon, 1 Oct 2018 17:21:07 +0000 (+0000) Subject: Remove redundant null pointer check in operator delete X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=7cd67904f776;p=android-x86%2Fexternal-llvm-project.git Remove redundant null pointer check in operator delete Summary: C89 4.10.3.2 The free function C99 7.20.3.2 The free function C11 7.22.3.3 The free function If ptr is a null pointer, no action shall occur. _aligned_free on MSDN: If memblock is a NULL pointer, this function simply performs no actions. Reviewers: EricWF, mclow.lists, khng300, hotpxl Reviewed By: mclow.lists, khng300, hotpxl Subscribers: lichray, llvm-commits, hotpxl, khng300, christof, ldionne, cfe-commits, libcxx-commits Differential Revision: https://reviews.llvm.org/D52401 llvm-svn: 343503 --- diff --git a/libcxx/src/new.cpp b/libcxx/src/new.cpp index 8013d89ae3c..35f481db08a 100644 --- a/libcxx/src/new.cpp +++ b/libcxx/src/new.cpp @@ -135,8 +135,7 @@ _LIBCPP_WEAK void operator delete(void* ptr) _NOEXCEPT { - if (ptr) - ::free(ptr); + ::free(ptr); } _LIBCPP_WEAK @@ -257,11 +256,10 @@ _LIBCPP_WEAK void operator delete(void* ptr, std::align_val_t) _NOEXCEPT { - if (ptr) #if defined(_LIBCPP_MSVCRT_LIKE) - ::_aligned_free(ptr); + ::_aligned_free(ptr); #else - ::free(ptr); + ::free(ptr); #endif }