nridge added a comment.

In D137770#3945095 <https://reviews.llvm.org/D137770#3945095>, @spartacoos 
wrote:

> I realised this is an active issue that's not being worked on. So, I want to 
> put myself forward to help implement this new module system for clangd once 
> you have settled on a design/approach.

Well, an issue here is that a design isn't actively being worked on either :) 
So it's probably best to start there.

I think a good starting point would be Sam's list of "issues that need to be 
addressed" in this comment 
<https://github.com/clangd/clangd/issues/1293#issue-1374964149>.

A concrete way to make progress here might be:

- Identify scenarios that we explicitly do not want to support. An example 
might be "consuming binary module artifacts produced by a non-clang compiler".
- Of the scenarios that we do want to support, identify a subset to focus on 
implementing support for in an initial implementation ("support now" vs. 
"support later"). For example, we could start by limiting support to cases 
where clangd builds all modules from source itself and does not try to consume 
binary module artifacts built by anything other than itself. (Alternatively, we 
could start by limiting support only to cases where we assume the build 
compiler is version-locked to clangd and _only_ consume binary module artifacts 
built by the build compiler.) Since you're looking to work on this, the choice 
of subset can of course be informed by what scenarios you care about.
- Go through the "list of issues", and propose answers that are suitable for 
the "support now" scenarios, while still leaving open a path to bring the 
"support later" scenarios onboard.

We can then discuss the proposed approach in the issue and iterate on it.

> Are there any other resources where I can learn more about clangd development?

The clangd website and particularly the design section 
<https://clangd.llvm.org/design/> are probably helpful reading, especially to 
understand some of the concepts like "preamble" discussed in the above list.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D137770/new/

https://reviews.llvm.org/D137770

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to