Commit Graph

545 Commits

Author SHA1 Message Date
Ivan Donchevskii
6cf1465ff8 Clang: Fix paths and updated diff for latest clang patches
I forgot that they must be relative to LLVM folder.
Also one patch had a typo and therefore is updated here.

Change-Id: I35241db84c0aa394211dfc7b4d779f8dfac5326a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-03-09 09:33:23 +00:00
Ivan Donchevskii
1a47df0a93 Clang: Fix code completion for connect()
Clang built with this patch properly handles
not only normal methods but also templated ones
which fixes code completion for QObject::connect.

Change-Id: If1c4c0f5fda29c1aff106d8ed7065ff502a26328
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2018-02-23 08:41:29 +00:00
Ivan Donchevskii
b90f2fb251 Clang: Fix crash in connect() statement
With this patch ClangCodeModel can properly
handle static overloads together with non-static ones.

Code completion still might crash - requires another patch.

Task-number: QTCREATORBUG-19184
Change-Id: I12f0e8cb56b3bed3f5ca1f7a9fe4ca3932b78125
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-02-19 10:12:56 +00:00
Eike Ziller
6ffe04bc40 Merge remote-tracking branch 'origin/4.5' into 4.6
Change-Id: Iea598ba7f789f6176e90f26c7858e8c783eb2716
2018-02-13 13:04:39 +01:00
Eike Ziller
24cd0b1cd6 Add changes file for 4.5.1
Change-Id: I4b5cd0eb7675e2fb3396668517a587e7496608ec
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2018-02-07 14:23:39 +00:00
Nikolai Kosjar
38807f3ded Clang: Fix clang test LibclangPrintingPolicyTest.SetAndGetProperties
Change-Id: I2b20cff1d5f0341eea0d1d994554fe2c8df9e837
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-02-02 11:08:53 +00:00
Eike Ziller
9f4c248fa9 Remove empty categories from change log
Change-Id: I7593c0ad1469e85ebe0973843087438f85422a71
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2018-01-30 14:06:11 +00:00
Eike Ziller
a8d8365c84 Add missing features to changes file
Change-Id: Ib7ddb8cc98a11ab4703a2d12e60891afcbba6d1c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-30 12:07:19 +00:00
Nikolai Kosjar
4a58581eed changelog: Correct instructions to enable clazy/tidy
The clang/tidy settings are part of the diagnostic configuration and not
anymore in its own group box "Clang Plugins".

Change-Id: Ibba95cff351521a8e0fda60f1b7f4e9a3e99c127
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2018-01-30 11:31:38 +00:00
Eike Ziller
f211802d4c Remove wrong change log entry
Change-Id: I76afba05334a69f5ca6c03350d8aeafcd1c6f319
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-30 10:21:42 +00:00
Eike Ziller
2e2b4f0998 Add changes file for 4.6
Change-Id: I5e36e735f6f721fba02d3e1fd86a98a43cfae5f5
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2018-01-26 09:59:12 +00:00
Nikolai Kosjar
40383715f7 Clang: Fix linkage in clang patch
Change-Id: I89759ff1b5d7cc9f17c74e34dc21479e91ee93a8
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-16 12:23:37 +00:00
Nikolai Kosjar
1a706b410c Clang: Add patches improving pretty printing declarations
Change-Id: I36b57c12998b959a3c7c350628c29beab46457b5
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-16 10:10:20 +00:00
Nikolai Kosjar
3c745a9eaa Clang: Enumerate clang patches
...to provide some more natural way of appending/inserting new ones at a
specific position. The enumeration also helps to communicate about the
patches.

Change-Id: I8ac911269a11d24a46920c81cd3231c06b94b828
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-16 10:10:07 +00:00
Nikolai Kosjar
c205b43af1 Clang: Clean up clang patches with regard to CINDEX_VERSION_MINOR
Ensure that CINDEX_VERSION_MINOR is never increased and that instead
specific macros indicate backported functionality. This minimizes
potential build problems with other API functions that might have been
backported or not in the meanwhile.

Change-Id: I44d868e82dd6a3ea5aa3e8b22e18bba5c4bf8d16
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
2018-01-16 10:09:57 +00:00
Ivan Donchevskii
7a2e1e29cb Clang: update clang patches
These patches should be applied on top of llvm/clang 5.0
List is taken from https://wiki.qt.io/Qt_Creator_Clang_Code_Model

Change-Id: Icd927ae12fc1ef8181a45e2d800efe3007c616ae
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-12 09:27:43 +00:00
Ivan Donchevskii
4f9b664d13 Clang: update patches for build with clazy
Clazy will now be a part of clang-tools-extra during
the build process which will allow to build clang one time.

Change-Id: Id506db267f4a1f0f0e8351ba21f1bc70a4555556
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2018-01-04 11:30:26 +00:00
Nikolai Kosjar
b2a3884cf3 Clang: Use markdown for documentation of extra patches
Makes the links clickable.

