]> granicus.if.org Git - clang/commit
[analyzer] Remove bogus assert: in C++11, 'new' can do list-initialization.
authorJordan Rose <jordan_rose@apple.com>
Wed, 10 Jul 2013 19:14:10 +0000 (19:14 +0000)
committerJordan Rose <jordan_rose@apple.com>
Wed, 10 Jul 2013 19:14:10 +0000 (19:14 +0000)
commit8f6134c308951a72642eebb65a44408ea1e237a8
tree3dd814fdc84e87a33d5a7f5fe52caba9909e4280
parent49007d7561212c0ae168702c1af1404c01ef43ff
[analyzer] Remove bogus assert: in C++11, 'new' can do list-initialization.

Previously, we asserted that whenever 'new' did not include a constructor
call, the type must be a non-record type. In C++11, however, uniform
initialization syntax (braces) allow 'new' to construct records with
list-initialization: "new Point{1, 2}".

Removing this assertion should be perfectly safe; the code here matches
what VisitDeclStmt does for regions allocated on the stack.

<rdar://problem/14403437>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186028 91177308-0d34-0410-b5e6-96231b3b80d8
lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
test/Analysis/new.cpp