浏览代码

fixed typo in Monomorph.add_up_constraint 🤦 (closes #10445)

Aleksandr Kuzmenko 3 年之前
父节点
当前提交
5ccbc9f17c
共有 2 个文件被更改,包括 18 次插入1 次删除
  1. 1 1
      src/core/tUnification.ml
  2. 17 0
      tests/unit/src/unit/issues/Issue10445.hx

+ 1 - 1
src/core/tUnification.ml

@@ -73,7 +73,7 @@ module Monomorph = struct
 	let add_up_constraint m ((t,name) as constr) =
 		m.tm_up_constraints <- constr :: m.tm_up_constraints;
 		match t with
-		| TMono m2 -> m2.tm_down_constraints <- MMono (m2,name) :: m2.tm_down_constraints
+		| TMono m2 -> m2.tm_down_constraints <- MMono (m,name) :: m2.tm_down_constraints
 		| _ -> ()
 
 	let add_down_constraint m constr =

+ 17 - 0
tests/unit/src/unit/issues/Issue10445.hx

@@ -0,0 +1,17 @@
+package unit.issues;
+
+using unit.issues.Issue10445;
+
+class Issue10445 extends Test {
+	function test() {
+		env(null).provide(1);
+		noAssert();
+	}
+
+	function env<TR1:TR0,TR0>(a:TR0):Dummy<TR1>
+		return null;
+
+	static function provide <TR2>(a:Dummy<TR2>, r:TR2) {}
+}
+
+private enum Dummy<T> {}