[SE-0425] Int128
and UInt128
APIs have different attributes
#74481
Labels
attributes
Feature: Declaration and type attributes
numerics
Area → standard library: Numeric API
standard library
Area: Standard library umbrella
task
For the following APIs:
Int128
uses either@_transparent
, or@inline(__always)
, or no attribute.UInt128
uses@inlinable
only.Int128
UInt128
zero
,min
,max
@_transparent
@inlinable
init(_builtinIntegerLiteral:)
@_transparent
@inlinable
addingReportingOverflow(_:)
@_transparent
@inlinable
subtractingReportingOverflow(_:)
@_transparent
@inlinable
multipliedReportingOverflow(by:)
@inline(__always)
@inlinable
dividedReportingOverflow(by:)
@inline(__always)
@inlinable
remainderReportingOverflow(dividingBy:)
@inline(__always)
@inlinable
*
,/
,%
@inlinable
&=
,|=
,^=
,&>>=
,&<<=
@inlinable
trailingZeroBitCount
@inlinable
bitWidth
@_transparent
@inlinable
nonzeroBitCount
@inlinable
leadingZeroBitCount
@inlinable
byteSwapped
@inlinable
Should the attributes be the same, when the APIs have the same implementations?
(
main
andrelease/6.0
branches.)The text was updated successfully, but these errors were encountered: