[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-12-07 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D110215#3178575 , @vitalybuka wrote: > llvm-project/clang/lib/Sema/SemaModule.cpp:715:70: warning: missing field > 'OuterVisibleModules' initializer [-Wmissing-field-initializers] >

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-12-07 Thread Vitaly Buka via Phabricator via cfe-commits
vitalybuka added a comment. llvm-project/clang/lib/Sema/SemaModule.cpp:715:70: warning: missing field 'OuterVisibleModules' initializer [-Wmissing-field-initializers] ^ Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-12-07 Thread Chuanqi Xu via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGe587372f8510: [C++20] [Module] Support extern C/C++ semantics (authored by ChuanqiXu). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-12-07 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 392625. ChuanqiXu added a comment. Address comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 Files: clang/include/clang/Basic/Module.h clang/include/clang/Lex/ModuleMap.h

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-12-07 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith accepted this revision. rsmith added a comment. This revision is now accepted and ready to land. Thanks, this looks great. A couple of minor suggestions. Comment at: clang/include/clang/Lex/ModuleMap.h:542-543 + /// unit's Module until later, because we don't know what

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-12-06 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. @aaron.ballman @urnathan @rsmith ping. Might you take a look? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-11-18 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D110215#3139809 , @aaron.ballman wrote: > In D110215#3139589 , @ChuanqiXu > wrote: > >> Change includes: >> >> - Add parent for newly created global module fragment. >> - Add a

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-11-18 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. In D110215#3139589 , @ChuanqiXu wrote: > Change includes: > > - Add parent for newly created global module fragment. > - Add a test. > - Rename test directory. Suddenly I found that the names of the tests in CXX >

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-11-18 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 388151. ChuanqiXu added a comment. Format codes. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 Files: clang/include/clang/Basic/Module.h clang/include/clang/Lex/ModuleMap.h

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-11-18 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 388125. ChuanqiXu added a comment. Change includes: - Add parent for newly created global module fragment. - Add a test. - Rename test directory. Suddenly I found that the names of the tests in CXX directory are corresponds to the standard one by one. So

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-11-11 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. @rsmith ping~ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-11-04 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. @rsmith @aaron.ballman gentle ping~ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-29 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu marked 7 inline comments as done. ChuanqiXu added inline comments. Comment at: clang/lib/Sema/SemaModule.cpp:722-723 +void Sema::PopGlobalModuleFragment() { + assert(!ModuleScopes.empty() && getCurrentModule().isGlobalModule() && + "left the wrong module

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-29 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 383376. ChuanqiXu added a comment. Address comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 Files: clang/include/clang/Basic/Module.h clang/include/clang/Sema/Sema.h

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-29 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added inline comments. Comment at: clang/lib/Sema/SemaDeclCXX.cpp:16155 + if (getLangOpts().CPlusPlusModules) { +auto *GlobalModule = +PushGlobalModuleFragment(ExternLoc, /*IsImplicit=*/true); `Module *` instead of `auto *` (the type

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-28 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. @rsmith gentle ping~ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-21 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. @rsmith @aaron.ballman gentle ping~ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-14 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 379907. ChuanqiXu added a comment. Herald added a subscriber: dexonsmith. Address the comments from @rsmith. It looks much better now. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 Files:

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-11 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. Instead of moving functions and classes/enums into the global module after creating them, it would be better to push a module scope for the global module when entering a C or C++ language linkage specification and pop the module scope when leaving the linkage

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-08 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 378415. ChuanqiXu added a comment. Format. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 Files: clang/include/clang/Sema/Sema.h clang/lib/Sema/SemaDecl.cpp clang/lib/Sema/SemaModule.cpp

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-08 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added inline comments. Comment at: clang/lib/Sema/SemaDecl.cpp:9351 + (NewFD->isExternCContext() || NewFD->isExternCXXContext())) { +if (!getGlobalModule()) + Diag(NewFD->getLocation(), aaron.ballman wrote: > I'm a bit

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-08 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 378401. ChuanqiXu added a comment. Address the comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110215/new/ https://reviews.llvm.org/D110215 Files: clang/include/clang/Sema/Sema.h clang/lib/Sema/SemaDecl.cpp

[PATCH] D110215: [C++2a] [Module] Support extern C/C++ semantics

2021-10-08 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added subscribers: cfe-commits, aaron.ballman. aaron.ballman added reviewers: aaron.ballman, erichkeane. aaron.ballman added a comment. Adding some more reviewers and subscribing the mailing lists. Comment at: