[all-commits] [llvm/llvm-project] 5bbade: Recommit [C++20] [Modules] Don't load declaration ...

Chuanqi Xu via All-commits all-commits at lists.llvm.org
Wed Apr 5 20:02:32 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5bbadec2d1e0d5d0d25295759d49f6cd420d0968
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2023-04-06 (Thu, 06 Apr 2023)

  Changed paths:
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/Modules/no-eager-load.cppm
    A clang/test/Modules/pr61783.cppm

  Log Message:
  Recommit [C++20] [Modules] Don't load declaration eagerly for named modules

Close https://github.com/llvm/llvm-project/issues/61064.

The root cause of the issue is that we will deserilize some declarations
eagerly when reading the BMI. However, many declarations in the BMI are
not necessary for the importer. So it wastes a lot of time.

The new commit handles the MSVC's extension #pragma comment and #pragma
detect_mismatch to follow MSVC's behavior. See pr61783 for details.

More information about the All-commits mailing list