1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00

Merge pull request #70656 from vonagam/fix-void-returns

GDScript: Disallow return with value in void functions
This commit is contained in:
Rémi Verschelde
2023-01-03 12:20:33 +01:00
7 changed files with 20 additions and 0 deletions

View File

@@ -2047,6 +2047,9 @@ void GDScriptAnalyzer::resolve_return(GDScriptParser::ReturnNode *p_return) {
update_array_literal_element_type(expected_type, static_cast<GDScriptParser::ArrayNode *>(p_return->return_value));
}
}
if (has_expected_type && expected_type.is_hard_type() && expected_type.kind == GDScriptParser::DataType::BUILTIN && expected_type.builtin_type == Variant::NIL) {
push_error("A void function cannot return a value.", p_return);
}
result = p_return->return_value->get_datatype();
} else {
// Return type is null by default.