Bring qmetaobjectbuilder in sync with moc
authorKent Hansen <kent.hansen@nokia.com>
Thu, 2 Feb 2012 13:20:24 +0000 (14:20 +0100)
committerQt by Nokia <qt-info@nokia.com>
Fri, 3 Feb 2012 14:09:03 +0000 (15:09 +0100)
commitb184dd0a01fda019d5a0960f6d074b6391dba655
tree692ac20cda6cf083536040624fe4815605c348be
parent8bbb00e44e2f027c65ff2729f56353abc2b2cbef
Bring qmetaobjectbuilder in sync with moc

qmetaobjectbuilder should generate meta-objects of the same version
as moc; in the future, when the moc version is bumped, QMOB has to
be adapted at the same time.

QMOB was generating version 4 meta-objects. This patch makes it
generate version 6 (the current version). This also fixes a bug with
using qt_static_metacall with QMOB (setStaticMetacallFunction()); it
was already using the version 6 qt_static_metacall signature, which
isn't compatible with version 4.

Also add tests that ensure that the QMOB-generated meta-object works
with real objects; in particular we want to test the codepaths in Qt
that check for version >= 4.

Change-Id: I64a151ea5c947a6f8b7a00e85a39866446c735e9
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
src/corelib/kernel/qmetaobject_p.h
src/corelib/kernel/qmetaobjectbuilder.cpp
src/tools/moc/generator.cpp
tests/auto/corelib/kernel/qmetaobjectbuilder/tst_qmetaobjectbuilder.cpp