Commit Graph

82 Commits

Author SHA1 Message Date
Strahinja Val Markovic
11e42b49f0 Smarter updating of clang diagnostics display 2012-07-30 19:42:41 -07:00
Strahinja Val Markovic
71e3e86252 Adding option for custom extra rpath 2012-07-30 14:20:05 -07:00
Strahinja Val Markovic
333b71f8d5 Triggering syntastic error display more often 2012-07-29 22:13:42 -07:00
Strahinja Val Markovic
57bd4f7a47 Now possible to use external libclang.so 2012-07-29 20:58:04 -07:00
Strahinja Val Markovic
958a008462 Adding diagnostic extraction support
Next step is to add support to Syntastic so that it uses this new functionality
2012-07-28 15:27:30 -07:00
Strahinja Val Markovic
2667a82441 Now using the correct flag to warn on C++11 use 2012-07-28 11:19:26 -07:00
Strahinja Val Markovic
e46ea47df2 Replacing accidental use of C++11 auto 2012-07-27 13:52:56 -07:00
Strahinja Val Markovic
0d9d697b50 Only showing the first overloaded func signature 2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
e9cf3c14b2 Not adding a '(' after a function name insert 2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
3cc4cf8e10 Async clang parsing of the current file 2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
cd9f40b7c0 Add missing check for threads enabled 2012-07-26 21:44:17 -07:00
Strahinja Val Markovic
13f87c5a62 Buffer identifiers are now extracted async 2012-07-24 20:09:09 -07:00
Strahinja Val Markovic
b120d6a5ba Now extracting identifiers in C++ code 2012-07-23 20:17:59 -07:00
Strahinja Val Markovic
cdb8dfc86b Loading .ycm_clang_options files now
These files can contain flags that are passed to clang.
2012-07-22 15:19:28 -07:00
Strahinja Val Markovic
b703138cac Adding Boost.Filesystem to BoostParts 2012-07-22 15:09:50 -07:00
Strahinja Val Markovic
7bf18c7c5c Improving IdentifierCompleter performance
We limit the number of candidates returned to Vim to 20 and also make sure that
we are not returning any duplicate candidates. This provides a noticeable
improvement in latency.
2012-07-21 12:06:18 -07:00
Strahinja Val Markovic
0f7f32d96f Updating to boost 1.50 2012-07-21 11:37:40 -07:00
Strahinja Val Markovic
964c42068e Splitting the UnsavedFile struct into its own file 2012-07-21 09:09:29 -07:00
Strahinja Val Markovic
44b671c2c0 ClangCompleter now returs extra data
This data is used to show more information about the completions in the
completion menu.
2012-07-19 21:17:39 -07:00
Strahinja Val Markovic
e56080ea56 Using libc++ with clang from now on
This also applies a patch to gtest that resolves an issue with building gtest
with libc++. The patch was taken from here:

