Skip to content

Commit df598b8

Browse files
committed
Fix sign bit shift
1 parent df393de commit df598b8

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

Tests/BinaryParsingTests/FloatingPointTests.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -206,15 +206,15 @@ struct FloatingPointTests {
206206
}
207207

208208
if value.isNaN {
209-
#expect(value1.isNaN)
210-
#expect(value2.isNaN)
209+
#expect(value1.isNaN, "little")
210+
#expect(value2.isNaN, "little")
211211
if value.isSignalingNaN {
212212
#expect(value1.isSignalingNaN)
213213
#expect(value2.isSignalingNaN)
214214
}
215215
} else {
216-
#expect(value1 == value)
217-
#expect(value2 == value)
216+
#expect(value1 == value, "little")
217+
#expect(value2 == value, "little")
218218
}
219219
}
220220

@@ -225,15 +225,15 @@ struct FloatingPointTests {
225225
}
226226

227227
if value.isNaN {
228-
#expect(value1.isNaN)
229-
#expect(value2.isNaN)
228+
#expect(value1.isNaN, "big")
229+
#expect(value2.isNaN, "big")
230230
if value.isSignalingNaN {
231231
#expect(value1.isSignalingNaN)
232232
#expect(value2.isSignalingNaN)
233233
}
234234
} else {
235-
#expect(value1 == value)
236-
#expect(value2 == value)
235+
#expect(value1 == value, "big")
236+
#expect(value2 == value, "big")
237237
}
238238
}
239239

Tests/BinaryParsingTests/TestingSupport.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ extension Array where Element == UInt8 {
146146
self.append(contentsOf: bytes)
147147
}
148148
let signAndExponent =
149-
value.exponentBitPattern | (value.sign == .minus ? 1 : 0 << 31)
149+
value.exponentBitPattern | (value.sign == .minus ? 1 : 0) << 15
150150
Swift.withUnsafeBytes(of: signAndExponent.littleEndian) { bytes in
151151
self.append(contentsOf: bytes)
152152
}
@@ -155,7 +155,7 @@ extension Array where Element == UInt8 {
155155
init(bigEndian value: Float80) {
156156
self = []
157157
let signAndExponent =
158-
value.exponentBitPattern | (value.sign == .minus ? 1 : 0 << 31)
158+
value.exponentBitPattern | (value.sign == .minus ? 1 : 0) << 15
159159
Swift.withUnsafeBytes(of: signAndExponent.bigEndian) { bytes in
160160
self.append(contentsOf: bytes)
161161
}

0 commit comments

Comments
 (0)