qt5base-lts/tests/auto/corelib/plugin/quuid
Marc Mutz 38e90ad2b3 qcompilerdetection.h: add Q_COMPILER_UNIFORM_INIT
Up to now, the feature classe Uniform Initialization was subsumed by the
Q_COMPILER_INITIALIZER_LISTS flag together with support for
std::initializer_list.

This caused at least two problems:
1. On QNX, the standard libray does not ship <initializer_list>, even
   though the compiler (a GCC 4.6, IIRC) supports it. But since there
   was only one Q_COMPILER flag for both, support for the compiler-only
   part of the feature had to be disabled, too.
2. MSVC 2013 supports initializer lists, but has a bug that renders full
   uniform initialization support, as required for QUuid, useless.

By splitting the feature into two, we can separate them better, and do
so in QUuid, which is the only class that currently takes advantage of
uniform initialization (to provide constexpr constructors).

Since Q_COMPILER_INITIALIZER_LISTS worked as a flag for uniform
initialization so far, with the two known exceptions above,
UNIFORM_INIT is defined whenever INITIALIZER_LIST is, except that
I don't revert UNIFORM_INIT on QNX as I do for INITIALIZER_LISTS
and that I expect the MSVC 2013 features to set INITIALIZER_LIST,
but not UNIFORM_INIT.

Task-number: QTBUG-34705

Change-Id: I81916e950a0f3aab3de7977e0326d2de3d31b14c
Reviewed-by: Yuchen Deng <loaden@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-11-15 06:30:53 +01:00
..
test Set the Qt API level to compatibility mode in all tests. 2012-08-01 15:37:46 +02:00
testProcessUniqueness don't erroneously claim that gui support is needed 2013-10-16 17:10:15 +02:00
.gitignore Moving relevant tests to corelib/plugin 2011-09-01 12:42:51 +02:00
quuid.pro Moving relevant tests to corelib/plugin 2011-09-01 12:42:51 +02:00
tst_quuid.cpp qcompilerdetection.h: add Q_COMPILER_UNIFORM_INIT 2013-11-15 06:30:53 +01:00