diff -r ef0373b55136 -r 758a864f9613 src/declarative/qml/qdeclarativeprivate.h --- a/src/declarative/qml/qdeclarativeprivate.h Fri Sep 17 08:34:18 2010 +0300 +++ b/src/declarative/qml/qdeclarativeprivate.h Mon Oct 04 01:19:32 2010 +0300 @@ -105,7 +105,7 @@ template struct StaticCastSelectorClass { - static inline int cast() { return (int)((intptr_t)static_cast((From *)0x10000000)) - 0x10000000; } + static inline int cast() { return int(reinterpret_cast(static_cast(reinterpret_cast(0x10000000)))) - 0x10000000; } }; template @@ -119,7 +119,7 @@ static inline int cast() { - return StaticCastSelectorClass::cast(); + return StaticCastSelectorClass(0)))>::cast(); } }; @@ -132,6 +132,7 @@ template class has_attachedPropertiesMethod { + public: typedef int yes_type; typedef char no_type; @@ -139,7 +140,6 @@ static yes_type check(ReturnType *(*)(QObject *)); static no_type check(...); - public: static bool const value = sizeof(check(&T::qmlAttachedProperties)) == sizeof(yes_type); };