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

Richard Smith via All-commits all-commits at lists.llvm.org
Thu Jun 4 19:25:44 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: c13dd74e311d2ac70dd3ea663d800307d1aa5b6b
      https://github.com/llvm/llvm-project/commit/c13dd74e311d2ac70dd3ea663d800307d1aa5b6b
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-06-04 (Thu, 04 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.


  Commit: c57f8a3a20540fcf9fbf98c0a73f381ec32fce2a
      https://github.com/llvm/llvm-project/commit/c57f8a3a20540fcf9fbf98c0a73f381ec32fce2a
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-06-04 (Thu, 04 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

  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.


Compare: https://github.com/llvm/llvm-project/compare/4c735439fd9a...c57f8a3a2054


More information about the All-commits mailing list