diff --git a/src/qml/qml/qqmllocale_p.h b/src/qml/qml/qqmllocale_p.h
index a29b86fbeac63802c5f4c8e005c7fce0840ca953..37875170383b975a46605ac3ed98b8c8b764c2af 100644
--- a/src/qml/qml/qqmllocale_p.h
+++ b/src/qml/qml/qqmllocale_p.h
@@ -174,7 +174,7 @@ struct QQmlLocaleData : public QV4::Object
 private:
     static void destroy(Managed *that)
     {
-        static_cast<QQmlLocaleData *>(that)->~QQmlLocaleData();
+        static_cast<QQmlLocaleData *>(that)->d()->~Data();
     }
 };