- 06 Oct, 2015 1 commit
-
-
Daniel Teske authored
Didn't work if there was any folded text before the #include. Change-Id: I8f16205f06bfaa8b8541401a9ebd5995c15b2227 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
- 29 Sep, 2015 1 commit
-
-
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:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 28 Sep, 2015 2 commits
-
-
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:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
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:
Christian Stenger <christian.stenger@theqtcompany.com>
-
- 24 Sep, 2015 1 commit
-
-
Nikolai Kosjar authored
Change-Id: I7729fe944e38726d5c4692f6013e60b3f4fd8c26 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- 23 Sep, 2015 3 commits
-
-
Orgad Shaneh authored
Task-number: QTCREATORBUG-14583 Change-Id: Icffa9039215a841e200f20b83cda37d782b94e9a Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Orgad Shaneh authored
Actual test is added in a follow-up commit. Change-Id: I645d1e50d4ac9d281e31a0375f64fea849bf5e25 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Cristian Adam authored
Make sure that on Windows the corresponding header /source file is searched using case insensitive comparisons. Change-Id: I66b06cd8a7c46b78e8ff24e11803287630f3914b Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 22 Sep, 2015 2 commits
-
-
Tobias Hunger authored
This is necessary to have the same template work in the old-style wizards and the JSON wizard, which supports inserting \n, \t as well as line continuation for everything. Change-Id: I11c310998b92650003206484de8f1ecfc6000034 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
Tobias Hunger authored
Convert existing licensetemplate syntax to macro expansion. That is way more powerful than what we used to have. Do return the (converted) license template and do not try to fill in information since that is not available when querying the template. Change-Id: Ia4f45ccf055772b21b0c2ce3c083cf49c45ae7d8 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- 16 Sep, 2015 2 commits
-
-
Tobias Hunger authored
Change-Id: I9bffcdbfba3c873324e12a8104da5d277259ea31 Reviewed-by:
Eike Ziller <eike.ziller@theqtcompany.com>
-
Orgad Shaneh authored
The correct value is set on construction. The document knows *less*. Task-number: QTCREATORBUG-14583 Change-Id: I60973047e14ce0664c49e802124b51aa23444835 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 14 Sep, 2015 1 commit
-
-
Tobias Hunger authored
Change-Id: Ie9032ea494d151a491d37cd5e777f3c2df40f1e2 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 10 Sep, 2015 1 commit
-
-
Nikolai Kosjar authored
This mainly reverts commit 81721f67 C++: Fix resolving of recursive typedef commit 2070431d C++: Fix resolving of partial specialization and some bits of other changes due to dependencies. It also reverts commit e0594fc9 C++: Fix expensive lookup for boost which attempted to solve the upcoming problems. Task-number: QTCREATORBUG-14741 Task-number: QTCREATORBUG-14889 Task-number: QTCREATORBUG-14962 Change-Id: I3f9e1f97199e5199b71da394fc27051c7709bd1f Reviewed-by:
Orgad Shaneh <orgads@gmail.com> Reviewed-by:
Eike Ziller <eike.ziller@theqtcompany.com>
-
- 02 Sep, 2015 1 commit
-
-
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:
David Schulz <david.schulz@theqtcompany.com>
-
- 31 Aug, 2015 3 commits
-
-
Marco Bubke authored
Change-Id: Ica1a33b2619f64746b8671bff2856503775a40bf Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Marco Bubke authored
Diagnostics are now moved to the clang backend process. Fixits are supported too. Change-Id: I20faacf466bbf78dec479220c3d7b336a47bc453 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Nikolai Kosjar authored
...for two regressions that were introduced by commit e0594fc9 C++: Fix expensive lookup for boost Change-Id: I1fa01e626da480ca53e04b4709fec458378e7aef Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- 24 Aug, 2015 1 commit
-
-
Daniel Teske authored
Instead, switch to edit mode, show sidebar, scroll to project, and show a tooltip next to the project. The tooltip is somewhat easy to miss, but this is a clear improvement in most cases. Change-Id: Icd27f76e7d434f33e731b6fd56473ff913986a89 Task-number: QTCREATORBUG-8422 Reviewed-by:
Eike Ziller <eike.ziller@theqtcompany.com>
-
- 21 Aug, 2015 1 commit
-
-
Nikolai Kosjar authored
With this patch, CheckSymbols takes about 200ms for processing the boost/proto hello world example [1]. Before, it needed about 11 seconds (timer in CheckSymbols::run). Same goes for including <boost/fusion/include/zip.hpp>. The custom ProcessedSet object was added to support "completion for typedefs for templates in namespaces", but apparently that's not needed anymore, as the added test proves. [1] http://www.boost.org/doc/libs/1_58_0/doc/html/proto/users_guide.html#boost_proto.users_guide.getting_started.hello_world Task-numer: QTCREATORBUG-14889 Task-numer: QTCREATORBUG-14741 Change-Id: I90454e8970a9d04033d56beeb0c6d7a0d4e6cc62 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- 17 Aug, 2015 1 commit
-
-
Thiago Macieira authored
Found by ICC builtinindexingsupport.cpp(96): warning #177: function "<unnamed>::WriteTaskFileForDiagnostics::processedDiagnostics" was declared but never referenced Change-Id: I7de033f80b0e4431b7f1ffff13fa7bd62338aa50 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 10 Aug, 2015 1 commit
-
-
Eike Ziller authored
Since we are referring to them by ID without specifying the category in addition. This requirement was implicitly added by 592ffe73 Task-number: QTCREATORBUG-14742 Change-Id: I7be539127b76de90c19b0282565d845fa42010ab Reviewed-by:
Robert Loehning <robert.loehning@theqtcompany.com> Reviewed-by:
hjk <hjk@theqtcompany.com>
-
- 03 Aug, 2015 1 commit
-
-
Nikolai Kosjar authored
Tested with clang 3.6. Change-Id: Icd2383bd03b91837b3129045e9ab78a1620efd02 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com> Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 20 Jul, 2015 4 commits
-
-
Nikolai Kosjar authored
Handle the following use cases: 1. Editor is opened --> Register file at backend. 2. Close editor for which a project part exists --> Unregister file with project part. 3. Close editor for which no project part exists (anymore) --> Unregister file with empty/default project part. Change-Id: I2b253004a920cccef989876538ab552eacf6b45c Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
Nikolai Kosjar authored
Change-Id: Ic928380f711e58008ed66691137c238598a5c26a Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
Nikolai Kosjar authored
It compared pointers, not ids. Change-Id: Ic77c64e452f8abfe9a35b74591f0f3baeebcf7f0 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
Nikolai Kosjar authored
File paths are not unique since e.g. each qbs group in a file is mapped to a project part. Change-Id: I7df3f224dd23046b869f2588b8a34eb26cfc0b1a Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 14 Jul, 2015 2 commits
-
-
Tobias Hunger authored
Change-Id: I56f5b7373846bb091456c050eb1ff3495ca2dd72 Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
Tobias Hunger authored
Change-Id: I8fc68c266acb55a7c3e014697a7b526784914f7a Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
- 10 Jul, 2015 4 commits
-
-
Nikolai Kosjar authored
This is unsafe. Change-Id: I8ac075a7289afa0d84785e37b1325d186a153000 Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
Nikolai Kosjar authored
...so derived classes are freed from doing this. Change-Id: I73f3eca54be14cfd6542a466f0e9c024457bef07 Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
Nikolai Kosjar authored
Among others, BaseEditorDocumentParser::projectPart() was a blocking operation in case the parser was running. This led to noticeable GUI freezes for the ClangCodeModel since the function was called from the main thread. Rework *EditorDocumentParser to clearly separate the configuration data (input) from the actual object state. Querying/setting configuration or (last) state does not block anymore. update() is supposed to get the necessary configuration and the last state at the beginning and to set the new state at end. Change-Id: Ib4b534fa6ff373c3059826726b3f10ece95acc21 Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
Nikolai Kosjar authored
...and rename to "determineProjectPart". This is in preparation for a follow-up change. determineProjectPart() should not set any state. Change-Id: Iad7be8638fd97a79a4227a944896ac9af0a36862 Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- 08 Jul, 2015 2 commits
-
-
Nikolai Kosjar authored
Needed for ClangCodeModel. If the content changes, we want to send it immediately to the codemodelbackend process. Change-Id: Iedf16930b494ccb5e91f1bc435db026067d98613 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com> Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
Nikolai Kosjar authored
* Unneeded private declared constructors * Q_DISABLE_COPY for classes deriving from QObject (not copyable) Change-Id: I89669e8bb062cda16bab5812e2ac591f9dcf4af2 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 02 Jul, 2015 1 commit
-
-
Nikolai Kosjar authored
...coming from TemporaryCopiedDir. The warning was: QTemporaryDir: Unable to remove <some path> most likely due to the presence of read-only files. It occurred for plugin tests (e.g ClangCodeModel) that used a Qt resource path as source for TemporaryCopiedDir. Copying a qrc file makes it read-only, see also QTBUG-17163. Therefore, explicitly add the write permission. Change-Id: Idc04acd4844c5bc20e9b3de1efc78da3b06ac97c Reviewed-by:
Christian Stenger <christian.stenger@theqtcompany.com> Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- 01 Jul, 2015 1 commit
-
-
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:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- 29 Jun, 2015 3 commits
-
-
Nikolai Kosjar authored
Now the ClangCodeModel makes also use of this. Change-Id: I3d547dffe48e35d3b3d03063bc1a640283d670c1 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-
Orgad Shaneh authored
Defined in section 14.7.2 of the standard. Fixes completion for std::string. The following explicit instantiation appears in bits/basic_string.tcc: extern template class basic_string<char>; This is wrongfully considered a specialization for a forward declaration (like `template<> class basic_string<char>` is). Introduce a new Symbol type for explicit instantiations. Use-case: template<class T> struct Foo { T bar; }; template class Foo<int>; void func() { Foo<int> foo; foo.bar; // bar not highlighted } Change-Id: I9e35c8c32f6b78fc87b4f4f1fc903b42cfbd2c2b Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Nikolai Kosjar authored
Making CompilerOptionsBuilder to use the toolchain from the project part simplifies its public API, but following the code paths initiated by ClangCodeModel and ClangStaticAnalyzer gets harder, so better enable the separation of those by making CompilerOptionsBuilder a base class. Change-Id: I0a6bb3f8323ba09b88135a7f9d1ef967331a8ff0 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-