Jacob Dufault
be961fc4f2
Add hover (instead of reusing detailed_name)
2017-12-18 21:20:00 -08:00
Jacob Dufault
9502c889d2
Update tests for typedef changes.
2017-12-18 20:42:17 -08:00
Jacob Dufault
3d4ebcd7ee
Update tests for llvm 4
2017-12-18 20:40:12 -08:00
Fangrui Song
8897bcc54d
[indexer] Display declaration line for typedef/using. fix #141
...
GetDocumentContentInRange calls clang_tokenize, which is not easy to
handle multi-line declarations. Only display declaration lines for
one-line `typedef`/`using` now.
2017-12-18 19:30:49 -08:00
Jacob Dufault
9b9740f421
Reduce the number of travis configurations.
...
Hopefully this will make it run faster.
2017-12-18 16:57:31 -08:00
Jacob Dufault
1fd50b4dea
Fix MSVC build.
2017-12-18 16:35:43 -08:00
Walter Erquinigo
cb098cbfc3
test
2017-12-18 16:26:58 -08:00
Walter Erquinigo
a6cb98945e
Add obj-c support in the indexer
2017-12-18 16:26:58 -08:00
Fangrui Song
5600989a42
[indexer] Treat explicit destructor call as not is_implicit
( #159 )
...
Also fixed an unused warning.
2017-12-18 13:48:32 -08:00
Fangrui Song
0cf54f3557
[waf] Fix ./waf configure --bundled-clang=5.0.0
2017-12-18 13:30:57 -08:00
Jacob Dufault
002d32c8a0
Fix broken auto-resource-dir detection
2017-12-18 11:47:58 -08:00
Joel Hock
934c20312a
set rpath for mac when --use-system-clang
2017-12-17 21:18:38 -08:00
Fangrui Song
9fd35db034
[indexer] Index references to system headers
2017-12-17 21:16:40 -08:00
Fangrui Song
ef7215cd7f
textDocument/definition: find macro definition instead of Type definition if the macro expands to tokens led by a SymbolKind::Type
2017-12-17 21:14:57 -08:00
Fangrui Song
2fb135e10a
Support FreeBSD
...
This commit fixes issue on cquery's side. Its dependencies loguru and
sparsepp should also be ported to FreeBSD:
* https://github.com/emilk/loguru/pull/46
* sysinfo(2) called by sparsepp https://github.com/greg7mdp/sparsepp/blob/master/sparsepp/spp_memory.h#L32
2017-12-17 16:44:21 -08:00
Riatre Foo
0045e4817c
Windows build script ( #154 )
...
* Cast from float explicitly.
* Upgrades to waf 2.0.2.
For VS2017 support on Windows.
* [waf] Supports building on Windows.
Needs 7z.exe in PATH for extracting prebuilt clang NSIS installer (when
using bundled clang).
RPATH is "emulated" by putting a libclang.dll alongside the cquery
binary.
Tested with Visual Studio 2017 toolchain.
* [waf] Fix default_resource_directory on Windows + system clang.
* Add AppVeyor configuration
2017-12-17 10:14:30 -08:00
Fangrui Song
0a8ea0e51f
Honor environment variable CXXFLAGS and tweak README ( #153 )
...
Also loosen rsync `-a` option to `-rt`
2017-12-16 19:39:51 -08:00
DaanDeMeyer
97da6c937a
Remove sparsehash from wscript
2017-12-16 09:39:36 -08:00
DaanDeMeyer
4aa92466eb
Fix IsSymLink on Linux ( #147 )
...
IsSymlink was giving faulty results when finding recursive files on Linux. I've updated the function to use the built-in POSIX macro for checking if a file is a symlink.
2017-12-16 08:32:10 -08:00
Jacob Dufault
c0c3fc41a4
Do not emit an include in the indexer if we failed to resolve the file. Also add -resource-dir to tests.
2017-12-15 21:24:31 -08:00
Jacob Dufault
d23de3a9fb
Move default resource directory computation to utils.
...
This will be used by the test system as well.
2017-12-15 21:18:49 -08:00
Jacob Dufault
883f886d2a
Make sure GetExecutablePath is normalized on windows.
2017-12-15 21:18:23 -08:00
Jacob Dufault
9f249970b0
Ensure DEFAULT_RESOURCE_DIRECTORY is a string.
2017-12-15 21:06:27 -08:00
Jacob Dufault
487680e8d1
Fix project.cc unit tests.
...
-x processing broke.
2017-12-15 21:05:48 -08:00
Walter Erquinigo
5238c50027
objc
2017-12-15 12:02:32 -08:00
Fangrui Song
ea5c89e956
[waf] Use {str,bytes}.decode to make it compatible with Python 2/3
2017-12-14 21:35:25 -08:00
Fangrui Song
044ef0b309
[waf] Install resource dir to $PREFIX ( #139 )
2017-12-14 17:45:15 -08:00
Chen
f3f7bc26cd
Better default resource dir heuristics: use system resource dir with system clang and relative path to resource dir with bundled clang ( #137 )
2017-12-14 14:35:21 -08:00
Fangrui Song
d8b47ebdd4
[waf] Use RPATH $ORIGIN on FreeBSD/Linux and copy libclang.so.[4-9] to $PREFIX/lib/clang+llvm*/lib/ ( #133 )
...
Also copy build/release/lib/clang+llvm-5.0.0-linux-x86_64-ubuntu14.04/lib/clang/5.0.0/include/* to $PREFIX/lib/clang+llvm*/resource-dir/include/
2017-12-13 10:53:42 -08:00
Fangrui Song
17cac3d30a
[indexer] Change macro's IndexVar::def::detail_name to its approximate definition
...
For `#define foo 3`,
Before this commit, `detail_name` was `foo` (displayed for textDocument/hover reqeusts).
It is now shown as `#define foo 3`
2017-12-13 09:35:44 -08:00
Jacob Dufault
a1fd516788
Log stack trace when there is bad index/buffer lines
2017-12-12 09:50:12 -08:00
Jacob Dufault
1467526bad
Be less aggressive about indexing potential lambdas
2017-12-12 09:49:52 -08:00
Jacob Dufault
48a7ec73eb
Add index test for #131
2017-12-12 00:27:25 -08:00
Fangrui Song
17f23bf3bf
In OnIndexDeclaration, get_type_description() may return the name of a typedef and there is no (, causing insert
failing
2017-12-12 00:14:25 -08:00
Jacob Dufault
33c3d99925
Small readme tweaks
2017-12-12 00:11:46 -08:00
Jacob Dufault
1ce881f9f3
Update compile_commands.json symlink to point to build/release
2017-12-12 00:10:20 -08:00
Fangrui Song
cb633541e2
Change default path of built executable from build/app to build/release/bin/cquery (installed to $PREFIX/bin/cquery)
...
This is incompatible, please change your editor configuration:
* LanguageClient-neovim: g:LanguageClient_serverCommands
* Emacs cquery.el: cquery-executable
* VSCode: cquery.launch.workingDirectory cquery.launch.command
2017-12-12 00:07:38 -08:00
Jacob Dufault
9b909b3a13
Move usr out of *Def and into Query*/Index* types.
...
I'd like to make the *Def structures optional in the future, and usr is always non-optional.
2017-12-11 23:57:44 -08:00
Jacob Dufault
2751f51956
Format
2017-12-11 21:21:03 -08:00
Jacob Dufault
12bfabf9c2
No more NonElidedVector
2017-12-11 21:20:29 -08:00
Jacob Dufault
e535fab581
Do not elide vector in serialization
2017-12-11 21:15:37 -08:00
Jacob Dufault
7a42f3f393
Add test for lambda
2017-12-11 21:10:26 -08:00
Jacob Dufault
1dc7087f21
Update tests
2017-12-11 21:07:12 -08:00
Fangrui Song
fb902a29b7
Add missing definition and reference info to lambda paramaters. fix #120
2017-12-11 21:06:55 -08:00
Fangrui Song
c6135f5de0
Reflect empty string
...
MarkedString::value is a mandatory field and the client may complain if `value` does not exist.
2017-12-11 21:03:30 -08:00
Fangrui Song
60febe6e9d
[waf] Add --variant={debug,release} ( #129 )
...
./waf build => build/app
./waf build --variant=debug => build/debug/app
./waf build --variant=release => build/release/app
TODO Make --variant default to 'release', rename `app` to `bin/cquery`, and disallow empty variant
2017-12-11 20:36:53 -08:00
Fangrui Song
86cc50e27f
Implement diagnostic range as per clang_formatDiagnostic
2017-12-11 13:34:37 -08:00
Peter Elmers
177e4cd224
Escape more symbols in path handling.
2017-12-11 11:11:02 -08:00
Fangrui Song
479c0c59bc
More idiomatic
2017-12-10 19:53:17 -08:00
Jacob Dufault
0aa832a48c
travis: Disable cache; broken build
2017-12-07 14:34:11 -08:00