Previous: Top-level Variable References, Up: Compiling Scheme


1.6.5 Module Analysis

(require 'vet)

— Function: vet-slib file1 ...

Using the procedures in the top-refs and manifest modules, vet-slib analyzes each SLIB module and file1, ..., reporting about any procedure or macro defined whether it is:

orphaned
defined, not called, not exported;
missing
called, not defined, and not exported by its required modules;
undocumented-export
Exported by module, but no index entry in slib.info;

And for the library as a whole:

documented-unexport
Index entry in slib.info, but no module exports it.

This straightforward analysis caught three full days worth of never-executed branches, transitive require assumptions, spelling errors, undocumented procedures, missing procedures, and cyclic dependencies in SLIB.

The optional arguments file1, ... provide a simple way to vet prospective SLIB modules.