[all-commits] [llvm/llvm-project] ebcbd5: Set the captures on a CXXRecordDecl representing a...

Richard Smith via All-commits all-commits at lists.llvm.org
Fri Jun 5 16:07:14 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: ebcbd5ba39c017bb621eefa3175a224aae85ddc8
      https://github.com/llvm/llvm-project/commit/ebcbd5ba39c017bb621eefa3175a224aae85ddc8
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-06-05 (Fri, 05 Jun 2020)

  Changed paths:
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/Sema/SemaLambda.cpp

  Log Message:
  -----------
  Set the captures on a CXXRecordDecl representing a lambda closure type
before marking it complete.

No functionality change intended.

Previously committed as c13dd74e311d2ac70dd3ea663d800307d1aa5b6b.


  Commit: 825e3bb58082eafa8db87a9034379b88f892ce9d
      https://github.com/llvm/llvm-project/commit/825e3bb58082eafa8db87a9034379b88f892ce9d
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-06-05 (Fri, 05 Jun 2020)

  Changed paths:
    M clang/include/clang/AST/CXXRecordDeclDefinitionBits.def
    M clang/include/clang/AST/DeclCXX.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/AST/ast-dump-decl-context-json.cpp
    M clang/test/AST/ast-dump-decl.cpp
    M clang/test/AST/ast-dump-expr-json.cpp
    M clang/test/AST/ast-dump-record-definition-data-json.cpp
    M clang/test/AST/ast-dump-records-json.cpp
    M clang/test/AST/ast-dump-records.cpp
    M clang/test/AST/ast-dump-special-member-functions.cpp
    M clang/test/AST/ast-dump-template-decls-json.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaObjCXX/arc-0x.mm
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  PR46209: properly determine whether a copy assignment operator is
trivial.

We previously took a shortcut by assuming that if a subobject had a
trivial copy assignment operator (with a few side-conditions), we would
always invoke it, and could avoid going through overload resolution.
That turns out to not be correct in the presenve of ref-qualifiers (and
also won't be the case for copy-assignments with requires-clauses
either). Use the same logic for lazy declaration of copy-assignments
that we use for all other special member functions.

Previously committed as c57f8a3a20540fcf9fbf98c0a73f381ec32fce2a. This
now also includes an extension of LLDB's workaround for handling special
members without the help of Sema to cover copy assignments.


Compare: https://github.com/llvm/llvm-project/compare/ac6abc99e279...825e3bb58082


More information about the All-commits mailing list