aboutsummaryrefslogtreecommitdiff
path: root/src/interp/lisplib.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp/lisplib.boot')
-rw-r--r--src/interp/lisplib.boot6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot
index 8c39a1b5..e8d85247 100644
--- a/src/interp/lisplib.boot
+++ b/src/interp/lisplib.boot
@@ -550,6 +550,9 @@ writeAbbreviation(db,file) ==
writeConstructorForm(ctor,form,file) ==
writeInfo(ctor,form,'constructorForm,'dbConstructorForm,file)
+writeCategory(ctor,cat,file) ==
+ writeInfo(ctor,cat,'constructorCategory,'dbCategory,file)
+
writeSuperDomain(ctor,domPred,file) ==
writeInfo(ctor,domPred,'superDomain,'dbSuperDomain,file)
@@ -591,7 +594,8 @@ finalizeLisplib(ctor,libName) ==
$lisplibCategory := $lisplibCategory or mm.mmTarget
-- set to target of mm for package/domain constructors;
-- to the right-hand sides (the definition) for category constructors
- lisplibWrite('"constructorCategory",$lisplibCategory,$libFile)
+ if dbConstructorKind db = 'category then
+ writeCategory(ctor,$lisplibCategory,$libFile)
lisplibWrite('"sourceFile",namestring _/EDITFILE,$libFile)
lisplibWrite('"modemaps",removeZeroOne $lisplibModemapAlist,$libFile)
opsAndAtts := getConstructorOpsAndAtts(form,kind,mm)