176 |
(return-from done :good))) |
(return-from done :good))) |
177 |
:good) |
:good) |
178 |
|
|
179 |
|
;;; Free declaration scope |
180 |
|
|
181 |
|
(deftest with-input-from-string.19 |
182 |
|
(block done |
183 |
|
(let ((x :bad)) |
184 |
|
(declare (special x)) |
185 |
|
(let ((x :good)) |
186 |
|
(with-input-from-string (s (return-from done x)) |
187 |
|
(declare (special x)))))) |
188 |
|
:good) |
189 |
|
|
190 |
|
(deftest with-input-from-string.20 |
191 |
|
(block done |
192 |
|
(let ((x :bad)) |
193 |
|
(declare (special x)) |
194 |
|
(let ((x :good)) |
195 |
|
(with-input-from-string (s "abc" :start (return-from done x)) |
196 |
|
(declare (special x)))))) |
197 |
|
:good) |
198 |
|
|
199 |
|
(deftest with-input-from-string.21 |
200 |
|
(block done |
201 |
|
(let ((x :bad)) |
202 |
|
(declare (special x)) |
203 |
|
(let ((x :good)) |
204 |
|
(with-input-from-string (s "abc" :end (return-from done x)) |
205 |
|
(declare (special x)))))) |
206 |
|
:good) |
207 |
|
|
208 |
|
;;; index is not updated if the form exits abnormally |
209 |
|
|
210 |
|
(deftest with-input-from-string.22 |
211 |
|
(let ((i nil)) |
212 |
|
(values |
213 |
|
(block done |
214 |
|
(with-input-from-string (s "abcde" :index i) (return-from done (read-char s)))) |
215 |
|
i)) |
216 |
|
#\a nil) |
217 |
|
|
218 |
;;; FIXME: Add more tests on specialized strings. |
;;; FIXME: Add more tests on specialized strings. |
219 |
|
|