diff --git a/parser.cc b/parser.cc
index a8d01ba..670a42d 100644
--- a/parser.cc
+++ b/parser.cc
@@ -279,7 +279,7 @@
         return false;
       s = TrimLeftSpace(s.substr(n+1));
       ast->rhs = ParseExprImpl(s, NULL, false, &n);
-      return TrimSpace(s.substr(n)) == "";
+      s = TrimLeftSpace(s.substr(n));
     } else {
       for (int i = 0; i < 2; i++) {
         if (s.empty())
@@ -297,8 +297,11 @@
           ast->rhs = v;
         s = TrimLeftSpace(s.substr(end+1));
       }
-      return s.empty();
     }
+    if (!s.empty()) {
+      Error("extraneous text after `ifeq' directive");
+    }
+    return true;
   }
 
   void ParseIfeq(StringPiece line, StringPiece directive) {
