Workaround the drive letter casing issue on windows. #747
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes: #726.
Lower case drive letters seem to be the cause of the issues.
Not being able to refactor on windows makes
clangd
borderline unusable.The workaround can be removed once clangd/clangd#108 is fixed.
In the mean time I think this simple workaround should be quite robust and alleviate the pain.
Why I fixed it here:
Working around the
clangd
issue in the vscode extension is much easier than attempting to tame the beast that isclangd
.The impact of the workaround is also very small.
Some things I am uncertain about:
I don't know if
clangd
normalizes paths at all.If it doesn't:
Maybe a setting should be added to decide between upper and lower case drive letter normalization on windows.
I have never observed lower case ones in
compile_commands.json
though.So we should probably wait for complaints 😁 before adding the setting.
Note:
I changed the typescript target because I needed named capture groups.
Maybe it is also time to move on from
commonjs
to"module": "Node16",
.