r10536: 11 May 2005 Kevin Rosenberg <kevin@rosenberg.net>
authorKevin M. Rosenberg <kevin@rosenberg.net>
Fri, 13 May 2005 01:09:04 +0000 (01:09 +0000)
committerKevin M. Rosenberg <kevin@rosenberg.net>
Fri, 13 May 2005 01:09:04 +0000 (01:09 +0000)
        * sql/expressions.lisp: Avoid using simple-string declaration when
        a non-simple string may be encountered. [issue noted by
        will@cesmail.net] Add a simple-string declaration for a local
        string generated.

ChangeLog
sql/expressions.lisp

index 1b4dd49a2b03c2f9ff309e0d65c987869b8de54b..a43a34ccc6e42931c47b73b79c7d6c8b720c72f0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+11 May 2005 Kevin Rosenberg <kevin@rosenberg.net>
+       * sql/expressions.lisp: Avoid using simple-string declaration when
+       a non-simple string may be encountered. [issue noted by 
+       will@cesmail.net] Add a simple-string declaration for a local
+       string generated.
+       
 06 May 2005 Kevin Rosenberg <kevin@rosenberg.net>
        * sql/oodml.lisp: Change db-writer and db-reader processing to accept
        a symbol as well as function to serve as a function designator
 06 May 2005 Kevin Rosenberg <kevin@rosenberg.net>
        * sql/oodml.lisp: Change db-writer and db-reader processing to accept
        a symbol as well as function to serve as a function designator
index 96013deaae1a25883dbb497cd7a3e5138907ad57..2098cf3e1d33e4cc287f4e8f91db01cebce191b9 100644 (file)
@@ -831,8 +831,7 @@ uninclusive, and the args from that keyword to the end."
 
 (defmethod database-output-sql ((str string) database)
   (declare (optimize (speed 3) (safety 1)
 
 (defmethod database-output-sql ((str string) database)
   (declare (optimize (speed 3) (safety 1)
-                    #+cmu (extensions:inhibit-warnings 3))
-           (simple-string str))
+                    #+cmu (extensions:inhibit-warnings 3)))
   (let ((len (length str)))
     (declare (type fixnum len))
     (cond ((zerop len)
   (let ((len (length str)))
     (declare (type fixnum len))
     (cond ((zerop len)
@@ -842,7 +841,8 @@ uninclusive, and the args from that keyword to the end."
            (concatenate 'string "'" str "'"))
           (t
            (let ((buf (make-string (+ (* len 2) 2) :initial-element #\')))
            (concatenate 'string "'" str "'"))
           (t
            (let ((buf (make-string (+ (* len 2) 2) :initial-element #\')))
-             (do* ((i 0 (incf i))
+            (declare (simple-string buf))
+            (do* ((i 0 (incf i))
                    (j 1 (incf j)))
                   ((= i len) (subseq buf 0 (1+ j)))
                (declare (type fixnum i j))
                    (j 1 (incf j)))
                   ((= i len) (subseq buf 0 (1+ j)))
                (declare (type fixnum i j))