You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
error[E0038]: the trait `B` cannot be made into an object
2
+
--> $DIR/issue-98500.rs:11:14
3
+
|
4
+
LL | struct S(Box<dyn B>);
5
+
| ^^^^^ `B` cannot be made into an object
6
+
|
7
+
note: for a trait to be "object safe" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
8
+
--> $DIR/auxiliary/not-object-safe.rs:4:8
9
+
|
10
+
LL | fn f();
11
+
| ^ ...because associated function `f` has no `self` parameter
12
+
LL | fn f2(self: &Arc<Self>);
13
+
| ^^ ...because method `f2`'s `self` parameter cannot be dispatched on
14
+
|
15
+
::: $DIR/issue-98500.rs:5:11
16
+
|
17
+
LL | pub trait B where
18
+
| - this trait cannot be made into an object...
19
+
= help: consider moving `f` to another trait
20
+
= help: consider moving `f2` to another trait
21
+
22
+
error: aborting due to previous error
23
+
24
+
For more information about this error, try `rustc --explain E0038`.
0 commit comments