Fix handling of usual deallocation functions in various configuratios.
authorEric Fiselier <eric@efcs.ca>
Sun, 3 Feb 2019 03:44:31 +0000 (03:44 +0000)
committerEric Fiselier <eric@efcs.ca>
Sun, 3 Feb 2019 03:44:31 +0000 (03:44 +0000)
commit24a2a48bc2e042ca9684d5dfb71e4a28a12a32b0
tree1f4713b29b4345ae3241dff62f33dd8a4b2a377a
parent888aa5dedd84c244c67c167e1ef0613bff879123
Fix handling of usual deallocation functions in various configuratios.

Clang allows users to enable or disable various types of allocation
and deallocation regardless of the C++ dialect. When extended new/delete
overloads are enabled in older dialects, we need to treat them as if
they're usual.

Also, disabling one usual deallocation form shouldn't
disable any others. For example, disabling aligned allocation in C++2a
should have no effect on destroying delete.

llvm-svn: 352980
clang/lib/AST/DeclCXX.cpp
clang/test/SemaCXX/cxx2a-destroying-delete.cpp
clang/test/SemaCXX/extended-usual-deallocation-functions.cpp [new file with mode: 0644]