Skip to content

Commit 6b6b977

Browse files
tbkkathomasvl
authored andcommitted
Replace memcpy with Float(bitPattern:), etc
1 parent cef408d commit 6b6b977

File tree

1 file changed

+4
-10
lines changed

1 file changed

+4
-10
lines changed

Sources/SwiftProtobuf/BinaryDecoder.swift

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1445,21 +1445,15 @@ internal struct BinaryDecoder: Decoder {
14451445
private mutating func decodeFloat() throws -> Float {
14461446
var littleEndianBytes: UInt32 = 0
14471447
try decodeFourByteNumber(value: &littleEndianBytes)
1448-
var nativeEndianBytes = UInt32(littleEndian: littleEndianBytes)
1449-
var float: Float = 0
1450-
let n = MemoryLayout<Float>.size
1451-
memcpy(&float, &nativeEndianBytes, n)
1452-
return float
1448+
let nativeEndianBytes = UInt32(littleEndian: littleEndianBytes)
1449+
return Float(bitPattern: nativeEndianBytes)
14531450
}
14541451

14551452
private mutating func decodeDouble() throws -> Double {
14561453
var littleEndianBytes: UInt64 = 0
14571454
try decodeEightByteNumber(value: &littleEndianBytes)
1458-
var nativeEndianBytes = UInt64(littleEndian: littleEndianBytes)
1459-
var double: Double = 0
1460-
let n = MemoryLayout<Double>.size
1461-
memcpy(&double, &nativeEndianBytes, n)
1462-
return double
1455+
let nativeEndianBytes = UInt64(littleEndian: littleEndianBytes)
1456+
return Double(bitPattern: nativeEndianBytes)
14631457
}
14641458

14651459
/// Private: Get the start and length for the body of

0 commit comments

Comments
 (0)