You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello dear maintainers of clangd.
This might be very well known to you, though I wasn't able to find mentions of it in docs and discussions/issues, - it seems that clangd-indexer create a database (binary/dex as well as yaml) where C-functions are properly described (signature, return types, possibly template arguments, etc), while C++ methods have only a name. Is it a bug or a feature? If it's the former, any change of fixing it soon?
Thanks!
Originally posted by Arech July 27, 2022
Hi!
Thank you for this fantastically interesting project!
I'm trying to find if it's possible to use clangd as kind of a database about a code in my sample C++ project. I've stumbled upon an issue I brought to the title - it looks like my clangd doesn't have any information about C++ methods (besides their name) in the database, while it has all the info (arguments, return type) for C-style (global?) functions. Is it expected for clangd toolset v14.0.3 (the latest compiled with tools I've found), or I'm doing something wrong?
(well, it seems that most of options doesn't affect the issue, since the output is the same if only --executor=all-TUs is specified - and without it I get a weird error, I don't know how to fix)
(well, almost the same here, only options up to --pretty seems to affect anything and the rest, though are printed with --help-hidden doesn't seem to do anything helpful to the issue, - I'm leaving it here just to show what I've already tried)
And what I get it is more-or-less complete information for C-style functions, like double std::log10(double), but I get only a symbol name and scope for C++ method, like std::vector::erase. Thought, each such symbol might have multiple entries, which I presume corresponds to a different function instantiation...
Also I verify the output by looking at the clangd-index-server log output, - there's indeed info for C-functions, but nothing for C++ methods, so it's likely not an issue of ClangQL...
Does such info exist in the clangd database at all? If yes, is it possible to fetch it and how exactly?
ADDED: reindexed into --format=yaml and unfortunately,no such info exist in the index file. C functions are fully specified, while C++ methods only have a name... Is it a bug, I presume?
Thank you!
The text was updated successfully, but these errors were encountered:
Hello dear maintainers of clangd.
This might be very well known to you, though I wasn't able to find mentions of it in docs and discussions/issues, - it seems that
clangd-indexer
create a database (binary/dex as well as yaml) where C-functions are properly described (signature, return types, possibly template arguments, etc), while C++ methods have only a name. Is it a bug or a feature? If it's the former, any change of fixing it soon?Thanks!
Discussed in #1229
Originally posted by Arech July 27, 2022
Hi!
Thank you for this fantastically interesting project!
I'm trying to find if it's possible to use
clangd
as kind of a database about a code in my sample C++ project. I've stumbled upon an issue I brought to the title - it looks like my clangd doesn't have any information about C++ methods (besides their name) in the database, while it has all the info (arguments, return type) for C-style (global?) functions. Is it expected for clangd toolset v14.0.3 (the latest compiled with tools I've found), or I'm doing something wrong?My approach is:
compile_commands.json
withclangd-indexer.exe
with(well, it seems that most of options doesn't affect the issue, since the output is the same if only
--executor=all-TUs
is specified - and without it I get a weird error, I don't know how to fix)clangd-index-server.exe
with(well, almost the same here, only options up to
--pretty
seems to affect anything and the rest, though are printed with--help-hidden
doesn't seem to do anything helpful to the issue, - I'm leaving it here just to show what I've already tried)FuzzyFindReply
of the server using https://github.com/frabert/ClangQL (symbols
-based table)And what I get it is more-or-less complete information for C-style functions, like
double std::log10(double)
, but I get only a symbol name and scope for C++ method, likestd::vector::erase
. Thought, each such symbol might have multiple entries, which I presume corresponds to a different function instantiation...Also I verify the output by looking at the
clangd-index-server
log output, - there's indeed info for C-functions, but nothing for C++ methods, so it's likely not an issue ofClangQL
...Does such info exist in the clangd database at all? If yes, is it possible to fetch it and how exactly?
ADDED: reindexed into
--format=yaml
and unfortunately,no such info exist in the index file. C functions are fully specified, while C++ methods only have a name... Is it a bug, I presume?Thank you!
The text was updated successfully, but these errors were encountered: