summaryrefslogtreecommitdiffstats
path: root/platform/linuxbsd/detect.py
diff options
context:
space:
mode:
authorRyan Roden-Corrent <ryan@rcorre.net>2023-03-03 18:31:40 -0500
committerRyan Roden-Corrent <ryan@rcorre.net>2023-03-04 08:03:24 -0500
commit53a00abb11cbbdceba7f7d027e7455854bfef01e (patch)
treed9dbdd1ab3f732d3e1a23a9273190b012c064b1d /platform/linuxbsd/detect.py
parent61d2c855114c824f5ca27ded0a1fa71cc7b21134 (diff)
downloadredot-engine-53a00abb11cbbdceba7f7d027e7455854bfef01e.tar.gz
Correct superclass constructors in 3to4.
Fixes #70542. The 3to4 conversion tool was not handling superclass constructors. We should translate the godot3 syntax: ```gdscript func _init(a,b,c).(a,b,c): pass func _init(a,b,c): super(a,b,c) ``` Originally, the _init conversion was intended to remove `void` return types from _init functions, as this was disallowed due to #50589. As that was resolved by #53366, I removed that part of the conversion logic. If a void return type is present on a constructor, the converter now leaves it. Here's a sample diff from my own project: ```diff @@ -103,10 +105,11 @@ class Real: class Text: extends Setting - var choices: PoolStringArray - var value: String setget set_value, get_value + var choices: PackedStringArray + var value: String : get = get_value, set = set_value - func _init(section: String, key: String, default: String, choice_list: Array).(section, key, default) -> void: + func _init(section: String, key: String, default: String, choice_list: Array) -> void: + super(section, key, default) choices = choice_list func normalize(val): @@ -129,9 +132,10 @@ class Text: class Boolean: extends Setting - var value: bool setget set_value, get_value + var value: bool : get = get_value, set = set_value - func _init(section: String, key: String, default: bool).(section, key, default) -> void: + func _init(section: String, key: String, default: bool) -> void: + super(section, key, default) pass ```
Diffstat (limited to 'platform/linuxbsd/detect.py')
0 files changed, 0 insertions, 0 deletions