@@ -1354,7 +1354,9 @@ extension ${Self} : _ExpressibleByBuiltinIntegerLiteral, ExpressibleByIntegerLit
1354
1354
}
1355
1355
}
1356
1356
1357
+ % if bits != 80 :
1357
1358
#if !os(Windows) && (arch(i386) || arch(x86_64))
1359
+ % end
1358
1360
1359
1361
% builtinFloatLiteralBits = 80
1360
1362
extension ${ Self} : _ExpressibleByBuiltinFloatLiteral {
@@ -1373,6 +1375,7 @@ extension ${Self} : _ExpressibleByBuiltinFloatLiteral {
1373
1375
}
1374
1376
}
1375
1377
1378
+ % if bits != 80 :
1376
1379
#else
1377
1380
1378
1381
% builtinFloatLiteralBits = 64
@@ -1393,6 +1396,7 @@ extension ${Self} : _ExpressibleByBuiltinFloatLiteral {
1393
1396
}
1394
1397
1395
1398
#endif
1399
+ % end
1396
1400
1397
1401
extension ${ Self} : Hashable {
1398
1402
/// The number's hash value.
@@ -1519,7 +1523,7 @@ extension ${Self} {
1519
1523
% srcBits = src_type. bits
1520
1524
% That = src_type. stdlib_name
1521
1525
1522
- % if srcBits == 80 :
1526
+ % if ( srcBits == 80 ) and ( bits != 80 ) :
1523
1527
#if !os(Windows) && (arch(i386) || arch(x86_64))
1524
1528
% end
1525
1529
@@ -1584,7 +1588,7 @@ extension ${Self} {
1584
1588
}
1585
1589
}
1586
1590
1587
- % if srcBits == 80 :
1591
+ % if ( srcBits == 80 ) and ( bits != 80 ) :
1588
1592
#endif
1589
1593
% end
1590
1594
% end
@@ -1721,6 +1725,20 @@ extension ${Self} {
1721
1725
}
1722
1726
1723
1727
% if bits == 80 :
1728
+ #else
1729
+
1730
+ ${ SelfDocComment}
1731
+ @_fixed_layout
1732
+ @available ( * , unavailable, message: " Float80 is only available on non-Windows x86 targets. " )
1733
+ public struct ${ Self} {
1734
+ /// Creates a value initialized to zero.
1735
+ @_inlineable // FIXME(sil-serialize-all)
1736
+ @_transparent
1737
+ public init( ) {
1738
+ fatalError ( " ${Self} is not available " )
1739
+ }
1740
+ }
1741
+
1724
1742
#endif
1725
1743
% end
1726
1744
% end # for bits in all_floating_point_types
0 commit comments