moc: Use QMetaType::QVariant as the type for QVariant
authorKent Hansen <kent.hansen@nokia.com>
Fri, 6 Jan 2012 12:43:40 +0000 (13:43 +0100)
committerQt by Nokia <qt-info@nokia.com>
Wed, 25 Jan 2012 07:46:40 +0000 (08:46 +0100)
commit00c8984b4e48b2a7eadfee6c3cd0cbb19f586118
treea4f3f1c958d43b737ef669578c35789134f34341
parent79ebb1621e6cdb68a4ad107c8ac80eadb9c60366
moc: Use QMetaType::QVariant as the type for QVariant

QMetaType::QVariant has existed as a proper type for almost two
years, but the qvariant_nameToType function was written in 2006.

Using QMetaType::QVariant means QVariant can be treated just like
any other type. We can get rid of those hacky checks for LastType,
and the remaining checks become more readable.

The fact that QMetaProperty::{type,userType}() returned LastType
(0xffffffff) for QVariants was never documented (LastType itself is
internal). But there are other Qt modules that assume so. I'll fix
the ones I know about (qtdeclarative, qtscript, activeqt).

Change-Id: I799b9079bb8bbb1fe76c132525440b30415cbac5
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
src/corelib/kernel/qmetaobject.cpp
src/corelib/kernel/qmetaobjectbuilder.cpp
src/tools/moc/generator.cpp
tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp
tests/auto/corelib/kernel/qobject/tst_qobject.cpp