Skip to content

Commit 29674f4

Browse files
committed
Merge remote-tracking branch 'origin/master' into swift-4.1-branch
2 parents 3c1b915 + c60a12b commit 29674f4

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

CoreFoundation/NumberDate.subproj/CFNumber.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1056,6 +1056,9 @@ CF_PRIVATE void __CFNumberInitialize(void) {
10561056
_CFRuntimeSetInstanceTypeIDAndIsa(& __kCFNumberFloat32One, __kCFNumberTypeID);
10571057
__CFBitfieldSetValue(__kCFNumberFloat32One._base._cfinfo[CF_INFO_BITS], 4, 0, kCFNumberFloat32Type);
10581058
__kCFNumberFloat32One._pad = BITSFORFLOATONE;
1059+
#if __BIG_ENDIAN__
1060+
__kCFNumberFloat32One._pad = __kCFNumberFloat32One._pad << 32;
1061+
#endif
10591062

10601063
_CFRuntimeSetInstanceTypeIDAndIsa(& __kCFNumberFloat64Zero, __kCFNumberTypeID);
10611064
__CFBitfieldSetValue(__kCFNumberFloat64Zero._base._cfinfo[CF_INFO_BITS], 4, 0, kCFNumberFloat64Type);

TestFoundation/TestNSNumber.swift

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -830,6 +830,15 @@ class TestNSNumber : XCTestCase {
830830
XCTAssertEqual(NSNumber(value: Float(0)).uint32Value, UInt32(0))
831831
XCTAssertEqual(NSNumber(value: Float(0)).int64Value, Int64(0))
832832
XCTAssertEqual(NSNumber(value: Float(0)).uint64Value, UInt64(0))
833+
XCTAssertEqual(NSNumber(value: Float(1)).boolValue, true)
834+
XCTAssertEqual(NSNumber(value: Float(1)).int8Value, Int8(1))
835+
XCTAssertEqual(NSNumber(value: Float(1)).uint8Value, UInt8(1))
836+
XCTAssertEqual(NSNumber(value: Float(1)).int16Value, Int16(1))
837+
XCTAssertEqual(NSNumber(value: Float(1)).uint16Value, UInt16(1))
838+
XCTAssertEqual(NSNumber(value: Float(1)).int32Value, Int32(1))
839+
XCTAssertEqual(NSNumber(value: Float(1)).uint32Value, UInt32(1))
840+
XCTAssertEqual(NSNumber(value: Float(1)).int64Value, Int64(1))
841+
XCTAssertEqual(NSNumber(value: Float(1)).uint64Value, UInt64(1))
833842
XCTAssertEqual(NSNumber(value: Float(-37)).boolValue, true)
834843
XCTAssertEqual(NSNumber(value: Float(-37)).int8Value, Int8(-37))
835844
XCTAssertEqual(NSNumber(value: Float(-37)).int16Value, Int16(-37))
@@ -845,9 +854,11 @@ class TestNSNumber : XCTestCase {
845854
XCTAssertEqual(NSNumber(value: Float(42)).int64Value, Int64(42))
846855
XCTAssertEqual(NSNumber(value: Float(42)).uint64Value, UInt64(42))
847856
XCTAssertEqual(NSNumber(value: Float(0)).floatValue, Float(0))
857+
XCTAssertEqual(NSNumber(value: Float(1)).floatValue, Float(1))
848858
XCTAssertEqual(NSNumber(value: Float(-37.5)).floatValue, Float(-37.5))
849859
XCTAssertEqual(NSNumber(value: Float(42.1)).floatValue, Float(42.1))
850860
XCTAssertEqual(NSNumber(value: Float(0)).doubleValue, Double(0))
861+
XCTAssertEqual(NSNumber(value: Float(1)).doubleValue, Double(1))
851862
XCTAssertEqual(NSNumber(value: Float(-37.5)).doubleValue, Double(-37.5))
852863
XCTAssertEqual(NSNumber(value: Float(42.5)).doubleValue, Double(42.5))
853864
}

0 commit comments

Comments
 (0)