diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2021-10-04 17:11:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-04 17:11:31 +0200 |
commit | 1fc771bfc6d0cc361dca448c14839955bd7979a8 (patch) | |
tree | 54b24c88ac9a5f87fffc3bed14ccc407cf4688fd | |
parent | 11c7bac1eda76a20158cf71d023bc9669ae50fbc (diff) | |
parent | cb28469281e14cafc811fbd7b3633c1824e97463 (diff) |
Merge pull request #53366 from KoBeWi/your_argument_is_null_and_void
-rw-r--r-- | modules/gdscript/gdscript_analyzer.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/modules/gdscript/gdscript_analyzer.cpp b/modules/gdscript/gdscript_analyzer.cpp index c35af9ca5b..fbba1c1069 100644 --- a/modules/gdscript/gdscript_analyzer.cpp +++ b/modules/gdscript/gdscript_analyzer.cpp @@ -1035,7 +1035,10 @@ void GDScriptAnalyzer::resolve_function_signature(GDScriptParser::FunctionNode * return_type.is_meta_type = false; p_function->set_datatype(return_type); if (p_function->return_type) { - push_error("Constructor cannot have an explicit return type.", p_function->return_type); + GDScriptParser::DataType declared_return = resolve_datatype(p_function->return_type); + if (declared_return.kind != GDScriptParser::DataType::BUILTIN || declared_return.builtin_type != Variant::NIL) { + push_error("Constructor cannot have an explicit return type.", p_function->return_type); + } } } else { GDScriptParser::DataType return_type = resolve_datatype(p_function->return_type); |