JPEXS Free Flash Decompiler Issue Tracker

If you are looking for the decompiler itself, visit

: The issue tracker is now writable again and logged users can download files too. But note that our support is very LIMITED.

List of issuesList of issues

#258 AS1/2 chained assignments
Author: user focus
Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: AS1/2
State: closed Help

Try to open attached file and decompile class "things". Interesting part at function move(): things.arr[0]._yscale=register0=(things.arr[0]._y + 20) / 3; things.arr[0]._xscale=register0; Originally: arr [0]._xscale = arr [0]._yscale = (arr [0]._y + 20) / 3;
Downloadship.swf (6 KiB)
PS: Please, ignore code itself, it can hurt your eyes.
The "things." prefix is OK I think as arr is static variable. Register0 is there because it is chained assignment. This is how FFDec currently decompiles chained assignments. It is how it intended to be. To decompile it as things.arr[0]._xscale=things.arr[0]._yscale=(things.arr[0]._y + 20) / 3; I will need to find out whether the register is temporary only (not user elsewhere), and if it is, then remove it.
Title: AS2 Decompilation issue→AS1/2 chained assignments
I see.. would be great to see cleaner version in future, such code not so readable. And it will not compile back (register0 is not declared):, Line 28 There is no property with the name 'register0'.
State: new→opened
version 1.7.0 was released this should be better, try it
State: opened→upgraded
Looks great now, thanks!
State: upgraded→closed