]> Repositorios git - scryer-prolog.git/commitdiff
devour dangling whitespace before checking for EOF
authorMark Thom <[email protected]>
Sun, 29 Sep 2019 16:05:40 +0000 (10:05 -0600)
committerMark Thom <[email protected]>
Sun, 29 Sep 2019 16:05:40 +0000 (10:05 -0600)
Cargo.toml
src/prolog/machine/term_expansion.rs

index 4f3145fe4ec53074cb9b5607658949d6a023c955..7546f16257d0b5f36cfce25898fffcd8cbed513c 100644 (file)
@@ -1,6 +1,6 @@
 [package]
 name = "scryer-prolog"
-version = "0.8.95"
+version = "0.8.96"
 authors = ["Mark Thom <[email protected]>"]
 build = "build.rs"
 repository = "https://github.com/mthom/scryer-prolog"
@@ -16,7 +16,7 @@ dirs = "2.0.2"
 downcast = "0.10.0"
 indexmap = "1.0.2"
 ordered-float = "0.5.0"
-prolog_parser = "0.8.29"
+prolog_parser = "0.8.30"
 ref_thread_local = "0.0.0"
 rug = "1.4.0"
 rustyline = "5.0.3"
index c90d239c20574484eebaed6005a1f80bedfb7bb8..eaa4d23e5571c31d345880a21ee1725586208a10 100644 (file)
@@ -173,6 +173,7 @@ impl<'a, R: Read> TermStream<'a, R> {
 
     #[inline]
     pub fn eof(&mut self) -> Result<bool, ParserError> {
+       self.parser.devour_whitespace()?; // eliminate dangling comments before checking for EOF.
         Ok(self.stack.is_empty() && self.parser.eof()?)
     }
 
@@ -251,11 +252,13 @@ impl<'a, R: Read> TermStream<'a, R> {
             }
 
             self.parser.reset();
+
             let term = self.parser.read_term(composite_op!(
                 self.in_module,
                 &self.wam.indices.op_dir,
                 op_dir
             ))?;
+
             self.stack.push(term);
         }
     }