diff --git a/share/qtcreator/gdbmacros/gdbmacros.cpp b/share/qtcreator/gdbmacros/gdbmacros.cpp
index fe13ca732910d25f80966704fe577eb987162660..3465b7e94553f0828f0ce3d91c7e381aeb298643 100644
--- a/share/qtcreator/gdbmacros/gdbmacros.cpp
+++ b/share/qtcreator/gdbmacros/gdbmacros.cpp
@@ -3541,7 +3541,7 @@ extern "C" Q_DECL_EXPORT
 void *qDumpObjectData440(
     int protocolVersion,
     int token,
-    void *data,
+    const void *data,
     int dumpChildren,
     int extraInt0,
     int extraInt1,
diff --git a/share/qtcreator/gdbmacros/gdbmacros.h b/share/qtcreator/gdbmacros/gdbmacros.h
index 67b67092121102ee12dc52962b1aa3cc50920ecb..0230d7db8b73e8b893d26fce15938f633c361748 100644
--- a/share/qtcreator/gdbmacros/gdbmacros.h
+++ b/share/qtcreator/gdbmacros/gdbmacros.h
@@ -39,7 +39,7 @@ Q_DECL_EXPORT extern char qDumpOutBuffer[];
 #endif
 
 extern "C" Q_DECL_EXPORT
-void *qDumpObjectData440(int protocolVersion, int token, void *data,
+void *qDumpObjectData440(int protocolVersion, int token, const void *data,
   int dumpChildren, int extraInt0, int extraInt1, int extraInt2, int extraInt3);
 
 
diff --git a/tests/auto/debugger/tst_dumpers.cpp b/tests/auto/debugger/tst_dumpers.cpp
index 8a3b21996cca0edc20645c374fc2401fc88c3dda..d7d3945212364f6ed9948bc58a77d953da9b213e 100644
--- a/tests/auto/debugger/tst_dumpers.cpp
+++ b/tests/auto/debugger/tst_dumpers.cpp
@@ -396,7 +396,7 @@ static void testDumper(QByteArray expected0, const void *data, QByteArray outert
         outertype.data(), 0, "iname", 0, exp.data(), 0,
         innertype.data(), 0, "iname", 0);
     //qDebug() << "FIXME qDumpObjectData440 signature to use const void *";
-    void *res = qDumpObjectData440(2, 42, const_cast<void *>(data), dumpChildren,
+    void *res = qDumpObjectData440(2, 42, data, dumpChildren,
         extraInt0, extraInt1, extraInt2, extraInt3);
     QString expected(expected0);
     char buf[100];