Bläddra i källkod

clone parser cache when cloning common context (closes #5559)

Simon Krajewski 9 år sedan
förälder
incheckning
25f2ff2a49

+ 1 - 0
src/typing/common.ml

@@ -814,6 +814,7 @@ let clone com =
 		main_class = None;
 		features = Hashtbl.create 0;
 		file_lookup_cache = Hashtbl.create 0;
+		parser_cache = Hashtbl.create 0 ;
 		callbacks = create_callbacks();
 	}
 

+ 5 - 0
tests/misc/projects/Issue5559/Build.hx

@@ -0,0 +1,5 @@
+class Build {
+    public static function build() {
+        return null;
+    }
+}

+ 5 - 0
tests/misc/projects/Issue5559/Main.hx

@@ -0,0 +1,5 @@
+class Main {
+    public static function main() {
+        OtherClass.foo();
+    }
+}

+ 5 - 0
tests/misc/projects/Issue5559/OtherClass.hx

@@ -0,0 +1,5 @@
+class OtherClass {
+    public static function foo() {
+        "".endsWith("");
+    }
+}

+ 4 - 0
tests/misc/projects/Issue5559/build.hxml

@@ -0,0 +1,4 @@
+-main Main
+-cp source
+--macro addMetadata('@:build(Build.build())', 'Main')
+-neko run.n

+ 1 - 0
tests/misc/projects/Issue5559/import.hx

@@ -0,0 +1 @@
+#if !macro using StringTools; #end