- Oct 23, 2017
-
-
Ivan Donchevskii authored
Since it's never used for other compilers. Change-Id: I9512692d1dc9f9a701ea2453b7d50005478bed5d Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@qt.io>
-
- Sep 22, 2017
-
-
Ivan Donchevskii authored
Make build command the same for all builders. Minimize differences. Change-Id: I1cfe5071b3afb4944ed178fff1e57d3aee45d8a9 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@qt.io>
-
- Sep 14, 2017
-
-
Marco Bubke authored
The old code model expected the macros as C++ formatted text ("#define Foo 42) but newer targets like the Clang codemodel expect key value arguments like "-DFoo=42". So instead of parsing the text again and again we use an abstract data description. Task-number: QTCREATORBUG-17915 Change-Id: I0179fd13c48a581e91ee79bba9d42d501c26f19f Reviewed-by:
Tobias Hunger <tobias.hunger@qt.io>
-
- Nov 16, 2016
-
-
Denis Klychkov authored
Task-number: QTCREATORBUG-15590 Change-Id: Icbfce4ffd6e9f9802641d35d898fa1dc1c4c18ee Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@qt.io>
-
- Oct 18, 2016
-
-
Nikolai Kosjar authored
...for -std=gnu++0x. Define the unknown identifier/type "__float128" so at least the headers can be parsed successfully. Of course this does not help for parsing client code referencing that identifier, but this should be the less common case. Task-number: QTCREATORBUG-17126 Change-Id: Id321311713029d8aa77e068b02361d86debfada6 Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
Nikolai Kosjar authored
Same as for the Clang Static Analyzer, so move the implementation into the base class and use it. This has gone unnoticed so far because it looks like that the error diagnostic from the bug report can be extracted with libclang (as shown in the info bar), but is not printed from libclang or clang.exe itself. Change-Id: I5b714ba374c5fdefe234faf012a3515e96c9a08c Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
Nikolai Kosjar authored
...by specifying the word width, as for the Clang Static Analyzer. This has gone unnoticed so far because it looks like that the error diagnostic from the bug report can be extracted with libclang (as shown in the info bar), but is not printed from libclang or clang.exe itself. Task-number: QTCREATORBUG-17130 Change-Id: Ia7a5ee3825c7211cdf80c2166a9eb454ce48cac1 Reviewed-by:
David Schulz <david.schulz@qt.io> Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
Nikolai Kosjar authored
libclang generated: warning: /U__cpp_aggregate_nsdmi: 'linker' input unused [-Wunused-command-line-argument] warning: /U__cpp_alias_templates: 'linker' input unused [-Wunused-command-line-argument] ... It needs -U. Change-Id: Ibbd2f97e6f806215e3008803f57608b9b6b4c641 Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
- Oct 17, 2016
-
-
Nikolai Kosjar authored
...because it might suggest to append a new line. Change-Id: I8d5701a1d20c9d94ee528383227a6e3b446b4ff2 Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
Nikolai Kosjar authored
Change-Id: I473c737107c14a4bc2c78b7c697eef02eb4bacff Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
- Jul 07, 2016
-
-
Nikolai Kosjar authored
Re-produce with: 1) Open qt-essential-includes.pro and configure it with a Qt 5.7.0 MSVC2013 64 Bit Kit. 2) Run the analyzer. Errors during analyzing occur in winnt.h [1]. This is somehow related to /D__int32=long that we pass on. Removing it helps. It looks like there is no reason anymore to pass on the toolchain defines with clang-3.8 at all. Our unit test projects can be parsed by the analyzer without them. Tested with the following kits: Qt 5.6.0 (mingw39_32) Qt 5.6.0 (msvc2013) Qt 5.6.0 (msvc2013_64) Qt 5.6.0 (msvc2015) Qt 5.6.0 (msvc2015_64) Qt 5.7.0 (mingw53_32) Qt 5.7.0 (msvc2013) Qt 5.7.0 (msvc2013_64) Qt 5.7.0 (msvc2015) Qt 5.7.0 (msvc2015_64) [1] In file included from D:\dev\creator\creator-4.1\src\plugins\clangstaticanalyzer\unit-tests\qt-essential-includes\main.cpp:2: In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include/QtGui\QtGui:32: In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include/QtGui/qopenglcontext.h:60: In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include\QtGui/qopengl.h:49: In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include\QtCore/qt_windows.h:61: In file included from C:\Program Files (x86)\Windows Kits\8.1\include\um\windows.h:164: In file included from C:\Program Files (x86)\Windows Kits\8.1\include\shared\windef.h:24: In file included from C:\Program Files (x86)\Windows Kits\8.1\include\shared\minwindef.h:182: C:\Program Files (x86)\Windows Kits\8.1\include\um\winnt.h(3077,1) : error: functions that differ only in their return type cannot be overloaded __getcallerseflags ( ^ D:\dev\llvm\3.8\changingLibClang_install\bin\..\lib\clang\3.8.1\include\intrin.h(68,14) : note: previous declaration is here unsigned int __getcallerseflags(void); ~~~~~~~~ ^ 1 error generated. Change-Id: I2de8d0393a575f88dd59dfa71fbfb11f2debc158 Reviewed-by:
Christian Kandeler <christian.kandeler@qt.io>
-
- Jul 04, 2016
-
-
Nikolai Kosjar authored
libclang 3.8 seems to be sensitive to file paths separators [1]. On Windows, this led to not updated document annotations and/or crashes after reparsing. When passing file paths to libclang, convert to native separators. When getting file paths from libclang, convert back. This handles: * main file path * file paths of the unsaved files * -I<DIR> arguments, the resource path (for builtins) and the paths to the wrapped qt headers * included header files from libclang * source locations from libclang Also, minimize the conversion in SourceLocation to a minimum by making filePath() lazy. [1] https://llvm.org/bugs/show_bug.cgi?id=28381 Change-Id: If5866f34a6fdc6b34b16c022d3988e8e6eae2a0a Reviewed-by:
Christian Stenger <christian.stenger@qt.io>
-
- Apr 13, 2016
-
-
Nikolai Kosjar authored
For some reason, clang 3.8.0 on Windows does not enable exceptions anymore, which leads to parse errors in MSVC headers (reported upstream [1]). With this change, we can finally parse main/mainwindow.cpp of a Qt Widgets Application for a MSVC2015 Kit and libclang 3.8.0 without any error. [1] https://llvm.org/bugs/show_bug.cgi?id=27324 Change-Id: I532ad4852a06318baf083d363378bc577b3c4309 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-
- Apr 12, 2016
-
-
Nikolai Kosjar authored
This applies the following change for the clang code model, too. commit d13d1795 Clang Static Analyzer: Workaround analyzing MSVC2015 projects with clang 3.8.0 II Change-Id: Ia229d7e8b24c2e1c0a83d9a53c623ea1f79c4a06 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-
Nikolai Kosjar authored
Infer the version from the _MSC_FULL_VER macro, so it cannot get out of sync with that. Adapt the analyzer to do the same. Based on commit daf08d87 Clang Static Analyzer: Workaround analyzing MSVC2015 projects with clang 3.8.0 Change-Id: I9d34abdbe2c83fe271eadd8d051caad43aca6772 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-
- Apr 11, 2016
-
-
Nikolai Kosjar authored
As for the analyzer, this makes us independent of the default triple and will most likely reduce the maintenance - e.g. the target implies certain internal command line arguments, we will profit from added ones. This fixes parsing of mingw headers with the clang code model. Change-Id: I722b981125a80fac5f62a7af40a83ecdd7bbf811 Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-
- Mar 30, 2016
-
-
hjk authored
Kudos to cgmb and https://github.com/cgmb/guardonce Change-Id: Ifa8970734b8d43fd08c9260c645bdb0228633791 Reviewed-by:
Tobias Hunger <tobias.hunger@theqtcompany.com>
-
- Jan 19, 2016
-
-
Tobias Hunger authored
* Update files in src/plugins Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22 Reviewed-by:
Tobias Hunger <tobias.hunger@theqtcompany.com>
-
- Jan 13, 2016
-
-
Marco Bubke authored
Change-Id: I503ffd72a98db6668f6449ce95e695e035a79a29 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Marco Bubke authored
Change-Id: I0aa65ec6c80dcd437f13ff70021388b0da57ccfd Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Marco Bubke authored
Change-Id: I0fc4c73553a29585d4ff7c8d6593acb6975d1607 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
Marco Bubke authored
Also extracting inline HeaderPath class and change projects list in vector because the size is larger than a pointer. Change-Id: I885fdff3fe9bccc877634d1615249755f5b674fd Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- Nov 26, 2015
-
-
Marco Bubke authored
Change-Id: I2c3fb69aabfe075bde76d63eafc2ca370f17493c Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com>
-
- Nov 11, 2015
-
-
Nikolai Kosjar authored
...since it assumes a project part != 0 and does not participate in ownership. Change-Id: Ia9c1eca52776990576a2dac61e9144234b04c59c Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- Nov 06, 2015
-
-
Nikolai Kosjar authored
Register the translation unit and request diagnostics from the clangbackend as soon as the project part is determined. There is no reason to wait until the parser is finished for the highlighter. Change-Id: Iebccbf59ebd205389462dcee97363746fb651bb2 Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- Jul 14, 2015
-
-
Tobias Hunger authored
Change-Id: I8fc68c266acb55a7c3e014697a7b526784914f7a Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
- Jun 29, 2015
-
-
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>
-
- Jun 26, 2015
-
-
Nikolai Kosjar authored
Makes the client code more readable. Change-Id: Ie98ba93c758643039d3ebdc7550b1c4ac9473298 Reviewed-by:
Marco Bubke <marco.bubke@theqtcompany.com> Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com>
-
- Mar 05, 2015
-
-
Friedemann Kleint authored
Change-Id: I0144ac33e88980c431c54a6d69bbde28da4b1967 Reviewed-by:
Orgad Shaneh <orgads@gmail.com>
-
- Feb 20, 2015
-
-
Orgad Shaneh authored
Task-number: QTCREATORBUG-8007 Change-Id: Ic96aaa433442812a99bac9d16bb9124d66762e8c Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- Jan 26, 2015
-
-
Christian Kandeler authored
Needed for clang static analyzer. Change-Id: I0221b7e87f7b52a4aa5ebf7f4b26c19e584d63e7 Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
-
- Jan 16, 2015
-
-
Eike Ziller authored
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125 Reviewed-by:
Alessandro Portale <alessandro.portale@digia.com>
-
- Dec 19, 2014
-
-
Nikolai Kosjar authored
...instead of going through CppModelManager::projectInfo(). Now CppModelManager::projectInfo() returns an invalid ProjectInfo in case there is no valid data for the given Project. Change-Id: I11908bf2ddf865b1d3d71ff176eaf4139292b21c Reviewed-by:
Christian Kandeler <christian.kandeler@theqtcompany.com> Reviewed-by:
Erik Verbruggen <erik.verbruggen@theqtcompany.com>
-
- Nov 07, 2014
-
-
Nikolai Kosjar authored
Analyzers can use this to rule out irrelevant (sub) projects. Change-Id: I5a9eb66f06156f0619dc639f6f4080a8fc761ee6 Reviewed-by:
Daniel Teske <daniel.teske@theqtcompany.com>
-
Nikolai Kosjar authored
...and make some comparison functions public. Change-Id: If4c9a95031dece32073ce111484a890230190688 Reviewed-by:
Fawzi Mohamed <fawzi.mohamed@theqtcompany.com>
-
- Nov 06, 2014
-
-
Nikolai Kosjar authored
This one does not buy us much... Change-Id: I1d6c4667c038d319d2c16166505a386653a9f066 Reviewed-by:
Fawzi Mohamed <fawzi.mohamed@theqtcompany.com>
-
- Oct 30, 2014
-
-
Nikolai Kosjar authored
Change-Id: Ib346359487cb06c0fc95ff5796e9dd6f220b9d16 Reviewed-by:
Christian Stenger <christian.stenger@digia.com>
-
- Oct 20, 2014
-
-
Nikolai Kosjar authored
Most of the functions were quite generic and not specific to clang. Change-Id: I160cfeb7eca5b69ad6a8932a4f76db5bf5c1d42d Reviewed-by:
Fawzi Mohamed <fawzi.mohamed@digia.com>
-
- Oct 15, 2014
-
-
Eike Ziller authored
Change-Id: I0acde2c3b995693de682679471f03af85bdd0a61 Reviewed-by:
Alessandro Portale <alessandro.portale@digia.com>
-
- Sep 16, 2014
-
-
Erik Verbruggen authored
.. because they now hold only files for a single language+extensions combination. Task-number: QTCREATORBUG-11709 Task-number: QTCREATORBUG-12818 Change-Id: If294f6de07d60126be733d98de12b89b8af3efce Reviewed-by:
Nikolai Kosjar <nikolai.kosjar@digia.com>
-