1 // SPDX-License-Identifier: Apache-2.0 OR MIT
2
3 use pin_project_lite::pin_project;
4
5 pin_project! {
6 struct Generics1<T: 'static : Sized> { //~ ERROR no rules expected the token `:`
7 field: T,
8 }
9 }
10
11 pin_project! {
12 struct Generics2<T: 'static : ?Sized> { //~ ERROR no rules expected the token `:`
13 field: T,
14 }
15 }
16
17 pin_project! {
18 struct Generics3<T: Sized : 'static> { //~ ERROR expected one of `+`, `,`, `=`, or `>`, found `:`
19 field: T,
20 }
21 }
22
23 pin_project! {
24 struct Generics4<T: ?Sized : 'static> { //~ ERROR expected one of `+`, `,`, `=`, or `>`, found `:`
25 field: T,
26 }
27 }
28
29 pin_project! {
30 struct Generics5<T: Sized : ?Sized> { //~ ERROR expected one of `+`, `,`, `=`, or `>`, found `:`
31 field: T,
32 }
33 }
34
35 pin_project! {
36 struct Generics6<T: ?Sized : Sized> { //~ ERROR no rules expected the token `Sized`
37 field: T,
38 }
39 }
40
41 pin_project! {
42 struct WhereClause1<T>
43 where
44 T: 'static : Sized //~ ERROR no rules expected the token `:`
45 {
46 field: T,
47 }
48 }
49
50 pin_project! {
51 struct WhereClause2<T>
52 where
53 T: 'static : ?Sized //~ ERROR no rules expected the token `:`
54 {
55 field: T,
56 }
57 }
58
59 pin_project! {
60 struct WhereClause3<T>
61 where
62 T: Sized : 'static //~ ERROR expected `where`, or `{` after struct name, found `:`
63 {
64 field: T,
65 }
66 }
67
68 pin_project! {
69 struct WhereClause4<T>
70 where
71 T: ?Sized : 'static //~ ERROR expected `where`, or `{` after struct name, found `:`
72 {
73 field: T,
74 }
75 }
76
77 pin_project! {
78 struct WhereClause5<T>
79 where
80 T: Sized : ?Sized //~ ERROR expected `where`, or `{` after struct name, found `:`
81 {
82 field: T,
83 }
84 }
85
86 pin_project! {
87 struct WhereClause6<T>
88 where
89 T: ?Sized : Sized //~ ERROR no rules expected the token `Sized`
90 {
91 field: T,
92 }
93 }
94
main()95 fn main() {}
96