Browse Source

Fix index variable being dce when using Binop on TField of TArray.

clementlandrin 1 year ago
parent
commit
b8bfea754d
1 changed files with 1 additions and 1 deletions
  1. 1 1
      hxsl/Dce.hx

+ 1 - 1
hxsl/Dce.hx

@@ -148,7 +148,7 @@ class Dce {
 			writeTo.pop();
 			if( isAffected.indexOf(v) < 0 )
 				isAffected.push(v);
-		case TBinop(OpAssign | OpAssignOp(_), { e : (TArray({ e: TVar(v) }, i) | TSwiz({ e : TArray({ e : TVar(v) }, i) },_)) }, e):
+		case TBinop(OpAssign | OpAssignOp(_), { e : (TArray({ e: TVar(v) }, i) | TSwiz({ e : TArray({ e : TVar(v) }, i) },_) | TField({e : TArray({ e : TVar(v) }, i) }, _)) }, e):
 			var v = get(v);
 			writeTo.push(v);
 			check(i, writeTo, isAffected);