summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools
Commit message (Collapse)AuthorAgeFilesLines
* WebAssembly for QtBaseMorten Johan Sørvig2018-08-303-5/+20
| | | | | | | | | | | | This is the squashed diff from wip/webassembly to dev. Done-with: Peng Wu <peng.wu@intopalo.com> Done-with: Sami Enne <sami.enne@intopalo.com> Done-with: Morten Johan Sørvig <morten.sorvig@qt.io> Started-by: Andrew Knight <andrew.knight@intopalo.com> Change-Id: I6562433c0a38d6ec49ab675e0f104f2665f3392d Reviewed-by: Lorn Potter <lorn.potter@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Windows code: Fix clang-tidy warnings about C-style castsFriedemann Kleint2018-08-302-10/+10
| | | | | | | | | | | Replace by reinterpret_cast or const_cast, respectively. Use auto when initializing a variable to fix Clang warnings about repeating the type name, do minor tidying along the way, and a few conversions of 0 or NULL to nullptr. Change-Id: Ieb271a87ddcf064f536e1ff05d23b1e688b1b56a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* JSON: Add qHash functions for JSON and CBOR typesUlf Hermann2018-08-271-0/+5
| | | | | | | This way we can easily use them as keys in QHash and QSet. Change-Id: Ie744c3b5ad1176ba2ab035c7e650af483757a0c9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Disable warnings about deprecated QRegularExpression::PatternOptionsTor Arne Vestbø2018-08-241-0/+3
| | | | | | | | | We still want to have these in the debug output for completeness, so disable the warning instead of removing the lines. Change-Id: I4291adddff486e4ea963be36ac0ebda089a66045 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-08-221-3/+3
|\ | | | | | | | | | | | | | | | | Conflicts: src/gui/text/qtextengine.cpp tests/auto/corelib/itemmodels/qsortfilterproxymodel_common/tst_qsortfilterproxymodel.cpp tests/auto/corelib/itemmodels/qsortfilterproxymodel_common/tst_qsortfilterproxymodel.h Change-Id: Ib9f968edbb0f3387c89bc25e914321d0738bfadc
| * Cast away -Wclass-memaccess warnings in QVarLengthArray methodsEdward Welbourne2018-08-201-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | With g++ 8.2.0, I get warnings when a QVarLengthArray<QString> calls remove() or prepend(), as some tests in tst_QVarLengthArray do, as they call memmove() "writing to an object of type ‘class QString’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead"; which may indeed be a good argument for not using QVarLengthArray<QString>, but its own tests do. Change-Id: I4f8a64948b32a54e67a285df4ec7788f60739ffb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Use std::partition_point for faster searches among transitionsEdward Welbourne2018-08-201-56/+55
| | | | | | | | | | | | | | | | | | | | | | QTzTimeZonePrivate's methods were iterating transitions from first to last, or last to first, to find where .atMSecsSinceEpoch crossed some threshold; but the transitions are sorted in order of increasing .atMSecsSinceEpoch, so binary chop would be more efficient than such linear searches. So use std::partition_point() instead. Change-Id: I65c43cb20fca6685a22ea52a4ca2f1089c128ebf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Scale a correction by a factor of a thousand that it was missingEdward Welbourne2018-08-201-1/+1
| | | | | | | | | | | | | | | | | | | | The difference between two transitions' offsets is measured in seconds, but we add it to a time in milliseconds; so it needs to be scaled to fit. Fortunately rarely enough applied that it hadn't caused any reported problems. Change-Id: I11f9f9e46d43d748220e072ad7504d4c8c5bf192 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add some local const variables to save some repeated computationEdward Welbourne2018-08-201-8/+7
| | | | | | | | | | | | | | | | | | | | QTimeZonePrivate::dataForLocalTime() makes repeated use of the times sixteen hours before and after the target local time, so compute those up front once instead of each time they're needed, giving them expressive names and making code terser. Change-Id: I4b682cc6de2adb98c3ee5489eec4b63ac1090961 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QTimeZonePrivate::dataForLocalTime(): cope with negative DST offsetsEdward Welbourne2018-08-201-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The tz database's latest update now records the cases where summer time is deemed standard and winter-time is deemed DST. (This doesn't change what the offsets are, just how they're described.) The resulting negative DST offsets mess up the algorithm for converting local time to UTC, causing tst_QTimeZone::transitionEachZone() to fail for Europe/Dublin in the hour before its transition; so refine the algorithm to cope with the new case. Task-number: QTBUG-69980 Change-Id: I24003872fffb03b2903161859158d0ce998b3073 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Implement exact match expression builder for QRegularExpressionSamuel Gaist2018-08-193-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QRegularExpression doesn't offer a direct equivalent of QRegExp's exact match. There are several places in the Qt sources that use this feature. This patch implements a small helper function that builds the expression as recommended in the documentation and updates the related code. [ChangeLog][Core][Tools] QRegularExpression now provides anchoredPattern() which is a helper function to build regular expressions used for exact matching. Change-Id: Idbbf142c4c5cb9b62abf8229f4ce85fd4409e5d0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QRegularExpression: refactor wildcard translationSamuel Gaist2018-08-181-24/+35
| | | | | | | | | | | | | | | | | | | | | | This patch refactors the wildcardToRegularExpression method to generate a simpler regular expression. It also fixes some shortcomings of the previous implementation. Tests have been updated to ensure all cases are properly supported. Change-Id: I454e3fe8fe0bb663b2f319d6fa2fa8aec626c50d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Eliminate QLocale's system_data in favor of globalLocaleDataEdward Welbourne2018-08-171-20/+15
| | | | | | | | | | | | | | | | | | This is simpler than initializing a pointer to its address and accessing it via that pointer; it saves the initialization and a few checks that it's happened. Change-Id: I3d82ee1cb02981654ec769632d3a055e11737113 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-08-171-3/+6
|\| | | | | | | Change-Id: I8bb8227f9da982e7d5ebe5324fc27abd9ac0d4fc
| * MSVC: add support for 64-bit POPCNT on 32-bit machinesThiago Macieira2018-08-161-3/+6
| | | | | | | | | | | | | | | | It's just adding the count of each half. Change-Id: I9868946ceaf74002bde1fffd154b29908319007f Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Modernize the "thread" featureUlf Hermann2018-08-171-1/+1
| | | | | | | | | | | | | | | | | | | | Add it to configure.json and replace all occurrences of QT_NO_THREAD with QT_CONFIG(thread). Add conditions for other features that depend on thread support. Remove conditions where we can use the QMutex and QThreadStorage stubs. Change-Id: I284e5d794fda9a4c6f4a1ab29e55aa686272a0eb Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Liang Qi2018-08-161-1/+1
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-08-161-1/+1
| |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qconfig-bootstrapped.h src/plugins/platforms/xcb/qxcbbackingstore.cpp Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I4af138ffb2f5306373244523768209e8873b2798
| | * [macOS] Fix lower bound when searching for previous transitionsErik Verbruggen2018-08-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The lower bound shouldn't be the smallest (positive) value representable by a double, but the *lowest* (finite) value. Task-number: QTBUG-69862 Change-Id: Ia66610e3c0f8d9643c329714607f5af573206fd8 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Refactor wildcard support in QRegularExpressionSamuel Gaist2018-08-164-194/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The API originally proposed was flawed in the sense that the setter function would use a modified version of the parameter given which would have make it a black box for the user. This patch fixes that by removing that setter and providing a static method that will return the pattern suitably modified to be used by QRegularExpression the same way the escape method does. [ChangeLog][Core][QRegularExpression] Implemented support for wildcard patterns through a static method. Change-Id: I0054bcaffd7525dac569f54fa81f73b7e4544b2e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Update QLocale::Country doc for new territoriesEdward Welbourne2018-08-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Neglected in 44b6757fe50b6bf581864d3da519a3ff60818fa8 Noted the need for this in a relevant script's instructions. Change-Id: If69666f1799acebd434034c80b91056cb8777488 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Tidy up generation of aliases in locale-related enumsEdward Welbourne2018-08-161-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | Replace lines of formatted output with dictionaries from which that output can be generated efficiently (in sorted order). Tidy up the python code, in the process. Change-Id: Ifb74eb69342646c5dbabc3247b3a8ddef602e934 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Normalise spacing in Language, Country and Script namesEdward Welbourne2018-08-161-971/+971
|/ / | | | | | | | | | | | | | | | | | | The scripts that generate the C++ enum names clean out spaces, so there's no need for enumdata.py to use the squished names; instead, include spaces where they belong and use them in the relevant names where they show up. Change-Id: I7261c87d69e654bc2e89f44d7ebbc06bfb403c58 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add support for numbered territories in CLDREdward Welbourne2018-08-132-3752/+3837
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CLDR data contains eight locales with numeric territory codes, 001 for World, 150 for Europe and 419 for Latin America. The last was already known in our enumdata.py, but as "Latin America and The Caribbean", which is not supported by the CLDR, so I've amended it while adding the other two. This gives us support for Esperanto and Yiddish (among others). [ChangeLog][QtCore][QLocale] Added support for World and Europe as (numeric) "country" codes ("territory" in CLDR terms), thereby enabling support for Yiddish and Esperanto, among other locales using such codes. Task-number: QTBUG-57802 Change-Id: Ibb1180fb720743a3a0589527649d10f3c9cd123d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Ignore a smaller type in the posix form of QCollatorEdward Welbourne2018-08-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | It ignores its CollatorType, so we can use bool for it and save a few bytes in QCollatorPrivate. The member using CollatorType follows three existing bool members: a boolean will fit there, while an int requires 1-byte padding and its 4-byte payload. Pointed out by Thiago Macieira. Change-Id: I10c8ea6f1b735b1b872c509f18fd6a93e24c9b86 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Use suitable abstraction for the null value of CollatorTypeEdward Welbourne2018-08-132-5/+9
| | | | | | | | | | | | | | | | | | | | QCollatorPrivate defines a back-end-specific CollatorType and sets a member of this type to 0; but ICU's version really wants a nullptr not 0. So provide a named constant of the type, that's the NoCollator value for use there. Change-Id: Iad4d2f803ff4807ea568755efe00b9a92f1a8eeb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Supply locale to QCollatorPrivate via its constructorEdward Welbourne2018-08-132-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Both places that new'd it were then setting its locale themselves; they might as well do it tidily by passing it to the constructor. There's also no need to cleanup() in the constructor; every back-end is a no-op when collator has its initial value. Tidied up the class declaration in the process: * moved {con,de}structor to be first methods * comment on the two methods back-ends provide Change-Id: I041669637935e68141e002156552af8b475ba36e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QCollatorPrivate: initialize in declarations rather than constructorEdward Welbourne2018-08-131-12/+6
| | | | | | | | | | Change-Id: If5f240418e6a538ef44af973929b5c84e63b70d8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Don't duplicate things the constructor has doneEdward Welbourne2018-08-131-2/+0
| | | | | | | | | | | | | | | | | | QCollator::detach() created a new QCollatorPrivate, then set some of its fields to the values its constructor sets them to. Don't waste time doing that. Change-Id: I048a1553753ae2cf03d3f61d45490f2723ee658b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Set dirty in QCollator::detach() rather than calling init()Edward Welbourne2018-08-131-5/+2
| | | | | | | | | | | | | | | | | | | | | | Each of its callers set dirty after calling detach() in any case, so the call to init() was going to be duplicated (if the instance ever got used again for something that benefits from it), and the d-ptr is freshly created in any case, so can't be carrying any stray gunk from earlier use, that init() might purge. Change-Id: Id2485889c8ae4ee531c88562ff63f1a8ac0f4a36 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Initialize variableJesus Fernandez2018-08-081-1/+1
| | | | | | | | | | | | | | | | | | dstZone.offset was being used without initialization. Coverity-Id: 178898 Change-Id: I8eabef3b4386c3ebfea5d1caffff9add6264bfce Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* | QStringLiteral: remove the wchar_t fallback for WindowsThiago Macieira2018-08-071-17/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't necessary anymore, since MSVC 2015 does have Unicode string support and MinGW (GCC) has had it for a long time. More importantly, we must remove this macro: # define QT_UNICODE_LITERAL_II(str) L##str As the updated MSVC preprocessor will no longer support it. See "Behavior 2" in [1] [1] https://blogs.msdn.microsoft.com/vcblog/2018/07/06/msvc-preprocessor-progress-towards-conformance/ Change-Id: Id59bdd8f1a804b809e22fffd15401099a67175d3 Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Liang Qi2018-08-074-10/+18
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-08-074-10/+18
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/doc/src/objectmodel/signalsandslots.qdoc src/plugins/platforms/cocoa/qcocoamenuloader.mm src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp tests/auto/gui/image/qimage/tst_qimage.cpp Done-with: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I9bd24ee9b00d4f26c8f344ce3970aa6e93935ff5
| | * QString: Fix documentation for toDouble() and toFloat()Andre Hartmann2018-08-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The character 'g' is only a valid format when converting numbers to strings, but not other way round. Change-Id: Ie772886e7a45a5067c0a3e4eaa3a6ccef8e69426 Reviewed-by: Martin Smith <martin.smith@qt.io>
| | * Improve documentation of QString::indexOf that take QRegExpAlbert Astals Cid2018-08-011-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They said "By default, this function is case sensitive" but this makes no sense when you're using a regexp for searching, the regexp is case sensitive or not by itself, QStringList does not influence that. Change-Id: I7446cb52a9f915c6551af6046ce89cbc8bab96ed Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Link from QLocale to where date-time formats are explainedEdward Welbourne2018-07-312-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QLocale has various methods that deal in date-time formats, which may be supplied as strings; but does not document the form of a format string. That's documented in QDate, QTime and QDateTime, so link to them for the details. Task-number: QTBUG-23307 Change-Id: I6347d80a87dc03f6a4065e3d5bf4d535f05af93f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Fix possible heap-buffer-overflow in qt_string_normalizeErik Verbruggen2018-08-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When starting further into the string than index 0, do correct the length too. This shows up in tst_qurl and tst_qurlinternal. Kindly pointed out by ASAN: ==5513==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60600002bf27 at pc 0x000100654de3 bp 0x7ffeefbfad10 sp 0x7ffeefbfad08 READ of size 16 at 0x60600002bf27 thread T0 #0 0x100654de2 in QtNS::simdTestMask(char const*&, char const*, unsigned int) qstring.cpp:395 #1 0x1005f9777 in QtNS::isAscii(QtNS::QChar const*&, QtNS::QChar const*) qstring.cpp:491 #2 0x100638642 in QtNS::qt_string_normalize(QtNS::QString*, QtNS::QString::NormalizationForm, QtNS::QChar::UnicodeVersion, int) qstring.cpp:7999 Change-Id: I44ad65b47eb98c6085c77b56dc2da50ef5659d25 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | qdoc: Fix \fn commands for QCborxxx member functionsMartin Smith2018-08-071-0/+1
|/ / | | | | | | | | | | | | | | | | | | Severa qdoc function comments had incorrect signatures. This update corrects them to match the declarations in the header file. A \keyword command was also added for linking to the generic algorithms header file page. Change-Id: I997f7f2c7e4d0c3fcd269ee2c89a2836fecd4927 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QByteArray: Fix documentation for toDouble() and toInt()Andre Hartmann2018-08-061-2/+2
| | | | | | | | | | | | | | | | | | | | The character 'g' is only a valid format when converting numbers to strings, but not other way round. Amends dc133765ec47e9625c49701f0ffd762b0ee1ad48 Change-Id: I98d1a4d4cf0665f6e4da6861243e41cd63d7d4b5 Reviewed-by: Martin Smith <martin.smith@qt.io>
* | QUrl: Add qustrchr() and use it to speed up the fast URL full decodingThiago Macieira2018-08-032-57/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | The character search in the findChar() static function in qstring.cpp is more efficient than what we had in qurlrecode.cpp and there's no point in duplicating it. It also has a Neon implementation. So make the implementation available for use in QtPrivate::qustrchr(). This also simplifies the implementation. Change-Id: Ib48364abee9f464c96c6fffd152eedd0cd8ad7f8 Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add "qt_" prefix to asciiToDouble and doubleToAscii functionsThiago Macieira2018-08-034-16/+16
| | | | | | | | | | | | Change-Id: Ie01831ddac5446fdbdeefffd154688839acbe838 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Merge branch '5.11' into devEdward Welbourne2018-07-312-2/+14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp src/plugins/platforms/windows/qwindowstabletsupport.h src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/widgets/styles/qstylesheetstyle.cpp tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp Done-With: Gatis Paeglis <gatis.paeglis@qt.io> Change-Id: I000b0eb3cea2a5c7a99b95732bfdd41507cf916e
| * Clean before copying any QCollatorEdward Welbourne2018-07-261-2/+11
| | | | | | | | | | | | | | | | | | This avoids the hazard of both (if on separate threads) trying to init() at the same time, if they were dirty before cloning. Task-number: QTBUG-69361 Change-Id: Iabb06942c074ba073ca58fd0de509d1db15c1093 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Check against copying the husk left by a moveEdward Welbourne2018-07-261-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The copy-assign operator tests against other.d being NULL but the copy-constructor didn't. This can only matter if the value being copied has been moved from, so we could probably replace with an assertion in practice, but we should at least be consistent. Amended test to check this case too; and verified new test crashes without this fix. Change-Id: I46872a677775944bbdf6a9112e719873e574ae60 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix MSVC builds with /Zc:wchar_t-Timur Pocheptsov2018-07-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | 208c71768 introduced a problem for our users, who build on Windows with /Zc:wchar_t-, which makes wchar_t a typedef for the type 'unsigned short', preventing them from switching to more recent versions of Qt. While MSDN recommends against this option, we can add more #if-ery to avoid compiler's bailing out on a constructor's redefinition. Task-number: QTBUG-65101 Change-Id: I62a1d9b2572f3d4b1f70bcbc3e52e795b1944558 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | QLocale: cache the QLocalePrivate for QLocale::system()Thiago Macieira2018-07-301-1/+6
| | | | | | | | | | | | | | Change-Id: I6d0bf78d02d166307f864f1f83a3b600ef6a9b0b Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | corelib/tools: add qMakeArray() APIMikhail Svetkin2018-07-252-0/+180
| | | | | | | | | | | | | | | | | | | | This function can be used to create std::array without the need to explicitly provide the size of array. It also has a specialization that allow to generate sorted array at compile time. Sorted array can be beneficial for example in binary search. Change-Id: Ifc7e06e451812fce2ab94293959db5e9cc038793 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* | QHash: Remove reference to Qt3's QDict implementationhjk2018-07-241-3/+2
| | | | | | | | | | | | | | | | | | | | While it is still formally correct, it does not add much value anymore. Change-Id: I32431e3e73f3ca662dc4beb754f53449692c56a9 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | prune dead codeOswald Buddenhagen2018-07-231-1/+0
| | | | | | | | | | | | | | msvc2013 is not supported any more. Change-Id: Idca32f77e1b97a219d8bb4571cfd41e7334ac84e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>