Commit Graph

26 Commits

Author SHA1 Message Date
Marco Bubke
f5d68398d5 Clang: Fix canceling of clang query
Every AST unit is created and queried asynchronously, like before, but
we don't wait anymore but use a timer to process new sources. So the server
will not be blocked and can process other messages like cancel.

Change-Id: If0e69466c78f628190f59fd32a03cab1c3a4d0a3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-06-28 09:15:51 +00:00
Tim Jenssen
637034c318 Clang: fix SEH exception
against the documentation nullptr is not working here

Change-Id: I6b5329ef97289370715faba8046724d5e42662ed
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2017-03-23 11:34:36 +00:00
Nikolai Kosjar
5455a45784 Clang: Compile against llvm/clang 4.0
Task-number: QTCREATORBUG-17692
Change-Id: I2781129543c09aa64938c9570896d592b57a753c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-03-10 08:48:45 +00:00
Marco Bubke
68afbbce75 UnitTest: Fix compilation for different configurations
Change-Id: I20d4217d1c33002f7e1ac084af4b0982b2f04971
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-02-06 10:23:29 +00:00
Marco Bubke
01a96537a8 Utils: Move forward declaration of SmallString in an extra header
Change-Id: I6da1cc60d425f654a31570373eb3b4f660d5f975
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-02 12:46:44 +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
Marco Bubke
8624e3c97d Clang: Remove unused files
Change-Id: If100138459665a11812ed5977ca15b79c0836b93
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-09 13:21:33 +00:00
Marco Bubke
1ae34549b1 Clang: Remove useless move
Temporary values are already rvalue references.

Change-Id: Iae3122cc04f6adb23fdf9986b9cdfe6575e906ee
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-12-08 14:13:04 +00:00
Marco Bubke
1f7694135d Clang: Workaround bug in clang for multithreading
We have to fix that but people want to try it now.

Change-Id: I957215c7ec05ec0b0632179b538f5fac41f77dab
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-08 11:57:43 +00:00
Marco Bubke
542c730b33 Clang: Suppress unused parameter warnings in clang headers
Change-Id: I8b2d50be5bda75b6759b7ce73b9d37b2500f3efc
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-08 11:57:35 +00:00
Marco Bubke
8c701f620a Clang: Fix warning
We can add it later again.

Change-Id: Ic75d05623cec0f9b0558495be5e1856ccf639c97
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-12-07 14:43:32 +00:00
Marco Bubke
cf885a138c Clang: Clean up SourceRangeExtractor::findStartOfLineInBuffer
Change-Id: Ic0b5e44756f0364f583c72b5b05795764718a6e8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-07 11:40:47 +00:00
Marco Bubke
6f362072d6 Clang: Workaround missing std::make_reverse_iterator
Because of the ancient compiler support we cannot use
std::make_reverse_iterator. If we support newer compilers we can revert
this patch.

Change-Id: I9b20ab1e53a0e9784b0455eafbbfd966797ad91e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-07 11:40:30 +00:00
Marco Bubke
15de02ea0c Clang: Add refactoring support for unsaved content
We need the generated UI header but we don't have a build directory. So we
provide clang with in memory represations of the file.

Change-Id: Ie9db97bbea2222b0203a0457baa1f1fc7ad97213
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-07 11:39:11 +00:00
Tim Jenssen
7f757884c5 Clang: Extend clang query
It's a first step to introduce clang query.

Change-Id: I4d001a8883f56066765ce6bc561fa3f49611c0a4
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-23 12:16:04 +00:00
Eike Ziller
4026864f38 Merge remote-tracking branch 'origin/4.2'
Conflicts:
	src/plugins/clangrefactoring/refactoringengine.cpp
	src/tools/clangrefactoringbackend/source/symbolfinder.cpp

Change-Id: I7c1c87f3b8ade43a07f6668565501042e967fa8b
2016-11-16 16:04:59 +01:00
Tim Jenssen
9c7ff5199f Clang: Add clang query
Clang query is mechanism to use AST matcher to search for code. Think
about regular expression but in the context of AST. So you get a semantic
search tool for C++.

Change-Id: I72e882c5b53a0c52f352a3664847c4c3e4f6fc2e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-15 15:30:33 +00:00
Kai Koehne
e5becbdfb9 Replace WIN32 define with _WIN32
Only MinGW gcc defines WIN32, MSVC compiler does not. It's
also defined by qmake (msvc-desktop.conf), but not by qbs ...

Let's just use _WIN32, that's defined everywhere.

Change-Id: I8342a70498be54a965dcf7fae63eaf406aaa3c04
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-14 10:36:31 +00:00
Marco Bubke
f0bf6211be Clang: Remove useless namespace usage
Change-Id: Ia153798c3b770ff7c586584d4de2d7cd0cd191cd
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-01 15:37:32 +00:00
Marco Bubke
cf6b5dd5ef Clang: Remove unused variable
Change-Id: Ib59fa1cba5ada10338fb10c49e7314047cd474f8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-10 14:13:01 +00:00
Marco Bubke
6d577f5520 Clang: Remove useless semicolon
Change-Id: Idc030832a73caca3f5c4a234abf082ad6bfc86d7
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-10 14:12:50 +00:00
Marco Bubke
f56ec53fa1 Clang: Test for file path RequestSourceLocationsForRenamingMessage
Change-Id: Ia384deb60e644d8894d7c56f81b3deb8b7706c11
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-08 14:19:02 +00:00
Marco Bubke
98a167c0d5 Clang: Fix template renaming
Change-Id: I8040fe8dfc99d66e242ce2ff8589aa914838bfc9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-08 13:50:25 +00:00
Marco Bubke
ec06fd0e84 Clang: Use std::replace instead of std::transform
Change-Id: I60e42577631dee5cf05b1129a49ea36c391e8923
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-08 13:27:38 +00:00
Marco Bubke
a2bf47266a Clang: Fix naming
Change-Id: Ibf82e92d2c29395e739afcdbe181595e0a3ed012
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-08 13:27:31 +00:00
Marco Bubke
4cdb5bab15 Clang: Add clang refactoring
Change-Id: I2e3f36f810276da3f8dc7dcc587b06f8edb586d3
GPush-Base: d02f51b48fc752fddcdef6dcb32b3f7f6c0195a3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-08-04 14:37:19 +00:00