Hacker News new | ask | show | jobs
by typesanitizer 1500 days ago
Hey! I work on code intelligence at Sourcegraph, so I figured I'd chime in here.

> why don't you have decent crossrefs

We do have compiler-accurate cross references for many repos. Some examples:

- TypeScript: https://sourcegraph.com/github.com/sindresorhus/got/-/blob/s...

- C: https://sourcegraph.com/github.com/neovim/neovim/-/blob/src/...

- C++: https://sourcegraph.com/github.com/KhronosGroup/Vulkan-Sampl...

Why are not all repos covered?

Because different languages have different build systems, so inferring the right build commands, dependencies etc. is not so straightforward; these are necessary pre-requisites for compiler-accurate cross references. We're working on fixing this with auto-indexing: https://docs.sourcegraph.com/code_intelligence/explanations/...

For C and C++ specifically, auto-indexing is challenging because of the large variety in build systems, informal specification of dependencies (such as in a README instead of a machine-readable format), and platform-specific code.

Outside of auto-indexing, we do have an indexer for C and C++ right now (https://github.com/sourcegraph/lsif-clang) which can be run in CI; that way one can generate an index and upload it to Sourcegraph on a regular basis. It is 'Partially available' (https://docs.sourcegraph.com/code_intelligence/references/in...) right now. We're keenly aware of the interest in C++, and are working our way through different languages based on usage.