瀏覽代碼

fix TMeta forcing isVar=true

Nicolas Cannasse 1 年之前
父節點
當前提交
9f99eb0c92
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      hxsl/Dce.hx

+ 5 - 0
hxsl/Dce.hx

@@ -272,6 +272,11 @@ class Dce {
 			if( !loop.hasSideEffect() )
 				return { e : TConst(CNull), t : e.t, p : e.p };
 			return { e : TFor(v, it, loop), p : e.p, t : e.t };
+		case TMeta(m, args, em):
+			var em = mapExpr(em, isVar);
+			if( !isVar && !em.hasSideEffect() )
+				return { e : TConst(CNull), t : e.t, p : e.p };
+			return { e : TMeta(m, args, em), t : e.t, p : e.p };
 		default:
 			return e.map(function(e) return mapExpr(e,true));
 		}