2
0
Эх сурвалжийг харах

adapt standard library and tests to abstract field expression changes

Simon Krajewski 10 жил өмнө
parent
commit
2fdf0edc5a

+ 2 - 2
std/UInt.hx

@@ -94,11 +94,11 @@ abstract UInt(Int) from Int to Int {
 	}
 
 	@:op(A >> B) private static inline function shr(a:UInt, b:UInt):UInt {
-		return a.toInt() >> b;
+		return a.toInt() >> b.toInt();
 	}
 
 	@:op(A >>> B) private static inline function ushr(a:UInt, b:UInt):UInt {
-		return a.toInt() >>> b;
+		return a.toInt() >>> b.toInt();
 	}
 
 	@:op(A % B) private static inline function mod(a:UInt, b:UInt):UInt {

+ 5 - 5
std/haxe/Int32.hx

@@ -47,21 +47,21 @@ abstract Int32(Int) from Int to Int {
 	}
 
 	@:op(A + B) private static inline function add(a:Int32, b:Int32):Int32
-		return clamp( a + b );
+		return clamp( (a : Int) + (b : Int) );
 
 	@:op(A + B) @:commutative private static inline function addInt(a:Int32, b:Int):Int32
-		return clamp( (a : Int) + b );
+		return clamp( (a : Int) + (b : Int) );
 
 	@:op(A + B) @:commutative private static function addFloat(a:Int32, b:Float):Float;
 
 	@:op(A - B) private static inline function sub(a:Int32, b:Int32):Int32
-		return clamp( a - b );
+		return clamp( (a : Int) - (b : Int) );
 
 	@:op(A - B) private static inline function subInt(a:Int32, b:Int):Int32
-		return clamp( (a : Int) - b );
+		return clamp( (a : Int) - (b : Int) );
 
 	@:op(A - B) private static inline function intSub(a:Int, b:Int32):Int32
-		return clamp( a - (b : Int) );
+		return clamp( (a : Int) - (b : Int) );
 
 	@:op(A - B) private static function subFloat(a:Int32, b:Float):Float;
 

+ 3 - 1
tests/unit/src/unit/issues/Issue2130.hx

@@ -17,7 +17,9 @@ private abstract ZeroOneFloat(Float) to Float {
         return this = new ZeroOneFloat(this*r);
     }
 
-    @:op(A * B) @:commutative public static inline function mul_i(l:ZeroOneFloat, r:Float) return l*r;
+    @:op(A * B) @:commutative public static inline function mul_i(l:ZeroOneFloat, r:Float) {
+		return (l : Float) * r;
+	}
 }
 
 class Issue2130 extends Test {