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. debuglog
          133 kB
        2. backtrace
          8.85 MB

        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