[all-commits] [llvm/llvm-project] 40568f: [CodeGen] Emit destructor calls to destruct compou...

Akira Hatanaka via All-commits all-commits at lists.llvm.org
Tue Mar 10 14:08:45 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 40568fec7e3eb51554cbdaf63a8044830be93fa4
      https://github.com/llvm/llvm-project/commit/40568fec7e3eb51554cbdaf63a8044830be93fa4
  Author: Akira Hatanaka <ahatanaka at apple.com>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    A clang/test/AST/ast-dump-objc-arc-json.m
    M clang/test/AST/ast-dump-stmt.m
    M clang/test/CodeGenObjC/arc-ternary-op.m
    M clang/test/CodeGenObjC/arc.m
    M clang/test/CodeGenObjC/strong-in-c-struct.m
    A clang/test/Import/objc-arc/Inputs/cleanup-objects.m
    A clang/test/Import/objc-arc/test-cleanup-object.m
    A clang/test/PCH/non-trivial-c-compound-literal.m
    M clang/test/SemaObjC/strong-in-c-struct.m
    M clang/tools/clang-import-test/clang-import-test.cpp

  Log Message:
  -----------
  [CodeGen] Emit destructor calls to destruct compound literals

Fix a bug in IRGen where it wasn't destructing compound literals in C
that are ObjC pointer arrays or non-trivial structs. Also diagnose jumps
that enter or exit the lifetime of the compound literals.

rdar://problem/51867864

Differential Revision: https://reviews.llvm.org/D64464




More information about the All-commits mailing list