@@ -2158,6 +2158,7 @@ where Magnitude: FixedWidthInteger & UnsignedInteger,
21582158
21592159extension FixedWidthInteger {
21602160 @inlinable
2161+ @_transparent
21612162 public var bitWidth : Int { return Self . bitWidth }
21622163
21632164 @inlinable
@@ -2770,7 +2771,7 @@ extension FixedWidthInteger {
27702771 }
27712772
27722773 @inlinable // FIXME(inline-always)
2773- @inline ( __always )
2774+ @_transparent
27742775 public init < T: BinaryInteger > ( truncatingIfNeeded source: T ) {
27752776 if Self . bitWidth <= Int . bitWidth {
27762777 self = Self ( _truncatingBits: source. _lowWord)
@@ -3015,7 +3016,7 @@ extension UnsignedInteger {
30153016 /// This property is always `false` for unsigned integer types.
30163017 @inlinable // FIXME(inline-always)
30173018 public static var isSigned : Bool {
3018- @inline ( __always )
3019+ @_transparent
30193020 get { return false }
30203021 }
30213022}
@@ -3041,8 +3042,7 @@ extension UnsignedInteger where Self: FixedWidthInteger {
30413042 /// - Parameter source: A value to convert to this type of integer. The value
30423043 /// passed as `source` must be representable in this type.
30433044 @_semantics ( " optimize.sil.specialize.generic.partial.never " )
3044- @inlinable // FIXME(inline-always)
3045- @inline ( __always)
3045+ @_transparent
30463046 public init < T: BinaryInteger > ( _ source: T ) {
30473047 // This check is potentially removable by the optimizer
30483048 if T . isSigned {
@@ -3057,8 +3057,7 @@ extension UnsignedInteger where Self: FixedWidthInteger {
30573057 }
30583058
30593059 @_semantics ( " optimize.sil.specialize.generic.partial.never " )
3060- @inlinable // FIXME(inline-always)
3061- @inline ( __always)
3060+ @_transparent
30623061 public init ? < T: BinaryInteger > ( exactly source: T ) {
30633062 // This check is potentially removable by the optimizer
30643063 if T . isSigned && source < ( 0 as T ) {
@@ -3230,7 +3229,7 @@ extension SignedInteger {
32303229 /// This property is always `true` for signed integer types.
32313230 @inlinable // FIXME(inline-always)
32323231 public static var isSigned : Bool {
3233- @inline ( __always )
3232+ @_transparent
32343233 get { return true }
32353234 }
32363235}
@@ -3256,8 +3255,7 @@ extension SignedInteger where Self: FixedWidthInteger {
32563255 /// - Parameter source: A value to convert to this type of integer. The value
32573256 /// passed as `source` must be representable in this type.
32583257 @_semantics ( " optimize.sil.specialize.generic.partial.never " )
3259- @inlinable // FIXME(inline-always)
3260- @inline ( __always)
3258+ @_transparent
32613259 public init < T: BinaryInteger > ( _ source: T ) {
32623260 // This check is potentially removable by the optimizer
32633261 if T . isSigned && source. bitWidth > Self . bitWidth {
@@ -3274,8 +3272,7 @@ extension SignedInteger where Self: FixedWidthInteger {
32743272 }
32753273
32763274 @_semantics ( " optimize.sil.specialize.generic.partial.never " )
3277- @inlinable // FIXME(inline-always)
3278- @inline ( __always)
3275+ @_transparent
32793276 public init ? < T: BinaryInteger > ( exactly source: T ) {
32803277 // This check is potentially removable by the optimizer
32813278 if T . isSigned && source. bitWidth > Self . bitWidth && source < Self . min {
0 commit comments