Change-Id: I2f0f7826e295bdb3ce6fc7aeaf478ee040e54141
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-12-12 14:14:25 +00:00
Eike Ziller
469edcdde3 Merge remote-tracking branch 'origin/4.5'
Conflicts:
	qbs/modules/qtc/qtc.qbs
	qtcreator.pri

Change-Id: Ic1ab71d0d40fa6c90e337c8ee9d9558e8f103eaa
2017-12-12 10:53:51 +01:00
Eike Ziller
36256d6e0c Remove outdated installer creation script and resources
It is no longer used (it is using same scripts as Qt now),
and contains outdated resources.

Change-Id: I0576d694ef16ced49303dfc4d6075b742dbcc3b1
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-12-07 13:45:06 +00:00
Eike Ziller
89f9f22035 Merge remote-tracking branch 'origin/4.5'
Conflicts:
	src/plugins/clangcodemodel/clangutils.cpp
	src/plugins/cpptools/clangcompileroptionsbuilder.cpp
	src/plugins/cpptools/compileroptionsbuilder.cpp

Change-Id: I0728f08171103259407bbbb35f93b70c2f2e18d0
2017-11-21 13:28:55 +01:00
Eike Ziller
7186456fd5 More 4.5 changes
Change-Id: Id75bc6dbfdfda12f2c12c70fb7a95ae7a0a3c56b
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-11-20 14:51:57 +00:00
Ivan Donchevskii
b6ba40df00 Clang: fix libclang link directory for 64bit linux
When Clazy is installed in lib64 folder instead of lib.

Change-Id: Ifb24e09c307dab2dd2f5121bf44a17a357c1a212
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-11-03 08:01:48 +00:00
Ivan Donchevskii
58e8904856 Clang: enable clang tidy and clazy in code model
Set QTC_CLANG_PLUGINS_LOAD env variable to get diagnostics
that come from libclang plugins.
This functionality works after the patch is applied to
clang repository and clang is properly built with it.

Task-number: QTCREATORBUG-15157
Change-Id: Iefeee4dd115f3f43ddc6ed79452a1135e653def6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-11-02 10:25:28 +00:00
Nikolai Kosjar
6de3eb7a1a Clang: Update patches for clang 5.0
Remove a bunch of on-top patches that are already part of llvm/clang 5.
Rebase the remaining ones and add backported ones.

Add also a README providing more information about the patches.

Task-number: QTCREATORBUG-18824
Task-number: QTCREATORBUG-17769
Change-Id: I9f6904b2e6d7c83de175e7b8c194e1a494cd2571
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-10-27 14:21:13 +00:00
Eike Ziller
c13e5bf21a Add changes file for 4.5
Change-Id: Ib30122c6fc5b14226a1560bc1e31e99f6930266c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-10-06 11:41:39 +00:00
Orgad Shaneh
5e8e619dd0 Merge remote-tracking branch 'origin/4.4' into 4.5
Change-Id: I9b7cb3d845628abf69a73a279f5a79202c0976c2
2017-10-04 16:11:17 +03:00
hjk
5baecec6b7 Qnx: Fix C++ debugging
Task-number: QTCREATORBUG-17901
Change-Id: Iab7dfa3eb9a211770e45405f344d75ff20e8acae
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-09-29 14:26:36 +00:00
Eike Ziller
af8cd2b633 More changelog
Change-Id: Ic0064a21bf080ddc4803bcbbe92d0dab29d765d9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-09-29 09:40:25 +00:00
Eike Ziller
2364efc133 Add changes file for 4.4.1
Change-Id: Icca756e45af941b0d6fe320ebc06183e27c01f02
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-09-29 07:29:27 +00:00
Nikolai Kosjar
89fa23a916 Beautifier: ClangFormat: Format current syntactic entity for no selection
In case there was no selection, the action "Format Selected Text" could
format the whole file (option) as a fallback.

However, there is also the use case of formatting the syntactic entity
under the cursor. Introducing another separate action for this feels
wrong, so remove the fallback instead since there is already an action
handling this.

Change-Id: Ia73f6074433e706bb4c2d375ad5b84dd59bc93a3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Lorenz Haas <lorenz.haas@histomatics.de>
2017-09-21 07:15:12 +00:00
Nikolai Kosjar
edab564cf0 Beautifier: ClangFormat: Add action "Disable Formatting for Selected Text"
Change-Id: I0786dfdc0679bbdf1cf1157067bd7f572ac7d108
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Lorenz Haas <lorenz.haas@histomatics.de>
2017-09-21 07:14:27 +00:00
Nikolai Kosjar
54a43de656 Add experimental .clang-format
This adds a configuration file for clang-format [1] and a test file to
demonstrate benefits and current problems with respect to Qt Creator's
coding rules [2].

This is based on clang-format from the llvm/clang 5.0 branch, which is
about to be released soon in the next days/weeks (already behind
schedule).

Using clang-format for Qt Creator brings these advantages:
 * Enforce a bunch of coding rules by a simple tool/shortcut invocation.
 * Spend less review cycles for authors and reviewers regarding
   formatting. This helps especially for/with first-time contributors.
 * clang-format sorts includes and using declarations.
 * clang-format adds/updates namespace end comments, e.g.: } //
   namespace Foo

