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