: WARNING - support of the decompiler is now VERY LIMITED. There are no active developers. This means waiting times in the issue tracker are very long and mostly depend on community. Sorry for the inconvenience.
State: closed new: Initial state. As long as issue is in this state, the work on the issue has not yet begun. opened: Opened state means developer started working on the issue. Feature/Fix will probably be in the next release. postponed: This means developer is not working on it now, for some reason it cannot be implemented now. Issue may be opened again in the future. upgraded: Issue is in upgraded state when developer made changes to the program and new version was released. closed: This means the user is satisfied with issue results and no more changes are needed. invalid: These issues cannot be solved. ignored: Developer decided to take no action on this issue. returned: Program changes were made but user is not satisfied and returned the issue.
I keep running into this situation:
; Generate assignment statements:
setlocal_2 ; _loc2_=true
; 10 08 00 00
jump ofs000f ; Unconditional branch
ofs000f:setlocal_3 ; _loc3_=false
; Dead code A:
getlocal_3 ; Push _loc3_ on stack
; 11 64 00 00
iftrue ofs0093 ; False, so branch not taken. Also should pop, right?
; Dead code B:
; d2 ; Push _loc2_ on stack
; 2a ; Do it again.
; 11 03 00 00
iftrue ofs003e ; True, branch taken. Again, should pop off stack.
; 12 06 00 00
ofs003e:iffalse ofs0048 ; True, branch not taken. Again, should pop off stack.
// Assignment statements:
var _loc2_:* = true;
var _loc3_:* = false;
// Dead code A:
// Dead code B:
Shouldn't no code be generated at all?