Open jlisee opened 2 years ago
So I saw the utils/lsif-clang-driver.py
tool from 9b6beabde0d620883af3edae9629d1102589ff1f and ran it on my tree in an attempt to find the source of the segmentation faults. My results are 1331/34898 lsif-clang commands failed. 😭
but none of them actually segfaulted. Those are all compilation errors.
I am going to make one more modification to ensure I have captured any possible segfaults.
I was able to succesfully index the tree with my clang 13 branch here https://github.com/jlisee/lsif-clang/tree/jlisee/llvm-13.0.1-upgrade-v2
Changes were basically zero besides updating the upstream code to version 13 and changing the build system to work with it.
EDIT - The modification I made to the drive did not seem to fix anything.
EDIT - The modification I made to the drive did not seem to fix anything.
Could you clarify what you mean by this?
I updated the driver to make sure it caught any segfaults that might of been happening and there were in fact none. This indicates the problem was possibly related to issues with mulit-threaded processing.
Anyways I think updating to a newer version of clang and clangd as base is the way to go because it has gotten more stable over time so will provide overall more stability for the project.
Leaving this issue open in case you or someone else finds a reproduction. I've created https://github.com/sourcegraph/lsif-clang/issues/89 for the potential upgrade.
While parsing a source file (will work to find the one) the
libclang-cpp.so.11
gets stuck in a infinite loop betweengetTypeInfo
andgetTypeInfoImpl
. There are several infinite recursion bugs fixed in clang since version 11, hopefully the debugging tool can pin point it so it can be removed.Full stack trace: