summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Make QScopedPointer comparison operators hidden friendsVolker Hilsheimer2020-10-312-51/+40
| | | | | | | | Reduce overload resolution noise. Fixes: QTBUG-87979 Change-Id: I52f96e016ffaf1b4f2235a05c1175c5af3eebe36 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Doc: Fix various documentation issues for Qt CoreTopi Reinio2020-10-3113-36/+42
| | | | | | | Task-number: QTBUG-86295 Change-Id: I3bf7d4b1533d4fc81114d353b19beaf4ea9b93b2 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* CMake: Regenerate qtbase projectsAlexandru Croitor2020-10-302-16/+16
| | | | | | | | | | In preparation for some further regeneration. Also modify pro2cmake to add forgotten mapping for the Qt::EglFsKmsGbmSupportPrivate module. Change-Id: I92425c566c2b275b40eec8c652496290754ac385 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Hide QTypeRevision comparison operators from ADLVolker Hilsheimer2020-10-301-46/+46
| | | | | | | | | | | | | | Make them hidden friends, follow up on 72ccb4fa7b88243064867b23713384e14cef6087 which did the same for QVersionNumber. Also add [[nodiscard]]. The operators are not documented, so nothing to adjust. Adding documentation should be done in a separate commit. Task-number: QTBUG-87973 Change-Id: I65e889a2d0a222f3318b77965e84f3220f1542c7 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix qdoc issues in QListVolker Hilsheimer2020-10-301-2/+2
| | | | | | | | | Amends 3afd06cd43d78ef0992eaa6a458572eea6769297, member comparison operators are const. Change-Id: I10d1da4faabb6cfd528fc653ff138ab8878b32b6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Adapt QDate::fromString() to accept negative year numbersAndreas Buhr2020-10-301-44/+80
| | | | | | | | | | | | | The documentation states that QDate::fromString() accepts negative year numbers, but it did not. This patch adds support for negative year numbers to QDate::fromString() and corresponding unit tests. Furthermore, tests are added for positive signs (+) in date strings. Fixes: QTBUG-84334 Task-number: QTBUG-84349 Change-Id: I575291e7b8317055d4bb530011d7b10c9cd37ae1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* CMake: Fix unnecessary rebuilding upon reconfigurationAlexandru Croitor2020-10-303-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The following MR in upstream CMake makes sure that the autogen targets depend on the CMakeLists.txt file associated with the autogen target, as well as any files it includes. https://gitlab.kitware.com/cmake/cmake/-/merge_requests/5166 When doing a no-op reconfiguration in the build dir (call 'cmake .') we used file(WRITE) to prepare the contents of a file to be used with configure_file() for creation of a .qrc resource file. Because this file was always rewritten on reconfiguration, its timestamp was newer than then autogen target's timestamp which caused the autogen targets to-be rerun, as well as some compilation and relinking. To avoid this, instead of using file(WRITE) ship a template file next to the Qt6CoreMacros.cmake file, and use it as a template for the qrc configure_file() call. This ensures that a reconfiguration doesn't necessarily rebuild things it shouldn't rebuild. Amends 113f1ad324202ea2b861a3dbdec2ee7ef716c283 Task-number: QTBUG-88004 Change-Id: Icd95b28ca3642434cf21e5c49dcbd1ec65d76252 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Forbid implicit conversions between QFuture and other typesSona Kurazyan2020-10-302-21/+1
| | | | | | | | | | | | | | | | | | | | | - Remove the casting operator of QFuture<T> to T. It calls QFuture::result(), which may lead to undefined behavior if the user has moved the results from QFuture via QFuture::takeResult() before trying to do the conversion. - Disable implicit conversion of QFuture<T> to QFuture<void>, by making the constructor explicit. If the users really intend to do the conversion, they should do it explicitly. [ChangeLog][Source-Incompatible Changes][QFuture] Implicit conversions of QFuture<T> to T and to QFuture<void> have been disabled. Use QFuture::result() or QFuture::takeResult() where you need to convert QFuture<T> to T. Use the explicit QFuture<void>(const QFuture<T> &) constructor to convert QFuture<T> to QFuture<void>. Change-Id: I153d4137d36365b1611ac934fb3ac2eb667fdd6c Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Add noexcept to QLine comparisonsAllan Sandfeld Jensen2020-10-301-3/+3
| | | | | Change-Id: Id75a8511c66d9fe23450043a9230f8dc8925be28 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Remove Q_IS_ENUMAllan Sandfeld Jensen2020-10-303-53/+0
| | | | | | | Deprecated since 5.8 already. Change-Id: I01ea32b5f4b922cecb18c5760a1b5fa49c4e54c0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Make QVarLengthArray comparisons hidden friendsAllan Sandfeld Jensen2020-10-301-40/+77
| | | | | | Task-number: QTBUG-87975 Change-Id: Iaebb237b3d5d3e881caf9a93153e295af051e2ab Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Add unit tests for QDateTimeParser internalsAndreas Buhr2020-10-301-0/+2
| | | | | | | | | | | | | | | | | | | | So far, the internals of QDateTimeParser and especially the handling of 'Intermediate' values were only tested implicitly by tst_qdatetimeedit. 'Intermediate' values are values which are not valid according to the specified format, but could become valid by adding more characters. This patch adds unit tests which tests parsing of these intermediate values directly. These tests will help implement handling of negative year numbers, where additional complications arise because of possible ambiguities between the minus sign '-' and the separator '-'. Task-number: QTBUG-84334 Change-Id: Ia6ba08df198288b8b11d3b2d2052c194f04fe8a1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Hide QList comparisons from ADLAllan Sandfeld Jensen2020-10-302-78/+60
| | | | | | | | | | Makes them member methods instead of hidden inline, as those actually gets listed in documentation, and two were already documented as such. Task-number: QTBUG-87975 Change-Id: I382ff8b701753f1fe150a38f4c530a52c98ad292 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix two missing conversions from in to qsizetypeAllan Sandfeld Jensen2020-10-293-3/+3
| | | | | Change-Id: I08ac9a0eb5dfb17f2b6cfaca9e3f3d7375c02bd4 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Make QMap and QMultiMap comparisons hidden friendsAllan Sandfeld Jensen2020-10-293-67/+35
| | | | | | Task-number: QTBUG-87975 Change-Id: I3c84a188cdbb0d09e0e7c66588c7638c8a8328fd Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Move porting guide for QtConcurrent to its designated pageSona Kurazyan2020-10-291-71/+38
| | | | | | | | | Also move the porting section for QFuture and related classes after the section for view classes, to make the order more natural for reading. Change-Id: I5ea816d7bb3dfdda2b74112418bf07954c9ec94c Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Doc: Fix documentation warnings for QIterable and related classesTopi Reinio2020-10-293-25/+38
| | | | | | Task-number: QTBUG-86295 Change-Id: I1d4c851ae7d2910ab6276ab2215b5f6e550a12c8 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Fix documentation warnings for string classesTopi Reinio2020-10-294-80/+42
| | | | | | Task-number: QTBUG-86295 Change-Id: I13033635eecd495b32c98c7ec9318a0102b6f23e Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Fix documentation issues for QStringTokenizerTopi Reinio2020-10-292-21/+10
| | | | | | | | | | | Add documentation-specific variants of lvalue/rvalue-this overloads that QDoc manages to parse as separate entities. Document begin() and cbegin() iterator getters in one go. Task-number: QTBUG-86295 Change-Id: I2768dc6525bbf067e1597aa12e2e727f6d9fc35a Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Fix link issues for QtCoreTopi Reinio2020-10-294-18/+9
| | | | | | | | | - Fix linking to CMake manual. - Remove references to the state machine framework. Task-number: QTBUG-86295 Change-Id: I01a61088da8eb36760949f39be5e71d92de956f2 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Fix code snippet that abruptly ends the documentTopi Reinio2020-10-291-3/+3
| | | | | | | | | | Having the string '*/' appear in a quoted snippet ends the entire documentation comment. Use a parameter to the \code command to work around that. Task-number: QTBUG-86295 Change-Id: Ifcb21a4a0958724ebdb1c9e0eafdc767020d3a7b Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Avoid doing kill(-1) in QProcess destructorDimitrios Apostolou2020-10-291-4/+5
| | | | | | | | | It can happen under unspecified conditions, see relevant ticket. Task-number: QTBUG-86285 Pick-to: 5.15 Change-Id: I1f77bf0061a0faaa60283bb93fc3d82031247d54 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* qfloat16: make comparison and arithmetic operators hidden friendsVolker Hilsheimer2020-10-291-82/+84
| | | | | | | | Reduce ADL noise. The operators are not documented, so nothing to adjust. Change-Id: I02a8bdad6138758106283495098c72770ea74e52 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove the comparison operators of QFutureSona Kurazyan2020-10-293-15/+1
| | | | | | | | | | | | | | These operators don't do what the user might expect and may lead to confusing results. [ChangeLog][Source-Incompatible Changes][QFuture] The comparison operators of QFuture have been removed. They were comparing the underlying d-ptrs instead of comparing the results (as the users might expect), which is not very helpful for the users point of view. Change-Id: I80a887610eac38b60329128cca52cdb5fb515207 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Purge deprecated language and country codes from QLocaleEdward Welbourne2020-10-292-151/+0
| | | | | | | | | | | | | | | | | | | | Requires subsequent re-numbering of the enum tables to eliminate gaps, before locale data can be regenerated. However, it will work with the present locale data, since it merely loses the means to use some names for which the available data was just the name and code. This implies a transient issue of recognising some codes for which there is no actual enum member; but relevant code will work as before, finding nothing but the code and its name. This shall be resolved by a coming BiC change to resort the language, country and script codes, changing the numbering (almost) completely. [ChangeLog][QtCore][QLocale] Various obsolete language and country codes have been removed. Some lacked locale data, others were obsolete aliases. All have been deprecated in 5.15. Task-number: QTBUG-84669 Change-Id: I45fc76a5f2f6c3b0ea3c1bb61e917da984183783 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Make QByteArray comparison operators hidden friendsVolker Hilsheimer2020-10-292-108/+86
| | | | | | | | | | Also for QByteArray::FromBase64Result, to reduce ADL noise. Add explicit overload for comparison with nullptr to avoid ambiguous overload errors with '0' comparisons. Change-Id: I7ff9dbc90581707856c10cf7fb835175dfcdb55e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* MinGW: Fix assert in QCoreApplication::arguments() when passing globsTor Arne Vestbø2020-10-291-24/+39
| | | | | | | | | | | | | | | | | | | | | | | | | We can't assume that the number of arguments we get from GetCommandLine will match what we have from argc, as the former is not wildcard expanded on MingGW. mingw64 will ask __getmainargs to expand wildcards depending on the mingw-specific variable _dowildcard. By default this is set to 0 (false), but some mingw64-packagers (msys2, mingw-builds) pass --enable-wildcard during build, changing this default. As a result, the arguments we get through argc/__argc have already been expanded. MinGW does not reflect this through GetCommandLine though, like MSVC does, which triggered the assert. Amends dff18b8e80609da91bf9e9134967dcf0d23eca9e. Pick-to: 5.15 Fixes: QTBUG-67515 Task-number: QTBUG-84002 Change-Id: Ib87961c6901d2894b48ba0f5b9a3d6da2a595f24 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Simon Hausmann <hausmann@gmail.com> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* QStorageInfo: Make comparison operators hidden friendsVolker Hilsheimer2020-10-292-19/+14
| | | | | | | | Reduce ADL noise. Task-number: QTBUG-87973 Change-Id: Ia8957e6452cdebac808ec2a20d475db448863149 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Remove documentation for removed qHash overloadVolker Hilsheimer2020-10-292-19/+0
| | | | | | | | QPair is an alias to std::pair in Qt 6, so no need for two qHash functions. Also remove note and snippet from std::pair overload documentation. Change-Id: Ica8f6961af1eac493e909ad06fe46f8f68542bc5 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Scrub QByteArray/QByteArrayView documentationKarsten Heimrich2020-10-292-23/+23
| | | | | | Fixes: QTBUG-86555 Change-Id: I3221e0de10e692ca767eeb69daa82da55b93e395 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* QMetaMethod: Make comparison operators hidden friendsVolker Hilsheimer2020-10-292-11/+6
| | | | | | | Reduce ADL noise. Change-Id: Ic747c2d76b7ce66b222e08eeaf6f1d193ba99f81 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Always return initialized data from QBindable::valueVolker Hilsheimer2020-10-281-3/+5
| | | | | | | | | | | | clang warned about result being uninitialized if iface is nullptr. Return a properly initialized result in that case as well. This might break RVO, but the alternative is to always initialize result, even if we are going to call the getter anyway, which I assume would be more expensive. Change-Id: I5d6d243b3094b79bf021725d017be5c72b1089bb Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add QVariant/meta-type system migration guideFabian Kosmale2020-10-281-0/+47
| | | | | | | Fixes: QTBUG-87100 Change-Id: Ib87b8d566f11bf226345101f665c675489a06d6a Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Doc: Remove mentioning of old macos versions from QSettingsKai Koehne2020-10-281-1/+1
| | | | | | | | | | The specific mentioning of macOS 10.2, 10.3 goes back to Qt 4 times. Anyhow, both versions aren't supported anymore, and the logic in qsettings_mac.cpp is the same for all versions. Pick-to: 5.15 Change-Id: Ibac503cb7c8563dec8560cc41c471c1db0f20566 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Remove qstring_compat left-overAllan Sandfeld Jensen2020-10-281-1/+1
| | | | | | | Was missed when it was removed Change-Id: I36c33be9240fa5567a65488d6fd0e14b8c3ad8cd Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix QList snippets to use qsizetype instead of intAndrei Golubev2020-10-281-3/+3
| | | | | | Task-number: QTBUG-86553 Change-Id: I37e9607e014deaeebfa9fddf2e49a04ee2194cce Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QtConcurrent: Integrate runWithPromise into runJarek Kobus2020-10-281-3/+3
| | | | | | Change-Id: I6eb95aa66ff847e8bb9aac348fded3a5d55015b6 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Clean QList documentationAndrei Golubev2020-10-281-51/+60
| | | | | | | | | | | Updated QList documentation pieces: - Several descriptions revised - Irrelevant things removed - Descriptions wrapped at 80 characters Task-number: QTBUG-86553 Change-Id: Ic6de44520a76677aa5e8d9e91caa03e5aa198812 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Remove QItemSelectionRange's operator<()Edward Welbourne2020-10-282-44/+0
| | | | | | | | | | | | As advocated in a ### Qt 6 comment. [ChangeLog][QtCore][QItemSelectionRange] QItemSelectionRange no longer supports ordering. The prior ordering was inconsistent with equality and should not be needed. Task-number: QTBUG-85700 Change-Id: I5eb372c203cae19db40fa67f706d911785652d5f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Deprecate ordering on QItemSelectionRangeEdward Welbourne2020-10-282-3/+7
| | | | | | | | | | | | | | | Ready for removal at Qt 6, as advocated in a ### comment. It was never done consistently with operator==(), apparently, and should not be needed in any case. [ChangeLog][QtCore][QItemSelectionRange] Ordering of QItemSelectionRange is now deprecated. It was not consistent with equality and should not be needed. Task-number: QTBUG-85700 Pick-to: 5.15 5.15.2 Change-Id: Ie99294bd7fc18f2a497598ae08840886b0a6d62d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QByteArray: make (ap|pre)pend(const QByteArray &) consider reservedMårten Nordheim2020-10-282-3/+8
| | | | | | | | | | Append was previously optimized for lhs being empty but it should've also taken into account if space had been reserved. Apply the same optimization to prepend while we're at it. Change-Id: I5e5d33a3189b9ad88d45e858a2ac412cbc294f79 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Deprecate old aliases for two countries and several languagesEdward Welbourne2020-10-283-25/+23
| | | | | | | | | | [ChangeLog][QtCore][QLocale] Deprecated several Language and Country aliases, ready for removal in Qt 6.0, in favor of their newer names. Task-number: QTBUG-84669 Pick-to: 5.15 5.15.2 Change-Id: Iebaa0a5a77bfa12f7014de53fab4a25b5f1cc92c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Deprecate QLocale::Language entries that no locale data relates toEdward Welbourne2020-10-282-86/+132
| | | | | | | | | | | | | | | | | These are languages for which CLDR does not even recognize the claimed language code (three-letter codes except for bh = Bihari, which might be an old name for bho = Bhojpuri, which CLDR does give, but provides no locale data using it). [ChangeLog][QtCore][QLocale::Language] Many obsolete language names are now deprecated in preparation for removal at Qt 6.0. No data has been available for any locale using these languages since CLDR v29 (at least; Qt now uses v37). Task-number: QTBUG-84669 Pick-to: 5.15 5.15.2 Change-Id: I2bf2d49211ade7cc511277f35fb1a247e7048b31 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove QT_NO_FLOAT16_OPERATORS macroVolker Hilsheimer2020-10-282-18/+2
| | | | | | | | | It's documented to be a workaround for VC++2017 and earlier, which are all not supported in Qt 6 anymore. VC++2019 does not show the problem. Change-Id: Ie66b303a75bb5791675fc9e62bf4a84510068d6d Reviewed-by: Keith Kyzivat <keith.kyzivat@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove left over friend declarationAllan Sandfeld Jensen2020-10-271-2/+0
| | | | | | | Was not removed when it was inlined above it. Change-Id: Ie81bd9273108920031b235bdf1f13439711e5fec Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Make QVersionNumber and QArrayDataPointer comparisons hiddenAllan Sandfeld Jensen2020-10-273-42/+35
| | | | | Change-Id: I8de0407843103b49877621534c14046e3a7d1b2f Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Revert "QObject: simplify part of connection logic"Fabian Kosmale2020-10-271-3/+16
| | | | | | | | | | | | | | | This reverts commit 1918c689d78b0f6a718343e7ebceb387acc32a97. The template gets always instantiated in QObjectPrivate::connect, even if the connection types is not Qt::(Blocking)QueuedConnection. For non-queued connections we however support using incomplete types in connect. The only way to fix this would be to make the connection type a template parameter of QObjectPrivate::connect (or at lesat pass some compile time constant indicating "blocking"-ness) along, so that we can use if constexpr instead of if. As all involved classes are private, we can postpone investigating this solution to 6.1 Change-Id: Ieffaf015f8e60ca6ac6f85eb9e2756e480060b4f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix copy and past error, add minor doc updateKarsten Heimrich2020-10-271-4/+6
| | | | | | Change-Id: I50d58086bf20d96993ab7c5e4790f07bbfdb8089 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Doc: Add notes on how to use View classes in Qt6Karsten Heimrich2020-10-273-6/+136
| | | | | | | Task-number: QTBUG-87168 Change-Id: I631937ebaf7cfa3ed54c6c8a3641693fda910b36 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Make QElapsedTimer comparison operators hidden friendsVolker Hilsheimer2020-10-273-20/+20
| | | | | | | | | Reduce ADL noise. Clean up documentation and parameter naming a bit, while at it. Change-Id: Ie9eb2a63b8e87a9ffc019b8fff5bd1c6bafaaf43 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>