// Do some semantic checking on the function
interfaceScope.getMethodBodySemanticChecker().checkFunctionDecl(func);
// Ensure the return type is defined.
IDefinition return_type = func_def.resolveReturnType(project);
if ( !SemanticUtils.isType(return_type) )
{
interfaceScope.getMethodBodySemanticChecker().addTypeProblem(func.getReturnTypeNode(), return_type, func_def.getReturnTypeAsDisplayString(), true);
}