See dist/clangformat/README.md for setup instructions und currently
known issues.

[1] https://clang.llvm.org/docs/ClangFormat.html
[2] https://doc-snapshots.qt.io/qtcreator-extending/coding-style.html

Task-number: QTCREATORBUG-17643
Change-Id: I87bdd66b8e492e99a360022962b0053f02a33e57
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-09-04 06:53:55 +00:00
Eike Ziller
f39d66973e More change log
Change-Id: I792eb013691f203e8da98dc51b2184af5cd26f63
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-08-25 12:47:41 +00:00
Leena Miettinen
c438eda6cd Doc: Windows Runtime renamed as UWP
To reflect the change in Qt installers since 5.9.

Change-Id: I685c32c168e95e76ae3d81b87d4d10a5092e7a8a
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2017-08-16 14:17:17 +00:00
Eike Ziller
a194b107d6 More change log
Change-Id: If236df9562af18867f3dd4d2c0ec4a527751c6e1
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-08-15 13:52:44 +00:00
Eike Ziller
892f33568e ChangeLog: We use the term 'pretty printing' instead of dumper
Change-Id: Icb8ee5853e61f869680a643f3791640e68e7aa1b
Reviewed-by: hjk <hjk@qt.io>
2017-07-19 10:48:04 +00:00
hjk
5a87c17c82 Add debugger related items to ChangeLog
Change-Id: I6b33f6c311983fdb2694f67bfed9e202028c2d64
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-07-18 12:32:49 +00:00
Eike Ziller
220132e7c5 Add changes file for 4.4
Change-Id: I655ce9fc0f82cd6632334d88fcac25aef6e150b8
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-07-18 07:25:47 +00:00
Nikolai Kosjar
9ddbae8987 Clang: Add patch allowing to suspend a translation unit
This will allow us to free memory.

Change-Id: I25c5c3c4473e58798ec58ffdf18ed3103dd6453c
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:24:24 +00:00
Nikolai Kosjar
dd73160424 Clang: Add patches fixing preamble generation for ifdef-guarded headers
This improves reparses for big header files significantly. The second
patch fixes invalid diagnostics associated with the new behavior.

Change-Id: I1606cff0164c69994e82c02766f955196d43953a
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:24:02 +00:00
Ivan Donchevskii
42ceae5e47 Clang: Add patch improving reparse performance on windows
Patch provides faster preamble loading by improving the handling of
diagnostics.

Change-Id: I61a79160e0272335d6d4e76478a7a35760cdf9ef
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:23:46 +00:00
Ivan Donchevskii
7acbef5a90 Clang: Add patch fixing locked files for windows
This clang patch makes llvm avoid using memory map
which makes llvm work without locking files.
Without that patch the user is sometimes unable to
save files in qt creator.

Task-number: QTCREATORBUG-15449
Change-Id: Iab77a758174d153f860edb2f419b6ab767571964
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:23:41 +00:00
Nikolai Kosjar
f2041c7881 Clang: Add patch fixing crash in completion
...with overloads.

https://bugs.llvm.org/show_bug.cgi?id=31093

Change-Id: I2f177794d8d84c91b5bc47da38a3a6c90f8d8d55
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:23:35 +00:00
Nikolai Kosjar
e88fcdbdb6 Clang: Add patch fixing crash on reparse
...in preamble serialization.

https://bugs.llvm.org/show_bug.cgi?id=20320

Change-Id: I241a04ffae7ebb1dc241bed81f2036178a86afb9
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:23:30 +00:00
Nikolai Kosjar
7865bb67d4 Clang: Update patch for leaking file descriptors
...to make it apply cleanly.

Change-Id: I512a48ecd7ce742885520a01bc6b774e244b1545
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:23:25 +00:00
Nikolai Kosjar
249b392947 Clang: Remove patch fixing mingw build
It was for llvm/clang >= 4.0, but we are still on 3.9 for now.

Change-Id: I29338b6ed90b3ac4f32021085139e6917fd5ac9e
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-07-13 13:23:19 +00:00
Tim Jenssen
56db0df2e6 Qbs: Fix crash when renaming files
Fix a crash when using file nodes to change the project. The methods used
to take const references, with the data living in the nodes of the project
tree. Since the methods change the project tree and thus cause the tree to
be rebuilt, the original data may get lost. So copy the data instead.

All the qbs::*Data classes are using shared data, so the overhead is not
too big.

Task-number: QTCREATORBUG-18440
Change-Id: I45ca5403a04e17790416dfe15b836f12c732e824
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-06-26 14:13:07 +00:00
Eike Ziller
89b3ab7274 Add more changes for 4.3.1
Change-Id: I11e5650fdd77c8eb0fb62beefaad2d9af81e96ed
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-06-26 08:59:00 +00:00
Eike Ziller
152c6d6c70 Add changes file for 4.3.1
Change-Id: Ie98600d794c179285f93f23fbe82605d6a5f0512
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-05-29 12:47:16 +00:00