@@ -34,7 +34,7 @@ struct FooStructDeinitializerB {
3434}
3535
3636struct FooStructDeinitializerC {
37- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
37+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
3838}
3939
4040class FooClassDeinitializerA {
@@ -53,30 +53,30 @@ init {} // expected-error {{initializers may only be declared within a type}} ex
5353init ( ) // expected-error {{initializers may only be declared within a type}}
5454init ( ) { } // expected-error {{initializers may only be declared within a type}}
5555
56- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
56+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
5757deinit // expected-error {{expected '{' for deinitializer}}
58- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
58+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
5959
6060struct BarStruct {
6161 init ( ) { }
62- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
62+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
6363}
6464
6565extension BarStruct {
6666 init ( x : Int ) { }
6767
6868 // When/if we allow 'var' in extensions, then we should also allow dtors
69- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
69+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
7070}
7171
7272enum BarUnion {
7373 init ( ) { }
74- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
74+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
7575}
7676
7777extension BarUnion {
7878 init ( x : Int ) { }
79- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
79+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
8080}
8181
8282class BarClass {
@@ -86,22 +86,22 @@ class BarClass {
8686
8787extension BarClass {
8888 convenience init ( x : Int ) { self . init ( ) }
89- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
89+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
9090}
9191
9292protocol BarProtocol {
9393 init ( ) { } // expected-error {{protocol initializers must not have bodies}}
94- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
94+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
9595}
9696
9797extension BarProtocol {
9898 init ( x : Int ) { }
99- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
99+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
100100}
101101
102102func fooFunc( ) {
103103 init ( ) { } // expected-error {{initializers may only be declared within a type}}
104- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
104+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
105105}
106106
107107func barFunc( ) {
@@ -113,7 +113,7 @@ func barFunc() {
113113
114114 var y : ( ) = { ( ) -> ( ) in
115115 // expected-warning@-1 {{variable 'y' was never used; consider replacing with '_' or removing it}}
116- deinit { } // expected-error {{deinitializers may only be declared within a class or actor }}
116+ deinit { } // expected-error {{deinitializers may only be declared within a class, actor, or noncopyable type }}
117117 return
118118 } ( )
119119}
0 commit comments