Commit Graph

5028 Commits

Author SHA1 Message Date
Tim Jenssen
63e7e83e22 Clang: Filter exception flags and move some more
Change-Id: I3ef6a6bb2297d6965c5c1d457cfe2b354ee3dcdb
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-02-01 14:02:06 +00:00
Marco Bubke
bc7e3f7cc9 Clang: Remove white space
Change-Id: If95b63923e838ba831975e4870629126dacc54e3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-01 13:11:23 +00:00
Marco Bubke
b860d46579 Clang: Handle generated files
We don't handled generated files so we got internal parse errors.

Change-Id: If75e202f93fe3f71f43e3b1d15c0fb77e20c2248
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-01 13:11:15 +00:00
Eike Ziller
55400d5bec Merge remote-tracking branch 'origin/4.2'
Change-Id: I8896af66cf8af7436cf3946ddb013742260d50a9
2017-02-01 14:07:43 +01:00
hjk
19e6ee7862 Debugger: Adapt QHostAddress dumper after Qt Core change a6cdfacf
Change-Id: I750d37f7ab23a638c2e0c5f0fd808ba22a0b49d0
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-02-01 12:12:38 +00:00
Robert Loehning
bea5fe0a63 Squish: Update moved license file in tst_git_clone
Change-Id: I8a34a878e91a64762b28b03d08334148a3dbe8d3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-01 10:30:29 +00:00
Robert Loehning
97760eda7a Squish: Update BuildDirectoryLineEdit
Change-Id: I9d789d501a43ff634ea01a3f5b8afe74c026d0e0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-01 10:30:02 +00:00
David Schulz
228e53aab1 Debugger: Add dumper for unordered_multi(set/map)
Change-Id: Ie1badb0cab0331c35e3094ab121a1a1170cc2bcf
Reviewed-by: hjk <hjk@qt.io>
2017-02-01 10:19:03 +00:00
Marco Bubke
c5d42503fa Utils: Add test that a longer path string is a short string
Change-Id: Ie4cf6ae5e2ac9fac878b3f85e88b1e64960a156d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-01 09:19:51 +00:00
Marco Bubke
a0c69c517c Utils: Fix long small string
We used only 6 bit to save the short size but for SmallString with a size
over 64 it is not enough. So we have now to use a uint16 instead of a
uint8 if the size if over 64.

Change-Id: I53558e492b6cb40b739b23a8af83d192a2e11bd2
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-31 16:12:18 +00:00
Marco Bubke
729c535376 Utils: Add intializer_list constructor in SmallString
You can now write

SmallString text = {"Oh ", women[4], " how much I miss you"};

if it can be casted to SmallStringView.

Change-Id: I86b69ee8d735017cac4391e7c4e68355eb5f227b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-31 16:06:33 +00:00
Marco Bubke
9b4afa01a1 Utils: Improve and fix operators in SmallString
Change-Id: I51f4e647cbd3ada0c3a86d16f40fd8044acead33
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-31 16:06:28 +00:00
Marco Bubke
f97911d0fe UnitTests: Use clang flags to build unit tests
We want to avoid build error so we use their flags and remove flags we
don't want.

Change-Id: I471e5195f98658d73d2b04b6e4bf597573ca87ae
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-31 15:25:14 +00:00
Marco Bubke
ea4141ee14 Clang: Add Process Generator
So far we only compiled the precompiled headers only sequentially. The
process generator is creating, managing a queue of processes to compile
the PCHs parallel.

Change-Id: I8075def4ef9e6b0191bbd51b3631d1c51ec7b361
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-31 14:18:38 +00:00
Marco Bubke
2c55a9c569 Clang: Add timer based path notification compression
QFileWatcher is only reporting one path per signal which is suboptimal if
you change many files at once. This patch is introducing a timer which is
waiting some time time to see if more path changes are reported and is
collecting them in a vector.

Change-Id: I50f7c21186353b199634e7b3cd5a41f8d581a31d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-31 13:27:24 +00:00
Marco Benelli
96c7d6f8f4 qmljs editor: test for reformatter
Add test cases for multiline comments.

Change-Id: I3e02560791b331c7e1892e9c0bb50cd64241a2bb
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2017-01-31 09:55:50 +00:00
Marco Bubke
c072cdfb88 Clang: Add ClangPchManager
Compiling every header file again and again is quite time comsuming. There
are technics to improve this like preambles(a kind of automated
precompiled header) but they don't share their data between translation
units. This approach provides an automatically generated precompiled
header for every project and subproject to improve the loading time.

Change-Id: I34f5bd4db21951175920e2a9bbf6b97b1d705969
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-30 13:55:58 +00:00
Tim Jenssen
d4b1cb4a65 UnitTests: fix that feature "shared" was set
Resulted in wrong import/export defines of Utils symbols. Also it needs
to be set before the project includes are be done.

