                         Regina 0.08h
                         24 Dec 1999


Changes in this release (from 0.08g)
------------------------------------

o Fixed bug with NOTREADY condition at end of file.
o Fixed bug with LINES() not returning 0 at end of file.
o Fixed typo in rexxsaa.h for C++ programs.
o Fixed bug with inconsistent treatment of TRACE commands in instore
  macros.
o Fixed DOS/DPMI port (DJGPP) which failed to allow PARSE PULL to echo
  characters typed.
o Added MingW32 compiler support.
o Changed return value of CONDITION('D') to comply with the ANSI standard.
  The return value of CONDITION('D') when called from within the
  condition handler, returns the fully expanded text of the suberror. ie
  the same string (excluding the "Error n.n" prefix) as would be
  displayed if the condition was not trapped. When CONDITION('D') is
  called from outside a condition trap will still return the empty string.
o Fixed bug with STREAM sub-errors not being displayed.
o Changed behaviour of STREAM(stream,'S') to return READY even though
  the last LINEIN or CHARIN read the end of file.  This change is to
  make Regina more consistent with other interpreters. STREAM(stream,'S')
  will return NOTREADY only after an attempt has been made to read after
  EOF.
o Remove calling of ranlib when installing libregina.a on AIX.
o Added some more sub-error text messages for TRACE and NUERIC FORM/DIGITS.
o Reverted a "fix" in 0.08g;
  "Fixed bug in RexxVariablePool API when retreiving a Rexx compound variable
   that has a mixed or lower case stem value.  This same bug is in OS/2 Rexx!"
o Changed a couple of the programs in the trip directory to conform with
  the ANSI standard and the changes made in Regina.
o Fixed bugs 19, 27, 29, 30, 31, 33 and 34 as described in BUGS file.
o Fixed bugs 32, 35 and 19991129-86098 as described in BUGS file.
o FORMAT BIF now more compatible with ANSI standard.
o Changes to RexxAllocateMemory() and RexxFreeMemory() API calls.
  These functions now use the system-specific memory allocation and
  freeing functions rather than malloc()/free(). This was necessary
  because sometimes the memory returned was relocated, causing a
  segmentation fault.  Also the memory allocated by the interpreter
  for return values > 256 characters from functions and the return data
  from RexxVariablePool() now use the system-specific memory allocation
  routines.
  You are strongly advised to use these functions instead of allocating
  and freeing memory using the native memory allocation/deallocation
  routines.
  Thanks to Jeff Glatt for pointing out this problem.
o Regina now has support for direct setting of Rexx variables via the
  API.
o Support for the Win32 Multi-threading port of Regina has been broken
  with this release.  This is because hard-coding of thread-safety
  was done in two generated files. A thread-safe Regina for all ports
  will be done for 0.08i.

Cheers, Mark.
------------------------------------------------------------------------
* Mark Hessling,  M.Hessling@qut.edu.au  http://www.lightlink.com/hessling/
* Author of THE, a Free XEDIT/KEDIT editor and, Rexx/SQL
* Maintainer of PDCurses: Public Domain Curses and, Regina Rexx interpreter
* Use Rexx ? join the Rexx Language Association: http://www.rexxla.org
------------------------------------------------------------------------
