summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools
Commit message (Collapse)AuthorAgeFilesLines
...
* | Add QTimeZone::{systemTimeZone,utc}Thiago Macieira2015-01-163-5/+28
| | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QTimeZone] Added methods systemTimeZone() and utc() that return QTimeZone objects for the system time zone and for UTC, respectively. Change-Id: Ic5d393bfd36e48a193fcffff13b96821bb8514b9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Remove Q_STATIC_GLOBALxxx_OPERATOR macrosThiago Macieira2015-01-111-2/+1
| | | | | | | | | | | | | | | | | | | | These macros existed for working around an RVCT compiler bug, but since we stopped trying to work around it, the macros are no longer necessary. Change-Id: I76cc88d863b41f74f60cd9975dcc1959778c2740 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Haiku: Make corelib compile on HaikuTobias Koenig2015-01-101-1/+1
| | | | | | | | | | Change-Id: I66bc492390eedd723ab7866d3c7a38539d708727 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | QHash: clean up class definitionMarc Mutz2015-01-102-26/+26
| | | | | | | | | | | | | | ...by removing redundant '<Key, T>' and 'inline'. Change-Id: I9d81950c6384927633de07de511712f7274a1283 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QtCore: mark some operations nothrowMarc Mutz2015-01-1013-49/+52
| | | | | | | | | | | | | | | | | | | | | | | | This shotgun-surgery approach is motivated by trying to get a clean(er) build for -Wnoexcept on GCC, so it is expected that for any class touched here, there will be more operations that can be marked nothrow. But they don't show up in conditional noexcept clauses, yet, so they are deferred to some later commit. Change-Id: I0eb10d75a26c361fb22cf785399e83b434bdf233 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QUnicodeTables: mark all functions as nothrowMarc Mutz2015-01-102-18/+18
| | | | | | | | | | | | | | | | | | | | | | | | Yes, this is necessary. The noexcept operator looks for noexcept tagging, not at the contents of the function to determine whether to return true. The more conditionally-noexcept functions are used, the more important it becomes that low-level functions are correctly marked noexcept. In that, it is like constexpr. Change-Id: I4bca178444d1fd7caf3a92f996b1536eebdb5014 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QRingBuffer: retrieve pointer to data more carefullyAlex Trotsenko2015-01-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | An empty ring buffer always has a pre-cached byte array in its container. In this case size() indicates that no data is available, but readPointer() tries to resolve this byte array. To avoid an illegal pointer as a result, return Q_NULLPTR instead. Change-Id: Icc5f08f071a8f02a14c112b6e1adbe5373bd9466 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Docs: e.g. -> for example in qhash.cppMarc Mutz2015-01-091-2/+2
| | | | | | | | | | Change-Id: Ifee0117ddadfaa774fdd575467b03ca5b0baf433 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | QVersionNumber: use qHashRange()Marc Mutz2015-01-091-7/+1
| | | | | | | | | | | | | | Change-Id: Ia7cfb8030cded33f4246206392b46d1013067ef3 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Keith Gardner <kreios4004@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add qHashRange and qHashRangeCommutativeMarc Mutz2015-01-092-0/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qHashRange() takes an (input iterator) range and hashes each element, combining the hash values using the hash combiner from Boost/N1837 with the magic number 0x9e3779b9, as described here: http://stackoverflow.com/questions/4948780/magic-number-in-boosthash-combine qHashRangeCommutative() does the same but with a cummutative combiner (unsigned addition) to create hash values that are order-independent, e.g. for hashed containers. The obvious combiner, XOR, is a bad one because it eliminates duplicate elements. Signed addition cannot be used, since signed overflow leads to undefined behavior. [ChangeLog][QtCore] Added qHashRange() and qHashRangeCommutative() functions to aid implementing qHash() overloads for custom types. Change-Id: I3c2bbc9ce4bd0455262a70e0cf248486525e534f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Unexport QVersionNumberMarc Mutz2015-01-081-7/+7
| | | | | | | | | | | | | | | | | | | | And only export those functions which are actually out-of-line. This prevents exporting all the inline methods of QVersionNumber, so we can more freely tune the implementation after its release. Change-Id: Ie0c5e3f95fea9ec9b3dd481058db6c9f5ef2653c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QPair: mark relational operators and qMakePair() conditionally noexceptMarc Mutz2015-01-081-0/+7
| | | | | | | | | | | | | | | | The member functions are a bit more complicated, since they require <type_traits> support, so they're left for another commit. Change-Id: Icb792468e35c63eb1ae97f62ed023266fb86b89b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QPair: add member-swapMarc Mutz2015-01-082-0/+37
| | | | | | | | | | | | | | std::pair has it, too. Change-Id: I2526b09455db5502ad38a81f3d401098d54614a5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QMargins: plaster API with Q_DECL_NOTHROWMarc Mutz2015-01-081-104/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly straight-forward, but some things are worth noting: 1. Yes, this is necessary. The noexcept operator looks for noexcept tagging, not at the contents of the function to determine whether to return true. The more conditionally-noexcept functions are used, the more important it becomes that low-level classes are correctly marked noexcept. In that, it is like constexpr. 2. In accordance with the rules governing noexcept specifications for the standard library itself, the operator/-family of functions are not marked as noexcept, since they have preconditions and thus a narrow contract. Narrow-contract functions should not be noexcept. All other functions have wide contracts (ie. no preconditions). Change-Id: I2cb1f951a92dcb25eac4d9afc5b7780311e39492 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QRect: plaster API with Q_DECL_NOTHROWMarc Mutz2015-01-082-317/+334
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly straight-forward, but some things are worth noting: 1. Yes, this is necessary. The noexcept operator looks for noexcept tagging, not at the contents of the function to determine whether to return true. The more conditionally-noexcept functions are used, the more important it becomes that low-level classes are correctly marked noexcept. In that, it is like constexpr. 2. In accordance with the rules governing noexcept specifications for the standard library itself, the get*()-family of functions are not marked as noexcept, since they have preconditions and thus a narrow contract. Narrow-contract functions should not be noexcept. All other functions have wide contracts (ie. no preconditions). Change-Id: I82e5d34a0293d73ddc98ee231e17e26463ab6686 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QSize: plaster API with Q_DECL_NOTHROWMarc Mutz2015-01-082-128/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly straight-forward, but some things are worth noting: 1. Yes, this is necessary. The noexcept operator looks for noexcept tagging, not at the contents of the function to determine whether to return true. The more conditionally-noexcept functions are used, the more important it becomes that low-level classes are correctly marked noexcept. In that, it is like constexpr. 2. In accordance with the rules governing noexcept specifications for the standard library itself, the operator/-family of functions are not marked as noexcept, since they have preconditions and thus a narrow contract. Narrow-contract functions should not be noexcept. All other functions have wide contracts (ie. no preconditions). Change-Id: I9fc94218a2728c272483f9c2826c265f5b11c9b4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Move a few QStringList methods up to QList<QString>Thiago Macieira2015-01-073-39/+82
| | | | | | | | | | | | | | | | This should be completely source-compatible, aside from the indirect header order change. Change-Id: I4cf8800ea1bfeb3023c7319991ab8ae281c925e8 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Disable the warning about deprecation inside qalgorithms.hThiago Macieira2015-01-061-2/+4
| | | | | | | | | | | | | | | | | | | | | | Since some of the algorithms use other ones, we should not warn about those. The warnings are supposed to happen only in user code. Warnings obtained with GCC 5. The Clang change is just to be on the safe side. Change-Id: If295899f6ff6534de7b19741d33efc0b5c4c912c Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* | Remove workarounds for RVCT compiler bugsThiago Macieira2015-01-064-52/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does not try to remove support for RVCT. There has been no report of it working or failing to work, so the status continues to be unknown. In particular, the inline assembly code in atomic_armv[56].h remains in place. This commit only removes workarounds for compiler bugs or bogus warnings, assuming that anyone using this compiler has updated since Qt last tried to use it for Symbian in 2011. Note also how anonymous unions are now part of the language in C++11. Change-Id: Idc4fab092beb31239eb08b7e139bce2602adae81 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-12-293-17/+14
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qbytearray.cpp src/gui/kernel/qplatformsystemtrayicon.cpp src/gui/kernel/qplatformsystemtrayicon.h src/plugins/platforms/xcb/xcb-plugin.pro Change-Id: I00355d3908b678af8a61c38f9e814a63df808c79
| * QNX: Revert the change to give higher precision timers.Roger Maclean2014-12-241-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous change (SHA 82c2118c) to provide better than 1ms accuracy for timers on QNX is not safe. According to the docs, ClockCycles is not guaranteed to return consistent information if called from different CPUs. While this can be addressed by locking the thread to a single CPU, you wouldn't want to do that here. On some systems (e.g. BB10) the behavior is extremely bad since ClockCycles only has 32 bits of precision. This results in overflows in the calculations making short timers run very slowly (16ms timers were around 1s). Also ClockCycles wraps in under three minutes causing even more problems. I've talked to the kernel developers and there is currently nothing that will give you better than 1ms accuracy. An individual program could use ClockCycles to calculate more accurate times if they want. It's not clear to me what benefit one would get with increased accuracy. Unless I've missed something, these times are only used to calculate timeouts for calls such as select. These timeouts will themselves have the same resolution as clock_gettime provides so the increased accuracy would appear to be for naught. Change-Id: Ia38b154ca41949becbd0b8558a9ff4ddd5e01a43 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * Make sure we don't try to ask QByteArray to allocate too muchThiago Macieira2014-12-202-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QFile::readAll could be asked to read a file that is over 1 GB in size and thus cause an assertion: ASSERT failure in qAllocMore: "Requested size is too large!", ... The idea behind the existing code was correct, but the value was wrong. It prevented overflow of the integer size request, but didn't prevent overflowing the storage size. Change-Id: I072e6e419f47b639454f3fd96deb0f88d03e960c Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Remove the operator<< | >> (QDataStream, QStringList)Thiago Macieira2014-12-202-33/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | They aren't needed. The template version for QList in qdatastream.h is sufficient. This is binary compatible, since the functions were never exported. It's also source compatible, provided no one tried to do: QDataStream & (*fptr)(QDataStream &, QStringList &) = &operator>>; Change-Id: I8a4449b416154b34c007ef6abacf2b112451028f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Remove Q_NO_USING_KEYWORDThiago Macieira2014-12-206-117/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's a lot of code now requiring it. Any compiler that doesn't support the keyword is too old for Qt now. The last time anyone asked about this macro was for QTBUG-27393 and we don't know which compiler that was. As a necessity, this patch contains a reversal of a0c3a57aed5cde37017733e7cf5e41cc6a1174aa [ChangeLog][Compiler Specific Changes] Qt 5.5 now unconditionally uses the "using" keyword. Compilers that do not support this keyword are deprecated and will not be able to build Qt. Previous versions of Qt may or may not compile, as no testing was done to ensure it worked. Change-Id: Ief042f34aba555a095d1f342a0ee7ee9feadf42d Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | Display the QElapsedTimer reference time in %{time}Thiago Macieira2014-12-201-0/+4
| | | | | | | | | | | | | | | | | | This allows the time to be synchronized between different programs, as opposed to how long it has been since the message pattern was first parsed... Change-Id: If8bdfa0d997ca418a5fcae40f8c34fb77f90d2aa Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-182-4/+6
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/platformsupport/platformcompositor/qopenglcompositor.cpp src/platformsupport/platformcompositor/qopenglcompositorbackingstore.cpp tests/auto/gui/kernel/qwindow/tst_qwindow.cpp Change-Id: I5422868500be695584a496dbbbc719d146bc572d
| * Change bugreports.qt-project.org -> bugreports.qt.ioAlex Blasche2014-12-181-1/+1
| | | | | | | | | | | | | | The Qt bug tracker URL changes as part of the qt.io transition Change-Id: Icb4ab198943b93639b5e3a8d99262303785c6459 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * Doc: corrected documentation addOptions()Nico Vertriest2014-12-121-3/+5
| | | | | | | | | | | | Task-number: QTBUG-43259 Change-Id: If27c0658f7abaa4ce01de343ce90c14bd911212f Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Merge the multiple implementations of fromHex tooThiago Macieira2014-12-132-9/+14
| | | | | | | | | | Change-Id: I8c22f784207dd8bffb88e70ac3c867abf0af86af Reviewed-by: Jason McDonald <macadder1@gmail.com>
* | Merge the different implementations of toHex in one central placeThiago Macieira2014-12-132-18/+18
| | | | | | | | | | | | | | | | | | It's a simple enough function, but we don't need to duplicate those 17 bytes all over the place. Now they'll be duplicated at most once per library. Change-Id: Ic995e2a934b005e7e996e70f2ee644bfa948eb38 Reviewed-by: Jason McDonald <macadder1@gmail.com>
* | fix daylight time in QTimeZone on AndroidDrew Parsons2014-12-112-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Android does not provide an API to access daylight time transitions, so the standard QTimeZonePrivate::dataForLocalTime only returns standard time without the daylight offset Therefore provide an override, QAndroidTimeZonePrivate::dataForLocalTime, which tests daylight time offsets directly rather than using transitions. Change-Id: Ia8adaf9af40da38aadfa7d22d9a3fe9da9ba24a8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-101-44/+44
|\| | | | | | | | | | | | | | | Conflicts: doc/global/template/style/online.css mkspecs/android-g++/qmake.conf Change-Id: Ib39ea7bd42f5ae12e82a3bc59a66787a16bdfc61
| * Doc: corrected autolink issues qalgorithms.qdocNico Vertriest2014-12-051-44/+44
| | | | | | | | | | | | Task-number: QTBUG-40362 Change-Id: Ia609b68b52472342d791a032974a3d866e8d3266 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | QChar: mark even more functions constexprMarc Mutz2014-12-101-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | These differ from the functions already marked constexpr in that they contain subexpressions that are not constexpr. This is fine according to the standard as long as there's _one_ set of arguments that yield a Core Constant Expression (paraphrased from N3797 [dcl.constexpr]/5, C++11 contains similar wording), but maybe not for some compilers, so collect these in a separate change. Change-Id: If834232fd83059fce7c44d16b71e7d08ef79de65 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QChar: mark some more functions constexprMarc Mutz2014-12-101-31/+40
| | | | | | | | | | | | Change-Id: Iff82417b6da751278066cd325c4768cd24d56870 Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QChar: prepare relational operators for constexpr'ificationMarc Mutz2014-12-101-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure the relational operators are in a constexpr'able form by removing the use of the const/non-const-overloaded unicode() function, which in the relational operators is resolved to the non-const version, which isn't constexpr'able. Replaced with direct member access for op== and op< (required making them friends) and reformulating the other operators in terms of these two. Since I managed to introduce a bug while doing this change, add a simple test for QChar operators, too. Change-Id: I69f3da849e71abc2a17152f797694950914adebc Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Simplify QRingBuffer::isEmpty()Alex Trotsenko2014-12-061-1/+1
| | | | | | | | | | | | | | Also, make it consistent with size(). Change-Id: Ie5285e3c07ebba2d2eea05a80a75ce148da47d7b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Use the new warning enabling/disabling macros in qtbaseThiago Macieira2014-12-031-8/+3
| | | | | | | | | | | | Change-Id: I91ff06644e8047c2ca483f9768b46c1372eb6171 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | Add Q_DECL_OVERRIDE in the src subdirectoryOlivier Goffart2014-12-032-10/+10
| | | | | | | | | | | | | | | | | | | | Done automatically with clang-modernize on linux (But does not add Q_DECL_OVERRIDE to the function that are marked as inline because it a compilation error with MSVC2010) Change-Id: I2196ee26e3e6fe20816834ecea5ea389eeab3171 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QRingBuffer: cache the last released blockAlex Trotsenko2014-12-021-8/+26
| | | | | | | | | | | | | | | | | | | | A typical ring buffer usage is a sequence of reserve()->chop()->read() cycles. Usually, between these cycles, the buffer doesn't contain data and all blocks are released. To reduce reallocations, keep the most recently used block while the buffer is empty. Change-Id: I8128f1f04649ae005fd0a480f17f95de01a9a135 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-11-272-5/+6
|\| | | | | | | Change-Id: Id20053d261b4fbbcc0ac8ba49dd3ef2253fa4b95
| * Fix size miscalculation in QByteArray::toBase64Benjamin Lutz2014-11-271-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | The size calculation in QByteArray::toBase64 overcalculates the size required for the output by up to 3 Bytes. This is fixed, which also implies that truncate() at the end is needed only if OmitTrailingEquals is used. Task-number: QTBUG-32436 Change-Id: I92a893047e7aca027c4aa0a6655bcca514585ff5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Clarify QString::clear()Allan Sandfeld Jensen2014-11-271-2/+2
| | | | | | | | | | | | | | | | QString::clear() sets the string to the null QString, not just an empty one. Change-Id: Ie6f070f9f2e464105a7b87376e6dad90b5e4d2f2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | QCommandLineParser: Show usage and errors in message boxes on Windows.Friedemann Kleint2014-11-271-20/+48
| | | | | | | | | | | | | | | | | | | | | | Use the Windows MessageBox API if no console window can be obtained. [ChangeLog][QtCore][QCommandLineParser] Message boxes are used to display errors and usage if no console window can be obtained on Windows. Change-Id: I63ee8e4d8bd78db83e688fd69374779102562aa3 Reviewed-by: David Faure <david.faure@kdab.com>
* | QList::swap: implement the swap with std::swapGiuseppe D'Angelo2014-11-261-3/+1
| | | | | | | | | | | | Change-Id: Ide2f8a5581978986607de99ac9b5e9c15b3aceff Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Add Q_DECL_RELAXED_CONSTEXPR to QRect and QRectFOlivier Goffart2014-11-261-132/+132
| | | | | | | | | | | | Change-Id: Ifc8fabad46803241ccf30143b0c779f29f696335 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Add Q_DECL_RELAXED_CONSTEXPR to QPairOlivier Goffart2014-11-261-2/+2
| | | | | | | | | | | | Change-Id: I9456e820bb514f020b9f1d6c7d68547f92a1f8ff Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Add Q_DECL_RELAXED_CONSTEXPR to QMargins and QMarginsFOlivier Goffart2014-11-261-45/+45
| | | | | | | | | | | | Change-Id: Id77e22ef458a5f855e6b339ea11f8928ad5a68af Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Add Q_DECL_RELAXED_CONSTEXPR to QSize and QSizeFOlivier Goffart2014-11-261-28/+28
| | | | | | | | | | | | Change-Id: I4ce11373ad533d3f090b2de2e5017f8e34d9cfc4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Add Q_DECL_RELAXED_CONSTEXPR to QPoint and QPointFOlivier Goffart2014-11-261-36/+36
| | | | | | | | | | | | Change-Id: Ib039e491856e1a1c69ee17dbd2648dd8171655c0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>