Fix parsing of comments.
authorTaylor R Campbell <campbell@mumble.net>
Sun, 23 May 2010 20:23:19 +0000 (20:23 +0000)
committerTaylor R Campbell <campbell@mumble.net>
Sun, 23 May 2010 20:23:19 +0000 (20:23 +0000)
Comment handlers should return CONTINUE-PARSING, not UNSPECIFIC.

src/runtime/parse.scm

index 17bbca3ba261211d06b1aa299342403c34497208..7ca6855d3e0709a3384d5e8458406d950e4ebd13 100644 (file)
@@ -217,7 +217,7 @@ USA.
       (if (eof-object? char)
          char
          (case char
-           ((#\newline) unspecific)
+           ((#\newline) continue-parsing)
            ((#\-) (dash))
            (else (scan))))))
 
@@ -226,16 +226,17 @@ USA.
       (if (eof-object? char)
          char
          (case char
-           ((#\newline) unspecific)
+           ((#\newline) continue-parsing)
            ((#\*)
             (let ((char (%read-char port db)))
               (if (eof-object? char)
                   char
                   (case char
-                    ((#\newline) unspecific)
+                    ((#\newline) continue-parsing)
                     ((#\-)
                      (process-file-attributes
-                      (parse-file-attributes-line port db false) port)
+                      (parse-file-attributes-line port db false)
+                      port)
                      (discard restart-parsing))
                     (else (scan))))))
            ((#\-) (dash))
@@ -255,8 +256,7 @@ USA.
       (scan)
       (discard continue-parsing)))
 \f
-(define (handler:multi-line-comment
-        port db ctx char1 char2)
+(define (handler:multi-line-comment port db ctx char1 char2)
   (declare (ignore ctx char1 char2))
   ;; In addition to parsing out the multi-line-comment, we want to
   ;; extract out the file attribute line if it exists in the first
@@ -288,7 +288,7 @@ USA.
   (define (vbar)
     (case (%read-char/no-eof port db)
       ((#\newline) (discard 0 continue-parsing))
-      ((#\#) unspecific)               ; end of comment
+      ((#\#) continue-parsing)         ; end of comment
       ((#\-) (dash))
       ((#\|) (vbar))
       (else (scan))))