]> granicus.if.org Git - clang/commit
Implement proper support for generating code for compound literals in
authorDouglas Gregor <dgregor@apple.com>
Fri, 17 Jun 2011 04:59:12 +0000 (04:59 +0000)
committerDouglas Gregor <dgregor@apple.com>
Fri, 17 Jun 2011 04:59:12 +0000 (04:59 +0000)
commit751ec9be961888f14342fb63b39bf8727f0dee49
tree7de31704ff1c0a255ebdc59021a5f1aba8fb9017
parent51d7cdd4bfd11e0eeac55517419d0ebba0abb4cb
Implement proper support for generating code for compound literals in
C++, which means:
  - binding the temporary as needed in Sema, so that we generate the
  appropriate call to the destructor, and
  - emitting the compound literal into the appropriate location for
  the aggregate, rather than trying to emit it as a temporary and
  memcpy() it.

Fixes PR10138 / <rdar://problem/9615901>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133235 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGExprAgg.cpp
lib/Sema/SemaExpr.cpp
test/CodeGenCXX/compound-literals.cpp [new file with mode: 0644]