diff options
Diffstat (limited to 'src/interp/lisplib.boot')
-rw-r--r-- | src/interp/lisplib.boot | 6 |
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) |