Merge pull request #22899 from J08nY/fix/assignment-operation-array
Do not make a function that returns Variant::NIL a void function. Fix #22791
This commit is contained in:
commit
b41301e6f9
1 changed files with 7 additions and 1 deletions
|
@ -6709,9 +6709,15 @@ GDScriptParser::DataType GDScriptParser::_reduce_function_call_type(const Operat
|
|||
}
|
||||
}
|
||||
|
||||
bool rets = false;
|
||||
return_type.has_type = true;
|
||||
return_type.kind = DataType::BUILTIN;
|
||||
return_type.builtin_type = Variant::get_method_return_type(base_type.builtin_type, callee_name);
|
||||
return_type.builtin_type = Variant::get_method_return_type(base_type.builtin_type, callee_name, &rets);
|
||||
// If the method returns, but it might return any type, (Variant::NIL), pretend we don't know the type.
|
||||
// At least make sure we know that it returns
|
||||
if (rets && return_type.builtin_type == Variant::NIL) {
|
||||
return_type.has_type = false;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue