03/09/2005 - kcg
	Fix all known Beta problems, release as version 1.1

02/23/2005 - kcg
	Preparations for V1.1 Beta release:
	
	Made changes to align the parser to the draft 1.1 specification.

	Created v1.1 test directory, since v1.0 files will not parse
	with v1.1.

	Updated licence to LGPL for library components.

	Updated release documentation.

	Captured IIRDs and updated v1.1 specification.

	Resolved all known bugs.

08/17/2004 - kcg
	The text string argument to the [End ICM Section] keyword is
	now optional, and deprecated.  No error will result if it is
	omitted, but if present, it must still match the name given
	to the section via [Begin ICM Section]

08/17/2004 - kcg
	Restricted SLM_* model types to use sections composed exclusively
	of the "Diagonal_matrix" data type.  Previously, the parser accepted
	data of any matrix type, as long as there were no non-zero
	off-diagonal elements.
	
08/13/2004 - kcg
	Add support for IIRDs 1 and 2 (irrd 3 requires no change) to
	the v1.1 parser.
	
	Added structure create/delete methods to the icm library
	for each struct comprising the output icm data structure, and 
	integrated these methods within both versions of the parser, 
	removing many direct calloc() calls, and inserting free methods 
	where there weren't any before.  This was needed because the
	parser is a callable function now, that may need to play nice
	with long lived eda tools, and not just the stand alone icmchk 
	tool which simply exits after one call.
	
07/08/2004 - kcg
	Library namespace cleanups.  public functions start with icm_
	private functions with _icm_.  Static used wherever possible.
	
	Split out initial v1.1 parser; it's presently just like the v1.0
	parser, but automagically invokes the proper parser version 
	depending on whether or not the input .icm file is v1.0 or v1.1.
	The scheme used employs a single lexical analyzer with dynamically
	switched yacc surfaces.  The underlying lexical analyzer does not 
	care what version of icm it is parsing, that is the concern of 
	the yacc parser.

	While it is possible to conditionalize a single yacc surface to 
	handle multiple versions, this choice ensures that any new 
	functionality is most unlikely to regress previous revisions 
	of the parser.  Each version gets it's own yacc parser, initially 
	cloned from it's immediate predecessor.  It will be necessary to
	ensure that all of the yacc surfaces generate an identical .h
	include file.  A tool will probably be necessary to ensure this,
	bison lacks an appropriate 'include' directive to do it with.

	Add -f<ver> option to allow testing new parsers with older test
	files.  By default, the the [ICM Ver] keyword in the test file
	selects the parser.  This option forces the selection of an 
	arbitrary version, and defaults to the highest available version.
	
07/07/2004 - kcg
	Restructured and renamed files to convert the parser to a callable
	function, contained in libicm.a, that returnes the parsed icm
	struct to the caller.  Segregated includes into public and
	implementation specific .h files.  Restructured error handler 
	so that it is provided by the caller to the parser.  The icmchk
	driver was restructured around the new callable.  Both these
	changes are intended to aid eda vendors in integrating the tool
	as a callable function if they so desire.  [note, an alternate non-GNU
	license will be required if a direct binary integration occurs.]
	No functional changes, this is all just rearrangement of what is.
	All tests continue to run unchanged in any way.
	
06/29/2004 - kcg
	Added a couple of #defines to src/includes for windows systems
	to supress use of replacement malloc and realloc.
	

06/28/2004 - kcg
	Added conditionally compiled replacement functions for 
	implementations of malloc and realloc that are determined to
	be broken by 'configure'.  Enabled svn tag substitution on these
	files.

	Disabled Makefile hack that changed $end to 'End of File' in
	ibis-icm-yacc.c, as the '$end' flex now uses is adequate.
	Formerly, flex simply used '$' to represent end of file.
	That was confusing.


06/27/2004 - kcg
	Import project into Subversion, adjust to compile and build properly.
	Change in-file revision control tags, and set subversion file 
	properties.
	
	Upgrade tools to flex-2.5.4a-30 and bison-1.875-5.
	This uncovered several minor compile-time errors,
	and introduced some minor text changes in the parser's error output.
	Notably, 'parse error' became 'syntax error', and
	'expected error or foo' became 'expected foo'.
	Regression tests adjusted accordingly, as these changes are
	frankly an improvement.

	Test_240 regressed as a result of slightly different handling
	of error traps, this was carefully examined and an improved trap
	for this particular test implemented.

	Makefile edit of ibis-icm-yacc.c to change the "$" symbol to
	"End of File" redone, as "$" is now "$end".  It's a definite
	improvement to what it was.  It's debatable if this hack is
	now really necessary or not.

	No functional changes were introduced.  There have been no
	bugs reported at all, this is just a housekeeping revision.
	The revision was bumped to v1.0.1 to distinguish it though,
	and test files regenerated to accomodate the version change.
	
11/14/2003 - kcg
	Oops, used v1.0.1 in one spot. changed to v1.0.0.
	This is the final v1.0.0 release.

11/14/2003 - kcg
	Change test of negative slew value to avoid printout of
	an exponent  using %g.  Yet more formatting differences between 
	unix/windows show up (e-10 vs e-010)
	
11/14/2003 - kcg
	Use '%#g' on unix, '%#.5g' with microsoft-C.  The field
	widths are interpreted differently, and this messes up
	a few regression tests.  There are still a couple of minor
	format differences on Windows platforms that trigger test
	spurious failures.  It's unclear if it is worth the effort 
	to try to fix this.
	
11/14/2003 - kcg
	Incorporate tabs into text strings and blocks, which are the
	only two data types they make any sense in anyway.  Previously,
	tabs were converted to a space character.  We still complain
	about tabs, regardless, but only the first one we see.

11/14/2003 - kcg
	Change all -Beta-1 references to .0; regenerate test suite.
	
11/12/2003 - kcg
	Added automatic de-ansification to the build system.
	This required an additional option in configure.ac, and
	the inclusion of the ansi2knr program itself in the ./src directory.

11/12/2003 - kcg
	Beta-1 kit distributed.
	
11/12/2003 - kcg
	Fixed problem with the extraction of test files into the ./win
	directory.  Distributions were being built without these files.

11/11/2003 - kcg
	Rebuilt CVS archive with candidate Beta-1 files.  The layout
	changes between this and the previous archive were too extreme
	to deal with otherwise.

11/11/2003 - 11/1/2003 - kcg
	Incorporated GNU autoconf and automake.
	Many changes to exploit new information on operating environment.
	Many changes to integrate test suite with 'make check'
	Replaced all Makefiles.  Rejiggered directory layout completely.
	Fixed:  program name:  ibis-icm --> icmchk1
	Fixed:  program options:  no input file equivalent to -h now.
	                          added -p to retain pipe capability.
	Fixed:  Error messages associated with TABs
	Fixed:  C Syntax errors that gcc overlooked but MSC found.
	Fixed:  Reviewed severity codes associated with incorrect
	        casing of subparmeters and numeric promotion/demotion.
	        Changed several to be more consistent with general intent.
	
	
11/1/2003 - kcg
	Distributed for review/build attempts a preliminaty Beta-1
	candidate.
