Josh Elsasser
82643dc79d
Ensure that paths passed to libclang are fully expanded
...
- "-include" arguments must have their paths resolved
- clang_resource_dir must have its path resolved
2017-12-03 12:53:05 -08:00
Jacob Dufault
ee5ea91c1f
Reduce test clang arg set.
2017-12-01 17:11:27 -08:00
Jacob Dufault
1eac0f8b47
Add operator test
2017-12-01 17:10:21 -08:00
Jacob Dufault
efd46ebd25
Update tests
2017-12-01 17:07:03 -08:00
Jacob Dufault
5d1fd4ce4d
Remove a bunch of std::cerr in favor of LOG_S
2017-12-01 17:04:39 -08:00
Jacob Dufault
cf5f465e9e
Add -Wno-unknown-warning-option
2017-12-01 10:11:09 -08:00
Jacob Dufault
b727e36afc
Move cleanup_maybe_relative_path to top of func in project.cc
2017-12-01 09:59:28 -08:00
Jacob Dufault
fa240e3132
Small code cleanup in src/indexer.cc.
2017-12-01 09:57:03 -08:00
Jacob Dufault
9b44bf7901
Run ./format.sh
2017-12-01 09:55:41 -08:00
Jacob Dufault
066166ba40
Add --clang-sanity-check.
...
Does a simple index test to verify expected libclang API behavior.
2017-12-01 09:46:40 -08:00
Jacob Dufault
2a2794da23
Also log arguments when failing to create a translation unit
2017-12-01 09:46:40 -08:00
Jacob Dufault
2b888b2a97
Add .ycm_extra_conf.py
...
This is useful if using YouCompleteMe to edit cquery.
2017-12-01 09:46:40 -08:00
topisani
ab6c5f0515
Emit semantic highlighting for types
2017-12-01 09:42:22 -08:00
topisani
c4ada3e9df
Don't highlight operators as functions ( #104 )
...
* Don't highlight operators as functions
* address comments
2017-12-01 17:08:19 +01:00
topisani
63d2b5fa10
nitpick fixing
2017-11-30 14:12:41 -08:00
topisani
4e153784f6
Index language as enum instead of string
2017-11-30 14:12:41 -08:00
topisani
e6bcd05a7e
markdown compliant language identifiers
2017-11-30 14:12:41 -08:00
topisani
28ad5b1ed1
Index file language and send it on hover
2017-11-30 14:12:41 -08:00
Fangrui Song
eac644d81a
On *nix, use a realpath(3) variant (which does not expand symlinks) in NormalizePath
...
Before this commit, when a source file is a symlink, cquery is not able to serve LSP requests for it.
2017-11-30 11:27:26 -08:00
Jacob Dufault
38ff70ebc3
Disable serialization of clang_parseTranslationUnit2FullArgv
2017-11-29 20:23:34 -08:00
Jacob Dufault
f4acde7588
Add --log-stdin-stdout-to-stderr
...
Prints messages received and stdin/stdout to stderr. Useful when developing a new client that uses cquery as the backend.
2017-11-29 20:22:10 -08:00
Jacob Dufault
f1f2cc3bd1
Serialize clang_parseTranslationUnit2FullArgv requests.
...
Also try to emit diagnostics when translation unit creation fails.
2017-11-29 19:53:07 -08:00
Jacob Dufault
29185c2fe3
Update index tests
2017-11-29 19:21:23 -08:00
Jacob Dufault
aeab1a0b79
Fix MSVC builds
2017-11-29 19:18:58 -08:00
Jacob Dufault
e421f86bfa
Try to make index tests more platform independent
2017-11-29 19:18:25 -08:00
Jacob Dufault
76c07f3cc6
Additional improvements to automatic index test updates.
2017-11-29 19:09:11 -08:00
Jacob Dufault
68f6d34693
Only wait when running index tests on windows.
2017-11-29 19:09:10 -08:00
Jacob Dufault
f5b7b62a4a
Format .gitignore; add cquery_diagnostics.log
2017-11-29 19:09:10 -08:00
Jacob Dufault
f6f88cc788
Better logging in when iterating files.
2017-11-29 19:09:10 -08:00
Jacob Dufault
f84945fb51
Make SafeGetLine work the same across different file-ending styles.
2017-11-29 19:09:10 -08:00
Fangrui Song
3ca2d0f2ad
waf configure --bundled-clang=5.0.0 to use prebuilt clang+llvm 5.0.0, fixes #41
2017-11-29 11:12:45 -08:00
nobody
c7ef44ad53
Fix hang during reading from stdin
...
I experienced this hang problem when using cquery with
LanguageClient-neovim.
Sometimes std::cout would hang because the pipe is full, which would
normally be fine, since the client would read from the pipe soon.
However, in this case the client is blocking on a write(). This
shouldn't happen, because cquery has a stdin thread which constantly
reads from stdin. But, in C++, cin and cout are tied streams. Reading
from cin would cause cout to flush, which cause the read to block.
So, cquery can't write because the client doesn't read, the client won't
read before it finishes writing. It can't finish writing because cquery
can't read, and cquery can't read because cquery can't write. Which is a
deadlock.
The solution is to simply untie cin and cout.
2017-11-28 13:58:11 -05:00
Fangrui Song
87f6452b5d
Rename clang_args to .cquery
2017-11-27 12:31:54 -05:00
Jacob Dufault
7923b5d219
Revert "Upgrade bundled clang+llvm to 5.0.0, fixes #41 "
...
This reverts commit 162c4e8198bbae2a1ef52b764a365d7b92b8f81e.
2017-11-27 08:40:06 -08:00
Jacob Dufault
d5951c0e69
Revert "Specify nullptr for source_filename in clang_parseTranslationUnit2 so that we do not need to strip main source filename from args"
...
This reverts commit 6adc3a28c39a5f6b58a0a57bfae83916051c19f8.
2017-11-27 08:20:42 -08:00
Fangrui Song
7df44f75a7
Upgrade bundled clang+llvm to 5.0.0, fixes #41
2017-11-27 11:13:32 -05:00
Fangrui Song
2b54296992
Specify nullptr for source_filename in clang_parseTranslationUnit2 so that we do not need to strip main source filename from args
2017-11-27 11:13:07 -05:00
Fangrui Song
bf2aaf470e
Use clang_getCursorKindSpelling
2017-11-27 11:11:21 -05:00
Phil Wise
8ef2be0429
Add note on compilationDatabaseDirectory option
...
This is useful when building with cmake
2017-11-27 10:40:25 -05:00
Josh Elsasser
76785105ed
Add an option to disable EmitProgress methods during indexing
2017-11-26 19:50:57 -05:00
Jacob Dufault
d1692c8deb
Add link to wiki on README
2017-11-26 12:28:41 -08:00
Fangrui Song
8aaffb7031
Set rpath if not --use_system_clang
2017-11-26 15:15:05 -05:00
xbreak
972a6359da
Added waf options to use clang from system ( fixes #36 ): ( #64 )
...
- `--use-system-clang` enables use of system clang.
- `--llvm-config=LLVM_CONFIG` specifies which llvm-config to use.
- `--clang-prefix=CLANG_PREFIX` specifies the clang prefix to use as
a fallback if llvm-config is not available.
2017-11-26 12:13:43 -05:00
Peter Elmers
750cc4ea30
Respond to comment
2017-11-26 12:12:59 -05:00
Peter Elmers
3341b1f13d
Only replace text if both rangeLength and range are not set
2017-11-26 12:12:59 -05:00
Walter Erquinigo
31d7423490
Rebuild vscode plugin and fix some naming
2017-11-26 12:11:09 -05:00
Walter Erquinigo
3cee3cb775
Support an optional compilation database dir at initialization
2017-11-26 12:11:09 -05:00
Peter Elmers
6f6cd4ea7f
Give default value to compileCommandsDirectory
2017-11-26 12:11:09 -05:00
Peter Elmers
b7059e69d7
Add compileCommandsDirectory to config struct
2017-11-26 12:11:09 -05:00
Fangrui Song
dba27c3d34
Catch ios_base::failure exceptions in ReadContent
...
`filename` may be a directory (the latest Emacs lsp-mode sometimes sends a `textDocument/didOpen` message with an empty filename) or the file cannot be read.
2017-11-22 11:35:46 -05:00