diff --git a/src/librustc_error_codes/error_codes/E0275.md b/src/librustc_error_codes/error_codes/E0275.md
index 836a9a95fa17b..2d12fcea4cafc 100644
--- a/src/librustc_error_codes/error_codes/E0275.md
+++ b/src/librustc_error_codes/error_codes/E0275.md
@@ -1,8 +1,6 @@
-This error occurs when there was a recursive trait requirement that overflowed
-before it could be evaluated. Often this means that there is unbounded
-recursion in resolving some type bounds.
+An evaluation of a trait requirement overflowed.
 
-For example, in the following code:
+Erroneous code example:
 
 ```compile_fail,E0275
 trait Foo {}
@@ -12,6 +10,10 @@ struct Bar<T>(T);
 impl<T> Foo for T where Bar<T>: Foo {}
 ```
 
+This error occurs when there was a recursive trait requirement that overflowed
+before it could be evaluated. This often means that there is an unbounded
+recursion in resolving some type bounds.
+
 To determine if a `T` is `Foo`, we need to check if `Bar<T>` is `Foo`. However,
 to do this check, we need to determine that `Bar<Bar<T>>` is `Foo`. To
 determine this, we check if `Bar<Bar<Bar<T>>>` is `Foo`, and so on. This is