Rémi Hérilier
84b3c69ff5
cmake: Make sure to get the resource directory from the right clang compiler
...
The resource directory was always retrieved from the system's default clang
compiler instead of the targeted one.
2024-12-06 17:08:30 +01:00
Fangrui Song
4331c89586
Adapt llvmorg-20-init-12964-gdf9a14d7bbf1: createDiagnostics
2024-11-23 18:33:49 -08:00
Fangrui Song
3640f899f1
textDocument/signatureHelp: add trigger character {
...
to enable https://reviews.llvm.org/D116317
2024-11-09 23:10:55 -08:00
Fangrui Song
664f952f38
Implement textDocument/switchSourceheader
...
When the current file is X.cc, there might be multiple X.h.
Use a heuristic to find the best X.h.
Vote for each interesting symbol's definitions (for header) or
declarations (for non-header). Select the file with the most votes.
If `file_id2cnt` is empty, use a simpler heuristic.
2024-11-08 20:56:30 -08:00
Fangrui Song
cc13ced659
Support LSP semantic tokens
...
This patch implements `textDocument/semanticTokens/{full,range}`. If the
client supports semantic tokens, $ccls/publishSemanticHighlight (now
deprecated) is disabled.
These token modifiers are mostly useful to emphasize certain symbols:
`static, classScope, globalScope, namespaceScope`.
To enable a colorful syntax highlighting scheme, set the
highlight.rainbow initialization option to 10.
https://maskray.me/blog/2024-10-20-ccls-and-lsp-semantic-tokens
Note that the older $ccls/publishSemanticHighlight protocol with
highlight.lsRanges==true (used by vscode-ccls) is no longer supported.
2024-11-05 21:57:24 -08:00
Fangrui Song
50fd8d069e
Drop support for LLVM 7, 8, and 9
2024-11-01 23:50:25 -07:00
Fangrui Song
192a82ba85
.clang-format: ColumnLimit: 120
2024-10-21 17:52:44 -07:00
Fangrui Song
349cdc471b
didOpen: Sort index requests by approximity to working files
...
For a large project, it is preferable to prioritize indexing files
neighboring working files.
2024-10-21 17:49:54 -07:00
Sam James
ddbe41300f
utils: Add <cstdint>
( #968 )
...
utils uses `uint64_t` without including `<cstdint>`
which fails to build w/ GCC 15 after a change in libstdc++ [0]
[0] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=3a817a4a5a6d94da9127af3be9f84a74e3076ee2
2024-10-02 17:36:02 -07:00
Fangrui Song
e5e101253a
Adapt llvmorg-19-init-9465-g39adc8f42329: BuiltinType::ArraySection
2024-05-05 17:49:30 -07:00
Fangrui Song
559b416409
Adapt llvmorg-19-init-9119-g4ec9a662d388: startswith/endswith removal
2024-05-05 17:49:30 -07:00
Fangrui Song
88e382f8a3
Adapt llvmorg-19-init-1720-gda95d926f6fc: InclusionDirective
2024-05-05 17:44:13 -07:00
Fangrui Song
f8d2778b65
Adapt llvm/llvm-project#74910 : FileEntry::getName
...
Based on a patch by @zsrkmyn
2024-02-02 00:05:55 -08:00
Fangrui Song
f36ecb0c0e
Adapt llvmorg-18-init-13684-ge1e34cc2a17c: llvm/Support/Host.h
2023-12-14 22:08:17 -08:00
Fangrui Song
490edc1e02
Adapt llvmorg-18-init-10631-gedd690b02e16: TTK_*
2023-11-15 16:01:09 -08:00
Fangrui Song
7b17426b9f
Adapt llvmorg-18-init-4877-g62e576b454e1: getLangOpts
2023-09-09 19:43:27 -07:00
Fangrui Song
ee2d4f5b9a
Disable -include b.hh => -include b.hh.{gch,pch} transition
...
See https://maskray.me/blog/2023-07-16-precompiled-headers for the
behavior.
2023-07-17 16:06:49 -07:00
Fangrui Song
ba38e13b93
Adapt llvmorg-17-init-4072-gcc929590ad30: PrecompiledPreamble::Build
2023-04-11 11:04:01 -07:00
Fangrui Song
8bc3959537
Use raw module format to fix -gmodules crash
...
To avoid `llvm::report_fatal_error("unknown module format")` in getPCHContainerWriter.
See a3e2ff19e5
2023-01-15 12:14:42 -08:00
Fangrui Song
2468edc0b3
cmake: Adapt llvmorg-16-init-15123-gf09cf34d0062 (LLVMTargetParser)
2023-01-14 21:37:52 -08:00
Fangrui Song
6dc564f2a8
Adapt llvm::Optional deprecation
2023-01-09 16:03:16 -08:00
Fangrui Song
8a93950fb9
Add callHierarchy
2022-11-03 00:20:22 -07:00
Fangrui Song
74458915b3
Adapt llvmorg-15-init-7692-gd79ad2f1dbc2: PPCallbacks::InclusionDirective parameter
2022-04-16 22:29:03 -07:00
Fangrui Song
790daca4b2
query: include llvm/ADT/STLExtras.h
...
The header is no longer transitively included in 2022-01.
2022-01-30 11:17:32 -08:00
augiedoggie
b28cec1872
platform_posix: add support for Haiku ( #863 )
2022-01-23 00:22:29 -08:00
Fangrui Song
c7596e3712
initialize: Add offsetEncoding to InitializeResult
2022-01-11 19:25:21 -08:00
Fangrui Song
8422f0a522
Adapt llvmorg-14-init-13600-g92417eaf3329: braced constructor call
2022-01-09 12:25:07 -08:00
Fangrui Song
dce86b1362
cmake: Add LANGUAGE C to fix find_package(Clang REQUIRED) error
2021-12-15 10:14:34 -08:00
Fangrui Song
5a48e6c419
sema_manager: only keep latest session.maxNum sessions in case of a surge of textDocument/didChange
2021-09-23 14:41:51 -07:00
Fangrui Song
3ce756e39a
Adaopt llvmorg-14-init-3863-g601102d282d5: refactor clang::isIdentifierBody
2021-09-23 13:36:01 -07:00
Fangrui Song
f21fd7e5a2
pipeline: Avoid Twine
...
For some reason, Twine(int), when concatenated, may incorrectly become Twine(const unsigned long&) and cause a dereference crash.
2021-06-26 12:07:41 -07:00
Fangrui Song
80d06eb476
sema_manager: Use llvm::CrashRecoveryContext
2021-05-18 21:01:50 -07:00
Ludovic J
c018bce9af
hierarchicalDocumentSymbol: use a range based method to support
...
out-of-line class members (#674 )
2021-05-09 11:33:34 -07:00
Fangrui Song
c6686be382
ccls_lsp
...
The old name was somehow taken.
2021-04-05 18:04:57 -07:00
zhangjunphy
0ada56ef3b
Fix short_name_size when getNameAsString does not return a prefix ( #784 )
2021-03-30 23:33:43 -07:00
Fangrui Song
4cd308d7fd
Adapt llvmorg-12-init-17739-gf4d02fbe418d: change CanReuse
2021-01-28 00:18:27 -08:00
Yu Zeng
aca02d209b
Fix compile error when use msvc 2019 ( #754 )
...
See https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
2021-01-18 19:05:28 -08:00
Fangrui Song
40145807d5
completion: Don't overwrite the following identifier ( #749 )
2021-01-09 11:12:33 -08:00
Fangrui Song
a2d2fd8167
diagnosticMain: Rebuild preamble for bounds change
2020-12-26 12:31:41 -08:00
Jan Lahoda
4ff22e6603
Making the progress an integer, as per the specification ( #739 )
2020-12-26 12:30:53 -08:00
Fangrui Song
4c66fdf09d
Resolve "directory" in compile_commands.json in case CWD is not the project root
...
Also delete an unneeded chdir hack.
Close #703
2020-12-19 21:42:21 -08:00
Fangrui Song
feb153a843
Adapt llvmorg-12-init-11522-g4c55c3b66de: change ComputePreambleBounds
2020-11-18 22:33:04 -08:00
Fangrui Song
68d6e4122d
project: fix initial directory list for recursive .ccls
...
Fix #717
2020-11-06 18:55:01 -08:00
Fangrui Song
a3c5d4a1eb
Adapt llvmorg-12-init-5498-g257b29715bb: add an argument to the ctor of clang::driver::Driver
2020-09-23 16:06:49 -07:00
Fangrui Song
20a9f7b5f4
clang_tu: set RecoveryAST & RecoveryASTType
2020-08-30 10:21:58 -07:00
Fangrui Song
55c0d5b4eb
project: override the compdb entry with .ccls if compile_commands.json is not used
...
Note: `exact_match` should be false if the entry is an synthetic one, instead
of an explicit entry in compile_commands.json
2020-08-26 11:36:55 -07:00
Fangrui Song
aa4d2d1b43
If clang >= 10, don't crash on #pragma clang __debug
2020-08-22 10:29:39 -07:00
Fangrui Song
125915e254
Adapt llvmorg-12-init-946-g10b1b4a231a: add find_package(ZLIB)
2020-07-25 08:30:18 -07:00
Fangrui Song
ca95f48a53
Support workspaces as symlinks and symlinks within a workspace
...
Fix #639
2020-07-19 17:03:16 -07:00
Fangrui Song
5108cfafcb
Report index status via $/progress
...
Add WorkDoneProgress to represent WorkDoneProgressBegin/WorkDoneProgressReport/WorkDoneProgressEnd.
2020-07-04 10:05:26 -07:00