aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHugo Lima <hugo.lima@openbossa.org>2009-10-22 11:45:45 -0200
committerHugo Lima <hugo.lima@openbossa.org>2009-10-22 13:57:14 -0200
commit8e21edd40416a0d6dd87afb6405f4f0443caca83 (patch)
tree7b2934208700f921741108fffe40d93e9c5e5b26
parentc63f069dba7159ec722e97eae886de182466e2fc (diff)
Added functions aren't marked as virtual anymore.
Reviewed by Renato Araujo <renato.filho@openbossa.org>
-rw-r--r--abstractmetabuilder.cpp1
-rw-r--r--tests/testaddfunction.cpp5
2 files changed, 6 insertions, 0 deletions
diff --git a/abstractmetabuilder.cpp b/abstractmetabuilder.cpp
index 773dda22b..8b6c4fe89 100644
--- a/abstractmetabuilder.cpp
+++ b/abstractmetabuilder.cpp
@@ -1391,6 +1391,7 @@ AbstractMetaFunction *AbstractMetaBuilder::traverseFunction(const AddedFunction&
int visibility = addedFunc.access() == AddedFunction::Public ? AbstractMetaAttributes::Public : AbstractMetaAttributes::Protected;
metaFunction->setVisibility(visibility);
metaFunction->setFunctionType(AbstractMetaFunction::UserAddedFunction);
+ metaFunction->setAttributes(metaFunction->attributes() | AbstractMetaAttributes::Final);
metaFunction->setType(translateType(addedFunc.returnType()));
QList<AddedFunction::TypeInfo> args = addedFunc.arguments();
diff --git a/tests/testaddfunction.cpp b/tests/testaddfunction.cpp
index d36411cc8..0637eb5c9 100644
--- a/tests/testaddfunction.cpp
+++ b/tests/testaddfunction.cpp
@@ -89,6 +89,11 @@ void TestAddFunction::testAddFunction()
QCOMPARE(addedFunc->ownerClass(), classA);
QCOMPARE(addedFunc->implementingClass(), classA);
QCOMPARE(addedFunc->declaringClass(), classA);
+ QVERIFY(!addedFunc->isVirtual());
+ QVERIFY(!addedFunc->isSignal());
+ QVERIFY(!addedFunc->isSlot());
+ QVERIFY(!addedFunc->isStatic());
+
AbstractMetaType* returnType = addedFunc->type();
QCOMPARE(returnType->typeEntry(), typeDb->findPrimitiveType("int"));
AbstractMetaArgumentList args = addedFunc->arguments();