aboutsummaryrefslogtreecommitdiffstats
path: root/generator
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-03-03 13:33:06 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2017-03-06 10:25:13 +0000
commit6b4e7c114bbeb24829db73f4ff4327417743a3cd (patch)
tree0dffd707d7e6814c8370af4d78cf00d04f0cce57 /generator
parent67e112826557421d3494e9d8e53fcd951f0a360f (diff)
CppGenerator::writeVirtualMethodNative(): Fix generating return for void
The code would generate return foo(); even for void functions. Fix it to generate foo(); return; Change-Id: I007adf85a52ec08e5c2ada14b0c9ba4aa3ba66f8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'generator')
-rw-r--r--generator/shiboken2/cppgenerator.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/generator/shiboken2/cppgenerator.cpp b/generator/shiboken2/cppgenerator.cpp
index 512782b..efdcbaf 100644
--- a/generator/shiboken2/cppgenerator.cpp
+++ b/generator/shiboken2/cppgenerator.cpp
@@ -657,8 +657,13 @@ void CppGenerator::writeVirtualMethodNative(QTextStream&s, const AbstractMetaFun
s << INDENT << "return " << (retType ? defaultReturnExpr : QString());
} else {
s << INDENT << "gil.release();" << endl;
- s << INDENT << "return this->::" << func->implementingClass()->qualifiedCppName() << "::";
+ s << INDENT;
+ if (retType)
+ s << "return ";
+ s << "this->::" << func->implementingClass()->qualifiedCppName() << "::";
writeFunctionCall(s, func, Generator::VirtualCall);
+ if (!retType)
+ s << ";\n" << INDENT << "return";
}
}
s << ';' << endl;