Browse Source

[analyzer] remove assignments to unused vars without side-effects as well so we do not end up with block-level TFunction nodes

Simon Krajewski 11 years ago
parent
commit
7127604b53
1 changed files with 1 additions and 0 deletions
  1. 1 0
      analyzer.ml

+ 1 - 0
analyzer.ml

@@ -1007,6 +1007,7 @@ module LocalDce = struct
 		let has_side_effect e = match e.eexpr with
 			| TVar(v,None) -> is_used v
 			| TVar(v,Some e1) -> is_used v || Optimizer.has_side_effect e1
+			| TBinop(OpAssign,{eexpr = TLocal v},e2) -> is_used v || Optimizer.has_side_effect e2
 			| _ -> true
 		in
 		let rec collect e = match e.eexpr with