/[cmucl]/src/code/class.lisp
ViewVC logotype

Log of /src/code/class.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.65 - (view) (annotate) - [select for diffs]
Tue Apr 20 17:57:43 2010 UTC (3 years, 11 months ago) by rtoy
Branch: MAIN
CVS Tags: GIT-CONVERSION, HEAD, RELEASE_20b, cross-sol-x86-2010-12-20, cross-sol-x86-base, cross-sol-x86-merged, cross-sparc-branch-base, release-20b-pre1, release-20b-pre2, snapshot-2010-05, snapshot-2010-06, snapshot-2010-07, snapshot-2010-08, snapshot-2010-11, snapshot-2010-12, snapshot-2011-01, snapshot-2011-02, snapshot-2011-03, snapshot-2011-04, snapshot-2011-06, snapshot-2011-07, snapshot-2011-09, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base
Branch point for: RELEASE-20B-BRANCH, cross-sol-x86-branch, cross-sparc-branch, sparc-tramp-assem-branch
Changes since 1.64: +33 -33 lines
Diff to previous 1.64
Change uses of _"foo" to (intl:gettext "foo").  This is because slime
may get confused with source locations if the reader macros are
installed.

Revision 1.64 - (view) (annotate) - [select for diffs]
Mon Apr 19 02:18:03 2010 UTC (4 years ago) by rtoy
Branch: MAIN
Changes since 1.63: +4 -4 lines
Diff to previous 1.63
Remove _N"" reader macro from docstrings when possible.

Revision 1.63 - (view) (annotate) - [select for diffs]
Fri Mar 19 15:18:58 2010 UTC (4 years, 1 month ago) by rtoy
Branch: MAIN
CVS Tags: post-merge-intl-branch, snapshot-2010-04
Changes since 1.62: +33 -28 lines
Diff to previous 1.62
Merge intl-branch 2010-03-18 to HEAD.  To build, you need to use
boot-2010-02-1 as the bootstrap file.  You should probably also use
the new -P option for build.sh to generate and update the po files
while building.

Revision 1.62.14.1 - (view) (annotate) - [select for diffs]
Thu Feb 25 20:34:48 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-2-branch
Changes since 1.62: +36 -28 lines
Diff to previous 1.62 , to next main 1.65
Restart internalization work.  This new branch starts with code from
the intl-branch on date 2010-02-12 18:00:00+0500.  This version works
and

LANG=en@piglatin bin/lisp

works (once the piglatin translation is added).

Revision 1.62.12.4 - (view) (annotate) - [select for diffs]
Sat Feb 13 17:10:08 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-2010-03-18-1300, intl-branch-working-2010-02-19-1000
Changes since 1.62.12.3: +4 -7 lines
Diff to previous 1.62.12.3 , to branch point 1.62 , to next main 1.65
Oops.  The restart-case :reports only have a stream parameter.

Revision 1.62.12.3 - (view) (annotate) - [select for diffs]
Wed Feb 10 14:07:36 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-working-2010-02-11-1000
Changes since 1.62.12.2: +10 -4 lines
Diff to previous 1.62.12.2 , to branch point 1.62
Mark translatable strings; update cmucl.pot and ko/cmucl.po
accordingly.

Revision 1.62.12.2 - (view) (annotate) - [select for diffs]
Tue Feb 9 14:56:38 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
Changes since 1.62.12.1: +25 -25 lines
Diff to previous 1.62.12.1 , to branch point 1.62
Mark translatable strings; update cmucl.pot and ko/cmucl.po
accordingly.

Revision 1.62.12.1 - (view) (annotate) - [select for diffs]
Mon Feb 8 17:15:47 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
Changes since 1.62: +3 -1 lines
Diff to previous 1.62
Add (intl:textdomain "cmucl") to the files to set the textdomain.

Revision 1.62.10.1 - (view) (annotate) - [select for diffs]
Fri Nov 6 19:54:20 2009 UTC (4 years, 5 months ago) by rtoy
Branch: amd64-dd-branch
Changes since 1.62: +4 -2 lines
Diff to previous 1.62 , to next main 1.65
code/class.lisp:
o Make layout-hash-max the same size as used for 32-bit.

code/hash-new.lisp:
o Make max-hash be the same size as used for 32-bit.

These changes are needed because the index type is still a small
fixnum.  Have not yet figured out how to make that a big fixnum type
yet.