https://groups.google.com/d/topic/googletestframework/F1B9LArL9_U/discussion
2012-07-19 21:15:25 -07:00
Strahinja Val Markovic
f76ee24316 Now only showing available completion strings 2012-07-16 20:51:21 -07:00
Strahinja Val Markovic
bcb65ec43f Refactored the task building code for simplicity 2012-07-16 20:23:17 -07:00
Strahinja Val Markovic
c9e1706fa1 ClangCompleter now async and caches Clang data
First off, we don't block the GUI thread anymore for ClangCompleter (that was
always temporary). Secondly, now ClangCompleter will cache the data coming from
clang so that query-based filtering of members is fast.
2012-07-15 20:49:56 -07:00
Strahinja Val Markovic
a04c3322cc No results for empty query (IdentifierCompleter) 2012-07-15 19:44:35 -07:00
Strahinja Val Markovic
52d8a1236b If query empty, Results sorted lexicographically
This change was also the root cause of the crash bug I spent two days tracking
down. The problem was that the new bool member was not added to the custom copy
ctor... since we don't really need a custom copy ctor for Result, we're going
with the compiler-provided one.
2012-07-15 19:40:24 -07:00
Strahinja Val Markovic
20f0d2a280 Removing some unused aliases 2012-07-12 20:55:00 -07:00
Strahinja Val Markovic
ce23b5ca55 Moving the LatestTask typedef to Future.h 2012-07-12 20:54:40 -07:00
Strahinja Val Markovic
81811964c3 Improving UnsavedFile operator== 2012-07-12 20:54:08 -07:00
Strahinja Val Markovic
27e1400558 ClangComplete now sorts completions based on query 2012-07-11 22:41:32 -07:00
Strahinja Val Markovic
52b1b9f660 More forward decls instead of includes 2012-07-11 22:14:28 -07:00
Strahinja Val Markovic
dad2fc31bb Replacing a header file with a forward decl 2012-07-11 22:10:37 -07:00
Strahinja Val Markovic
be0085aca9 CandidateRepository is used for Candidate storage
This will make it easy to use the same Candidates for both the
IdentifierCompleter and the ClangCompleter, thereby reducing memory consumption
and increasing performance.
2012-07-11 22:08:04 -07:00
Strahinja Val Markovic
f25c3d90f7 Removing unused file 2012-07-11 21:41:39 -07:00
Strahinja Val Markovic
39ecf76798 Renamed ClangComplete to ClangCompleter 2012-07-10 23:28:58 -07:00
Strahinja Val Markovic
545792c055 Renaming Completer to IdentifierCompleter 2012-07-10 23:13:12 -07:00
Strahinja Val Markovic
94288108d8 Initial, rough kinda working version ClangComplete
Many things need to be ironed out still.
2012-07-10 15:26:07 -07:00
Strahinja Val Markovic
1df2a5d360 Using cmake_cxx_flags instead of add_definitions 2012-07-09 13:58:56 -07:00
Strahinja Val Markovic
0a553bf23c Building in c++11 mode where available 2012-07-08 17:55:14 -07:00
Strahinja Val Markovic
30c9637992 Using the vector indexing suite from Boost.Python
This removes the need for a special overload for AddCandidatesToDatabase. Also,
the GetFuture function now provides a more sensible API with the list being
returned instead of accepted as an out parameter.
2012-07-08 15:34:44 -07:00
Strahinja Val Markovic
9a82319c77 Initial version of the ClangComplete class 2012-07-08 11:54:57 -07:00
Strahinja Val Markovic
fb5d25fc81 The cpp file's header should be included first 2012-07-06 14:06:21 -07:00
Strahinja Val Markovic
174687c4bc Renaming ConcurrentStack to ConcurrentLatestValue 2012-07-06 12:14:25 -07:00
Strahinja Val Markovic
8da18e0319 Removing more llvm cruft files 2012-07-05 20:58:10 -07:00
Strahinja Val Markovic
c809d396d1 Removing more unwanted files 2012-07-05 20:31:42 -07:00
Strahinja Val Markovic
3880bd0093 Ignoring some llvm files we don't care about 2012-07-05 20:20:29 -07:00
Strahinja Val Markovic
65ac7dcd7b We DO want clang to be tracked in our in-tree llvm
The llvm gitignore file removes all clang files from revision control. Not what
we want in our case.
2012-07-05 18:24:45 -07:00
Strahinja Val Markovic
6ea344fcbb Removing ds_store files 2012-07-05 18:23:12 -07:00
Strahinja Val Markovic
ac1f40b9af Renaming our gtest targets to gtest_ycm
llvm also has a copy of gtest in its source tree. This causes cmake to bork
since it sees several different targets with the same name (gtest and
gtest_main). So we have to rename our versions of gtest and gtest_main to
something else... We're just appending _ycm now.

This will cause pain when we want to update gtest in the future from upstream,
but I don't see a better way of handling this.
2012-07-05 17:59:32 -07:00
Strahinja Val Markovic
5f4da9324a Adding llvm/clang to our CMakeLists files
The indexer target now depends on libclang. This 
will force cmake to build the required parts of 
llvm and clang.
2012-07-05 17:58:49 -07:00
Strahinja Val Markovic
1f51a89d39 Adding more llvm/clang files
These were ignored by git accidentally. We want ALL OF THEM since they all came
in the llvm/clang source distribution.
2012-07-05 17:55:45 -07:00