@@ -1868,45 +1868,48 @@ func section2() {}
1868
1868
@abi( func section3 ( ) )
1869
1869
@_section ( " fnord " ) func section3 ( ) { }
1870
1870
1871
- // @inlinable -- automatically cloned into @abi
1872
- @abi( @inlinable func inlinable1 ( ) )
1871
+ // @inlinable -- banned in @abi
1872
+ // Although the inlining *does* occasionally get mangled, it's only done in the
1873
+ // SpecializationManglers, which shouldn't get their serialization from an ABI
1874
+ // attribute.
1875
+ @abi( @inlinable func inlinable1 ( ) ) // expected-error {{unused 'inlinable' attribute in '@abi'}} {{6-16=}}
1873
1876
@inlinable func inlinable1 ( ) { }
1874
1877
1875
- @abi( @inlinable func inlinable2 ( ) ) // expected-error {{extra 'inlinable' attribute in '@abi'}} {{6-16=}}
1878
+ @abi( @inlinable func inlinable2 ( ) ) // expected-error {{unused 'inlinable' attribute in '@abi'}} {{6-16=}}
1876
1879
func inlinable2 ( ) { }
1877
1880
1878
- @abi( func inlinable3 ( ) ) // expected-remark {{inferred '@inlinable' in '@abi' to match attribute on API}}
1879
- @inlinable func inlinable3 ( ) { } // expected-note {{matches attribute here}}
1881
+ @abi( func inlinable3 ( ) )
1882
+ @inlinable func inlinable3 ( ) { }
1880
1883
1881
- // @inline -- automatically cloned into @abi
1882
- @abi( @inline ( never) func inline1 ( ) )
1884
+ // @inlinable -- banned in @abi
1885
+ @abi( @inline ( never) func inline1 ( ) ) // expected-error {{unused 'inline(never)' attribute in '@abi'}} {{6-20=}}
1883
1886
@inline ( never) func inline1 ( ) { }
1884
1887
1885
- @abi( @inline ( never) func inline2 ( ) ) // expected-error {{extra 'inline(never)' attribute in '@abi'}} {{6-20=}}
1888
+ @abi( @inline ( never) func inline2 ( ) ) // expected-error {{unused 'inline(never)' attribute in '@abi'}} {{6-20=}}
1886
1889
func inline2 ( ) { }
1887
1890
1888
- @abi( func inline3 ( ) ) // expected-remark {{inferred '@inline(never)' in '@abi' to match attribute on API}}
1889
- @inline ( never) func inline3 ( ) { } // expected-note {{matches attribute here}}
1891
+ @abi( func inline3 ( ) )
1892
+ @inline ( never) func inline3 ( ) { }
1890
1893
1891
- // @_transparent -- automatically cloned into @abi
1892
- @abi( @_transparent func transparent1 ( ) )
1894
+ // @_transparent -- banned in @abi
1895
+ @abi( @_transparent func transparent1 ( ) ) // expected-error {{unused '_transparent' attribute in '@abi'}} {{6-19=}}
1893
1896
@_transparent func transparent1 ( ) { }
1894
1897
1895
- @abi( @_transparent func transparent2 ( ) ) // expected-error {{extra '_transparent' attribute in '@abi'}} {{6-19=}}
1898
+ @abi( @_transparent func transparent2 ( ) ) // expected-error {{unused '_transparent' attribute in '@abi'}} {{6-19=}}
1896
1899
func transparent2 ( ) { }
1897
1900
1898
- @abi( func transparent3 ( ) ) // expected-remark {{inferred '@_transparent' in '@abi' to match attribute on API}}
1899
- @_transparent func transparent3 ( ) { } // expected-note {{matches attribute here}}
1901
+ @abi( func transparent3 ( ) )
1902
+ @_transparent func transparent3 ( ) { }
1900
1903
1901
- // @_alwaysEmitIntoClient -- automatically cloned into @abi
1902
- @abi( @_alwaysEmitIntoClient func alwaysEmitIntoClient1 ( ) )
1904
+ // @_alwaysEmitIntoClient -- banned in @abi
1905
+ @abi( @_alwaysEmitIntoClient func alwaysEmitIntoClient1 ( ) ) // expected-error {{unused '_alwaysEmitIntoClient' attribute in '@abi'}} {{6-28=}}
1903
1906
@_alwaysEmitIntoClient func alwaysEmitIntoClient1 ( ) { }
1904
1907
1905
- @abi( @_alwaysEmitIntoClient func alwaysEmitIntoClient2 ( ) ) // expected-error {{extra '_alwaysEmitIntoClient' attribute in '@abi'}} {{6-28=}}
1908
+ @abi( @_alwaysEmitIntoClient func alwaysEmitIntoClient2 ( ) ) // expected-error {{unused '_alwaysEmitIntoClient' attribute in '@abi'}} {{6-28=}}
1906
1909
func alwaysEmitIntoClient2 ( ) { }
1907
1910
1908
- @abi( func alwaysEmitIntoClient3 ( ) ) // expected-remark {{inferred '@_alwaysEmitIntoClient' in '@abi' to match attribute on API}}
1909
- @_alwaysEmitIntoClient func alwaysEmitIntoClient3 ( ) { } // expected-note {{matches attribute here}}
1911
+ @abi( func alwaysEmitIntoClient3 ( ) )
1912
+ @_alwaysEmitIntoClient func alwaysEmitIntoClient3 ( ) { }
1910
1913
1911
1914
// @_optimize(none) -- banned in @abi
1912
1915
@abi( @_optimize ( none) func optimize1 ( ) ) // expected-error {{unused '_optimize(none)' attribute in '@abi'}} {{6-22=}}
0 commit comments