[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.