diff --git a/src/IncrementalEngine.ml b/src/IncrementalEngine.ml
index d6aa9385dc7ec6242c60917d6b46458f8844cb98..88e556973876d278811c56459995b66eda764d95 100644
--- a/src/IncrementalEngine.ml
+++ b/src/IncrementalEngine.ml
@@ -24,6 +24,12 @@ module type INCREMENTAL_ENGINE = sig
 
   type token
 
+  (* A value of type [production] is (an index for) a production. The start
+     productions (which do not exist in an \mly file, but are constructed by
+     Menhir internally) are not part of this type. *)
+
+  type production
+
   (* The type ['a checkpoint] represents an intermediate or final state of the
      parser. An intermediate checkpoint is a suspension: it records the parser's
      current state, and allows parsing to be resumed. The parameter ['a] is
@@ -63,8 +69,6 @@ module type INCREMENTAL_ENGINE = sig
 
   type 'a env
 
-  type production
-
   type 'a checkpoint = private
     | InputNeeded of 'a env
     | Shifting of 'a env * 'a env * bool