소스 검색

[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 년 전
부모
커밋
7127604b53
1개의 변경된 파일1개의 추가작업 그리고 0개의 파일을 삭제
  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