Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-15244

stackoverflow in CPlusPlus lookup recursion

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Not Evaluated
    • None
    • Qt Creator 4.0.0-beta1
    • C/C++/Obj-C++ Support
    • None
    • Archlinux, git version /w debug. Initially happend with release version.

    Description

      I am experiencing regular crashes in a C++ project. They appear to be stack overflows within the CPlusPlus lookup.

      The crash only happens when I am actually working with the code after a while, sometimes few minutes, sometimes after an hour. I could not yet find a specific thing that I did causing the crash.

      Unfortunately I cannot currently share the code, but I have a full backtrace and name lookup qDebug output. The recursion follows these function calls:

      CPlusPlus::Internal::LookupScopePrivate::lookupType_helper (this=0x7fffa9a3e070, name=name@entry=0x7fffa8161748, processed=processed@entry=0x7fff83bdfe70, searchInEnclosingScope=searchInEnclosingScope@entry=false, origin=origin@entry=0x7fffa9a3bc20) at qt-creator/src/libs/cplusplus/LookupContext.cpp:1031
      CPlusPlus::Internal::LookupScopePrivate::lookupType_helper (this=0x7fffa9a3e830, name=name@entry=0x7fffa8161748, processed=processed@entry=0x7fff83bdfe70, searchInEnclosingScope=searchInEnclosingScope@entry=false, origin=origin@entry=0x7fffa9a3bc20) at qt-creator/src/libs/cplusplus/LookupContext.cpp:1036
      CPlusPlus::Internal::LookupScopePrivate::lookupType_helper (this=0x7fffa9a3ecc0, name=0x7fffa8161748, processed=processed@entry=0x7fff83bdfe70, searchInEnclosingScope=searchInEnclosingScope@entry=false, origin=origin@entry=0x7fffa9a3bc20) at qt-creator/src/libs/cplusplus/LookupContext.cpp:1036
      CPlusPlus::Internal::LookupScopePrivate::lookupType_helper (this=<optimized out>, name=0x7fffa8412280, processed=processed@entry=0x7fff83bdfee0, searchInEnclosingScope=searchInEnclosingScope@entry=true, origin=0x7fffa9a3bc20) at qt-creator/src/libs/cplusplus/LookupContext.cpp:1010
      CPlusPlus::LookupScope::lookupType (this=<optimized out>, name=<optimized out>) at qt-creator/src/libs/cplusplus/LookupContext.cpp:903
      CPlusPlus::Internal::LookupScopePrivate::findNestedType (this=this@entry=0x7fffa9a3bc20, name=name@entry=0x7fffa8161748, origin=origin@entry=0x7fffa9a3b1a0) at qt-creator/src/libs/cplusplus/LookupContext.cpp:1158
      CPlusPlus::Internal::LookupScopePrivate::nestedType (this=this@entry=0x7fffa9a3bc20, name=name@entry=0x7fffa8161748, origin=origin@entry=0x7fffa9a3b1a0) at qt-creator/src/libs/cplusplus/LookupContext.cpp:1187

      I tried to search for strings that could identify the symbols in question, but all I could find was "type". I do not see a clearly repeated loop in the lookup debug log.

      I understand that this is a challenging thing to debug, given that I cannot provide a deterministic way to reproduce it. Please let me know what kind of debugging information I could provide to help track down the issue.

      Attachments

        1. backtrace
          8.85 MB
          Zulan
        2. debuglog
          133 kB
          Zulan

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              kosjar Nikolai Kosjar
              Zulan Zulan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes