aboutsummaryrefslogtreecommitdiff
path: root/test/SemaCXX/new-delete-cxx0x.cpp
AgeCommit message (Collapse)Author
2012-02-16Proper checking of list-initializers for array new expressions.Sebastian Redl
This finishes generalized initializer support in Sema. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150688 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-04Fix a rejects-valid in C++11: array new of a negative size, or overflowing arrayRichard Smith
new, is well-formed with defined semantics of throwing (a type which can be caught by a handler for) std::bad_array_new_length, unlike in C++98 where it is somewhere nebulous between undefined behavior and ill-formed. If the array size is an integral constant expression and satisfies one of these criteria, we would previous the array new expression, but now in C++11 mode, we merely issue a warning (the code is still rejected in C++98 mode, naturally). We don't yet implement new C++11 semantics correctly (see PR11644), but we do implement the overflow checking, and (for the default operator new) convert such expressions to an exception, so accepting such code now does not seem especially unsafe. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149767 91177308-0d34-0410-b5e6-96231b3b80d8