[clangd] [C++ Modules] Fix handling of relative paths in prebuilt mod… (#187654)
…ule files
When compile_commands.json contains relative paths in -fmodule-file=
arguments (as generated by CMake), clangd failed to find the BMI files
because it was looking for them relative to the wrong working directory.
This patch fixes the issue by converting relative paths to absolute
paths based on the compilation directory (CompileCommand.Directory)
before checking if the module file exists and is up to date.
Added a unit test that verifies the fix works correctly.
AI Assisted