]> granicus.if.org Git - clang/commit
Revert r350917 "[Sema] If CheckPlaceholderExpr rewrites the initializer
authorRichard Smith <richard-llvm@metafoo.co.uk>
Wed, 24 Apr 2019 02:22:38 +0000 (02:22 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Wed, 24 Apr 2019 02:22:38 +0000 (02:22 +0000)
commitaf8f9ae48b8935e46f8031dd2c2e8ab285867b07
treeae6c286e8f0159655fb8f9e43a4a116a17183b20
parent53a7d337cbffe544d78978fde7a76df4d24b5e40
Revert r350917 "[Sema] If CheckPlaceholderExpr rewrites the initializer
of an auto"

This commit changed the initializer expression passed into
initialization (stripping off an enclosing pair of parentheses or
braces) and subtly changing the meaning of programs, typically by
inserting bogus calls to copy constructors.

See the added testcase in test/SemaCXX/cxx1y-init-captures.cpp for an
example of the breakage.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@359066 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Sema/Sema.h
lib/Sema/SemaDecl.cpp
lib/Sema/SemaExprCXX.cpp
lib/Sema/SemaLambda.cpp
test/SemaCXX/cxx1y-init-captures.cpp
test/SemaObjC/arc-repeated-weak.mm