diff --git a/src/dbus/qdbusmetaobject.cpp b/src/dbus/qdbusmetaobject.cpp
index 678ce2a97c3307d4e0e520ab526b9923b2e07950..bae1c04054a09f7c6179811302ece46b00883b3d 100644
--- a/src/dbus/qdbusmetaobject.cpp
+++ b/src/dbus/qdbusmetaobject.cpp
@@ -427,9 +427,9 @@ void QDBusMetaObjectGenerator::write(QDBusMetaObject *obj)
     int data_size = idata.size() +
                     (header->methodCount * (5+intsPerMethod)) + methodParametersDataSize +
                     (header->propertyCount * (3+intsPerProperty));
-    foreach (const Method &mm, signals_)
+    for (const Method &mm : qAsConst(signals_))
         data_size += 2 + mm.inputTypes.count() + mm.outputTypes.count();
-    foreach (const Method &mm, methods)
+    for (const Method &mm : qAsConst(methods))
         data_size += 2 + mm.inputTypes.count() + mm.outputTypes.count();
     idata.resize(data_size + 1);
 
diff --git a/src/dbus/qdbusserver.cpp b/src/dbus/qdbusserver.cpp
index babb270da0f0755a3c1f42410d07c72020625c7d..6b5166508fc0b6a9cc846dfc04b2e7d2b8203925 100644
--- a/src/dbus/qdbusserver.cpp
+++ b/src/dbus/qdbusserver.cpp
@@ -99,9 +99,8 @@ QDBusServer::~QDBusServer()
 {
     if (QDBusConnectionManager::instance()) {
         QMutexLocker locker(&QDBusConnectionManager::instance()->mutex);
-        Q_FOREACH (const QString &name, d->serverConnectionNames) {
+        for (const QString &name : qAsConst(d->serverConnectionNames))
             QDBusConnectionManager::instance()->removeConnection(name);
-        }
         d->serverConnectionNames.clear();
     }
     d->ref.store(0);
diff --git a/src/dbus/qdbusservicewatcher.cpp b/src/dbus/qdbusservicewatcher.cpp
index 72c1a12f2cbe9ffa1b5faad6b831618931d1f487..eb90b149c88216183fc1dfbf5d6c6da1d395ed31 100644
--- a/src/dbus/qdbusservicewatcher.cpp
+++ b/src/dbus/qdbusservicewatcher.cpp
@@ -78,7 +78,7 @@ void QDBusServiceWatcherPrivate::setConnection(const QStringList &s, const QDBus
 {
     if (connection.isConnected()) {
         // remove older rules
-        foreach (const QString &s, servicesWatched)
+        for (const QString &s : qAsConst(servicesWatched))
             removeService(s);
     }
 
@@ -88,7 +88,7 @@ void QDBusServiceWatcherPrivate::setConnection(const QStringList &s, const QDBus
 
     if (connection.isConnected()) {
         // add new rules
-        foreach (const QString &s, servicesWatched)
+        for (const QString &s : qAsConst(servicesWatched))
             addService(s);
     }
 }
diff --git a/src/dbus/qdbusutil.cpp b/src/dbus/qdbusutil.cpp
index 371b7b184ee4b75c683af329f5e7b397877e70cb..04e805d173754e8a2f499a80d86b75b77295bd7e 100644
--- a/src/dbus/qdbusutil.cpp
+++ b/src/dbus/qdbusutil.cpp
@@ -77,8 +77,8 @@ static bool variantToString(const QVariant &arg, QString &out)
 
     if (argType == QVariant::StringList) {
         out += QLatin1Char('{');
-        QStringList list = arg.toStringList();
-        foreach (const QString &item, list)
+        const QStringList list = arg.toStringList();
+        for (const QString &item : list)
             out += QLatin1Char('\"') + item + QLatin1String("\", ");
         if (!list.isEmpty())
             out.chop(2);
@@ -95,8 +95,8 @@ static bool variantToString(const QVariant &arg, QString &out)
         out += QLatin1Char('}');
     } else if (argType == QVariant::List) {
         out += QLatin1Char('{');
-        QList<QVariant> list = arg.toList();
-        foreach (const QVariant &item, list) {
+        const QList<QVariant> list = arg.toList();
+        for (const QVariant &item : list) {
             if (!variantToString(item, out))
                 return false;
             out += QLatin1String(", ");