r4823: Auto commit for Debian build
[kmrcl.git] / buff-input.lisp
index 2e7f370842d32687712ab710d72d798b7193dbae..3d678431776039b30db330cb0588bc26c85496da 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Apr 2000
 ;;;;
-;;;; $Id: buff-input.lisp,v 1.4 2003/05/02 07:28:17 kevin Exp $
+;;;; $Id: buff-input.lisp,v 1.7 2003/05/06 01:45:44 kevin Exp $
 ;;;;
 ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
@@ -18,7 +18,8 @@
 
 (in-package :kmrcl)
 
-(declaim (optimize (speed 3) (safety 0) (space 0) (debug 0)))
+(eval-when (:compile-toplevel)
+  (declaim (optimize (speed 3) (safety 0) (space 0) (debug 0))))
 
 (defconstant +max-field+ 10000)
 (defconstant +max-fields-per-line+ 20)
@@ -39,7 +40,8 @@
       (setf (aref bufs i) (make-array max-field-len :element-type 'character :fill-pointer 0 :adjustable nil)))
     bufs))
 
-(defun read-buffered-fields (fields strm &optional (field-delim +field-delim+))
+(defun read-buffered-fields (fields strm &optional (field-delim +field-delim+)
+                            (eof 'eof))
   "Read a line from a stream into a field buffers"
   (declare (type base-char field-delim)
           (type vector fields))
@@ -47,7 +49,7 @@
   (do ((ifield 0 (1+ ifield))
        (linedone nil)
        (eof nil))
-      (linedone (if eof 'eof fields))
+      (linedone (if eof eof fields))
     (declare (type fixnum ifield)
             (type boolean linedone eof))
     (let ((field (aref fields ifield)))