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
use std::kinds::Sized;// Note: this must be generic for the problem to show uptraitFoo<A> for Sized? {fnfoo(&self);}implFoo<u8>for[u8]{fnfoo(&self){}}impl<'a,A,T>Foo<A>for&'aTwhereT:Foo<A>{fnfoo(&self){Foo::foo(*self)}}traitBar{fnfoo(&self);}structMyType;implBarforMyType{fnfoo(&self){}}fnmain(){letmut m = MyType;(&mut m).foo()}
with the error
<anon>:31:9: 31:23 error: the trait `Foo<_>` is not implemented for the type `MyType`
<anon>:31 (&mut m).foo()
^~~~~~~~~~~~~~
As noted above, this seems to depend on one of the traits using generics.
…2, r=nrc
This is a pretty major refactoring of the method dispatch infrastructure. It is intended to avoid gross inefficiencies and enable caching and other optimizations (e.g. #17995), though it itself doesn't seem to execute particularly faster yet. It also solves some cases where we were failing to resolve methods that we theoretically should have succeeded with.
Fixes#18674.
cc #18208
…2, r=nrc
This is a pretty major refactoring of the method dispatch infrastructure. It is intended to avoid gross inefficiencies and enable caching and other optimizations (e.g. #17995), though it itself doesn't seem to execute particularly faster yet. It also solves some cases where we were failing to resolve methods that we theoretically should have succeeded with.
Fixes#18674.
cc #18208
The following code fails to compile:
with the error
As noted above, this seems to depend on one of the traits using generics.
Real code this is blocking: #18638
cc @nikomatsakis
cc @japaric
The text was updated successfully, but these errors were encountered: