/[gcl]/gcl/BUGS
ViewVC logotype

Contents of /gcl/BUGS

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.27 - (show annotations) (download)
Thu Oct 13 11:21:30 2005 UTC (18 years, 6 months ago) by pfdietz
Branch: MAIN
CVS Tags: HEAD
Branch point for: std-build, experimental
Changes since 1.26: +36 -26 lines
Partial update of BUGS list to record fixes

1 This is a list of bugs that have been found in gcl. When you fix
2 a bug, add the notation (FIXED) after the bug number, but leave the
3 number in place so it isn't reused.
4
5 1 (FIXED). (subtypep s 'structure-object) isn't working properly when
6 s is a structure class name or a structure class object.
7 This is causing 95 ansi-test failures.
8
9 2. (FIXED) (sublis x y :test #'fn) is passing the arguments to fn in the
10 wrong order. The problem here is that the :key argument is being
11 applied somewhat unusually, making the usual TEST macro not do
12 quite the right thing. ansi-tests: sublis.9 and sublis.10
13
14 3. (FIXED) (nsublis x y :test #'fn) is passing the arguments to fn in the
15 wrong order. Similar to bug #2. ansi-tests: nsublis.10 and nsublis.11
16
17 4. (FIXED) (last x n) is incorrectly signaling an error when n is a positive
18 bignum. Instead, it should return x. ansi-tests: last.11, last.12
19
20 5. (FIXED) The map* functions should signal a type error when given an improper
21 list. They do so, but the slots of the type error object don't
22 satisfy the property that the value in the datum slot is not of
23 the type in the expected-type slot. ansi-tests: mapc.error.8,
24 mapcar.error.8, mapcan.error.8, mapl.error.8, maplist.error.11,
25 mapcon.error.8
26
27 6. (FIXED) Similar to #5, but the error is for GET-PROPERTIES. ansi-tests:
28 get-properties.error.[456]
29
30 7. (FIXED) (SETF (GETF form1 form2 form3) form4) is evaluating the subforms
31 in the wrong order: form3 is being evaluated before (the subforms of)
32 form1 and form2. ansi-tests: setf-getf.order.2
33
34 8. (FIXED) Similar to #5, but the error is for GETF. ansi-tests:
35 getf.error.[45]
36
37 9. (FIXED) REMF is violating the requirement that the value of the place be
38 read out after all the other subforms of the REMF form are computed
39 (even the ones to the right of the place form; see section 5.1.3
40 of CLtS). ansi-tests: remf.order.3
41
42 10. Similar to #5, but on ELT when the index is out of range. Should
43 return a type-error with datum == the index and type ==
44 `(integer 0 (,(length sequence))) (or NIL if the sequence has length 0).
45 ani-tests: elt.1, elt.1b, elt.2,
46
47 11. There's an internal type error somewhere in the code exercised by
48 elt.10 -- the invalid type (integer 0 . 1) is being passed to TYPEP
49 (and similarly for elt.14, elt-v.1, elt-v.10, elt-adj-array.1,
50 elt-adj-array.10, elt-displaced-array.1, elt-fill-pointer.[3468],
51 and elt,error.[45]).
52
53 12. (FIXED) Coerce can't coerce a vector of characters into a base-string.
54 ansi-tests: fill.string.10
55
56 13. (FIXED) MAKE-SEQUENCE fails on type argument NULL,
57 (CLASS-OF NIL), or (FIND-CLASS LIST).
58 ansi-tests: make-sequence.57
59
60 14. (partially FIXED; map.error.11 still fails)
61 The datum and expected type fields of the type errors thrown by
62 MAKE-SEQUENCE, MAP do not satisfy the constraint that the datum
63 is not of type expected-type. ansi-tests: make-sequence.error.1,
64 make-sequence.error.2, make-sequence.error.14, make-sequence.error.16,
65 map.error.1, map.error.1a, map.error.11.
66
67 15. (FIXED) MAP fails on type argument NULL, (OR (VECTOR 5) (VECTOR 10))
68 ansi-tests: map-null.1, map.48
69
70 16. NREVERSE is broken on vectors of element type LISP:SIGNED-SHORT
71
72 (let ((v (make-array '(7) :initial-contents '(1 1 0 1 1 1 0)
73 :element-type 'lisp:signed-short)))
74 (nreverse v))
75 ==> #(0 1 1 1 1 1 0)
76
77 (ansi-tests: nreverse-vector.7, nreverse-vector.8)
78
79 17. (FIXED) The setf expander for SUBSEQ returns the wrong value (the
80 entire vector is returned rather than the aubsequence being assigned.)
81 ansi-tests: subseq.order.[34]
82
83 18. (FIXED) CONCATENATE fails on type argument of NULL, as does MERGE.
84 ansi-tests:. concatenate.24, merge-null.1, merge.error.6
85
86 19, (partially FIXED; no-extra-symbols-exported-from-common-lisp still fails)
87 There are 140 symbols exported from the COMMON-LISP package that
88 should not be external in that package.
89 ansi-tests: no-extra-symbols-exported-from-common-lisp
90 all-exported-cl-class-names-are-valid
91
92 20. 19 functions are missing: arithmetic-error-operands
93 broadcast-stream-streams cell-error-name concatenated-stream-streams
94 echo-stream-input-stream echo-stream-output-stream
95 function-lambda-expression (FIXED)get-setf-expansion
96 (FIXED) make-load-form-saving-slots pprint-indent pprint-newline
97 pprint-tab print-not-readable-object simple-condition-format-control
98 synonym-stream-symbol two-way-stream-input-stream
99 two-way-stream-output-stream unbound-slot-instance
100 (FIXED)compiler-macro-function readtable-case.
101
102 ansi-tests: cl-function-symbols.1, dcf-funs and these tests:
103
104 cell-error-name:
105 symbol-value.error.5 symbol-function.error.5 makunbound.2
106 eval.error.3 eval.error.4 cell-error-name.[123456]
107 cell-error-name.error.[12]
108
109 get-setf-expansion (FIXED)
110 get-setf-expansion.error.[12] get-setf-expansion.[123]
111
112 simple-condition-format-control
113 error.1 error.4 cerror.1 cerror.4
114
115 synonym-stream-symbol:
116 synonym-stream-symbol.1 synonym-stream-symbol.error.[12]
117
118 broadcast-stream-streams:
119 broadcast-stream-streams.[12]
120 broadcast-stream-streams.error.[12]
121
122 two-way-stream-input-stream:
123 two-way-stream-input-stream.1
124 two-way-stream-input-stream.error.[12]
125
126 two-way-stream-output-stream:
127 two-way-stream-output-stream.1
128 two-way-stream-output-stream.error.[12]
129
130 echo-stream-input-stream:
131 echo-stream-input-stream.1
132 echo-stream-input-stream.error.[12]
133
134 echo-stream-output-stream:
135 echo-stream-output-stream.1
136 echo-stream-output-stream.error.[12]
137
138 concatenated-stream-streams:
139 concatenated-stream-streams.[12345]
140 concatenated-stream-streams.error.[12]
141
142 (FIXED) make-load-form-saving-slots:
143 make-load-form-saving-slots.[123456789]
144 make-load-form-saving-slots.1[012]
145 make-load-form-saving-slots.error.[12]
146
147 pprint-indent
148 pprint-indent.[123456789] pprint-indent.1[0123456789]
149 pprint-indent.13a pprint-indent.2[0123]
150 pprint-indent.error.[123]
151
152 pprint-newline
153 pprint-newline.[123] pprint-newline.linear.[123456789]
154 pprint-newline.linear.10 pprint-newline.miser.123456789]
155 pprint-newline.miser.1[0123] pprint-newline.fill.[123456789]
156 pprint-newline.fill.10 pprint-newline.mandatory.[123456]
157 pprint-newline.error.123] pprint-newline.error.1-unsafe
158
159 pprint-tab
160 pprint-tab.non-pretty.[12345678] pprint-tab.nil.1
161 pprint-tab.t.1 pprint-tab.line.1 pprint-tab.section.1
162 pprint-tab.line-relative.1 pprint-tab.section-relative.1
163 pprint.tab.error.[1234]
164
165 21. The following macros are missing: (FIXED)define-compiler-macro
166 (FIXED)define-setf-expander define-symbol-macro in-package.
167 ansi-tests: cl-macro-symbols.1 in-package.error.1
168 dcf-macros define-setf-expander.error.1 (FIXED)
169 define-setf-expander.[1234567] (partially FIXED; define-setf-expander.7
170 still fails)
171 define-compiler-macro.error.[123]
172 define-compiler-macro.[12345678] define-symbol-macro.error.[123]
173 documentation.symbol.setf.[12]
174
175 22. GENTEMP should take a package designator as its second argument,
176 not just a package object. ansi-tests: gentemp.[345].
177
178 23. (special-operator-p 'symbol-macrolet) should be true.
179 ansi-tests: special-operator-p.1
180
181 24. (debatable) special-operator-p should be nil on DECLARE and IN-PACKAGE.
182 ansi-tests: special-operator-p.2
183
184 25. (debatable) "USER" should not be a nickname of "COMMON-LISP-USER"
185 (instead, it can name a separate package).
186 ansi-tests: common-lisp-user-package-nicknames
187
188 26. FIND-ALL-SYMBOLS should take a string designator, which includes
189 character values. ansi-tests: find-all-symbols.2
190
191 27. Free special declarations do not apply to the final value clauses
192 of iteration forms. ansi-tests: do-symbols.16 do-external-symbols.16
193
194 28. The scope of the bound variable in DO-ALL-SYMBOLS should include
195 the final value form. ansi-tests: do-all-symbols.4
196
197 29. The implicit block in DO-ALL-SYMBOLS should surround the entire
198 loop, including the return value form. ansi-tests: do-all-symbols.6
199
200 30. DO-ALL-SYMBOLS should accept declarations. ansi-tests: do-all-symbols.9
201 do-all-symbols.10 do-all-symbols.11
202
203 31. IMPORT should set the home package of any symbol being imported that
204 does not have a home package. ansi-tests: import.5
205
206 32. The setf expander for VALUES evaluates the source form before the subforms
207 of the destination places. ansi-tests: setf-values.5
208
209 33. Order of evaluation problem in expansion of psetq/psetf, possibly involving
210 symbol macros. ansi-tests: psetq.7 psetf.7
211
212 34. Cannot create classes whose names are uninterned symbols.
213 ansi-tests: psetf.35 rotatef.35 defclass.forward-ref.4
214
215 35. ROTATEF does not work with no arguments. snsi-tests: rotatef.3
216
217 36. DEFSETF (long form) should produce an implicit block with the name
218 of the accessor-fn. ansi-tests: defsetf.5a
219
220 37. The expansion function produced by DEFSETF (long form) should be defined
221 in the same lexical environment in which the DEFSETF form appears.
222 ansi-tests: defsetf.6a
223
224 38. The control error signaled by (throw (gensym) nil) isn't printable
225 when *print-escape* and *print-readably* are nil. ansi-tests: throw-error
226
227 39. DOCUMENTATION should be allowed to be called on function objects, not
228 just function names. ansi-tests: define-modify-macro.documentation.1
229 define-modify-macro.documentation.2
230 documentation.function.function.[1235]
231
232 40. In DEFUN where the function names is a (SETF <name>) pair, there is an
233 implicit block with name <name>. ansi-tests: defun.4
234
235 41. Free special declarations do not apply to the expressions in &aux,
236 &optional or &key forms of an ordinary lambda list. See also bug #49.
237 ansi-tests: defun.5 defun.6 defun.7
238
239 42. &WHOLE causes an error during macroexpansion in destructuring-bind.
240 ansi-tests: destructuring-bind.20
241
242 43. destructuring-bind fails to destructure in the &rest parameter
243 ansi-tests: destructuring-bind.21
244
245 44. The macro function for destructuring-bind (and, I suspect, many
246 other builtin macros) fails to properly signal a program error
247 when called on an invalid number of arguments. ansi-tests:
248 destructuring-bind.error.[789]
249
250 45. (FIXED) No hash table with :key EQUALP.
251 ansi-tests: equalp.21
252
253 46. (partially FIXED; equalp.35 still fails)
254 EQUALP fails to properly compare hash tables.
255 ansi-tests: equalp.22 to equalp.35
256
257 47. (FIXED) The type error signaled by EVERY and related functions has
258 the datum and expected-type slots switched. ansi-tests:
259 every.error.1 notany.error.1 notevery.error.1 some.error.1
260
261 48. flet and labels do not accept SETF function names.
262 ansi-tests: flet.17 labels.17 flet.51 labels.26
263
264 49. Free special declarations in flet and labels forms do not affect
265 the expressions in the &aux, &optional and &key fields of the
266 ordinary lambda list. See also bug #41. ansi-tests: flet.62 flet.63
267 flet.67 labels.41 labels.42 labels.46
268
269 50. Funcall should throw an undefined function error when called on a symbol
270 that has a macro function binding but not a function binding.
271 ansi-tests: funcall.error.3
272
273 51. function-lambda-expression is not defined.
274 ansi-tests: function-lambda-expression.[123]
275 function-lambda-expression.order.1 function-lambda-expression.error.[12]
276
277 52. (FIXED) Lambda forms are no longer of type function.
278 ansi-tests: function.6 function.10 functionp.6 functionp.10
279
280 53. (FIXED) Symbols are no longer functions.
281 ansi-tests: functionp.2
282
283 54. Free special declarations do not apply to the init forms of a LET or LET*.
284 ansi-tests: let.17 let.17a let*.17 let*.17a let*.18
285
286 55. &whole not recognized in macro lambda list
287 anso-tests: macrolet.5 macrolet.36 defmacro.7
288
289 56. symbol-macros are not showing up in the macro expansion environment
290 ansi-tests: macrolet.13 macrolet.14
291
292 57. :allow-other-keys not being properly handled in macros with &key in
293 their macro lambda lists. ansi-tests: macrolet.32 defmacro.21
294
295 58. NIL should match anything in a macro lambda lists.
296 ansi-tests: macrolet.39
297
298 59, Ordering problem related to presence of symbol macro with side effects
299 in multiple-value-setq. ansi-tests: multiple-value-setq.[58]
300
301 60. Free special declarations should not apply to the initialization
302 forms in PROG, PROG* forms. ansi-tests: prog.11 prog*.11
303
304 61. (FIXED, partially) DEFINE-COMPILER-MACRO is undefined
305 ansi-tests: documentation.list.compiler-macro.[12]
306 documentation.symbol.compiler-macro.[12]
307
308 62. DEFINE-SYMBOL-MACRO is undefined
309
310 63. CONSTANTP should take an optional second argument, an environment
311 or nil (and which may be ignored.) ansi-tests: constantp.6
312 constantp.8 constantp.order.2
313
314 64. Free special declarations in a LAMBDA form should not affect
315 the expressions in key, aux, or optional parameters.
316 ansi-tests: lambda.5[234]
317
318 65. The second argument to COMPILE is allowed to be a function;
319 not just a lambda expression. ansi-tests: lambda.5[56]
320
321 66. COMPILE-FILE is incorrectly executing the code twice i
322 an EVAL-WHEN form with both the :COMPILE-TOPLEVEL and
323 :LOAD-TOPLEVEL keywords. ansi-tests: eval-when.1
324
325 67. DEFMACRO is not defining the macro function in the lexical
326 environment in which the DEFMACRO form appears.
327 ansi-tests: defmacro.3 defmacro.4 defmacro.12 defmacro.13
328
329 68. (FIXED) (typep nil (find-class 'null)) ==> nil
330 See also bug #81.
331 ansi-tests: the.9 the.10
332
333 69. (VALUES &REST ...) not being understood.
334 ansi-tests: the.14 the.15 the.18 the.21 the.22
335
336 70. (THE (VALUES ... &OPTIONAL ...) (EVAL '(VALUES ...))) is
337 signaling a spurious error. ansi-tests: the.20 the.23
338
339 71. SYMBOL-MACROLET does not admit DECLARE expressions.
340 ansi-tests: symbol-macrolet.3 symbol-macrolet.8
341 symbol-macrolet.error.1
342
343 72. SYMBOL-MACROLET should signal a program error when
344 the symbol is a constant or special variable, but it does not.
345 ansi-tests: symbol-macrolet.error.1 symbol-macrolet.error.2
346
347 73. MACRO-FUNCTION should take an optional second argument (that
348 is an environment or NIL), but it does not.
349 ansi-tests: macro-function.[2379] macro-function.1[135]
350 loop-finish.error.1
351
352 74. SUBTYPEP problems (ansi-tests: types.3)
353
354 a. (FIXED) GENERIC-FUNCTION FUNCTION ==> NIL T
355 b. (FIXED) UNBOUND-SLOT CELL-ERROR ==> NIL T
356 (see also unbound-slot-cpl)
357 c. (FIXED) FLOATING-POINT-INVALID-OPERATION ARITHMETIC-ERROR ==> NIL T
358 (see also floating-point-invalid-operation-cpl type-of.5)
359 d. (FIXED) FLOATING-POINT-INEXACT ARITHMETIC-ERROR ==> NIL T
360 (see also floating-point-inexact-cpl type-of.5)
361 e. (FIXED) LOGICAL-PATHNAME PATHNAME ==> NIL T
362 f. (FIXED) PRINT-NOT-READABLE ERROR ==> NIL T
363 (see also print-not-readable-cpl)
364 g. (FIXED) READER-ERROR PARSE-ERROR ==> NIL T
365 (see also reader-error-cpl)
366 h. (FIXED) READER-ERROR STREAM-ERROR ==> NIL T
367
368 (see also condition.2 for subtype failures on expected subtype
369 relationships of condition types)
370
371 75. More SUBTYPEP problems (ansi-tests: types.9a)
372
373 a. (FIXED) VECTOR SIMPLE-ARRAY ==> T T
374 b. (FIXED) ARRAY SIMPLE-ARRAY ==> T T
375 c. (FIXED) BIT-VECTOR SIMPLE-ARRAY ==> T T
376 d. (FIXED) BIT-VECTOR SIMPLE-BIT-VECTOR ==> T T
377
378 (counterexample elements were found for all these supposed subtype
379 relationship.)
380
381 76. (FIXED) (subtypep 'function 'atom) ==> T T (which is correct), but there
382 are function objects that are not of type atom. The problem is that
383 cons cells are used to represent functions. The problem is tbat
384 lambda expressions are no longer of type FUNCTION in CLtS.
385 (also from ansi-test types.9a, see also
386 universe-elements-in-at-most-one-disjoint-type)
387
388 77. (FIXED) Yet more SUBTYPEP problems:
389 (subtypep 'standard-object (find-class 'standard-object)) ==> nil t
390 ansi-tests: all-classes-are-type-equivalent-to-their-names
391
392 78. (FIXED) A number of standardized classes are implemented as structure
393 classes (which is allowed) but subtypep is not recognizing them
394 as subtypes of structure-object: synonym-stream, hash-table,
395 broadcast-stream, echo-stream, pathname, concatenated-stream,
396 readtable, function, file-stream, string-stream, stream, package,
397 two-way-stream.
398 ansi-tests: all-structure-classes-are-subtypes-of-structure-object
399
400 79. (FIXED) The standardized generic function DOCUMENTATION should be a member
401 of the class GENERIC-FUNCTION.
402
403 80. (FIXED, please check) SUBTYPEP is not correctly determining that if a class X is a subclass
404 of classes Y and Z, then X is a subtype of (AND Y Z) (it is allowed
405 to fail to determine the subtype relationship, but if it does it must
406 determine it correctly). ansi-tests: tac-3.16
407
408 81. (let ((x (make-condition 'arithmetic-error))) (typep x (class-of x)))
409 ==> NIL
410 More generally, typep isn't working on class object type specifiers.
411 ansi-tests: coerce.3 class-28.[123] class-0201.1 class-0202.1
412 class-0301.1 class-0309.1 class-0311.1 allocate-instance.[1234]
413 allocate-instance.order.1 change-class.3.[12]
414 update-instance-for-different-class.4
415
416 82. (FIXED) In a DEFTYPE lambda list, the default value for missing key or optional
417 parameters should be the symbol *, not NIL.
418 ansi-tests: deftype.11 deftype.12 deftype.18
419
420 83. (FIXED) SUBTYPEP is not correctly handling a DEFTYPE that yields the NIL type:
421 (deftype foo () nil)
422 (subtypep '(foo) nil) ==> nil t
423 ansi-tests: deftype.13
424
425 84. (FIXED) The body of a DEFTYPE form should be in an implicit block whose name
426 is the name of the type being defined.
427 ansi-tests: deftype.16
428
429 85. (FIXED) DEFTYPE forms are not allowing all DECLARE expressions.
430 ansi-tests: deftype.19
431
432 86. (partially FIXED) Free special declarations in a DEFTYPE should not apply to the
433 forms in optional or key arguments in the deftype lambda list.
434 ansi-tests: deftype.15
435
436 87. (FIXED) The method parameter specifier (X FUNCTION) is not matching
437 the function value #'CONS.
438 ansi-tests: standard-generic-function.[12]
439
440 88. Numerous problems with TYPE-OF (ansi-tests: type-of.1 type-of.4)
441
442 a. (FIXED) TYPE-OF of a nonnegative integer must be a subtype of UNSIGNED-BYTE.
443 b. (FIXED) #\Rubout, #\Tab, #\Backspace, #\Return, and #\Page are BASE-CHARs,
444 and have TYPE-OF ==> STRING-CHAR, but
445 (SUBTYPEP 'STRING-CHAR 'BASE-CHAR) ==> nil t
446 c. (FIXED) TYPE-OF on condition objects returns PCL::STD-INSTANCE, which is
447 not a subtypep of the condition types to which the objects belong.
448 It also isn't a subtype of the class returned by CLASS-OF.
449 d, (FIXED) TYPE-OF on #(nil nil) is VECTOR, but #(nil nil) is a SIMPLE-VECTOR.
450 e. (FIXED) TYPE-OF on a logical pathname returns PATHNAME, which is not a subtype
451 of LOGICAL-PATHNAME.
452 f. (FIXED) TYPE-OF on standard methods returns PCL::STD-INSTANCE, which is not
453 a subtype of METHOD, STANDARD-METHOD, OR STANDARD-OBJECT.
454 It is also not a subtype of (CLASS-OF <method>).
455 g. (FIXED) TYPE-OF on a compiled closure for a generic function yields
456 COMPILED-FUNCTION, which is not a subtype of GENERIC-FUNCTION,
457 STANDARD-GENERIC-FUNCTION, or STANDARD-OBJECT. It is also not
458 a subtype of (CLASS-OF <fun>).
459
460 (Note: in f and g, the STANDARD-OBJECT is there because these entities
461 are elements of this type in gcl, although this is not required by
462 the standard. Given that they are elements, the subtype relationship
463 is required by the standard.)
464
465 89. (FIXED) TYPE-OF on an instance of a user-defined standard class is
466 PCL::STD-INSTANCE, but it should be the name of the class
467 (or the class itself if it has no name).
468 ansi-tests: type-of.7 type-of.8 type-of.9 (and type-of.10,
469 indirectly)
470
471 90. (FIXED) typep should signal an error if the type is a VALUES type.
472 ansi-tests: typep.error.4 typep.error.5 typep.error.6
473
474 91. (FIXED) typep should signal an error if the type is a compound function
475 type. ansi-tests: typep.error.7
476
477 92. (FIXED) The CPL (class precedence list) tests are failing due to a bug
478 in PCL that also showed up in SBCL and CMUCL. The function starts
479 returning NIL after a few calls. ansi-tests: *-CPL
480
481 93. (partially FIXED; prin1.symbol.3 is still failing, but is a different
482 bug) READTABLE-CASE is undefined (and its SETF form)
483 ansi-tests: read-symbol.1[678] read-symbol.25
484 readtable-case.* set-syntax-from-char-trait-*
485 print.symbol.[123456789] print.symbol.1[012] prin1.symbol.[123]
486
487 93a. PRIN1 is not escape the symbol |1| properly when readtabkle-case
488 is set to :UPCASE. ansi-tests: prin1.symbol.3
489
490
491 94. Binding *READ-SUPPRESS* to true doesn't totally suppress reading;
492 reading a list still returns a list, as does reading a vector
493 or pathname.
494 ansi-tests: read-suppress.9 read-suppress.1[01245]
495 read-suppress.sharp-quote.[1235678]
496 read-suppress.sharp-left-paren.[123456789]
497 read-suppress.sharp-left-paren.1[012]
498 read-suppress.sharp-p.[1234567]
499 read-suppress.sharp-equal.4
500
501
502 95. Binding *READ-SUPPRESS* to true causes the reading of complex
503 numbers to abort with a type error.
504 read-suppress.sharp-c.[123456789] read-suppress.sharp-c.1[12345]
505
506 96. In read suppressed mode, #r does not read the full token following
507 it, but stops at the # character. ansi-tests: read-suppress.sharp-r.10
508
509 97. In read suppressed mode, ## terms are not read correctly
510 ansi-tests: read-suppress.sharp-sharp.[1234]
511
512 98. Reading a token starting with a right paren (an invalid character)
513 should signal a READER-ERROR, but it does not.
514 ansi-tests: read-suppress.error.1 syntax.right-paren-error.1
515
516 99. Reading #< should signal a reader error.
517 ansi-tests: read-suppress.error.2 set-syntax-from-char.right-paren
518 syntax.sharp-less-than.1
519
520 100. Setting the syntax of a character to that of #\" doesn't work.
521 ansi-tests: set-syntax-from-char.double-quote
522
523 101. Initially, for a new dispatching macro character, every following
524 character should have the dispatching macro character function that
525 signals a read-error. This is not happening.
526 ansi-tests: make-dispatch-macro-character.3
527
528 102. #\Backspace is an invalid character in the standard syntax, and
529 reading it should signal a reader-error. This is not happening.
530 ansi-tests: syntax.backspace.invalid
531
532 103. #\Rubout is an invalid character in the standard syntax, and
533 reading it should signal a reader-error. This is not happening.
534 ansi-tests: syntax.rubout.invalid
535
536 104. The string "#0()" should read as the simple vector of length 0,
537 but it causes an error. ansi-tests: syntax.sharp-left-paren.2
538
539 105. Various malformations of #* syntax should lead to reader errors,
540 but do not. ansi-tests: syntax.sharp-asterisk.error.[123]
541
542 106. Binding *read-eval* to nil should cause #. to throw a reader
543 error, but it does not always. ansi-tests: syntax.sharp-dot.error.3
544
545 107. #C should tolerate whitespace before the left paren.
546 ansi-tests: syntax.sharp-c.5
547
548 108. #+(:and) #+(:or) #+(:not ...) lead to errors in the reader (which
549 is wrong). The problem seems to be that the feature expression
550 is being read in the current package, not the keyword package.
551 ansi-tests: syntax.sharp-plus.5 syntax.sharp-plus.7 syntax.sharp-plus.8
552 syntax.sharp-plus.12
553
554 109. Reading # followed by whitespace[1] should signal a reader-error,
555 but it is not (it is signaling a simple-error that is not a reader-error).
556 ansi-tests: syntax.sharp-whitespace.1
557
558 110. Reading # followed by a right parenthesis should signal a reader-error,
559 but it is not (it is signaling a simple-error that is not a reader-error).
560 ansi-tests: syntax.sharp-right-paren.1
561
562 111. Reading a rational with zero denominator should signal a reader error.
563 ansi-tests: syntax.number-token.error.1
564
565 112. Tokens containing only dots and not being a single dot in a position
566 where a consing dot is expected should cause a reader-error.
567 ansi-tests: syntax.dot-error.[1234567]
568
569 113. Reading a comma while not in a backquoted form should signal a
570 reader-error. ansi-tests: syntax.comma-error.[12]
571
572 114. Free special declarations in DO, DO* forms should not affect the init
573 forms. ansi-tests: do.16 do*.16
574
575 115. NIL is a destructuring pattern that matches anything (and binds
576 nothing) and should be allowed in for-as-arithmetic clauses.
577 ansi-tests: loop.1.5[013456]
578
579 116. A while or until clause in a LOOP should be executed at its location,
580 not earlier. ansi-tests: loop.11.29 loop.11.3[01234]
581
582 117. Creating a structure whose name is an uninterned symbol causes the
583 class that is created to be unfindable with FIND-CLASS.
584 ansi-tests: struct-test-31/1[3457] struct-test-31/15a
585
586 118. The -P predicate created for a structure of type (vector t) causes
587 an error on the string (string (code-char 0)).
588 ansi-tests: struct-test-41/3 struct-test-43/3
589
590 119. There should be an initialization argument :format-control for
591 simple-errors and simple-warnigns. ansi-tests: error.[2389]
592 error.1[02] cerror.[23] cerror.2a warn.8 warn.10 warn.19
593
594 120. Error should take a formatter (not just a format string) as its first
595 argument. ansi-tests: error.5 error.1 cerror.4a cerror.5
596
597 121. The datum slot of the error signaled by a CHECK-TYPE failure
598 is not the value being checked. ansi-tests: check-type.[23567]
599
600 122. invoke-debugger is not signaling a program error in safe code
601 when called with an incorrect number of arguments.
602
603 123. The (<type> <handler>) pairs of HANDLER-BIND should accept
604 literal function values as handlers, but uncompiled function
605 objects (which are improperly implemented as CONSes) cause
606 an error. ansi-tests: handler-bind.9
607
608 (This is also a problem with function literals occuring
609 in other expressions, but there isn't a test for that
610 in the eval/compile section of ansi-tests.)
611
612 124. HANDLER-BIND is not properly handing off a declined condition
613 to a following handler in some cases. ansi-tests: handler-bind.11
614
615 125. HANDLER-BIND is not accepting condition class objects as type
616 designators. ansi-tests: handler-bind.17
617
618 126. HANDLER-CASE is not accepting condition class objects as type
619 designators. ansi-tests: handler-case.5
620
621 127. HANDLER-CASE did not accept a DECLARE expression (by itself)
622 in the body of a handler clause. ansi-tests: handler-case.28
623
624 128. Free special declarations in the handler clauses of a HANDLER-CASE
625 are improperly affecting the expressions in &aux variables.
626 ansi-tests: handler-case.29
627
628 129. (typep <condition object> (find-class 'condition)) ==> NIL
629 (typep <condition object> (find-class '<its condition class name>)) ==> NIL
630 ansi-tests: condition-1/is-a-member-of-class/condition and
631 about 30 similar tests
632
633 130. compute-restarts is returning a restarts that are not associated with
634 the condition being tested. ansi-tests: compute-restarts.9
635
636 131. restart-case with macro, symbols forms not not properly handled:
637 ansi-tests: restart-case.29 restart-case.30 restart-case.31
638
639 132. Free special declarations in restart definitions in restart-case
640 do not have the correct scope. ansi-tests: restart-case.36
641
642 133. continue, store-value, and use-value functions are invoking restarts
643 that are applicable to other conditions than the argument condition.
644 (Or, with-condition-restarts may not be behaving properly)
645 ansi-tests: continue.2 store-value.2 use-value.2
646
647 134. A safe call (make-condition) should signal a program error.
648 ansi-tests: make-condition.error.1
649
650 135. Division by zero should be signaling a divide-by-zero condition,
651 not a generic simple error. ansi-tests /.error.[2345678]
652
653 136. (/ -1) is returning three values, not just one.
654 ansi-tests: /.2
655
656 137. (expt -1 0.0) should be 1.0 (of the appropriate floating type),
657 but the result being returned is #c(1.0 0.0).
658 ansi-tests: expt.18 expt.19 expt.20 expt.21
659
660 138. (lcm) should yield 1, not an error.
661 ansi-tests: lcm.1
662
663 139. (FIXED) (typep 1 '(real (0))) ==> error (and similarly for
664 (typep 1 '(integer (0))).)
665 ansi-tests: random.error.3 (and others)
666
667 140. (phase 0) ==> error (logarithmic singularity)
668 ansi-tests: phase.1
669
670 141. (float x) should eql x when x is a float, but short-floats
671 are being converted to single-floats
672 (eql (float 1.0s0) 1.0s0) ==> NIL
673 ansi-tests: float.5
674
675 142. rational and rationalize should signal type errors on arguments
676 that are not of type real in safe code.
677 ansi-tests: rational.error.4 rationalize.error.4
678
679 143. Apparent compiler problem in this function:
680
681 (defun digit-char.1.body.old ()
682 (loop for r from 2 to 36 always
683 (loop for i from 0 to 36
684 always (let* ((c (digit-char i r))
685 (result
686 (if (>= i r) (null c)
687 (eqlt c (char +extended-digit-chars+ i)))))
688 (unless result
689 (format t "~A ~A ~A~%" r i c))
690 result))))
691
692 When called, it prints 2 2 p and returns nil. However,
693 (digit-char 2 2) ==> nil when called at the REPL.
694
695 (this is from digit-char.1, but that test has been changed.)
696
697 144. digit-char should take at most two arguments, but it is failing
698 to signal a program error in safe code when given more.
699 ansi-tests: digit-char.error.2
700
701 145. standard-char-p should signal a type error in safe code when
702 called on a non-character. ansi-tests: standard-char-p.3
703
704 146. code-char should signal an error in safe code when called with
705 more than one argument. ansi-tests: code-char.error.2
706
707 147. adjust-array does not have the correct semantics when performed
708 on the middle of a chain of three displaced bit vectors. The chain
709 appears to have been improperly short-circuited.
710 ansi-tests: adjust-array.bit-vector.adjustable.13
711
712 148. fill-pointer should signal a type error when called with vectors
713 that lack fill pointers. It does, but the expected-type field
714 is wrong. ansi-tests: fill-pointer.error.[36]
715
716 149. (FIXED) The value (upgraded-array-element-type 'base-char) should be
717 type-equivalent to base-char. However, it is string-char,
718 and (subtypep 'string-char 'base-char) ==> nil t
719 ansi-tests: upgraded-array-element-type.2
720
721 150. (FIXED) upgraded-array-element-type violates the 'preserves subtype'
722 properties for numerous types. For example:
723
724 (upgraded-array-element-type '(eql 2)) ==> lisp:signed-char
725 but
726 (upgraded-array-element-type '(unsigned-byte 16)) ==>
727 lisp:unsigned-short
728
729 ansi-tests: upgraded-array-element-type.8
730
731 151. (FIXED) (upgraded-array-element-type nil) ==> t, but it should be nil.
732
733 152. vector-pop should signal a type-error when passed a vector
734 that lacks a fill pointer. It does, but the expected-type
735 slot is wrong. ansi-tests: vector-pop.error.[15]
736
737 153. (make-hash-table :size 0) signals an error, but 0 is a legal
738 value for the size parameter. ansi-tests: make-hash-table.2
739
740 154. equalp hash tables are not supported.
741 ansi-tests: make-hash-table.1[01] hash-table-count.[59]
742 hash-table-rehash-threshold.[23] hash-table-test.[234]
743 gethash.zero.4 remhash.4 clrhash.4 maphash.[36]
744 with-hash-table-iterator.7
745
746 155. (make-hash-table :rehash-threshold x) errors:
747
748 a. x == 0 (or 0.0s0, or 0.0) signals an error, but zero
749 is a legal value for this parameter. ansi-tests:
750 make-hash-table.1[6789] make-hash-table.20
751
752 b. x == 1/2 signals an error, but this is a legal value for
753 this parameter. ansi-tests: make-hash-table.21
754
755 156. The third argument to GETHASH in the SETF form should be
756 allowed, but instead is causing an error.
757 ansi-tests: gethash.5 gethash.order.4
758
759 157. The last invocation of the local macro in WITH-HASH-TABLE-ITERATOR
760 should return just a single value, NIL, but it is returning
761 three values. ansi-tests: with-hash-table-iterator.4
762
763 158. PATHNAME, when called on a stream, should return the pathname
764 that was used to create the stream. However, for logical pathnames,
765 this is not happening -- the physical pathname corresponding to the
766 logical pathname is returned instead.
767 ansi-tests: logical-pathname.3
768
769 159. ensure-directories-exist should signal a file-error if part of
770 the directory is wild, but it does not.
771 ansi-tests: ensure-directories-exist.error.1
772
773 160. stream-element-type is returning :default on a stream opened
774 with OPEN. This violates the constraint that this type must
775 be a subtype of integer or character. ansi-tests: stream-element-type.6
776
777 161. Cannot write (1- (ash 1 32)) to a stream with :element-type
778 (unsigned-byte 32) using write-byte. ansi-tests: read-byte.3
779 read-byte.4 file-length.[2345]
780
781 162. peek-char advances the file position of echo streams.
782 ansi-tests: peek-char.17
783
784 163 Passing NIL to the :start argument of read-sequence or write-sequence
785 is treated as if the parameter were not present. This is incorrect:
786 :start, if provided, must be a nonnegative integer, and should signal
787 a type error in safe calls otherwise.. ansi-tests:
788 read-sequence.error.9 write-sequence.error.15
789
790 164. file-string-length is computing the wrong thing. It should compute
791 the change in file position after an object is printed as a sequence
792 of characters, not as printed in readable representation. #\a, for
793 example, should occupy one position, not three.
794 ansi-tests: file-string-length.[12]
795
796 165. Free declarations in with-open-file forms should not have the return
797 value form in their scope. ansi-tests: with-open-file.[789]
798
799 166. open-stream-p reports that a string-stream (input or output)
800 is still open, even after it has been closed. ansi-tests:
801 with-open-stream.[6789]
802
803 167. Free declarations in a with-open-stream form are incorrectly
804 being applied to the return value form. ansi-tests: with-open-stream.10
805
806 168. (typep (make-broadcast-stream) 'broadcast-stream) ==> nil (and related).
807 ansi-tests: make-broadcast-stream.[123]
808
809 169. file-position should return 0 on null broadcast streams.
810 ansi-tests: make-broadcast-stream.6
811
812 170. file-string-length should return 1 on null broadcast streams.
813 ansi-tests: make-broadcast-stream.7
814
815 171. make-broadcast-stream should signal a type error in safe calls
816 when an argument is not an output stream.
817 ansi-tests: make-broadcast-stream.error.[12]
818
819 172. open-stream-p returns T on a two-way-stream, echo-stream,
820 or concatenated-stream that has been closed.
821 ansi-tests: make-two-way-stream.2 make-echo-stream.10
822 make-concatenated-stream.27
823
824 173. make-two-way-stream should signal a type error if the output
825 stream argument is not an output stream. It does so, but
826 the expected-type slot is wrong.
827 ansi-tests: make-two-way-stream.error.[67]
828
829 174. (open-stream-p (make-concatenated-stream)) ==> nil
830 ansi-tests: make-concatenated-stream.7
831
832 175. READ-CHAR-NO-HANG is encountering a premature EOF in a concatenated
833 stream. It looks like it is only reading from the first of the input
834 streams.
835 ansi-tests: make-concatenated-stream.16
836
837 176. LISTEN fails to look at the second input stream to a concatenated
838 stream.
839 ansi-tests: make-concatenated-stream.30
840
841 177. make-string-output-stream should take a keyword argument, :element-type.
842 ansi-tests: make-string-output-stream.[235679]
843 make-string-output-stream.1[01]
844
845 178. Free declarations in with-input-from-string should not apply to the return
846 value form, or the start or end arguments.
847 ansi-tests: with-input-from-string.19 with-input-from-string.2[012]
848
849 179. The index place argument of with-input-from-string should be updated only
850 if the form terminates normally.
851 ansi-tests: with-input-from-string.22
852
853 180. with-output-to-string should take an :element-type argument.
854 ansi-tests: with-output-to-string.[78] with-output-to-string.1[46]
855
856 181. Free special declarations in with-output-to-string should not
857 apply to the return value form.
858 ansi-tests: with-output-to-string.15
859
860 182. Calling make-instance with an initialization argument for a shared slot
861 does not properly initialize that shared slot.
862 ansi-tests: class-13.1
863
864 183. Violations of the rules for default initargs.
865 ansi-tests: class-20.[123] class-21.[1245]
866
867 184. documentation doesn't work on class objects.
868 ansi-tests: class-23.[34] documentation.standard-class.t.1
869 documenation.struct-class.t.1
870
871 185. :ALLOW-OTHER-KEYS <true> in the :DEFAULT-INITARGS specifier of
872 a class definition should allow other arguments to be passed in
873 the initializer list to make-instance. However, this is not happening.
874 ansi-tests: class-24.2
875
876 186. slot-makunbound should return the instance. It is instead returning nil.
877 ansi-tests: class-0203.[12] slot-missing.3
878
879 187. slot-makunbound throws an error incorrectly:
880
881
882 > (defclass example-class () ((a :allocation :instance)
883 (b :allocation :class)))
884
885 #<Standard-Class EXAMPLE-CLASS 72244360>
886
887 > (let ((c1 (make-instance 'example-class))) (slot-makunbound c1 'a))
888
889 Error in LET [or a callee]: What kind of instance is this?
890
891 ansi-tests: class-0206.1 class-0207.1 class-redefinition.2
892 update-instance-for-different-class.[123] slot-boundp.5
893 slot-makunbound.[12] slot-makunbound.error.[12]
894
895 188. (FIXED) T is an illegal documentation type.
896 ansi-tests: class-0221.[123] defgeneric.2
897 documentation.function.t.[123456789]
898 documentation.function.t.[56]a documentation.function.t.1[012]
899 documentation.function.function.[48]
900 documentation.standard-method.t.1
901 documentation.package.t.1 documentation.new-method.1
902
903 189. If the name of a class is changed to NIL, and another class of the same
904 original name is then defined, the original class should not be redefined;
905 instead, there should be two classes. Zee section 4.3.1 for the notion
906 of 'proper name', and see also bug #190 below.
907 ansi-tests: class-0309.1
908
909 190. Similar to 189, but if FIND-CLASS for a given name is changed.
910 ansi-tests: class-0310.1
911
912 191. defclass should allow forward referencing of superclasses, but
913 doesn't. Attempting to include the name of a class that hasn't
914 yet been defined in the superclass list causes an error.
915 ansi-tests: defclass.forward-ref.[123]
916
917 192. ensure-generic-function should take a method class object as its
918 :method-class argument.
919 ansi-tests: ensure-generic-function.9
920
921 193. ensure-generic-function should take the :declare keyword argument,
922 but it does not (this was a source of some confusion in other lisps,
923 and may be a spec bug.)
924 ansi-tests: ensure-generic-function.13
925
926 194. allocate-instance should work on structure classes.
927 ansi-tests: allocate-instance.5
928
929 195. allocate-instance should signal a program-error when called with
930 too few arguments in safe code.
931 ansi-tests: allocate-instance.error.1
932
933 196. change-class isn't allowing the :allow-other-keys keyword argument.
934 ansi-tests: change-class.1.7 change-class.7.5
935
936 197. When SLOT-MISSING is called when attempting to write to a missing
937 slot, any of its return values should be ignored. However, they
938 are being returned by the setf function.
939 ansi-tests: slot-missing.[267]
940
941 198. When slot-boundp is invoked on a missing slot, only a value equivalent
942 (in the boolean sense) to the primary value of slot-missing should
943 be returned, not any other values.
944 ansi-tests: slot-missing.8
945
946 199. If slot-value is called on an unbound slot, and the applicable
947 slot-unbound method returns no values, then slot-value should return
948 the primary value, which is NIL. However, it is returning no values
949 at all. Similarly, if the method returns more than one value, slot-value
950 should return only the first
951 ansi-tests: slot-unbound.[3456]
952
953 200. The function method-qualifiers should throw a progra-error when called
954 with other than one argument in safe code.
955 ansi-tests: method-qualifiers.error.[12]
956
957 201. remove-method must not signal an error if the method does not belong
958 to the generic function.
959 ansi-tests: remove-method.1
960
961 202. (FIXED) MAKE-LOAD-FORM should have default methods (that signal errors) when
962 invoked on standard objects, structure objects, or conditions.
963 ansi-tests: make-load-form.[456789] make-load-form.1[012]
964
965 203. MAKE-LOAD-FORM should signal a program error when invoked with too
966 many arguments.
967 ansi-tests: make-load-form.error.2
968
969 204. WITH-ACCESSORS forms should allow the presence of DECLARE expressions.
970 ansi-tests: with-accessors.1[01]
971
972 205. WITH-SLOTS forms should allow the presence of DECLARE expressions.
973 ansi-tests: with-slots.19 with-slots.20
974
975 206. DEFGENERIC should signal a program=error if a required argument occurs
976 more than once in the argument-precedence-order list, or if a
977 required argument is missing in the argument-precedence-order list.
978 ansi-tests: defgeneric.error.[48]
979
980 207. If a generic function is passed a keyword argument that is not
981 accepted by any applicable method, an error should be signalled.
982 See CLtS 7.6.5.
983 ansi-tests: defgeneric.error.2[01]
984
985 208. When an existing generic function is redefined using DEFMETHOD, any
986 preexisting methods that were defined using the :methods option
987 of DEFGENERIC should be removed. See also paragraph 4 of the
988 description of ENSURE-GENERIC-FUNCTION.
989
990 ansi-tests: defgeneric.3[12]
991
992 209. The method declarations in DEFGENERIC forms should admit DECLARE
993 expressions.
994 ansi-tests: defgeneric.35
995
996 210. Neither rebinding nor using SETQ (& related operators) should alter
997 the arguments passed by CALL-NEXT-METHOD.
998 ansi-tests: call-next-method.8
999
1000 211. "When providing arguments to call-next-method, the following
1001 rule must be satisfied or an error of type error should be signaled:
1002 the ordered set of applicable methods for a changed set of arguments
1003 for call-next-method must be the same as the ordered set of applicable
1004 methods for the original arguments to the generic function."
1005
1006 ansi-tests: call-next-method.error.[12]
1007
1008 212. COMPUTE-APPLICABLE-METHODS should signal a program-error when called
1009 with too many or too few arguments in safe code.
1010 ansi-tests: compute-applicable-methods.error.1
1011
1012 213. FIND-METHOD should signal a program-error when called with too few
1013 or too many arguments.
1014 ansi-tests: find-method.error.[1234]
1015
1016 214. FIND-METHOD should signal an error if the length of the specializers
1017 list does not equal the number of required arguments to the generic
1018 function
1019 ansi-tests: find-method.error.[789] find-method.error.10
1020
1021 215. ADD-METHOD should signal a program-error when called with too few or
1022 too many arguments in safe code.
1023 ansi-tests: add-method.error.[456]
1024
1025 216. ADD-METHOD should return the generic function.
1026 ansi-tests: add-method.[12]
1027
1028 217. Computing SLOT-VALUE on a missing slot should throw an UNBOUND-SLOT error.
1029 ansi-tests: unbound-slot.[12]
1030
1031 218. A generic function should throw a program-error if called with too few
1032 or too many arguments in safe code.
1033 ansi-tests: defmethod.error.1[34]
1034
1035 219. A generic function should throw a program-error when called with invalid
1036 keyword arguments in safe code.
1037 ansi-tests :defmethod.error.15
1038
1039 220. Double floats are not printed readably correctly. Round-off error
1040 is apparently occuring, causing the re-read value to differ slightly.
1041 ansi-tests: print.double-float.random print.long-float.random
1042
1043 221. #\Space should print (under PRIN1) as #\ , not #\Space.
1044 ansi-tests: print.char.4 print.char.10
1045
1046 222. Escaped haracter printing violates therules in 2.4.8.1
1047 ansi-tests: print.char.7
1048
1049 223. (code-char 28) doesn't print or possibly read correctly
1050 ansi-tests: print.char.[89]
1051
1052 224. A symbol whose symbol-package is a deleted package should be printed
1053 as if it had no home package.
1054 ansi-tests: print.symbol.prefix.8
1055
1056 225. Component printing controlled by *print-level* should not print #
1057 for an object unless that object 'has components'. I interpret
1058 this to mean objects that are printed by recursive calls to the
1059 object printer, and that can be targets of #n# syntax, so cons cells,
1060 T vectors, structures, etc. have components, but not numbers, symbols.
1061 strings, or bit vectors.
1062 ansi-tests: print.cons.level.[25] print.vector.level.[34] pprint.1
1063 print-level.[4589]
1064
1065 226. Arrays of dimension > 1 that have total size > 0 and one ore more
1066 dimensions of size 0 do not print readably.
1067 ansi-tests: print.array.2.2[123]
1068
1069 227. The 'is-similar*' generic function is not dispatching properly.
1070 In particular, the correct method is apparently not being invoked
1071 on pathnames.
1072 ansi-tests: print.pathname.1
1073
1074 228. PPRINT-FILL should signal a program-error when called with the
1075 wrong number of arguments in safe code.
1076 ansi-tests: pprint-fill.error.[123]
1077
1078 229. PPRINT-LINEAR should signal a program-error when called with the
1079 wrong number of arguments in safe code.
1080 ansi-tests: ppprint-linear.error.[123]
1081
1082 230. PPRINT-TABULAR should use WRITE to print an object when it is a
1083 non-list.
1084 ansi-tests: pprint-tabular.[12]
1085
1086 231. The default tabsize for PPRINT-TABULAR is 16, but it is instead
1087 using ordinary tab characters.
1088 ansi-tests: pprint-tabular.[6789] pprint-tabular.1[0123456789]
1089 pprint-tabular.2[01234]
1090
1091 232. PPRINT-TABULAR fails to break the list across lines if it would
1092 otherwise exceed *PRINT-RIGHT-MARGIN*.
1093 ansi-tests: pprint-tabular.2[12]
1094
1095 233. PPRINT-TABULAR should signal a program-error when called with the
1096 incorrect number of arguments in safe code.
1097 ansi-tests: pprint-tabular.error.[1234]
1098
1099 234. PPRINT-LOGICAL-BLOCK does not always properly print the #n# notation
1100 when *print-circle* is true.
1101 ansi-tests: pprint-logical-block.17
1102
1103 235. The local macro PPRINT-EXIT-IF-LIST-EXHAUSTED isn't being defined
1104 inside PPRINT-LOGICAL-BLOCK forms.
1105 ansi-tests: pprint-exit-if-list-exhausted.[1234]
1106
1107 236. The local macro PPRINT-POP isn't being defined inside
1108 PPRINT-LOGICAL-BLOCK forms.
1109 ansi-tests: pprint-pop.[123456789]
1110
1111 237. PRINT-UNREADABLE-OBJECT, when :TYPE is T, is specified to print a space
1112 after the type even if nothing else is printed before the closing >.
1113 This is not happening. (Arguably this is a spec bug.) Similarly,
1114 it is specified to print a space before the 'identity' inforamtion.
1115 ansi-tests: print-unreadable-object.[23]
1116
1117 238. PRINT-UNREADABLE-OBJECT should signal an error of type PRINT-NOT-READABLE
1118 if *PRINT-READABLY* is true, but it is not doing this.
1119 ansi-tests: print-unreadable-object.error.1
1120
1121 239. PRINT appears to ignore the *PRINT-READABLY* control variable,
1122 as does PRIN1. ansi-tests: print.1 prin1.1
1123
1124 240. *PRINT-LEVEL* can be legally bound to any nonnegative integer,
1125 but an error occurs when it is bound to a bignum.
1126 ansi-tests: print-level.12
1127
1128 241. *PRINT-LENGTH* can be legally bound to any nonnegative integer,
1129 but an error occurs when it is bound to a bignum.
1130 ansi-tests: print-length.7
1131
1132 242. Structures should be printed with their slot names given as keyword
1133 symbols.
1134 ansi-tests: print-length.11
1135
1136 243. The format directive ~c should print #\Newline, #\Space, and
1137 many other characters as the single characters, not as their names,
1138 ansi-tests: format.c.1 format.c.1a format.r.15 format.d.5
1139 format.d.11 format.b.5 format.b.11 format.o.5 format.o.11
1140 format.x.5 format.x.11 format.justify.10
1141
1142 244. The ~:c format directive should print the name of simple, non-graphic
1143 characters.
1144 ansi-tests: format.c.4a
1145
1146 245. The ~@c format directive should print characters in a readable format,
1147 but this fails on the character with code 28.
1148 ansi-tests: format.c.5a
1149
1150 246. The function produced by the FORMATTER macro should return the list
1151 of unconsumed arguments.
1152 ansi-tests: many formatter tests
1153
1154 247. When the v format parameter of the R format directive gets 'nil',
1155 it is to be treated as if it were not there, which means ~r should
1156 print an english number. It isn't doing this.
1157 ansi-tests: format.r.8
1158
1159 248. Specifying a very large negative format parameter for ~r (and others)
1160 causes the error 'Can't extend the string.'. ansi-tests: format.r.38
1161 format.d.28 format.b.28 format.o.28 format.x.28
1162
1163 249. ~d is supposed to do the same thing as ~a when called on a non-integer,
1164 but for several kinds of values it doesn't.
1165 ansi-tests: format.d.1[89] format.d.2[01]
1166
1167 250. The format directive "~vd" fails when the v parameter is a negative
1168 bignum, and similarly for other numeric directives (b, etc.)
1169 ansi-tests: format.d.29 format.b.29 format.o.29 format.x.29
1170
1171 251. The ~_ format directive is not implemented.
1172 ansi-tests: All format.*_* tests format.logical-block.1[789]
1173 format.logical-block.2[14
1174
1175 252. In the ~<...~:> format directive (logical block), 'An error is
1176 signaled if either the prefix or suffix fails to be a constant
1177 string or if the enclosed portion is divided into more than three
1178 segments.'
1179 ansi-tests: format.logical-block.error.[123456789]
1180 format.logical-block.error.1[0123456789]
1181 format.logical-block.error.2[01234]
1182
1183 253. 'An error is signaled if any of these directives[~< ... ~:>]
1184 is nested within ~<...~>."
1185 ansi-tests: format.logical-block.error.25
1186
1187 254. 'An error is also signaled if the ~<...~:;...~> form of ~<...~>
1188 is used in the same format string with [...] ~<...~:> [...].'
1189 ansi-tests: format.logical-block.error.2[67]
1190
1191 255. ~< ,,, ~:> should consume the next argument and use it (as a list)
1192 to supply the arguments used by the directives inside the form.
1193 ansi-tests: format.logical-block.[1679]
1194 format.logical-block.1[0345]
1195
1196 256. The : modified to ~<...~:> should cause the prefix and suffix
1197 strings, if missing, to be "(" and ")", respectively.
1198 ansi-tests: format.logical-block.[45] format.logical-block.2[0236]
1199 format.logical-block.escape.[12]
1200
1201 257. If ~:@> terminates a ~< construct, then it should be the case that
1202 'a fill-style conditional newline is automatically inserted after
1203 each group of blanks immediately contained in the body (except
1204 for blanks after a <Newline> directive).' This is not happening.
1205 ansi-tests: format.logical-block.2[25]
1206
1207 258. ~@; in ~<...~:> construct isn't setting the per-line-prefix properly.
1208 ansi-tests: format.logical-block.2[789]
1209
1210
1211 259. The ~i directive hasn't been implemented.
1212 ansi-tests: format.i.[123456789] format.i.1[0123456]
1213
1214 260. The ~/.../ directive hasn't been implemented.
1215 ansi-tests: format./.[123456789] format./.1[123456789]
1216
1217 261. Various ~T failures, all similar
1218 ansi-tests: format.t.[348]
1219
1220 262. ~:T and ~:@T aren't implemented.
1221 ansi-tests: format.:t,[123456789] format.:t1[012]
1222 format.:@t.[12345] format.:@t1[abcd]
1223
1224 263. Two ~<...~> failures (undiagnosed)
1225 ansi-tests: format.justify.8 format.justify.29
1226
1227 264. Condition (~{ ~}) format directive isn't accepting bignums.
1228 ansi-tests: format.cond.[46] format.cond:.[46]
1229
1230 265. Conditional format directive with a prefix argument selects
1231 the wrong clause if the prefix is a bignum.
1232 ansi-tests: format.cond.12
1233
1234 266. A NIL ~v prefix to [ does not work correctly.
1235 ansi-tests: format.cond.14 format.cond:.7
1236
1237 267. The format directive ~{~} should take the next argument as a format
1238 control to be used in the iteration. This is not happening.
1239 ansi-tests: format.{.1a format.{.1b format.{.1[569] format.{.2[0123]
1240 format.:{.[3456] format.@{.1[23] format.:@{.[45]
1241
1242 268. The ~{ ... ~} directive should be prepared to signal an error of
1243 type type-error if the argument is not a list.
1244 ansi-tests: format.{.error.5 format.:@{.error.5
1245
1246 269. ~^ should take format parameters that are bignums, and other
1247 format parameter problems with that format directive.
1248 ansi-tests: format.^.(.1[89] format.^.{.2[056789]
1249 format.^.{.3[0123] format.^.:{.[67] format.^.:{.1[013456]
1250 format.^.:{.3[89] format.^.@{.19 format.^.@{.2056789]
1251 format.^.@{.3[0123] format.^.:@{.[67] format.^.:@{.1[01456]
1252 format.^.:@{.3[89]
1253
1254 270. Large numbers of undiagnosed failures in ~:^ in various forms of
1255 the iteration directives.
1256 ansi-tests: format.:^.*
1257
1258 271. LOAD should be able to load directly from a stream.
1259 ansi-tests: load.[38] load.1[356] load.1[56]a
1260
1261 272. The information printed by LOAD when verbose is true should
1262 be on lines starting with semicolons.
1263 ansi-tests: load.[56]
1264
1265 273. LOAD should simply return nil if an attempt to load a nonexistent
1266 file is made when the :if-does-not-exist keyword argument is nil.
1267 ansi-tests: load.14
1268
1269 274. LOAD should bind *LOAD-PATHNAME* to be the pathname of the file
1270 being loaded, merged against the defaults. However, this variable
1271 is being bound to the pathname's name (a string), not a pathname.
1272 ansi-tests: load.18
1273
1274 275. LOAD should signal a FILE-ERROR when trying to load a nonexistent
1275 file (unless the if-does-not-exist parameter is false). It is throwing
1276 a simple-error instead.
1277 ansi-tests: load.error.1
1278
1279 276. The describe tests crash gcl when run with rt::*catch-errors* bound
1280 to nil.
1281 ansi-tests: describe.[12345]
1282
1283 277. DISASSEMBLE should signal a program-error on safe calls with more than
1284 one argument.
1285 ansi-tests: disassemble.error.2
1286
1287 278. TRACE ism't working on extended function names like (SETF ...).
1288 ansi-tests: trace.[68
1289
1290 279. TRACE isn't working properly on generic functions. An error is being
1291 signaled if a method is added to a generic function that is being traced.
1292 ansi-tests: trace.1[34]
1293
1294 280. GET-UNIVERSAL-TIME should signal a program-error in safe calls with more
1295 than zero arguments.
1296 ansi-tests: get-universal-time.error.[12]
1297
1298 281. GET-INTERNAL-REAL-TIME should signal a program-error in safe calls with
1299 more than zero arguments.
1300 ansi-tests: get-interal-real-time.error.[12]
1301
1302 282. GET-INTERNAL-RUN-TIME should return a single integer, but it is returning
1303 two values.
1304 ansi-tests: get-internal-run-time.1
1305
1306 283. DOCUMENTATION fails on (SETF ...) function names with documentation type
1307 FUNCTION.
1308 ansi-tests: documentation.list.function.[12]
1309
1310 284. DOCUMENTATION fails on symbol, 'type arguments.
1311 ansi-tests: documentation.symnol.type.1
1312
1313 285. DRIBBLE should signal a program-error if called with more than one
1314 argument in safe code.
1315 ansi-tests: dribble.error.1
1316
1317 286. Compiling a call to a function whose name is an uninterned symbol
1318 doesn't work.
1319
1320 (let* ((sym (gensym))
1321 (fun-def `(defun ,sym () nil)))
1322 (eval fun-def)
1323 (funcall (compile nil `(lambda () (,sym)))))
1324
1325 Error in COMPILER::CMP-ANON [or a callee]: FUNCTION is not of type #:G1832.
1326
1327 287. DO-ALL-SYMBOLS should return when a RETURN is executed in its body.
1328 However, it is just skipping the package currently being traversed,
1329 since the macro is implemented as two nested loops and each has
1330 its own implicit NIL block. ansi-tests: do-all-symbols.12

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26