Arthapz wrote:

> Given we are going to branch clang19 in the end of the month, it is highly 
> possible that we can't land sufficient patches before that. Note that even if 
> we land this patch before that, the support of modules in clangd is expected 
> to very slow for real world applications. See the summary of the patch for 
> details. So we may miss the train again.
> 
> To mitigate this, I opened https://github.com/ChuanqiXu9/clangd-for-modules. 
> This contains the following patches to make the clangd sufficient to work 
> with modules in practical workloads. Feedbacks and contributions are 
> welcomed. Hope this can be helpful for people who are waiting this.

i tried this (and modified my xmake a little to gen the module_map.txt, 
https://github.com/Arthapz/xmake/tree/clangd-module-map), i did get some of LSP 
support

![image](https://github.com/user-attachments/assets/dfd1bba7-1221-4bc4-b3b8-02537b210446)

but the logs are full of errors like

```
[ERROR][2024-07-15 16:03:31] .../vim/lsp/rpc.lua:770    "rpc"   
"/opt/llvm-git/bin/clangd"  "stderr"    "E[16:03:31.557] Scanning modules 
dependencies for build/../modules/stormkit/Core/Utils/Stacktrac
e.mpp failed: error: unable to handle compilation, expected exactly one 
compiler job in '/opt/llvm-git/bin/clang -c -Qunused-arguments -m64 -g 
-fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wpe
dantic -Wextra -ffp-model=fast -O3 -mfma -mfpu=neon -mavx -mavx2 -msse -msse2 
-msse3 -mssse3 -msse4.2 -stdlib=libc++ -cxx-isystem/opt/llvm-git/include/c++/v1 
-Ibuild/.gens/include -I/home/arthapz/Repos
/StormKit/include -D_GLIBCXX_DEBUG -DSTORMKIT_BUILD -DSTORMKIT_BUILD_DEBUG 
-DSTORMKIT_ASSERT=1 -DSTORMKIT_STATIC -DBOOST_STACKTRACE_USE_ADDR2LINE 
-DBOOST_STACKTRACE_LINK -isystem /home/arthapz/.xmake/p
ackages/g/glm/1.0.1/e8b755c3b7d04ec88316715dbafe4cb6/include -isystem 
/home/arthapz/Repos/StormKit/build/.packages/f/frozen/latest/9a1f279102e34dbe91527197132695fd/include
 -isystem /home/arthapz/.xmake
/packages/u/unordered_dense/v4.4.0/9226fe6ee99949838863899207aec25e/include 
-isystem 
/home/arthapz/.xmake/packages/m/magic_enum/v0.9.5/c9d129e2b37f49a5897d1ef2a130e7c3/include
 -isystem /home/arthapz/.x
make/packages/t/tl_function_ref/v1.0.0/db82eb7eb9e64a40a64595c6319b711b/include 
-isystem 
/home/arthapz/.xmake/packages/b/boost/1.84.0/1be587ae28144669827487e346d4bc81/include
 -isystem /home/arthapz/.xm
ake/packages/l/libbacktrace/v1.0/5ff2e6e6560147f597b99dfa2bbea685/include 
-Wno-experimental-header-units -fcolor-diagnostics -fexperimental-library 
-fstrict-aliasing -Wstrict-aliasing -Wno-missing-fiel
d-initializers -Wno-include-angled-in-module-purview -Wno-unknown-attributes 
-Wno-deprecated-declarations -ggdb3 -Wno-language-extension-token 
-fmodule-file=std=build/.gens/stormkit-core/linux/x86_64/d
ebug/rules/bmi/cache/modules/500a1880/std.pcm 
-fmodule-file=stormkit.Core:Parallelism.ThreadUtils=build/.gens/stormkit-core/linux/x86_64/debug/rules/bmi/cache/modules/500a1880/stormkit.Core-Parallelism
.ThreadUtils.pcm --precompile -- 
build/../modules/stormkit/Core/Utils/Stacktrace.mpp'\n\nI[16:03:31.557] 
Recorded module unit path build/../modules/stormkit/Core/Utils/Stacktrace.mpp 
doesn't declare mo
dule stormkit.Core:Utils.Stacktrace\n"

[ERROR][2024-07-15 16:03:31] .../vim/lsp/rpc.lua:770    "rpc"   
"/opt/llvm-git/bin/clangd"  "stderr"    "I[16:03:31.557] Recorded module unit 
path build/../opt/llvm-git/bin/../lib/../share/libc++/v1/st
d.compat.cppm for module std.compat not existed.\n"
```

i used these parameters for clangd

```
"--offset-encoding=utf-16", "--header-insertion=never", 
"--experimental-modules-support", "--compile-commands-dir=.vscode", 
"--modules-map-path=build/clangd_mapper.txt"
```


https://github.com/llvm/llvm-project/pull/66462
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to