[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-09-01 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai updated this revision to Diff 370117. vsapsai added a comment. Clarify some comments; rebase for a fresh pre-commit testing. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 Files: clang/include/

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-09-01 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added inline comments. Comment at: clang/lib/Serialization/ASTWriter.cpp:1671 unsigned KeyLen = key.Filename.size() + 1 + 8 + 8; - unsigned DataLen = 1 + 2 + 4 + 4; + unsigned DataLen = 1 + 4 + 4 + 4; + for (auto ModuleIncluder : Data.HFI.ModuleInclu

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-08-31 Thread Jan Svoboda via Phabricator via cfe-commits
jansvoboda11 accepted this revision. jansvoboda11 added a comment. This revision is now accepted and ready to land. I see, thanks for the explanation. This LGTM provided the failing clangd test gets fixed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.o

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-08-27 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added a comment. In D104344#2969178 , @jansvoboda11 wrote: > If my understanding is correct, this patch only changes how we track > `HeaderFileInfo::{isImport,NumIncludes}` and makes sure to store the > necessary info into AST files. Right? Ye

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-08-27 Thread Jan Svoboda via Phabricator via cfe-commits
jansvoboda11 added a comment. FYI, a clangd test is failing in CI. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 ___ cfe-commits mailing list cfe-commits@list

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-08-27 Thread Jan Svoboda via Phabricator via cfe-commits
jansvoboda11 added a comment. If my understanding is correct, this patch only changes how we track `HeaderFileInfo::{isImport,NumIncludes}` and makes sure to store the necessary info into AST files. Right? Can you explain how values of these members can prevent Clang from importing the header

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-08-12 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-08-05 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-07-20 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-07-08 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-06-28 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai added a comment. Ping. It would be useful to know if this approach makes sense. If so, I can test it on a bigger codebase and see if there are any problems. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-06-16 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai updated this revision to Diff 352580. vsapsai added a comment. Add a test to verify `MarkFileIncludedFromModule` does `|= isImport` instead of `= isImport`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-06-16 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai updated this revision to Diff 352572. vsapsai added a comment. Test when a non-modular header *is* visible through a module import (mostly for completeness). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.or

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-06-15 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai updated this revision to Diff 352326. vsapsai added a comment. Split out smaller parts as separate reviews. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104344/new/ https://reviews.llvm.org/D104344 Files: clang/include/clang/Lex/HeaderS

[PATCH] D104344: [modules] Track how headers are included by different modules.

2021-06-15 Thread Volodymyr Sapsai via Phabricator via cfe-commits
vsapsai created this revision. Herald added a subscriber: ributzka. vsapsai requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Currently we are using `HeaderSearch` state from building a module and if an invisible submodule imports a non-modul