mirror of
https://github.com/godotengine/godot.git
synced 2025-10-20 00:13:30 +00:00
GDScript: Fix accessing static function as Callable
in static context
This commit is contained in:
parent
84692c6252
commit
10dcb21d8b
3 changed files with 15 additions and 3 deletions
|
@ -322,9 +322,13 @@ GDScriptCodeGenerator::Address GDScriptCompiler::_parse_expression(CodeGen &code
|
|||
if (member.type == GDScriptParser::ClassNode::Member::FUNCTION || member.type == GDScriptParser::ClassNode::Member::SIGNAL) {
|
||||
// Get like it was a property.
|
||||
GDScriptCodeGenerator::Address temp = codegen.add_temporary(); // TODO: Get type here.
|
||||
GDScriptCodeGenerator::Address self(GDScriptCodeGenerator::Address::SELF);
|
||||
|
||||
gen->write_get_named(temp, identifier, self);
|
||||
GDScriptCodeGenerator::Address base(GDScriptCodeGenerator::Address::SELF);
|
||||
if (member.type == GDScriptParser::ClassNode::Member::FUNCTION && member.function->is_static) {
|
||||
base = GDScriptCodeGenerator::Address(GDScriptCodeGenerator::Address::CLASS);
|
||||
}
|
||||
|
||||
gen->write_get_named(temp, identifier, base);
|
||||
return temp;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue