[comp.unix.ultrix] Ultrix V2.2 bugs

droms%BKNLVMS.BITNET@CUNYVM.CUNY.EDU (03/01/88)

I recently moved the cross-development software for the Xinu operating
system to Ultrix V2.2.  The list below gives a summary of problems
and/or anomalies I discovered.  I'd like to hear about similar experiences;
are these truly bugs, or am I doing something wrong?  Please respond
to me directly as droms@bknlvms.bitnet, as I am not subscribed to this
mailing list.

- Ralph Droms
  Bucknell University
  droms@bknlvms.bitnet

=====

1. The (pcc-based) C compiler flagged the following (syntactically incorrect)
boolean expression as a "syntax error" several lines after the line
containing the error.  In fact, the line at which the error was finally
flagged was in the middle of a comment block, making the error itself
difficult to find.  The Berkeley pcc compiler found the error immediately:

     if (a ! = b) {

2. getc(stream) is not always equivalent to fgetc(stream).  The Xinu LSI 11
cross-compiler uses getchar() (which is #defined as getc(stdin)) and
ungetc(stdin, c).  The cross-compiler fails unless getchar() is
re#defined to fgetc(stdin).

3. kill -HUP 1 does not release terminal lines set to "off" in /etc/ttys.

4. (This is, technically, not a bug.) The (pcc-based) C compiler honors
more reserved identifiers than the Berkeley pcc compiler.  Specifically, the
identifier const (used in the Xinu cross-compiler) is an ANSI-standard
reserved identifier in the Ultrix C compiler; const must be replaced by,
e.g., xconst, to compile the Xinu cross-compiler under Ultrix.