1. 06 Oct, 2015 1 commit
  2. 29 Sep, 2015 1 commit
    • Nikolai Kosjar's avatar
      Clang: Integrate clang's fixits as refactoring actions · a7928b4b
      Nikolai Kosjar authored
      They are invokable by the usual means (Alt+Enter, editor's context menu
      > Refactor) plus by the context menu of the editor's left margin for the
      related line.
      
      The fixit text comes directly from libclang and is thus not translated.
      We modify the text slighty by stripping the diagnostic category prefix
      ("note:", "error:", ...) and capitalizing the first letter.
      
      A follow-up change should properly indicate available refactorings with
      a refactoring icon in the editor's left margin.
      
      Task-number: QTCREATORBUG-14868
      Change-Id: I86157c9f824d2a9dedf19087476d02ad1e6cc854
      Reviewed-by: default avatarMarco Bubke <marco.bubke@theqtcompany.com>
      a7928b4b
  3. 28 Sep, 2015 2 commits
    • Marco Bubke's avatar
      Clang: Add revision and completion management · b412eb81
      Marco Bubke authored
      Reparsing a document is expensive so we should avoid it by all means. In
      this patch we prevent that the same document is send again. It isn't send
      too in advance of a code completion if there was no changes before the
      the completion position.
      
      Change-Id: I0bb786ba1d4e7ce08611a518cb32f8cf8f4d0037
      Reviewed-by: default avatarNikolai Kosjar <nikolai.kosjar@theqtcompany.com>
      b412eb81
    • Nikolai Kosjar's avatar
      C++: Comment out a flaky test · e241444b
      Nikolai Kosjar authored
      The test relied on logic that was reverted with change
      915f68de.
      
      LookupScopePrivate::findSpecialization() gets a "TemplateNameIdTable
      &specializations" with a non-deterministic order. Without the extra
      logic, the very first entry will be chosen as the found specialization.
      
      The non-deterministic order comes from the TemplateNameId::Compare,
      which calls std::lexicographical_compare() with the template arguments,
      which are FullySpecifiedTypes. The result of
      FullySpecifiedType::operator<() might depend on a pointer comparison.
      
      Change-Id: I8d69d1bb5831145b1c21a5ea848c0043f17ec415
      Reviewed-by: default avatarChristian Stenger <christian.stenger@theqtcompany.com>
      e241444b
  4. 24 Sep, 2015 1 commit
  5. 23 Sep, 2015 3 commits
  6. 22 Sep, 2015 2 commits
  7. 16 Sep, 2015 2 commits
  8. 14 Sep, 2015 1 commit
  9. 10 Sep, 2015 1 commit
  10. 02 Sep, 2015 1 commit
    • Nikolai Kosjar's avatar
      C++: Fix crash after triggering completion and closing editor · 169556db
      Nikolai Kosjar authored
      Fix use-after-free for the following case:
        1. Open an editor
        2. Trigger a long processing completion
           (e.g. simulate with QThread::msleep in
            CppCompletionAssistInterface::getCppSpecifics)
        3. ...and immediately close the editor (e.g. with Ctrl+W)
        4. Wait until it crashes.
      
      The completion thread relied on the BuiltinEditorDocumentParser object,
      which is deleted once the editor is closed. Fixed by sharing the
      ownership of that object between the *EditorDocumentProcessor and the
      completion assist interface.
      
      This case came up when doing tests for the bug report below.
      
      Task-number: QTCREATORBUG-14991
      Change-Id: I0b009229e68fc6b7838740858cdc41a32403fe6f
      Reviewed-by: default avatarDavid Schulz <david.schulz@theqtcompany.com>
      169556db
  11. 31 Aug, 2015 3 commits
  12. 24 Aug, 2015 1 commit
  13. 21 Aug, 2015 1 commit
  14. 17 Aug, 2015 1 commit
  15. 10 Aug, 2015 1 commit
  16. 03 Aug, 2015 1 commit
  17. 20 Jul, 2015 4 commits
  18. 14 Jul, 2015 2 commits
  19. 10 Jul, 2015 4 commits
  20. 08 Jul, 2015 2 commits
  21. 02 Jul, 2015 1 commit
  22. 01 Jul, 2015 1 commit
    • Orgad Shaneh's avatar
      C++: Cleanup LookupContext · 7bed5cd3
      Orgad Shaneh authored
      Since the cache is now more reliable, some workarounds and optimizations
      in the instantiation process are not needed anymore.
      
      Also avoid instantiation of base classes when expandTemplates is
      disabled.
      
      As a bonus, we now resolve decltype of template function for a type that is not
      referenced anywhere but in the decltype.
      
      Change-Id: Idf42ba7280992db477c9aa62bb1815b27174594d
      Reviewed-by: default avatarNikolai Kosjar <nikolai.kosjar@theqtcompany.com>
      7bed5cd3
  23. 29 Jun, 2015 3 commits