diff options
author | dos-reis <gdr@axiomatics.org> | 2008-11-24 23:03:27 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2008-11-24 23:03:27 +0000 |
commit | 98bc135baf2bae90f39bb919f56afce5ae13a1ad (patch) | |
tree | ad560e2494e42935496088417472b5d25f4e789e | |
parent | 5b693510bb2368f453b71086fcd1916cee7fea82 (diff) | |
download | open-axiom-98bc135baf2bae90f39bb919f56afce5ae13a1ad.tar.gz |
* interp/lisplib.boot (compDefineExports): Tidy.
* interp/define.boot (compDefineFunctor1): Adjust call.
-rwxr-xr-x | configure | 18 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | configure.ac.pamphlet | 2 | ||||
-rw-r--r-- | src/ChangeLog | 5 | ||||
-rw-r--r-- | src/interp/define.boot | 2 | ||||
-rw-r--r-- | src/interp/lisplib.boot | 27 |
6 files changed, 32 insertions, 24 deletions
@@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.60 for OpenAxiom 1.3.0-2008-11-20. +# Generated by GNU Autoconf 2.60 for OpenAxiom 1.3.0-2008-11-24. # # Report bugs to <open-axiom-bugs@lists.sf.net>. # @@ -713,8 +713,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='OpenAxiom' PACKAGE_TARNAME='openaxiom' -PACKAGE_VERSION='1.3.0-2008-11-20' -PACKAGE_STRING='OpenAxiom 1.3.0-2008-11-20' +PACKAGE_VERSION='1.3.0-2008-11-24' +PACKAGE_STRING='OpenAxiom 1.3.0-2008-11-24' PACKAGE_BUGREPORT='open-axiom-bugs@lists.sf.net' ac_unique_file="src/Makefile.pamphlet" @@ -1405,7 +1405,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures OpenAxiom 1.3.0-2008-11-20 to adapt to many kinds of systems. +\`configure' configures OpenAxiom 1.3.0-2008-11-24 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1475,7 +1475,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2008-11-20:";; + short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2008-11-24:";; esac cat <<\_ACEOF @@ -1579,7 +1579,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -OpenAxiom configure 1.3.0-2008-11-20 +OpenAxiom configure 1.3.0-2008-11-24 generated by GNU Autoconf 2.60 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1593,7 +1593,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by OpenAxiom $as_me 1.3.0-2008-11-20, which was +It was created by OpenAxiom $as_me 1.3.0-2008-11-24, which was generated by GNU Autoconf 2.60. Invocation command line was $ $0 $@ @@ -26424,7 +26424,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by OpenAxiom $as_me 1.3.0-2008-11-20, which was +This file was extended by OpenAxiom $as_me 1.3.0-2008-11-24, which was generated by GNU Autoconf 2.60. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -26473,7 +26473,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -OpenAxiom config.status 1.3.0-2008-11-20 +OpenAxiom config.status 1.3.0-2008-11-24 configured by $0, generated by GNU Autoconf 2.60, with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.ac b/configure.ac index 0fd3c73f..630cc178 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ sinclude(config/open-axiom.m4) sinclude(config/aclocal.m4) -AC_INIT([OpenAxiom], [1.3.0-2008-11-20], +AC_INIT([OpenAxiom], [1.3.0-2008-11-24], [open-axiom-bugs@lists.sf.net]) AC_CONFIG_AUX_DIR(config) diff --git a/configure.ac.pamphlet b/configure.ac.pamphlet index 1b3baf52..7e4bd72b 100644 --- a/configure.ac.pamphlet +++ b/configure.ac.pamphlet @@ -1126,7 +1126,7 @@ information: <<Autoconf init>>= sinclude(config/open-axiom.m4) sinclude(config/aclocal.m4) -AC_INIT([OpenAxiom], [1.3.0-2008-11-20], +AC_INIT([OpenAxiom], [1.3.0-2008-11-24], [open-axiom-bugs@lists.sf.net]) @ diff --git a/src/ChangeLog b/src/ChangeLog index 92225468..e8aef8cf 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2008-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (compDefineExports): Tidy. + * interp/define.boot (compDefineFunctor1): Adjust call. + 2008-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/i-output.boot ($RecordSeparator): New. diff --git a/src/interp/define.boot b/src/interp/define.boot index bfcfa996..fe88c86e 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -590,7 +590,7 @@ compDefineFunctor1(df is ['DEF,form,signature,$functorSpecialCases,body], $e:= giveFormalParametersValues(argl,$e) [ds,.,$e]:= compMakeCategoryObject(target,$e) or return stackAndThrow('" cannot produce category object: %1pb",[target]) - $compileExportsOnly => compDefineExports($op, ds.1, signature',$e) + $compileExportsOnly => compDefineExports(form, ds.1, signature',$e) $domainShell:= COPY_-SEQ ds --+ copy needed since slot1 is reset; compMake.. can return a cached vector attributeList := disallowNilAttribute ds.2 --see below under "loadTimeAlist" diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index fe0972da..79b4ec24 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -705,24 +705,27 @@ getIndexTable dir == nil) --% -compDefineExports(op,ops,sig,e) == +compDefineExports(form,ops,sig,e) == not $LISPLIB => systemErrorHere "compDefineExports" + op := first form -- Ensure constructor parameters appear as formals sig := SUBLIS($pairlis, sig) ops := SUBLIS($pairlis,ops) - -- Since we don't compile the capsule, the slot numbers are + form := SUBLIS($pairlis,form) + -- In case we are not compiling the capsule, the slot numbers are -- most likely bogus. Nullify them so people don't think they -- bear any meaningful semantics (well, they should not think -- these are forwarding either). - for entry in ops repeat - fixupSigloc entry where - fixupSigloc entry == - [opsig,pred,funsel] := entry - if pred ^= 'T then - rplac(second entry, simpBool pred) - funsel is [op,a,:.] and op in '(ELT CONST) => - rplac(third entry,[op,a,nil]) - ops := listSort(function GGREATERP, ops, function first) + if $compileExportsOnly then + for entry in ops repeat + fixupSigloc entry where + fixupSigloc entry == + [opsig,pred,funsel] := entry + if pred ^= 'T then + rplac(second entry, simpBool pred) + funsel is [op,a,:.] and op in '(ELT CONST) => + rplac(third entry,[op,a,nil]) + ops := listSort(function GGREATERP, ops, function first) libName := getConstructorAbbreviation op exportsFile := strconc(STRING libName,'".sig") removeFile exportsFile @@ -730,7 +733,7 @@ compDefineExports(op,ops,sig,e) == PRETTYPRINT( ["SETQ", "$CategoryFrame", ["put", quoteForm op, quoteForm "isFunctor", quoteForm ops, - ["addModemap", quoteForm op, quoteForm first sig, + ["addModemap", quoteForm op, quoteForm form, quoteForm sig, true, quoteForm op, ["put", quoteForm op, quoteForm "mode", quoteForm ["Mapping",:sig], "$CategoryFrame"]]]], s)) |