[all-commits] [llvm/llvm-project] 9c0485: [C++20] [Module] Support reachable definition init...
Chuanqi Xu via All-commits
all-commits at lists.llvm.org
Tue Jun 28 21:49:57 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 9c04851cf5809c80862183481f8ced0b3e9ee301
https://github.com/llvm/llvm-project/commit/9c04851cf5809c80862183481f8ced0b3e9ee301
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2022-06-29 (Wed, 29 Jun 2022)
Changed paths:
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/Basic/Module.h
M clang/include/clang/Sema/Lookup.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/Decl.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/CXX/basic/basic.lookup/basic.lookup.argdep/p4-friend-in-reachable-class.cpp
M clang/test/CXX/basic/basic.scope/basic.scope.namespace/p2.cpp
A clang/test/CXX/module/module.context/p7.cpp
M clang/test/CXX/module/module.import/p2.cpp
M clang/test/CXX/module/module.interface/p2.cpp
A clang/test/CXX/module/module.interface/p7.cpp
A clang/test/CXX/module/module.reach/ex1.cpp
A clang/test/CXX/module/module.reach/p2.cpp
A clang/test/CXX/module/module.reach/p4/TransitiveImport.cpp
A clang/test/CXX/module/module.reach/p5.cpp
M clang/test/CXX/module/module.unit/p7/t6.cpp
M clang/test/CXX/modules-ts/basic/basic.link/p2/other.cpp
A clang/test/Modules/Reachability-Private.cpp
A clang/test/Modules/Reachability-func-default-arg.cpp
A clang/test/Modules/Reachability-func-ret.cpp
A clang/test/Modules/Reachability-template-default-arg.cpp
A clang/test/Modules/Reachability-template-instantiation.cpp
A clang/test/Modules/Reachability-using-templates.cpp
A clang/test/Modules/Reachability-using.cpp
M clang/test/Modules/cxx20-10-1-ex2.cpp
A clang/test/Modules/derived_class.cpp
A clang/test/Modules/explicitly-specialized-template.cpp
M clang/test/Modules/module-private.cpp
A clang/test/Modules/template-function-specialization.cpp
A clang/test/Modules/template_default_argument.cpp
Log Message:
-----------
[C++20] [Module] Support reachable definition initially/partially
This patch introduces a new kind of ModuleOwnershipKind as
ReachableWhenImported. This intended the status for reachable described
at: https://eel.is/c++draft/module.reach#3.
Note that this patch is not intended to support all semantics about
reachable semantics. For example, this patch didn't implement discarded
declarations in GMF. (https://eel.is/c++draft/module.global.frag#3).
This fixes: https://bugs.llvm.org/show_bug.cgi?id=52281 and
https://godbolt.org/z/81f3ocjfW.
Reviewed By: rsmith, iains
Differential Revision: https://reviews.llvm.org/D113545
More information about the All-commits
mailing list