Comments (10)
from emacs-ccls.
Thank you for your replay
Can you elaborate the files you have? Is there a declaration in a.h and a corresponding definition in a.c?
yes there is and are all in under the same directory src/
On a reference, textDocument/definition should bring you to the definition if a.c is indexed
how can I make sure it is indexed? I have compile_commands.json in my project root.
Another thing Im not sure if the problem is from ccls or lsp-mode.
from emacs-ccls.
Please dump the files. Without concrete examples it is hard to tell what goes wrong.
from emacs-ccls.
This happens in every c/c++ project. For example I have the ccls source project when I try jumping to definitions it jumps to the header files.
from emacs-ccls.
executing xref-find-references gives this error message "lsp--location-to-td-position: Wrong type argument: hash-table-p, nil"
from emacs-ccls.
I went back to cquery and deleted compile_commands.json and it worked perfectly. I think the problem is from compile_commands.json because I reproduced the json file and the problem came back.
from emacs-ccls.
The problem is not clearly specified. Please describe a.c a.h compile_commands.json you have. If you suspect your compile_commands.json is illformed you may switch to .ccls
wiki/FAQ describes how to add -log-file= to get more diagnostics.
from emacs-ccls.
Hello guys,
That's strange, but I got error: (wrong-type-argument hash-table-p nil)
That's in my doom-emacs config. While spacemacs works fine.
here it the backtrace from doom-emacs
Debugger entered--Lisp error: (wrong-type-argument hash-table-p nil)
gethash("uri" nil)
lsp--location-to-td-position(nil)
lsp--symbol-info-to-identifier(#<hash-table equal 6/65 0x3053b4d>)
mapcar(lsp--symbol-info-to-identifier (#<hash-table equal 6/65 0x3053b4d> #<hash-table equal 6/65 0x306f2f1> #<hash-table equal 6/65 0x3098775> #<hash-table equal 6/65 0x30eef85> #<hash-table equal 6/65 0x314ff81> #<hash-table equal 6/65 0x31a976d>))
#f(compiled-function (function sequence) #<bytecode 0x52e3c1>)(lsp--symbol-info-to-identifier (#<hash-table equal 6/65 0x3053b4d> #<hash-table equal 6/65 0x306f2f1> #<hash-table equal 6/65 0x3098775> #<hash-table equal 6/65 0x30eef85> #<hash-table equal 6/65 0x314ff81> #<hash-table equal 6/65 0x31a976d>))
apply(#f(compiled-function (function sequence) #<bytecode 0x52e3c1>) lsp--symbol-info-to-identifier (#<hash-table equal 6/65 0x3053b4d> #<hash-table equal 6/65 0x306f2f1> #<hash-table equal 6/65 0x3098775> #<hash-table equal 6/65 0x30eef85> #<hash-table equal 6/65 0x314ff81> #<hash-table equal 6/65 0x31a976d>) nil)
seq-map(lsp--symbol-info-to-identifier (#<hash-table equal 6/65 0x3053b4d> #<hash-table equal 6/65 0x306f2f1> #<hash-table equal 6/65 0x3098775> #<hash-table equal 6/65 0x30eef85> #<hash-table equal 6/65 0x314ff81> #<hash-table equal 6/65 0x31a976d>))
#f(compiled-function (backend) #<bytecode 0x155360d>)(xref-lsp)
apply(#f(compiled-function (backend) #<bytecode 0x155360d>) xref-lsp nil)
xref-backend-identifier-completion-table(xref-lsp)
xref--read-identifier("Find references of: ")
byte-code("\300\301!C\207" [xref--read-identifier "Find references of: "] 2)
call-interactively(xref-find-references nil nil)
command-execute(xref-find-references)
UPD: btw, usual lsp-ui-peek-find-references
works fine.
UPD2: xref-find-references
works fine. So seems like only default xref-finf-references
doesn't work.
from emacs-ccls.
@zaidmsh Please the close the issue if you believe it is resolved.
@myrgy See xref-prompt-for-identifier
in https://github.com/MaskRay/ccls/wiki/Emacs#find-definitionsreferences
from emacs-ccls.
This happens to me regularly, but not always. I think I had the issue before using LSP, though, so it's probably a problem with xref.
from emacs-ccls.
Related Issues (20)
- c++17, std::optional HOT 1
- Header files not found with emacs-ccls, but works fine at vscode. HOT 1
- imenu: show static member variable instead of function
- Help wanted with configuration: C++ headers not found HOT 1
- conditional highlights doesn't work HOT 2
- Is there a way to manually suspend/resume ccls indexing?
- ccls stuck in "starting"
- Cannot find the references via ccls.xref HOT 2
- Open all hierachy tree at once
- Customize initialization options in S-exp has no effect HOT 1
- Multi-root project setup HOT 2
- Compilation warnings (as of 29.3)
- Use lsp-protocol.el HOT 6
- (void-function lsp:ccls-semantic-highlight-symbol-ranges). HOT 11
- use eval-and-compile instead of eval-when-compile HOT 1
- Function definition lsp:ccls-call-children is void HOT 3
- imenu not showing symbol types HOT 3
- Help with .ccls file config: Header file correctly parsed but "file not found" error appears.
- can not jump to std definition
- How to prevent buffers *ccls-tree call/inheritance hierarchy to use same window than buffer Treemacs ?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from emacs-ccls.