[PATCH] D103516: [clang][deps] Customize PCM path via -build-dir argument

2021-06-03 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm with a few minor changes. Comment at: clang/tools/clang-scan-deps/ClangScanDeps.cpp:168-169 +"build-dir", +llvm::cl::desc("With '-generate-modules-path-arg

[PATCH] D103519: [clang][deps] Support object files

2021-06-03 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Comment at: clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp:161-162 + std::make_unique()); + PCHContainerOps->registerWriter( + std::

[PATCH] D103524: [clang][deps] Handle precompiled headers' AST files

2021-06-03 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. Comment at: clang/test/ClangScanDeps/modules-pch.c:7 // RUN: %clang -x c-header %t/pch.h -fmodules -gmodules -fimplicit-module-maps \ -// RUN: -fmodules-cache

[PATCH] D112289: Support: Use sys::path::system_style() in a few places

2021-10-28 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D112289/new/ https://reviews.llvm.org/D112289 _

[PATCH] D111860: [modules] Update visibility for merged ObjCProtocolDecl definitions.

2021-11-05 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D111860/new/ https://reviews.llvm.org/D111860 _

[PATCH] D113391: [Modules] Don't support clang module and c++20 module at the same time

2021-11-09 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/test/ClangScanDeps/Inputs/header-search-pruning/cdb.json:3 + "directory" : "DIR", + "command" : "clang -E DIR/header-search-pruning.cpp -Ibegin -I1 -Ia -I3 -I4 -I5 -I6 -Ib -I8 -Iend DEFINES -fmodules -fmodules-cache-path=DIR/m

[PATCH] D97702: [clang][modules] Use extensible RTTI for ModuleFileExtension

2021-03-04 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. Looks fine to me, but it would be good for a Swift person to look at this patch. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97702/new/ https://reviews.llvm.org/D97702 ___ cf

[PATCH] D97552: [clang][cli] Fix generation of '-fvisibility' with regards to '-mignore-xcoff-visibility'

2021-03-04 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97552/new/ https://reviews.llvm.org/D97552 ___

[PATCH] D112923: [clang][deps] Reset some benign codegen options

2021-11-18 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D112923/new/ https://reviews.llvm.org/D112923 _

[PATCH] D113880: [clang][modules] Infer framework modules in explicit builds

2021-11-18 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. I think this makes sense to do given that you need to explicitly opt into inferred modules anyway. This isn't implicitly finding module maps, as we already have a module map with `framew

[PATCH] D114206: [Clang][ScanDeps] Use the virtual path for module maps

2021-11-18 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: jansvoboda11, dexonsmith. Bigcheese added a project: clang. Bigcheese requested review of this revision. Herald added a subscriber: cfe-commits. This patch makes clang-scan-deps use the virtual path for module maps instead of the on disk

[PATCH] D114206: [Clang][ScanDeps] Use the virtual path for module maps

2021-12-01 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. There were two issues for Windows. The first is an actual bug in the Clang VFS that should be fixed separately. You cannot pass just `main.m` as the input to Clang. Clang asks for its parent directory textually, which is `.`. It then tries to stat `.`, which the VFS

[PATCH] D114206: [Clang][ScanDeps] Use the virtual path for module maps

2021-12-01 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 391166. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D114206/new/ https://reviews.llvm.org/D114206 Files: clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp clang/test/ClangScanDeps/modulemap-via-

[PATCH] D113676: WIP: [clang][lex] Fix search path usage remark with modules

2021-12-02 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. Can we not consider a modulemap used when we load an AST that depends on that modulemap? It's possible this breaks if the module only includes textual headers though. It really feels like we should have a single place where we actually know if a module is used or not.

[PATCH] D135128: [clang][cli] Simplify repetitive macro invocations

2022-10-18 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. Looks good with the suggestion to split the change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135128/new/ https://reviews.llvm.org/D13

[PATCH] D136624: [clang][modules] Account for non-affecting inputs in `ASTWriter`

2022-10-24 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. This looks reasonable. Have you measured the performance impact of this change? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136624/new/ https://reviews.llvm.org/D136624 ___ c

[PATCH] D136007: [clang][modules][deps] System module maps might not be affecting

2022-10-26 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm once D136624 lands. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136007/new/ https://reviews.llvm

[PATCH] D134222: [clang][deps] Report module map describing compiled module

2022-09-21 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D134222/new/ https://reviews.llvm.org/D134222

[PATCH] D134224: [clang][modules][deps] Report modulemaps describing excluded headers

2022-09-21 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. I think this is fine, but I need to think more about the ModuleDepCollector.cpp change. Comment at: clang/lib/Lex/ModuleMap.cpp:1275 // specified module? - (void) Headers[Header.Entry]; + (void) Headers[Header.Entry].push_back(KH); ---

[PATCH] D134224: [clang][modules][deps] Report modulemaps describing excluded headers

2022-09-22 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm with formatting fixed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D134224/new/ https://reviews.llvm.org/D134224 __

[PATCH] D134248: [clang][modules][deps] Preserve module map load order

2022-09-22 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Comment at: clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp:129 +// TODO: Track these as `FileEntryRef` to simplify the equality check. +auto A

[PATCH] D135381: [clang][modules] Fix handling of `ModuleHeaderRole::ExcludedHeader`

2022-10-06 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135381/new/ https://reviews.llvm.org/D135381 _

[PATCH] D135636: [clang][modules][deps] Serialize inputs into PCMs using the "as requested" name

2022-10-11 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135636/new/ https://reviews.llvm.org/D135636 _

[PATCH] D135637: [clang][deps] Prevent emitting diagnostics outside of source file

2022-10-11 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135637/new/ https://reviews.llvm.org/D135637 _

[PATCH] D135416: [clang][deps] Respect VFS overlays in canonical preprocessing mode

2022-10-11 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. Ah, I hit the same thing recently, thanks. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135416/new/ https://reviews.llvm.org/D1354

[PATCH] D135720: [clang][deps] Remove more codegen options

2022-10-11 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. Although I wonder if long term we should add something to the option tablegen file for this case? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://review

[PATCH] D135414: [clang][deps] Don't share in-memory VFS across scans

2022-10-12 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135414/new/ https://reviews.llvm.org/D135414 _

[PATCH] D141450: [Clang][cc1] Add -fno-modules-local-submodule-visibility to override the default

2023-01-10 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: jansvoboda11, dblaikie, iains, ChuanqiXu. Bigcheese added projects: clang-modules, clang. Herald added a subscriber: ributzka. Herald added a project: All. Bigcheese requested review of this revision. Currently there is no way to have Obj

[PATCH] D137609: [C++20] [Modules] Remove unmaintained header modules

2022-11-08 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. I'm not aware of anyone using this mode, but please wait for responses from Google and Meta people to verify that. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137609/new/ https://reviews.llvm.org/D137609 ___ cfe-

[PATCH] D137192: [clang][serialization] NFCI: Avoid re-reading input file info

2022-11-08 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm, thanks for fixing this. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137192/new/ https://reviews.llvm.org/D137192

[PATCH] D137197: [clang][modules][deps] Transitive module maps are not affecting

2022-11-08 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. Yeah, I agree with this. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137197/new/ https://reviews.llvm.org/D137197 ___

[PATCH] D137198: [clang][modules][deps] Parent module maps are affecting

2022-11-08 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137198/new/ https://reviews.llvm.org/D137198

[PATCH] D137206: [clang][modules][deps] Including module maps are affecting

2022-11-08 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137206/new/ https://reviews.llvm.org/D137206 _

[PATCH] D143027: [clang][deps] Fix module context hash for constant strings

2023-01-31 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. Thanks for fixing this. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143027/new/ https://reviews.llvm.org/D143027 ___ cfe-commits maili

[PATCH] D143040: [Clang][DependencyScanner] Remove secondary actions from -cc1

2023-01-31 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added a reviewer: jansvoboda11. Bigcheese added a project: clang. Herald added a subscriber: ributzka. Herald added a project: All. Bigcheese requested review of this revision. The -arcmt-action= and -objcmt-migrate* actions were being passed to module bu

[PATCH] D143040: [Clang][DependencyScanner] Remove secondary actions from -cc1

2023-02-01 Thread Michael Spencer via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Bigcheese marked an inline comment as done. Closed by commit rGffa2a647c6a9: [Clang][DependencyScanner] Remove secondary actions from -cc1 (authored by Bigcheese). Changed prior to commit: https://reviews.llvm.org/D143040

[PATCH] D141450: [Clang][cc1] Add -fno-modules-local-submodule-visibility to override the default

2023-01-12 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. In D141450#4044680 , @dblaikie wrote: >> This is a problem because some existing ObjectiveC code is not compatible >> with LSV > > Hmm, how is that true? Does this code only build with Clang Header Modules > enabled, and can't

[PATCH] D141450: [Clang][cc1] Make -fno-modules-local-submodule-visibility the default for ObjC++20

2023-01-17 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 489970. Bigcheese retitled this revision from "[Clang][cc1] Add -fno-modules-local-submodule-visibility to override the default" to "[Clang][cc1] Make -fno-modules-local-submodule-visibility the default for ObjC++20". Bigcheese edited the summary of this r

[PATCH] D127182: [Clang][Modules] Merge availability attributes on imported decls

2022-06-14 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. In D127182#3582540 , @jansvoboda11 wrote: > Should we add a FIXME saying we need to handle other kinds of attributes? There already is one where we call `mergeInheritableAttributes`. Repository: rG LLVM Github Monorepo CH

[PATCH] D127182: [Clang][Modules] Merge availability attributes on imported decls

2022-06-15 Thread Michael Spencer 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 rG169417531578: [Clang][Modules] Merge availability attributes on imported decls (authored by Bigcheese). Repository: rG LLVM Github Monorepo CHANG

[PATCH] D127182: [Clang][Modules] Merge availability attributes on imported decls

2022-06-06 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: vsapsai, bruno. Bigcheese added a project: clang-modules. Herald added a project: All. Bigcheese requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Currently we do not in general merg

[PATCH] D159483: [Modules] Add a flag to control builtin headers being in system modules

2023-09-26 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. The implementation of this change looks good. I share the concern that changing the default may break other users, but that's easily remedied and this is the correct default. It would be

[PATCH] D159064: [Modules] Make clang modules for the C standard library headers

2023-10-02 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. This change looks good with the stdint.h comments resolved. Comment at: clang/test/Modules/Inputs/System/usr/include/stdint.h:2 typedef int my_awesome_nonstandard_integer_type; + +/* C99 7.18.1.1 Exact-width integer types. iana wrote

[PATCH] D156234: [clang][deps] add support for dependency scanning with cc1 command line

2023-08-01 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp:482 + bool Success = false; + if (FinalCommandLine[1] == "-cc1") { +Success = createAndRunToolInvocation(FinalCommandLine, Action, *FileMgr, cpsu

[PATCH] D75395: [clang][Modules] Add -fsystem-module flag

2020-02-28 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: rsmith, bruno. Bigcheese added a project: clang. Herald added a subscriber: dexonsmith. The -fsystem-module flag is used when explicitly building a module. It forces the module to be treated as a system module. This is used when convertin

[PATCH] D75395: [clang][Modules] Add -fsystem-module flag

2020-03-02 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese marked 2 inline comments as done. Bigcheese added inline comments. Comment at: clang/lib/Frontend/CompilerInvocation.cpp:1912 +Diags.Report(diag::err_drv_argument_only_allowed_with) << "-fsystem-module" + <<

[PATCH] D75395: [clang][Modules] Add -fsystem-module flag

2020-03-02 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. In D75395#1901778 , @dexonsmith wrote: > > This is used when > > converting an implicit build to an explicit build to match the > > systemness the implicit build would have had for a given module. > > I had another thought. Wh

[PATCH] D75395: [clang][Modules] Add -fsystem-module flag

2020-03-02 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 247755. Bigcheese added a comment. Cleaned up the test to not reference unused paths. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75395/new/ https://reviews.llvm.org/D75395 Files: clang/include/clang/Dri

[PATCH] D75395: [clang][Modules] Add -fsystem-module flag

2020-03-03 Thread Michael Spencer via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG27a3ecee4558: [clang][Modules] Add -fsystem-module flag (authored by Bigcheese). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75395/new/ https://reviews.ll

[PATCH] D69420: [clang][clang-scan-deps] Add support for extracting full module dependencies.

2019-10-29 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 226972. Bigcheese set the repository for this revision to rG LLVM Github Monorepo. Bigcheese added a comment. This fixes some issues I received externally. - Fix issue with MSVC getting confused about `ModuleDeps::ModuleDeps`. - Always generate absolute pat

[PATCH] D69420: [clang][clang-scan-deps] Add support for extracting full module dependencies.

2019-10-29 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 226974. Bigcheese added a comment. I forgot to clang-format. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69420/new/ https://reviews.llvm.org/D69420 Files: clang/include/clang/Tooling/DependencyScanning/D

[PATCH] D69122: Add support to find out resource dir and add it as compilation args

2019-10-29 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese requested changes to this revision. Bigcheese added a comment. This revision now requires changes to proceed. So I agree solving this problem makes sense, but I have some issues with the current patch. - This defaults to doing the lookup. The test suite, and some real outputs, just us

[PATCH] D69643: [clang][ScanDeps] Fix issue with multiple commands with the same input.

2019-10-30 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: arphaman, klimek. Bigcheese added a project: clang. Herald added a subscriber: dexonsmith. Previously, given a CompilationDatabase with two commands for the same source file we would report that file twice with the union of the dependenci

[PATCH] D69420: [clang][clang-scan-deps] Add support for extracting full module dependencies.

2019-10-30 Thread Michael Spencer via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGd8a4ef0e685c: [clang][clang-scan-deps] Add support for extracting full module dependencies. (authored by Bigcheese). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm

[PATCH] D69643: [clang][ScanDeps] Fix issue with multiple commands with the same input.

2019-10-31 Thread Michael Spencer via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGd816d9bdc585: [clang][ScanDeps] Fix issue with multiple commands with the same input. (authored by Bigcheese). Changed prior to commit: https://reviews.llvm.org/D69643?vs=227178&id=227347#toc Repositor

[PATCH] D69958: Improve VFS compatibility on Windows

2019-11-13 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added subscribers: JDevlieghere, benlangmuir. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. Looking at the blame it would be best if @JDevlieghere @vsapsai or @benlangmuir could take a look also. CHANGES SINCE LAST

[PATCH] D69122: Add support to find out resource dir and add it as compilation args

2019-11-13 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm with the changes to `FindResourceDir`. Comment at: clang/tools/clang-scan-deps/ClangScanDeps.cpp:50 + /// compiler path is NOT an absolute path. + std::string Fi

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-11-14 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Herald added subscribers: cfe-commits, tschuett, dexonsmith, mgrang. Herald added a project: clang. Bigcheese added reviewers: arphaman, kousikk. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D70268 Files: clang/include/clang/Tooling/Dependency

[PATCH] D70351: [clang][WIP][clang-scan-deps] Add an experimental C API.

2019-11-16 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: arphaman, kousikk. Herald added subscribers: llvm-commits, cfe-commits, tschuett, dexonsmith, mgorny. Herald added projects: clang, LLVM. Bigcheese added a parent revision: D70268: [clang][clang-scan-deps] Aggregate the full dependency i

[PATCH] D70285: Wrap C APIs with pragmas enforcing -Werror=strict-prototypes

2019-11-19 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm as long as other compilers don't warn on unknown pragmas by default. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70285/new/ https://reviews.llvm.org/D70285 ___

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-11-20 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese marked 2 inline comments as done. Bigcheese added inline comments. Comment at: clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h:31 + /// Modules that the input directly imports. + std::vector DirectModuleDependencies; + /// The Clang modules t

[PATCH] D70351: [clang][WIP][clang-scan-deps] Add an experimental C API.

2019-11-20 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. In D70351#1754276 , @arphaman wrote: > Adding experimental APIs is something that we haven't done before, but it be > useful for this case. Yep, I'm currently aware of two other people who care about this interface, so I thou

[PATCH] D69122: Add support to find out resource dir and add it as compilation args

2019-11-21 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. Thanks, you're good to commit. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69122/new/ https://reviews.llvm.org/D69122 ___ cfe-commits mailing list cfe-commits@lists.llvm.or

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-11-21 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese marked an inline comment as done. Bigcheese added inline comments. Comment at: clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp:97 + if (OutputPaths.empty()) +OutputPaths = Opts.Targets; Dependencies.push_back(File); a

[PATCH] D70071: [ConstExprPreter] Removed the flag forcing the use of the interpreter

2019-11-22 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70071/new/ https://reviews.llvm.org/D70071 _

[PATCH] D70351: [clang][WIP][clang-scan-deps] Add an experimental C API.

2019-11-22 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese marked an inline comment as done. Bigcheese added inline comments. Comment at: clang/include/clang-c/Dependencies.h:146 + */ +typedef struct CXOpaqueDependencyScannerWorker *CXDependencyScannerWorker; + kousikk wrote: > It would be simpler if the client

[PATCH] D70556: clang/Modules: Refactor CompilerInstance::loadModule, NFC

2019-11-22 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. Nice cleanup. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70556/new/ https://reviews.llvm.org/D70556 ___ cfe-commits maili

[PATCH] D69420: [clang][clang-scan-deps] Add support for extracting full module dependencies.

2019-11-22 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. It was already there from a previous commit. I see it in tree currently. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D69420/new/ https://reviews.llvm.org/D69420 ___ cfe-comm

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-12-05 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 232483. Bigcheese marked 2 inline comments as done. Bigcheese added a comment. - Removed `OutputPaths`. - Add documentation for `AlreadySeen`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70268/new/ https://

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-12-05 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp:97 + if (OutputPaths.empty()) +OutputPaths = Opts.Targets; Dependencies.push_back(File); arphaman wrote: > Bigcheese wrote: > > arpham

[PATCH] D70351: [clang][WIP][clang-scan-deps] Add an experimental C API.

2019-12-05 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 232484. Bigcheese marked an inline comment as done. Bigcheese added a comment. Herald added a subscriber: mgrang. - Remove duplicate decl - Add test Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70351/new/ ht

[PATCH] D71239: [clang][Format] Fix ObjC keywords following try/catch getting split.

2019-12-09 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: thakis, djasper. Bigcheese added a project: clang-format. Herald added a subscriber: dexonsmith. Herald added a project: clang. Previously things like: int main() { @try { } @catch (NSException *e) { } @try { } @

[PATCH] D71239: [clang-format] Fix ObjC keywords following try/catch getting split.

2019-12-10 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese marked an inline comment as done. Bigcheese added inline comments. Comment at: clang/lib/Format/UnwrappedLineParser.cpp:1849 + } while (FormatTok->is(tok::comment)); +} if (!(FormatTok->isOneOf(tok::kw_catch, Keywords.kw___except, MyDevelo

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-12-10 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 233233. Bigcheese added a comment. Refactored `FullDependencies::getAdditionalCommandLine` and `ModuleDeps::getFullCommandLine` to share code. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70268/new/ https:/

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-12-11 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. Looks like the test for -full-command-line got dropped. I'll add that when I commit. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70268/new/ https://reviews.llvm.org/D70268 ___

[PATCH] D70268: [clang][clang-scan-deps] Aggregate the full dependency information.

2019-12-11 Thread Michael Spencer via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGf978ea498309: [clang][clang-scan-deps] Aggregate the full dependency information. (authored by Bigcheese). Changed prior to commit: https://reviews.llvm.org/D70268?vs=233233&id=233455#toc Repository:

[PATCH] D75719: [clang][Headers] Use __has_builtin instead of _MSC_VER.

2020-03-05 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: compnerd, kongyi. Bigcheese added a project: clang. Herald added subscribers: danielkiss, dexonsmith, kristof.beyls. arm_acle.h relied on `_MSC_VER` to determine if a given function was already defined as a builtin. This was incorrect bec

[PATCH] D75719: [clang][Headers] Use __has_builtin instead of _MSC_VER.

2020-03-06 Thread Michael Spencer via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG16af23fae8ad: [clang][Headers] Use __has_builtin instead of _MSC_VER. (authored by Bigcheese). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75719/new/ http

[PATCH] D70351: [clang][WIP][clang-scan-deps] Add an experimental C API.

2020-01-23 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. I was finally able to land the patch this depended on. Still waiting on review for this. In the meantime I've tested this ABI out by building a simple program that outputs a ninja file given a command line. It depends on a bunch of changes to the Clang side of things

[PATCH] D146255: [clang] Unconditionally add autolink hints for frameworks.

2023-03-16 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146255/new/ https://reviews.llvm.org/D146255 ___ cfe-commits mailing list cfe-commits@lists

[PATCH] D146328: [clang][deps] Only cache files with specific extension

2023-03-17 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. This doesn't appear to behave as expected for `PP_CacheFailure` or `PP_ScanFile` without `PP_CacheSuccess`. Looks like that will still cache. Should probably just assert that's not the c

[PATCH] D146328: [clang][deps] Only cache files with specific extension

2023-03-17 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h:272-291 +enum class Enable { Yes, No }; +enum class ScanFile { Yes, No }; +enum class CacheStatFailure { Yes, No }; + +struct PathPolicy { + unsigned Enabl

[PATCH] D146328: [clang][deps] Only cache files with specific extension

2023-03-17 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. lgtm, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146328/new/ https://reviews.llvm.org/D146328 ___ cfe-commits mailing list cfe-comm

[PATCH] D145526: [clang][DependencyScanner] Cache modulemap stat failures

2023-03-07 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: ributzka, benlangmuir, jansvoboda11. Bigcheese added a project: clang. Herald added a project: All. Bigcheese requested review of this revision. Herald added a subscriber: cfe-commits. Add `module.modulemap` as a file we cache stat failur

[PATCH] D145526: [clang][DependencyScanner] Cache modulemap stat failures

2023-03-07 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 503160. Bigcheese added a comment. Forgot that `Filename` is actually a path, so call `llvm::sys::path::filename`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145526/new/ https://reviews.llvm.org/D145526 F

[PATCH] D145526: [clang][DependencyScanner] Cache modulemap stat failures

2023-03-07 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 503164. Bigcheese added a comment. Also handle `module.map`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145526/new/ https://reviews.llvm.org/D145526 Files: clang/lib/Tooling/DependencyScanning/Dependenc

[PATCH] D145526: [clang][DependencyScanner] Cache modulemap stat failures

2023-03-07 Thread Michael Spencer 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 rG57c7750f703d: [clang][DependencyScanner] Cache modulemap stat failures (authored by Bigcheese). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D145838: [clang][deps] Handle response files in dep scanner

2023-03-13 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. LTGM, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145838/new/ https://reviews.llvm.org/D145838 ___ cfe-commits mailing list cfe-comm

[PATCH] D150689: [clang][DependencyScanner] Remove all warning flags when suppressing warnings

2023-05-30 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp:50 + // optimize. + if (!IsSystemModule) +return; ributzka wrote: > This removes also all warnings when building your own module, because of the > `[sy

[PATCH] D150689: [clang][DependencyScanner] Remove all warning flags when suppressing warnings

2023-05-16 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added a reviewer: jansvoboda11. Bigcheese added a project: clang. Herald added a subscriber: ributzka. Herald added a project: All. Bigcheese requested review of this revision. Herald added a subscriber: cfe-commits. Since system modules don't emit most w

[PATCH] D150689: [clang][DependencyScanner] Remove all warning flags when suppressing warnings

2023-05-17 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/test/ClangScanDeps/optimize-system-warnings.m:19 +// CHECK:], +// CHECK-NEXT: "name": "A" +// CHECK-NEXT: }, jansvoboda11 wrote: > I'd like to see a check line that would fail if the scanner

[PATCH] D145197: [clang][deps] NFC: Refactor and comment ModuleDeps sorting

2023-04-20 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145197/new/ https://reviews.llvm.org/D145197 _

[PATCH] D149693: [clang][deps] Make clang-scan-deps write modules in raw format

2023-05-03 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149693/new/ https://reviews.llvm.org/D149693 ___ cfe-commits mailing list cfe-co

[PATCH] D151277: [clang][modules] Mark fewer identifiers as out-of-date

2023-06-06 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. Looks good, although I'm not an expert on this bit either. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151277/new/ https://reviews.llvm.org/D151277

[PATCH] D151523: [ASTStructuralEquivalence] Fix crash when ObjCCategoryDecl doesn't have corresponding ObjCInterfaceDecl.

2023-06-08 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. Looks good as long as people are happy with the condition. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151523/new/ https://reviews.llvm.

[PATCH] D118150: [clang] Fix serialized diagnostics edge-cases

2022-01-25 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese accepted this revision. Bigcheese added a comment. This revision is now accepted and ready to land. lgtm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D118150/new/ https://reviews.llvm.org/D118150 _

[PATCH] D118311: [Clang][ModuleMap] Add conditional parsing via requires block declaration

2022-01-26 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese created this revision. Bigcheese added reviewers: bruno, dexonsmith, vsapsai. Bigcheese added a project: clang-modules. Bigcheese requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Add a new form of requires called a requires block d

[PATCH] D118311: [Clang][ModuleMap] Add conditional parsing via requires block declaration

2022-01-27 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added inline comments. Comment at: clang/docs/Modules.rst:651 + +requires cplusplus { + header "vector" iana wrote: > Is there any kind of `else` syntax here? Or do you just use `!whatever` for > the else? Is something like this valid? > > ``

[PATCH] D118311: [Clang][ModuleMap] Add conditional parsing via requires block declaration

2022-02-01 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese added a comment. > Is it possible to reference external module map from requires block? I mean > that in one context the module has some extra requirements but in a different > context doesn't have them. Can you provide an example where this would cause issues? > It would be nice to

[PATCH] D118311: [Clang][ModuleMap] Add conditional parsing via requires block declaration

2022-02-01 Thread Michael Spencer via Phabricator via cfe-commits
Bigcheese updated this revision to Diff 405133. Bigcheese added a comment. Add testing of empty blocks and nested blocks and make the missing `{` error clearer. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D118311/new/ https://reviews.llvm.org/D11

<    1   2   3   >