Merge pull request #40698 from vnen/gscript-allow-new-call

Allow "new()" to be called in non-static functions
This commit is contained in:
Rémi Verschelde 2020-07-25 18:36:19 +02:00 committed by GitHub
commit 58bde149cc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -736,7 +736,7 @@ int GDScriptCompiler::_parse_expression(CodeGen &codegen, const GDScriptParser::
} else {
if (callee->type == GDScriptParser::Node::IDENTIFIER) {
// Self function call.
if (codegen.function_node && codegen.function_node->is_static) {
if ((codegen.function_node && codegen.function_node->is_static) || call->function_name == "new") {
ret = (GDScriptFunction::ADDR_TYPE_CLASS << GDScriptFunction::ADDR_BITS);
} else {
ret = (GDScriptFunction::ADDR_TYPE_SELF << GDScriptFunction::ADDR_BITS);