diff --git a/object.c b/object.c
index 62110f7ccf..aed7555a01 100644
--- a/object.c
+++ b/object.c
@@ -186,7 +186,10 @@ rb_eql(VALUE obj1, VALUE obj2)
  *
  *  The eql? method returns true if +obj+ and
  *  +other+ refer to the same hash key.  This is used by Hash to test members
- *  for equality.  For objects of class Object, eql?
+ *  for equality.  In subclasses, breaking this link between eql?
+ *  and the hash value will result in undefined behaviour.
+ *
+ *  For objects of class Object, eql?
  *  is synonymous with ==.  Subclasses normally continue this
  *  tradition by aliasing eql? to their overridden ==
  *  method, but there are exceptions.  Numeric types, for