Skip to content
  • Kevin Funk's avatar
    Clang: Fix crash in findDeclaration · b2291e2a
    Kevin Funk authored
    This happens when KDevelop tries to load stale declarations, e.g. from
    an unloaded language plugin.
    
    See message:
    [kdevelop(21511)/(kdevplatform.language) unknown(0): Cannot load a
    top-context from file
    "/home/kfunk/.cache/kdevduchain/kdevelop-{e7169c72-542e-43db-ab7d-923f7cb0d500}/topcontexts/6359"
    - the required language-support for handling ID 100 is probably not
      loaded
    [kdevelop(21511)/(kdevelop.plugins.clang) unknown(0): Detected an
    invalid declaration for "acos"
    
    ^ That last line was added as part of this patch.
    
    Backtrace:
    0  KDevelop::Declaration::kind (this=0x0) at
    /home/kfunk/devel/src/kf5/kdevplatform-stable/language/duchain/declaration.cpp:98
    1  0x00007fffc2f26ef4 in (anonymous namespace)::findDeclaration
    (qid=..., ctx=..., position=..., handled=Python Exception <class
    'gdb.error'> There is no member named next.:
    ) at
    /home/kfunk/devel/src/kf5/kdevelop-stable/languages/clang/codecompletion/context.cpp:513
    2  0x00007fffc2f2534e in ClangCodeCompletionContext::completionItems
    (this=0x7fffa4003e40, abort=@0x7fffb2def7a8: false) at
    /home/kfunk/devel/src/kf5/kdevelop-stable/languages/clang/codeco
    mpletion/context.cpp:1021
    3  0x00007fffc2f22729 in (anonymous
    namespace)::ClangCodeCompletionWorker::completionRequested
    (this=0x3e72ed0, url=..., position=..., text=..., followingText=...) at
    /home/kfunk/devel/src
    /kf5/kdevelop-stable/languages/clang/codecompletion/model.cpp:138
    b2291e2a