rust/src/librustc_error_codes/error_codes/E0199.md
2020-01-17 19:54:07 +01:00

480 B

A trait implementation was marked as unsafe while the trait is safe.

Erroneous code example:

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!