$Revision: 1.4 $

Release Notes for CLiCC 0.6.4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Foreign function interface is usable now. Look at src/test/time.*
  for an example. Documentation is not yet finished.

- Print-Functions of defstruct are no longer ignored.

- Function FORMAT knows about ~T directive now.

- Functions  SCALE-FLOAT, FLOAT-RADIX, FLOAT-SIGN,
  FLOAT-PRECISION and INTEGER-DECODE-FLOAT are implemented now.
  The radix and significand-length are taken from float.h if an ANSI-C
  compiler is used. These values are calculated by CLiCC otherwise.

- *print-length* and *print-level* have been set to 50 because
  *print-circle* is not implemented yet.

- New scripts cl-s and rt-s to produce shared libraries (SUNOS only).

- &rest arguments are stack allocated if the list is only locally used.

- Better code for nested IF-expressions.

- Inlining of functions across modules.

- Most of the code for array functions is written in Lisp now.

- Function BREAK may be used during macro expansion to debug expander
  functions.

- More descriptive error message if macro expansion fails.

- More usable messages if type errors are found.

- Many bug fixes.

- KNOWN BUGS:
  - next-method-list may be wrong in case of multiple inheritance.
  - Compilation fails for functions which use local function
    definitions in default forms for optional or keyword parameters.
  - User defined methods for standard generic functions like
    shared-initialize are silently ignored.
  - Compilation fails if :documentation option in slots is used.
  - Foreign function interface is not usable if CLiCC is compiled with
    itself, because FORMAT directive ~^ is used but currently not
    available in our imlementation of FORMAT.


Release 0.6.3 was not widely distributed


Release Notes for CLiCC 0.6.2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- CLiCC can be compiled by itself now, to get a standalone compiler
  which can be used without a lisp system. Compile the file
  clicc.lisp in src/compiler/ by means of (clicc "clicc").

- CLiCC runs with AKCL now.

- Variable *OPTIMIZE* may be used to disable optimizations. Use this
  in a first (fast !) run of CLiCC to check if your application
  conforms to CL_0 and if the generated code runs as expected.

- New papers cl0-engl.ps and Migration.ps .

- Tail recursion elimination has been implemented, may be turned off by
  *no-tail-recursion*

- Method caching for generic functions with more than
  *METHOD-CACHE-LIMIT* effective methods.

- Commands rt and cl now call gcc by default.

- Arguments of cl must have extension *.c now. 

- Use 'cl file1.c .. filen.c'
  to compile and link modules or splitted applications.

- New function rt::system

- The function format knows about ~[ and ~;

- Pathnames are printed as #P now.

- Functions logtest und logbit have been implemented

- Command line interface for standalone version of CLiCC has been
  changed, look at src/compiler/clicc.lisp

