[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ooc-961120 & oo2c-0.2



This update mostly fixes some configuration problems of oo2c, most
notably to get it installed on the BeBox.  There are also bugfixes in
the front-end plus some cleanups with regard to the C back-end. 

By now the list of successfull installs of oo2c looks like this:

operating system                compiler
-----------------------------   ---------------------------
Linux 2.0.23                    gcc 2.7.2
SunOS 4.1.2/3 aka Solaris 1.1   gcc 2.5.5, gcc 2.7.2
SunOS 5.4 aka Solaris 2.4       gcc 2.7.2.1, SunPRO-C 3.0.1
SunOS 5.5 aka Solaris 2.5 [1]   gcc 2.7.2.1
HP-UX A.09.01                   gcc 2.5.8, c89
AIX 3.2.5                       gcc 2.7.0
IRIX 5.3                        gcc 2.7.2
SparcLinux 2.0.18 [2]           gcc 2.7.2
BeBox [2,3]                     mwcc

[1] on an UltraSPARC, compiled as 32 bit application; gc had to be
    built manually with `make CC=gcc gc.a'
[2] needs --disable-gc
[3] needs --without-m --without-x

------------------------------------------------------------------------

ChangeLog Nov 7 to Nov 20:

Wed Nov 20 05:49:30 1996  Michael van Acken  <acken@informatik.uni-kl.de>

	* frontend/ParseStatm.Mod (MarkSideEffectedVars):
	If a variable's adress is passed through a
	dedicated argument, then this variable has to be collected
	resp. reclaimed for the given call instruction.

Tue Nov 19 07:52:36 1996  Michael van Acken  <acken@informatik.uni-kl.de>

	* backend/ansi-c/GenStatm.Mod (ForceToMem):
	Cast to the type of the assignment target, not to the
	type of the given value.

	* backend/ansi-c/GenInclude.Mod (AddOptions):
	Expand name of include path to get rid of any tilde
	shortcuts, since the way it is passed to the C compiler prevents any
	filename expansion.

Sun Nov 17 10:13:53 1996  Michael van Acken  <acken@informatik.uni-kl.de>

	* backend/ansi-c/CodeGen.Mod (AdjustBranchConditions):
	Tries to remove unnecessary negations in
	branches.

	* backend/ansi-c/Schedule.Mod (ScheduleInstr):
	Merged in functionality of `ScheduleMerge'.

Sat Nov 16 07:06:02 1996  Michael van Acken  <acken@informatik.uni-kl.de>

	* backend/ansi-c/Allocate.Mod (TransformLocation):
	When accessing the value of a CHAR variable cast
	it to `int'; this avoids problems when comparing an int with an
	unsigned char (such a comparison is evaluated in ANSI-C as if both
	sides were unsigned).

Mon Nov 11 11:17:16 1996  Michael van Acken  <acken@informatik.uni-kl.de>

	* frontend/SymbolFile.Mod, frontend/SymbolTable.Mod:
	Replaced recursive algorithms working on binary trees of declarations
	with interative ones (wherever possible).  With this the compilation
	of large interface modules on machines with a small stack (e.g.
	X11.Mod on BeBox) won't cause any trouble.

Fri Nov  8 16:37:53 1996  Michael van Acken  <acken@informatik.uni-kl.de>

	* frontend/SymbolTable.Mod (InsertField):
	When inserting a field, check that no previous field or
	type-bound procedure declaration of the same name is visible.

	* backend/ansi-c/GenStatm.Mod (SetInstr):
	When doing a bit operation make sure that the mask value
	is an unsigned type.

	* backend/ansi-c/GenConst.Mod (Char):
	Write character constants as integer values.

	* backend/ansi-c/GenDecl.Mod (Declaration):
	When writing the fields of an extended record type,
	make sure that conflicts between fields of same name from different
	extension levels are resolved.

	* tools/oob.Mod:
	Ignore unknown variables in OPTIONS section of configuration.

	* frontend/SymbolFile.Mod (IntegrateSymbols):
	Record fields and type-bound procedures weren't
	handled as if they were read from a symbol file.

	* frontend/ParamOptions.Mod (Parse):
	Always consider DEFINE to be a keyword.