mirror of
https://github.com/godotengine/godot
synced 2024-10-14 09:59:01 +00:00
GDScript: Fix conversions from native members accessed by identifier
This commit is contained in:
parent
3863199ab9
commit
281c8c75d3
|
@ -242,7 +242,7 @@ GDScriptCodeGenerator::Address GDScriptCompiler::_parse_expression(CodeGen &code
|
||||||
// Try class members.
|
// Try class members.
|
||||||
if (_is_class_member_property(codegen, identifier)) {
|
if (_is_class_member_property(codegen, identifier)) {
|
||||||
// Get property.
|
// Get property.
|
||||||
GDScriptCodeGenerator::Address temp = codegen.add_temporary(); // TODO: Could get the type of the class member here.
|
GDScriptCodeGenerator::Address temp = codegen.add_temporary(_gdtype_from_datatype(p_expression->get_datatype(), codegen.script));
|
||||||
gen->write_get_member(temp, identifier);
|
gen->write_get_member(temp, identifier);
|
||||||
return temp;
|
return temp;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
class Foo extends Node:
|
||||||
|
func _init():
|
||||||
|
name = 'f'
|
||||||
|
var string: String = name
|
||||||
|
assert(typeof(string) == TYPE_STRING)
|
||||||
|
assert(string == 'f')
|
||||||
|
print('ok')
|
||||||
|
|
||||||
|
func test():
|
||||||
|
var foo := Foo.new()
|
||||||
|
foo.free()
|
|
@ -0,0 +1,2 @@
|
||||||
|
GDTEST_OK
|
||||||
|
ok
|
Loading…
Reference in a new issue