A trait implementation was marked as unsafe while the trait is safe. Erroneous code example: ```compile_fail,E0199 struct Foo; trait Bar { } unsafe impl Bar for Foo { } // error! ``` Safe traits should not have unsafe implementations, therefore marking an implementation for a safe trait unsafe will cause a compiler error. Removing the unsafe marker on the trait noted in the error will resolve this problem: ``` struct Foo; trait Bar { } impl Bar for Foo { } // ok! ```