Revision 1.62 - (view) (annotate) - [select for diffs]
Thu Jun 11 16:03:57 2009 UTC (4 years, 10 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_20a, amd64-dd-start, intl-2-branch-base, intl-branch-base, merged-unicode-utf16-extfmt-2009-06-11, portable-clx-base, portable-clx-import-2009-06-16, pre-merge-intl-branch, release-20a-base, release-20a-pre1, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, unicode-string-buffer-base, unicode-string-buffer-impl-base
Branch point for: RELEASE-20A-BRANCH, amd64-dd-branch, intl-2-branch, intl-branch, portable-clx-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch
Changes since 1.61: +4 -4 lines
Diff to previous 1.61
Merge Unicode work to trunk.  From label
unicode-utf16-extfmt-2009-06-11.

Revision 1.61.6.1 - (view) (annotate) - [select for diffs]
Tue May 12 16:31:48 2009 UTC (4 years, 11 months ago) by rtoy
Branch: unicode-utf16-extfmt-branch
CVS Tags: unicode-snapshot-2009-06, unicode-utf16-extfmt-2009-06-11
Changes since 1.61: +4 -4 lines
Diff to previous 1.61 , to next main 1.65
o Lots of spelling fixes from Paul.
o Add unicode codepoints in final-sigma.lisp (in case the characters
  there don't show up correctly).
o Support partial-fill in READ-INTO-STRING.

Revision 1.61 - (view) (annotate) - [select for diffs]
Wed Aug 1 04:39:16 2007 UTC (6 years, 8 months ago) by cshapiro
Branch: MAIN
CVS Tags: RELEASE_19f, label-2009-03-16, label-2009-03-25, merge-sse2-packed, merge-with-19f, pre-telent-clx, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, release-19f-base, release-19f-pre1, snapshot-2007-09, snapshot-2007-10, snapshot-2007-11, snapshot-2007-12, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, snapshot-2008-04, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2008-08, snapshot-2008-09, snapshot-2008-10, snapshot-2008-11, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, sse2-base, sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base, unicode-snapshot-2009-05, unicode-utf16-base, unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-extfmts-sync-2008-12, unicode-utf16-string-support, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Branch point for: RELEASE-19F-BRANCH, release-19e-branch, sse2-branch, sse2-packed-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.60: +2 -2 lines
Diff to previous 1.60
For the time being the double-double-float type class symbols are not
exported during cross compiles.

Revision 1.60 - (view) (annotate) - [select for diffs]
Tue May 22 17:35:53 2007 UTC (6 years, 10 months ago) by rtoy
Branch: MAIN
CVS Tags: snapshot-2007-06, snapshot-2007-07, snapshot-2007-08
Changes since 1.59: +3 -2 lines
Diff to previous 1.59
Oops.  Forgot to add the type code for complex-double-double-float.  I
think this was causing PCL to think that (complex double-double-float)
was not a subtype of complex.

Revision 1.59 - (view) (annotate) - [select for diffs]
Fri Jun 30 18:41:22 2006 UTC (7 years, 9 months ago) by rtoy
Branch: MAIN
CVS Tags: release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, snapshot-2006-07, snapshot-2006-08, snapshot-2006-09, snapshot-2006-10, snapshot-2006-11, snapshot-2006-12, snapshot-2007-01, snapshot-2007-02, snapshot-2007-03, snapshot-2007-04, snapshot-2007-05
Branch point for: release-19d-branch
Changes since 1.58: +26 -1 lines
Diff to previous 1.58
This large checkin merges the double-double float support to HEAD.
The merge is from the tag "double-double-irrat-end".  The
double-double branch is now obsolete.

The code should build without double-double support (tested on sparc)
as well as build with double-double support (tested also on sparc).

Revision 1.58.8.1.4.3 - (view) (annotate) - [select for diffs]
Wed Jun 21 18:38:44 2006 UTC (7 years, 9 months ago) by rtoy
Branch: double-double-array-branch
CVS Tags: double-double-array-checkpoint, double-double-irrat-end, double-double-irrat-start, double-double-sparc-checkpoint-1
Changes since 1.58.8.1.4.2: +9 -1 lines
Diff to previous 1.58.8.1.4.2 , to branch point 1.58.8.1
Add support for (simple-array (complex double-double-float) (*)).

bootfiles/19c/boot-2006-06-2-cross-dd-sparc.lisp:
o Update for new array type.
o Fix a problem with ash-left-mod32 and lognot-mod32 not being
  defined.

code/array.lisp:
o Add new array type for %vector-type-code.
o Tell data-vector-ref, data-vector-set, and array-element-type about
  the new array.

code/class.lisp:
o Add new array type to the set of built-in classes.

code/exports.lisp:
o Export necessary symbols for the new array type.

code/pred.lisp:
o Generate type predicate for new array type.

compiler/array-tran.lisp:
o Add new array type to array-info.

compiler/generic/objdef.lisp:
o Add new array type code.

compiler/generic/primtype.lisp:
o Add new primitive type for this new array type.
o Update *simple-array-primitive-types* with new array type.

compiler/generic/vm-fndb.lisp:
o Defknown for new array type.

compiler/generic/vm-type.lisp:
o Update specialized-array-element-types with new type so we can
  create specialized arrays.

compiler/generic/vm-typetran.lisp:
o Tell compiler about predicate for the new array type.

compiler/sparc/array.lisp:
o Add new vops to read and write elements to our new array type.

compiler/sparc/type-vops.lisp:
o Add type vop for new array type.
o Adjust type hierarchy with new array type.

lisp/gencgc.c:
o Tell GC about the new array type.

lisp/purify.c
o Tell purify about the new array type.

Revision 1.58.8.1.4.2 - (view) (annotate) - [select for diffs]
Sat Jun 17 02:59:42 2006 UTC (7 years, 10 months ago) by rtoy
Branch: double-double-array-branch
Changes since 1.58.8.1.4.1: +5 -1 lines
Diff to previous 1.58.8.1.4.1 , to branch point 1.58.8.1
Initial support for (complex double-double-float).

Use boot-2006-06-2-cross-dd* to cross compile this change (along with
the simple-array double-double-float change).

Revision 1.58.8.1.4.1 - (view) (annotate) - [select for diffs]
Fri Jun 16 03:46:58 2006 UTC (7 years, 10 months ago) by rtoy
Branch: double-double-array-branch
Changes since 1.58.8.1: +9 -1 lines
Diff to previous 1.58.8.1
Add support for new unboxed primitive type (simple-array
double-double-float (*)).

bootfiles/19c/boot-2006-06-2-cross-dd-ppc.lisp:
o Cross-compile script for PPC for new array type.

code/array.lisp:
o Add simple-array double-double-float to the vector types.
o Add support for double-double-float arrays to data-vector-ref and
  data-vector-set.

code/class.lisp:
o Tell compiler about the new array type.

code/exports.lisp:
o Export necessary symbols for the new array.

code/kernel.lisp:
o The args to MAKE-DOUBLE-DOUBLE-FLOAT are double-floats.

code/pred.lisp:
o Tell type system about new primitive type.

compiler/array-tran.lisp:
o Tell compiler about the new array type.

compiler/generic/objedef.lisp:
o Add new type code

compiler/generic/primtype.lisp:
o Tell compiler about new primitive array type.

compiler/generic/vm-fndb.lisp:
o Tell compiler about known function for type test function.

compiler/generic/vm-type.lisp:
o Tell compiler about new specialized array type.

compiler/generic/vm-typetran.lisp:
o Define type predicate.

compiler/ppc/array.lisp:
o Add vops to read and write an element of a double-double-float
  simple array.

compiler/ppc/type-vops.lisp:
compiler/sparc/type-vops.lisp:
o Add type vop for new array type.
o Tell compiler about the where the new array type fits in the type
  hierarchy.

lisp/gencgc.c:
o Add GC support for new array type.

lisp/purify.c:
o Add purify support for new array type.

Revision 1.58.8.1 - (view) (annotate) - [select for diffs]
Fri Jun 9 16:04:56 2006 UTC (7 years, 10 months ago) by rtoy
Branch: double-double-branch
CVS Tags: double-double-array-base, double-double-init-%make-sparc, double-double-init-checkpoint-1, double-double-init-ppc, double-double-init-sparc, double-double-init-sparc-2, double-double-init-x86, double-double-reader-base, double-double-reader-checkpoint-1
Branch point for: double-double-array-branch, double-double-reader-branch
Changes since 1.58: +6 -1 lines
Diff to previous 1.58 , to next main 1.65
Add basic support for kernel:double-double-float type.  The primitive
type is there, and basic arithmetic operations work as well as PRINT.
But many things do not work: No reader, formatted output, many mixed
type arithmetic operations, special functions are just double-float
values, coerced to double-double-float.

compiler/generic/interr.lisp:
o Add new error

compiler/generic/new-genesis.lisp:
o Dump double-double-float objects (barely tested)

compiler/generic/primtype.lisp:
o Tell compiler about the new primitive type double-double-float.

compiler/generic/vm-fndb.lisp:
o Make double-double-float-p a known function.

compiler/generic/vm-type.lisp:
o Update FLOAT-FORMAT-NAME to include double-double-float

compiler/generic/vm-typetran.lisp:
o Tell compiler about double-double-float type predicate.

compiler/sparc/float.lisp:
o Add necessary vops to move double-double-float args, store and load
  double-double-floats to/from the double-double-stack,
  double-double-reg moves, box and unbox double-double-floats, move
  double-double-floats to and from args
o Add necessary vops to create a double-double-float and to extract
  the high and low parts out of a double-double-float.

compiler/sparc/parms.lisp:
o Define double-double-float-digits

compiler/sparc/type-vops.lisp:
o Define double-double-float type vop
o Adjust number hierarchy to include double-double-float

compiler/sparc/vm.lisp:
o Define the necessary storage class and storage base for the
  double-double-reg and double-double-stack.

lisp/gencgc.c:
o Tell GC about double-double-float objects.

lisp/purify.c:
o Tell purify about double-double-float objects.

code/class.lisp:
o Add the new double-double-float class.

code/exports.lisp:
o Add the necessary symbols to the various packages.  (This is
  important to get right otherwise there's confusion on what symbol
  really represents double-double-float stuff.)

code/float.lisp:
o Implement some of the necessary functions to support
  double-double-float.

code/hash-new.lisp:
o Hash double-double-floats by xor'ing the hashes of each double-float
  part.  (Is that good enough?)

code/irrat.lisp:
o Implement the special functions by calling the double-float versions
  and coercing the result to a double-double-float.  This is needed to
  get type-derivation working, but the precise value isn't that
  important right now.  We'll have to implement them later.

code/kernel.lisp:
o Make make-double-double-float, double-double-hi, and
  double-double-lo known functions.

code/lispinit.lisp:
o Register the :double-double float feature.

code/load.lisp:
o Add FOP for reading double-double-float values from fasls.  (Barely
  tested, if at all.)

code/numbers.lisp:
o Implement basic arithmetic operations for double-double-floats.
  This needs quite a bit of work to clean up, but most things work.

code/pred.lisp:
o Tell the type system about double-double-float type.

code/print.lisp:
o Add very rudimentary printing for double-double-float.  Basically
  copied from code written by Richard Fateman, with permission.

code/seq.lisp:
o Tell coerce how to coerce things to a double-double-float.

code/type.lisp:
o Tell type system about the new float format double-double-float and
  how numeric contagion works with double-double-float.

code/dump.lisp:
o Tell dumper how to dump double-double-float values to a fasl.

compiler/float-tran.lisp:
o Add appropriate deftransforms to handle conversion of things to
  double-double-float and from from double-double-float to other float
  types.
o The basic implmentation of double-double-float arithmetic is also
  here.
o Add deftransforms to tell the compiler how to do basic arithmetic
  and comparisions on double-double-float numbers.

compiler/srctran.lisp:
o Fix a bug in interval-range-info when :low is 0dd0 and :high is 0.
  We weren't returning the right value, which confuses interval-div,
  which caused an infinite loop because we couldn't split the
  numerator into positive and negative parts.
o Tell other parts about double-double-float.

Revision 1.58 - (view) (annotate) - [select for diffs]
Tue Oct 12 16:53:53 2004 UTC (9 years, 6 months ago) by rtoy
Branch: MAIN
CVS Tags: double-double-base, ppc_gencgc_snap_2005-05-14, ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06, release-19b-base, release-19b-pre1, release-19b-pre2, release-19c, release-19c-base, release-19c-pre1, snapshot-2004-11, snapshot-2004-12, snapshot-2005-01, snapshot-2005-02, snapshot-2005-03, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09, snapshot-2005-10, snapshot-2005-11, snapshot-2005-12, snapshot-2006-01, snapshot-2006-02, snapshot-2006-03, snapshot-2006-04, snapshot-2006-05, snapshot-2006-06
Branch point for: double-double-branch, ppc_gencgc_branch, release-19b-branch, release-19c-branch
Changes since 1.57: +6 -2 lines
Diff to previous 1.57
Undefined conditions should signal type-error, not simple-error.

From a bug reported by Bruno Haible, cmucl-imp, 2004-10-12:

	(error 'undefined-condition-class)

Revision 1.57 - (view) (annotate) - [select for diffs]
Tue Aug 5 14:04:53 2003 UTC (10 years, 8 months ago) by gerd
Branch: MAIN
CVS Tags: amd64-merge-start, dynamic-extent-base, lisp-executable-base, mod-arith-base, prm-before-macosx-merge-tag, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, snapshot-2003-10, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06, snapshot-2004-07, snapshot-2004-08, snapshot-2004-09, snapshot-2004-10, sparc_gencgc, sparc_gencgc_merge
Branch point for: dynamic-extent, lisp-executable, mod-arith-branch, release-19a-branch, sparc_gencgc_branch
Changes since 1.56: +2 -1 lines
Diff to previous 1.56
	DYNAMIC-EXTENT rest args.  Currently for x86 only.  Speed must be
	greater than safety for stack-allocation to actually happen, which
	is what ACL defaults to.  Use boot15.lisp to bootstrap.

	* src/bootfiles/18e/boot15.lisp: New file.

	* src/compiler/node.lisp (leaf): Add slot dynamic-extent.

	* src/compiler/x86/macros.lisp (load-size, inline-allocation)
	(not-inline-allocation): Extract from function allocation.
	(stack-allocation): New function.
	(allocation): Add arg dynamic-extent.  Call stack-allocation
	if dynamic-extent is true, and speed > safety.

	* src/compiler/x86/call.lisp (listify-rest-args): Add
	constant third arg, and pass it to allocation.

	* src/code/class.lisp (find-layout): Put part in
	#-bootstrap-dynamic-extent.

	* src/compiler/ir1tran.lisp (process-dynamic-extent-declaration):
	New function.
	(*suppress-dynamic-extent-declaration*): New variable.
	(process-1-declaration): Call process-dynamic-extent-declaration.
	(convert-more-entry) [#+x86]: Call %listify-rest-args with
	third arg dynamic-extent.

	* src/compiler/eval-comp.lisp (%listify-rest-args) [#+x86]:
	* src/compiler/fndb.lisp (%listify-rest-args) [#+x86]: Add
	third arg for dynamic-extent.

	Possibly temporary workaround for SBCL build problems caused by a
	situation like

	  (defvar *foo*)
	  (declaim (type foo *foo*))
	  (defstruct foo)
	  (defun foo ()
	    (let ((*foo* (some-unknown-function)))
	       ...))

	When a type check is being generated for the local binding of
	*foo*, *foo*'s type in the info database is still an unknown-type.
	The typep transform generates a call to %instance-typep, because
	it knows that foo is an instance.  The deftransform for
	%instance-typep does not run, so an actual call to %instance-typep
	is being generated.  A function %instance-typep doesn't exist at
	run time, though.

	* src/compiler/ir1tran.lisp (find-free-variable): If the
	variable's type is an unknown-type, reparse it, and change the
	type in the info database.

Revision 1.56 - (view) (annotate) - [select for diffs]
Fri Jun 6 16:23:45 2003 UTC (10 years, 10 months ago) by toy
Branch: MAIN
Changes since 1.55: +9 -2 lines
Diff to previous 1.55
Initial import of Paul Foley's simple-streams implmentation.  Some
functionality is still missing, but Lisp streams and Gray streams
should behave unchanged.

Revision 1.55 - (view) (annotate) - [select for diffs]
Sat Apr 26 18:24:46 2003 UTC (10 years, 11 months ago) by gerd
Branch: MAIN
CVS Tags: remove_negative_zero_not_zero
Changes since 1.54: +9 -1 lines
Diff to previous 1.54
	CLASS-04.[2345], CONDITION-27-READER-IS-GENERIC, compiled.  Avoid
	constant-folding tests for generic-functionness.  Fix intersection
	of function types and generic-function.

	* src/code/type.lisp (type-intersection2): Handle intersection
	of FUNCTION-TYPEs with non-FUNCTION-TYPEs, like generic-function.

	* src/compiler/typetran.lisp (ir1-transform-type-predicate)
	(typep): Handle generic-function type tests differently.

	* src/code/class.lisp (class) <:complex-subtypep-arg1>:
	New type method for function = (function * *).

Revision 1.54 - (view) (annotate) - [select for diffs]
Sun Apr 13 11:57:18 2003 UTC (11 years ago) by gerd
Branch: MAIN
Changes since 1.53: +24 -7 lines
Diff to previous 1.53
  	The SEQUENCE-COUNT type was previously used in c:fndb, but since
	C::SEQUENCE-COUNT /= KERNEL::SEQUENCE-COUNT, it was an unknown
	type.  Please read boot4.lisp.

	* src/code/exports.lisp ("KERNEL"): Export sequence-count.

	* src-types/bootfiles/18e/boot4.lisp: New file.


	Make compute-effective-slot-definition AMOP compliant.
	Patch from Kevin Rosenberg.

	* src/pcl/std-class.lisp (compute-slots): Pass slot name
	to compute-effective-slot-definition.
	(compute-slots): Likewise.
	(compute-effective-slot-definition): Add parameter slot-name.

	* src/pcl/generic-functions.lisp (compute-effective-slot-definition):
	Add second parameter slot-name.


	Allow non-keyword keyword names in lambda lists.  This fixes test
	cases STRUCTURE-BOA-TEST-15/[1-8], and FLET.30.

	* src/compiler/node.lisp (arg-info): Accept non-keyword
	keyword names.

	* src/code/type.lisp (key-info): Likewise.


	Fix type system bugs detected by Paul Dietz' test suite
	This is to a large extent a port from SBCL.

	* src/code/type.lisp: Mostly rewritten with code ported from
	SBCL.

	* src/compiler/typetran.lisp (ir1-transform-type-predicate):
	Return nil if type is *empty-type*.
	(source-transform-negation-typep)
	(source-transform-intersection-typep): New functions.
	(source-transform-array-typep): Handle unknown array element types.
	(typep): Add handling of negation and intersection types.

	* src/compiler/srctran.lisp (make-canonical-union-type):
	Simplify, now that #'type-union is smarter.
	(ir1-transform-<-helper): Give up on non-numeric, non-member
	types.

	* src/compiler/checkgen.lisp (type-test-cost): Add a case
	for intersection-type.
	(values-types-asserted): Don't use coerce-to-values, see
	the comment there.

	* src/compiler/array-tran.lisp (array-dimension): Accept
	:maybe as array-type-complexp.

	* src/code/pred.lisp (%%typep): Add handling of
	negation-types and intersection-types.  Change cases of
	hairy-types, union-types, and arrays with unknown element type.

	* src/code/exports.lisp ("KERNEL"): Export negation-type,
	negation-type-type, intersection-type, intersection-type-types.

	* src/code/class.lisp (sealed-class-intersection):
	Return one value.
	(class :simple-intersection): Return one value, return nil in
	the default case.
	(class :complex-subtypep-arg2): New type method.

Revision 1.53 - (view) (annotate) - [select for diffs]
Wed Mar 26 12:35:29 2003 UTC (11 years ago) by gerd
Branch: MAIN
Changes since 1.52: +2 -2 lines
Diff to previous 1.52
	* code/class.lisp (order-layout-inherits): Fix a typo.

Revision 1.52 - (view) (annotate) - [select for diffs]
Sat Mar 22 16:15:22 2003 UTC (11 years, 1 month ago) by gerd
Branch: MAIN
Changes since 1.51: +92 -65 lines
Diff to previous 1.51
* bootfiles/18e/boot[12].lisp: Bootstrap files for the lisp:class
= pcl:class part.  To get it booted from 18e, cross-compile using
boot1.lisp as bootstrap.lisp in pmai's build scripts, then do a
normal compile with boot2.lisp as bootstrap.lisp with the
resulting Lisp.

* code/byte-interp.lisp, code/defstruct.lisp, code/describe.lisp:
* code/error.lisp, code/exports.lisp, code/hash-new.lisp:
* code/hash.lisp, code/macros.lisp, code/misc.lisp:
* code/package.lisp, code/pred.lisp, code/sharpm.lisp, code/type.lisp:
* compiler/dump.lisp, compiler/fndb.lisp, compiler/globaldb.lisp:
* compiler/proclaim.lisp, compiler/typetran.lisp, compiler/xref.lisp:
* compiler/generic/primtype.lisp, compiler/generic/vm-type.lisp:
Changes for to use kernel::class etc.

* code/class.lisp (toplevel): Shadow class, built-in-class etc.
(class): Give it conc-name %class-.
(toplevel) [#+bootstrap-lisp-class=pcl-class]: Define old accessors.
(everywhere): Use new class accessors.

* compiler/generic/vm-fndb.lisp (%make-instance): Change from
unsafe to flushable and movable.

* code/ntrace.lisp (expand-trace, untrace): Changes for method
tracing.

* code/profile.lisp (profile, profile-all, unprofile): Method
profiling.

* pcl/*.text, pcl/bench.lisp, pcl/extensions.lisp:
* pcl/fast-init.lisp, pcl/precom1.lisp, pcl/precom4.lisp:
* pcl/structure-class.lisp, pcl/user-instances.lisp:
Removed.

* tools/pclcom.lisp: Changes for my PCL and lisp:class =
pcl::class.

Revision 1.51.2.2 - (view) (annotate) - [select for diffs]
Fri Mar 21 00:00:59 2003 UTC (11 years, 1 month ago) by gerd
Branch: cold-pcl
Changes since 1.51.2.1: +7 -2 lines
Diff to previous 1.51.2.1 , to branch point 1.51 , to next main 1.65
	* src/code/class.lisp (toplevel): Use
	#+bootstrap-lisp-class=pcl-class.

Revision 1.51.2.1 - (view) (annotate) - [select for diffs]
Wed Mar 19 16:45:33 2003 UTC (11 years, 1 month ago) by gerd
Branch: cold-pcl
Changes since 1.51: +87 -65 lines
Diff to previous 1.51
* code/defstruct.lisp, code/describe.lisp, code/error.lisp:
* code/exports.lisp, code/hash-new.lisp, code/hash.lisp
* code/macros.lisp, code/misc.lisp, code/package.lisp
* code/pred.lisp, code/sharpm.lisp, code/type.lisp:
Changes for lisp:class = pcl:class.

* compiler/dump.lisp, compiler/fndb.lisp, compiler/globaldb.lisp:
* compiler/ir1tran.lisp, compiler/ir1util.lisp:
* compiler/node.lisp, compiler/proclaim.lisp, compiler/typetran.lisp:
* compiler/xref.lisp, compiler/generic/primtype.lisp:
* compiler/generic/vm-type.lisp:
Likewise.

* code/class.lisp (toplevel): Shadow class, built-in-class etc.
(class): Give it conc-name %class-.
(toplevel) [#-lisp-class-is-pcl-class]: Define old accessors.
(everywhere): Use new class accessors.

* code/byte-interp.lisp (load-type-predicate):
Use kernel::structure-class instead of structure-class.

Revision 1.51 - (view) (annotate) - [select for diffs]
Thu Nov 14 16:54:32 2002 UTC (11 years, 5 months ago) by toy
Branch: MAIN
CVS Tags: cold-pcl-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2
Branch point for: cold-pcl, release-18e-branch
Changes since 1.50: +2 -2 lines
Diff to previous 1.50
From Eric Marsden:

The attached patch contains mostly trivial changes, including a few
spelling corrections, plus changes to the types of condition raised in
various cases. The only significant change, I believe, is

  - MAKE-DISPATCH-MACRO-CHARACTER no longer raises an error if the
    character already was defined to be a macro character; it
    overrides the previous definition (as per a suggestion from Drew
    McDermott on cmucl-help, dated 2002-09-22).

Revision 1.50 - (view) (annotate) - [select for diffs]
Wed Nov 13 17:45:34 2002 UTC (11 years, 5 months ago) by toy
Branch: MAIN
Changes since 1.49: +2 -2 lines
Diff to previous 1.49
Fix typo:  It's :defined, not xdefined!

Noted by Brian Spilsbury.

Revision 1.49.2.1 - (view) (annotate) - [select for diffs]
Fri Oct 4 23:13:19 2002 UTC (11 years, 6 months ago) by pmai
Branch: UNICODE-BRANCH
Changes since 1.49: +126 -134 lines
Diff to previous 1.49 , to next main 1.65
Checked in Brian Spilsbury's experimental Unicode, locales, and dialect
support patchset.  This lives on its own branch, so that people can
play with it and tweak it, without disturbing 18e release engineering
on the main branch.  Bootstrapping has only been tried on LINKAGE_TABLE
x86/Linux builds.  A working cross-compile script is checked in under
bootfiles/19a/boot1-cross-unicode.lisp.  The script still leaves you
with some interactive errors, on the cross compile, which you should
answer with 2.  See the mailing list for more information.

Revision 1.49 - (view) (annotate) - [select for diffs]
Thu Sep 19 17:51:14 2002 UTC (11 years, 7 months ago) by pmai
Branch: MAIN
CVS Tags: UNICODE-BASE
Branch point for: UNICODE-BRANCH
Changes since 1.48: +4 -2 lines
Diff to previous 1.48
Improve layout depth conflict error message.  From the unicode patch-set
by Brian Spilsbury.

Revision 1.48 - (view) (annotate) - [select for diffs]
Wed Jul 10 16:15:58 2002 UTC (11 years, 9 months ago) by toy
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE
Changes since 1.47: +4 -4 lines
Diff to previous 1.47
From Eric Marsden:

 * (pcl:class-precedence-list (find-class 'null)) should have symbol
   occurring before list, as per CLHS.

 * minor changes to certain error conditions: eg trying to set
   DEFAULT-DIRECTORY to a non-existent directory should raise a
   condition of type FILE-ERROR. (Some of these changes are from
   Alexey Dejneka, via SBCL).

 * cleanup of some Hemlock-related symbols that shouldn't be exported
   when :no-hemlock is defined.

Revision 1.36.2.6 - (view) (annotate) - [select for diffs]
Sat Mar 23 18:49:53 2002 UTC (12 years ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18d
Changes since 1.36.2.5: +39 -25 lines
Diff to previous 1.36.2.5 , to branch point 1.36 , to next main 1.65
Mega commit to bring RELENG_18 branch in sync with HEAD in preparation
for release tagging 18d.

Revision 1.47 - (view) (annotate) - [select for diffs]
Thu Dec 6 23:24:42 2001 UTC (12 years, 4 months ago) by pmai
Branch: MAIN
Changes since 1.46: +39 -25 lines
Diff to previous 1.46
o This fixes Bug#122135 from the Debian bug-tracking system:  The setf
  function for LISP:FIND-CLASS now accepts and ignores the optional
  errorp and environment arguments, as per ANSI.
o It now also allows nil as the new-value, as per ANSI, and
  dissociates any defined class from the given name.  Note that this
  only works as expected if the user also does a setf of PCL::FIND-CLASS
  with NIL.  LISP:FIND-CLASS and PCL::FIND-CLASS need tighter
  integration.

Revision 1.36.2.5 - (view) (annotate) - [select for diffs]
Tue Aug 8 13:41:46 2000 UTC (13 years, 8 months ago) by dtc
Branch: RELENG_18
CVS Tags: RELEASE_18c
Changes since 1.36.2.4: +86 -2 lines
Diff to previous 1.36.2.4 , to branch point 1.36
Add support for computing class precedence lists, and use this to
correctly calculate the CPL for the condition classes.

Revision 1.46 - (view) (annotate) - [select for diffs]
Tue Aug 8 13:41:18 2000 UTC (13 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.45: +86 -2 lines
Diff to previous 1.45
Add support for computing class precedence lists, and use this to
correctly calculate the CPL for the condition classes.

Revision 1.36.2.4 - (view) (annotate) - [select for diffs]
Mon Aug 7 14:27:40 2000 UTC (13 years, 8 months ago) by dtc
Branch: RELENG_18
Changes since 1.36.2.3: +4 -3 lines
Diff to previous 1.36.2.3 , to branch point 1.36
Handle duplicate layouts in order-layout-inherits.

Revision 1.45 - (view) (annotate) - [select for diffs]
Mon Aug 7 14:27:25 2000 UTC (13 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.44: +4 -3 lines
Diff to previous 1.44
Handle duplicate layouts in order-layout-inherits.

Revision 1.36.2.3 - (view) (annotate) - [select for diffs]
Sun Aug 6 19:13:25 2000 UTC (13 years, 8 months ago) by dtc
Branch: RELENG_18
Changes since 1.36.2.2: +58 -12 lines
Diff to previous 1.36.2.2 , to branch point 1.36
o Add the new function order-layout-inherits to correctly order the
  layouts within the layout-inherits vector. This ensures that
  the compiler can generate inline type tests for hierarchical classes.

o Modify the definition of the stream class to be hierarchical.

o Have the condition classes correctly order their layout-inherits
  so that the hierarchical condition class is placed at it specified depth.

o Enhance the compiler instance typep transform to generate inline
  type tests for hierarchical classes, not just for structures.

Revision 1.44 - (view) (annotate) - [select for diffs]
Sun Aug 6 19:12:17 2000 UTC (13 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.43: +58 -12 lines
Diff to previous 1.43
o Add the new function order-layout-inherits to correctly order the
  layouts within the layout-inherits vector. This ensures that
  the compiler can generate inline type tests for hierarchical classes.

o Modify the definition of the stream class to be hierarchical.

o Have the condition classes correctly order their layout-inherits
  so that the hierarchical condition class is placed at it specified depth.

o Enhance the compiler instance typep transform to generate inline
  type tests for hierarchical classes, not just for structures.

Revision 1.36.2.2 - (view) (annotate) - [select for diffs]
Tue May 23 16:36:14 2000 UTC (13 years, 10 months ago) by pw
Branch: RELENG_18
Changes since 1.36.2.1: +6 -13 lines
Diff to previous 1.36.2.1 , to branch point 1.36
This set of revisions brings the RELENG_18 branch up to HEAD in preparation
for an 18c release.

Revision 1.43 - (view) (annotate) - [select for diffs]
Tue May 2 04:44:03 2000 UTC (13 years, 11 months ago) by dtc
Branch: MAIN
Changes since 1.42: +2 -2 lines
Diff to previous 1.42
Implement a specializing CONS class as per issue CONS-TYPE-SPECIFIER:ADD.
The new cons-type which maintains the specialised CAR and CDR types:

o Typep recurses, checking the respective car and cdr specialisations;
  two cons-types are type= if both their car and cdr types are type=.

o Subtypep recurses, applying subtypep to the respective car and
  cdr types. If both sub-tests return true then the cons test returns
  true with a win only when both sub-tests win. If either sub-test
  returns false then the cons tests returns false with a win if either
  of sub-tests win.

o Type-intersection is applied to the respective car and cdr types,
  and wins if both win.

o The type-union of two cons-types handles cases for which either the
  respective car or cdr types are type=, in which case type-union is
  applied to the other type. This avoid returning an overly general result.

o Ctype-of a cons object simply returns (cons * *); and does not attempt
  to recurse.

o The compiler recursively checks the specialised type of the cons-type,
  which allows it to also use this type information to derive the result
  type car and cdr. Inline code is currently only generated when
  natively compiling.

Revision 1.42 - (view) (annotate) - [select for diffs]
Mon Jan 10 14:43:54 2000 UTC (14 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.41: +3 -2 lines
Diff to previous 1.41
Do not use the hairy-type (and integer (not fixnum)) for the bignum
type, rather use a integer union type which is handled far better by
the type system; from Raymond Toy.

Revision 1.41 - (view) (annotate) - [select for diffs]
Fri Jul 24 17:17:50 1998 UTC (15 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.40: +3 -11 lines
Diff to previous 1.40
The complex-float the signed-array features are now standard, so
remove unnecessary conditionals.

Revision 1.36.2.1 - (view) (annotate) - [select for diffs]
Tue Jun 23 11:21:36 1998 UTC (15 years, 9 months ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18b
Changes since 1.36: +77 -3 lines
Diff to previous 1.36
This (huge) revision brings the RELENG_18 branch up to the current HEAD.
Note code/unix-glib2.lisp not yet included -- not sure it is ready to go.

Revision 1.40 - (view) (annotate) - [select for diffs]
Mon May 4 01:27:10 1998 UTC (15 years, 11 months ago) by dtc
Branch: MAIN
Changes since 1.39: +23 -2 lines
Diff to previous 1.39
Gray streams support:
* Rename the 'stream structure class to sys:lisp-stream.
* Add a new none hierarchical 'stream built-in class which inherits
  from: instance, t.
* Hack in the new stream class as a mixin for the structure base
  lisp-stream class which now inherits from: stream, structure-object,
  instance, t.
* Add a new 'fundamental-stream standard-class which includes 'stream
  as a mixin, and add PCL hacks to allow this to be redefined after PCL is
  loaded to be (defclass fundamental-stream (standard-object stream) ...).
* Add appropriate support to the base stream functions to dispatch to
  the Gray stream functions for the handling of fundamental-streams.
  Some of the lisp-streams encapsulating CLOS streams still need
  a little work.

Revision 1.39 - (view) (annotate) - [select for diffs]
Sat Mar 21 08:11:50 1998 UTC (16 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.38: +27 -1 lines
Diff to previous 1.38
Long-float support.

Revision 1.38 - (view) (annotate) - [select for diffs]
Tue Nov 4 15:05:36 1997 UTC (16 years, 5 months ago) by dtc
Branch: MAIN
Changes since 1.37: +3 -2 lines
Diff to previous 1.37
Scavenger hook support for GENCGC.

Revision 1.37 - (view) (annotate) - [select for diffs]
Sat Nov 1 22:58:09 1997 UTC (16 years, 5 months ago) by dtc
Branch: MAIN
Changes since 1.36: +27 -1 lines
Diff to previous 1.36
Improved support for (complex single-float) and (complex double-float)
types. Adds storage classes to the backend for these so they can be
stored in registers or on the stack without consing; new primitive
types etc. Also adds (simple-array (complex {single,double}-float))
array types to avoid consing and speed vectors operations.  All
these changes are conditional on the :complex-float feature. More work
is needed to exploit these changes: improving the type dispatch in the
various function; maybe compiler transforms or more VOPs to handle
common functions inline.

Revision 1.36 - (view) (annotate) - [select for diffs]
Wed Apr 9 17:49:38 1997 UTC (17 years ago) by dtc
Branch: MAIN
CVS Tags: RELEASE_18a
Branch point for: RELENG_18
Changes since 1.35: +2 -2 lines
Diff to previous 1.35
New value for the :pure option of defstruct, :substructure. Purify
will place the instance in the static space but still move the
substructure lists and arrays to the RO space. This is needed for
compact-info environments which cache the last name in the instance
which needs to be scavenged, but the hash arrays can still be placed
in the RO space (the cache name was not being scavenge which could
cause a false hit if very unlucky). Shall uses this new option in
compiler/globaldb.lisp after people have had a chance to bootstrap in
this new support.

Revision 1.35 - (view) (annotate) - [select for diffs]
Tue Apr 1 19:23:36 1997 UTC (17 years ago) by dtc
Branch: MAIN
Changes since 1.34: +33 -1 lines
Diff to previous 1.34
Support for some specialised signed array types: (signed-byte 8),
(signed-byte 16), (signed-byte 30), (signed-byte 32).  These patches
include the general support and the x86 backend support; more to
follow. The important changes are conditional on the :signed-array
feature so shouldn't affect the source without this feature. This work
has been driven by Raymond Toy.

Revision 1.34 - (view) (annotate) - [select for diffs]
Mon Oct 31 04:11:27 1994 UTC (19 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.33: +1 -3 lines
Diff to previous 1.33
Fix headed boilerplate.

Revision 1.33 - (view) (annotate) - [select for diffs]
Thu Feb 10 20:06:21 1994 UTC (20 years, 2 months ago) by wlott
Branch: MAIN
Changes since 1.32: +25 -25 lines
Diff to previous 1.32
Changed vector to inherit from array before generic-vector.
Fixed simple-string to list string in the inherits list.

Revision 1.32 - (view) (annotate) - [select for diffs]
Mon Aug 30 14:53:51 1993 UTC (20 years, 7 months ago) by ram
Branch: MAIN
Changes since 1.31: +21 -10 lines
Diff to previous 1.31
Moved print-function from basic-structure-class to new superclass slot-class.
Export MAKE-LAYOUT, MAKE-UNDEFINED-CLASS, INSURED-FIND-CLASS,
REDEFINE-LAYOUT-WARNING.
Change layout printer to print the proper name instead of the class.
In (setf find-class), clobber the info type compiler-layout if set.

Revision 1.31 - (view) (annotate) - [select for diffs]
Tue Aug 24 23:26:54 1993 UTC (20 years, 7 months ago) by ram
Branch: MAIN
Changes since 1.30: +6 -1 lines
Diff to previous 1.30
Add printer for CLASS-CELL to make compiler progress prettier.

Revision 1.30 - (view) (annotate) - [select for diffs]
Sun Aug 22 22:20:07 1993 UTC (20 years, 8 months ago) by wlott
Branch: MAIN
Changes since 1.29: +72 -73 lines
Diff to previous 1.29
Moved direct-superclasses into class.  Changed generic-array to correspond
to dylan array cleanup.

Revision 1.29 - (view) (annotate) - [select for diffs]
Wed Jul 21 23:05:12 1993 UTC (20 years, 9 months ago) by ram
Branch: MAIN
Changes since 1.28: +2 -2 lines
Diff to previous 1.28
Don't call FIND-CLASS with constant name during initialization, since the
compiler will transform to a load-time fixup that won't have run yet in cold
load.  Instead, refer to a constant layout.

Revision 1.28 - (view) (annotate) - [select for diffs]
Tue Jul 20 15:35:16 1993 UTC (20 years, 9 months ago) by ram
Branch: MAIN
Changes since 1.27: +5 -1 lines
Diff to previous 1.27
Add a make-load-form for CLASS-CELL.

Revision 1.27 - (view) (annotate) - [select for diffs]
Sat Jul 17 00:52:03 1993 UTC (20 years, 9 months ago) by ram
Branch: MAIN
Changes since 1.26: +68 -22 lines
Diff to previous 1.26
Changed MAKE-LAYOUT to initialize (or arrange to initialize) the 
LAYOUT-HASH so that structure layouts get initialized, etc.
Add DIRECT-SUPERCLASSES slot to BUILT-IN-CLASS and initialize it.
Add FIND-CLASS-CELL, CLASS-CELL-CLASS and CLASS-CELL-NAME to support
forward references to redefinable or undefined classes.
INFO TYPE CLASS is now a CLASS-CELL or NIL, and the class is actually
in the CLASS-CELL-CLASS.
Added some missing elements in the class-precedence lists of float and
number.

Revision 1.26 - (view) (annotate) - [select for diffs]
Sat Jul 10 16:14:17 1993 UTC (20 years, 9 months ago) by ram
Branch: MAIN
Changes since 1.25: +53 -9 lines
Diff to previous 1.25
Add stuff to initialize the layout hash.  Add standard-class and
random-pcl-class for representing objects whose real class is a PCL
class.  Add class-pcl-class slot for tracking the PCL class of any class.
Changed layout invalidating to set to :INVALID, not T, since PCL uses T
to mean valid.

Revision 1.25 - (view) (annotate) - [select for diffs]
Wed May 19 16:11:29 1993 UTC (20 years, 11 months ago) by wlott
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24
Don't define a built-in class for LRA in the gengc system.

Revision 1.24 - (view) (annotate) - [select for diffs]
Thu May 13 19:19:59 1993 UTC (20 years, 11 months ago) by ram
Branch: MAIN
Changes since 1.23: +3 -2 lines
Diff to previous 1.23
Actually return the super-layout when we're mapping.

Revision 1.23 - (view) (annotate) - [select for diffs]
Thu May 13 16:49:48 1993 UTC (20 years, 11 months ago) by wlott
Branch: MAIN
Changes since 1.22: +18 -15 lines
Diff to previous 1.22
Fixed string and simple-string to include generic-string and vector in
their inherits lists.  Fixed built-in class creation stuff to use -1 for
the inheritance depth if any of the supertypes have -1 for the inheritance
depth.

Revision 1.22 - (view) (annotate) - [select for diffs]
Sun Apr 4 14:11:04 1993 UTC (21 years ago) by wlott
Branch: MAIN
Changes since 1.21: +14 -8 lines
Diff to previous 1.21
Added ``real'' built-in-class.

Revision 1.21 - (view) (annotate) - [select for diffs]
Sun Apr 4 12:50:50 1993 UTC (21 years ago) by wlott
Branch: MAIN
Changes since 1.20: +10 -5 lines
Diff to previous 1.20
Added ``:state :read-only'' to the various extendable collection classes.

Revision 1.20 - (view) (annotate) - [select for diffs]
Sun Apr 4 10:06:09 1993 UTC (21 years ago) by wlott
Branch: MAIN
Changes since 1.19: +108 -43 lines
Diff to previous 1.19
Added the collection built-in-classes needed by dylan.

Revision 1.19 - (view) (annotate) - [select for diffs]
Sun Mar 14 14:35:07 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.18: +2 -2 lines
Diff to previous 1.18
Export basic-structure-class-print-function.

Revision 1.18 - (view) (annotate) - [select for diffs]
Sun Mar 14 12:12:21 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.17: +5 -5 lines
Diff to previous 1.17
Moved print-function into basic-structure-class.

Revision 1.17 - (view) (annotate) - [select for diffs]
Sat Mar 13 17:30:31 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.16: +2 -1 lines
Diff to previous 1.16
Made layout-of guts unsafe.

Revision 1.16 - (view) (annotate) - [select for diffs]
Sat Mar 13 14:52:11 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.15: +4 -2 lines
Diff to previous 1.15
Export funcallable-structure-class predicate & constructor so that the can be
easily used with :ALTERNATE-METACLASS.

Revision 1.15 - (view) (annotate) - [select for diffs]
Sat Mar 13 14:36:53 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.14: +8 -10 lines
Diff to previous 1.14
Change generic-function to funcallable-instance, add support in layout-of.

Revision 1.14 - (view) (annotate) - [select for diffs]
Sat Mar 13 11:11:10 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.13: +27 -17 lines
Diff to previous 1.13
Add basic-structure-class abstract superclass & funcallable-structure-class.

Revision 1.13 - (view) (annotate) - [select for diffs]
Mon Mar 1 20:04:08 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.12: +12 -50 lines
Diff to previous 1.12
Added type codes for internal object types such as CODE-COMPONENT.  Ripped out
NS-BOOT conditionals.

Revision 1.12 - (view) (annotate) - [select for diffs]
Tue Feb 23 15:51:56 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.11: +9 -7 lines
Diff to previous 1.11
fixed layout invalidation to actually work.

Revision 1.11 - (view) (annotate) - [select for diffs]
Tue Feb 23 11:51:40 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.10: +113 -40 lines
Diff to previous 1.10
Add LAYOUT-PURE slot.  Add arg type declarations.  (wlott) divide array
classes into distinct instantiable subclasses for each type code.
Add generic-number class.  Make INVALIDATE-LAYOUT remove the class
from its superclasses.
Tweak some format strings.  Add CLASS-FINALIZE to clean up the 
*FORWARD-REFERENCED-LAYOUTS*

Revision 1.10 - (view) (annotate) - [select for diffs]
Thu Feb 18 01:13:47 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.9: +7 -6 lines
Diff to previous 1.9
Inheritance depth of T is 0, not 1.

Revision 1.9 - (view) (annotate) - [select for diffs]
Wed Feb 17 18:01:31 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8
class-proper-name shouldn't error if class is not defined.

Revision 1.8 - (view) (annotate) - [select for diffs]
Wed Feb 17 17:12:04 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.7: +6 -6 lines
Diff to previous 1.7
Tweaked interface to insured-find-class so that it takes a predicate,
not a meta-class.  In ENSURE-STRUCTURE-CLASS, if we are really making 
a structure class, pass in a constant predicate so that we don't have
to do FIND-CLASS at cold-load init time.

Revision 1.7 - (view) (annotate) - [select for diffs]
Tue Feb 16 14:44:43 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.6: +4 -1 lines
Diff to previous 1.6
Tweak cold-load initialization.

Revision 1.6 - (view) (annotate) - [select for diffs]
Tue Feb 16 10:51:45 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.5: +2 -3 lines
Diff to previous 1.5
Flush extra ).  Don't unnecessarily set compiler-layout in bootstrap hack.

Revision 1.5 - (view) (annotate) - [select for diffs]
Thu Feb 11 19:01:43 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.4: +3 -3 lines
Diff to previous 1.4
Translate CHARACTER class to BASE-CHAR.
Fix format string.

Revision 1.4 - (view) (annotate) - [select for diffs]
Wed Feb 10 23:20:19 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.3: +16 -9 lines
Diff to previous 1.3
tweak warning messages.  add back base-char class.  fix 
layout-hash.  Allow symbols as structure printers.

Revision 1.3 - (view) (annotate) - [select for diffs]
Mon Feb 8 22:20:08 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.2: +36 -3 lines
Diff to previous 1.2
Add some documentation & make T translated.

Revision 1.2 - (view) (annotate) - [select for diffs]
Thu Feb 4 22:34:56 1993 UTC (21 years, 2 months ago) by ram
Branch: MAIN
Changes since 1.1: +312 -191 lines
Diff to previous 1.1
*** empty log message ***

Revision 1.1 - (view) (annotate) - [select for diffs]
Fri Jan 15 15:26:33 1993 UTC (21 years, 3 months ago) by ram
Branch: MAIN
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5