diff --git a/core/src/main/java/org/teavm/cache/VarDataInput.java b/core/src/main/java/org/teavm/cache/VarDataInput.java index 24806ed0e..7c0050bf3 100644 --- a/core/src/main/java/org/teavm/cache/VarDataInput.java +++ b/core/src/main/java/org/teavm/cache/VarDataInput.java @@ -65,7 +65,7 @@ public class VarDataInput { public long readSignedLong() throws IOException { long value = readUnsignedLong(); - return (value & 1) == 0 ? (value >> 1) : ~(value >> 1); + return (value & 1) == 0 ? (value >>> 1) : ~(value >>> 1); } public float readFloat() throws IOException {