5a1b4832a2
C++17 adopts P0021R1[1], which makes noexcept be part of the function pointer's type and thus be overloadable. It contains some provisions for allowing a noexcept function pointer to cast implicitly to a non- noexcept function pointer, but that fails in the presence of templates and additional overloads that could match the type in question. Fortunately, the paper proposed a test macro, so we can change our sources now and be compatible with both C++14 and C++17 rules. This first failed with Clang 4.0 trunk. This source incompatibility is not our fault, it's the language's doing. [1] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0012r1.html Task-number: QTBUG-58054 Change-Id: I2bc52f3c7a574209b213fffd14988cf0b875be63 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> |
||
---|---|---|
.. | ||
qcoreapplication | ||
qdeadlinetimer | ||
qelapsedtimer | ||
qeventdispatcher | ||
qeventloop | ||
qmath | ||
qmetaenum | ||
qmetamethod | ||
qmetaobject | ||
qmetaobjectbuilder | ||
qmetaproperty | ||
qmetatype | ||
qmimedata | ||
qobject | ||
qpointer | ||
qsharedmemory | ||
qsignalblocker | ||
qsignalmapper | ||
qsocketnotifier | ||
qsystemsemaphore | ||
qtimer | ||
qtranslator | ||
qvariant | ||
qwineventnotifier | ||
kernel.pro |