diff --git a/ide/NbRuntime.cpp b/ide/NbRuntime.cpp
index eeb9d0d..a2111a7 100644
--- a/ide/NbRuntime.cpp
+++ b/ide/NbRuntime.cpp
@@ -73,7 +73,7 @@
                 }
                 else if (ret.status() == ParseResult::INCOMPLETE)
                 {
-                    emit cellFailedToParse(cell, ret);
+                    emit cellFailedToParse(cell, ret, parser);
                     goto endOfCell; // JANK!
                 }
                 else if ((ret = parser.parseMany(&ast)) && !ast.empty())
@@ -91,7 +91,7 @@
                 }
                 else if (ret.status() == ParseResult::INCOMPLETE)
                 {
-                    emit cellFailedToParse(cell, ret);
+                    emit cellFailedToParse(cell, ret, parser);
                     break;
                 }
                 else
@@ -100,7 +100,7 @@
 
                     if (!parser.atEnd())
                     {
-                        emit cellFailedToParse(cell, ParseResult(ParseResult::NO_MATCH, "Garbage at end of input", parser.save()));
+                        emit cellFailedToParse(cell, ParseResult(ParseResult::NO_MATCH, "Garbage at end of input", parser.save()), parser);
                         goto endOfCell;
                     }
 