Change-Id: I950155a92c9a8ea21d5d91a57bd42058980d3971
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-01-30 13:46:01 +00:00
Robert Loehning
326d40dde1 Squish: Parse qtcreator.pro with Qt 5.6 to avoid changing results
Change-Id: I47cecb8ac8aaf1d5a845b801ff4038b3f023a220
Task-number: QTCREATORBUG-17577
Task-number: QTCREATORBUG-17609
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-30 12:52:09 +00:00
Eike Ziller
b299ff19ec Merge remote-tracking branch 'origin/4.2'
Conflicts:
	src/shared/qbs

Change-Id: Ic39fd1c411632f56312fae31c0c88ebc1098b5a4
2017-01-30 10:55:40 +01:00
Tim Jenssen
000d9cb280 Clang: do not check the order in tests
Change-Id: I6fe93beab931506018f261a8a34fe4c4f51b87e5
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-01-30 08:57:01 +00:00
Eike Ziller
37eddb8ac2 qmake build: Do not require 3rd party plugins to set c++14
Do it in qtcreator.pri instead again, since that is supposed to be
included by projects depending on Qt Creator.
Since we will use C++14 in utils/algorithm.h and other prominent
places, it would be very annoying to require setting C++14 on
all external plugins.

Change-Id: Ie11a30b33c791f3bf6db39fcee454f1e887352c2
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-01-30 08:21:34 +00:00
Nikolai Kosjar
6e06cbd2d6 UnitTests: Silence a warning about empty QTC_REL_TOOLS_PATH
Project WARNING: using utils-lib.pri without IDE_LIBEXEC_PATH or
        IDE_BIN_PATH results in empty QTC_REL_TOOLS_PATH

Change-Id: Ibde3b3810c70dc3ea4f38afa4e9e193e0893c858
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-30 08:14:00 +00:00
Robert Loehning
b805639776 Squish: Remove mapping data for outdated versions
Change-Id: I5fc21e9cc4dec44a36b7dc2857423cb8b654bbc6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-27 13:01:06 +00:00
David Schulz
4eb3b3348a Debugger: Unify std::once dumper output
Change-Id: I4bbb14036ce89d8e06b184f33fd2ecfd098f2443
Reviewed-by: hjk <hjk@qt.io>
2017-01-27 12:42:56 +00:00
Robert Loehning
8466f777f5 Squish: Use different function name in tst_CSUP01 on Windows
This reverts 7746c31774 on Windows

Change-Id: I6161320ee97ecfcd2510f73d955346e1bb9ebfc1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-27 12:14:31 +00:00
Robert Loehning
8681608d8b Squish: Clean up tst_qml_editor
Should have been done in
4b4e5f6990

Change-Id: I0a747ea4bbf0ef02caaf31a14161dced9b4dd806
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-27 12:13:55 +00:00
Robert Loehning
79c91e4c30 Squish: Stabilize tst_HELP06
Change-Id: Id8d642c581b825adc1d958f82280e8bf4f011c41
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-27 12:13:42 +00:00
Nikolai Kosjar
7415964819 CppTools: Fix choosing project part after project open
As long as there are project parts for a source file, always determine
the best project part, instead of trying to stick to the previous one.
This ensures the best project part at all times and simplifies the code.

Change-Id: I25ea3eb43a5a3e6d93688d4b8965f596dc9ae22b
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:52:54 +00:00
Nikolai Kosjar
bddfe21961 CppTools: Fix using updated project part
1. Open a project consisting of two subprojects referencing the same
   source file.
2. Open the source file.
3. Click '#' in the editor toolbar and select the second project (part).
4. Update the project file, e.g. add a define
   ==> Editor does not reflect the added define

This is due to comparing project part pointers. Fix by using the project
part id that remains stable across project manager updates.

Change-Id: Ifd1a113e55ebe2ecf036cd7caafdbfd6e4cdf415
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:50:11 +00:00
Nikolai Kosjar
07f32ef57a CppTools: Use fallback project part if project is closed
...instead of sticking to the old one.

If a project is closed, the editor should reflect that. It also simplifies the code.

Change-Id: I9b8a94513d3b06a238cfc4ee60c11c0d0da3d93f
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:50:05 +00:00
Nikolai Kosjar
0b8df41387 CppTools: Provide hints about chosen project part for editor document
Parse issues can have multiple reasons (invalid kit, not a project file,
actual parse issue) and we should be able to tell them apart. With this
change, we can distinguish between the fallback project part and a
ambiguous project part.

Follow up changes will use this to display more accurate diagnostics.

Change-Id: Icc8767607cc17dc14d6227b07f34e81ba5525a96
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-24 14:41:48 +00:00
hjk
ef80d060e7 FakeVim: Remove a few uses of QObject::sender()
Considered bad style...

