diff options
Diffstat (limited to 'compiler/rustc_error_codes/src/error_codes/E0568.md')
-rw-r--r-- | compiler/rustc_error_codes/src/error_codes/E0568.md | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes/E0568.md b/compiler/rustc_error_codes/src/error_codes/E0568.md new file mode 100644 index 000000000..17b3f5e31 --- /dev/null +++ b/compiler/rustc_error_codes/src/error_codes/E0568.md @@ -0,0 +1,26 @@ +A super trait has been added to an auto trait. + +Erroneous code example: + +```compile_fail,E0568 +#![feature(auto_traits)] + +auto trait Bound : Copy {} // error! + +fn main() {} +``` + +Since an auto trait is implemented on all existing types, adding a super trait +would filter out a lot of those types. In the current example, almost none of +all the existing types could implement `Bound` because very few of them have the +`Copy` trait. + +To fix this issue, just remove the super trait: + +``` +#![feature(auto_traits)] + +auto trait Bound {} // ok! + +fn main() {} +``` |