- User Since
- Dec 13 2019, 11:28 AM (50 w, 2 d)
Thu, Nov 26
Thanks for review!
Do not override existing target.
Fix clang-tidy warning.
Address review comments.
Wed, Nov 25
Add structure to hold system includes and target.
Use state machine to go though lines of the driver output.
Handle invalid target
Use '--target=X' instead of '-target X'
Tue, Nov 24
I'm not sure if this solution is elegant enough. I will be happy to hear advices.
Wed, Nov 11
Tue, Nov 10
Don't check that AbsPath is not in Files twice.
Mon, Nov 9
Thanks you all for your comments.
Do not use unique pointer for Index
Sun, Nov 8
Tue, Nov 3
Mon, Nov 2
Oct 29 2020
Oct 25 2020
I have face this problem long time ago.
This happens only:
- on non-English Windows (and could be fixed via system settings: Control Panel -> Clock,Language,and Region -> Region and Language -> Administrative ->Language for non-Unicode programs -> Change system locale -> English).
- with Visual Studio Compiler
Oct 23 2020
Oct 20 2020
Oct 19 2020
Thank you for review!
auto => StringRef
add comment for llvm::sys::path::native() call
Result.str().str() => std::string(Result)
add back removed test
Oct 18 2020
I have updated the patch according to this advice.
It seems to me it looks more consistent now, thank you.
Convert RemoteIndexRoot and LocalIndexRoot to the POSIX style.
Oct 16 2020
Ok, got your point. I will think about this.
But for me it's hard to see the reason why we need to store local paths in POSIX style instead of native. From my point of view, we need to ensure that paths inside the wire are in POSIX style and nothing more. E.g. clangd converts paths extracted from LSP to native style.
D:\work\llvm-project\build>ninja check-clangd [6/7] Running the Clangd regression tests llvm-lit.py: D:\work\llvm-project\build\bin\..\..\llvm\utils\lit\lit\llvm\config.py:347: note: using clang: d:\work\llvm-project\build\bin\clang.exe -- Testing: 905 tests, 8 workers -- Testing: 0.. 10.. 20.. 30.. 40.. 50.. 60.. 70 FAIL: Clangd Unit Tests :: ./ClangdTests.exe/RemoteMarshallingTest.IncludeHeaderURIs (665 of 905) ******************** TEST 'Clangd Unit Tests :: ./ClangdTests.exe/RemoteMarshallingTest.IncludeHeaderURIs' FAILED ******************** Note: Google Test filter = RemoteMarshallingTest.IncludeHeaderURIs [==========] Running 1 test from 1 test case. [----------] Global test environment set-up. [----------] 1 test from RemoteMarshallingTest [ RUN ] RemoteMarshallingTest.IncludeHeaderURIs D:\work\llvm-project\clang-tools-extra\clangd\unittests\remote\MarshallingTests.cpp(256): error: Value of: bool(Serialized) Actual: false Expected: true [ FAILED ] RemoteMarshallingTest.IncludeHeaderURIs (1 ms) [----------] 1 test from RemoteMarshallingTest (1 ms total)
With current implementation I could not pass Windows path (e.g. C:\a\b\c) to Marshaller constructor because of assert(RemoteIndexRoot == llvm::sys::path::convert_to_slash(RemoteIndexRoot));, because on Windows llvm::sys::path::convert_to_slash(RemoteIndexRoot) converts C:\a\b\c to C:/a/b/c
Oct 2 2020
I am not sure that understood you correctly, but widenPath does nothing for me, if I pass mixed-slash path to it.
std::string From("C:\\a/b\\c"); SmallVector<wchar_t, 128> To; llvm::sys::windows::widenPath(From, To); std::wcerr << To.data();
So, if we imagine that Windows does not support /, then paths with / could not be opened with llvm::sys::fs API.
Just a question.
On Windows %resource_dir/.. looks a bit inconsistent after substitution (d:\llvm-project\build\lib\clang\12.0.0\include/..), but this test passes.
As far as Windows accepts forward and back slashes, I expect something like this %/resource_dir/.. to be consistent across all platforms.
Are there any plans to add %/resource_dir substitution as it was done for %T, %s, etc?
Sep 29 2020
Don't know why this didn't close automatically
Fix possible UB at bitwise shift.
WordGain => MaxDistance.
Fix LineMin and LineMax values.
Sep 28 2020
Use SourceManager::translateLineCol(), code simplifications.
Sep 24 2020
Seems you are right, but we do not compare strings during traversal to find FileLines.
Sep 23 2020
I feel like I'm doing something totally wrong here :)
Could someone give me an advice?
std::pow => bitwise shift.
Take care about integers overflow.
Sep 18 2020
Sep 16 2020
Sorry, it's already here https://reviews.llvm.org/D87710
Sep 15 2020
Unsure about test for this
Aug 26 2020
Remove #include <io.h>
Thank you for review.
Buffer.data() => Buffer.begin()
Check GetFinalPathNameByHandleW() return value for non-zero first
Check GetFinalPathNameByHandleW() return value for zero first
Handle Buffer.capacity() == 0 case correcly.
Aug 25 2020
Aug 20 2020
Aug 17 2020
I am not sure that this fix is correct, I took this solution from here https://github.com/grpc/grpc/blob/master/examples/cpp/helloworld/CMakeLists.txt#L30
Aug 14 2020
I already have commit access, thank you.