From 9130fc21789dd3fc7c1a8c89dc992acfb54dbccd Mon Sep 17 00:00:00 2001 From: Gabriel Dos Reis Date: Tue, 19 Jan 2016 04:16:43 -0800 Subject: getConstructorCategory: get it from generated code for category constructors. --- src/algebra/Makefile.am | 4 +++- src/algebra/Makefile.in | 4 +++- src/boot/ast.boot | 2 +- src/interp/database.boot | 5 ++++- 4 files changed, 11 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/algebra/Makefile.am b/src/algebra/Makefile.am index 30385bcc..4308614b 100644 --- a/src/algebra/Makefile.am +++ b/src/algebra/Makefile.am @@ -1188,7 +1188,9 @@ strap-2/KONVERT.$(FASLEXT): strap-2/TYPE.$(FASLEXT) strap-2/RETRACT.$(FASLEXT): strap-2/KRCFROM.$(FASLEXT) strap-2/BASTYPE.$(FASLEXT): strap-2/TYPE.$(FASLEXT) \ strap-1/BOOLEAN.$(FASLEXT) strap-1/KOERCE.$(FASLEXT) -strap-2/FRETRCT.$(FASLEXT): strap-2/RETRACT.$(FASLEXT) strap-1/INS.$(FASLEXT) +strap-2/FRETRCT.$(FASLEXT): strap-2/RETRACT.$(FASLEXT) \ + strap-1/INS.$(FASLEXT) \ + strap-1/TBAGG.$(FASLEXT) strap-2/SETCAT.$(FASLEXT): strap-2/BASTYPE.$(FASLEXT) \ strap-2/KOERCE.$(FASLEXT) strap-1/SINT.$(FASLEXT) \ strap-1/STRING.$(FASLEXT) strap-1/OUTFORM.$(FASLEXT) diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in index fdfb8d04..1b0f9f54 100644 --- a/src/algebra/Makefile.in +++ b/src/algebra/Makefile.in @@ -2697,7 +2697,9 @@ strap-2/KONVERT.$(FASLEXT): strap-2/TYPE.$(FASLEXT) strap-2/RETRACT.$(FASLEXT): strap-2/KRCFROM.$(FASLEXT) strap-2/BASTYPE.$(FASLEXT): strap-2/TYPE.$(FASLEXT) \ strap-1/BOOLEAN.$(FASLEXT) strap-1/KOERCE.$(FASLEXT) -strap-2/FRETRCT.$(FASLEXT): strap-2/RETRACT.$(FASLEXT) strap-1/INS.$(FASLEXT) +strap-2/FRETRCT.$(FASLEXT): strap-2/RETRACT.$(FASLEXT) \ + strap-1/INS.$(FASLEXT) \ + strap-1/TBAGG.$(FASLEXT) strap-2/SETCAT.$(FASLEXT): strap-2/BASTYPE.$(FASLEXT) \ strap-2/KOERCE.$(FASLEXT) strap-1/SINT.$(FASLEXT) \ strap-1/STRING.$(FASLEXT) strap-1/OUTFORM.$(FASLEXT) diff --git a/src/boot/ast.boot b/src/boot/ast.boot index 253002a9..25c7a9ae 100644 --- a/src/boot/ast.boot +++ b/src/boot/ast.boot @@ -1,6 +1,6 @@ -- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007-2015, Gabriel Dos Reis. +-- Copyright (C) 2007-2016, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without diff --git a/src/interp/database.boot b/src/interp/database.boot index e667ab74..1096c3eb 100644 --- a/src/interp/database.boot +++ b/src/interp/database.boot @@ -90,7 +90,10 @@ getConstructorAbbreviationFromDB ctor == getConstructorCategory: %Symbol -> %Form getConstructorCategory ctor == getConstructorKindFromDB ctor = 'category => - GETDATABASE(ctor,"CONSTRUCTORCATEGORY") + db := constructorDB ctor + if not dbBeingDefined? db and dbCategory db isnt [.,:.] then + loadDBIfNecessary db + dbCategory db getConstructorModemap(ctor).mmTarget getConstructorKindFromDB: %Symbol -> %Maybe %ConstructorKind -- cgit v1.2.3