소스 검색

fixed #3218 leading to check error

Nicolas Cannasse 8 년 전
부모
커밋
d528a5eafc
1개의 변경된 파일1개의 추가작업 그리고 0개의 파일을 삭제
  1. 1 0
      src/generators/hlopt.ml

+ 1 - 0
src/generators/hlopt.ml

@@ -565,6 +565,7 @@ let optimize dump (f:fundecl) =
 			if dstate then print_state i state;
 			(match op with
 			| OIncr r | ODecr r | ORef (_,r) ->  do_write r
+			| OCallClosure (_,r,_) when f.regs.(r) = HDyn && (match f.regs.(state.(r).ralias.rindex) with HFun (_,rt) -> not (is_dynamic rt) | HDyn -> false | _ -> true) -> do_write r (* Issue3218.hx *)
 			| _ -> ());
 			let op = opcode_map (fun r ->
 				let s = state.(r) in