* mdw/kwargs-fixes: (53 commits)
src/module-output.lisp: Set right margin to 77 characters.
src/codegen-proto.lisp: Fix printing of `if`/`else if' ladders.
src/: Write `NULL' for a null pointer, rather than plain `0'.
src/: Enhance `definst' to allow general BVL syntax.
src/codegen-{proto,impl}.lisp: Gather `definst' forms together.
src/: Abolish the special `va-*' instructions.
src/: Introduce `deliver-call' to abbreviate function calls.
Improve checking for C99-style varargs macros.
src/output-impl.lisp: Add a debugging dump of the known constraints.
src/class-output.lisp, src/output-impl.lisp: Warn about unused items.
src/frontend.lisp: Add `--backtrace' option to expose error context.
src/final.lisp: Add convenient macro for testing parsers at the REPL.
test/test.sod: New file containing miscellaneous tests.
src/module-parse.lisp: Support multi-word item names in fragment syntax.
src/module-parse.lisp: Frob `_' to `-' in item names.
test/chimaera.{sod,ref}: Make `Chimaera' less tolerant of tickling.
test/chimaera.sod: Make `Serpent' tickle tolerance be a slot.
test/chimaera.sod: Reformatting.
lib/Makefile.am: Associate man pages with the code where possible.
lib/Makefile.am: List headers before sources.
...
* mdw/c11-fixes:
doc/clang.tex: Fix terrible English in description of pointer types.
doc/syntax.tex, src/sod-module.5: Typeset `<qualifier>s' properly.
doc/clang.tex: Missing return type in `format-qualifiers' synopsis.
doc/layout.tex, doc/meta.tex: Move some `sod-class-...' descriptions.
doc/*.tex: Whitespace hacking.
doc/list-exports.lisp: Make executable with `cl-launch' header.
doc/list-exports.lisp: Ignore generic functions with strange names.
doc/list-exports.lisp: Support use of CMUCL MOP.
src/class-finalize-impl.lisp: Reorder `flet'/`macrolet'.
src/method-proto.lisp: Fix boneheaded `:keyword' as a type.
src/class-make-impl.lisp: Don't store `nil' in the `metaclass' slot.
src/pset-proto.lisp (default-slot-from-property): Maybe leave slot unbound.
src/*.lisp: Fix declared slot types.
src/parser/package.lisp: Do better at finding Gray streams on CMUCL.
src/*.asd.in: Load `auto.lisp' explicitly relative to `*load-pathname*'.
Conflicts:
doc/SYMBOLS (recreate using list-exports.lisp)
doc/list-exports.lisp (trivial hand-merge; leave executable)
12 files changed:
class-make-proto.lisp
check-message-type generic
check-method-type generic
- guess-metaclass generic
- define-sod-class macro
make-sod-class function
make-sod-class-initializer generic
make-sod-initializer-using-slot generic
(offenders (mapcan
(lambda (class)
(let* ((slot-names
- (mapcar #'sb-mop:slot-definition-name
- (sb-mop:class-direct-slots class)))
+ (mapcar #'slot-definition-name
+ (class-direct-slots class)))
(exported (remove-if
(lambda (sym)
- (and (not (exported-symbol-p sym))
- (eq (symbol-package sym)
- package)))
+ (or (not (symbol-package sym))
+ (and (not (exported-symbol-p
+ sym))
+ (eq (symbol-package sym)
+ package))))
slot-names)))
(and exported
(list (cons (class-name class)