GDScript: Fix lambdas capturing non-local variables

This commit is contained in:
Danil Alexeev
2024-05-22 10:07:31 +03:00
parent 214968243c
commit 4b692959de
3 changed files with 48 additions and 4 deletions

View File

@@ -0,0 +1,26 @@
# GH-92217
# TODO: Add more tests.
static var static_var: int:
set(value):
prints("set static_var", value)
get:
print("get static_var")
return 0
var member_var: int:
set(value):
prints("set member_var", value)
get:
print("get member_var")
return 0
func test():
var lambda := func ():
var _tmp := static_var
_tmp = member_var
static_var = 1
member_var = 1
lambda.call()

View File

@@ -0,0 +1,5 @@
GDTEST_OK
get static_var
get member_var
set static_var 1
set member_var 1