aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cpptools/projectpart.cpp
Commit message (Collapse)AuthorAgeFilesLines
* CppTools: Move QtVersion and BuildTargetTypeEike Ziller2019-09-101-1/+1
| | | | | | | | | | | | | QtVersion to utils/cpplanguage_details.h which already contains similar flags. BuildTargetType to ProjectExplorer, next to BuildTargetInfo (but not in the same header to not pull that in everywhere). Removes dependency on ProjectPart from RawProjectPart. Change-Id: I5791065e4266f20c2657ee4b1b594df04b238a1c Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* C++: Support single quote digit separator in integer literalsJoel Smith2019-07-091-0/+1
| | | | | | | | | | C++14 supports the use of single quotes inserted between integer digits as a separator. Updates the built-in C++ code model to recognize such quotes. This fixes highlighting and indentation issues. Change-Id: Ic35ce93060b96700a11d108dce1f3cf6c4543632 Fixes: QTCREATORBUG-14939 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* Utils: Move C++ language details from ProjectExplorer to UtilsMarco Bubke2019-01-151-5/+4
| | | | | | | | We want to use them in the backend processes too so it's nice to share them in Utils. A concrete size was added too because they should be serialized. Change-Id: Id5eb8f46643d5159f034fc9559f68a08d7e5847a Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* CppTools/ProjectExplorer: Remove enum duplicationNikolai Kosjar2018-10-081-4/+5
| | | | | | | | ... between CppTools::ProjectPart and ProjectExplorer::ToolChain. Change-Id: I8b448747e454adbed77547460383b8515462cc81 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io> Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
* CppTools: Disable Qt keywords for C filesOrgad Shaneh2017-11-241-2/+3
| | | | | | Task-number: QTCREATORBUG-1478 Change-Id: I29afc0f38e5f86ca2c30d5b6551974df68ee7512 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* Convert macros from plain QByteArray to a vector of structsMarco Bubke2017-09-141-10/+5
| | | | | | | | | | | 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>
* CppTools: De-duplicate and rename function in ProjectPartNikolai Kosjar2017-03-091-5/+11
| | | | | Change-Id: I675ce4c9059d8ae4046f6a13aa7c04b88141d443 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* ProjectPart: Allow for line/column information in project fileTobias Hunger2017-03-091-0/+4
| | | | | | | | | | Keep this information separate so that plugins using the information do not need to start parsing the project file. Change-Id: Ibecf431de1b12bbe820c6f8f9c986cffeb4972d2 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* CppTools: Clean up ProjectPartNikolai Kosjar2016-12-131-14/+3
| | | | | Change-Id: Ia7969ceb52ffb25e7c63b24bc33b091001e9b50a Reviewed-by: David Schulz <david.schulz@qt.io>
* CppTools: Do not hardcode default language versionNikolai Kosjar2016-12-131-1/+1
| | | | | | | ...instead, use the latest we support. Change-Id: I7e7768bc4bc31de1fe0f441c03f3ab5d677d76e8 Reviewed-by: David Schulz <david.schulz@qt.io>
* C++: Fix handling of Objective-C/C++Francois Ferrand2016-12-051-1/+1
| | | | | | | | | | | - Objective C/C++ was not enabled in highlighter. - QMake project part for Objective C/C++ did not have ObjectiveC extension enabled. - As languageFeatures.objCEnabled is a bitfield, it was actually always set to 0. - Highlight ObjC class & protocol declarations. - Highlight ObjC message passing. Change-Id: I64d12c9509058d05f7adce94598cb7ce91727ac8 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* Clang: Fix parsing MSVC's crtdefs.h for 64 BitNikolai Kosjar2016-10-181-0/+1
| | | | | | | | | | | | | ...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>
* C++: Disable C++ keywords in C filesFrancois Ferrand2016-08-231-0/+3
| | | | | | | | | | | | In some (legacy) C files, new and delete may be used for regular identifier. There are some limitations: * Header files have no 'implicit' type, and may be parsed as C++ or ObjC depending on the other files in the project. * QMakeProject use a single ProjectPart for C and C++ files, so there will still be the issue. Change-Id: Iec11687b35f7ccf1e7c0d091b143ae90d950e440 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
* Clang: Undefine language features as fix for MSVC2015/clang-3.8.0Nikolai Kosjar2016-04-121-0/+1
| | | | | | | | | | This applies the following change for the clang code model, too. commit d13d1795241602ca0cf150b216b282cfb15e406d Clang Static Analyzer: Workaround analyzing MSVC2015 projects with clang 3.8.0 II Change-Id: Ia229d7e8b24c2e1c0a83d9a53c623ea1f79c4a06 Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
* CppTools: Remove all references to the tool chain in the project partMarco Bubke2016-02-011-70/+1
| | | | | | Change-Id: I5fd55eadf94c8a185c2082b93b27bf4432e5cabf Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
* Update License according to agreement with Free Qt FoundationTobias Hunger2016-01-191-17/+12
| | | | | | | * Update files in src/plugins Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
* CppTools: Move ProjectInfo in its own header fileMarco Bubke2016-01-131-0/+1
| | | | | Change-Id: I0fc4c73553a29585d4ff7c8d6593acb6975d1607 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
* CppTools: Move ProjectPart in its own header fileMarco Bubke2016-01-131-0/+165
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>