[gnu.gcc] help building gcc on idiot syhelp building gcc on idiot system

allbery@UUNET.UU.NET (Brandon S. Allbery - comp.sources.misc) (01/30/89)

It being that ncoast's idiot broken C compiler has continually annoyed me
for years, I've taken the opportunity to grab GCC.  Unfortunately, I now
have to figure out how to install it....

I'm stuck with a crippled SGS (System III => no working source debugger,
no flexnames *at all*, no safe way to replace as and ld, etc. with other
routines from e.g. binutils.tar).  Since the Gnu cpp comes with gcc, I can
assume that flexnames can be dealt with via preprocessor macros -- but I
could use a list of long names, otherwise I have to play all sorts of nasty
games to get them myself.

Also, will the following 4 bugs be likely to derail my attempt?

(a) A statement of the form:

		*(a->b) = c->d;
    
    where a->b is a structure pointer and c->d is a structure,
    produces a sequence of instructions which mistakenly use the same
    address register for both indirection calculations in the loop.

(b) The compiler does weird things with the type of relational expressions
    like <, <=, etc.  Usually, this manifests as a spurious "illegal pointer/
    integer" message when "pointer_returning_function() != 0" is used in an
    (int) context (i.e. NOT if, while, etc. but instead =, return, etc.);
    but certain operations (in particular, (double) (x == y)) cause a
    compiler error.

(c) The compiler loses track of long, complex comma-expressions.

(All three occurred when I built perl -- which is the straw that broke the
camel's back.)

(d) "if (x) ...;" where "x" is a double always returns false.  This one I
    discovered years ago while porting phantasia, nothing else I've used since
    then makes much use of floating point.  I'd guess that I'm safe from this
    in the case of gcc.

I daresay there are other bugs lurking; although for just about any other
program, I'd consider perl to be the "test by fire".  (Nothing quite like
programmers with all-the-world's-a-VM-machine mentality to stretch archaic
systems....)

Anyway, can someone give me some idea of what kind of purgatory I've committed
myself to?  Please respond to me at allbery@ncoast.org, as I'm not (yet) on
the gcc mailing list and ncoast isn't being fed the gnu.all newsgroups.

Thanks in advance,
++Brandon (Brandon S. Allbery, NCoast Public Access UNIX; allbery@NCoast.ORG)