1.0.30.45: various pretty-printing improvements
Patch by Tobias Rittweiler:
* Add a PPRINT-DECLARE which a) makes sure that (DECLARE (FUNCTION
F)) is not printed as (DECLARE #'F), and b) places each declaration
specifier on its own line. Also used for DECLAIM.
* Better pprint SETQ forms which assign to multiple variables. At the
moment it's printed like
(SETQ FOO
(FROB-FOO 0 1 2 3 4 5 6 7 8 9)
QUUX
(FROB-QUUX 9 8 7 6 5 4 3 2 1 0))
With the patch it's indented like
(SETQ FOO (FROB-FOO 0 1 2 3 4 5 6 7 8 9)
QUUX (FROB-QUUX 9 8 7 6 5 4 3 2 1 0))
It uses the former indentation style if the value (e.g. the
"(FROB-FOO ...)") does not fit on a single line.
This also affects PSETQ, SETF, PSETF.
* Add pprint entry for SB-INT:DX-FLET because there are CL macros
which expand to that.
* Fix typo in *LOOP-SEPARATING-CLAUSES*; I mistakenly put WHERE
instead of WITH in it.
* Fix PPRINT-IF to make sure that the predicate is always printed
right after the IF. The current definition may occassionally print
an IF form like
(IF
(PREDICATE)
(THEN)
(ELSE))
* Some small refactoring work:
- Use PPRINT-LINEAR, and PPRINT-FILL instead of equivalent, but
hairy FORMAT calls.
- Add PPRINT-SPREAD-FUN-CALL which is the common subtrate of
pretty-printing simple LOOP forms, and DECLARE forms.