
2.3.16  * fix -at:insert: method of RunArray class for bug in Richtext

2.3.15  * minor fixes so everything compiles again with Stepstone objcc (4.3.x)

	* add builtin_memset per Marcel
	
2.3.14  * made -w suppress all warnings (a few were not dealt with)

	* fix for __restrict and __restrict__ keywords of Debian header files

	* add UnixWare 7.1 to platforms file

	* changed contact address to stes@pandora.be

2.3.13  * add OpenVMS driver and makefiles per Pierre.Bru@spotimage.fr

          (the DEC DCL driver is located in src/objc/objc.com)

	* fix warning for unnamed bitfields

        * fix -gendef: method in src/oclib/precdecl.m per Lionnel
	
	* a few (harmless) header file fixes for compilation with lcc compiler
	
	* fix for compilation with tcc/freebsd (tendra C compiler)
          (support for their #pragma token VARIETY, token TYPE etc. was lost)
	
	* workaround for bug in gcc 1.93 (old version of gcc) that had problems
	  with #line directive being inserted in (typecast)
          implemented lineno & filename messages in several classes to
	  work around this

2.3.12  * deal with __extension__ as storageclass when used as typespec

2.3.11  * incorporated fix for gnu __FUNCTION__ discussed on objc-users@cys.de
         
	* support for __typeof() (added new class src/oclib/typeof.[hm])

	* add some builtin functions/types per default (for less warnings)  
          PS: you can also get rid of that kind of warning with '-w'

	  the names are now hardcoded into the executables, although Ken's
	  old mechanism (with #pragma's, which was better), is still supported
	  
	* fix (innocent) warnings when compiling with -refcnt and -Wall
	  (add new -isscalartype and initialize returnval to get rid of the
	   'returnval may be used uninitialized warning' with -refcnt -Wall)
	
	* generate better linetag for goto that replaces return in -refcnt case

2.3.10  * rename documentation files of BigInt to BigInt.rtf, BigInt.html etc.

	* lots of libcakit changes : make compatible with -refcnt
	
	* fix bug with gnu braced group and -refcnt reported by marcel
	  (egcs-2.91.66 has in strings2.h a gnu braced group in strsep_g()).
	
	* add messages -isbracedgroup and -setbracedgroup to compstmt
	
	* make -refcnt generate fewer returnlabels
	
	* add pragma for __builtin_constant_p to objcrt.h
	
	* fix idassign() for self assignment
	
	* fix idincref() for static id initializers with constant rhs
	
	* add code to casestmt.m for switch/case with -refcnt

2.3.9	* add -rpath option for SGI ld to objc driver
	
	* use LD variable (if set) for objc -dl instead of plain 'ld'

	* add method -removeKey: to Dictionary
	  warning : this method returns the value for argument key !
	  so removeKey is not equivalent to [[self associations] remove:key];

2.3.8   * use ac_cv_prog_gcc to set cppwantsdotc variable in objc driver

	* change in lex.lm for LUL suffix for SGI integer constants (e.g. 1LUL)
          per drk@sgi.com

2.3.7   * use ac_cv_prog_gcc test in configure script

2.3.6	* new Rectangle methods topLeft,topCenter,topRight etc.
	  (for Morphic) methods -center, -quickMerge:

	* fix bug for Morphic for static locals and -refcnt
	  - foo { static id c; if (!c) ... ; return c; }
	  don't emit = (id)0 for static id c;
	  
	* fix bug with Blocks and -refcnt (for Morphic) new method
	  -freeheapvarptr in blockxpr.m and compstmt.m

2.3.5   * add -noI and -noLibs again to configure flags as they got lost
          during the 2.3.1 revision

2.3.4   * configure bootstrap source with snprintf=no otherwise run into
          problem on those platforms that don't have snprintf

2.3.3	* clean up Makefile of bootstrap a bit

	* minor clean up drivers for mac MPW and other non-Unix 
          (lcc,wcc,visual c++,icc etc)
 
2.3.2	* remove config.cache, config.log etc. for a 'make distclean'

	* configure --with-cplus now configures so that objc -cplus works
	  (on those platforms where the c++ part works).

2.3.1   * convert old configure script to new 'autoconf' script

	* old script is still available as 'configure.orig' in case of problems

	* new configure checks automatically what storage model the C compiler
	  uses

	* new configure script sets SGI (Silicon Graphics) to postlink=1
	  instead of postlink=0 if using CC=cc.  With CC='gcc' or with
          CC='cc -common' it is still postlink=0 as before.
	
	* fix so that boot sources are compiled with -DNDEBUG

2.2.18  * add new script 'bootSrc' to make bootstrap C source
          (the objc-2.2.18-bootstrap package)

	* fix builtinfunction rule in yacc.ym for functions with types as
	  arguments

2.2.17  * fixes to objpak classes so that handlers (for -ifError:) that
          'fall through' (resume execution at the point where the exception
          was raised) work correctly.

		int flag = 0;
		[ { [c insert:x after:y]; } ifError:{ :m :r | flag++; }];
		if (flag) { .. blah blah .. }

	* small performance improvements to OrdCltn and String

2.2.16  * compiler can now itself be compiled with OBJCOPT=-refcnt 

	* changed 'configure' so that it uses 'byacc' by default, not 'bison'
	
	  Bison works fine, but you have to use 'byacc' not 'bison' if you
          compile the compiler itself with -refcnt.

          The reason is that byacc zeroes out the 'yyvsp' stack (global)
          while bison is using alloca() for this; it should have an option to
          zero out that stack allocated memory.

	  If you don't care about -refcnt and if you, for some reason, 
          don't want to use byacc, then configure with :

		./configure -e 'YACC="bison -y -d"'

          or

		export YACC="bison -y -d"; ./configure

	* replaced some -str messages by -strCopy in yacc.ym

	* replaced two -str messages in src/oclib/util.m by -strCopy so that
          util.m works correctly when compiled with -refcnt

        * fix for some <math.h> asm() code on SuSE 6.0 Linux with egcs 2.91
          (conditional code in <__math.h> using the gnu __asm statement, that
          was #ifdef'ed for use with egcs)

	* egcs as used on SuSE 6.0 also required a modification to the file
          /usr/lib/gcc-lib/i486*/egcs*/specs (had to remove option
          -warn-common from the egcs 'specs' file to avoid warnings)

2.2.15  * Roger Vaughn <rvaughn@pobox.com> changes for CYGWIN and VisualAge
          but on Windows (not OS/2)

        * add rule per roger for

	    int __cdecl atexit(void (__cdecl *)(void));

	* add options (-dos and -win95) for ronny (watcom) to src/objc/objc.m

2.2.14  * fix for compiling with -g3 on Debian per Marcel (worked for me
          on red hat, but this depends on header file)

2.2.13  * allow empty translation units in extern "C" { }

2.2.12  * add wchar_t, __wchar_t and bool type in -cplus mode as builtin

	* fix for CC on SCO Unixware (both g++ and CC work now)

2.2.11  * support extern "C" and extern "C++" in objc1

          this is so that _plain_ Objective-C or plain C code can be
          compiled with a CC c++ compiler e.g.,

          CC -c bar.cc
	  objc -c -cplus foo.m
          objc -cplus bar.o foo.o

          then works, because all compiling and linking is then done by CC

2.2.10  * yet another fix for USL cc -E

2.2.9   * fix small bug with pragma using USL cc -E preprocessor
          (it doesn't remove comments on the pragma line)
          add / to separators so no space needed in : pragma foo 1/* comment

2.2.8   * add -shortTags to configure for USL Unixware 7 cc\

	* add ccargs flag for USL cc so that alloca is builtin defined
         (to compile bison output)
	
	* add -ql and -qf for USL lprof and fprof compilers

	* remove pg,otb builds from makeLibs (uncomment if you want them)

	* add -G flag  for creating .so files with SCO cc

2.2.7	* patches from Marcel to fix build with -refcnt

	* add -lc to DLARGS for Linux per Marcel

	* fix config.guess for UnixWare 7 (from SCO)

	* fix configure for Unixware 7

	* removed objc.exe from default in objc/Makefile.in

	* fix so that also UDK cc can be used (gcc still used as default)
	  on unixware : ./configure -e CC=cc configures for the UDK cc

	* UDK cc has stdarg.h with : ap = (void*)((char*)&...)
	  fix grammar so that ... is expr (tendra tcc is also doing this)

2.2.6   * fix Block class so that Blocks and -refcnt are compatible
         (implement Block -release).

	* fix idincref of return value of Block (if id)

	* give Block dtor function pointer instance variable to decr counts
          of the heapvariables it references

	* prevent -copy for Block (this should up the counts but that's not
          yet implemented). (so made -copy notImplemented instead).

	* fix AsciiFiler a bit for -refcnt (it was stuffing arbitrary pointers
         into an OrdCltn which you can do without -refcnt but is absolutely
         wrong with -refcnt).

2.2.5   * fix runarray class (with merges from 2.2.4, 1.10.10 modfs got lost)

	* run oclib source through 'indent' as used to be done in 1.x
          (also makes it easier to do a diff)

2.2.4   * renamed libs with refcnt to objcrtr,objpakr etc.

        * fix OCU bug for functions locally defined extern (didn't gen OCU)
	  (important : 'fab' was locally defining extern int yyparse() ).

        * make refcnt functions send a -release message to destroy object

        * make -free in refcnt case 'shouldNotImplement' so that both models
          can't get mixed (complicated). 

        * with -refcnt, add "_refcnt" field also in *class* structure
         (this makes code compiled with -refcnt incompatible with code
          compiled without -refcnt)

        * assignments to self can now also be used with -refcnt (since both
          class and instance now have a _refcnt field)

        * code generation change for tmp objects allocated inside while(expr)
          (and likewise do{} and for() so that side-effects of step and cond
          expressions are dealt with)

        * fix generation of extra ()'s which was screwing up line directives

	* fix linetag generation in front of a idassign

	* automatic implementation of -decrefs and -increfs methods

2.2.3   * add Heinrichmeyer patch for linux-2.2.0-final and linux-mandrake

        * add check for classes with -refcnt (automatically use -noSelfAssign)
 
        * fix bug with -refcnt by placing statement of for() or while() etc.
          inside a compound statement if needed (ifstmt, forstmt, dostmt).

2.2.2   * changes in objpak for -refcnt (such as replacing *p++=0 by memset)

        * made -refcnt link against refpak.a and make 'makeLibs' build refpak

2.2.1   * option -refcnt for automatic generation of refcount code

2.1.5   * performance improvement in Dictionary associationAt:
          (implemented Assoc's -self method to return key)

        * fix bug with blocks with more than one argument

        * add BeOS again to config.sub which apparently was lost with some
          file merge in the past  

        * reimplemented SortCltn's +sortBy: method such that following works:

	  id c = [SortCltn sortBy:{ :a :b | strcmp([b str],[a str]) }];
	  [c add:[String str:"A"]];
 	  [c add:[String str:"B"]];
	  [c print];
 
2.1.1   * new stage 1 compiler with some support for generating ST-80 (-st80)

        * support blocks in assignments

