diff --git a/lib/cli/parse.js b/lib/cli/parse.js
index <HASH>..<HASH> 100644
--- a/lib/cli/parse.js
+++ b/lib/cli/parse.js
@@ -153,13 +153,19 @@ module.exports = function parse(options, callback) {
 };
 
 function firstErrorDescription(node) {
+  if (!node.hasError) return null;
+
   if (node.type === 'ERROR') {
     return "ERROR " + pointString(node.startPosition) + " - " + pointString(node.endPosition);
   }
 
-  const {namedChildren} = node;
-  for (let i = 0, length = namedChildren.length; i < length; i++) {
-    const description = firstErrorDescription(namedChildren[i]);
+  if (node.isMissing()) {
+    return "MISSING " + node.type + " " + pointString(node.startPosition) + " - " + pointString(node.endPosition);
+  }
+
+  const {children} = node;
+  for (let i = 0, length = children.length; i < length; i++) {
+    const description = firstErrorDescription(children[i]);
     if (description) return description;
   }
 }
Fix first error description when there are missing tokens