Change-Id: Idc1d39bd55fa30dfa854bbc99094f5f6ec9afc4d
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk@qt.io>
2017-01-24 11:10:12 +00:00
Eike Ziller
b1e2d5b693 Merge remote-tracking branch 'origin/4.2'
Change-Id: Ib3073a0a3d80c99cf97b9839480dbf9583fa10de
2017-01-23 13:13:14 +01:00
Filippo Cucchetto
4b1f8f3609 ProjectExplorer: Added support for registering custom languages
Change-Id: I728a2ed1ef7d9f44d7c2b59d27d6e23444cd3bb5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-23 11:19:11 +00:00
Thomas Hartmann
f9f74566a7 QmlDesigner: Do not escape "\" for unicode chars
Task-number: QTCREATORBUG-12616
Change-Id: If8cac8d35cb97f59e12d1609f808dd639f93f315
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-20 13:12:07 +00:00
Robert Loehning
eeb0b8fd21 Revert "Revert "Utils: Remove old compiler support code""
Thomas provided a smaller fix.
This reverts commit 78fb7f44bf.

Change-Id: I1edff6477526fe4ce29df38852f47fe49117561e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-01-19 12:21:43 +00:00
Alessandro Portale
78fb7f44bf Revert "Utils: Remove old compiler support code"
This reverts commit 8a32bcc5e7.

Broke build with MSVC 2015, update 3

Change-Id: Icb59b70fb00ea2a2ecc8d26c8177d21d82aaccf2
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-01-19 11:47:26 +00:00
Marco Bubke
8a32bcc5e7 Utils: Remove old compiler support code
We now support constexpr, noexcept and alignas on all compilers. Next will
be C++ 14 constexpr support.

Change-Id: I254049c60dcd82fc373ec907cbb5702a4b344978
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-19 10:59:40 +00:00
David Schulz
c8bd342597 Debugger: Adjust std map test to msvc iterator dumper
Change-Id: I3c9e4138d2e0a3ec4083f01d243eb707905e9f18
Reviewed-by: hjk <hjk@qt.io>
2017-01-19 07:11:20 +00:00
Christian Stenger
1e0b7e58b8 Tests: Avoid automatic masquerading of newline characters
Change-Id: Ic18083e9b21051a03a69c6c6e10a23e7144ad647
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-18 14:50:38 +00:00
Christian Stenger
bdd0c83751 Squish: Configure C-toolchains for macOS
Change-Id: I3d4fcc25ecca8a02e8dbbace4fc063a72cd85a40
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2017-01-18 14:50:26 +00:00
Thomas Hartmann
f446fdc077 Fixing capitalisation of titles
Change-Id: I6a915cc69fe1cf6630d1a9a0fdb6b7a8d39b306c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-01-18 13:41:38 +00:00
Robert Loehning
1a6e6ed553 Squish: Configure C-toolchains for Linux
Change-Id: Id2bd1768e2520bbcfdc918939722f7f5935b8fce
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-18 08:35:50 +00:00
Nikolai Kosjar
e4e6572661 CppTools: Allow interpreting ambiguous headers as C headers
...instead of C++ headers.

For the Clang Code Model this results in using "-x c-header" instead of
"-x c++-header".

This introduces a new option in Options > C++ > "Code Model" to
configure this.

Change-Id: I8a0ce8fa6155f5ef58743ebc7f1d0b500fbf6599
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2017-01-16 10:17:50 +00:00
Eike Ziller
b1f1ccb32e Merge remote-tracking branch 'origin/4.2'
Conflicts:
	src/plugins/android/androidbuildapkstep.cpp
	src/plugins/genericprojectmanager/genericproject.cpp

Change-Id: I3484b668f9323ed0c05de99f8dfed07c9e65ab98
2017-01-11 09:29:37 +01:00
Robert Loehning
4d79ffb8f3 Squish: Replace progressBarWait() in tst_debug_empty_main
The progress bar already disappears while we're still in Projects mode.

Change-Id: I7dcf24d1d423eba3057868c4323b2054c99d19f1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-09 11:56:18 +00:00
Tim Jenssen
5ad0cbc070 QmlDesigner: remove unnecessary save method
Change-Id: Ia2a195c84ce83bc3a83155cc19b0585475a5547a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-01-06 11:26:27 +00:00
Robert Loehning
611a970819 Squish: Configure C-toolchains for Windows
Task-number: QTCREATORBUG-17406
Change-Id: Iafa1b38f75fa56691e646aaf2fad61504f0706e8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-06 10:23:12 +00:00
Nikolai Kosjar
85d8fbfdac UnitTests: Add rpath to $$LLVM_LIBDIR
Change-Id: I9be996e0639bacc1d09527e3fb2621311bb067f9
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-01-06 09:39:22 +00:00