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  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