Skip to content

Commit e3eb030

Browse files
committed
Merge pull request #2784 from rintaro/float-rawsignificand
[stdlib][NFC] Use UInt${bits} instead of ${RawSignificand} to initialize float with bit pattern
2 parents 1cc190a + 3370cc1 commit e3eb030

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

stdlib/public/core/FloatingPointTypes.swift.gyb

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -215,12 +215,14 @@ extension ${Self}: BinaryFloatingPoint {
215215
exponentBitPattern: UInt,
216216
significandBitPattern: ${RawSignificand}) {
217217
let signShift = ${Self}.significandBitCount + ${Self}.exponentBitCount
218-
let sign = ${RawSignificand}(sign == .minus ? 1 : 0)
219-
let exponent = ${RawSignificand}(exponentBitPattern &
220-
${Self}._infinityExponent)
221-
let significand = significandBitPattern & ${Self}._significandMask
222-
self.init(bitPattern: sign << ${RawSignificand}(signShift) |
223-
exponent << ${RawSignificand}(${Self}.significandBitCount) |
218+
let sign = UInt${bits}(sign == .minus ? 1 : 0)
219+
let exponent = UInt${bits}(
220+
exponentBitPattern & ${Self}._infinityExponent)
221+
let significand = UInt${bits}(
222+
significandBitPattern & ${Self}._significandMask)
223+
self.init(bitPattern:
224+
sign << UInt${bits}(signShift) |
225+
exponent << UInt${bits}(${Self}.significandBitCount) |
224226
significand)
225227
}
226228

0 commit comments

Comments
 (0)