[all-commits] [llvm/llvm-project] ccf719: [Modules] Do not rewrite existing decls when deser...

Ilya Biryukov via All-commits all-commits at lists.llvm.org
Tue Apr 18 03:46:30 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ccf7191719375cac15da5a3eb406e1efa602b096
      https://github.com/llvm/llvm-project/commit/ccf7191719375cac15da5a3eb406e1efa602b096
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2023-04-18 (Tue, 18 Apr 2023)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    A clang/test/Modules/pr61065_2.cppm

  Log Message:
  -----------
  [Modules] Do not rewrite existing decls when deserializing class fields

Classes can have implicit members that were added before fields were
deserialized. These members were previously silently removed from
`decls()` when fields were deserialized after them.

This was the root cause of a compilation error exposed in
bc95f27337c7ed77c28e713c855272848f01802a, added a test for it.

Reviewed By: ChuanqiXu

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


  Commit: 67b298f6d82e0b4bb648ac0dabe895e816a77ef1
      https://github.com/llvm/llvm-project/commit/67b298f6d82e0b4bb648ac0dabe895e816a77ef1
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2023-04-18 (Tue, 18 Apr 2023)

  Changed paths:
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/Modules/pr61065.cppm

  Log Message:
  -----------
  Reland [Modules] Remove unnecessary check when generating name lookup table in ASTWriter

Fixes #61065.

This reverts commit 363c98b2d67986b9766bb1426739970ce6d9a6f3 and relands
db987b9589be1eb604fcb74c85b410469e31485f with fixes from
bc95f27337c7ed77c28e713c855272848f01802a.

The module-related issues surfaced there are fixed in the
previous commit.


Compare: https://github.com/llvm/llvm-project/compare/294831688ff9...67b298f6d82e


More information about the All-commits mailing list