From a2a9f3d7379dc1dfb26c22c890cac0cdf67f759c Mon Sep 17 00:00:00 2001 From: Gabriel Dos Reis Date: Wed, 13 Jan 2016 02:14:24 -0800 Subject: getSuperDomainFromDB: get data from generated code Don't call GETDATABASE to read the information. Rather, load the generated code for the contructor. Discovered mode algebra dependencies. --- src/algebra/Makefile.am | 4 +++- src/algebra/Makefile.in | 4 +++- src/interp/compiler.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 65d3a4c2..a7cd3084 100644 --- a/src/algebra/Makefile.am +++ b/src/algebra/Makefile.am @@ -922,7 +922,9 @@ strap-1/CATCTOR.$(FASLEXT): strap-1/CTORCAT.$(FASLEXT) \ strap-1/KOERCE.$(FASLEXT) strap-1/CTOR.$(FASLEXT) strap-1/SAOS.$(FASLEXT): strap-1/ORDSET.$(FASLEXT) \ - strap-1/KONVERT.$(FASLEXT) strap-0/SYMBOL.$(FASLEXT) + strap-1/KONVERT.$(FASLEXT) \ + strap-0/SYMBOL.$(FASLEXT) \ + strap-0/IDENT.$(FASLEXT) strap-1/STREAM.$(FASLEXT): strap-1/LZSTAGG.$(FASLEXT) \ strap-1/SMAGG.$(FASLEXT) strap-0/STREAM2.$(FASLEXT) \ diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in index b39de771..5a040a02 100644 --- a/src/algebra/Makefile.in +++ b/src/algebra/Makefile.in @@ -2429,7 +2429,9 @@ strap-1/CATCTOR.$(FASLEXT): strap-1/CTORCAT.$(FASLEXT) \ strap-1/KOERCE.$(FASLEXT) strap-1/CTOR.$(FASLEXT) strap-1/SAOS.$(FASLEXT): strap-1/ORDSET.$(FASLEXT) \ - strap-1/KONVERT.$(FASLEXT) strap-0/SYMBOL.$(FASLEXT) + strap-1/KONVERT.$(FASLEXT) \ + strap-0/SYMBOL.$(FASLEXT) \ + strap-0/IDENT.$(FASLEXT) strap-1/STREAM.$(FASLEXT): strap-1/LZSTAGG.$(FASLEXT) \ strap-1/SMAGG.$(FASLEXT) strap-0/STREAM2.$(FASLEXT) \ diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index 433d44e7..8b25f4fc 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.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 aa460332..863def62 100644 --- a/src/interp/database.boot +++ b/src/interp/database.boot @@ -166,7 +166,10 @@ getConstructorParentsFromDB ctor == getSuperDomainFromDB: %Symbol -> %Form getSuperDomainFromDB ctor == - GETDATABASE(ctor,"SUPERDOMAIN") + db := constructorDB ctor + if not dbBeingDefined? db then + loadDBIfNecessary db + dbSuperDomain db getConstructorAttributes: %Symbol -> %Form getConstructorAttributes ctor == -- cgit v1.2.3