浏览代码

[macro] Fix abstract casts for local statics (#11301)

Rudy Ges 2 年之前
父节点
当前提交
0227f28838
共有 3 个文件被更改,包括 8 次插入1 次删除
  1. 1 1
      src/typing/macroContext.ml
  2. 6 0
      tests/misc/projects/Issue11193/Macro.hx
  3. 1 0
      tests/misc/projects/Issue11193/compile.hxml

+ 1 - 1
src/typing/macroContext.ml

@@ -474,9 +474,9 @@ and flush_macro_context mint ctx =
 	mctx.com.Common.modules <- modules;
 	(* we should maybe ensure that all filters in Main are applied. Not urgent atm *)
 	let expr_filters = [
+		"handle_abstract_casts",AbstractCast.handle_abstract_casts mctx;
 		"local_statics",Filters.LocalStatic.run mctx;
 		"VarLazifier",VarLazifier.apply mctx.com;
-		"handle_abstract_casts",AbstractCast.handle_abstract_casts mctx;
 		"Exceptions",Exceptions.filter mctx;
 		"captured_vars",CapturedVars.captured_vars mctx.com;
 	] in

+ 6 - 0
tests/misc/projects/Issue11193/Macro.hx

@@ -0,0 +1,6 @@
+class Macro {
+	static function test() {
+		static var m:Map<Int, String> = [];
+		trace(m);
+	}
+}

+ 1 - 0
tests/misc/projects/Issue11193/compile.hxml

@@ -0,0 +1 @@
+--macro Macro.test()