qt5base-lts/tests/auto
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
..
cmake CMake: Fix configuration of CMake tests in-build-tree 2020-07-20 18:12:23 +02:00
concurrent QtConcurrent: Introduce runWithPromise() 2020-08-19 12:46:10 +02:00
corelib QProcess/Unix: introduce setChildProcessModifier() 2020-09-08 21:00:29 -07:00
dbus Deprecate the static int based API in QMetaType 2020-08-24 00:19:05 +02:00
gui Create consistent sets of QImage methods 2020-09-09 00:14:49 +01:00
guiapplauncher Move QStateMachine from QtCore to QtScxml 2020-08-24 20:10:25 +02:00
installed_cmake Add a unit test for testing Qt in its install location. 2013-07-02 23:08:54 +02:00
network Extend test blacklisting from Ubuntu 18.04 to 20.04 2020-09-03 14:30:04 +02:00
opengl Remove tst_QGL 2020-08-28 11:43:11 +02:00
other pro2cmake: Fix qmake parser's line continuation handling 2020-09-02 23:44:15 +02:00
printsupport Remove deprecated QPrinter and QPagedPaintDevice APIs 2020-09-04 08:37:59 +02:00
shared QWindowsFontDatabase: Check preferred family names for all fonts 2019-11-29 09:31:21 +01:00
sql Interbase: Correctly read/write arrays to the database 2020-09-08 08:02:14 +02:00
testlib Get rid of hasPendingEvents() and flush() 2020-09-06 00:17:12 +02:00
tools tst_qdbuscpp2xml: stop doing math on enumerations 2020-09-05 17:12:50 +02:00
widgets Refactor testlib touch functions into qtestsupport_gui and _widgets 2020-09-08 08:02:15 +02:00
xml Disable deprecation warnings in some tests 2020-07-29 14:33:23 +02:00
.prev_CMakeLists.txt CMake: Regenerate subdir test projects 2020-07-09 09:38:39 +02:00
auto.pro CMake: Get tests/auto/cmake tests working 2020-07-17 09:43:04 +02:00
CMakeLists.txt CMake: Get tests/auto/cmake tests working 2020-07-17 09:43:04 +02:00
network-settings.h Revert "QAbstractSocket: deprecate 'error' member-function" 2020-02-26 23:07:52 +03:00