Open filpano opened 1 month ago
I can confirm this issue still exists in 4.4dev3. I also discovered a very cursed workaround: simply writing the word Step
anywhere in the script before a line that throws the error fixes it. So this works:
func _connect_signal(parent: Parent) -> void:
for step_id: String in parent.steps:
Step # Just writing the identifier shouldn't have any effect, yet it fixes the problem somehow
parent.steps[step_id].test_step.connect(_on_connect)
Fixed by #98336 hopefully, could someone please test if it resolves all issues (and doesn't introduce new ones)?
Thanks! I won't be able to test this until Wednesday - if no one chimes in I'll take a look then.
Tested versions
System information
Godot v4.4.dev2 - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 4070 (NVIDIA; 32.0.15.6094) - AMD Ryzen 7 5700X 8-Core Processor (16 Threads)
Issue description
Relevant log:
When iterating over a typed dictionary using the
for key in typed_dict: ...
syntax, accessing the dictionary value's:Causes the above error to be produced. In most cases, the error can be worked around by assigning the typed dictionary's value to an intermediate variable. Sometimes explicit typing is required - see the examples below to see what works and what doesn't.
Steps to reproduce
Minimal reproduction project (MRP)
See above.