Commit Graph

325 Commits

Author SHA1 Message Date
Fangrui Song
0ba4a7f0a9 Implement index.onChange: true; enable spell checking for diagnostics 2019-11-09 19:58:32 -08:00
Fangrui Song
017a91c30e Add DeclUse as element type of declarations 2019-11-09 19:58:32 -08:00
Fangrui Song
ce72cf7bd9 Remove $ccls/base and clean up; deduplicate codeLens 2019-11-09 19:58:32 -08:00
Fangrui Song
d3e0a4c4fd Add index.multiVersion{Black,White}list
They allow files matching specified patterns to be indexed only once
even if index.multiVersion > 0. An example is to exclude system headers
with index.multiVersionBlacklist: ["^/usr/include"]
2019-10-24 01:13:24 -07:00
Fangrui Song
4f67bd03d5 index.multiVersion: int
Before, QueryFile::Def::{all_symbols,outline} were built by indexers.
Now, {symbol,outline}2refcnt are used instead, built by main thread.
*_removed are augmented with Query*:Def to allow removal of old {symbol,outline}2refcnt entries.
2019-10-24 01:13:24 -07:00
Fangrui Song
a8bb605d4a Fix unaligned load/store; add index.multiVersion prototype, rename index.onParse to index.OnOpen
Don't call getFieldOffset() on RD->isInvalidDecl()
2019-10-24 01:13:24 -07:00
Fangrui Song
6aee7b9648 Remove ASTUnit from indexer and clean up 2019-10-24 01:13:22 -07:00
Fangrui Song
5c0a146ee4 detailed_name: "{\n}" -> "{}" ; completion 2019-10-24 01:12:58 -07:00
Fangrui Song
27a5b24b59 Add license notice 2019-10-24 01:01:21 -07:00
Fangrui Song
39787d2851 clang-format
DEF CON 26 CTF
2019-10-24 01:01:21 -07:00
Fangrui Song
22627d7a1f Validate RecordDecl 2019-10-24 01:01:21 -07:00
Fangrui Song
fc6e2af66f Uniquify textDocument/references
There can be duplicates with template instantiation.
2019-10-24 01:01:21 -07:00
Fangrui Song
1c0bf0af65 Add textDocument/codeAction for clang FixIt
What do you think of the challenge ccls-fringe in Real World CTF?
2019-10-24 01:01:21 -07:00
Fangrui Song
bfb759fd09 Misc 2019-10-24 01:01:21 -07:00
Chao Shen
8eeb1bb3af Fix diagnostics on MacOS and duplicated bases. 2019-10-24 01:01:20 -07:00
Fangrui Song
bde0e6d837 Improve comment and outline 2019-10-24 01:01:20 -07:00
Fangrui Song
3be281416d Fix Twine; index TypedefNameDecl to specialization; anonymous RecordDecl fields 2019-10-24 01:01:20 -07:00
Fangrui Song
3b997b12ad Use ContainerDC for extent, index callees, set StaticMethod 2019-10-24 01:01:20 -07:00
Fangrui Song
389418f546 Better bases/derived and initializer 2019-10-24 01:01:20 -07:00
Fangrui Song
d6ce5e6768 Fix spell for clang < 7 2019-10-24 01:01:20 -07:00
Fangrui Song
134a09a255 Remove libclang 2019-10-24 01:01:20 -07:00
Fangrui Song
af77e6615d CrashRecoveryContext 2019-10-24 01:01:20 -07:00
Fangrui Song
0f63be2418 Support BindingDecl and VarTemplate{,Partial}SpecializationDecl 2019-10-24 01:01:20 -07:00
Fangrui Song
8cce275206 Misc improvement to indexer
* Make CXXConstructor span one more column to left/right
* Use OrigD to collect Decl::Record members
* Better comment parsing
* Limit lines of initializers and macro definition to 3
* Attribute macro arg uses to spelling loc
* Remove FuncDef::declaring_type
2019-10-24 01:01:20 -07:00
Fangrui Song
ebf07265eb Diagnostics 2019-10-24 01:01:20 -07:00
Fangrui Song
b3d5ea8be5 Simplify 2019-10-24 01:01:20 -07:00
Fangrui Song
c4e22bde23 Use Clang C++ for completion and diagnostics 2019-10-24 01:01:20 -07:00
Fangrui Song
aa9cdad54f Use clangTooling 2019-10-24 01:01:20 -07:00
Fangrui Song
b759798e5d Support uses from other files and improve references in macro replacement-list 2019-10-24 01:01:20 -07:00
Fangrui Song
24e99fd767 Cleanup 2019-10-24 01:01:20 -07:00
Fangrui Song
16448e98d1 Add some ObjC kinds 2019-10-24 01:01:20 -07:00
Fangrui Song
d816e1b918 $ccls/publishSemanticHighlighting: use pair<int,int> in place of lsRange 2019-10-24 01:01:20 -07:00
Fangrui Song
3e8f8fea64 clangIndex 2019-10-24 01:01:20 -07:00
Fangrui Song
f9befbd5fb pipeline 2019-10-24 01:01:20 -07:00
Fangrui Song
8e4d62212b Misc changes to clangIndex 2019-10-24 01:00:37 -07:00
Fangrui Song
96e0f0fafa clangIndex 2019-10-24 00:55:39 -07:00
Fangrui Song
9b54e5391c Clean up clang_tu; retrieve comments with clang::ASTContext::getRawCommentForAnyRedecl 2019-10-24 00:55:39 -07:00
Fangrui Song
103aa711d3 First draft: replace libclang indexer with clangIndex 2019-10-24 00:53:16 -07:00
Fangrui Song
b784685c61 diagnostics 2019-10-24 00:18:13 -07:00
Fangrui Song
a96d9613f4 Put static const into IndexVar::def (a definition is not required unless odr-used) 2019-10-24 00:17:28 -07:00
Fangrui Song
9b9bf1cd19 Fix .. in compdb path; better type alias 2019-10-24 00:17:28 -07:00
Fangrui Song
1830103ec6 Internalize strings & remove diagnostics_publisher.cc 2019-10-24 00:17:28 -07:00
Fangrui Song
d21476d7ee Inject anonymous struct/union into parent scopes 2019-10-24 00:17:28 -07:00
Fangrui Song
732e002b13 Infer system include paths from CompilerInvocation 2019-10-24 00:17:28 -07:00
Fangrui Song
d165a0b0ea Use clang::PrintingPolicy and remove type_printer 2019-10-24 00:17:28 -07:00
Fangrui Song
806a05b234 Add Config->largeFileSize; pure virtual or defaulted methods are definitions; fix $ccls/callHierarchy 2019-10-24 00:17:28 -07:00
Fangrui Song
f0559bba54 Remove Timer and PerformanceImportFile 2019-10-24 00:17:28 -07:00
Fangrui Song
34dc1e93e9 Remove WithFileContent & lex_utils.{cc,h} 2019-10-24 00:17:28 -07:00
Fangrui Song
42bcf2b58f $ccls/memberHierarchy: add field offset 2019-10-23 21:56:51 -07:00
Fangrui Song
a962061698 Simplify pipeline 2019-10-23 21:56:51 -07:00