qt5base-lts/tests/auto/corelib/tools
Thiago Macieira 7e93870401 QProcess/Unix: introduce setChildProcessModifier()
[ChangeLog][Source-Incompatible Changes] QProcess::setupChildProcess()
was removed. To execute code in a child process, use
QProcess::setChildProcessModifier()

[ChangeLog][QtCore][QProcess] Added setChildProcessModifier() function
with which one can provide code to be run in the Unix child process
between fork() and execve(). With this function, it is no longer
necessary to derive from QProcess in order to execute actions in the
child process.

Another reason is that we can tell whether the std::function carries a
valid target much more easily than we can tell whether QProcess was
overridden.

The setupChildProcess() virtual function does not need to be marked
final, since no overrider could ever return an inaccessible private
class. This also makes sure the error presented to the user is about the
return type, not about attempting to override a final.

Clang:
 error: virtual function 'f' has a different return type ('void') than the function it overrides (which has return type 'QProcess::Use_setChildProcessModifier_Instead')

GCC:
 error: conflicting return type specified for 'virtual void MyProcess::setupChildProcess()'
 note: overridden function is 'virtual QProcess::Use_setChildProcessModifier_Instead QProcess::setupChildProcess()'

ICC:
 error: return type is neither identical to nor covariant with return type "QProcess::Use_setChildProcessModifier_Instead" of overridden virtual function "QProcess::setupChildProcess"

MSVC is not relevant since it doesn't compile to Unix.

Change-Id: Ia8b65350cd5d49debca9fffd15f801161363aea7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
2020-09-08 21:00:29 -07:00
..
collections Long Live QMap as a refcounted std::map! 2020-08-06 19:15:39 +02:00
containerapisymmetry Move QStringRef and remains to Qt5Compat 2020-08-20 00:58:13 +02:00
qalgorithms Purge qalgorithm.h of deprecated API 2020-08-28 21:22:32 +02:00
qarraydata Add prepend optimization to QCommonArrayOps 2020-08-27 18:58:20 +02:00
qbitarray CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qcache CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qcommandlineparser QCommandLineOption: purge deprecated API 2020-07-20 16:06:28 +02:00
qcontiguouscache CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qcryptographichash QCryptographicHash: Add BLAKE2b and BLAKE2s hashing algorithms 2020-07-31 15:05:18 +02:00
qeasingcurve Deprecate the static int based API in QMetaType 2020-08-24 00:19:05 +02:00
qexplicitlyshareddatapointer Fix warnings about unused expression results in tests 2020-07-29 14:33:29 +02:00
qflatmap Use QList instead of QVector in corelib tests 2020-07-07 11:48:45 +02:00
qfreelist Port more tests from tests/auto/corelib/tools to CMake 2020-04-29 22:48:45 +02:00
qhash Disable warning about self-move and self-assign-overload 2020-07-26 18:06:34 +02:00
qhashfunctions Move QStringRef and remains to Qt5Compat 2020-08-20 00:58:13 +02:00
qline QLineF: Don't try calculating a unit vector when length is null 2020-08-25 17:59:10 +02:00
qlinkedlist Port Q_STATIC_ASSERT(_X) to static_assert 2020-06-19 19:38:23 +02:00
qlist Support GrowsBackwards prepend in QList 2020-08-27 18:58:20 +02:00
qmacautoreleasepool Port more tests from tests/auto/corelib/tools to CMake 2020-04-29 22:48:45 +02:00
qmakearray CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qmap QMultiMap: fix remove(Key, T) when key/value belong to the map 2020-08-19 01:45:19 +02:00
qmargins CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qmessageauthenticationcode CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qoffsetstringarray Port more tests from tests/auto/corelib/tools to CMake 2020-04-29 22:48:45 +02:00
qpair Cleanup QTypeInfo 2020-08-26 01:03:22 +02:00
qpoint CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qpointf CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qqueue CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qrect CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qringbuffer CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qscopedpointer Fix warnings about unused expression results in tests 2020-07-29 14:33:29 +02:00
qscopedvaluerollback CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qscopeguard CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qset Deprecate the static int based API in QMetaType 2020-08-24 00:19:05 +02:00
qsharedpointer QProcess/Unix: introduce setChildProcessModifier() 2020-09-08 21:00:29 -07:00
qsize CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qsizef CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qstl CMake: Regenerate tests with new qt_ prefixed APIs 2020-07-09 09:38:35 +02:00
qtaggedpointer QTaggedPointer: verify constexpr'ness of some ctors 2020-05-16 08:55:28 +02:00
qtimeline Deprecate QTimeLine's curveShape in favor of its easingCurve 2020-07-16 17:39:11 +02:00
qvarlengtharray Cleanup QTypeInfo 2020-08-26 01:03:22 +02:00
qversionnumber Tests: Use QVERIFY instead of QCOMPARE for empty lists 2020-07-10 14:30:58 +02:00
.prev_CMakeLists.txt CMake: Regenerate subdir test projects 2020-07-09 09:38:39 +02:00
CMakeLists.txt Move implementation of QVector/List back to qlist.h 2020-06-20 20:01:33 +02:00
tools.pro Move implementation of QVector/List back to qlist.h 2020-06-20 20:01:33 +02:00