E0399 - Error codes index (original) (raw)
Error codes index
Error code E0399
Note: this error code is no longer emitted by the compiler
You implemented a trait, overriding one or more of its associated types but did not reimplement its default methods.
Example of erroneous code:
#![allow(unused)]
#![feature(associated_type_defaults)]
fn main() {
pub trait Foo {
type Assoc = u8;
fn bar(&self) {}
}
impl Foo for i32 {
// error - the following trait items need to be reimplemented as
// `Assoc` was overridden: `bar`
type Assoc = i32;
}
}
To fix this, add an implementation for each default method from the trait:
#![allow(unused)]
#![feature(associated_type_defaults)]
fn main() {
pub trait Foo {
type Assoc = u8;
fn bar(&self) {}
}
impl Foo for i32 {
type Assoc = i32;
fn bar(&self) {} // ok!
}
}